2.5 KiB
2.5 KiB
description
| description |
|---|
| Scaffold a new OpenSpec change and validate strictly. |
The user has requested the following change proposal. Use the openspec instructions to create their change proposal.
$ARGUMENTS **Guardrails** - Favor straightforward, minimal implementations first and add complexity only when it is requested or clearly required. - Keep changes tightly scoped to the requested outcome. - Refer to `openspec/AGENTS.md` (located inside the `openspec/` directory—run `ls openspec` or `openspec update` if you don't see it) if you need additional OpenSpec conventions or clarifications. - Identify any vague or ambiguous details and ask the necessary follow-up questions before editing files. - Do not write any code during the proposal stage. Only create design documents (proposal.md, tasks.md, design.md, and spec deltas). Implementation happens in the apply stage after approval.Steps
- Review
openspec/project.md, runopenspec listandopenspec list --specs, and inspect related code or docs (e.g., viarg/ls) to ground the proposal in current behaviour; note any gaps that require clarification. - Choose a unique verb-led
change-idand scaffoldproposal.md,tasks.md, anddesign.md(when needed) underopenspec/changes/<id>/. - Map the change into concrete capabilities or requirements, breaking multi-scope efforts into distinct spec deltas with clear relationships and sequencing.
- Capture architectural reasoning in
design.mdwhen the solution spans multiple systems, introduces new patterns, or demands trade-off discussion before committing to specs. - Draft spec deltas in
changes/<id>/specs/<capability>/spec.md(one folder per capability) using## ADDED|MODIFIED|REMOVED Requirementswith at least one#### Scenario:per requirement and cross-reference related capabilities when relevant. - Draft
tasks.mdas an ordered list of small, verifiable work items that deliver user-visible progress, include validation (tests, tooling), and highlight dependencies or parallelizable work. - Validate with
openspec validate <id> --strictand resolve every issue before sharing the proposal.
Reference
- Use
openspec show <id> --json --deltas-onlyoropenspec show <spec> --type specto inspect details when validation fails. - Search existing requirements with
rg -n "Requirement:|Scenario:" openspec/specsbefore writing new ones. - Explore the codebase with
rg <keyword>,ls, or direct file reads so proposals align with current implementation realities.