工作台资源管家
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_11d2869f/workspace-self-cleanup。
技能介绍
问题:Agent 工作区会被自己写满
长期运行的自主 Agent 会在工作区里不断留下痕迹:Python 解释器生成的 __pycache__/ 和 *.pyc、测试缓存、日志文件、构建目录 build/、dist/、node_modules/,以及每次运行写出的 run_*.json 记录。这些产物刚生成时体积很小,但 agent 连续跑几周后,磁盘占用会以肉眼可见的速度增长,最终把系统盘吃满——社区里常把这叫 "code 烧穿硬盘"。
麻烦的地方在于:清理动作本身风险很高。工作区里同时躺着用户的工作文档、MEMORY.md、IDENTITY.md 这类身份与记忆文件、mcp.json 和 llm_keys.env 等凭据配置。一次粗心的 rm -rf 就可能删掉不可恢复的东西。
工作方式:窄口径 + 三重保险
这个技能只针对 Agent 自生成产物,不做通用文件去重,也不碰个人文件。核心流程分三层:
1. 只读巡检(默认模式)
不带任何参数运行,技能会扫描工作区,输出一份 Markdown 报告:每个类别的命中数量、总占用、样例路径,以及根盘剩余空间。当剩余空间低于 --warn-gb(默认 20GB)时,报告会给出烧穿预警。这一步不删除任何东西,适合接进定时任务做每周巡检。
2. 按风险分级处理
命中项被分成三类,处理策略完全不同:
- SAFE:
__pycache__/、.pytest_cache/、*.pyc、*.pyo等纯可再生文件。需要--approve-safe才会清理,且先shutil.move到回收站目录再删,误清可找回。 - CAUTION:
*.log、build/、dist/、node_modules/、运行记录 JSON。这类文件可能含有排查问题所需的信息,默认只报告,必须用户显式给出--approve-caution才动手。 - BLOCK:永远跳过。
3. 禁区硬拦截
技能维护一份禁区名单,命中即中止当前路径的处理。个人目录(Desktop、Documents、Downloads、Pictures、Music、Videos)和 ~/.workbuddy 整个根目录都在名单内。关键文件如 MEMORY.md、SOUL.md、USER.md、mcp.json、llm_keys.env 同样被硬拦截。禁区通过 os.path.expanduser("~") 动态解析,不写死用户名或盘符,换机器换账号都生效。
清理本身也做了防护:不使用 rm -rf,单批移动不超过 10 项,批次结束后核对结果,失败即停。回收站目录 .self-cleanup-trash 放在扫描根的同级,因此不会被重复扫描,且已列入禁区名单,避免清理工具自己变成新的垃圾源;超过 30 天的备份在每次运行时自动清除。
适用边界
这个技能的口径刻意做得窄。它不负责个人文件去重、重复照片清理或大文件定位——这类需求应该交给通用磁盘清理工具。两者互补,不重叠。
另外要注意:CAUTION 类的判定基于文件名和目录名的模式匹配,不是内容分析。如果你的日志目录里存放了需要长期归档的运行数据,建议把它移出扫描根,或直接加入禁区名单。默认的每周自动化只做 scan-only,删除动作始终需要人工确认。
使用场景
- 长期运行自主Agent的开发者,发现工作区磁盘空间持续下降,需要定期生成只读巡检报告查看哪些缓存和日志占用空间
- 开发环境中积累了大量__pycache__和.pyc文件导致磁盘告急,需要在确认安全后清理这些纯可再生缓存
- 自主Agent持续运行数周,构建目录和运行记录大量堆积,需要在人工确认后清理CAUTION类产物释放空间
- 需要在不触碰个人文件和关键配置的前提下,安全清理Agent自生成的工作区垃圾文件
适合人员
- 长期部署自主Agent的开发者,需要防止工作区因缓存和日志堆积而耗尽磁盘
- 维护多个AI Agent运行环境的工程师,需要在不误删个人文件的前提下自动化清理Agent产物
- 使用Agent进行持续构建和测试的技术团队,需要在构建产物积累影响部署前安全释放空间