关于 agent-memory
agent-memory 是一项 Claude skill,用于跨对话保存有用的项目知识。它将笔记整理为可搜索的 Markdown 文件,并通过摘要和状态元数据帮助 Agent 恢复相关工作。
主要功能
- 01持久化 Markdown 记忆文件
- 02按类别组织文件夹
- 03优先依据摘要搜索
- 04使用元数据记录日期和状态
- 05提供更新与合并笔记的指引
适用场景
- 01保存研究发现和代码库注意事项
- 02在对话中断后恢复工作
- 03调查熟悉领域前查找相关笔记
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ s-hiraoku/ synapse-a2a --skill agent-memory安装后在 Claude Code 中输入/agent-memory确认已加载。
附带文件.gitignore
详细介绍
Agent 记忆
用于存储知识的持久记忆空间,可跨对话保留。
位置: .claude/skills/agent-memory/memories/
主动使用
发现值得保留的信息时保存记忆:
- 需要花费精力才能发现的研究结果
- 代码库中不明显的模式或注意事项
- 棘手问题的解决方案
- 架构决策及其理由
- 之后可能会继续处理的进行中工作
开始相关工作时查看记忆:
- 调查某个问题领域之前
- 处理之前接触过的功能时
- 对话中断后恢复工作时
必要时整理记忆:
- 整合同一主题下零散的记忆
- 删除过时或已被取代的信息
- 工作完成、受阻或放弃时更新状态字段
文件夹结构
尽可能将记忆整理到分类文件夹中。没有预定义结构,可根据内容创建合适的分类。
指南:
- 文件夹和文件名使用 kebab-case
- 随着知识库的发展进行整合或重组
示例:
memories/
├── file-processing/
│ └── large-file-memory-issue.md
├── dependencies/
│ └── iconv-esm-problem.md
└── project-context/
└── december-2025-work.md
这只是一个示例。可根据实际内容自由组织结构。
Frontmatter
所有记忆都必须包含带有 summary 字段的 frontmatter。摘要应足够简洁,让人能够判断是否需要阅读完整内容。
必需:
---
summary: "1-2 line description of what this memory contains"
created: 2025-01-15 # YYYY-MM-DD format
---
可选:
---
summary: "Worker thread memory leak during large file processing - cause and solution"
created: 2025-01-15
updated: 2025-01-20
status: in-progress # in-progress | resolved | blocked | abandoned
tags: [performance, worker, memory-leak]
related: [src/core/file/fileProcessor.ts]
---
搜索工作流
优先查看摘要,以高效查找相关记忆:
# 1. List categories
ls .claude/skills/agent-memory/memories/
# 2. View all summaries
rg "^summary:" .claude/skills/agent-memory/memories/ --no-ignore --hidden
# 3. Search summaries for keyword
rg "^summary:.*keyword" .claude/skills/agent-memory/memories/ --no-ignore --hidden -i
# 4. Search by tag
rg "^tags:.*keyword" .claude/skills/agent-memory/memories/ --no-ignore --hidden -i
# 5. Full-text search (when summary search isn't enough)
rg "keyword" .claude/skills/agent-memory/memories/ --no-ignore --hidden -i
# 6. Read specific memory file if relevant
注意: 记忆文件已被 gitignore 忽略,因此使用 ripgrep 时需添加 --no-ignore 和 --hidden 标志。
操作
保存
- 为内容确定合适的分类
- 检查是否有适用的现有分类,或创建新分类
- 使用必需的 frontmatter 编写文件(使用
date +%Y-%m-%d获取当前日期)
mkdir -p .claude/skills/agent-memory/memories/category-name/
# Note: Check if file exists before writing to avoid accidental overwrites
cat > .claude/skills/agent-memory/memories/category-name/filename.md << 'EOF'
---
summary: "Brief description of this memory"
created: 2025-01-15
---
# Title
Content here...
EOF
维护
- 更新: 信息变更时,更新内容并在 frontmatter 中添加
updated字段 - 删除: 移除不再相关的记忆
trash .claude/skills/agent-memory/memories/category-name/filename.md # Remove empty category folders rmdir .claude/skills/agent-memory/memories/category-name/ 2>/dev/null || true - 整合: 相关记忆增多时将其合并
- 重组: 随着知识库的发展,将记忆移至更合适的分类
指南
- 编写内容完整的笔记: 补充完整背景,使读者无需先前知识也能理解并采取行动
- 让摘要明确: 阅读摘要即可判断是否需要查看详细内容
- 保持信息最新: 更新或删除过时信息
- 注重实用: 保存真正有用的信息,而非事无巨细地记录
内容参考
编写详细记忆时,可考虑包含:
- 背景: 目标、背景信息、限制条件
- 状态: 已完成、进行中或受阻的事项
- 详情: 关键文件、命令、代码片段
- 后续步骤: 接下来要做什么、待解决的问题
并非每条记忆都需要包含所有章节,可按需取用。
评论
支持 Markdown