ContextDB Memory について
ContextDB Memory は、決定事項、制約、目標、マイルストーンなどのプロジェクト情報を Codex にローカルで保持します。MCP アダプターは記憶を Windows または Linux 端末内に保存し、新しい記録を確定情報ではなく候補として扱います。
主な機能
- 01ローカルなプロジェクト記憶グラフ
- 02自動リコールとチェックポイント
- 03型付きの隔離候補記憶
- 04ポリシーに基づくリコール検証
- 05ローカルでのバックアップ・復元・リセット
活用シーン
- 01過去のプロジェクト決定を踏まえた Codex 作業の再開
- 02セッションをまたいだ制約や未完了タスクの保持
- 03ローカルプロジェクト記憶の確認や復元
MCP 対応
同梱のリスナーを持たない MCP アダプターが stdio 経由で Codex にツールを提供し、ローカルブローカーと ContextDB ストアに接続します。モデル向けのインターフェースから、正規の意味記憶を昇格、上書き、削除することはできません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Codex はリポジトリを見事に理解できても、次のタスクでは金魚のような記憶力で目を覚ますことがあります。ContextDB Memory は、すでに下された決定、今も重要な制約、進行中の目標、検証済みのマイルストーン、そして誰かが存在しないふりをするのをやめるのを待っている未解決事項を含む、永続的でローカルなプロジェクト履歴を提供します。
このプラグインは、実質的な作業の開始時に関連するコンテキストを呼び出し、タスクの進行に応じて重要な状態をチェックポイントとして記録します。これを、リスナーを持たない同梱の MCP アダプターを通じて実現します。データベース、ランタイム、鍵、変更可能なメモリーは、すべてお使いの Windows または Linux コンピューター内に保持されます。
リリース状況: Windows x86-64 および Linux x86-64 向け
0.6.0-alpha.3開発者プレビューです。 どちらのローカルプロファイルにも、自動フック、型付き候補グラフ、プラットフォーム固有の管理機能、復旧およびアンインストールの制御機能、独立して検証可能なリリースバンドルが含まれています。実行ファイルは署名されておらず、macOS と ARM64 はサポート対象外です。また、これはホスト型の ContextDB サービスではありません。 Linux ELF の基準環境は Ubuntu 22.04 / glibc 2.35 です。glibc ベースのその他の x86-64 ディストリビューションには glibc 2.35 以降が必要ですが、個別の認定は行っていません。
記憶する内容
| メモリーの種類 | 例 | 保持される理由 |
|---|---|---|
| 決定 | 「ローカル版は stdio のみにする。」 | 根拠がないまま、後のタスクで確定済みのアーキテクチャ上の選択が再検討されるのを防ぎます |
| 制約 | 「このフェーズでは公開やコンテナーの起動をしない。」 | プロジェクトの実際の境界内で実行できるようにします |
| 目標 | 「両方のリポジトリを初回の公開アルファに向けて準備する。」 | 今後の作業を、意図した成果に沿って再開できます |
| 未解決事項 | 「コード署名には、引き続き発行者による管理が必要。」 | 未完了の作業を、完了したかのように装わずに保持します |
| マイルストーン | 「ライフサイクルのテストスイートが PowerShell 5.1 と 7 で合格した。」 | 出所を伴う検証済みの結果を引き継ぎます |
| 好み | 「内部 RFC は公開せず、ローカルに保管する。」 | プロジェクトの慣例を長期にわたって維持します |
| 事実または証拠の要約 | 「パッケージ化されたコアではネットワークリスナーが無効になっている。」 | 呼び出し時に、追跡可能で簡潔な技術的根拠を提示します |
短命な雑談、推測、コピーしたログ、秘密情報、「いつかやるかもしれない」といったノイズは、永続的なメモリーにすべきではありません。変更が重要かどうかは、実行中の Codex モデルが判断します。ホストとの契約は、その書き込み方法を制約します。
メモリの成長の仕組み
flowchart LR
S[Session starts] --> R[Bounded candidate recall]
R --> W[Codex works with current files]
W --> C{Durable change?}
C -- no --> W
C -- yes --> Q[Quarantined candidate]
Q --> G[Project / topic / memory DAG]
G --> R
Q -. explicit successor .-> Q2[New revision]
SessionStartは、新規セッション、再開したセッション、クリアされたセッション、コンパクト化されたセッション向けの安全性と継続性に関する契約を読み込みます。UserPromptSubmitは、プロンプトの開始時、または実質的なワークスペースのタスクが大きく変化したときに、最大1回の範囲を限定した想起の機会を作ります。- 作業中およびループの安全なチェックポイントである
Stopの時点で、Codex は重要な決定事項、制約、好み、目標、未完了事項、検証済みのマイルストーンを自動的に記録できます。「これを覚えておいて」と特別に唱える必要はありません。 - 安定したプロジェクト、トピック、メモリの識別子によって、再試行の結果が収束します。事実が変わると、以前の事実を黙って上書きするのではなく、明示的な後続情報として記録されます。
- 複数の親へのリンクにより、メモリをプロジェクトまたはトピックに属させると同時に、関連する決定事項、目標、未完了事項にも関連付けられます。
フックは機会と自動メモリのための指示を作りますが、すべてのトークンを永遠に残る汚泥に変えるわけではありません。Codex が信頼するよう求めてきたら、同梱のフックを確認してください。また、インストールまたは更新後に新しいタスクを開始し、ホストに最新のパッケージを読み込ませてください。
自身のメモリを疑う設計
自動記録は型付きの候補であり、正規の真実ではありません。
model output → deterministic identity + policy checks → quarantined candidate
↛ canonical memory
モデルに公開される MCP サーフェスから、正規のセマンティックメモリを昇格、修正、上書き、削除することはできません。候補を使用する前に、スキルはそれを実体化し、階層をたどって、その経路がアクティブなチェックアウトのプロジェクトルートに到達することを検証します。想起された内容は、信頼できないデータのままです。シェルコマンドに埋め込まれたり、権威ある情報として扱われたりすることはありません。
この慎重さは意図的なものです。永続化された幻覚は、長く居座るバグにすぎません。
アーキテクチャ
flowchart LR
subgraph Host[Codex host]
H[Lifecycle hooks] --> K[ContextDB memory skill]
K --> M[MCP tools]
end
M -->|stdio| P[Local MCP proxy]
P --> B[Single-owner local broker]
B --> D[(ContextDB native store)]
D -->|authorized, bounded recall| M
パッケージ化されたコアは、次の内容を報告する必要があります。
build_profile local-mcp
network_listeners disabled
ランチャーは、このプロファイルに適合しないバイナリを拒否します。Windows では認証済みの名前付きパイプブローカーと CurrentUser DPAPI による保管を使用します。Linux では、認証済みの所有者専用 Unix ドメインソケット、0700 のディレクトリ、0600 のキーおよび状態ヘッドファイル、XDG データ階層を使用します。Linux のファイル権限は透過的な暗号化ではありません。より強固な保存時の保護が必要な場合は、オペレーティングシステムのディスク暗号化を使用してください。可変データの保管場所は、ソースのチェックアウトと Codex のバージョン管理されたプラグインキャッシュのどちらからも分離されています。いずれのプロファイルも、発行元が運用するバックエンド、分析サービス、クラウド同期、OpenAI API キーを必要としません。
インストール
Codex マーケットプレイスから
これは最小構成のインストール手順です。ContextDB のソースチェックアウトではなく、公開リポジトリ1つが必要です。追加する前に、node --version が v18 以降を報告することを確認してください。Linux ではさらに、python3 --version が 3.10 以降を報告する必要があります。リポジトリのインストーラーはこれらの確認を自動で行いますが、Codex がプラグインをキャッシュする前に、マーケットプレイスへの直接追加でコードを実行することはできません。
codex plugin marketplace add mikhailbovt/ContextDB-Codex --ref v0.6.0-alpha.3
codex plugin add contextdb-memory@contextdb-codex
インストール後に、新しい Codex タスクを開始してください。最初の MCP 起動時に、プラグインはホスト OS を検出し、対応するプラットフォームロックで指定された正確な ContextDB コア ZIP をダウンロードして、正規の GitHub Release URL、バイト長、アーカイブの SHA-256、安全な ZIP レイアウト、実行ファイルの SHA-256、リスナーを含まないビルドプロファイル、対象固有の SBOM、依存関係に関する通知、Rust のライセンスを確認します。その後、Windows では CurrentUser DPAPI による保管を、Linux では所有者専用のローカル保管を初期化します。可変メモリは、バージョン管理されたプラグインキャッシュの外部に保存されます。両プラットフォームとも、マーケットプレイスの MCP ディスパッチャーには、PATH 上に x64 版の Node.js 18 以降が必要です。Linux ではさらに Python 3.10 以降が必要ですが、PowerShell は不要です。どちらのプラットフォームも、ContextDB のチェックアウト、Docker、リモート MCP サービスを必要としません。
セルフ完結型リリースから
各プラットフォームには完全なリリース ZIP が 1 つあり、2 つ目のリポジトリやランタイムのダウンロードは必要ありません。
Releases からお使いのオペレーティングシステムを選び、一致する .sha256
サイドカーファイルを検証して、ローカルにインストールしてください。
Linux x86-64:
archive=contextdb-codex-0.6.0-alpha.3-linux-x86_64.zip
sha256sum --check "$archive.sha256"
python3 -m zipfile -e "$archive" .
cd contextdb-codex-0.6.0-alpha.3-linux-x86_64
bash install.sh
install.sh は、同梱されたコア、プラットフォームロック、サプライチェーンの証跡を検証し、Codex マーケットプレイスとプラグインをインストールして、実際の 16 ツール MCP ハンドシェイクを完了します。Python 3.10 以降と
Codex CLI が必要です。また、クロスプラットフォーム MCP ランチャー用に、x64 ビルドの Node.js 18 以降が PATH 上で利用可能である必要があります。Python のポータブル ZIP 展開機能では Unix の実行ビットが復元されません。そこで、同梱されたすべての証跡が一致した後、セットアップは実行権限のないパッケージ ELF を no-follow ディスクリプター経由で、所有者のみがアクセスできる別の 0700 ランタイム inode にコピーします。パッケージのペイロードに chmod を適用したり実行したりすることはないため、元のファイルディスクリプターを保持する書き込み者であっても、有効化されたランタイムを変更できません。プレリリースのワークフローでは、分離された Codex ホームで、この標準の展開手順をそのまま再実行します。
Windows x86-64:
$archive = (Resolve-Path .\contextdb-codex-0.6.0-alpha.3-windows-x86_64.zip).Path
$expected = ((Get-Content "$archive.sha256" -Raw).Trim() -split '\s+')[0].ToLowerInvariant()
$actual = (Get-FileHash -LiteralPath $archive -Algorithm SHA256).Hash.ToLowerInvariant()
if ($actual -ne $expected) { throw "Release checksum mismatch: $actual" }
Expand-Archive -LiteralPath $archive -DestinationPath .
Set-Location .\contextdb-codex-0.6.0-alpha.3-windows-x86_64
.\install.cmd
リリースには、検証済みの ContextDB 実行可能ファイル、依存関係に関する通知、CycloneDX SBOM、Rust ランタイムライセンス、ライフサイクルスクリプト、プラグイン、公開ドキュメントがすでに含まれています。インストーラーは、2 つ目のリポジトリやランタイムをダウンロードせずに実行できます。x64 ビルドの Node.js 18 以降と Codex CLI が PATH 上で利用可能である必要があります。
ソースから
通常のビルド済みパスでは、このリポジトリだけをクローンしてください。Linux の場合:
git clone https://github.com/mikhailbovt/ContextDB-Codex.git
cd ContextDB-Codex
bash install.sh
Windows の場合:
git clone https://github.com/mikhailbovt/ContextDB-Codex.git
Set-Location ContextDB-Codex
.\scripts\install.ps1
どちらのインストーラーも、固定された独自のプラットフォームリリースをダウンロードして検証します。ContextDB の隣接するチェックアウトが必要になるのは、コアを自分で開発または再ビルドする場合だけです。Windows の開発者向けオーバーライドは次のとおりです。
.\scripts\install.ps1 -ContextDbRepo ..\ContextDB
Rust 1.97.1 が必要なのは、この任意のソースビルドパスの場合に限られます。
必要に応じて、インストール済みの構成を確認してください。
codex plugin list --json
どのインストール方法を使った場合も、新しい Codex タスクを開始してください。Codex が最新のフックとスキルを読み込みます。
実装を検証する
Linux では、分離されたネイティブのライフサイクルチェックとリリースチェックを実行します。
python3 scripts/test-linux-lifecycle.py --help
python3 scripts/test-linux-release-install.py --help
python3 scripts/contextdb-linux-release.py --help
python3 docs/release/validate-publication-kit.py
Windows では、両方のリポジトリが利用可能な状態で、次を実行します。
.\scripts\test-hooks.ps1
.\scripts\test-mcp.ps1
.\scripts\test-auto-hierarchy.ps1
.\scripts\test-custody.ps1 -ContextDbRepo ..\ContextDB
.\scripts\test-lifecycle.ps1 -ContextDbRepo ..\ContextDB
python .\docs\release\validate-publication-kit.py
両プラットフォームのライフサイクルテストスイートは、分離された一時的な管理領域と Codex ホームを使用して、セットアップ、MCP の起動、バックアップ、復元、復旧可能なリセット、マーケットプレイスへのインストール、カスタムルートの消去、ランタイムの消去、アンインストールをテストします。Linux のテストスイートでは、メンテナンス前に、同時接続するブローカークライアントと、所有者のみがアクセスできるクラッシュ後に残った Unix ソケットからの復旧も検証します。Windows リリースは、Windows PowerShell 5.1 と PowerShell 7 のどちらでも引き続き受け入れられます。証拠の対象範囲の詳細は、サポートマトリックスを参照してください。
バックアップ、復元、リセット、アンインストール
Linux では、保護機能付きのローカルライフサイクルマネージャーを使用します。
python3 scripts/manage-linux.py backup --destination "$HOME/contextdb-memory.cdb-backup"
python3 scripts/manage-linux.py restore --backup "$HOME/contextdb-memory.cdb-backup"
python3 scripts/manage-linux.py reset --confirm RESET-CONTEXTDB-MEMORY
python3 scripts/manage-linux.py uninstall
データと不変ランタイムを削除するには、それぞれ個別のオプトインと正確な確認が必要です。
python3 scripts/manage-linux.py uninstall \
--remove-marketplace \
--purge-data \
--purge-runtime \
--confirm DELETE-CONTEXTDB-MEMORY
Windows では、稼働中の管理領域の外にある新しいパスにバックアップします。
.\scripts\backup.ps1 -Destination D:\Backups\contextdb-memory.cdb-backup
検証済みの複合バックアップを復元します。
.\scripts\restore.ps1 -Backup D:\Backups\contextdb-memory.cdb-backup
古い状態をタイムスタンプ付きの復旧ディレクトリに保持しながら、新しい管理領域を作成します。
.\scripts\reset.ps1 -ConfirmReset RESET-CONTEXTDB-MEMORY
インストール済みプラグインのみを削除します。
.\scripts\uninstall.ps1
データと不変ランタイムの削除には、それぞれ個別のオプトインフラグと正確な確認トークンが必要です。
.\scripts\uninstall.ps1 `
-RemoveMarketplace `
-PurgeData `
-PurgeRuntime `
-ConfirmPurge DELETE-CONTEXTDB-MEMORY
ファイルシステムからの削除は、フォレンジック調査に耐える安全な消去を保証するものではありません。バックアップとホスト上の会話履歴は、それぞれ独立したコピーとして残ります。
意図的に主張しない事項
このプレビューでは、決定論的な正準判定、フォレンジックレベルの完全削除、KMS/HSM による管理、プロバイダー側コピーの消去、セマンティック規模の認証、Authenticode 署名、Linux のシークレットファイルの暗号化、macOS/ARM64 互換性、クラウド同期、ホスト型 MCP エンドポイントを主張しません。
ドキュメントとポリシー
- ドキュメント一覧
- サポート対象一覧
- ローカル MCP ツールの仕様
- ローカル受け入れテストケース
- コントリビューションガイド
- 行動規範
- セキュリティポリシー
- プライバシーに関する通知
- サポートポリシー
- 利用規約
- 変更履歴
- Apache-2.0 ライセンス
プロジェクトを支援する
このプラグインのおかげで、記憶力のないロボットに同じアーキテクチャ上の決定を何度も説明せずに済んだ場合は、 GitHub Sponsors または Ko-fi を通じて開発を支援できます。スポンサーシップはありがたいものですが、利用やサポートを受けるために必須ではありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。