WorkBuddy 已删除任务本地痕迹清理
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_9e42ec7a/workbuddy-cleanup-traces。
技能介绍
问题
WorkBuddy 在 UI 中删除任务或会话通常是软删除:workbuddy.db 里 sessions.deleted_at 被置位,列表不再显示,但本机仍会留下实际占用磁盘的文件:~/WorkBuddy/<session>/ 工作空间、~/.workbuddy/projects/<path>/ 对话记录、~/.workbuddy/sessions/<id>.json 运行时文件、~/.workbuddy/traces/<id>/ 跟踪目录,以及 ~/.workbuddy/artifact-index/<id>.json 产物索引。手动清理容易漏项,也容易误删仍被现存会话使用的工作空间。
工作方式
本技能把清理流程做成一个 dry-run 优先 的 Python 脚本。它先按会话 ID 匹配已删除会话,并列出每类残留是否可清理;若某个工作空间同时被现存会话引用,会 跳过该文件夹与 projects 记录,只清理按会话 ID 隔离的文件。用户确认后,脚本才执行 --apply,把目标移动到 _cleanup_trash/ 备份目录,而不是执行 rm -rf。
关键约束包括:
- 不修改
workbuddy.db,也不改动app/sessions.json - 保护空间可长期写入
protected_workspaces.json - 脚本只依赖 Python 标准库,可重复运行
- 已移入备份的目标再次运行时会被跳过,避免重复移动
适用边界
它适合清理 WorkBuddy 删除后留下的 本地文件痕迹,不适用于数据库级删除或官方缺失的原生回收开关。如果用户希望「删除任务时同时删除工作空间」,应作为产品需求反馈给官方。使用时应先预览、再确认、再备份移动,避免在数据库锁定、文件占用或 Windows 路径转换异常时盲目执行。
使用场景
- 删除 WorkBuddy 任务后,找出并移走仍占磁盘的工作空间、projects、sessions、traces 与 artifact 索引。
- 清理会话前,先预览哪些已删痕迹可移动、哪些共用工作空间因现存会话引用而跳过。
- 维护本地目录时,把已删 WorkBuddy 会话的散落文件统一移入 _cleanup_trash,便于恢复或清空。
- 排查残留时,按 session ID 精确匹配 traces、artifact-index 与 sessions,避免误动同名路径。
适合人员
- 使用 WorkBuddy 管理会话、删除任务后仍想手动回收本地工作空间占用的工程团队
- 维护 ~/.workbuddy 目录、需要避免误删共用工作空间的本地环境管理员
- 刚清理 WorkBuddy 会话、需要可恢复备份和预览确认流程的非技术产品使用者
- 排查 traces、artifact-index、sessions 残留文件,并按 session ID 精确匹配路径的脚本维护者