diff --git a/src/skills/grill/SKILL.md b/src/skills/grill/SKILL.md index 45af9de..ab90f46 100644 --- a/src/skills/grill/SKILL.md +++ b/src/skills/grill/SKILL.md @@ -5,9 +5,9 @@ description: Stress-test a plan, decision, or design through a one-question-at-a # grill -Interview the user until the design tree has no open frontier. +Interview the user until the design tree has no open questions. The design tree contains each decision and the decisions that depend on it. -The frontier contains every question whose prerequisites are settled. +Open questions define the ending condition for the grill session. Do not create glossary, context, or ADR files during grill. Do not begin implementation during or after grill without an explicit user instruction. @@ -22,19 +22,20 @@ A completed grill summary is not an instruction to build. Finish when known facts, constraints, and unresolved decisions are visible. -2. Build the first frontier. +2. Build the open-question list. Map the design tree from the known plan or idea. - Put only questions with settled prerequisites in the frontier. + List the questions needed to finish the grill session. Defer questions that depend on another open question. - Finish when each frontier question can receive an answer without guessing another answer. + Finish when the open-question list defines the session ending condition. 3. Start the session. - Present the known frontier in short form. + Present the full open-question list in short form. Include titles only, not full question bodies. + Mark each unresolved question with `- [ ]`. Then start the interview in the same turn with the first numbered question. - Finish when the user sees the known frontier and the first question. + Finish when the user sees the open-question list and the first question. 4. Ask one question at a time. End each active grill turn with exactly one next numbered question. @@ -44,23 +45,31 @@ A completed grill summary is not an instruction to build. Finish when the user has answered the current question. -5. Recompute the frontier. - Mark the answered decision as settled. - Add newly unblocked questions to the frontier. - Remove questions that the answer made irrelevant. +5. Update the open-question list. + Mark each open question with its current state. + Use `- [ ]` for unresolved questions. + Use `- [+]` for questions added by the latest answer. + Use `- [u]` for questions updated by the latest answer. + Use `- [x]` for questions resolved by the latest answer. + Use `- [-]` for questions removed by the latest answer. + Show resolved and removed questions only on the turn after they change. + Keep unresolved questions visible on every active grill turn. + Add questions only when the latest answer directly causes them. + Do not add speculative questions to the open-question list. + Put speculative follow-up questions in the final summary instead. Resolve newly answerable facts yourself before asking again. - Finish when the frontier reflects the current design tree. + Finish when every list change has an explicit marker and cause. 6. Challenge weak decisions. Probe vague words, overloaded terms, and hidden assumptions. Use concrete scenarios to test concept boundaries and edge cases. When code contradicts the user's claim, quote both the claim and the code behavior. - Finish when the next frontier question accounts for the challenge. + Finish when the next open question accounts for the challenge. 7. Close the interview. - Stop when the frontier is empty. + Stop when the open-question list is empty. Output a concise summary of every decision reached. Do not act on the summary unless the user gives a new implementation instruction. @@ -75,3 +84,5 @@ While grill is active, every assistant turn must end with exactly one of these i - a plain statement that grill is paused because the user changed tasks If the turn includes a correction, file edit, apology, or explanation, still end with the next numbered question. +When the user catches incorrect open-question handling, briefly explain the error. +Then show the corrected open-question list.