本文へエージェントは記憶を必要としない、ドキュメントが必要だ
概要
- メモリープラグイン は会話履歴を断片化し、RAG(Retrieval-Augmented Generation)ベースで管理
- 実際には プロジェクト理解 や本質的な文脈把握ができていない現状
- 記憶よりも ドキュメント管理 がエージェントには重要
- ドキュメントベースの「Operator Memory」による新アプローチ
- GitHub で無料・オープンソースとして公開
メモリープラグインの現状と課題
- 市場の メモリープラグイン は全てRAGベースの同一アーキテクチャ
- セッション履歴をスニペット化し、ベクターデータベースへ格納
- 各プロンプト時に類似上位5件のスニペットを自動付与
- エージェントが混乱時は追加検索も可能
- 高度な機能追加例
- 過去の全文検索機能
- 短期・長期記憶の階層化
- バックグラウンドでのメモリー統合や重複排除
- 「Dreamers」やコンテキスト圧縮、リランカーなどの補助機能
- しかし、根本の設計が変わらないため、信頼性や一貫性に欠ける
RAGアーキテクチャの本質的な問題点
- 類似度検索のみで 正確性や最新性 を担保できない
- スニペットは 文脈・動機・教訓 など多くの情報を欠落
- コードベースの変化に追随できず、 過去の断片 が真実扱いとなる
- エージェントは「知らないこと」を自覚できず、適切な検索タイミングも判断不可
- ストアの 監査性が低く、どのメモリーが有効か不明瞭
- 記憶=問題、記憶強化=解決という 誤った前提 に基づく
ドキュメント重視のアプローチ
- 人間は 会議録再視聴 ではなく、記録文書を参照
- エージェントにも ドキュメントベースの知識管理 が必要
- AGENTS.md等の導入例
- しかし単一ファイルでは不十分
- 必要なのは「 脳」としての構造化ワークスペース
- 指示、仕様、決定事項、調査、インデックス等を蓄積
- 作業前に必ず関連ドキュメントを読み込み、作業後に更新
- エージェントループの進化:プロンプト→参照→構築→更新
Operator Memoryによる解決策
- 開発者自身の経験から誕生した Operator Memory
- internal/フォルダで仕様・計画・インデックス等を記録
- 作業前後に必ずドキュメントの参照・更新を徹底
- Operator Memoryの特徴
- Markdownベース のドキュメント管理
- 重要知識(指示、仕様、調査、インデックス等)を永続化
- ベクターデータベースや埋め込み、要約、黒箱的な検索は不要
- チームで 可読・更新・共有・コミット が容易
- 実運用で1年以上利用し、安定稼働実績
- GitHub(https://github.com/aerovato/operator-memory) で無償公開
まとめ:記憶より「脳」としてのドキュメントを
- エージェントに必要なのは 記憶強化 ではなく、 体系的な知識管理
- RAG中心の記憶プラグインは根本的な課題を解決できない
- ドキュメントベース のアプローチが今後の主流
- Operator Memoryはその実践的なソリューション
- プロジェクトの理解・継続的な文脈把握には 「脳」としてのドキュメントワークスペース が不可欠
似たようなものを作って、家での「メモ」やアイテムを追跡してみたけど、データが増えてくると、読み込みや更新をするたびにトークンをすぐに消費しちゃうんだよね。古い情報を関連付けておくのも大変だし。小さなタスクでも、ドキュメントを読んだり、更新したり、まとめたり、リフレッシュしたりするうちに、トークンコストが膨れ上がることがある。でも、家のインフラやサービス、CI/CDの設定、ホスト、ストレージ、ネットワークなどをしっかりと参照しておくと、プロジェクト間で共有する「メモ」としてすごく役立つんだ。テストやデプロイ、受け入れテストに使うときにね。