Adding memory to Kimchi Coding
a pi descendant that kept pi's transcript and pi's wiring
Kimchi Coding is a pi descendant, and it kept pi's transcript as well as pi's wiring: a JSONL log per working directory under ~/.config/kimchi/harness/sessions/, with the directory encoded into the folder name between double dashes. It can resume one of those; a new session reads none of the others, and none of them knows what you did in Claude Code or Codex in the same repo. This page is about adding that.
What Kimchi already has
The session logs, resumption by session, and pi's extension loader, which reads ~/.config/kimchi/harness/extensions without a trust prompt.
Adding recall
deja install kimchi-auto
Three files, all reversible with deja uninstall kimchi-auto, all in ~/.config/kimchi/harness. Kimchi uses that directory whatever KIMCHI_CODING_AGENT_DIR or XDG_CONFIG_HOME say: it sets the variable itself at startup.
mcp.json: the MCP server, the path read out of Kimchi'smcp-adapterconfig.skills/deja-history/SKILL.md: the skill. Kimchi offers it once.config/kimchi/harness/skillsis among the skill paths in~/.config/kimchi/config.json, which first-run setup chooses by default.extensions/deja.ts: pi's extension, unchanged. It adds the digest at session start, recall on each prompt, a line before an edit, and/deja.
deja install kimchi without -auto writes the first two. Leave Kimchi's extensions.claude-code-hook-adapter off alongside the extension, or deja's Claude Code hooks run as well and everything arrives twice.
What arrives
With the server alone: what the model asks for, through the tool. With the extension: a short digest of the project's history at session start, recall on each prompt, and the fix beside a failing command. An injection is capped at 1,536 bytes per prompt and about 4 KB per tool call. What memory costs has the measured comparison.
The part that is not about Kimchi Coding
The index covers every agent's transcripts on the machine — forty-three of them, each in its own format — so a fix found in Claude Code answers a question asked in Kimchi Coding, including sessions from before any of this was installed. A transcript a client later deletes stays searchable; only deja forget drops one on purpose. Nothing here writes memories, so there is nothing to hallucinate into your history; indexing and search are local, and credentials are stripped as the index is built (privacy).
Getting started · Switching between agents · The Kimchi Coding session format
Found this useful? Star deja-vu on GitHub.