Skip to content

CLI commands

The hansard CLI covers everything the app does plus setup, maintenance, and automation. Print the full usage for any command with hansard help <command> or hansard <command> --help. hansard --version prints the installed version.

Most commands accept --json for scripts. Commands that write or delete data accept --dry-run to preview and --yes to skip confirmation.

Run hansard with no command in a terminal to open the interactive mode. As you type, a list shows the matching subcommands, flags, and values, such as import sources, archived conversations, import runs, accounts, and config keys. Tab completes the highlighted entry, Up and Down choose another, Enter runs the command, and Ctrl-D on an empty line leaves. With nothing typed, Tab lists the commands grouped by task, under the same headings as hansard help. Each command runs as its own process, and the prompt returns when it finishes.

Scripts, pipes, and agent shells still get the command list from a bare hansard. To print the list in a terminal too, turn the prompt off with hansard config set cli.interactive false, or uncheck it when hansard init asks. HANSARD_INTERACTIVE=0 disables it for one process.

The same lists work with Tab in bash, zsh, and fish:

Terminal window
eval "$(hansard completion zsh)" # in ~/.zshrc, after compinit
eval "$(hansard completion bash)" # in ~/.bashrc, or ~/.bash_profile on macOS
hansard completion fish > ~/.config/fish/completions/hansard.fish

hansard help completion covers every key and the faster ways to install the shell scripts.

