アイデアの具体化、実装、不具合調査など、今の状況に合う関連スキルと使う順番を案内し、仕様作成や作業の引き継ぎを含めて開発の進め方を選ぶためのスキル。
- アイデアから実装までの進め方選び
- 難しい不具合調査の入口を探したいとき
- 複数セッションの仕様と作業計画
不具合や性能低下を繰り返し再現できる検証手順を作り、原因の仮説を絞って修正します。最小の再現例づくりから再発防止テスト、一時的な調査コードの片付けまで進めます。
面向棘手缺陷和性能回退的诊断循环。适用于用户说 “diagnose” / “debug this”,或报告某些东西 broken、throwing、failing、slow 时。
不具合や性能低下について、症状を繰り返し確認できる検証手順を作り、原因の特定と修正を進めます。まず実際の症状で失敗するテストやコマンドを用意し、再現条件を最小化します。その後、検証可能な仮説を3〜5個に順位付けし、一度に一つの条件を変えて確かめます。修正後は元の再現手順を実行し、一時的なログや試作コードも整理します。
原因がつかめないエラー、誤った出力、ときどきだけ起きる不具合の調査に向いています。性能低下では先に処理時間などの基準値を測定します。再発防止テストを適切に置ける場所がない場合は、その設計上の課題も記録します。
症状を再現できる環境や入力が必要です。検証手順を作れない場合は、試した内容を示し、環境へのアクセスや機密情報を除いたログなどを求めます。表示するコマンドや出力の秘密情報は伏せます。使用するテスト、ブラウザ操作、計測ツールは対象環境に応じて選びます。
この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
面向棘手 bugs 的纪律。只有在明确说明理由时才跳过阶段。
探索 codebase 时,先读取 GLOSSARY.md(如果存在),建立相关 modules 的清晰 mental model,并检查你将触碰区域的 ADRs。
这个 skill 会要求你展示 commands、outputs 和捕获的 artifacts。先 redact 掉每个 secret:用 <REDACTED> 替换。Build loops 要针对 env vars 进行,让 credential 留在 environment 里而不是你展示的内容中。捕获的 artifacts 带有 auth headers:只引用携带 signal 的那些行。
如果 redact 后的 output 不足以诊断 bug,就说明情况并询问用户。
这就是这个 skill 的核心。 其他所有内容都是机械步骤。如果你拥有一个针对该 bug 的 tight pass/fail signal,即它会在 这个 bug 上变红,你就能找到原因;bisection、hypothesis-testing 和 instrumentation 都只是消费这个 signal。没有它,盯着代码看多久都救不了你。
在这里投入不成比例的精力。要强硬、要有创造力、拒绝放弃。
git bisect run。scripts/hitl-loop.template.sh 驱动 人,让 loop 仍保持结构化。捕获的输出反馈给你。构建正确的 feedback loop,bug 就修好了 90%。
把 loop 当作产品。只要有了 一个 loop,就继续 tighten 它:
一个 30 秒且 flaky 的 loop 几乎不比没有 loop 好;一个 2 秒 deterministic loop 才是 tight 的调试超能力。
目标不是 clean repro,而是 higher reproduction rate。循环触发 100x、parallelise、加 stress、缩小 timing windows、注入 sleeps。50%-flake bug 可以调试;1% 不行。持续提高复现率,直到它可调试。
停下来并明确说明。列出你尝试过什么。向用户请求:(a) 能复现的环境访问权限,(b) 经 redact 的 captured artifact(HAR file、log dump、core dump、带 timestamps 的 screen recording),或 (c) 添加临时 production instrumentation 的许可。不要 在没有 loop 时继续 hypothesise。
Phase 1 完成条件:loop tight 且 red-capable。你能指出 一个 command(script path、test invocation、curl),并且你已经至少运行过一次(展示 invocation 和 output,已 redact),且它满足:
scripts/hitl-loop.template.sh。如果你发现自己在 command 存在前就读代码构建理论,停下;直接跳到 hypothesis 正是这个 skill 要防止的失败。 没有 red-capable command,就没有 Phase 2。
运行 loop。看它变红,也就是 bug 出现。
确认:
一旦变红,就把 repro 缩到 仍会变红的最小场景。逐个削减 inputs、callers、config、data 和 steps,每次削减后重新运行 loop;只保留 failure 的 load-bearing 部分。
原因:minimal repro 会缩小 Phase 3 的 hypothesis space(可怀疑的 moving parts 更少),并成为 Phase 5 中干净的 regression test。
完成条件:每个剩余元素都是 load-bearing,移除任意一个都会让 loop 变绿。
在 reproduce 并 minimise 之前不要继续。
在测试任何假设前,生成 3-5 个 ranked hypotheses。单假设会锚定在第一个看似合理的想法上。
每个 hypothesis 必须 falsifiable:说明它会做出什么 prediction。
Format: "If <X> is the cause, then <changing Y> will make the bug disappear / <changing Z> will make it worse."
如果无法说明 prediction,这就是 vibe;丢弃或打磨它。
测试前把 ranked list 展示给用户。 用户常常有 domain knowledge,可以立即重排("we just deployed a change to #3"),或知道哪些 hypotheses 已被排除。便宜 checkpoint,大幅省时。不要因此阻塞;如果用户 AFK,就按你的排序继续。
每个 probe 都必须映射到 Phase 3 的某个具体 prediction。一次只改变一个变量。
Tool preference:
给每条 debug log 加唯一 prefix,例如 [DEBUG-a4f2]。最后 cleanup 就能一次 grep。未打 tag 的 logs 会存活;带 tag 的 logs 要删除。
Perf branch。 对 performance regressions,logs 通常不对。改为先建立 baseline measurement(timing harness、performance.now()、profiler、query plan),然后 bisect。先 measure,再 fix。
在 fix 前写 regression test,但前提是存在 correct seam。
Correct seam 是 test 能以 call site 中真实发生的方式触发 real bug pattern 的地方。如果唯一可用 seam 太 shallow(bug 需要多个 callers,但 test 只有 single-caller;unit test 无法复制触发 bug 的 chain),那里的 regression test 会给出 false confidence。
如果不存在 correct seam,这本身就是发现。 记录下来。Codebase architecture 阻止你锁住 bug。把它标记给下一阶段。
如果存在 correct seam:
声明完成前必须做:
[DEBUG-...] instrumentation 已移除(grep prefix)まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
アイデアの具体化、実装、不具合調査など、今の状況に合う関連スキルと使う順番を案内し、仕様作成や作業の引き継ぎを含めて開発の進め方を選ぶためのスキル。
現在の会話を引き継ぎ用に要約し、新しいバックグラウンドエージェントを起動します。既存資料への参照や推奨スキルを添えて、次の作業へ引き継ぎます。
指定したコミットやブランチからの差分を、コード規約と仕様への適合という二つの観点で並行レビューし、それぞれの指摘と重要な問題を分けて報告するスキル。
少ない利用ルールで多くの処理を扱えるモジュール設計を支援し、共通の用語と原則を使って、インターフェースや処理の差し替え位置、テストのしやすさを検討するスキル。
プロジェクトの用語や概念の境界を具体例とコードで確かめ、合意した定義を用語集に、重要な設計判断を記録に残して認識をそろえるスキルです。
Claude Code が危険な Git コマンドを実行する前に遮断するフックを設定します。プロジェクト単位・全体の適用範囲や、禁止する操作も調整できます。