用途
bug-hunt 是一个系统化缺陷调查与根因分析技能,来源于 boshu2/agentops。它用于两类场景:一是针对已知缺陷或失败进行根因定位并设计完整修复;二是主动审计代码,在缺陷造成影响前发现隐藏问题。
主要能力
调查模式(Investigation)
调用方式:/bug-hunt <symptom>,适用于已有已知缺陷或失败。采用四阶段结构:
- 根因(Root Cause):找到实际缺陷位置,输出 file:line、commit。
- 模式(Pattern):与可工作的示例对比,识别差异。
- 假设(Hypothesis):形成并测试单一假设,记录每个假设的通过/失败。
- 实现(Implementation):在根因处修复而非症状处,验证修复。
执行步骤包括:加载既有缺陷上下文(若存在 ao 命令,可执行 ao lookup --query "<symptom-keywords> bug patterns" --limit 3);确认缺陷(期望行为、实际行为、能否稳定复现);定位症状(用 grep 搜索错误文本或相关名称);git 考古(git log、git diff、git blame、按关键词搜索提交);追踪执行路径(使用 Task 工具,subagent_type 为 Explore);识别根因(是什么、在哪里、何时引入、为什么发生)。
审计模式(Audit)
调用方式:/bug-hunt --audit <scope>,用于主动扫描尚未被报告的缺陷。示例:
/bug-hunt --audit cli/internal/goals/审计一个包/bug-hunt --audit src/auth/审计一个目录/bug-hunt --audit .审计仓库近期变更
审计步骤:确定范围(用 find 查找源文件;若范围过大则用 git log --since="2 weeks ago" --name-only 缩小到近期变更文件);逐行系统阅读,检查资源泄漏、字符串安全、死代码、硬编码值、边界条件、并发、错误处理等类别;对发现按 HIGH/MEDIUM/LOW 分级;撰写审计报告到 .agents/research/YYYY-MM-DD-bug-<scope-slug>.md,并向用户汇报汇总表。
缺陷发现金字塔模式(BF1–BF5)
运行 --audit 时检查缺失的缺陷发现测试覆盖:
- BF4 混沌/负面测试(最高缺陷发现力):对每个进行外部调用(API、数据库、文件系统)的文件,验证是否存在超时注入、连接失败、权限拒绝、损坏输入测试;若缺少失败注入则标记为 significant。
- BF5 脚本功能测试:对每个调用外部工具(oc、kubectl、helm)的 .sh 脚本,验证是否存在基于 stub 的功能测试、JSON 输出模式校验、健康与不健康 stub 路径测试;若缺少则标记为 moderate。
- BF1 基于属性的测试:对每个数据转换(解析/渲染/序列化),验证是否存在随机输入的属性测试。
使用方式
技能要求可写的 .agents/ 输出目录,若不存在需显式创建;创建后续 issue 时需要 bd CLI(beads)。调查模式按四阶段执行,审计模式按系统化阅读与分类执行。技能强调必须实际执行工作流,而非仅描述。
适用场景
- 调查测试失败(如 CI 失败但本地通过)
- 追踪回归(如某功能在昨日部署后损坏)
- 主动代码审计(如审计某个包或目录)
- 发布前多轮扫描
- 排查卡住的命令、死锁、重试风暴、阻塞子进程或挂起
- 目标进程处于活动、挂起或仅在调试器观察下可复现的情况
限制
- 需要可写的 .agents/ 输出目录。
- 创建后续 issue 时需要 bd CLI(beads)。
- 若无法复现缺陷,需先收集更多信息再继续。
- 假设测试存在 3 次失败规则,达到后需升级到架构评审。
- 性能类缺陷(慢查询、内存泄漏、N+1)需升级到 /perf 做深入分析。
- 具体收费、价格、平台支持等信息暂未提供。
参考文档
技能包含以下参考文档:references/bug-hunt.feature(可执行规范)、audit-report-template.md、bug-report-template.md、failure-categories.md、audit-fix-rescan-cycle.md、convergence-criteria.md、multi-pass-bug-hunting.md、deadlock-and-hang-triage.md、debugger-attach-triage.md。相关技能:refactor(安全重构)、perf(性能剖析)。