惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 三生石上(FineUI控件)
J
Java Code Geeks
Apple Machine Learning Research
Apple Machine Learning Research
Jina AI
Jina AI
博客园_首页
C
Check Point Blog
小众软件
小众软件
博客园 - 叶小钗
Blog — PlanetScale
Blog — PlanetScale
Engineering at Meta
Engineering at Meta
美团技术团队
Martin Fowler
Martin Fowler
Vercel News
Vercel News
D
Docker
罗磊的独立博客
B
Blog RSS Feed
The Cloudflare Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 聂微东
Last Week in AI
Last Week in AI
T
Tailwind CSS Blog
雷峰网
雷峰网
博客园 - Franky

Show HN

Show HN: AI agents for UK GDAD PCF roles and their skills The Two Pillars: Mixer Mode and Meta-Software in the Reorganization of Software Work After AI GitHub - JaiCode08/teleport-env What 1,000+ Harness Experiments Taught Me About Self-Improving Agents Show HN: Liiists, a Markdown-first, iOS and CLI list app SwiperTab – Get this Extension for 🦊 Firefox (en-US) GitHub - kouhxp/fftext: Summarize, explain, fact-check, or translate any text, URL, or file. No GPU. No cloud. One command GitHub - sweetpad-dev/sweetpad: Develop Swift/iOS projects using VSCode GitHub - dogmaticdev/IRON: IRON a.k.a. Intermediate Representation Object Notation is a Interpreter/Database that is used to create Programming Languages. GitHub - sjhalani7/vaen: Package your AI coding harness into a portable .agent file, and share it across repos, teams, & the community without ever having to copy-paste instructions, skills, MCP config, or secrets. Show HN: Gandalf the Grader Show HN: Citadeld – replay any CI failure locally from a single file GitHub - tdortman/cuSBF: High-Performance GPU Super Bloom Filter coral-ai/claude-code-token-xray at main · Coral-Bricks-AI/coral-ai GitHub - ulyssestenn/funes: Funes is a Git-based framework for LLM-managed knowledge work: an AI Librarian ingests raw sources, builds an interlinked Markdown knowledge base, and uses it to produce cited reports, analyses, and other outputs. GitHub - ThatXliner/gah: Git Add Hunk, built for agents to use GitHub - harmont-dev/harmont-cli: Command-line client for the Harmont CI platform GitHub - brooksmcmillin/mcp-authflow: OAuth 2.0 Authorization Server framework for MCP servers GitHub - javaid-codes/audit-supply-chain-agents GitHub - amorey/gochan: A small library of common channel architectures for Go, inspired by Rust GitHub - arifozgun/OpenGem: Free, Open-Source AI API Gateway with Gemini, OpenAI & Anthropic Compatibility in 1 file GitHub - Pranesh950/BioPetals: 🌸 Run BIOxAI models at home, BitTorrent-style. Fine-tuning and inference up to 10x faster than offloading GitHub - cnguyen14/bounty-doctor: Diagnose a GitHub bounty issue before you waste hours: detects honeypot scam repos, AI-bot attempt swarms, and stale contests. Show HN: CoreMCP – MCP Server for On-Prem DBs Show HN: KittyHTML – Render HTML/CSS as an inline image in your terminal GitHub - bingud/filemat: Web-based file manager Show HN: TruthLens – Free multi-signal deepfake image detector GitHub - apexlocal-jz/claude-usage-tray: Windows system-tray app showing your Claude Code rate-limit usage at a glance. Zero deps, ~300 lines of PowerShell. Cross-IDE (works regardless of VS Code, Cursor, plain terminal). Release v0.1.2.1 · kouhxp/yapsnap GitHub - noopolis/moltnet: Self-hostable chat network for AI agents. Pre-built bridges for Claude Code, Codex, and the Claws. Rooms, DMs, history. No Slack bots, no Matrix, no glue code.
GitHub - BetaBots-LLC/callimachus: One local, searchable ...
arishaller · 2026-06-21 · via Show HN

Callimachus — the catalogue for your AI coding history

License: AGPL-3.0 Platform: macOS, Windows, Linux Tauri 2 Rust React 19 100% local

Local index & search for your AI coding-agent threads — across 11 tools (Claude Code, Codex, Cursor, Gemini CLI, Qwen Code, Goose, OpenCode, Continue, Cline, Roo Code, Kilo Code) — plus a provider-agnostic chat, an MCP server, a CLI, and a VS Code / Cursor extension. Everything stays on your machine.

Named for Callimachus, who built the first catalogue of the Library of Alexandria.

Download

Grab the latest signed build from Releases — macOS (.dmg, Apple Silicon), Windows (.msi), or Linux (.AppImage / .deb). The app auto-updates from there on. Prefer to build it yourself? See Develop.

