Skip to content
KurrentDB

Your coding agents

Setup detects every supported agent on the machine and installs kcap into each one you say yes to. Later installs are kcap plugin install with the agent’s flag, for example kcap plugin install --codex; Claude Code is the default with no flag. The matching kcap plugin remove --codex takes it out again. Every install also adds a kcap git hook to your global git config, which is how a commit is normally filed under the session that made it; Cursor, OpenCode and Antigravity are the exceptions, where commits are read from the agent’s shell commands instead. git config --global hook.kcap.enabled false turns the hook off

Project-scoped installs (--project) write into the repository instead of your home directory, for Claude Code and Codex; they are not refreshed by updates, so re-run them after upgrading

  • Install kcap for it: setup does it when it detects claude on your PATH; later, kcap plugin install
  • What setup writes: the Claude Code plugin registered in ~/.claude/settings.json; everything else comes from the plugin bundle: hooks, MCP servers, skills
  • Loading the hooks: Starts a fresh session; no trust prompt
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --claude reads ~/.claude/projects/
  • Config elsewhere: CLAUDE_CONFIG_DIR replaces ~/.claude
  • Hosted and review: Hosted agent, agent review, review-flow driver and reviewer, local eval judge
  • Worth knowing: /clear ends the session and starts a new one that inherits nothing
  • Install kcap for it: setup does it when it detects codex on your PATH, or ~/.codex; later, kcap plugin install --codex
  • What setup writes: hooks in ~/.codex/hooks.json, MCP servers and sandbox network access in ~/.codex/config.toml, skills in ~/.agents/skills/
  • Loading the hooks: Codex asks you to trust new hooks the next time it starts: accept once. The desktop app never prompts; trust the kcap hooks under Settings → Hooks there, and run kcap plugin install --codex if setup did not find the app
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --codex reads ~/.codex/sessions/
  • Config elsewhere: CODEX_HOME replaces ~/.codex
  • Hosted and review: Hosted agent, agent review, review-flow driver and reviewer
  • Worth knowing: Setup pre-approves kcap’s read-only tool servers in Codex and sets a long timeout on the flows server so a round is not cut short. --skip-codex-network-access leaves the sandbox allowlist alone
  • Install kcap for it: setup does it when it detects ~/.cursor; later, kcap plugin install --cursor
  • What setup writes: hooks in ~/.cursor/hooks.json, MCP in ~/.cursor/mcp.json, skills in ~/.agents/skills/
  • Loading the hooks: Takes effect on the next start
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --cursor reads ~/.cursor/projects/<workspace>/agent-transcripts/ — Agent-mode sessions only; Chat, Inline Edit and Tab are not sessions
  • Config elsewhere: —
  • Hosted and review: Hosted agent (structured conversation); KCAP_CURSOR_PATH points at cursor-agent
  • Worth knowing: Commits are read from the agent’s shell commands rather than the git hook, because one Cursor process can host several sessions
  • Install kcap for it: setup does it when it detects ~/.gemini/ or gemini on your PATH; later, kcap plugin install --gemini
  • What setup writes: a hooks block and MCP entries in ~/.gemini/settings.json, skills in ~/.gemini/skills/, a steering block in ~/.gemini/GEMINI.md
  • Loading the hooks: Takes effect on the next start
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --gemini reads ~/.gemini/tmp/<project>/chats/
  • Config elsewhere: GEMINI_CLI_HOME is the parent of .gemini
  • Hosted and review: Hosted agent; unattended reviewer
  • Worth knowing: Imports recover the working directory from the session’s initial context when present; recordings without it cannot be placed by repository filters
  • Install kcap for it: setup does it when it detects ~/.copilot/ or copilot on your PATH; later, kcap plugin install --copilot
  • What setup writes: hooks in ~/.copilot/hooks/kcap.json, MCP in ~/.copilot/mcp-config.json, a steering block in ~/.copilot/copilot-instructions.md, skills in ~/.agents/skills/
  • Loading the hooks: Takes effect on the next start
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --copilot reads ~/.copilot/session-state/
  • Config elsewhere: COPILOT_HOME replaces ~/.copilot
  • Hosted and review: Hosted agent
  • Worth knowing: Also reads .claude/skills, so a skill approved only for Claude Code reaches it
  • Install kcap for it: setup does it when it detects ~/.kiro/, kiro or kiro-cli on your PATH; later, kcap plugin install --kiro
  • What setup writes: a clone of your default Kiro agent in ~/.kiro/agents/kcap.json with the capture hook, set as the default; MCP in ~/.kiro/settings/mcp.json; skills in ~/.kiro/skills/
  • Loading the hooks: Takes effect on the next start. Setup says before you consent that it changes your default agent; kcap plugin remove --kiro restores the previous one
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --kiro reads ~/.kiro/sessions/cli/
  • Config elsewhere: KIRO_HOME replaces ~/.kiro
  • Hosted and review: Hosted agent; unattended reviewer
  • Worth knowing: Kiro Crew regenerates its profiles at every start and reads only ~/.kiro/hooks/*.sh and ~/.kiro/crew/skills, so when Crew is present setup also writes ~/.kiro/hooks/kcap-spawn.sh and copies the skills there; restart Crew once. Crew chats are stored with each spawned sub-agent nested under them. Not on Windows. Synced repository skills do not reach Crew
  • Install kcap for it: setup does it when it detects ~/.config/opencode/, ~/.local/share/opencode/ or opencode on your PATH; later, kcap plugin install --opencode
  • What setup writes: a plugin on the event bus at ~/.config/opencode/plugins/kcap.ts, MCP in ~/.config/opencode/opencode.json, a steering block in ~/.config/opencode/AGENTS.md, skills in ~/.agents/skills/
  • Loading the hooks: Restart any running opencode so it reloads the plugin
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --opencode reads ~/.local/share/opencode/opencode.db — the first import downloads a small SQLite library into ~/.cache/kcap (KCAP_SQLITE_NATIVE_BASE_URL for a mirror)
  • Config elsewhere: OPENCODE_CONFIG_DIR for config; data follows XDG_DATA_HOME
  • Hosted and review: Hosted agent; unattended reviewer
  • Worth knowing: No native end event; the watcher synthesises one. kcap import --reimport retries sessions the local ledger marked complete
  • Install kcap for it: setup does it when it detects ~/.pi/agent/ or pi on your PATH; later, kcap plugin install --pi
  • What setup writes: a TypeScript extension at ~/.pi/agent/extensions/kcap.ts for capture and an MCP bridge (Pi has no native MCP), a steering block in ~/.pi/agent/AGENTS.md, skills in ~/.agents/skills/
  • Loading the hooks: Takes effect on the next start
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --pi reads ~/.pi/agent/sessions/
  • Config elsewhere: PI_CODING_AGENT_DIR
  • Hosted and review: Hosted agent; unattended reviewer on macOS and Linux, with read-only file tools, no shell and none of your interactive extensions; KCAP_PI_MODEL picks its model
  • Worth knowing: The daemon refuses a pi older than the build its containment was verified on; kcap daemon reviewer affirm --vendor pi accepts the installed one
  • Install kcap for it: setup does it when it detects ~/.gemini/antigravity/, ~/.gemini/antigravity-cli/, or antigravity / agy on your PATH; later, kcap plugin install --antigravity
  • What setup writes: a plugin directory at ~/.gemini/config/plugins/kcap/, MCP in ~/.gemini/config/mcp_config.json, skills in ~/.gemini/skills/, the steering block shared with Gemini CLI in ~/.gemini/GEMINI.md
  • Loading the hooks: Restart the IDE so it reloads the plugin
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --antigravity reads ~/.gemini/antigravity/brain/ (the IDE) and ~/.gemini/antigravity-cli/brain/ (the agy CLI)
  • Config elsewhere: honours GEMINI_CLI_HOME
  • Hosted and review: Hosted agent (agy); unattended reviewer
  • Worth knowing: One vendor, two surfaces: the IDE and the agy CLI share a home and are imported together. Imported sessions carry no per-generation cost
  • Install kcap for it: setup does it when it detects ~/.config/muse/, ~/.local/share/muse/ or muse on your PATH; later, kcap plugin install --muse
  • What setup writes: hooks and mcp_servers in ~/.config/muse/settings.json, skills in ~/.agents/skills/
  • Loading the hooks: Restart any running muse
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --muse reads ~/.local/share/muse/sessions/YYYY/MM/DD/<id>/session.jsonl plus subagent logs
  • Config elsewhere: XDG_CONFIG_HOME and XDG_DATA_HOME; Muse runs hooks without them, so kcap plugin install --muse saves them for its hooks: re-run it after changing either
  • Hosted and review: Hosted agent over MSP, Muse’s own protocol, with no terminal surface; unattended reviewer (KCAP_MUSE_UNATTENDED_REVIEWER=0 opts out)
  • Worth knowing: Muse Assistant, Meta’s consumer app, is a different thing: see below
  • Install kcap for it: setup does it when it detects ~/.grok/ or grok on your PATH; later, kcap plugin install --grok
  • What setup writes: hooks in ~/.grok/hooks/kcap.json, skills in ~/.agents/skills/; no MCP registration
  • Loading the hooks: Restart any running grok
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --grok reads ~/.grok/sessions/<encoded-cwd>/<sid>/updates.jsonl plus subagents
  • Config elsewhere: GROK_HOME replaces ~/.grok
  • Hosted and review: Hosted agent; unattended reviewer
  • Worth knowing: Without MCP registration, Grok Build has no kcap tools in the session; it is stored and importable
  • Install kcap for it: setup does it when it detects ~/.vibe/ or vibe on your PATH; later, kcap plugin install --mistral-vibe
  • What setup writes: hooks merged into ~/.vibe/hooks.toml, MCP in ~/.vibe/config.toml, skills in ~/.agents/skills/
  • Loading the hooks: Restart any running vibe
  • What is stored: prompts, replies, tool calls and results, token usage where the agent reports it, subagents, and the commits it makes
  • Import its history: kcap import --mistral-vibe reads ~/.vibe/logs/session/unified/<id>/ and the older session_<ts>/messages.jsonl
  • Config elsewhere: VIBE_HOME replaces ~/.vibe
  • Hosted and review: Stored and importable; not hosted
  • Worth knowing: Capture fails closed for Mistral Vibe: a transcript it cannot read safely is not uploaded

Meta’s consumer Muse app is a general assistant, not a coding agent, and connects differently: give it the connect-kcap skill from the kcap-cli repository, say Connect kcap with your workspace address, and it installs kcap inside its VM, signs you in with a device code and registers kcap’s tools as a custom connector. Storing chats is opt-in per chat (record my chats, then a clear yes); stored chats are always private to you. Pages and flows are not part of the connector

More than one Claude Code or Codex account

Section titled “More than one Claude Code or Codex account”

If you use several config directories, kcap accounts records each one and installs storing into it:

Terminal window
kcap accounts # list, with directories found but not added
kcap accounts add claude ~/.claude-work
kcap accounts add codex ~/.codex-oss
kcap accounts rename <id> "Work"
kcap accounts remove <id> # removes kcap from it; the directory and its login stay