Skip to main content

Module harness

Module harness 

Source
Expand description

Per-harness implementations.

Each harness is one flat file defining its native record types (its Harness::Body), its Codec to and from Common, and its Store. The core compiles with none of them present.

Modules§

amp
Amp (ampcode.com): one JSON document per thread at ~/.local/share/amp/threads/<T-…>.json.
antigravity
Antigravity CLI (agy) conversations: ~/.gemini/antigravity-cli/conversations/<id>.db.
campfire
Campfire embeds pi and writes the identical on-disk format under ~/.campfire/agent/sessions/ (honoring CAMPFIRE_CODING_AGENT_*). It is a thin delegate: the body type, codec, and store logic are pi’s, reused verbatim; only the harness identity and the sessions root differ.
claude_code
Claude Code: ~/.claude/projects/<encoded-cwd>/<session>.jsonl.
codex
Codex: ~/.codex/sessions/YYYY/MM/DD/rollout-<ts>-<id>.jsonl.
cowork
Cowork — the Claude desktop app’s local agent mode: <app data>/Claude/local-agent-mode-sessions/<org>/<account>/local_<uuid>.json.
cursor
Cursor agent sessions: ~/.cursor/chats/<md5(workspace)>/<id>/store.db.
cursor_desktop
Cursor desktop (IDE app) sessions: rows in the app’s global state.vscdb (<User dir>/globalStorage/state.vscdb).
grok
Grok CLI (Grok Build): ~/.grok/sessions/<urlencoded-cwd>/<session-uuid>/.
hermes
Hermes Agent sessions: ~/.hermes/state.db and hermes sessions export.
opencode
OpenCode: a single SQLite database (~/.local/share/opencode/opencode.db) holding session, message, and part rows.
pi
pi (@mariozechner/pi-coding-agent): one JSONL file per session under ~/.pi/agent/sessions/<encoded-cwd>/<timestamp>_<uuid>.jsonl.
simple
Simple — txcript’s own interchange format, a pseudo-harness with no app behind it.