用途:memory-audit 是一个结构化诊断传感器,用于检查 CC 自动记忆与 agent-studio 两套记忆系统的健康状况,产出带分数、发现(P0/P1/P2)和建议的健康报告。默认只读,只测量和报告,不修改记忆;传入 --auto-fix 时仅安全清理孤立与陈旧文件。
调用与时机:用法为 Skill({ skill: 'memory-audit' });。建议每 10 个会话后、proactive-audit 流水线中、智能体报告记忆相关故障时、会话交接前、路由器怀疑记忆膨胀或陈旧时调用。
主要能力(按步骤):
- CC 自动记忆健康检查:定位 MEMORY.md 目录,统计行数、文件总数、反馈比例;阈值 MEMORY.md 行数 <150 正常、150-199 警告、>=200 严重(被截断);文件总数 <20 / 20-30 / >30;反馈比例 <70% / 70-85% / >85%(偏斜)。并标记目录中存在但未被 MEMORY.md 引用的孤立文件。
- Agent-Studio 记忆健康检查:统计目录大小、文件数,检查 learnings.md、decisions.md、issues.md 行数,delegation PID 文件与 .bak 文件数量。阈值:目录大小 <5MB / 5-10MB / >10MB;文件总数 <120 / 120-200 / >200;learnings.md <300 / 300-500 / >500(会阻止生成);decisions.md <200 / 200-400 / >400;issues.md <300 / 300-500 / >500;PID 文件 0 / 1-10 / >10;.bak 0 / 1-3 / >3。并验证 STM/MTM/LTM 目录存在且有内容。
- JSON 数据存储健康:检查 access-stats.json、codebase_map.json、gotchas.json、patterns.json、open-findings.json 的大小与条目;验证 accessCount 是否全相同(批量计数则无用)、codebase_map 是否接近 500 条上限、gotchas/patterns 是否有哈希重复、open-findings 中状态为 resolved 但超过 30 天的陈旧项。
- 跨系统去重检测:比对 CC 参考文件与 agent-studio JSON 存储,用简单子串匹配(>50 字符重叠视为潜在重复),报告但绝不自动删除。策略为 CC 自动记忆作薄索引/指针,agent-studio 作深度存储,发现重复时建议细节留 agent-studio、CC 加指针。
- 命名记忆评估:统计 named 目录文件数;为 0 时标记为未使用 API;大于 0 时验证可加载性。
- 陈旧检测:查找超过 30 天未修改的 .json(排除 archive 与 ltm),仅报告不删除。
- 生成报告:写入 .claude/context/reports/memory-audit-{YYYY-MM-DD}.md,含健康分、汇总表、P0/P1/P2 发现与建议。评分从 100 起,严重 -15、警告 -5、孤立 -3、重复 -2,下限 0。
--auto-fix 仅清理:超过 24 小时的 delegation PID 文件、.bak 轮转产物、超过 30 天的 metrics 文件、空占位文件(.gitkeep 除外)。不会自动修复:CC 自动记忆文件、learnings/decisions/issues 的裁剪、跨系统去重、命名记忆 API 弃用。
记忆协议:开始前读取 learnings.md 了解既往审计结果;完成后写审计摘要到 learnings.md,并通过 MemoryRecord 记录新 gotchas 到 gotchas.json。
限制与反模式:不得在未经用户确认时自动删除 CC 自动记忆文件;审计期间不得修改 agent-studio 记忆;摘要不得报告原始文件内容,只给计数与大小;不得跳过跨系统去重检查;不得对 CC 自动记忆目录运行 auto-fix。输入输出受 schemas/input.schema.json 与 schemas/output.schema.json 约束。相关技能:context-compressor、memory-search、proactive-audit。