Your agent forgets. This doesn't.
Every turn of every session, plus the findings and decisions the agent chose to keep. Pick
a task back up tomorrow, after
/clear, or on another machine.
npx innings-cli@latest init
npx innings-cli@latest init --project
hooks in every project on this machine
hooks in this repo only
Node 20+ · secrets scrubbed before upload · uninstall removes only what it wrote
What it looks like
AND THIS IS WHAT IT KEPT
beyond a minute, doctor should say unreachable rather than the queue quietly growing
two machines that lost the server together were retrying in lockstep
2 secrets scrubbed before upload — jwt, aws-key
Exactly two things get captured
No summaries you didn't ask for, no telemetry. The log is the conversation itself, plus what the agent chose to pin to it.
01 Raw turns
The prompt you sent and the response you got, verbatim, appended once per turn. Entries are immutable — nothing is edited after the fact, so the log reads the way the session actually went.
02 Context, when it earns its place
After each turn the agent decides whether anything else is worth keeping — a finding, a decision, a constraint. If yes, it is attached with a one-line reason. If not, nothing extra is stored.
Wired in, not just written down
Instructions alone don't survive a long session. Innings installs Claude Code hooks, so the protocol holds even when the context doesn't.
- a session starts, clears, resumes or compacts
- re-injects the protocol, and briefs the agent on the open task
- every turn, on Stop
- appends the raw turn, scrubbed, and queues it if the server is down
- a turn edits files but logs nothing
- nudges the agent to record what it decided
Claude Code only, for now.
The whole CLI
- innings init
-
Sign in, register the MCP server, install hooks. Global by default,
--projectfor one repo. Idempotent, and supports--dry-run. - innings doctor
- Is the MCP server registered, is the token valid, is the server reachable, did the hooks fire recently.
- innings status
- Open tasks for this repo, and anything still pending in the local queue.
- innings uninstall
- Removes every block it wrote, and only those blocks.