Cline
Cline has two unrelated local stores. IDE releases write task folders; current CLI, desktop, JetBrains, and SDK-backed surfaces write session directories under the Cline data root.
Source IDs
Section titled “Source IDs”| Source | Use it for |
|---|---|
cline |
VS Code and JetBrains task folders. |
cline-cli |
CLI, desktop, JetBrains, and SDK session manifests and message artifacts. |
How the import works
Section titled “How the import works”The cline importer requires each task’s API history. Current UI history is the
authoritative visible chronology when present, including when it is empty; the
legacy UI file is used only when the current file is absent. API records enrich
matched UI records, while unmatched records remain explicitly accounted. With
no UI file, the API blocks replay directly with deterministic timestamps.
The shared task-history index is advisory. A valid matching row may supply a title, workspace, model, and usage. A malformed but stable index remains in the raw snapshot with an invalid-auxiliary diagnostic and does not discard valid task-local evidence. Unrelated index rows do not rekey every task.
The cline-cli importer scans version-1 SDK manifests, message artifacts,
optional compaction sidecars, and root-bound child artifacts. It preserves
string messages and typed text, image, file, thinking, redacted-thinking, tool,
result, model, and optional metrics records with exact accounting. Unknown
versions and block types fail closed.
These stores have different layouts and identifiers, so Hansard does not guess that records from one store duplicate records in the other. Child and team sessions are archived separately and linked to their parent. The root raw snapshot excludes child bytes; each child snapshot contains only the root manifest and that child’s artifact. A repeat import updates sessions with the same stable source identity and leaves unrelated task folders untouched.
Import and keep current
Section titled “Import and keep current”hansard import --sources cline,cline-cli --since allhansard index rebuildhansard config sources add clinehansard config sources add cline-clihansard watcher restartReview the import in the app
Section titled “Review the import in the app”After the import finishes, open Conversations and selectFilter & sort. Set Source toCline or Cline CLI, choose the backfill window underTime, and use Folder when the same harness appears in several projects. Select a result to inspect its messages, tool calls and results, files, commits, model and usage fields, and source provenance in one conversation view.
For a local source that should stay current, open Settings → Indexing & Imports. Automatic follows detected local harnesses; Custom lets Sources scannedselect an explicit set. Explicit cloud and account-export sources do not turn into background network jobs here. If the expected result is absent after resetting the conversation filters, return to the terminal import in this guide and add --explain-skips where supported.
What Hansard preserves
Section titled “What Hansard preserves”- Task API history, authoritative UI chronology, optional legacy UI and metadata, and exact advisory-index bytes when present.
- SDK session bounds, status, exit code, working directory, provider, model, title, tokens, cache usage, and cost.
- Structured SDK messages, tools, results, attachment descriptors, thinking, usage, structural compaction evidence, and linked subagent or team-task runs.
- Separate parser identities for the two stores so one format is never guessed from the other.
Known limitations
Section titled “Known limitations”- A task present only in the task store cannot gain SDK-only model or token fields.
- Compaction sidecars receive structural-only validation: their source message count cannot exceed the root count, while recorded prefix hashes and last-message keys are preserved but not recomputed. Their messages are not replayed into the visible transcript.
- Hansard does not read live Git, checkpoint refs, shared SDK indexes, settings, rules, workflows, or MCP configuration as Cline session evidence.
- Cline’s own history or recovery UI is the supported way to reopen a task; Hansard does not claim a stable cross-surface resume command.
- An active child session remains its own linked run and is not folded into the parent’s transcript or token total.
Refresh an existing archive
Section titled “Refresh an existing archive”hansard import --sources cline,cline-cli --since allhansard index rebuild