G

investigate

作者 garrytan

investigate 技能用于指导对故障、偶发性问题或异常行为进行系统化排查和根因分析。适用于代码评审、事故分诊、缺陷修复,以及“昨天还好好的”这类场景——当你需要先拿到证据再改代码时,它尤其有用。它遵循四阶段工作流:investigate、analyze、hypothesize、implement。

Stars91.8k
收藏0
评论0
收录时间2026年5月9日
分类代码评审
安装命令
npx skills add garrytan/gstack --skill investigate
编辑评分

该技能得分 82/100,属于目录中值得收录的稳定候选:它明确覆盖了常见的调试与根因分析流程,并提供了足够清晰的触发指引,能减少用户猜测;不过,仓库中仍缺少一些辅助材料,影响上手和采用效率。

82/100
亮点
  • 对调试和根因分析场景的触发条件写得很明确,尤其适合在出现错误、堆栈跟踪,或“昨天还能用”这类情况时主动调用。
  • 工作流被清晰地定义为四个阶段——investigate、analyze、hypothesize、implement——并且明确禁止在定位根因前直接修复。
  • 使用 hooks 和 allowed-tools,说明它更像是真实可执行的技能,而不是纯描述性的提示词。
注意点
  • 仓库没有安装命令、支持文件、参考资料或 readme,因此用户主要只能依赖 SKILL.md 来理解安装方式和适用范围。
  • frontmatter 中包含占位标记,说明虽然主体工作流内容已经比较完整,但部分内容可能仍在持续打磨。
概览

investigate 技能概览

investigate 技能是做什么的

investigate 技能用于系统性排查和根因分析,适合处理故障、偶发不稳定,或行为与预期不一致的情况。它面向的不是只想快速补个丁的用户,而是那些需要先弄清楚“为什么会报错、哪里变了、什么修复才算安全”的场景;investigate 会帮助你把这类工作组织起来。

谁适合使用它

investigate 技能适用于代码审查、事故分诊、Bug 修复,以及“昨天还能用”的问题场景。当你需要 agent 停止猜测、先收集证据,并沿着症状一路追到确认的原因之后再改代码时,它尤其合适。

它的优势在哪里

它最核心的区别是“没有根因,不给修复”。这一点让 investigate 比通用 debug prompt 更严格:它会把工作流往调查、分析、假设验证和实现推进,而不是一上来就直接改代码。它还支持主动触发,这对 agent 工作流很有用——一旦出现错误或 stack trace,技能就能立刻启动。

如何使用 investigate 技能

安装并调用 investigate

使用以下命令安装 investigate 技能:

npx skills add garrytan/gstack --skill investigate

当你的 prompt 明确描述的是失败状态时就该用它,比如 stack trace、500 error、回归问题或意外输出。为了获得更好的结果,请直接说明症状、出现位置,以及“正常工作”应该是什么样。

提供正确的起始输入

高质量的 investigate 使用 prompt 应该包含:

  • 准确的错误信息或日志片段
  • 触发它的命令、endpoint 或用户操作
  • 最近改动了什么
  • 你已经检查过哪些内容
  • 影响范围和紧急程度

示例:“调查为什么 npm test 在最近一次 merge 后开始在 CI 里失败。比较 main 和 HEAD,检查 auth middleware 的最近改动,并且在根因确认之前不要提出代码修改建议。”

先读对文件

先看 SKILL.md,再检查 SKILL.md.tmpl,了解是否存在模板化行为或路由逻辑。由于这个仓库没有单独的 rules/resources/scripts/ 目录,所以主要价值就在 skill 文件本身,以及它引用的任何内联内容。对于用于 Code Review 的 investigate,要特别注意触发语句,以及编辑前允许执行哪些安全操作。

能显著提升结果的工作流建议

investigate 当作一个决策流程,而不是随意聊天。让 agent 按下面的顺序做事:

  1. 识别故障模式,
  2. 收集支持性证据,
  3. 形成一到两个可验证的假设,
  4. 验证最可能的原因,
  5. 实施最小且安全的修复。

如果你跳过第 1 步,skill 仍然可能生成分析内容,但对 code review 或事故响应来说就没那么有用。

investigate 技能 FAQ

investigate 只适合 Bug 吗?

不是。investigate 技能也适用于回归、部署失败、集成故障,以及不清楚的行为变更。只要任务是“弄明白为什么会这样”,investigate 通常就是合适的起点。

它和普通 prompt 有什么不同?

普通 prompt 可能会直接要求修复。investigate 技能的结构更强:它会先强制进行根因思考,从而减少脆弱的修改,也让最终变更在 code review 中更容易被证明是合理的。

investigate 适合新手吗?

适合,只要用户能提供症状和一点上下文。新手通常会从这个技能中受益,因为它减少了猜测;但他们仍然需要给出具体证据,比如日志、复现步骤或失败的命令。

什么时候不该用它?

当你已经明确知道自己要改什么,或者只是做一个不涉及故障诊断的简单内容编辑时,不要用 investigate。在这些情况下,更简单的任务 prompt 会更快。

如何改进 investigate 技能

提供证据,不要只描述抱怨

质量提升最大的地方在于输入更精确。不要只说“应用坏了”,而要提供失败请求、错误文本、文件路径、环境信息,以及最后一次正常工作的状态。investigate 技能在每个假设都能锚定到可观察证据时,表现最好。

缩小搜索范围

如果问题出现在 Code Review 中,先指出最可能的子系统和变更窗口。例如:“重点看 auth,只检查最近两个 commit 的改动,并确认这个 bug 能否在 staging 里复现。”这样可以避免 investigate 发散得太宽,也更容易更快找到根因。

第一次分析后继续迭代

如果第一次回答不够明确,不要要求更大范围的重写,而是要求更聚焦的调查。好的追问包括:“列出前三个假设,并给出置信度”“说明什么证据能推翻每个假设”“沿着从输入到输出的路径追踪故障,并在编码前停止”。

评分与评论

暂无评分
分享你的评价
登录后即可为这个技能评分并发表评论。
G
0/10000
最新评论
保存中...