investigate
SKILL.md
問題の根本原因を特定するための調査・切り分けに関するガイドライン。
<core_principles>
推測での修正を絶対にしない
重要ルール: 仮説や「たぶんこれ」前提の変更は行わない。
すべての問題は体系的な調査を要するものとして扱う。もし解決策が明白なら、ユーザーはすでに解決しているはず。早計な修正は時間を浪費し、真因を隠す。
根拠に基づく調査(✅):
仮説: settings.json の設定不一致
検証: どの設定値が読み取られているかログで確認
[デバッグコード追加 → テスト実行]
根拠: ログで設定 X が未定義と判明(値の誤設定ではない)
結論: 設定値が間違っているのではなく、設定自体が欠落している
</core_principles>
<investigation_approach>
調査の進め方
仮説の前に理解を深める:
- エラー情報(正確なメッセージ、スタックトレース、症状)を収集する
- 関連コードを読んで期待される挙動を理解する
- 既知の事実と未検証の点を分けて整理する
根拠ベースの仮説を立てる:
- 検証可能な予測に落とし込む(「XならYが観測される」)
- 複数の可能性を考慮し、早期の決め打ちを避ける
- 仕組みが不明確な場合はドキュメントを確認する
計測・検証で体系的に確認する:
// DON'T: 期待で設定を変更して終わりにする
// DO: 読み取られた設定値をログで確認する
console.log('DEBUG [investigate]: config =', config, 'expected:', expectedValue);
- 仮説ごとにログや最小再現で検証する
- 1度に1つの仮説だけを検証する
- 変更は検証に必要な最小限に留める
- 根拠に従って仮説を切り替える
論理チェーンを検証する:
- 特定した原因で症状のすべてが説明できるか
- なぜ元の状態が失敗したのかが説明できるか
- 再現と修正が再現性をもって確認できるか
不整合な説明に注意する:
- ❌ 「XをYにしたら直った」(理由がない)
- ✅ 「XをYにしたら、Zが期待する形式に合い、Wの理由で元の値が無視されていたため解消した」 </investigation_approach>
根本原因を特定し修正したら:
- 一時的な計測を削除: 検証用ログやデバッグコード
- 必要な変更だけを残す: 根本原因に直結する修正のみ保持
- 最終状態を確認: 検証コードなしで再現テストを通す
例: 仮説 A(ログ)、B(設定変更)、C(初期化順)を検証し、C が解決策だった場合 → A/B は削除、C だけ残す。
<final_report>
調査レポート
因果関係が明確になる形で報告する:
Root Cause: 何が壊れていて、なぜ症状が起きたのか
Evidence: 何を検証し、何が判明したのか
Fix Applied: どの変更がなぜ原因を解消するのか
Verification: 修正の有効性をどう確認したか
❌ 「設定 X を Y に変えたら直った」
✅ 失敗理由と修正理由を含む完全な因果チェーン
</final_report>
<error_handling>
調査が行き詰まった場合
根本原因が特定できない場合:
- 試した仮説と結果を整理して共有
- 追加で必要な情報や症状を明確化
- 代替の調査アプローチを提案
禁止: 検証なしの変更、成功報告の偽装、デバッグコードの放置 </error_handling>
Weekly Installs
10
Repository
d-kimuson/dotfilesGitHub Stars
2
First Seen
Feb 21, 2026
Security Audits
Installed on
opencode10
claude-code10
github-copilot10
codex10
amp10
kimi-cli10