What it does

  • Indexes every conversation from 11 coding agents into one local SQLite store — Claude Code, Codex, Cursor, Gemini CLI, Qwen Code, Goose, OpenCode, Continue, Cline, Roo Code, and Kilo Code. Adding another source is a small, documented contract.
  • Searches them with hybrid ranking: keyword (SQLite FTS5 / BM25) fused with on-device semantic similarity (sqlite-vec KNN, no cloud) via Reciprocal Rank Fusion. Filter by source, project, subagents, starred, and tags.
  • Finds code-aware — type file:embed/mod.rs in the search bar (or cal files <path>) to find every thread that touched a path; backed by a file-mention index built at index time.
  • Distills knowledge — free heuristic TODO extraction, plus opt-in LLM distillation of decisions, gotchas, and summaries, with cross-thread semantic recall of past decisions/gotchas. Optional auto-distillation drains new/changed threads in the background so memory self-populates. Needs local Ollama (keyless) or a cloud API key.
  • Curates the facts — pin, edit, or delete distilled facts so your edits survive re-distilling, plus an LLM "Review conflicts" pass that flags decisions that contradict each other.
  • Remembers per project — a Projects tab aggregates each repo's decisions, gotchas, and open TODOs into durable memory (grouped by a canonical project key, so worktrees / symlinks / ~ don't split one repo), with an LLM brief and a managed .callimachus/memory.md. That memory is prepended when you "Open in CLI", and you can inject it into any agent automatically: Update AGENTS.md (or cal agents) writes a managed block into the repo's AGENTS.md / CLAUDE.md, and cal hook feeds it to a Claude Code SessionStart hook.
  • Asks your history (RAG) — a synthesized, cited answer over your own threads, with [thread N] citations back to the sources it used. Needs an LLM engine (Knowledge/distillation enabled).
  • Organizes into collections — star threads and attach free-form tags, then filter the list by starred or by tag.
  • Chats with an in-app agent (Anthropic / OpenAI / Gemini / OpenRouter / Ollama — your key, your choice) that can search your own history and run shell commands with your approval; streaming, cancellable, with live model lists. Chats are saved and become searchable too.
  • Carries context across tools — open any thread in any agent CLI ("Open in Claude / Codex / Gemini …", seeded with the packed transcript), resume a Claude Code / Codex thread in its native CLI, copy context, or export a thread to Obsidian (optionally AI-summarized with decisions / gotchas / TODOs).
  • Surfaces to your agents — a bundled MCP server (callimachus-mcp) exposes the index as tools any agent can call mid-session, and it's two-way: agents can write back into Callimachus's own memory (close TODOs, record decisions/gotchas) without ever touching your files. The /recall skill teaches them when to use it.
  • Stays current via a background file watcher; stays private — API keys live in the OS keychain, nothing is sent anywhere except the LLM provider you pick.

Stack

  • Shell: Tauri 2 (Rust) + React 19 + TypeScript + Vite 8
  • Store/search: bundled SQLite + FTS5 (rusqlite); on-device embeddings via fastembed (bge-small-en-v1.5, 384-dim); KNN in SQL via sqlite-vec (vec0)
  • Watcher: notify + debouncer
  • Chat: multi-provider via the genai crate (Anthropic / OpenAI / Gemini / OpenRouter / Ollama), streaming tokens over a Tauri Channel, cancellable, with agent tool-calls (history search + approved shell)
  • Secrets: OS credential store via the cross-platform keyring crate — macOS Keychain, Windows Credential Manager, Linux Secret Service
  • Sidecars: callimachus-mcp (MCP server) and cal (CLI) — both reuse the desktop core lib against the same index.db
  • Editor: a VS Code / Cursor extension (apps/vscode, published to the Marketplace + Open VSX) that shells out to cal

Monorepo

This is a Turborepo + pnpm workspace.

apps/
  desktop/        # the Tauri 2 desktop app + the cal CLI and MCP server (src-tauri)
  vscode/         # VS Code extension (search history from the editor)
  web/            # marketing + download site (reserved, not built yet)
packages/         # shared code, when it appears
.changeset/       # version + changelog management
scripts/          # version-sync, release tagging

Releases, versioning, and the auto-updater are documented in RELEASING.md.

Develop

pnpm install
pnpm desktop:dev      # launches the desktop window (tauri dev)

# from the repo root, across all apps:
pnpm build            # turbo: build every app's frontend
pnpm typecheck        # turbo: typecheck every app

First launch: the index is empty — open Settings (or hit Reindex) to index your sources, then Build semantic index to enable semantic search. Reindex runs as a background job with a per-source progress bar, separate from Build semantic index — the two are mutually exclusive (one pauses while the other holds the write lock).

Tests

cd apps/desktop/src-tauri
cargo test                                   # fast unit tests
cargo test -- --ignored --nocapture          # real-data + model + keychain smoke tests

