name: outline-refine
description: 4つの観点(整合性・流れ・ロジック・独自価値)でアウトラインを並列レビューし深掘り・言語化する。何度でも繰り返し実行可能。
user-invocable: true
allowed-tools: Read, Write, Bash, Task
argument-hint: ""
Phase 4: 点検・深掘り・言語化
重要: $ARGUMENTS にプロジェクト名が含まれる場合、CLAUDE.mdの命名規則に従いディレクトリを解決すること。
プロジェクト: $ARGUMENTS
$ARGUMENTS 未指定なら案内して終了。
まず output/$ARGUMENTS/outline/goal.md と output/$ARGUMENTS/outline/outline.md を読み込む。いずれか不在なら該当フェーズを案内。
output/$ARGUMENTS/outline/refine-log.md があれば読み込む(過去のレビュー履歴)。
output/$ARGUMENTS/outline/input-log.md があれば読み込む(ユーザーの元の発言記録)。
A. 並列レビュー
goal.mdとoutline.mdの内容を読み取り、以下4つのサブエージェントを1つのメッセージで同時にTaskツール(subagent_type: general-purpose)で起動する。
各プロンプトのテンプレートは review-prompts.md を参照。実際のgoal.md/outline.mdの内容をテンプレートに埋め込んで渡す。
refine-log.mdが存在する場合: 各サブエージェントのプロンプトに {review_history} として過去の指摘履歴を渡す。これにより、対応済みの指摘を再指摘せず、新規の問題に集中できる。
- 主張との整合性チェック — ゴールとのズレ、不要/不足な内容
- 話の流れチェック — 順序の自然さ、飛躍、つなぎの必要性
- ロジックチェック — 論理破綻、根拠と主張の対応、矛盾
- 独自価値チェック(最重要) — 一般論 vs 自分の経験、独自の視点
B. 結果統合
4つの結果が揃ったら:
- 観点ごとに整理してユーザーに提示
- 指摘に優先度(高/中/低)をつける
- 過去のログがある場合、各指摘を新規か**継続(前回から未対応)**に分類する
- 独自価値の指摘を最優先で深掘り
- 仮タイトルがある場合、構成の洗練を踏まえてタイトルの見直しも提案する(変更不要ならそのまま)
C. 深掘り・言語化
レビュー結果を元にユーザーと対話し思考を深掘りする:
- 思考実験(「もし〇〇だったら?」)
- 質問(「なぜそう思う?」「具体的には?」)
- 言語化補助(「つまり〇〇ということ?」)
スタンスが「一緒に考えたい」の場合の追加プロセス:
レビュー結果を踏まえて、ユーザーにメッセージ再発見の問いかけを行う:
- 「結論の部分を読み返して、自分の言葉だと感じますか?」
- 「この結論に『でも...』と付け足すなら何が来ますか?」
- 「その『でも』の先にこそ、本当に言いたいことがあるかもしれません」
メッセージが更新された場合、goal.md と outline.md のメッセージメモも更新する。
D. 更新・保存
- 深掘り結果を反映して
output/$ARGUMENTS/outline/outline.mdを更新する。フォーマットは templates/outline-refined.md を参照。 output/$ARGUMENTS/outline/refine-log.mdにレビューラウンドを追記する。 フォーマットは templates/refine-log.md を参照。- 新規指摘を一覧に追加(#通番、観点、優先度、箇所、内容、ステータス)
- 対応した指摘のステータスを「対応済み」に更新
- 対応内容を具体的に記録
- 通番はログ全体で一意(ラウンドをまたいで連番)
完了条件
- 主張とアウトラインの整合性OK
- 話の流れが自然
- ロジックに破綻なし
- 独自の経験・体験に基づく価値あり
- 各項目が具体的で説明可能
- 結論が借り物ではなく自分の言葉になっている(スタンスB/Cの場合)
- ユーザーが「これで書ける」と感じている
改善余地があれば再度 /outline-refine $ARGUMENTS を案内。