Consultation
トリガー条件
以下のいずれかに該当する場合、このスキルを発動する:
- 仕様が曖昧で判断できない(掘り下げても不明)
- 技術選定が必要(複数案を比較検討済み)
- 設計の大きな変更が必要(影響範囲を整理済み)
- パフォーマンス・セキュリティ上の懸念(具体的な数値・リスクあり)
- 予想外の問題に遭遇(根本原因の仮説あり)
- 同じ問題で3回以上失敗した
発動しない場合: 公式ドキュメントで解決できる / まだ何も試していない / エラーメッセージ未確認
前提条件
相談を開始する前に以下をすべて満たすこと:
- [ ] 問題を「AとBで迷っている」レベルまで絞り込んだ(A/B それぞれの名称だけでなく、何と何のトレードオフで迷うかを1行で言語化できること)
- [ ] 少なくとも1つ以上の解決策を試した
- [ ] エラーメッセージ・ログを記録した
- [ ] 公式ドキュメントを確認した
関連スキル・境界(発動前の判断)
本スキルは「判断の相談」に特化する。以下の隣接領域は別スキルに委譲する:
| 状況 | 委譲先 |
|---|---|
| 新規 interface 設計・責務分割・依存関係整理 | interface-first-design(疑似コード→interface→クラス→TDD) |
| バグの原因分析・仮説構築 | systematic-debugging(Phase 1-4、「なぜ?」3-5回) |
| 繰り返す失敗の記録・再発防止 | failure-logging |
| テスト駆動の実装 | tdd |
「AとBで迷っている」レベルまで絞り込めていない場合は、本スキルを発動せず上記スキルへ誘導する。
手順
Phase 1: 問題の言語化
- 現在のタスクとブランチを確認する
- 「何が起きているか」を事実ベースで整理する
- 期待値と実際の差異を明確にする
- 「なぜ?」を3〜5回繰り返して根本原因を探る
Phase 2: 相談内容の構造化
下記テンプレートをすべて埋める:
【相談: {一行サマリ}】
## 1. 何が起きているか (事実)
- 現在のタスク / 進捗 / ブランチ / 現象
## 2. なぜそれが問題なのか
- 期待 vs 実際 / このままだと何が困るか
## 3. なぜその問題が発生したのか
- 「なぜ?」を3-5回繰り返して根本原因を探る
## 4. 何を試したか
1. 試したこと → 結果 → なぜダメだったか
2. ...
## 5. 判断が必要な点 (具体的に)
- AとBのどちらを使うべきか?
## 6. 制約条件
- パフォーマンス / 互換性 / セキュリティ
Phase 3: 相談の送信
- テンプレートが全項目埋まっていることを確認する
- スマホ・PCクライアントへ送信する
- 回答を受け取るまでコーディングを停止する
Phase 4: 回答の反映
- 方針が決定したらブランチ・タスクに戻る
- 決定内容をコード・コメント・PROGRESS.mdに記録する
役割分担
| ClaudeCode (ここ) | スマホ・PCクライアント | |-------------------|----------------------| | コーディング・ファイル操作 | 問題の整理・分析 | | テスト実行・デバッグ | 解決方針・アーキテクチャ設計 |
出力形式
相談送信時は必ずテンプレートの全セクションを含めること。省略不可。
良い例:
✅ 「JWTの保存場所、localStorageとhttpOnly Cookieで迷っている。XSS vs CSRF のトレードオフ」
悪い例:
❌ 「認証がうまくいかない。どうすればいい?」
禁止事項
- 「何が分からないか分からない」状態で相談
- 何も試さずに相談
- 公式ドキュメントを確認せずに相談
- 漠然とした質問(「どうすればいい?」)
- エラーメッセージを記録せずに相談
- テンプレートを部分的にしか埋めずに相談
- 回答待ち中に別の実装を進める