grilling reference
grilling は、plan、decision、idea の未確定事項をユーザーとの対話で共通理解へ収束させる、再利用可能な read-only skill である。
他 skill や grill trigger から起動できる model-reachable な対話処理として扱う。
通常の plan、decision、idea すべてから自動起動せず、ユーザーの interview 要求または呼び出し元 skill の明示委譲を trigger とする。
コード変更、Issue 作成、PR 作成、下流 workflow の実行、呼び出し元固有の artifact 生成は行わない。
事実と判断
質問を始める前に、repo、Issue、docs、コードなどの一次情報を確認する。 環境から確認できる事実は先に調べ、ユーザーにしか決められない判断だけを質問する。 事実と判断が混ざっている場合は、事実を確認してから判断を聞く。
判断を聞くときは、推奨案、理由、選択肢ごとの影響を示す。 一次情報が足りず事実を確定できない場合は、不足内容を明示し、ユーザー判断へすり替えない。
対話の進め方
- 対象と現在の理解を整理する。
- 一次情報で解ける事実を調べる。
- 残った判断を decision tree にし、各分岐で生じる後続判断と判断間の依存関係を整理する。
- 前提となる判断から順に、推奨案付きで 1 問だけ質問する。
- 回答を反映して選ばれた分岐の先へ進む。選ばなかった分岐は、影響を確認して閉じる。
- 新しい分岐や依存関係が生じたら decision tree と残質問を更新する。
- 未確定事項がなくなったら共通理解を要約し、合っているかをユーザーへ確認する。
分岐型質問では AskUserQuestion を使い、推奨案を最初に置く。選択肢は 2-3 個にする。自由回答が必要な場合も、一度に聞くのは 1 問だけにする。
呼び出し元が指定した質問上限に達した場合、または制御を戻す条件を満たした場合は、次の質問へ進む前に対話を中断し、現在の理解、残質問、未確認の分岐と依存関係を返す。この中断は完了ではなく、続行時は残質問から再開する。
完了条件
ユーザーが共通理解を確認するまで完了として扱わず、実装、Issue 作成、PR 作成、下流 workflow へ進まない。
回答の矛盾、追加調査や実機確認が必要な論点、一次情報不足、未確認の共通理解は、未確定事項として呼び出し元へ返す。
呼び出し元は質問数の checkpoint、interview log、packet や plan の artifact 生成と検証を担当する。grilling は呼び出し元固有の schema や validator を重複実装しない。