# ディスカスモード: Assumptions vs Interview

eCL の discuss フェーズには、プランニング前に実装コンテキストを収集するための2つのモードがあります。

## モード

### `discuss`（デフォルト）

従来のインタビュー形式のフローです。Claude がフェーズ内の不明瞭な領域を特定し、選択肢として提示した後、各領域について約4つの質問を行います。以下のケースに適しています:

- コードベースが初めてで、初期フェーズの場合
- ユーザーが積極的に意見を表明したい場合
- ガイド付きの対話的なコンテキスト収集を好むユーザー

### `assumptions`

コードベース優先のフローです。Claude がサブエージェントを通じてコードベースを深く分析し（関連ファイルを5〜15個読み取り）、根拠付きの仮説を立てて確認・修正を求めます。以下のケースに適しています:

- 明確なパターンが確立されたコードベース
- インタビューの質問が自明と感じるユーザー
- より高速なコンテキスト収集（約2〜4回のやり取り vs 約15〜20回）

## 設定

```bash
# assumptions モードを有効にする
ecl-tools config-set workflow.discuss_mode assumptions

# interview モードに戻す
ecl-tools config-set workflow.discuss_mode discuss
```

この設定はプロジェクト単位です（`.planning/config.json` に保存されます）。

## Assumptions モードの仕組み

1. **初期化** — discuss モードと同様（前回のコンテキスト読み込み、コードベース調査、TODO チェック）
2. **深層分析** — Explore サブエージェントがフェーズに関連するコードベースファイルを5〜15個読み取る
3. **仮説の提示** — 各仮説には以下が含まれる:
   - Claude が何をどのような理由で行うか（ファイルパスを引用）
   - 仮説が間違っていた場合のリスク
   - 確信度レベル（Confident / Likely / Unclear）
4. **確認または修正** — ユーザーが仮説をレビューし、変更が必要なものを選択
5. **CONTEXT.md の生成** — discuss モードと同一の出力フォーマット

## フラグの互換性

| フラグ | `discuss` モード | `assumptions` モード |
|--------|-----------------|---------------------|
| `--auto` | 推奨回答を自動選択 | 確認ゲートをスキップし、Unclear 項目を自動解決 |
| `--batch` | 質問をバッチでグループ化 | N/A（修正は既にバッチ化済み） |
| `--text` | プレーンテキスト形式の質問（リモートセッション向け） | プレーンテキスト形式の質問（リモートセッション向け） |
| `--analyze` | 質問ごとにトレードオフ表を表示 | N/A（仮説に根拠が含まれる） |

## 出力

両モードとも、同じ6セクション構成の CONTEXT.md を生成します:
- `<domain>` — フェーズの境界
- `<decisions>` — 確定した実装上の決定事項
- `<canonical_refs>` — 下流エージェントが読むべき仕様・ドキュメント
- `<code_context>` — 再利用可能なアセット、パターン、統合ポイント
- `<specifics>` — ユーザーの参照情報と好み
- `<deferred>` — 将来のフェーズに先送りするアイデア

下流エージェント（researcher、planner、checker）は、モードに関係なくこの出力を同一に消費します。
