用途
codex-cleanup 面向本地 Codex 环境,用于审计或缩减本地的 Codex 任务历史、日志、缓存的发行版以及运行时内存占用。其核心目标是:在不破坏任务历史、SQLite 状态、已安装发行版或正在运行的任务的前提下,回收可测量的本地存储或内存。该技能为显式调用,不处理云端聊天记录,也不属于通用操作系统清理工具。
主要能力
- 审计:从显式路径、CODEX_HOME,或平台用户主目录的 .codex 目录解析有效的 Codex 主目录并记录。运行只读脚本 scripts/audit_codex_home.py,报告各顶层目录大小、历史年龄、SQLite 空闲页、发行缓存候选以及相关进程树。支持 --json 以保留或比较结果;--quick-check 在客户端已静默且可接受额外数据库扫描时使用。
- 构建经批准的清理计划:按测得可回收字节与响应性收益排序,区分磁盘存储、数据库内部空闲页与常驻内存,不合并为单一误导性总量。可处理任务历史(按年龄、归档状态、项目或用户条件选择根任务 ID 并展开后代),运行时内存(识别所属进程树、活动工作与残留辅助进程),独立发行版(保留当前目标与默认最新可回滚版本,在安装器停止时考虑其他完整发行目录),日志数据库(在空闲页能回收实质空间时建议压缩,并需足够工作空间容纳安全副本与 SQLite 临时重写),以及其他缓存(仅当有文档化的归属与清理语义或用户批准时)。
使用方式
审计与规划为只读。变更仅在用户明确批准且限定范围内进行。永久删除任务须使用受支持的原生任务生命周期能力(例如 app-server thread/delete),并记录可执行文件或连接能力、版本、方法名与发现证据,不得直接移除 rollout 文件或任务行,也不得编造便利 CLI 命令。变更按安全顺序执行:先完成批准的任务删除并重新运行一致性诊断与历史盘点;随后静默所有共享该 Codex 主目录的进程(Desktop、CLI、IDE 扩展、app-server 与辅助会话),验证 PID 已退出;再移除已批准的过时发行目录;然后按工作流执行数据库压缩(离线门禁、恢复副本、逻辑基线、PRAGMA integrity_check、WAL checkpoint、VACUUM、重新打开前检查);最后分阶段重启并用相同选项重跑审计,对比回收字节与进程。若当前运行无法在静默中存活,则输出完整离线交接,不安排无人监控的破坏性作业。
适用场景
适用于需要清理本地 Codex 任务历史、压缩日志数据库、移除过时发行目录或处理残留运行时进程,且希望先审计后变更、保留任务与数据完整性的情况。
限制
仅限显式调用;不涉及云端聊天记录与通用操作系统清理。绝不禁用式删除 .tmp、plugins、worktrees、shell_snapshots、状态数据库、凭据或配置,需先证明每个目标的归属与陈旧性。不得终止当前执行进程或其祖先进程。若目标无法与 Codex 关联或其安全生命周期未知,应停止。未验证删除接口时,只能停留在命名缺失能力的计划阶段。