Amp
Amp’s earlier CLI and extension releases saved threads locally. Current clients use server-held threads, including the macOS and iOS apps and hosted orbs. Hansard supports the historical files and explicit full JSON exports.
Source IDs
Section titled “Source IDs”| Source | Use it for |
|---|---|
amp |
Historical local CLI and extension thread JSON. |
amp-export |
Full JSON files exported by Amp’s CLI or web app. |
amp-cloud |
Threads exported through the signed-in Amp CLI, including orbs. |
How the import works
Section titled “How the import works”Historical threads live in ~/.local/share/amp/threads/*.json, including on
macOS. Amp honors XDG_DATA_HOME; HANSARD_AMP_ROOTS accepts a path-separated
list of Amp data directories. Hansard reads each complete thread and its
matching ~/.amp/file-changes/<thread-id>/ backups. The local watcher follows
these files. Prompt history, settings, credentials, OAuth files, device identity,
and diagnostic logs are outside this conversation source.
Current Amp clients keep their threads on Amp’s service. The cloud importer
runs the documented amp threads list --json and amp threads export commands
with closed stdin, timeouts, output limits, and paginated listings that include
archived threads. It uses the CLI’s existing sign-in. Set HANSARD_AMP_CLI if the
executable is outside PATH. The importer does not create threads, send prompts,
change sharing, or use Amp’s internal-only raw export. Local files, manual
exports, and cloud exports share the same archived thread identity.
The web app’s Export menu offers full JSON to the thread’s creator. Save
that export and use amp-export when the CLI is unavailable. Markdown exports
omit structured edit arguments and are not accepted by this importer. All
exports retain recorded repository identity, while their filesystem paths stay
recorded context rather than being treated as directories on this computer.
Import and keep current
Section titled “Import and keep current”hansard import --source amp --since allEnable local history in Settings → Imports, or run:
hansard config sources enable ampSign in with amp login, then run:
hansard import amp-cloud --since allThe listing accepts up to 2,000 threads. Use --session <T-id> for one thread.
Cloud import is not part of the local watcher’s scan. Turn on Amp in
Settings → Imports → Cloud agents to refresh it every six hours, or run the
command again.
For a downloaded full JSON export, run:
hansard import amp-export ./amp-exports --since allThe path can identify one full JSON export or a directory of exports.
Review the import in the app
Section titled “Review the import in the app”- When the import finishes, open Conversations and selectFilter & sort.
- Set Source to Amp and setTime to the window you imported. UseFolder to narrow the list when you use this harness in several projects.
- Select a conversation to check its messages, tool calls, files, commits, model, and token usage.
To keep archiving new sessions from a local harness, openSettings → Imports. Automaticfollows every supported harness installed on this computer.Custom lets you turn individual harnesses on or off. Cloud sources and account exports never run from here; each needs its own import command. If a conversation you expect is missing after you reset the filters, run the import command on this page again with --explain-skips where the source supports it.
Open a thread and check its prompts, tool results, and edit diff. In Stats,
select Amp under Harness and inspect the recorded models and token coverage.
The resume action copies amp threads continue with the native thread ID.
What Hansard preserves
Section titled “What Hansard preserves”- Conversation text, recorded thinking, images, tool arguments and results, errors, compaction summaries, file references, and discovered guidance.
- Recorded models, directional tokens, cache usage, agent mode, platform metadata, repository identity, and available message timestamps.
- Historical parent and child threads, with child usage counted once when both threads are imported. Machine corrections and tool-result messages do not become human prompts.
- Numbered diffs from recorded edit results or local file-change backups.
- Exact local thread and backup bytes, or the exact JSON emitted by the Amp CLI.
- Global and project guidance files through
hansard memory backup.
Known limitations
Section titled “Known limitations”The historical local store is not a current-client transcript cache. Use
amp-cloud or amp-export for current CLI, app, and orb conversations.
Some messages lack timestamps; their stored order is preserved without
inventing elapsed time. Older usage ledgers omit cache counts for requests
whose message usage is no longer available. Recorded credits remain metadata;
Hansard estimates API-equivalent spend from tokens and model pricing.
Amp’s public full export can withhold internal subagent messages and compaction records available only through its internal raw export. Those records cannot be reconstructed. Separate historical child files are imported when present. Unknown content blocks are reported in session metadata and retained in raw history. Memory backup captures guidance files, not skills. Cloud-only global instructions require local files before memory backup can capture them. Reimport a parent thread after importing its child separately to update their combined usage totals.
Refresh an existing archive
Section titled “Refresh an existing archive”Re-run the matching import after continuing a thread:
hansard import --source amp --since allhansard import amp-cloud --since allRepeated unchanged imports are skipped. Resumed threads update their existing archive identity. No other provider needs a reimport.