--- title: 記憶 description: CowAgent 長期記憶システム --- 記憶システムにより、Agent は重要な情報を長期にわたって記憶し、継続的に経験を蓄積し、ユーザーの好みを理解し、真に自律的な思考と継続的な成長を実現できます。 ## 記憶の種類 ### コア記憶 (MEMORY.md) `~/cow/MEMORY.md` に保存され、長期的なユーザーの好み、重要な決定、主要な事実など、時間が経っても薄れない情報を含みます。毎回の会話ターンでバックグラウンド知識としてシステムプロンプトに自動的に注入されます。 ### 日次記憶 (memory/YYYY-MM-DD.md) `~/cow/memory/` ディレクトリに保存され、日付で命名されます(例:`2026-03-08.md`)。日々の会話の要約と主要なイベントを記録します。空ファイルの生成を避けるため、最初の書き込み時にのみファイルが作成されます。 ## 記憶の書き込み Agent は以下のメカニズムにより、会話内容を日次記憶に自動的に永続化します: - **コンテキストトリミング時** — 会話ターン数またはトークン数が設定上限を超えた場合、コンテキストの古い半分が一括でトリミングされ、破棄されたコンテンツは LLM によって要約されて重要な情報として日次記憶ファイルに書き込まれます - **毎日のスケジュール要約** — 毎日 23:55 に自動的にフル要約がトリガーされ、アクティビティが少ない日でも記憶が保存されます(内容が変更されていない場合はスキップ) - **API コンテキストオーバーフロー時** — モデル API がコンテキストオーバーフローエラーを返した場合、緊急措置として現在の会話要約が保存されます すべての記憶書き込みはバックグラウンドスレッドで非同期に実行され(LLM の要約 + ファイル書き込み)、通常の会話応答をブロックしません。 ## 初回起動 初回起動時に、Agent はユーザーに主要な情報を積極的に尋ね、ワークスペース(デフォルト `~/cow`)に保存します: | ファイル | 説明 | | --- | --- | | `system.md` | Agent のシステムプロンプトと動作設定 | | `user.md` | ユーザーの身元情報と好み | | `MEMORY.md` | コア記憶(長期) | | `memory/YYYY-MM-DD.md` | 日次記憶(オンデマンドで作成) | ## 記憶の検索 記憶システムはハイブリッド検索モードをサポートしています: - **キーワード検索** — キーワードに基づいて過去の記憶をマッチング - **ベクトル検索** — セマンティック類似性検索により、異なる表現でも関連する記憶を発見 Agent は必要に応じて会話中に自動的に記憶検索をトリガーし、関連する過去の情報をコンテキストに組み込みます。コア記憶(`MEMORY.md`)は常にシステムプロンプトに注入され、日次記憶は検索を通じてオンデマンドで読み込まれます。 ## 設定 ```json { "agent_workspace": "~/cow", "agent_max_context_tokens": 40000, "agent_max_context_turns": 20 } ``` | パラメータ | 説明 | デフォルト | | --- | --- | --- | | `agent_workspace` | ワークスペースパス、記憶ファイルはこのディレクトリ配下に保存されます | `~/cow` | | `agent_max_context_tokens` | 最大コンテキストトークン数。超過時に半分がトリミングされ、記憶として要約されます | `40000` | | `agent_max_context_turns` | 最大コンテキストターン数。超過時に半分がトリミングされ、記憶として要約されます | `20` |