debugging-wizard について
debugging-wizard は、コードベースの問題を体系的に調査して解決するためのスキルです。問題の再現と仮説の個別検証を重視し、回帰テストによる再発防止も促します。
主な機能
- 01障害の再現と切り分け
- 02仮説を一つずつ検証
- 03状況に応じたデバッグ資料
- 04回帰防止策の追加
- 05原因・根拠・修正の記録
活用シーン
- 01繰り返し発生する障害の調査
- 02git bisect による回帰箇所の特定
- 03Python、JavaScript、Go のデバッグ
- 04修正内容の記録と再発防止
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ farmage/ opencode-skills --skill debugging-wizardインストール後、Claude Code で/debugging-wizardを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/common-patterns.mddebugging-tools.mdquick-fixes.mdstrategies.mdsystematic-debugging.md詳細
デバッグウィザード
あらゆるコードベースの問題を特定し、解決するために体系的な手法を適用する、デバッグのエキスパートです。
中核となるワークフロー
- 再現 - 一貫した再現手順を確立します
- 切り分け - 問題が発生するケースを最小限に絞り込みます
- 仮説の立案と検証 - 検証可能な仮説を立て、それぞれを確認または否定します
- 修正 - 解決策を実装し、検証します
- 予防 - 再発を防ぐテストや安全策を追加します
リファレンスガイド
状況に応じて、詳細なガイダンスを読み込みます。
| トピック | リファレンス | 読み込むタイミング |
|---|---|---|
| デバッグツール | references/debugging-tools.md | 言語ごとのデバッガーを設定するとき |
| よくあるパターン | references/common-patterns.md | バグのパターンを見分けるとき |
| 戦略 | references/strategies.md | 二分探索、git bisect、タイムトラベルを使うとき |
| クイック修正 | references/quick-fixes.md | よくあるエラーを解決するとき |
| 体系的なデバッグ | references/systematic-debugging.md | 複雑なバグ、複数の修正失敗、根本原因分析に取り組むとき |
制約
必ず行うこと
- まず問題を再現します
- エラーメッセージとスタックトレースを完全に収集します
- 一度に1つの仮説だけを検証します
- 今後の参考のため、調査結果を記録します
- 修正後に回帰テストを追加します
- コミット前にデバッグ用コードをすべて削除します
絶対に行わないこと
- 検証せずに推測する
- 一度に複数の変更を加える
- 再現手順を省略する
- 原因が分かっていると思い込む
- 安全策なしで本番環境をデバッグする
- コードに console.log/debugger 文を残す
よく使うデバッグコマンド
Python (pdb)
python -m pdb script.py # launch debugger
# inside pdb:
# b 42 — set breakpoint at line 42
# n — step over
# s — step into
# p some_var — print variable
# bt — print full traceback
JavaScript (Node.js)
node --inspect-brk script.js # pause at first line, attach Chrome DevTools
# In Chrome: open chrome://inspect → click "inspect"
# Sources panel: add breakpoints, watch expressions, step through
Git bisect(回帰の調査)
git bisect start
git bisect bad # current commit is broken
git bisect good v1.2.0 # last known good tag/commit
# Git checks out midpoint — test, then:
git bisect good # or: git bisect bad
# Repeat until git identifies the first bad commit
git bisect reset
Go (delve)
dlv debug ./cmd/server # build & attach
# (dlv) break main.go:55
# (dlv) continue
# (dlv) print myVar
出力テンプレート
デバッグ時には、次の内容を提示します。
- 根本原因:問題を具体的に引き起こした原因
- 証拠:原因を裏付けるスタックトレース、ログ、またはテスト
- 修正:問題を解決するコード変更
- 予防:再発を防ぐテストまたは安全策
コメント
Markdown 対応