№ 001 — the card catalogue for AI coding history

You already solved this. Find which thread.

Callimachus quietly indexes every conversation your AI agents write — across eleven tools — into one fast, local, searchable catalogue. Keyword and meaning. No cloud, no account, no tracking.

Download for macOS

v0.11.0 · Free · macOS, Windows & Linux · all builds

Star on GitHub
The Callimachus desktop app showing a searched, catalogued list of AI coding threads
fig. 1 — the reading room

Eleven agents, one index

  • 001Claude Code
  • 002Codex
  • 003Cursor
  • 004Gemini CLI
  • 005Qwen Code
  • 006Goose
  • 007OpenCode
  • 008Continue
  • 009Cline
  • 010Roo Code
  • 011Kilo Code
  • 001Claude Code
  • 002Codex
  • 003Cursor
  • 004Gemini CLI
  • 005Qwen Code
  • 006Goose
  • 007OpenCode
  • 008Continue
  • 009Cline
  • 010Roo Code
  • 011Kilo Code

Your best debugging session is three tools and two weeks ago. The fix is in there — in a Claude Code thread, or was it Cursor? Callimachus is the index card that finds it in a keystroke, so you stop re-explaining yourself to robots.

№ 002 — what's on the shelves

Filed, cross-referenced, instant.

One local index behind every surface. Built for the way you actually go looking for something you half-remember.

Hybrid search

Find it by what it was about

Keyword search (SQLite FTS5) fused with on-device semantic similarity, so a vague memory — “that vector index migration” — surfaces the right thread even when you've forgotten the exact words. Filter by source, project, recency, starred, or tag — or type file:embed/mod.rs to find every thread that touched a path. Subagent transcripts stay out of the way until you ask for them.

Local-first

It never leaves your machine

The index, the embeddings, the search — all on disk, on your computer. No account, no sync, no telemetry. The quietest tool in your stack.

Live indexing

Always current, never in the way

A background watcher catalogues new sessions as you work. Reindex any source on demand; forget it's running the rest of the time.

Reusable context

Hand the past to the present

Copy a thread's packed context, insert it into your editor, export it to Obsidian, or let the MCP server feed it to an agent on demand. Your history becomes raw material again, not just a read-only archive.

Knowledge layer

Distill the lessons, not just the logs

Free heuristic TODO extraction, plus opt-in LLM distillation of decisions, gotchas, and summaries — with cross-thread semantic recall of past decisions and gotchas. Needs local Ollama (keyless) or a cloud API key.

Ask your history

A cited answer over your own threads

Ask a question and get a synthesized, cited answer drawn from your own sessions, with [thread N] citations back to the sources it used. Retrieval-augmented over the local index; needs an LLM engine enabled.

Git linkage

See which commits a conversation produced

Callimachus infers — entirely on-device — which commits a thread shipped, by overlapping the files it discussed with git log inside the thread's time window. Walk the thread-to-commit timeline from the app or cal commits, and ask “which commit came out of this conversation?” straight from an agent.

Session snapshots

Resumable cross-tool handoff

Durable checkpoints of a thread — packed transcript plus carry-forward project memory — so work survives a context-window compaction or a jump to another tool. Auto-captured via Claude Code hooks, or snapshot and resume by hand.

Decision guard

Catch contradictions before they ship

Record a decision with the rationale behind it, then let the guard surface settled calls on a topic before an agent quietly re-litigates one. Check a proposal against your own history — from cal check or the MCP — so the past gets a vote before the code does.

No API key

Run on your CLI subscription

Distillation, Ask, and the in-app chat can run on your logged-in Claude Code or Codex CLI instead of a cloud API key. Pick it in Settings or the chat provider menu; Callimachus shells out to the CLI you already pay for, nothing new to configure.

PR audits

The history behind a diff

cal audit-pr returns one JSON bundle for an external review tool: which session produced each commit, prior threads per changed file, and the errors you keep hitting, so a local PR audit sees the context a diff alone hides.

the plates
fig. 1the reading room

Every thread your agents have written, filed by source and project. Keyword fused with on-device meaning, so the half-remembered one is a keystroke away.

fig. 2per-project memory

Each repo's decisions, gotchas, and open TODOs, distilled across every session into a durable memory your agents can actually read.

fig. 3ask your history

A synthesized, cited answer drawn from your own past sessions, with [thread N] references back to the source it used.

fig. 4recurring errors

A year of work at a glance, and the mistakes you keep re-running across tools, so you fix the pattern instead of the instance.

fig. 5know your corpus

Threads, messages, and semantic coverage at a glance, plus an estimate of what your AI coding actually cost, broken down by model and by your priciest threads.

fig. 6talk to your archive

A provider-agnostic chat that searches your own history before it answers. Bring a key, or run it keyless on your logged-in Claude Code or Codex CLI.

№ 004 — house rules

A library that doesn't read over your shoulder.

Cookieless, aggregate analytics on this site — no tracking cookies, no cross-site profiles. No telemetry in the app. Your conversations are indexed where they already live — on your machine — and stay there. Open source under AGPL-3.0, so you never have to take our word for it.

№ 005 — at the desk

Questions, briefly answered.

Open the catalogue.

Free, local, and quietly yours. Run the app once and every thread you've ever written is a keystroke away.

Download for macOS

v0.11.0 · Free · macOS, Windows & Linux · all builds