永続エージェント向けメモリアーキテクチャパターン
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install agent-memory-patterns或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install agent-memory-patterns⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/agent-memory-patterns/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: agent-memory-patterns version: 1.0.0 description: 永続エージェント向けメモリアーキテクチャパターン ---
永続AIエージェントのための効率的なメモリ管理システム。日次ファイル、長期記憶、検索最適化、外部コンテンツ段階的処理の実装ガイドです。
workspace/
├── MEMORY.md # 長期記憶(手動キュレーション)
├── memory/
│ ├── YYYY-MM-DD.md # 日次ログ
│ ├── pending-memories.md # 外部コンテンツ段階処理
│ ├── heartbeat-state.json # ハートビート状態
│ └── queued-messages.json # メッセージキュー
└── skills/
└── memory-tools/ # メモリ管理ツール群
#!/bin/bash
# daily-memory-init.sh
create_daily_memory() {
local date="$(date -I)"
local memory_dir="/home/bot/.openclaw/workspace/memory"
local daily_file="$memory_dir/$date.md"
mkdir -p "$memory_dir"
if [[ ! -f "$daily_file" ]]; then
cat > "$daily_file" << EOF
# Daily Memory: $date
## セッション開始
$(date): メモリシステム初期化
## 主要な出来事
## 学習したこと
## 次回への引き継ぎ
## 外部リンク・参考資料
EOF
echo "日次メモリファイル作成: $daily_file"
fi
}
create_daily_memory
#!/bin/bash
# memory-logger.sh
log_memory() {
local event_type="$1"
local description="$2"
local importance="${3:-normal}"
local date="$(date -I)"
local time="$(date '+%H:%M')"
local memory_file="/home/bot/.openclaw/workspace/memory/$date.md"
# ファイル存在確認・作成
if [[ ! -f "$memory_file" ]]; then
create_daily_memory
fi
# 重要度マーカー
local marker=""
case "$importance" in
"high") marker="🔴 " ;;
"medium") marker="🟡 " ;;
"low") marker="⚪ " ;;
*) marker="📝 " ;;
esac
# ログエントリ追加
echo "" >> "$memory_file"
echo "### $time - $event_type" >> "$memory_file"
echo "$marker$description" >> "$memory_file"
echo "メモリログ追加: $event_type [$importance]"
}
# 使用例
log_memory "ユーザーとの対話" "新しいプロジェクト要件を確認" "high"
log_memory "システム更新" "スキル パッケージを5個作成" "medium"
#!/bin/bash
# memory-curation.sh
curate_weekly_memories() {
local workspace="/home/bot/.openclaw/workspace"
local memory_file="$workspace/MEMORY.md"
local week_start="$(date -d '7 days ago' -I)"
local today="$(date -I)"
echo "## 週次メモリキュレーション ($week_start to $today)" >> "$memory_file"
# 過去7日間の重要な出来事を抽出
for i in {0..6}; do
local check_date="$(date -d "$i days ago" -I)"
local daily_file="$workspace/memory/$check_date.md"
if [[ -f "$daily_file" ]]; then
# 高重要度の出来事を抽出
grep -E "🔴|高重要|重要な" "$daily_file" >> /tmp/important-events.txt
fi
done
# 重要な出来事をMEMORY.mdに統合
if [[ -s /tmp/important-events.txt ]]; then
echo "### 重要な出来事" >> "$memory_file"
cat /tmp/important-events.txt >> "$memory_file"
echo "" >> "$memory_file"
fi
# 学習したパターンを記録
echo "### 学習したパターン" >> "$memory_file"
grep -h "学習" "$workspace/memory"/*.md | tail -10 >> "$memory_file"
# クリーンアップ
rm -f /tmp/important-events.txt
echo "週次キュレーション完了"
}
#!/bin/bash
# memory-search.sh
smart_memory_search() {
local query="$1"
local context_lines="${2:-3}"
local workspace="/home/bot/.openclaw/workspace"
echo "=== メモリ検索結果: '$query' ==="
# MEMORY.md検索(長期記憶)
echo "## 長期記憶 (MEMORY.md)"
if [[ -f "$workspace/MEMORY.md" ]]; then
grep -n -i -C "$context_lines" "$query" "$workspace/MEMORY.md" | head -20
fi
echo ""
echo "## 最近の記憶 (過去7日)"
# 過去7日間の日次ファイルを検索
for i in {0..6}; do
local check_date="$(date -d "$i days ago" -I)"
local daily_file="$workspace/memory/$check_date.md"
if [[ -f "$daily_file" ]]; then
local matches="$(grep -l -i "$query" "$daily_file" 2>/dev/null)"
if [[ -n "$matches" ]]; then
echo "### $check_date"
grep -n -i -C 2 "$query" "$daily_file" | head -10
echo ""
fi
fi
done
# 関連キーワード提案
echo "## 関連キーワード候補"
grep -h -i "$query" "$workspace/MEMORY.md" "$workspace/memory"/*.md 2>/dev/null \
| tr ' ' '\n' | grep -v '^$' | sort | uniq -c | sort -nr | head -5
}
# キーワード展開検索
contextual_search() {
local keywords=("$@")
local workspace="/home/bot/.openclaw/workspace"
echo "=== コンテクスト検索: ${keywords[*]} ==="
# ORパターン構築
local pattern="$(IFS='|'; echo "${keywords[*]}")"
# 全メモリファイルから関連度スコア付きで検索
find "$workspace/memory" -name "*.md" -exec grep -l -i -E "$pattern" {} \; \
| while read file; do
local score="$(grep -c -i -E "$pattern" "$file")"
echo "$score:$file"
done \
| sort -nr | head -5 | while IFS=':' read score file; do
echo "関連度 $score: $(basename "$file")"
grep -n -i -E "$pattern" "$file" | head -3
echo ""
done
}
# 使用例
smart_memory_search "プロジェクト"
contextual_search "Hugo" "ブログ" "設定"
#!/bin/bash
# external-content-queue.sh
queue_external_memory() {
local source="$1"
local content="$2"
local reason="$3"
local workspace="/home/bot/.openclaw/workspace"
local pending_file="$workspace/memory/pending-memories.md"
# pending-memories.md初期化
if [[ ! -f "$pending_file" ]]; then
cat > "$pending_file" << 'EOF'
# Pending Memories - 外部コンテンツ段階処理
## 処理待ち項目
<!-- 外部ソースからの情報は以下に段階的に記録 -->
EOF
fi
# エントリ追加
cat >> "$pending_file" << EOF
### $(date -I) $(date '+%H:%M') - $source
**理由**: $reason
**ソース**: $source
**ステータス**: pending
\`\`\`
$content
\`\`\`
**検証項目**:
- [ ] 信頼性確認
- [ ] 既存記憶との整合性
- [ ] 価値評価
- [ ] 分類決定
EOF
echo "外部コンテンツ段階処理キューに追加: $source"
}
# 段階処理レビュー
review_pending_memories() {
local workspace="/home/bot/.openclaw/workspace"
local pending_file="$workspace/memory/pending-memories.md"
if [[ ! -f "$pending_file" ]]; then
echo "段階処理キューは空です"
return
fi
echo "=== 段階処理キューレビュー ==="
# pending項目数をカウント
local pending_count="$(grep -c "ステータス.*pending" "$pending_file")"
echo "処理待ち項目数: $pending_count"
# 古い項目(7日以上)を特定
local week_ago="$(date -d '7 days ago' -I)"
grep -B 5 -A 10 "$week_ago" "$pending_file" | head -20
echo ""
echo "古い項目がある場合は手動レビューを実行してください"
}
# memory-maintenance-cron.txt
# メモリシステム定期保守
# 毎日午前1時: 日次ファイル初期化
0 1 * * * /home/bot/.openclaw/workspace/skills/memory-tools/daily-memory-init.sh
# 毎週日曜午前2時: 週次キュレーション
0 2 * * 0 /home/bot/.openclaw/workspace/skills/memory-tools/curate-weekly-memories.sh
# 毎月1日午前3時: 月次アーカイブ
0 3 1 * * /home/bot/.openclaw/workspace/skills/memory-tools/monthly-archive.sh
# 毎日午前6時: 段階処理レビュー
0 6 * * * /home/bot/.openclaw/workspace/skills/memory-tools/review-pending-memories.sh
#!/bin/bash
# monthly-archive.sh
monthly_archive() {
local workspace="/home/bot/.openclaw/workspace"
local archive_dir="$workspace/memory/archive"
local current_month="$(date '+%Y-%m')"
local last_month="$(date -d 'last month' '+%Y-%m')"
mkdir -p "$archive_dir"
echo "月次アーカイブ開始: $last_month"
# 前月のファイルをアーカイブ
find "$workspace/memory" -name "$last_month-*.md" -exec mv {} "$archive_dir/" \;
# 月次サマリー作成
cat > "$archive_dir/$last_month-summary.md" << EOF
# Monthly Summary: $last_month
## 統計
- 日次ファイル数: $(ls "$archive_dir/$last_month"-*.md 2>/dev/null | wc -l)
- 総イベント数: $(grep -c "###" "$archive_dir/$last_month"-*.md 2>/dev/null || echo 0)
## 主要トピック
$(grep -h "^### " "$archive_dir/$last_month"-*.md 2>/dev/null | sort | uniq -c | sort -nr | head -10)
## アーカイブ日時
$(date)
EOF
echo "月次アーカイブ完了: $archive_dir"
}
...
安装 Agent Memory Patterns 后,可以对 AI 说这些话来触发它
Help me get started with Agent Memory Patterns
Explains what Agent Memory Patterns does, walks through the setup, and runs a quick demo based on your current project
Use Agent Memory Patterns to memory architecture patterns for persistent agents
Invokes Agent Memory Patterns with the right parameters and returns the result directly in the conversation
What can I do with Agent Memory Patterns in my documents & notes workflow?
Lists the top use cases for Agent Memory Patterns, with example commands for each scenario
将技能文件夹放到 ~/.claude/skills/agent-memory-patterns/ 目录(个人级,所有项目可用),或 .claude/skills/agent-memory-patterns/(项目级)。重启 AI 客户端后,用 /agent-memory-patterns 主动调用,或让 AI 根据上下文自动发现并使用。
Agent Memory Patterns 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Agent Memory Patterns 可免费安装使用。请查阅仓库了解许可证信息。
永続エージェント向けメモリアーキテクチャパターン
Agent Memory Patterns 属于「Documents & Notes」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。
Automate my documents & notes tasks using Agent Memory Patterns
Identifies repetitive steps in your workflow and sets up Agent Memory Patterns to handle them automatically