JuliusBrussee/cavemem

Cross-agent persistent memory for coding assistants. Stored compressed. Retrieved fast. Local by default.

What it solves

cavemem はコーディングアシスタント向けに永続的でエージェント間を跨ぐメモリを提供します。エージェントが異なるセッションや IDE 間でコンテキストを忘れないようにし、クラウドベースのメモリシステムに依存せずに過去の観測ややり取りを呼び出すことができます。

How it works

システムはセッション境界でトリガーされるフックを使って観測を取得します。これらの観測は決定的な「caveman grammar」で圧縮され(文章トークンを約 75% 削減しつつ、コードとパスは正確に保持)、FTS5 キーワード検索を備えたローカル SQLite データベースに保存されます。

エージェントは Model Context Protocol (MCP) サーバーを通じてこのメモリを取得し、searchtimelineget_observations といったツールを提供します。ローカルのバックグラウンドワーカーが埋め込み生成を担当し、人間がセッションを閲覧できる読み取り専用の Web ビューアを提供します。

Who it’s for

Claude Code、Cursor、GitHub Copilot、OpenCode、Codex、Augment Code、Gemini CLI、Antigravity、IBM Bob などの AI コーディングアシスタントを利用し、ローカルでプライバシーに配慮した永続メモリ層を求める開発者向けです。

Highlights

  • Cross-IDE Support:複数の IDE からデータを取得し、他の(クエリのみ)ユーザーが共有メモリを検索できるようにします。
  • Local-First:データはローカル SQLite DB に保存され、ネットワーク呼び出しは不要です。埋め込みはローカルまたはリモートで生成可能です。
  • Compressed Storage:専用の文法を使用して保存時の容量を削減しつつ、人間が拡張して読むことが可能です。
  • Hybrid Search:SQLite FTS5 キーワード検索とローカルベクトルインデックス、調整可能なランカーを組み合わせます。
  • Privacy Controls:パスの glob 除外をサポートし、<private> タグ内の内容を自動的に除去します。
  • Web Viewer:トークンで保護されたローカル UI を内蔵し、取得したセッションを閲覧できます。