dna-memory
AI エージェント向けの DNA メモリシステム:ワーキング・短期・長期の3層構造で、アクティブな忘却、パターン要約、リフレクションループ、メモリアソシエーションを備えています。セッション間での永続的なメモリが必要なエージェント構築時、文脈の回想機能、あるいはユーザーが記憶・学習・記入・回顧・反思について言及した場合に使用してください。
description の原文を見る
DNA memory system for AI agents: three-layer architecture (working/short-term/long-term) with active forgetting, pattern summarization, reflection loops, and memory associations. Use when building agents that need persistent memory across sessions, context recall, or when user mentions 记忆/学习/记住/回顾/反思.
SKILL.md 本文
DNAメモリー - DNA記憶システム
エージェントが単に覚えるだけでなく、真に学ぶために。
コア理念
人間の脳はハードディスクではなく、すべての情報を無差別に保存しません。人間の脳は以下のことを行います:
- 重要でない情報を忘れる
- 繰り返し現れる情報を強化する
- 散在する情報をパターンに集約する
- 過去の成功と失敗を反思する
DNA メモリーはこのプロセスをシミュレートし、エージェントが真に「進化」することを実現します。
三層記憶アーキテクチャ
┌─────────────────────────────────────────────────┐
│ ワーキングメモリ (Working Memory) │
│ - 現在のセッションの一時的な情報 │
│ - セッション終了後に自動的に選別 │
│ - ファイル:memory/working.json │
└─────────────────────────────────────────────────┘
↓ 選別
┌─────────────────────────────────────────────────┐
│ 短期記憶 (Short-term Memory) │
│ - 過去7日間の重要な情報 │
│ - 減衰ウェイト付き、アクセスなしで徐々に忘れる │
│ - ファイル:memory/short_term.json │
└─────────────────────────────────────────────────┘
↓ 巩固
┌─────────────────────────────────────────────────┐
│ 長期記憶 (Long-term Memory) │
│ - 検証済みの永続的な知識 │
│ - 集約後の認知パターン │
│ - ファイル:memory/long_term.json + patterns.md │
└─────────────────────────────────────────────────┘
記憶タイプ
| タイプ | 説明 | 例 |
|---|---|---|
fact | 事実情報 | "Andy のWeChat は AIPMAndy" |
preference | ユーザー好み設定 | "Andy は簡潔で直接的な返答を好む" |
skill | 学んだスキル | "Feishu API レート制限時は分割リクエストが必要" |
error | 犯した過ち | "rm の代わりに trash を使用すべき" |
pattern | 集約したパターン | "GitHub へのプッシュ前にネットワークを確認" |
insight | 深層的な洞察 | "Andy は完璧さよりも効率を重視する" |
コア操作
1. 記録 (Remember)
python3 scripts/evolve.py remember \
--type fact \
--content "Andy の GitHub アカウントは AIPMAndy" \
--source "ユーザーから通知" \
--importance 0.8
2. 回想 (Recall)
python3 scripts/evolve.py recall "GitHub アカウント"
関連する記憶を返し、関連度と重要度でソートします。
3. 反思 (Reflect)
python3 scripts/evolve.py reflect
反思ループをトリガーします:
- 最近の記憶を振り返る
- 繰り返されるパターンを特定する
- 認知パターンに集約する
- 長期記憶を更新する
4. 忘却 (Forget)
python3 scripts/evolve.py decay
忘却メカニズムを実行します:
- 7日間アクセスされていない短期記憶の重み付けを減衰
- 重み付けが閾値以下の記憶をクリーンアップ
- 重要な記憶は削除されない
5. 関連付け (Link)
python3 scripts/evolve.py link <memory_id_1> <memory_id_2> --relation "因果"
記憶間の関連付けを確立し、知識グラフを形成します。
6. バックグラウンドデーモン (Daemon)
起動(バックグラウンド):
python3 scripts/dna_memory_daemon.py start
ステータス確認:
python3 scripts/dna_memory_daemon.py status
停止:
python3 scripts/dna_memory_daemon.py stop
デフォルトでは assets/config.json からレート制限パラメータを読み込みます:
auto_reflect_interval_minutes(デフォルト 30 分)auto_decay_interval_hours(デフォルト 24 時間)
また、新しい remember の書き込みがあった場合にのみ reflect を実行し、同一バッチの記憶の重複した集約を避けます。
ログは /tmp/dna-memory-daemon.log に書き込まれます。
自動トリガー
セッション開始時
- 関連する長期記憶をロード
- 反思待ちの短期記憶があるかどうかを確認
セッション終了時
- ワーキングメモリーから重要な情報を選別
- 短期記憶に保存
- 短期記憶が十分に蓄積された場合、反思をトリガー
毎日自動実行
- 忘却メカニズムを実行
- 新しいパターンの集約が必要かどうかを確認
デフォルトレート制限:
auto_reflect_interval_minutes=30:自動反思の最小間隔は 30 分で、高頻度の重複した集約を避けます。auto_decay_interval_hours=24:自動忘却の最小間隔は 24 時間です。
並行安全性
evolve.pyには既にプロセス間ファイルロックが組み込まれており、フロントエンドコマンドとバックグラウンドデーモンの同時実行をサポートします。- JSON 書き込みはアトミック置換を採用し、中断/並行実行による データ破損のリスクを低減します。
記憶強化ルール
記憶の重要度は動的に調整されます:
| イベント | 重み付けの変化 |
|---|---|
| アクセス/使用される | +0.1 |
| ユーザーに正確さを確認される | +0.2 |
| ユーザーに修正される | エラーとしてマーク、新しい記憶を作成 |
| 7日間アクセスなし | -0.1 |
| 他の記憶に関連付けられる | +0.05 |
| パターンに集約される | 長期記憶にアップグレード |
認知パターン (Patterns)
複数の記憶が同様の規則を示す場合、自動的にパターンに集約されます:
## Pattern: GitHub プッシュ戦略
**トリガー条件**: GitHub にプッシュする必要がある場合
**学んだ教訓**:
1. まずネットワーク接続を確認
2. タイムアウト後、すぐに諦めずに再試行を待つ
3. 持続的に失敗する場合、手動操作ソリューションを提供
**ソース記憶**: [mem_001, mem_003, mem_007]
**検証回数**: 5
**最後の検証**: 2026-03-01
既存システムとの統合
MEMORY.md との関係
- MEMORY.md は人間が維持管理する高レベルの記憶です
- DNA メモリーは自動化された細粒度の記憶です
- 重要なパターンは MEMORY.md に昇格させることができます
self-improving-agent との関係
- self-improving-agent はエラーと学習を記録します
- DNA メモリーはこれに基づいて、集約、忘却、関連付けを追加します
- .learnings/ 内のコンテンツをインポートできます
ファイル構造
~/.openclaw/workspace/memory/
├── working.json # ワーキングメモリー(現在のセッション)
├── short_term.json # 短期記憶(7日以内)
├── long_term.json # 長期記憶(永続)
├── patterns.md # 集約した認知パターン
├── graph.json # 記憶関連グラフ
└── meta.json # メタデータ(統計、設定)
使用例
シナリオ 1: ユーザー好みの学習
ユーザー: "これからは返答はもっと簡潔にしてよ、長ったらしいのは嫌"
エージェント内部操作:
1. remember --type preference --content "ユーザーは簡潔な返答を好む" --importance 0.9
2. その後の返答は自動的にスタイルを調整
シナリオ 2: エラーから学習
操作失敗: "Feishu API 429 レート制限"
エージェント内部操作:
1. remember --type error --content "Feishu API の頻繁な呼び出しは 429 を引き起こす"
2. remember --type skill --content "Feishu API は分割リクエストが必要、5秒間隔"
3. link error_mem skill_mem --relation "解決方案"
シナリオ 3: 自動集約
反思で発見:
- 記憶 1: "GitHub プッシュタイムアウト"
- 記憶 2: "GitHub クローンタイムアウト"
- 記憶 3: "GitHub フェッチタイムアウト"
パターンに集約:
"GitHub へのネットワークアクセスが不安定で、リトライメカニズムが必要"
設定
{
"decay_days": 7,
"decay_rate": 0.1,
"forget_threshold": 0.2,
"reflect_trigger": 20,
"max_short_term": 100,
"max_long_term": 500
}
他の記憶システムとの比較
| 機能 | memu | self-improving | DNA Memory |
|---|---|---|---|
| 保存 | ✅ | ✅ | ✅ |
| 検索 | ✅ ベクトル | ❌ | ✅ ベクトル+関連付け |
| 分類 | ❌ | ✅ | ✅ 6 タイプ |
| 忘却 | ❌ | ❌ | ✅ 主動的忘却 |
| 集約 | ❌ | ❌ | ✅ 自動集約 |
| 反思 | ❌ | ❌ | ✅ 反思ループ |
| 関連付け | ❌ | ❌ | ✅ 知識グラフ |
| 強化 | ❌ | ❌ | ✅ 動的重み付け |
AI酋長 Andy により作成 | エージェントが真に成長して学ぶために
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- AIPMAndy
- リポジトリ
- AIPMAndy/dna-memory
- ライセンス
- Apache-2.0
- 最終更新
- 2026/5/2
Source: https://github.com/AIPMAndy/dna-memory / ライセンス: Apache-2.0