SuperAPI AI 工具集

sweep

编程与开发

查看项目

更新于 10-23 16:18

技能介绍

用途

Sweep 用于在同一个代码仓库上反复运行,每个周期发现一个“可被证实”的高价值问题,修复其根因,验证修复,并针对默认分支提交一个 PR。它覆盖潜在 bug、静默的生产错误、缓慢路径和测试缺口等问题类型。前置事实需注意:早期运行留下的未合并 PR 会持续存在,这些已覆盖的问题会被排除,但不会因此终止本轮运行。

主要能力

  • 按优先级筛选候选:生产行为损坏、CI/静态分析失败、逻辑或数据处理错误、重要的 UX 问题、安全或可靠性问题、可测量的性能问题、错误处理与可观测性缺口、高价值重构、代码异味、细节打磨。
  • 维护“已知工作”账本:通过脚本收集全部打开的 PR、最近 30 天合并的 PR(可用 --days N 放宽)、最近一年关闭未合并的 PR、已占用的 sweep* 分支名以及早期 sweep 的发现文件,并以 jq 查询而非整体读取。
  • 只读查看生产信号:通过现有连接器(Nightwatch、PostHog、Sentry、云日志与指标)使用查询、日志、指标和 describe/list 调用,禁止进入容器、打开数据库会话或执行任何可能写入的操作;需核对应用、环境、时间范围与已部署版本。
  • 参数解析:数量为 1 到 10 的整数,缺省执行 1 个周期;超过 10 按 10 处理并说明;第二个数字、0、负数或小数属于无效输入。其余 token 视为聚焦领域,带引号的短语算一个领域;未提供领域时所有类别合格。类别包括 bug/production、ci/tests/coverage、ux/ui/accessibility、security/reliability、performance/perf、observability/errors、refactor/architecture/dry/tech-debt、polish,其它领域被视为产品领域,需先搜索确认其指向真实代码(目录、模型或领域术语),否则停止并报告。

使用方式

运行 /sweep 并可选传入数量与聚焦领域,例如 /sweep "session notes" perf。技能会先读取 AGENTS.md / CLAUDE.md 及其指向的规则文件,以及 .agents/domain.md(若存在);执行 git fetch origin 并解析默认分支,所有 PR 以 origin/<default> 为目标。随后生成已知工作账本到临时目录,查询候选是否已被覆盖,查看生产信号,然后证明问题:要求给出具体失败面、影响、在当前默认分支上存在的证据(复现器、失败测试、日志行或测量基线)、根因以及有边界的修复和验证方法;仅凭阅读代码想象失败不算证据。确认后创建 sweep/<topic> 分支和 worktree,从抓取的基础版本开始,最小化修改修复根因,通过真实入口编写回归测试(修复前失败、修复后通过),运行仓库要求的检查,最后按提交参考打开 PR、打标签并等待检查。每个周期从新的 fetch 和新的账本重新开始,避免重复或基于前一周期的成果继续构建。

适用场景

适合在需要持续发现并修复仓库中隐蔽问题、且希望每个问题独立成 PR 以便评审的工程流程中使用;也适合限定特定领域(如性能、安全、测试覆盖)进行定向排查。可单独调用,也可置于 /loop 下重复运行。

限制

该技能仅授权创建分支与工作区、提交、推送该分支、打开并标记对应 PR,不授权合并、部署、任何生产写入、推送默认或部署分支、删除已推送分支。发现不属于当前问题的发现(包括聚焦范围外的严重问题)只写入主检出的 .scratch/sweep/findings/ 目录,不修复、不提交、不建 issue。若某来源缺失不影响可在本地证明的问题,但需报告访问限制。不得重述已覆盖问题、把一个修复拆成两个 PR、提升风格偏好或假设性风险;搜索广泛但无可证实问题时,无 PR 并报告检查内容即为正确结果。若某周期在修改代码后失败,保留其工作区并停止运行。具体脚本、参考文档与检查命令细节以该技能自带资料为准,资料未提供更详细的平台支持、收费方式或效果数据。