| 他言語版: English | Español | Deutsch | 中文 |
Codex、Claude、local coding agents、third-party CLI workflows 向けの、ポータブルで監査可能なローカルファースト継続性メモリレイヤー。
codex-agent-mem は、永続的なプロジェクト記憶をモデルランタイムの外に保持し、継続性をより小さな working pack に圧縮し、operational state をセッション間で持ち越します。これにより Codex は、繰り返しの少ない状態で、誤った「完了」を減らしつつ、より強いコンテキスト制御の下で作業を再開できます。
すべてはこの MCP によってローカルで保存・処理されます: SQLite database、FTS index、snapshots、telemetry metadata、任意の inspector UI。codex-agent-mem は memory、project data、prompts、telemetry を外部サーバーへ送信しません。
codex-agent-mem は Codex と GPT-5.x workflow のために生まれましたが、現在は Codex CLI、Codex Desktop、Gemini 3.1 Pro を使う Gemini CLI、Opus 4.7 または Sonnet 4.6 を使う Claude Code、Ollama 経由の local Qwen 3.6 / Qwen 3.5 models を使う Qwen Code、Ollama Cloud 経由の DeepSeek-V3.2 と Minimax M2.5、独自の local agent stack など、MCP-compatible agent runtime 向けの portable MCP memory layer として使えます。Continuous evaluation: Kimi Code CLI, GLM-5, Kimi K2.5, and Kimi K2.6. Kimi Code CLI は codex-agent-mem MCP server に stdio で接続できますが、Kimi K2.5 / Kimi K2.6 の full live model tool-call validation は別途測定してから記載します。さらに Grok / xAI と DeepSeek 系 MCP orchestrator との protocol-level compatibility について外部監査も受けています。
codex-agent-mem はローカルで動作し、memory を監査可能かつ pull-based に保ち、保存済み memory を外部サービスへ送信しません。
Scope distinction: Codex CLI / Codex Desktop の検証は ChatGPT web/app connector の検証ではありません。同様に Claude Code の検証は Claude web / claude.ai の検証ではありません。ChatGPT web/app と Claude web は将来の別 integration surface として扱い、v1.0 validated runtime とは主張しません。
公開ベースライン。小さく検証可能なスライスで構築され、まだ進化中ですが、すでに実運用を意識した形です。
minimal、standard、full--read-onlystructuredContent に保持known_pack_hash / not_modified| 参照しやすいリリース: v1.0.0 Low-Impact Runtime | v0.9.0 Governance + Runtime Hardening |
| シナリオ | Profile | Source tokens | Pack tokens | 削減率 | not_modified |
Tools | Lazy init | Read-only |
|---|---|---|---|---|---|---|---|---|
| Small project continuity | minimal |
1,841 | 216 | 88.27% | true | 4 | false->true | true |
| Medium agent workflow | minimal |
4,855 | 233 | 95.20% | true | 4 | false->true | true |
| Large repeated audit | minimal |
9,731 | 232 | 97.62% | true | 4 | false->true | true |
| Sub-agent handoff example | minimal |
6,523 | 239 | 96.34% | true | 4 | false->true | true |
これらの再現可能な fixture 全体では、繰り返し送られがちな operational context が約 22,950 source tokens から約 920 memory-pack tokens に圧縮され、約 96.0% の削減になりました。これは普遍的な保証ではなく、同じ project continuity を再送する必要があるケースでの効果を示すものです。
Tools=4 は、これらの fixture で使った minimal profile を指します。standard profile は、より広い retrieval、governance、audit workflow 向けに 17 tools を公開します。
| Runtime | 構成 | 観測された指標 | 結果 |
|---|---|---|---|
| Codex Desktop | この Codex environment の GPT-5.4 を使う Codex Desktop、reasoning effort xhigh、v1.0 合成 fixture | 約 22,950 source tokens -> 約 920 pack tokens、約 96.0% の repeated-context 削減、繰り返し pack で not_modified=true |
公開・再現可能な検証 |
Codex CLI / codex exec |
Codex CLI MCP stdio path、short-lived / ephemeral execution | Desktop と同じ local MCP server / config style を使用。short-lived CLI lifecycle は long-lived Desktop host behavior とは別に検証済み | Validated Codex CLI path |
| Gemini CLI | Gemini 3.1 Pro、codex-agent-mem MCP stdio、standard、read-only、compact |
プロセス安定、request counter は期待どおり増加、mem_search は {items, count} の object root と count=2 を返却 |
live MCP 検証に合格 |
| Claude Code | Claude Opus 4.7、codex-agent-mem MCP stdio のみ、standard、read-only、compact |
requests 3 -> 8、lazy init false -> true、Claude Code host が 1 つの状態で same_db_process_count=2、spawn_storm_warning=false、mem_search count=2 |
live MCP 検証に合格 |
| Qwen Code | Qwen Code 0.15.0、local Ollama、qwen3.6:latest、standard、read-only、compact |
mem_context_pack、mem_search、mem_open_work、mem_completion_check、mem_health_runtime への実 MCP call。requests 8、lazy init true、spawn_storm_warning=false、not_modified=true |
local live MCP 検証に合格 |
| Qwen local model smokes | Qwen Code 0.15.0 と Ollama models qwen3.6:35b-a3b-q8_0、qwen3.5:9b |
両モデルが CLI smoke に応答し、MCP stdio 経由で mem_health_runtime を呼び出し。requests 4、read_only=true、clean stdin_eof exit |
local live model smoke に合格 |
| DeepSeek-V3.2 | Qwen Code 0.15.0、Ollama Cloud 経由の deepseek-v3.2:cloud、standard、read-only、compact |
mem_context_pack、mem_search、mem_health_runtime への実 MCP call。requests 6、spawn_storm_warning=false、not_modified=true |
cloud-backed live MCP 検証に合格 |
| Minimax M2.5 | Qwen Code 0.15.0、Ollama Cloud 経由の minimax-m2.5:cloud、standard、read-only、compact |
mem_context_pack、mem_search、mem_health_runtime への実 MCP call。requests 6、not_modified=true |
cloud-backed live MCP 検証に合格 |
| Kimi Code CLI | Kimi Code CLI 1.38.0、codex-agent-mem MCP stdio、standard、read-only、compact |
kimi mcp test codex-agent-mem が接続し、17 tools を表示。Kimi K2.5 / Kimi K2.6 の model tool-call validation は continuous evaluation |
MCP 接続は検証済み。モデル実行の検証は主張しない |
| Grok / xAI | 外部 model/runtime audit。ローカル Grok CLI は未使用 | MCP stdio 対応 orchestrator、または薄い JSON-RPC stdio wrapper 経由で protocol-compatible | 外部監査済み。ローカル live 検証ではない |
Grok は外部 audit であり、このマシン上の local live CLI session ではありません。Qwen Code は Ollama-backed models と MCP stdio で local validation 済みです。DeepSeek-V3.2 と Minimax M2.5 は Ollama Cloud-backed models で live validation 済みですが、local inference ではありません。Kimi Code CLI は MCP 接続済みですが、Kimi K2.5 / Kimi K2.6 の model-level validation は full models に別 runtime path が必要なため continuous evaluation として扱います。一般に codex-agent-mem は MCP layer では model-agnostic です。この表はすでに live measurement を取得した model/runtime pairs を示し、新しい pair は測定が取れた時点で追加します。native MCP client がない host では、薄い JSON-RPC stdio wrapper または MCP-capable orchestrator が想定される integration path です。
codex-agent-mem には、v1.0.0 向けの再現可能な verification sandbox と公開用 evidence export が含まれています。
現在の公開ランは、この Codex environment の GPT-5.4 を使う Codex Desktop、reasoning effort xhigh で合成 fixture を使って実行されました。測定対象は、コンテキスト圧縮、known_pack_hash による再送回避、lazy initialization、最小 tool surface、read-only safety、response diet、local telemetry、closure control、sub-agent handoff example です。これは Codex Desktop validation であり、ChatGPT web/app connector validation ではありません。
参照: Verification Evidence と v1.0.0 Results。
codex-agent-mem は Claude Code で標準 MCP stdio server として動作します。session-start hook、stop hook、自動 post-turn 要約はインストールしません。メモリは mem_context_pack、mem_search、mem_open_work、mem_completion_check などの MCP tools で必要なときだけ取得します。
すでに claude-mem を使っている場合、両方を同時に動かすこと自体は技術的に可能です。ただし低オーバーヘッド・低レイテンシの workflow では、アクティブな memory layer は 1 つにすることを推奨します。ローカル検証では、Claude Code host が 1 つの状態で codex-agent-mem 単体の runtime はコンパクトでした (same_db_process_count=2, spawn_storm_warning=false)。claude-mem と同時に動かすと、見える tool surface は 61 tools に増え、約 6,995 tokens の session-start memory block が追加され、post-turn stop-hook の遅延が観測されました。これは codex-agent-mem を壊すものではありませんが、結果比較を難しくし、オーバーヘッドとレイテンシを増やす可能性があります。
local-first、監査可能、pull-based、明示的 retrieval、決定論的 closure check を重視する場合は codex-agent-mem を使ってください。追加の memory plugin は、その hook-based な自動動作を意図的に使いたい場合だけ有効にするのが安全です。
token に敏感な Claude Code workflow では、codex-agent-mem はデフォルトで軽く動くように設計されています。session-start injection なし、stop-hook summarization なし、compact response、明示的な budget、そして pack が変わらない場合の pack_hash / not_modified short-circuit を使います。
AGENTS.md に同期notify、MCP stdio、任意の AGENTS.md 同期、そしてより防御的なランタイム終了処理を前提に設計mem_open_work と mem_completion_check により、古い完了主張より未完了作業を優先長時間の監査、複雑なプロジェクト継続作業、そして「決定を覚える」だけでなくスコープ喪失や早すぎる完了宣言を防ぎたいワークフロー向けです。
1.0.0 は現在のベースリリースです。
現在動作しているもの:
agent-turn-complete に対する Codex notify 取り込みsession_summary、decision、objective、constraint、pending_item、completed_item、blocker、completion_claim のヒューリスティック抽出project_dod、mission_dod、session_dod にまたがる階層的な Definition of Donemicro、normal、full の予算付き pack--sync-project-doc を使い、pack が元のコンテキストより実際に小さい場合の AGENTS.md 任意同期mem_open_work と mem_completion_check による決定的な closure controlmem_recent_changes による最近変更の差分取得mem_scope_guard によるスコープ継続性と must-not-drop ガードbudget=auto のときに最小で適切な budget を自動選択mem_provenance で取得可能mem_health によるプロジェクト健全性診断mem_health_runtime による MCP プロセスのランタイム診断mem_snapshot_create、mem_snapshot_list、mem_snapshot_restore によるバージョン付きプロジェクトスナップショットmem_policy_validate、mem_policy_add、mem_policy_list、mem_policy_remove によるガバナンス付きメモリポリシーmem_inheritance_add、mem_inheritance_list、mem_inheritance_remove による選択的 inheritance リンクmem_repair_propose と mem_repair_apply によるガバナンス付き repair 提案と repair イベント/ui で開けるローカル検査 UI。recent changes、scope guard、provenance、health、snapshots、governance 状態も表示codex-agent-mem-policymem_searchmem_getmem_recentmem_project_briefmem_open_workmem_completion_checkmem_recent_changesmem_scope_guardmem_context_packmem_provenancemem_healthmem_health_runtimemem_snapshot_listmem_snapshot_createmem_snapshot_restoremem_policy_listmem_policy_validatemem_policy_addmem_policy_removemem_inheritance_listmem_inheritance_addmem_inheritance_removemem_repair_proposemem_repair_apply意図的にまだ対象外としているもの:
Codex は現在、GitHub URL から任意の MCP ツールを一発でインストールすることはできません。
現時点でサポートされている流れは次のとおりです。
notify と mcp_servers をインストール済みコマンドに向けるこのリポジトリは、その運用が分かりやすく再現可能になるように整えられています。
pipx でインストールリポジトリ URL から直接インストール:
pipx install "git+https://github.com/MarceloCaporale/codex-agent-mem.git"
codex-agent-mem-smoke
codex-agent-mem-bootstrap-codex --db-path C:\Users\YOU\.codex_agent_mem\codex_agent_mem.db
git clone https://github.com/MarceloCaporale/codex-agent-mem.git
cd codex-agent-mem
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e .[dev]
pytest -q
codex-agent-mem-smoke
そのまま貼り付けられる設定スニペットを生成:
codex-agent-mem-bootstrap-codex --db-path C:\Users\YOU\.codex_agent_mem\codex_agent_mem.db
このコマンドは notify、[mcp_servers."codex-agent-mem"]、明示的な stdio idle timeout、そして読み取り専用 MCP ツールの承認ブロックを出力するので、~/.codex/config.toml に貼り付けられます。
自動 AGENTS.md 再注入も使いたい場合は、notify コマンドに --sync-project-doc を追加してください。
設定後、継続性が重要な作業では、エージェントが codex-agent-mem を能動的に使うべきです。数ターンごとに「memory MCP を使って」と繰り返す必要はありません。
推奨パターン:
mem_context_pack から始めるknown_pack_hash を渡し、変更がない pack は文脈を再送せず not_modified を返すmem_search を使うmem_open_work と mem_completion_check を呼ぶ実用上の token 節約はここから生まれます。まず小さな継続性 pack を使い、必要なときだけ詳細を展開し、変更がない同じ pack は再送しません。
サンプルファイルは examples/codex にもあります。
検査 API を起動:
codex-agent-mem-api --db-path C:\Users\YOU\.codex_agent_mem\codex_agent_mem.db
その後、ブラウザで次を開きます:
http://127.0.0.1:37770/ui
MCP サーバーを起動:
codex-agent-mem-mcp --db-path C:\Users\YOU\.codex_agent_mem\codex_agent_mem.db
Smoke テストを実行:
codex-agent-mem-smoke --db-path C:\Users\YOU\.codex_agent_mem\codex_agent_mem.db
これによりサンプルのターンが挿入され、観測結果の抽出、最近の取得結果、および project_brief 生成が検証されます。
わかりやすく言えば、これは Codex にもう一度渡さなければならない重複コンテキストを減らすためのものです。完全にゼロにするわけではありませんが、かなり小さくできる場合があります。
ローカル検証から、いま正直に言えることは次のとおりです。
96.0% の削減でした88% から 97% の削減でした公開 v1.0 verification sandbox の例:
1,841 -> 216 おおよそのトークン4,855 -> 233 おおよそのトークン9,731 -> 232 おおよそのトークン6,523 -> 239 おおよそのトークン重要: これは各プロンプトごとの固定保証ではありません。生成された pack が元のコンテキストより実際に小さくない場合、codex-agent-mem は reinjection をスキップし、存在しない削減をあるかのようには扱いません。
このリポジトリには次が含まれます:
pyproject.toml