Sibling skills (local only)
Sibling CloudBase skills ship beside this skill. Use local relative paths such as ../auth-tool-cloudbase/SKILL.md.
If a referenced sibling skill file is missing from this environment, ask the user to install the full CloudBase plugin (or the missing skill). Do not HTTP-fetch remote skill or protocol markdown into the agent context.
Spec Workflow
Activation Contract
Use this first when
- The request is a new feature, multi-step product change, cross-module integration, or architecture/design task.
- Acceptance criteria are unclear and need to be made explicit before implementation.
- The work involves multiple files, user flows, database design, or UI design that needs staged confirmation.
Read before writing code if
- You are unsure whether the task should go straight to coding or should first go through requirements, design, and task planning.
- The request mentions a new page, a new system, a redesign, a workflow, or a multi-module refactor.
Then also read
- Frontend page or visual design work ->
../ui-design/SKILL.md
- Advanced data-model work ->
../data-model-creation/SKILL.md
Do NOT use for
- Small bug fixes with clear scope.
- One-file documentation updates.
- Straightforward config changes.
- Tiny refactors where the user already gave exact implementation instructions.
Common mistakes / gotchas
- Jumping into coding before acceptance criteria are explicit.
- Skipping user confirmation between requirements, design, and tasks.
- Writing vague tasks that do not map back to user-visible outcomes.
- Treating UI work as purely technical implementation without clarifying design intent.
Minimal checklist
- Decide whether the change really needs the full spec flow.
- If yes, stop and produce requirements first.
- If the change is small, low-risk, and acceptance is already clear, allow direct execution without forcing spec artifacts.
- Use EARS-style acceptance criteria.
- Get confirmation before moving to the next phase.
When to use this skill
Use this workflow for structured development when you need to:
- Define or refine a new feature
- Design complex architecture
- Coordinate changes across modules
- Plan database or UI-heavy work
- Improve requirement quality and acceptance boundaries
Decision rule
Use the full workflow when
- The task is medium or large
- The impact spans multiple modules
- Acceptance boundaries are fuzzy
- The user wants disciplined planning before implementation
Skip the full workflow when
- The task is small, low-risk, and already precise
- Goal, scope, and acceptance are already clear enough to execute directly
- The user explicitly wants a direct code change with no planning phase
Core workflow
Phase 1: Requirements
Create specs/<spec_name>/requirements.md.
What to do:
- Restate the problem and scope
- Write user stories
- Write acceptance criteria in EARS style
- Clarify business rules, constraints, and non-goals
EARS pattern:
While <optional precondition>, when <optional trigger>, the <system name> shall <system response>
Example:
When the user submits the form, the booking system shall validate required fields before creating the record.
Phase 2: Design
Create specs/<spec_name>/design.md.
What to do:
- Describe architecture and module boundaries
- Explain technology choices and trade-offs
- Define data model, API, security, and testing strategy as needed
- Use Mermaid only when a diagram materially improves clarity
Phase 3: Tasks
Create specs/<spec_name>/tasks.md.
What to do:
- Break the design into executable tasks
- Keep tasks specific and reviewable
- Link each task back to the relevant requirement
- Update task status as work progresses
Task format:
# Implementation Plan
- [ ] 1. Task title
- Specific work item
- Another concrete step
- _Requirement: 1
Phase 4: Execution
Only start implementation after the user confirms the task plan.
During execution:
- Keep task status current
- Finish one meaningful unit at a time
- Preserve traceability from change -> task -> requirement
Working rules for the agent
- Ask follow-up questions when the request is underspecified; do not guess core product behavior.
- Require confirmation between requirements, design, and task breakdown.
- Pull in
ui-design early when the change includes end-user pages or visual decisions.
- Keep documents concise but testable.
- Prefer user-visible outcomes over implementation-detail task names.
Output expectations
requirements.md -> problem, scope, user stories, EARS acceptance criteria
design.md -> architecture, technical approach, data/API/security/test notes
tasks.md -> actionable implementation checklist tied to requirements
1---
2name: spec-workflow
3description: Use when medium-to-large changes need explicit requirements, technical design, and task planning before implementation, especially for multi-module work, unclear acceptance criteria, or architecture-heavy requests.
4version: 2.33.2
5alwaysApply: false
6---
7
8## Sibling skills (local only)
9
10Sibling CloudBase skills ship beside this skill. Use local relative paths such as `../auth-tool-cloudbase/SKILL.md`.
11
12If a referenced sibling skill file is missing from this environment, ask the user to install the full CloudBase plugin (or the missing skill). Do **not** HTTP-fetch remote skill or protocol markdown into the agent context.
13
14# Spec Workflow
15
16## Activation Contract
17
18### Use this first when
19
20- The request is a new feature, multi-step product change, cross-module integration, or architecture/design task.
21- Acceptance criteria are unclear and need to be made explicit before implementation.
22- The work involves multiple files, user flows, database design, or UI design that needs staged confirmation.
23
24### Read before writing code if
25
26- You are unsure whether the task should go straight to coding or should first go through requirements, design, and task planning.
27- The request mentions a new page, a new system, a redesign, a workflow, or a multi-module refactor.
28
29### Then also read
30
31- Frontend page or visual design work -> `../ui-design/SKILL.md`
32- Advanced data-model work -> `../data-model-creation/SKILL.md`
33
34### Do NOT use for
35
36- Small bug fixes with clear scope.
37- One-file documentation updates.
38- Straightforward config changes.
39- Tiny refactors where the user already gave exact implementation instructions.
40
41### Common mistakes / gotchas
42
43- Jumping into coding before acceptance criteria are explicit.
44- Skipping user confirmation between requirements, design, and tasks.
45- Writing vague tasks that do not map back to user-visible outcomes.
46- Treating UI work as purely technical implementation without clarifying design intent.
47
48### Minimal checklist
49
50- Decide whether the change really needs the full spec flow.
51- If yes, stop and produce requirements first.
52- If the change is small, low-risk, and acceptance is already clear, allow direct execution without forcing spec artifacts.
53- Use EARS-style acceptance criteria.
54- Get confirmation before moving to the next phase.
55
56## When to use this skill
57
58Use this workflow for structured development when you need to:
59
60- Define or refine a new feature
61- Design complex architecture
62- Coordinate changes across modules
63- Plan database or UI-heavy work
64- Improve requirement quality and acceptance boundaries
65
66## Decision rule
67
68### Use the full workflow when
69
70- The task is medium or large
71- The impact spans multiple modules
72- Acceptance boundaries are fuzzy
73- The user wants disciplined planning before implementation
74
75### Skip the full workflow when
76
77- The task is small, low-risk, and already precise
78- Goal, scope, and acceptance are already clear enough to execute directly
79- The user explicitly wants a direct code change with no planning phase
80
81## Core workflow
82
83### Phase 1: Requirements
84
85Create `specs/<spec_name>/requirements.md`.
86
87What to do:
88
89- Restate the problem and scope
90- Write user stories
91- Write acceptance criteria in EARS style
92- Clarify business rules, constraints, and non-goals
93
94EARS pattern:
95
96```text
97While <optional precondition>, when <optional trigger>, the <system name> shall <system response>
98```
99
100Example:
101
102```text
103When the user submits the form, the booking system shall validate required fields before creating the record.
104```
105
106### Phase 2: Design
107
108Create `specs/<spec_name>/design.md`.
109
110What to do:
111
112- Describe architecture and module boundaries
113- Explain technology choices and trade-offs
114- Define data model, API, security, and testing strategy as needed
115- Use Mermaid only when a diagram materially improves clarity
116
117### Phase 3: Tasks
118
119Create `specs/<spec_name>/tasks.md`.
120
121What to do:
122
123- Break the design into executable tasks
124- Keep tasks specific and reviewable
125- Link each task back to the relevant requirement
126- Update task status as work progresses
127
128Task format:
129
130```markdown
131# Implementation Plan
132
133- [ ] 1. Task title
134 - Specific work item
135 - Another concrete step
136 - _Requirement: 1
137```
138
139### Phase 4: Execution
140
141Only start implementation after the user confirms the task plan.
142
143During execution:
144
145- Keep task status current
146- Finish one meaningful unit at a time
147- Preserve traceability from change -> task -> requirement
148
149## Working rules for the agent
150
1511. Ask follow-up questions when the request is underspecified; do not guess core product behavior.
1522. Require confirmation between requirements, design, and task breakdown.
1533. Pull in `ui-design` early when the change includes end-user pages or visual decisions.
1544. Keep documents concise but testable.
1555. Prefer user-visible outcomes over implementation-detail task names.
156
157## Output expectations
158
159- `requirements.md` -> problem, scope, user stories, EARS acceptance criteria
160- `design.md` -> architecture, technical approach, data/API/security/test notes
161- `tasks.md` -> actionable implementation checklist tied to requirements