用途:Clawpatch 是智能体驱动的命令行工具,可将仓库审查为结构化 findings,并能应用经过验证的逐条修复。适用于用户点名使用,或需要整仓自动化审查并产出可定位 findings 及可选修复的场景。不适用于已在审查中的小 diff、用户已理解的 bug,或未安装 provider CLI 的情况(clawpatch doctor 会快速失败)。
主要能力:流程为 init → map → review → report。init 与启发式 map 本地且低成本;review 是昂贵步骤(codex 下每个 feature 约 30–60 秒),默认使用有界 worker 池。clawpatch ci 可一次跑完整流程并写入相同的 .clawpatch/ findings,但不会修复或开 PR。状态持久化在 .clawpatch/,findings 及其 fixed/wont-fix/uncertain 状态跨运行保留。代码变动后可用 clawpatch revalidate --since <ref> 或 --all 重新校验,或用 clawpatch review --since <ref> 只审查变更的 feature。clawpatch triage --finding <id> --status <status> --note <text> 可标记误报或决策。
使用方式:安装 npm install -g clawpatch@0.7.2,用 clawpatch doctor 验证安装与 provider。建议尽早将 .clawpatch/ 加入 .gitignore。首次整仓可用 clawpatch ci;大仓库先 review --limit 3 冒烟测试。review 默认只看已提交代码,--include-dirty 可纳入未提交改动。--mode deslopify 用于清理可维护性/性能问题。按 feature 限定范围时需用不透明 featureId(如 feat_library_…),可用 --feature-list 传入每行一个 id。findings 用 report --json 读取,注意 --json 写 stdout、--output 写 Markdown,0.7.2 中应读 .items[]。
修复方式:scanner-only(默认,唯一安全并行路径)由宿主 agent 自行修复,适合并行、严格提交规范或需逐补丁控制;full-cycle 用 clawpatch fix 生成并验证补丁,适合单人顺序、低仪式仓库。两者互斥,切勿在子代理中运行 clawpatch fix。
限制与安全:fix 默认拒绝脏源码工作树,无 --force;不要未经用户批准运行 open-pr --force。不要盲目重试非零退出码(3=脏树,4=provider 认证,6=验证失败,7=锁)。Clawpatch 目前不合并/落地 PR。该工具处于 pre-1.0,标志、JSON 字段与退出码可能变化,应以 clawpatch <cmd> --help 和实时 --json 输出为准。