manage-memory
について
このスキルは、開発者がClaude Codeの永続的メモリファイルを管理するのに役立ちます。MEMORY.mdや関連するトピックファイル内のエントリを整理、抽出、整理、検証することで、特に200行の切り詰め制限に近づいた場合、価値ある知見を生成した後、またはプロジェクトの変更によりエントリが陳腐化した場合に有用です。主な機能には、簡潔な索引の作成、古くなったコンテンツの検出、効率的なメモリ維持のための詳細なトピックの別ファイルへの抽出が含まれます。
クイックインストール
Claude Code
推奨npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/manage-memoryこのコマンドをClaude Codeにコピー&ペーストしてスキルをインストールします
ドキュメント
管理记忆
维护 Claude Code 的持久化记忆目录,使其跨会话保持准确、简洁和有效。MEMORY.md 在每次对话时加载到系统提示中——200 行之后的内容会被截断,因此该文件必须是指向专题文件获取详情的精简索引。
适用场景
- MEMORY.md 接近 200 行截断阈值
- 一次会话产生了值得保存的持久洞察(新模式、架构决策、调试解决方案)
- MEMORY.md 中某主题章节超过 10-15 行,应予以提取
- 项目状态变更(文件重命名、新增领域、更新数量),记忆条目可能过期
- 开始新工作领域时,检查是否已存在相关记忆
- 会话间的定期维护,保持记忆目录健康
输入
- 必需:访问记忆目录(通常为
~/.claude/projects/<project-path>/memory/) - 可选:具体触发原因(例如"MEMORY.md 太长"、"刚完成重大重构")
- 可选:需要添加、更新或提取的主题
步骤
第 1 步:评估当前状态
读取 MEMORY.md 并列出记忆目录中的所有文件:
wc -l <memory-dir>/MEMORY.md
ls -la <memory-dir>/
对照 200 行限制检查行数。盘点现有专题文件。
预期结果: 清楚了解总行数、专题文件数量以及 MEMORY.md 中存在哪些章节。
失败处理: 若记忆目录不存在,创建它。若 MEMORY.md 不存在,创建一个最简版本,包含 # Project Memory 标题和 ## Topic Files 章节。
第 2 步:识别过期条目
将记忆声明与当前项目状态进行对比。常见的过期模式:
- 数量偏移:添加或删除后发生变化的文件数量、技能数量、领域数量
- 路径变更:已移动、重命名或删除的文件或目录
- 已过时的模式:修复后不再需要的临时方案
- 矛盾条目:关于同一主题说法不一的两个条目
使用 Grep 快速核查关键声明:
# 示例:验证技能数量声明
grep -c "^ - id:" skills/_registry.yml
# 示例:验证文件是否仍然存在
ls path/claimed/in/memory.md
预期结果: 列出过期条目及其正确的当前值。
失败处理: 若无法验证某条声明(例如引用了无法检查的外部状态),保留该条目但添加 (unverified) 注释,而非静默保留可能错误的信息。
第 3 步:决定添加内容
对于新条目,写入前应用以下筛选标准:
- 持久性:下次会话时这还是真的吗?避免会话专属上下文(当前任务、进行中的工作、临时状态)。
- 非重复:CLAUDE.md 或项目文档中是否已涵盖此内容?不要重复——记忆用于记录其他地方未捕获的内容。
- 已验证:这是经过多次交互确认的,还是单次观察?单次观察应先与项目文档核实再写入。
- 可操作:了解这一点会改变行为方式吗?"天空是蓝色的"没什么用,"退出码 5 表示引号错误——使用临时文件"则改变了工作方式。
例外情况:若用户明确要求记住某事,立即保存——无需等待多次确认。
预期结果: 筛选后值得添加的条目列表,每条都满足持久性+非重复+已验证+可操作标准。
失败处理: 若不确定某条目是否值得保留,倾向于简短地保留在 MEMORY.md 中——日后修剪比重新发现容易。
第 4 步:提取过大的主题
当 MEMORY.md 中某章节超过约 10-15 行时,将其提取到专用专题文件:
- 创建
<memory-dir>/<topic-name>.md,包含描述性标题 - 将 MEMORY.md 中的详细内容移至专题文件
- 在 MEMORY.md 中用 1-2 行摘要和链接替换该章节:
## Topic Files
- [topic-name.md](topic-name.md) — Brief description of contents
专题文件命名规范:
- 使用小写连字符格式:
viz-architecture.md,而非VizArchitecture.md - 按主题命名,而非按时间:
patterns.md,而非session-2024-12.md - 归并相关条目:将"R 调试"和"WSL 特殊情况"合并到
patterns.md,而非每个事实创建一个文件
预期结果: MEMORY.md 保持在 200 行以内。每个专题文件可独立阅读,无需 MEMORY.md 上下文。
失败处理: 若专题文件内容不足 5 行,可能不值得提取——保留在 MEMORY.md 内联即可。
第 5 步:更新 MEMORY.md
应用所有更改:删除过期条目、添加新条目、更新数量,并确保"专题文件"章节列出所有专用文件。
MEMORY.md 结构应遵循以下模式:
# Project Memory
## Section 1 — High-level context
- Bullet points, concise
## Section 2 — Another topic
- Key facts only
## Topic Files
- [file.md](file.md) — What it covers
指南:
- 每条要点最多 1-2 行
- 使用内联格式(
code、粗体)提高可扫描性 - 最常需要的上下文放在前面
- 专题文件章节始终放在最后
预期结果: MEMORY.md 在 200 行以内,内容准确,所有专题文件的链接有效。
失败处理: 若提取后仍超过 200 行,找出使用频率最低的章节并提取。每个章节都是候选——即使是项目结构概述也可以提取到专题文件,仅留 1 行摘要。
第 6 步:验证完整性
进行最终检查:
- 行数:确认 MEMORY.md 在 200 行以内
- 链接:验证 MEMORY.md 中引用的每个专题文件均存在
- 孤立文件:检查未在 MEMORY.md 中引用的专题文件
- 准确性:对 2-3 个事实性声明与项目状态进行抽查
wc -l <memory-dir>/MEMORY.md
# 检查失效链接
for f in $(grep -oP '\[.*?\]\(\K[^)]+' <memory-dir>/MEMORY.md); do
ls <memory-dir>/$f 2>/dev/null || echo "BROKEN: $f"
done
# 检查孤立文件
ls <memory-dir>/*.md | grep -v MEMORY.md
预期结果: 行数在 200 以内,无失效链接,无孤立文件,抽查的声明准确无误。
失败处理: 修复失效链接(更新或删除)。对于孤立文件,要么在 MEMORY.md 中添加引用,要么删除不再相关的文件。
验证清单
- MEMORY.md 在 200 行以内
- MEMORY.md 中引用的所有专题文件在磁盘上存在
- 记忆目录中无孤立
.md文件(每个文件都从 MEMORY.md 链接) - 任何记忆文件中无过期的数量或重命名路径
- 新条目满足持久性/非重复/已验证/可操作标准
- 专题文件有描述性标题且可独立阅读
- MEMORY.md 读起来是有用的快速参考,而非变更日志
常见问题
- 记忆文件污染:将每次会话观察都写入记忆。大多数发现是会话专属的,无需持久化。写入前应用第 3 步的四个筛选标准。
- 数量过期:更新代码但未更新记忆。数量(技能、智能体、领域、文件)会悄悄偏移。在信任记忆之前,始终对照事实来源验证数量。
- 按时间组织:按"学到它的时间"而非"它涉及的内容"组织。基于主题的组织(
patterns.md、viz-architecture.md)比基于日期的文件更有利于检索。 - 重复 CLAUDE.md 内容:CLAUDE.md 是权威项目指令文件。记忆应捕获 CLAUDE.md 中没有的内容——调试洞察、架构决策、工作流偏好、跨项目模式。
- 过度提取:为每个 3 行章节创建专题文件。仅在章节超过约 10-15 行时才提取。小章节保留内联完全没问题。
- 忘记 200 行限制:MEMORY.md 在每次系统提示中加载。200 行之后的内容会被静默截断。若文件增长超过这个限制,底部内容实际上是不可见的。
相关技能
write-claude-md— CLAUDE.md 捕获项目指令;记忆捕获跨会话学习prune-agent-memory— manage-memory 的逆操作:审计、分类和选择性遗忘存储的记忆write-continue-here— 为会话交接编写结构化续接文件;作为短期上下文桥梁补充记忆read-continue-here— 在会话开始时读取并执行续接文件;交接的消费端create-skill— 新技能可能产生值得记忆的模式heal— 自我修复可能作为整合步骤的一部分更新记忆meditate— 冥想会话可能浮现值得持久化的洞察
GitHub リポジトリ
関連スキル
qmd
開発qmdは、BM25、ベクトル埋め込み、およびリランキングを組み合わせたハイブリッド検索を用いて、ローカルファイルのインデックス作成と検索を可能にするローカル検索・インデックス作成CLIツールです。コマンドラインでの使用と、Claudeとの統合のためのMCP(Model Context Protocol)モードの両方をサポートしています。このツールは埋め込みにOllamaを使用し、インデックスをローカルに保存するため、ターミナルから直接ドキュメントやコードベースを検索するのに最適です。
subagent-driven-development
開発このスキルは、各独立したタスクに対して新規のサブエージェントを起動し、タスク間でコードレビューを実施しながら実装計画を実行します。レビュープロセスを通じて品質基準を維持しつつ、迅速な反復を可能にします。同一セッション内で主に独立したタスクに取り組む際に本スキルをご利用いただくことで、組み込まれた品質チェックを伴う継続的な進捗を確保できます。
mcporter
開発mcporterスキルは、開発者がClaudeから直接Model Context Protocol(MCP)サーバーを管理および呼び出せるようにします。このスキルは、利用可能なサーバーの一覧表示、引数を指定したツールの呼び出し、認証およびデーモンのライフサイクル管理を行うコマンドを提供します。開発ワークフローにおいてMCPサーバーの機能を統合およびテストする際に、このスキルをご利用ください。
adk-deployment-specialist
開発このスキルは、A2Aプロトコルを使用してVertex AI ADKエージェントをデプロイおよびオーケストレーションし、AgentCardの発見、タスク送信、およびコード実行サンドボックスやメモリバンクなどのサポートツールを管理します。Python、Java、またはGoで、順次、並列、またはループのオーケストレーションパターンを用いたマルチエージェントシステムの構築を可能にします。Google Cloud上でADKエージェントのデプロイやエージェントワークフローのオーケストレーションを求められた際にご利用ください。
