- ask-claude v2.4.0 -> v2.6.1: Added mandatory disagreement scan (Step 3.5) with web-reference demand + internal consistency check. Updated callouts for the paste-vs-path rule (now HARD RULE, not just example). - ask-hermes v4.1.1 -> v4.2.0: Added mandatory disagreement scan mirroring ask-claude. - ask-dev v1.0.0 -> v1.1.0: Added mandatory disagreement scan mirroring ask-claude. - create-plan v1.1.0 (new): Multi-agent plan-build dispatcher. Trigger phrases, 10-Q brief script (min as needed, max 10), curator dispatch, capture/handoff format, all 6 failure modes. Companion references: curator-framing-prompt.md, deep-research-dispatch-template.md, ask-claude-validation-template.md, structured-brief-10q.md. 5 rounds of Claude validation on the design plan; final SHIP from ask-hermes peer review.
4.6 KiB
4.6 KiB
Structured 10-Question Brief Template
Reusable planning-interview pattern. Used by
create-planPhase 0 (the dispatcher) and any other agent that needs a frozen brief before delegating work. The curator / peer agent receives this brief as inline text and treats it as the starting point — does NOT re-ask these questions.
When to use
- You (or a dispatcher) are about to dispatch a peer agent for a non-trivial task (plan-build, deep research, design, multi-step implementation).
- The peer needs a complete, frozen starting point — not a back-and-forth.
- Operator is willing to spend ~3-5 minutes answering priority-ordered questions before dispatch.
The 10 questions (priority order)
| # | Dimension | Question | Default if operator says "skip" |
|---|---|---|---|
| Q1 | Scope | What are we building? What does "done" look like? | Curate from the dispatcher's initial message; if unclear, ask once before proceeding. |
| Q2 | Constraints | Existing infrastructure? Must-use / must-avoid? Target environment? | None — proceed with sensible defaults; flag in the deliverable. |
| Q3 | Success criteria | How will we know it works? Acceptance tests? | Define "done" as "all phases complete and reconciled." |
| Q4 | Known unknowns | What are you uncertain about? Risks? Things that have bitten you before? | Disconfirmation clause in the research question (e.g., "verify no recent CVEs, no deprecation notices, no license changes"). |
| Q5 | Target users / audience | Who's using it? Skill level? | Operator is the default audience unless Q1 names otherwise. |
| Q6 | Out of scope | Explicit non-goals? What are we NOT building? | Nothing — agent produces a comprehensive deliverable; operator trims after. |
| Q7 | Performance / scale | Expected load, latency, throughput targets? | "No explicit targets" — agent picks reasonable defaults and notes the choice. |
| Q8 | Security / compliance | Auth, data sensitivity, regulatory constraints? | Public / local-only by default; flag if scope implies otherwise. |
| Q9 | Integration points | External systems, APIs, or services this must work with? | Agent identifies during research; operator corrects. |
| Q10 | Timeline / cost ceiling | Time constraint? Budget ceiling? Priority vs. other work? | "No ceiling" — agent optimizes for correctness. |
Operational rules
- Min as needed, max 10. Surface only the load-bearing dimensions for THIS topic. If Q1 already names the scope and there are no obvious constraints, ask just Q1 and proceed.
- Operator can stop at any Q with "skip," "you decide," or "ask all 10" or "ask just Q5 and Q7" — both honored.
- Hard cap at 10. Don't add Q11.
- Proceed as soon as Q1 (Scope) is answered if the operator signals urgency. The rest are optional.
- One at a time. Never batch the questions into a single "answer all of these" message.
Frozen-brief format (for the peer agent)
After collection, pass the brief to the peer in this exact format:
=== FROZEN BRIEF BEGIN ===
Topic: <topic from operator>
Target save dir: ~/workspace/<current-workspace>/plans/
Q1 (Scope): <answer or "you decide">
Q2 (Constraints): <answer or "you decide">
Q3 (Success): <answer or "you decide">
Q4 (Unknowns): <answer or "you decide">
Q5 (Users): <answer or "you decide">
Q6 (Out-of-scope): <answer or "you decide">
Q7 (Performance): <answer or "you decide">
Q8 (Security): <answer or "you decide">
Q9 (Integration): <answer or "you decide">
Q10 (Timeline): <answer or "you decide">
Mode flags: <none, or e.g. --no-research>
=== FROZEN BRIEF END ===
The peer agent uses this brief as the starting point. It does NOT re-ask. It DOES surface in the deliverable header which Qs were "you decide" so the operator can override.
Why this template exists
- Prevents over-asking. 4 questions was too few (missed security/perf/integration). 10 is the upper bound that still respects operator time.
- Priority-ordered. The first 4 (Scope / Constraints / Success / Unknowns) are the load-bearing dimensions. The rest (Q5-Q10) are scoping details that can be skipped without losing the plan's load-bearing evidence.
- Operator-driven. The operator's "min as needed, max 10" preference is encoded: surface only what's load-bearing, never the full 10 unless asked.
- Reusable. The pattern is class-level — any non-trivial delegated work can benefit from this brief, not just plan-builds.
See Also
create-planskill — uses this as Phase 0subagent-driven-developmentskill — for the delegation pattern that consumes the briefask-hermesskill — for the peer agent execution model