Use when writing a new Devs specification, or reopening one in a way that changes the workstream contract, and the contract must be clarified with the user before drafting.
Take a new or reopened specification request and turn it into a clear Devs
contract before any drafting begins.
When this role is active for a new or reopened specification, the run must end
with a formal devs/workstreams/<ws-id>/spec.md.
Core principle: every specification begins with direct user questions and real user feedback. Zero-question path is invalid for a new specification.
Use the available context to ask better questions, not to skip clarification.
If the request, the allowed context, the existing code, or external
constraints expose a contract decision, risk, limitation, or scope boundary
that the user has not confirmed yet, bring it to the user as a question
instead of silently absorbing it into the specification.
If an external platform, API, library, or vendor-behavior seam constrains the
workstream, the authoritative source set and access route must be recorded in
## External Authority Sources inside the active spec.md.
Treat this as a contract-level decision, not a file-type heuristic. If any
planned requirement, acceptance rule, compatibility promise, validation rule,
or runtime behavior derives its correctness from external semantics, that is an
external seam even when the edited files are repo-local.
Recording the source table alone is not enough. The authored spec must also
carry the explicit cross-role law, timing law, and evidence-surface
distinctions that follow from that source set.
Before drafting:
AGENTS.md, devs/repo.md, the active workstream state.md, the active
workstream clarification.md, the active workstream spec.md when present,
and only the local guidance explicitly linked from that chain. Before
relying on local code or tests, classify whether any planned requirement,
acceptance rule, compatibility promise, validation rule, or runtime
behavior depends on external platform, API, library, protocol, or
vendor-defined semantics. If yes, read the corresponding authoritative
sources too and record them in
## External Authority Sources with explicit Preferred Access and
Fallback Access routes. Preserve any material qualifiers, API-specific
defaults, omitted-setting branches, opt-out paths, or other
behavior-changing conditions from the source. If no such seam exists,
record N/A only with an explicit explanation of why the workstream
contract does not depend on any external validation rule, protocol default,
platform behavior, or vendor-defined semantics.Contract Surface Grid in devs/workstreams/<ws-id>/clarification.md using the repo
template. Classify all 30 canonical slots from ./question-patterns.md
and expand the grid until it reaches exactly 100 rows before drafting.
Render the grid there as the required markdown table from
./question-patterns.md, not as bullets or prose../question-patterns.md before you ask questions.External Authority Sources is mandatory whenever the workstream touches an
external seam; otherwise record N/A.External Authority Sources alone is insufficient; the authored
spec must also state the cross-role law, timing law, and evidence surfaces
that follow from the recorded source set.External Authority Sources: N/A requires an explicit explanation of why the
workstream contract does not depend on external semantics.No additional user clarification needed does not imply no external authority needed../question-patterns.md
Use it when turning gathered context into user-facing questions../contract-handoff.md
Use it when turning confirmed answers into a durable contract, handoff, and
next-owner state..devs/templates/spec_template.md
Default spec template when no stricter linked local template is in force..devs/templates/state_template.md
Default state template when no stricter linked local template is in force..devs/templates/clarification_template.md
Default clarification template for the full technical clarification trail.no more user questions collapse into no external authority recheck.| enum syntax into spec table headers or other table text
that breaks markdown rendering.devs/workstreams/<ws-id>/spec.md.spec-lessspec-less output
while this role is active.clarification.md, state.md, and spec.md are
still required by this role.devs/workstreams/<ws-id>/clarification.md.Contract Surface Grid and Drafting Gate out of chat unless
the user explicitly asks to see them..devs/templates/ unless stricter
linked local templates are in force../contract-handoff.md for clarification logging, contract handoff, and
next-owner routing.