メインコンテンツへスキップ
Decision Memory は、AIエージェントが行った変更の理由を記憶する Kodus の方法です — 差分だけでなく、推論、制約、検討した代替案も。決定はエージェントのすべてのターンで自動的にキャプチャされ、コードと並行してバージョン管理された構造化マークダウンファイルとして保存されます。

存在する理由

コードレビューは差分の問題点を検出します。しかし、なぜ作成者がアプローチ B ではなくアプローチ A を選んだのか、あるいは 42 行目の醜い回避策を強いた制約が何だったかは教えてくれません。AIエージェントにとって、そのコンテキストはセッション間で消えてしまいます — 各実行はゼロから始まります。 Decision Memory はこれを以下の方法で解決します:
  • すべてのターン完了イベントで推論を自動的にキャプチャ
  • リポジトリに保存することで、コンテキストがセッションではなくコードと一緒に移動。
  • PR とモジュールでスコープすることで、ブランチレベルのコンテキストと長期モジュール知識の両方を取得。

仕組み

有効にすると、Kodus はAIエージェントのターン完了イベントにフックをインストールします。各ターンで、エージェントの決定は以下にキャプチャされます:
.kody/
├── pr/by-sha/<head-sha>.md    # PR レベルの決定(コードとともにバージョン管理)
├── memory/<module-id>.md      # モジュールレベルの決定(長期)
└── modules.yml                # モジュール設定
  • PR メモリはブランチに存在します。現在のヘッド SHA にスコープされています — ブランチが進化するにつれて、各意味のある状態に対して新しいファイルが作成されます。
  • モジュールメモリは長期的です。時間をかけてモジュールごとに決定を蓄積します。
  • modules.yml は Kodus にパスをモジュールにマッピングする方法を伝えます(例: src/auth/**auth モジュール)。

対応エージェント

  • Claude Code — stop/agent-turn-complete の設定フック経由。
  • Cursor — ワークスペースルール経由。
  • Codex~/.codex/config.tomlnotify エントリ経由。

セットアップ

検出されたすべてのエージェントに対して有効化:
kodus decisions enable
または特定のエージェントをターゲットに:
kodus decisions enable --agents claude,cursor
kodus decisions enable --agents codex --codex-config ~/.codex/config.toml
既存の設定がある場合、強制的に再インストール:
kodus decisions enable --force
設定されているものを確認:
kodus decisions status

ワークフロー

1

フックを有効化

kodus decisions enable
これはエージェント固有の統合ファイルをインストールし、.kody/ を git に追加します(存在しない場合は modules.yml を作成します)。
2

通常通りに作業

あなた(またはエージェント)が作業するとき、各ターン完了イベントは .kody/pr/by-sha/<sha>.md に決定をキャプチャします。これらのファイルをコードの変更と一緒にコミットしてください — 推論がバージョン管理に入ります。
3

キャプチャされた決定を確認

kodus decisions show                    # 現在のブランチの PR メモリ
kodus decisions show feat/auth          # 特定のブランチの決定
kodus decisions show auth               # 'auth' のモジュール決定
4

長期メモリに昇格

PR がマージされたら、その PR レベルの決定をモジュールレベルのメモリに昇格させ、ブランチを超えて永続化させます:
kodus decisions promote                               # 現在のブランチ、全マッチモジュール
kodus decisions promote --branch feat/auth            # 特定のブランチ
kodus decisions promote --branch feat/auth --modules auth,users

キャプチャされる内容

各決定ファイルは構造化マークダウンです:
  • サマリー — エージェントが意図したこと。
  • コンテキスト — 制約、以前の決定、参照されたファイル。
  • 検討した代替案 — エージェントが却下したアプローチとその理由。
  • 結果 — 実際に変更されたもの。
正確な形状はエージェントのターンイベントによって異なります; CLI は一貫したフロントマター + ボディ形式に正規化します。

無効化

すべてのフックと統合ファイルを削除:
kodus decisions disable
これは .kody/ のデータを削除しません — 履歴はそのまま残ります。クリーンな状態にしたい場合は手動でディレクトリを削除してください。

CLI が読み取るコンテキストファイル

.kody/ に加えて、CLI はレビューを実行するときにこれらのファイルからプロジェクトコンテキストを取得します:
ファイル説明
.kodus.mdKodus 固有の設定とガイドライン
claude.mdClaude 固有のガイドライン
.cursor/rules/Cursor IDE ルールディレクトリ
これらは Decision Memory とは直交しています — それらは継続的なコンテキストを記述し、Decision Memory はターンごとの推論をキャプチャします。

関連

AI エージェント

Claude Code、Cursor、Codex、Windsurf とのレビュー・修正ループ。

コンセプト

Kody Rules、集中管理設定、差分モード。

コマンドリファレンス

完全な kodus decisions フラグ一覧。

トラブルシューティング

決定フックがキャプチャされない場合は専用アコーディオンを参照。