ガイド

Environment

Environmentはプロジェクトの記述的知識です — 現在何が存在するかを示します。技術スタック、ソース構造、ビルド設定、ドメイン知識、コード依存関係をキャプチャします。Genome(規範的 — どう構築するか)とは異なり、Environmentは現在の状態を記述します。

2層構造

text
.reap/environment/
├── summary.md      # 常にロード(~250行) — 技術スタック、ソース構造、ビルド、テスト
├── domain/         # ドメイン知識(オンデマンド)
├── resources/      # 外部参照ドキュメント — APIドキュメント、SDK仕様(オンデマンド)
├── docs/           # プロジェクト参照ドキュメント — 設計書、仕様(オンデマンド)
└── source-map.md   # コード構造 + 依存関係(オンデマンド)

読み込み内容制限
summary.mdセッション開始時に常にロード技術スタック、ソース構造、ビルド設定、テストセットアップ。AIの基本的な理解。~250行
domain/オンデマンド(必要時にロード)ドメイン知識 — ビジネスルール、API仕様、インフラの詳細。制限なし
resources/オンデマンド(必要時にロード)外部参照ドキュメント — APIドキュメント、SDK仕様、サードパーティドキュメント。制限なし
docs/オンデマンド(必要時にロード)プロジェクト参照ドキュメント — 設計書、仕様、アーキテクチャ決定。制限なし
source-map.mdオンデマンド(必要時にロード)現在のコード構造と依存関係マップ。制限なし

Environmentの不変性

Genomeと同様に、EnvironmentもGeneration中に直接変更されません。変更はenvironment-changeバックログアイテムとして記録され、Completionのreflectフェーズで適用されます。

変更をGeneration中にEnvironmentを書き直すのではなくbacklogに記録することで、Generationは安定したマップ上で完了します。更新は、構築されたものの完全なコンテキストを持つreflectフェーズで一度だけ意図的に行われます。

読み込み戦略

summary.mdはセッション開始時に常にロードされます。domain/やsource-map.mdは、AIが特定のタスクでより深いコンテキストを必要とする場合にオンデマンドでロードされます。

ナレッジ管理

/reap.knowledgeを使用してEnvironmentをレビュー・管理します。Completionのreflectフェーズで、AIはGeneration中に行われた変更を反映するようenvironmentを自動更新します。

summary.md
常にロード
プロジェクトの技術的状態のコンパクトな概要。毎セッションにロードされ、AIが基本的なコンテキストを持ちます。
domain/ + resources/ + docs/ + source-map.md
オンデマンド
AIが現在のタスクに特定のドメイン、外部参照、または構造コンテキストを必要とする場合にロードされる詳細な知識。

2層戦略はコンテキストウィンドウの効率性(summary.mdは小さい)と深度(domain/やsource-map.mdは必要時に利用可能)のバランスを取ります。