用途与定位 slack-memory-cleanup 是面向 AI 员工的记忆清理与整理技能,目标是解决记忆目录随时间积累的重复、误分类和过期信息问题。它主要针对通过 slack-memory-store 技能保存的记忆文件,并与其保持一致:文件夹结构、元数据 schema 和 type 字段相同,也遵循资料文件与主题文件的区分原则。
核心原则
- 不设硬编码的保留期限,由 LLM 基于上下文判断。
- 资料文件(users/、channels/)遵循“1 entity = 1 file”。
- 不确定时优先保留而非删除。
主要能力
- 重复检测与合并:识别同一用户或同一实体的多个文件,区分哪份是资料、哪份是任务记录,并按去重规则合并。
- 误分类检测与移动:检查文件所在文件夹与内容、type 元数据是否一致,给出建议目标文件夹和判定理由。
- 过期内容清理:识别中间结果、旧日常对话、时效性已过的新闻或公告等可清理内容。
- 索引更新:整理后刷新 index.md。
使用方式 脚本清理流程:
1. 仅分析(dry-run,不做变更)
python scripts/cleanup_memory.py {memories_path}
2. 查看结果后执行实际整理
python scripts/cleanup_memory.py {memories_path} --execute
3. 整理后更新索引
python scripts/update_index.py {memories_path}
可用的分析选项包括 --folder users、--folder channels 限定范围,--verbose 输出详细调试信息。输出会按重复文件、误分类文件、汇总等分组展示,并说明误分类原因。
整理工作流
- 先查看目录结构和各文件夹文件数量。
- 检测重复、误分类和易过期信息。
- 按规则执行合并、移动或删除。
- 最后运行 update_index.py 更新索引。
各文件夹整理要点
- users/:同一 email 或 user_id 视为同一人,仅保留一份资料文件,其余按内容移至 tasks/ 等位置。
- channels/:以 channel_id 开头且内容为频道资料的文件保留;任务结果、成功案例等移至 tasks/。
- tasks/:同一任务的中间结果只保留最终版本;同日相似标题保留最完整的一份。
- projects/ 可将已完成项目移至 archive/;decisions/ 长期保留;meetings/ 旧文件可摘要后删除;misc/ 优先清理旧文件;external/news/ 和 announcements/ 的过时内容可删除。
安全限制与注意事项
- 删除重要文件前需向用户确认,decisions/ 和 projects/ 尤其谨慎。
- 不确定时移动而非删除。
- 大批量整理前建议备份,例如:cp -r {memories_path} {memories_path}backup{date}。
- 记录删除文件清单和移动文件的原位置,便于回滚。
适用场景 适用于需要长期维护 AI 员工记忆目录、消除同一实体多份文件、纠正文件夹与内容不一致、清理过期信息的场景。资料未提供具体性能指标、平台限制或收费信息,暂未提供。