このプロジェクトについて
Atriumは、3層構成のメモリシステムの第2層であり、正規の会話アーカイブに対する派生・使い捨て可能な検索を提供します。ソースデータを所有せず、正規アーカイブとキュレーションされたノートから再構築可能なインデックスを構築します。設計では、インデックスが使い捨て可能であり、マシンはインデックスではなくアーカイブを同期することで、コピーなしに収束を保証することを重視しています。
主な機能は以下の通りです:
- **取り込み**: 会話アーカイブ(JSONL)とキュレーションされたノートツリーをインデックス化します。
- **検索**: 語彙(完全単語および部分文字列)と密(意味)レーンの両方を融合する適応型検索で、各レーンを単独で使用するオプションもあります。密レーンは、キュレーションされたノートとセッション要約のみを埋め込み、生コーパスは埋め込みません。
- **セッション記録**: Claude CodeのStopフック(`stop-record-episode.sh`)が、しきい値に達したときにエージェントにセッションエピソードの記録を促し、`atrium record-session`を使用してレコードを検証、編集、保存します。
- **コンテキスト取得**: `UserPromptSubmit`フック(`user-prompt-context.sh`)が関連する証拠をプロンプトに注入します。`atrium context`コマンド(MCP経由でも利用可能)は、プロジェクトとキュレーションされたノートにスコープされ、予算と安全チェックが制限された構造化証拠を返します。
- **状態管理**: 状態は環境変数または設定から解決された専用ディレクトリに保存され、派生データを分離し、決して同期しません。
- **開発**: `uv`と`pytest`/`ruff`によるテストとリンティング。
READMEには、使用例、フックの設定、プロトコル受け入れテストの詳細が含まれています。また、検索レーンを分離しておく理由と、`AGENTS.md`に文書化された決定を再測定することの重要性についても説明しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.