代码资源清理技能Skill:一键终结孤儿进程、回收 Claude Code 占用的磁盘空间
- 一句话定位:这是一个专为 Claude Code 使用场景设计的“资源管家”技能,一次调用即可同时完成孤儿进程终止与
~/.opencode/目录瘦身。 - 两大动作:识别并终止孤儿 Claude Code 进程;扫描并清理
~/.opencode/中累积的历史文件。 - 三种模式:交互模式(默认,让你选清理年龄阈值)、
--dry-run预览模式、--force强制模式,风险可控。 - 安全兜底:只杀 TTY 为
?的孤儿进程,不碰活动会话;受保护文件(如settings.json、.credentials.json)永不删除;1 小时内修改过的文件一律跳过。 - 典型收益:官方示例中,单次执行回收 6.7 GB 空间、清理 5577 个文件,并把目录从 7.3 GB 降到约 600 MB。
1. 该技能叫什么?如何一键安装 AI 技能提升开发效率?
基本信息
| 项目 | 内容 |
|---|---|
| 技能中文名 | 代码资源清理技能Skill |
| 技能英文名 | skill-refresh |
| 技能ID | 12872 |
| 调用方式 | 作为内联技能直接执行(无需生成子代理) |
| 依赖工具 | Bash、AskUserQuestion |
它解决什么问题
长期使用 Claude Code 的开发者通常会遇到三类“隐性成本”:
- 目录膨胀:
~/.opencode/下的projects/、debug/等目录会持续累积历史文件,示例场景中该目录一度达到 7.3 GB。 - 孤儿进程堆积:会话异常退出后,残留的 Claude Code 进程继续占用 CPU、内存与文件句柄,且不易被肉眼发现。
- 流程残留标记:技能的后飞行(postflight)流程若中途被打断,会在
specs目录留下.postflight-pending、.postflight-loop-guard之类的标记文件,可能干扰后续流程。
代码资源清理技能Skill 把这三件事合并成一条命令,避免你分别去找进程、翻目录、手动 rm。
一键安装的思路与步骤
- 安装前提:已具备 Claude Code / OpenCode 运行环境,并且当前技能具备 Bash 与交互式提问(AskUserQuestion)两项工具权限;技能依赖
.opencode/scripts/下的claude-refresh.sh与claude-cleanup.sh两个脚本,安装后需确认二者存在。 - 获取技能:在技能市场或技能管理入口中搜索技能英文名
skill-refresh或技能ID12872进行安装。具体安装命令、仓库地址与版本信息,以官方说明为准。 - 验证是否生效:安装完成后,以预览模式试运行一次,若能输出“Claude Code 刷新”“Claude Code 目录清理”等调查信息且不做任何改动,即说明技能已正常加载。
- 首次使用建议:先跑预览模式看能回收多少空间,再决定是走交互模式还是直接强制清理。
提示:如果技能报错“在 .opencode/scripts/ 中未找到清理脚本”,说明脚本未正确安装,需要按官方说明补齐
claude-refresh.sh与claude-cleanup.sh。
2. 该技能的主要功能和特点
- 孤儿进程识别与终止:仅针对 TTY 为
?的孤儿 Claude Code 进程下手,明确“从不杀死活动会话”,并排除当前进程树,避免误伤正在干活的终端。 - 目录占用调查:调用清理脚本展示
~/.opencode/当前总大小、按目录细分的占用情况(如projects/、debug/)以及可回收空间,让你在动手前心里有数。 - 三档清理阈值:交互模式下可自选
8小时(默认,积极清理)、2天(保守清理)、彻底清理(仅保留 1 小时安全边际),对应--age 8、--age 48、--age 0。 - 预览模式(
--dry-run):只展示“将删除多少文件、将回收多少空间”,并明确输出“未进行任何更改”,适合在服务器或生产开发机上先做评估。 - 强制模式(
--force):跳过确认环节,直接按 8 小时默认阈值执行,适合写进日常维护流程或定时任务。 - 孤儿后飞行标记清理:自动查找超过 60 分钟的
.postflight-pending与.postflight-loop-guard标记文件并清除,同时兼容specs/根目录下的遗留全局标记。 - 受保护文件白名单:
sessions-index.json、settings.json、.credentials.json、history.jsonl永不删除,杜绝“清理完把自己配置清没了”的事故。 - 内联执行、无需子代理:技能直接在当前上下文运行,没有额外的子代理开销,响应更快。
- 失败可观测:权限不足等异常会以“警告 + 失败文件数 + 成功删除数”的形式回报,而不是静默失败。
和普通做法比强在哪:手动 rm -rf 不知道哪些文件有保护、哪些是最近改动;系统级 kill 分不清孤儿进程与活动会话;而该技能把这些判断规则内置成了固定策略,并且同时覆盖“进程 + 目录 + 流程标记”三层。
3. 如何使用该技能?
第 1 步:调用技能
在 Claude Code 中以斜杠命令调用刷新技能(示例中为 /refresh)。也可以按技能管理入口提示的方式触发,具体入口以官方说明为准。
第 2 步:技能自动解析参数
技能会从命令输入中提取标志:识别到 --dry-run 即进入预览模式,识别到 --force 即进入强制模式,两者都没有则走交互模式。
第 3 步:进程清理
执行进程清理脚本,输出类似:
未找到孤儿进程。
所有3个Claude进程都是活动会话。
若存在孤儿进程,则按规则终止并回报结果。
第 4 步:清理孤儿后飞行标记
技能会查找 specs 目录下超过 1 小时的 .postflight-pending、.postflight-loop-guard;在预览模式下只列出“将删除以下孤儿标记”,在正常模式下直接删除并提示“已清理孤儿后飞行标记”,若无残留则提示“未找到孤儿后飞行标记”。
第 5 步:目录调查
扫描并打印目录占用明细,例如:
目标:~/.opencode/
当前总大小:7.3 GB
目录 总计 可清理 文件数
projects/ 7.0 GB 6.5 GB 980
debug/ 151.0 MB 140.0 MB 650
可回收空间:6.7 GB
第 6 步:按模式执行
- 交互模式(默认):若存在清理候选,技能会弹出“选择清理年龄阈值”选项,你选择后按对应阈值执行;若无候选,则提示“在默认阈值内未找到清理候选”,直接结束。
- 预览模式:运行
/refresh --dry-run,输出“将删除:5577 文件 / 将回收:6.7 GB”,随后给出“干运行总结:未进行任何更改”。 - 强制模式:运行
/refresh --force,按 8 小时阈值立即清理。
第 7 步:查看结果
清理完成后输出“已删除 / 失败 / 回收空间 / 新总大小”,例如“已删除:5577 文件,失败:0 文件,回收空间:6.7 GB,新总大小:600.0 MB”。
4. 同类型竞品对比分析
| 方案名称 | 定位 | 核心功能 | 安装/使用门槛 | 适用场景 | 优势与不足 |
|---|---|---|---|---|---|
| 代码资源清理技能Skill(skill-refresh) | Claude Code 专用资源管家 | 孤儿进程终止 + ~/.opencode/ 目录清理 + 后飞行标记清理,支持预览/强制/交互三模式 |
需安装技能并具备 Bash、AskUserQuestion 权限;一条命令调用 | 日常开发机维护、CI 或远程环境定期清理、流程中断后恢复 | 优势:内置保护名单、安全边际与分级阈值,误删风险低;不足:只面向 Claude Code 生态,通用磁盘清理仍需其他工具 |
手动命令清理(find / rm -rf / kill) |
原生命令行操作 | 自由删除目录、按 PID 杀进程 | 零安装,但需自己判断路径、时间与进程归属 | 一次性、小范围清理 | 优势:完全可控、无需依赖;不足:易误删受保护文件、无法识别孤儿进程、无预览与统计 |
系统进程管理工具(如 top、htop、ps 配合 kill) |
通用进程管理 | 查看进程列表、按 TTY/CPU 筛选、终止进程 | 系统自带,学习成本中等 | 排查异常进程占用 | 优势:通用性强;不足:不涉及目录清理,需人工判断哪些是孤儿会话,容易误杀活动任务 |
| 通用磁盘分析/清理工具 | 系统级空间回收 | 扫描大目录、清理缓存与临时文件 | 通常需单独安装,部分需授权 | 整机磁盘空间告急 | 优势:覆盖面广;不足:不认识 ~/.opencode/ 的结构与保护文件,存在误删配置与凭据的风险 |
5. 该技能的典型应用场景与实际体验情况
场景一:本地开发机磁盘告急的独立开发者
角色:每天长时间运行 Claude Code 的全栈开发者。痛点:~/.opencode/ 体积一周内从几百 MB 涨到数 GB,系统盘飘红。使用方式:先 /refresh --dry-run 确认可回收空间,再用交互模式选“8小时(默认)”。实际体验:上手难度极低,一条命令即可完成,输出以表格形式呈现各子目录占用,可回收空间一目了然。注意事项:确认自己确实不需要更早的历史记录再选择“彻底清理”。
场景二:远程开发机或 CI 环境的例行维护
角色:负责构建环境稳定性的 DevOps 工程师。痛点:流水线中断后残留的孤儿进程长期占资源,没人愿意手动排查。使用方式:把 /refresh --force 纳入定期维护脚本,按 8 小时默认阈值静默清理。实际体验:--force 跳过确认,适合无人值守;技能只对 TTY 为 ? 的进程动手,不会误杀正在跑的任务。注意事项:首次上线前建议先跑一次预览模式,确认策略符合团队预期。
场景三:技能流程中断后的“卡住”排障
角色:频繁使用自动化技能的效率工具用户。痛点:一次会话异常中断后,specs 目录残留 .postflight-pending 标记,后续流程表现异常。使用方式:直接运行技能,交由“清理孤儿后飞行标记”步骤按 60 分钟阈值自动处理。实际体验:这一步是很多用户容易忽略的隐性价值——大多数清理工具只管磁盘,不管流程状态标记。注意事项:1 小时内的标记被视为可能仍在进行的任务,不会被清除,属预期行为。
场景四:团队共享开发机的定期体检
角色:多人共用一台开发机的团队。痛点:谁都不敢删别人目录里的东西,导致空间只增不减。使用方式:由机器管理员统一执行交互模式,选择“2天”保守阈值。实际体验:受保护文件清单与 1 小时安全边际给了团队信心,清理后可以看到“新总大小”的直观变化。注意事项:涉及权限问题时可能出现“部分操作失败”的警告,需以管理员权限复跑。
6. 该技能能为用户带来的价值
- 效率提升:把“查进程 → 判断归属 → 翻目录 → 挑文件 → 删除 → 核对”这一串手动操作压缩为一条命令,官方示例中单次即可清理 5577 个文件、回收 6.7 GB,从发现空间不足到处理完毕通常只需一次交互。
- 门槛降低:不需要记住
find -mmin、不需要分辨 TTY 含义、也不需要背受保护文件名单,技能把专业知识固化成了默认策略,新手也能安全操作。 - 风险可控:预览模式先看后做、三档阈值按需选择、1 小时安全边际与受保护文件白名单多重兜底,把“清理”这件高风险动作变成可预期、可回滚评估的常规维护。
- 长期价值:将资源清理从“出了问题才想起”变成“随时可以刷一下”的轻量习惯,避免磁盘与进程问题累积成难以排查的故障;同时顺带修复被中断的流程标记,减少“莫名其妙的卡住”带来的时间损耗。
7. 常见问题 FAQ
Q1:这个技能怎么安装?装完怎么确认能用?
在技能市场或技能管理入口搜索英文名 skill-refresh 或技能ID 12872 安装,具体安装命令与仓库信息以官方说明为准。安装后确认 .opencode/scripts/ 下存在 claude-refresh.sh 与 claude-cleanup.sh,再以 --dry-run 预览模式试跑一次,能正常输出目录调查结果即为生效。
Q2:清理会误删我的配置或登录凭据吗?
不会。技能内置受保护文件名单,sessions-index.json、settings.json、.credentials.json、history.jsonl 永不删除;同时过去 1 小时内修改过的文件无论阈值如何都会跳过。进程侧也只针对 TTY 为 ? 的孤儿进程,不杀死活动会话。
Q3:这个技能收费吗? 技能本身的定价与授权方式取决于发布方的说明,请以官方说明为准。需要注意的是,它会真实删除本地文件并终止进程,建议首次使用时先走预览模式确认影响范围。
Q4:它适合谁用?不适合谁? 适合长期使用 Claude Code、经常遇到磁盘占用上涨或进程残留的开发者,以及需要维护远程开发机、CI 环境的运维人员。如果你几乎不用 Claude Code,或者主要诉求是整机级别的缓存清理,那么它的针对性优势不明显,建议搭配通用磁盘工具使用。
Q5:三个模式我该选哪个?和竞品怎么选?
想先看效果选 --dry-run;无人值守或定期维护选 --force(8 小时默认阈值);自己拿不准清理力度就选默认交互模式,按 8小时 / 2天 / 彻底清理 三档挑一个。竞品方面:手动命令与系统进程工具胜在通用但不认识 ~/.opencode/ 结构,误删与误杀风险更高;通用磁盘清理工具覆盖面广却不懂该目录的保护规则。若你的核心痛点是 Claude Code 资源累积,优先选本技能;若还涉及整机空间治理,可将两者组合使用。