feat(skills): add grill skill
This commit is contained in:
1
.pi/skills/grill
Symbolic link
1
.pi/skills/grill
Symbolic link
@@ -0,0 +1 @@
|
||||
../../src/skills/grill
|
||||
77
src/skills/grill/SKILL.md
Normal file
77
src/skills/grill/SKILL.md
Normal file
@@ -0,0 +1,77 @@
|
||||
---
|
||||
name: grill
|
||||
description: Stress-test a plan, decision, or design through a one-question-at-a-time interview. Use when the user asks to grill a plan or uses a grill trigger phrase.
|
||||
---
|
||||
|
||||
# grill
|
||||
|
||||
Interview the user until the design tree has no open frontier.
|
||||
The design tree contains each decision and the decisions that depend on it.
|
||||
The frontier contains every question whose prerequisites are settled.
|
||||
|
||||
Do not create glossary, context, or ADR files during grill.
|
||||
Do not begin implementation during or after grill without an explicit user instruction.
|
||||
A completed grill summary is not an instruction to build.
|
||||
|
||||
## Run the interview
|
||||
|
||||
1. Investigate first.
|
||||
Read the conversation, files, and docs that can settle facts or reveal constraints.
|
||||
Resolve factual questions yourself when tools can answer them.
|
||||
Do not ask the user for facts you can find.
|
||||
|
||||
Finish when known facts, constraints, and unresolved decisions are visible.
|
||||
|
||||
2. Build the first frontier.
|
||||
Map the design tree from the known plan or idea.
|
||||
Put only questions with settled prerequisites in the frontier.
|
||||
Defer questions that depend on another open question.
|
||||
|
||||
Finish when each frontier question can receive an answer without guessing another answer.
|
||||
|
||||
3. Start the session.
|
||||
Present the known frontier in short form.
|
||||
Include titles only, not full question bodies.
|
||||
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.
|
||||
|
||||
4. Ask one question at a time.
|
||||
End each active grill turn with exactly one next numbered question.
|
||||
Give concrete options with trade-offs.
|
||||
Give a recommendation and rationale.
|
||||
Wait for the user's answer before the next question.
|
||||
|
||||
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.
|
||||
Resolve newly answerable facts yourself before asking again.
|
||||
|
||||
Finish when the frontier reflects the current design tree.
|
||||
|
||||
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.
|
||||
|
||||
7. Close the interview.
|
||||
Stop when the frontier is empty.
|
||||
Output a concise summary of every decision reached.
|
||||
Do not act on the summary unless the user gives a new implementation instruction.
|
||||
|
||||
Finish when the summary is delivered and grill waits.
|
||||
|
||||
## Turn endings
|
||||
|
||||
While grill is active, every assistant turn must end with exactly one of these items:
|
||||
|
||||
- the next numbered question
|
||||
- the final decision summary
|
||||
- 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.
|
||||
Reference in New Issue
Block a user