Command What it does Guide
hansard init Configure storage, sources, redaction, the watcher, and integrations, then optionally import history. --since 30d selects the initial history window. --dry-run previews; --status shows an unfinished setup. Install the CLI
hansard app Open the Mac app. hansard app install installs or replaces it; --no-fallback only opens an installed app. hansard app processes lists the processes that run from the app and the agent runs each one owns. Install the Mac app
hansard web Serve the app in a browser at 127.0.0.1:7824. Browse conversations, Hosted viewer
hansard status Show the watcher, archive, sync, index, plan usage, and recent imports. Maintenance
hansard doctor Check dependencies, sources, and setup. --deep audits the whole archive. doctor records lists the record types each source holds and any an importer does not recognize. Maintenance, Transcript records
hansard whats-new Show what is new in this version and run its setup steps. --list shows bundled releases; a version previews another. Maintenance
hansard config Show or change settings. config setup reopens setup choices; config sources manages sources. Configuration
Command What it does Guide
hansard import --source <id> Import one local source. --sources a,b,c imports several; --source all imports the configured list. Supported harnesses
hansard import status|follow|pause|resume|cancel|retry|skip|forget Inspect and control import runs, including runs started with --background. Supported harnesses
hansard import chatgpt|claude-web|gemini-web [path] Import a ChatGPT, Claude.ai, or Gemini export, with a guided walkthrough when you omit the path. Web exports
hansard import claude-cloud|claude-cowork-cloud|codex-cloud|copilot-agent-cloud|amp-cloud|augment-cloud|devin-cloud|jules|cursor-cloud|factory-cloud|openhands-cloud|warp-cloud|kilo-code-cloud|qoder-cloud Import cloud sessions with read-only requests. These never run as part of --source all; Settings → Imports → Cloud agents keeps them current instead. Supported harnesses
hansard import notebooklm <path> Import a NotebookLM Takeout export. NotebookLM
hansard import muse-agent <path> Import a Muse (Personal Agent) agent data export. Web exports
hansard import qwen-chat <chat-export.json> Import one Qwen Chat chat downloaded as JSON. A new account needs --username <account-label>. Web exports
hansard browser serve|pair|status|revoke|retry Run the receiver for the browser extension, pair a browser, and inspect or retry its captures. Browser conversation capture
hansard import windsurf Recover trajectories from a running Windsurf app, or import downloaded trajectory Markdown. Windsurf
hansard import accounts list|rename|link List, rename, or link ChatGPT, Claude.ai, and Gemini export accounts. Web exports
hansard import ledger Show the file and session deduplication ledger.
hansard watcher start|stop|restart|adopt|status|logs Manage the background watcher. watcher adopt moves it, and login startup when on, to the copy that runs the command. watcher login enable|disable|status manages starting it at login. Background archiving
Command What it does Guide
hansard history [query] List or search conversations, filtered by project, folder, harness, tool, command, edited file, commit, or time. Search
hansard show <session-id> Print, open, or render one conversation as JSON. --unredacted prints the messages as they were before redaction, rebuilt from the archived transcript and the originals the local reveal cache keeps. Browse conversations
hansard show <session-id> --continuation Prepare context for continuing a conversation on this device. Continue
hansard show <session-id> --agents List the agents a conversation started, as its Agents view does, with each one’s start, duration, state, harness, model, task, result, and cost. Browse conversations
hansard rename <session-id> <name> Name a conversation, as renaming it in the viewer does. --clear brings its own title back. Browse conversations
hansard summaries status|run|show Summarize ended conversations, so you can continue one from its summary. Off until you turn on summaries.enabled; run summarizes older conversations on request. Continue
hansard why <file>:<line> Find the archived agent edit that wrote a line, with the session, the prompt before the edit, and the commit that last changed it. Search
hansard why <file> Read a file’s history: the sessions that edited it, newest first, with commits, reverts, and test failures and fixes. Search
hansard work-context [session-id] Read the task a conversation belongs to: its sessions in order, recorded steps, outcomes, and linked conversations. Search
hansard experience status|rebuild Show or rebuild the experience index behind file history: edits, commits, reverts, and test failures with the runs that fixed them. The watcher keeps the last 30 days current; rebuild indexes every conversation, or one repository with --repo. Search
hansard embeddings enable|status|search|similar|subjects|disable Turn on search by meaning with a local embedding model, search conversations and screenshots by meaning, and list similar conversations. Search
hansard deep-recall <question> Research a question across full conversations with the Codex or Claude CLI and return a cited answer. Deep Recall
hansard stats Summarize activity, models, tokens, spend estimates, tools, commands, skills, and MCP servers. --team scopes it to one joined Team, stats teams lists them, and stats totals reads a range of days from the day rollups. Stats
hansard behavior Compare one period of activity with the period before it. Compare periods
hansard classify Label conversations by work mode and outcome: status, automatic passes, explicit runs, and stored results. Classification
hansard permissions suggest Suggest Claude Code Bash(...) allow rules from archived shell commands. Permissions
Command What it does Guide
hansard memory backup|search|list|show|duplicates|export Back up harness memory files, browse, search, or export the memory archive, and list memories from different providers that cover the same subject. Memories
hansard memory import chatgpt <path> Import memories copied from ChatGPT’s memory settings. Memories
hansard skills backup|list|history|show|failures Capture skill revisions and inspect skill loading failures. Skills and MCPs
hansard library list|search|show|add|keep|edit|remove|open|import|collect Keep and reuse scripts, components, pages, and snippets agents make: sort and group found items, keep several at once into a bucket, and edit titles. Library
hansard eval import|list|show Archive and inspect existing Claude plugin evaluation results. Skills and MCPs
hansard bridge list|on|off|tool|approvals|pending|load|stop|status Share other agents’ skills, MCP servers, and plugins with every agent, and choose what each tool may do. Skills and MCPs
Command What it does Guide
hansard integrations recall|add-to|status|sync|forget Install recall commands, skills, and MCP entries in your agents, and keep them in place. Recall in your agents
hansard mcp serve Run conversation and memory retrieval over standard input and output. --no-memories omits memory tools; --messaging and --delegation add tools. Recall in your agents
hansard boards Discover automatic cross-project, project, and portfolio boards; create channels, post and read threads, search, and subscribe. Discussion boards
hansard peers Set up and use messaging between live Codex and Claude Code sessions: setup, status, list, send, ask, reply, inbox, read, mute, unmute, retry. Agent messaging
hansard agents Set up and manage helper sessions across harnesses: setup, status, targets, list, spawn, wait, message, cancel. Helper agents
hansard ps List the agent harnesses running on this computer with their state, CPU, and memory. Each agent lists its subagents, and agents paused from Running follow. --watch opens a full-screen monitor, ps stop <pid> or ps stop --idle stops agents, and ps pause <pid>, ps resume <id>, and ps evict <id> pause, resume, and remove them as Running does. Running agents
hansard coordinator status|start|resume|send Start, resume, and message visible agents in a project, and keep its roster, decisions, follow-ups, workstreams, and watches. status shows each agent’s state, tokens, and estimated cost. start --in chooses where an agent opens: a cmux, Terminal, iTerm, or Ghostty tab, or the app. start --environment starts it in a project environment. Projects and coordinators
hansard projects list|show|plan|plugins|add|dismiss|hide|restore|share|shared|bind List organizations, projects, and their environments, add or hide projects, share them with your Teams, and plan a launch in an environment without starting it. bind sets where an environment’s folder is on this device. Projects and coordinators
hansard account Manage harness sign-in profiles, browser profiles, plan usage capture, plan value estimates, account pools, and the local request router and its temporary overrides. account retire <account> takes an account you no longer use out of routing and usage checks, and account restore brings it back. account status shows each account’s logins and router copies with the reason for every state. Accounts and plan usage
hansard dictation [status]|setup Show or set up the engines that transcribe composer dictation. Dictation
hansard remote Run agents on your other computers: set up a host, pair or add devices, and list, check, or remove them. remote devices shows each paired device’s state, version, ready agents, and projects, remote check runs the quick check, and remote follow reads a run. hansard remote host stop stops a running host. Continue
Command What it does Guide
hansard personal-sync create|connect|status|remove Create, join, inspect, or leave a Personal Sync space. Personal Sync
hansard personal-sync auth|accounts Sign in to Google Drive, OneDrive, or Dropbox with your own OAuth app, and list the connected accounts. Personal Sync
hansard personal-sync storage add|list|sync|remove Keep up to 16 additional storage copies of the Personal Sync backup. Personal Sync
hansard personal-sync devices|state|link-projects Review other devices with their health warnings, synced settings, and cross-device project merges.
hansard personal-sync cloud-accounts [owner] See which device captures each cloud account, and choose another. Personal Sync
hansard personal-sync recover-head|recover-capture|interpret Recover an interrupted sync, or reparse one received Codex or Claude conversation locally. Personal Sync
hansard personal-sync prune-remote Preview, and with --yes apply, the removal from the destination of superseded versions that only this computer uploaded. Personal Sync
hansard team create|preview|join|invite|status|purge-legacy-raw Create, preview, join, and inspect Teams, and clean up older Team destinations. Teams
hansard team rules|accept|scope|sharing Review and accept a Team’s changed rules, limit your uploads to chosen folders, and record your memory and agent-message choices. Teams
hansard team storage add|list|sync|remove Keep up to 16 additional storage copies of a Team. Teams
hansard team devices|network|relay-allowlist|presence|requests Admit devices for agent messages, name the Team’s relay, and choose what teammates see and how their agents’ requests reach your sessions. Teams
hansard storage offload|restore Free local space by removing original files and attachments older than 30 days once two backup destinations hold verified copies, and bring them back. Both preview until --yes. Personal Sync
hansard device status|adopt|sign-ins Settle a Hansard identity that a copy of another computer’s home folder carried. Moving to a new Mac
hansard sync Run a sync pass now for the configured targets. sync status shows each target’s last upload and receive; sync receive only downloads. Personal Sync
hansard sync configure|snapshot|replace|wipe Configure a generic remote target, upload a point-in-time snapshot, replace this device’s remote copy, or delete remote objects by scope after a typed confirmation. Snapshot, replace, and wipe do not apply to current Personal Sync spaces.
hansard notify slack Set up Slack posting, routes, tokens, tests, and digests. notify slack bot run runs the interactive bot. Slack
hansard notify status|test Show Hansard’s notification kinds, destinations, and quiet hours on this computer, or send a test notification.
Command What it does Guide
hansard redact status|init|enable|disable|test Configure and preview redaction rules. Redaction
hansard redact reapply Rewrite archived conversations with the current rules. Redaction
Command What it does Guide
hansard index pause|resume|status|rebuild Manage the local search index. Maintenance
hansard rebuild Refresh stale views, events, titles, and tool usage from archived files. --stale-parsers rescans sources imported by an older parser; --from-raw reparses preserved original files; --format 1|2 converts conversations between archive formats; --compact-raw losslessly compresses the original harness files already in the archive. Maintenance
hansard update Clear the local conversation archive and indexes, then reimport configured sources. Use only when release notes require it. --list-recoveries and --recover <operation-id> restore the archive after an interrupted update. Maintenance
hansard restore-sources <source> Put preserved original files back where the harness expects them. Never overwrites existing files. Maintenance
hansard repair claude-code-backups|codex-subagent-prompts|repo-keys Restore Claude Code files, recover encrypted Codex subagent messages through OpenAI, or re-file sessions whose repository changed. Maintenance
hansard prune archive-objects|sync-outbox|received-history|reveal-cache Reclaim space from unreferenced archive objects, finished upload payloads, superseded received history, and whole unredacted copies earlier versions kept. Maintenance
hansard export <session-id> Copy one conversation’s files out of the archive. --include-raw adds the original harness files. --format atif|eatif|html|markdown writes one trajectory or readable file instead. Share a conversation
hansard delete <session-id> Remove Hansard’s copy of one conversation, and a day later its Personal Sync backup copy. The harness’s history is untouched. Maintenance
hansard reset Remove Hansard’s local state and archive for a fresh setup. Maintenance
hansard uninstall Stop the watcher and login item and optionally remove local data. Maintenance

