← ClaudeAtlas

repo-refreshlisted

全库更新扫描器。在用户要求"全库更新"、"扫一遍仓库"、"检查文档是否过时"、"repo refresh"、"stale scan"、"audit the repo"、"哪些文档跟代码对不上"、"清理冗余"、"找漂移" 等语境下自动唤起。对整个仓库(md 文档 + 代码一视同仁)做系统式扫描,找出并修复"陈旧、过时、冗余、错误、漂移"五类内容;每条 finding 必须带 file:line 证据。它是 rules/12-repo-wide-sync.md 主动半区的执行入口。
skymanbp/cc-enforcer · ★ 5 · AI & Automation · score 75
Install: claude install-skill skymanbp/cc-enforcer
# repo-refresh — 全库更新扫描 > 你(主代理)已被本 skill 接管。这是 [`rules/12-repo-wide-sync.md`](rules/12-repo-wide-sync.md) > **主动半区**的强制执行入口:对整个仓库做一次"陈旧 / 过时 / 冗余 / 错误 / 漂移" > 五类缺陷的系统式清扫。规则 01(验证)、04(完整阅读)、05(引用)、06(收敛) > 全程适用:**每条 finding 必须有 `file:line` 证据;每次修复必须走收敛验证**。 ## 五类缺陷(扫描目标的定义) | 类别 | 定义 | 典型证据形态 | |---|---|---| | **陈旧 (stale)** | 引用了已不存在的文件 / 符号 / 路径 / 命令;早已完成或废弃却仍挂着的 TODO / FIXME;针对已移除工作流的操作说明 | 引用处 `file:line` + 被引对象不存在的证明(`ls` / Grep 0 命中) | | **过时 (outdated)** | 在某个历史版本为真、在 HEAD 已为假的数量、版本号、日期、行为描述、结构树 | 文档陈述 `file:line` + 当前权威源的相反证据 | | **冗余 (redundant)** | 同一事实在多处重复且无单一源标注;死代码 / 无引用的导出;被新文档取代却未删除的旧文档 | 各重复处 `file:line` + 引用图(谁还在用) | | **错误 (wrong)** | 与当前代码直接矛盾的断言:错误默认值、错误 CLI 标志、错误 `file:line` 引用、错误示例输出 | 断言处 + 权威源两个 `file:line` 对照 | | **漂移 (drift)** | 本应互为镜像的成对物已分叉:文档 ↔ 代码、英文骨架 ↔ 翻译、配置 ↔ 消费方、注释 ↔ 实现 | 成对两侧 `file:line` + diff 要点 | ## 强制流程(按顺序,不允许跳步) ### Step 1 · 建立仓库清单与权威源 1. 枚举全部待扫文件(`git ls-files` 或等价;排除 lockfile / 生成物 / vendored)。 2. 确定**权威源清单**:版本号以哪个文件为准?行为以哪层代码为准?结构树以磁盘为准。 之后所有"过时/错误"判定都以权威源为基准,不做两两互比(一对可以一起漂—— rule 06 验证 2b)。 3. 向用户报告扫描范围(文件数、目录划分);范围有裁剪必须显式说明裁掉了什么。 ### Step 2 · 逐类扫描(五类都要过,不允许只挑好找的) 对每一类:先用 Grep/Glob **定位**候选,再 Read 上下文**确认**(规则 04: 关键词检索只定位、不理解)。最低覆盖动作: - **陈旧**:提取文档/注释中的路径、命令、符号引用 → 逐个对磁盘/代码核对存在性; 枚举所有 TODO / FIXME / "暂时" → 核对是否已完成或已无意义。 - **过时**:提取所有数量词("N 个测试"、"X 条规则")、版本号、日期、结构树 → 与权威源逐个对照。 - **冗余**:对关键事实做全库 Grep,列出重复陈述点 → 判定哪个是源、其余应删或改为 指向源的交叉引用;对代码做无引用符号检查。 - **错误**:抽查文档中的行为断言(默认值 / 标志 / 示例)→ 用 Read/运行验证; 文档里的 `file:lin