The --ignored tests touch live data on this machine: each source has a real_<source>_index smoke test that indexes your real history read-only (~/.claude, ~/.codex, Cursor, ~/.gemini, ~/.qwen, Goose, OpenCode, Continue, Cline/Roo/Kilo), plus the embedding-model download (first run, needs network) and a Keychain round-trip.

Use your history anywhere

Beyond the desktop window, the same local index is reachable from your agents, terminal, and editor — all reading one index.db.

MCP server — let any agent search its own past work mid-session. callimachus-mcp ships with the desktop app (on your PATH); just register it with your client:

claude mcp add callimachus -- callimachus-mcp        # or any MCP client

Building from a checkout instead? cargo install --path apps/desktop/src-tauri --bin callimachus-mcp.

Tools (15) — now read and write. Reads: search_threads, search_current_project (auto-scoped to the repo it runs in), recent_threads, get_thread, list_tags, list_open_todos, get_thread_knowledge, recall_decisions, recall_gotchas, project_memory (a project's aggregated decisions / gotchas / open TODOs), ask_history (a cited RAG answer over your history), and threads_for_file (which sessions touched a path). Writes (into Callimachus's own memory, never your code): complete_todo (close an open TODO), record_decision, and record_gotcha (persist a fact into a project's memory). The bundled /recall skill (.claude/skills/recall) tells agents when to reach for them.

CLIcal, pipe-friendly. Ships with the desktop app (on your PATH); or build from a checkout with cargo install --path apps/desktop/src-tauri --bin cal.

cal search "vector index migration" -y    # -y = hybrid (semantic + keyword)
cal recent -n 10
cal cat 42 | pbcopy                        # packed transcript → clipboard
cal stats                                  # index totals + per-source breakdown
cal export 42 --vault ~/Obsidian           # write a thread as an Obsidian note
cal ask "how did we set up releases?"      # cited RAG answer over your history
cal files embed/mod.rs                     # threads that touched a file path
cal memory                                 # this repo's distilled memory (decisions/gotchas/TODOs)
cal done 17                                # mark an open TODO done (id from `cal todos`)
cal remember decision "use sqlite-vec for KNN"  # record a fact into the repo's memory
cal agents                                 # write the repo's memory into AGENTS.md (any agent reads it)
cal hook                                   # print the repo's memory (use as a Claude Code SessionStart hook)

star, tag, tags, todos, knowledge, distill, decisions, gotchas, and related also exist — run cal help for all 21.

VS Code / Cursor — the extension adds a "Callimachus History" sidebar, a status-bar search button, and commands to search / insert / copy threads (it shells out to cal). Install from the VS Code Marketplace or Open VSX (the registry Cursor and VSCodium use), or grab the .vsix from Releases. See apps/vscode/README.md.

Notes / limitations

  • Cross-platform (macOS / Windows / Linux). The only macOS-only piece left is the "Open in CLI" / "Resume" launchers (they drive Terminal via AppleScript); on Windows/Linux those actions return a "not supported yet" notice — everything else (index, search, chat, export, keychain) works everywhere.
  • Cline / Roo Code / Kilo Code are editor extensions with no CLI, so they are index-only (searchable, but not relaunchable via "Resume").
  • Cursor doesn't store a per-thread workspace, so Cursor threads currently have no project path.
  • Claude Code subagent transcripts are indexed but hidden behind a "subagents" toggle by default.
  • Large first index is a one-time cost (the Claude corpus here was ~90k messages in ~25s); subsequent passes skip unchanged files.
  • More sources (Charm Crush, Factory Droid, Copilot CLI) are scoped but not yet integrated — see the indexer guide.

Contributing

Issues and PRs welcome. CONTRIBUTING.md covers local setup, conventions, and the release flow. Adding support for another agent is a small, documented contract — usually one indexer module + a migration + a few wiring points.

Security & privacy

Callimachus is local-first by design: your conversation index never leaves your machine, API keys live in the OS keychain (never on disk), and the only outbound traffic is to the LLM provider you explicitly choose. To report a vulnerability, see SECURITY.md.

License

Dual-licensed. Free and open source under AGPL-3.0-or-later — use, modify, and share it; if you distribute it or run a modified version as a network service, you must release your source under the AGPL.

For closed-source, proprietary, or for-profit/SaaS use that the AGPL doesn't permit, a commercial license is required — see COMMERCIAL.md (contact ari@shaller.dev).

© 2026 Ari Shaller. See NOTICE for attributions. Contributions are accepted under the terms in CONTRIBUTING.md.

Acknowledgements

Built on Tauri, fastembed-rs, sqlite-vec, and genai. Named for Callimachus of Cyrene, who catalogued the Library of Alexandria.

Social preview: assets/og.png · brand sources in assets/brand/