These older names still work and print the current command name.

Alias Current command
hansard start, stop, logs hansard watcher start, stop, logs
hansard autostart hansard watcher login
hansard migrate hansard sync configure
hansard snapshot hansard sync snapshot
hansard clear hansard reset
hansard upgrade hansard update
hansard reveal <session-id> hansard show <session-id> --unredacted
hansard accounts hansard import accounts
hansard memories hansard memory
hansard server, hansard recall start hansard mcp serve
hansard recall add-to, install-skill, install-command hansard integrations add-to, integrations recall
hansard recall show, recall reindex hansard show, hansard index rebuild
hansard prune raw-sources hansard prune archive-objects

Options apply only to commands that list them in hansard help <command>.

Option Meaning
--json Print machine-readable output. Prefer it in scripts; the plain output can change.
--since 30d|90d|180d|all Limit the time window. Import also accepts hours (12h), minutes (60m), and ISO dates.
--source <id> Choose one import source, such as codex-cli or cursor.
--sources a,b,c Choose several import sources for one run.
--repo <repo-or-path> Filter by repository, scope, working directory, or displayed path.
--provider <harness> Filter by harness or source alias.
--tool <name> Filter by tool name.
--command <head> Filter by shell command, such as "git commit".
--file <path> Filter by an edited file path (case-insensitive substring).
--commit <sha> Filter by a recorded Git commit (7 to 40 hex characters, prefix match).
--dry-run Preview writes or deletions without making them.
--yes Skip the confirmation prompt.