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-workflow3description: 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.4---56## Sibling skills (local only)78Sibling CloudBase skills ship beside this skill. Use local relative paths such as `../auth-tool-cloudbase/SKILL.md`.910If 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.1112# Spec Workflow1314## Activation Contract1516### Use this first when1718- The request is a new feature, multi-step product change, cross-module integration, or architecture/design task.19- Acceptance criteria are unclear and need to be made explicit before implementation.20- The work involves multiple files, user flows, database design, or UI design that needs staged confirmation.2122### Read before writing code if2324- You are unsure whether the task should go straight to coding or should first go through requirements, design, and task planning.25- The request mentions a new page, a new system, a redesign, a workflow, or a multi-module refactor.2627### Then also read2829- Frontend page or visual design work -> `../ui-design/SKILL.md`30- Advanced data-model work -> `../data-model-creation/SKILL.md`3132### Do NOT use for3334- Small bug fixes with clear scope.35- One-file documentation updates.36- Straightforward config changes.37- Tiny refactors where the user already gave exact implementation instructions.3839### Common mistakes / gotchas4041- Jumping into coding before acceptance criteria are explicit.42- Skipping user confirmation between requirements, design, and tasks.43- Writing vague tasks that do not map back to user-visible outcomes.44- Treating UI work as purely technical implementation without clarifying design intent.4546### Minimal checklist4748- Decide whether the change really needs the full spec flow.49- If yes, stop and produce requirements first.50- If the change is small, low-risk, and acceptance is already clear, allow direct execution without forcing spec artifacts.51- Use EARS-style acceptance criteria.52- Get confirmation before moving to the next phase.5354## When to use this skill5556Use this workflow for structured development when you need to:5758- Define or refine a new feature59- Design complex architecture60- Coordinate changes across modules61- Plan database or UI-heavy work62- Improve requirement quality and acceptance boundaries6364## Decision rule6566### Use the full workflow when6768- The task is medium or large69- The impact spans multiple modules70- Acceptance boundaries are fuzzy71- The user wants disciplined planning before implementation7273### Skip the full workflow when7475- The task is small, low-risk, and already precise76- Goal, scope, and acceptance are already clear enough to execute directly77- The user explicitly wants a direct code change with no planning phase7879## Core workflow8081### Phase 1: Requirements8283Create `specs/<spec_name>/requirements.md`.8485What to do:8687- Restate the problem and scope88- Write user stories89- Write acceptance criteria in EARS style90- Clarify business rules, constraints, and non-goals9192EARS pattern:9394```text95While <optional precondition>, when <optional trigger>, the <system name> shall <system response>96```9798Example:99100```text101When the user submits the form, the booking system shall validate required fields before creating the record.102```103104### Phase 2: Design105106Create `specs/<spec_name>/design.md`.107108What to do:109110- Describe architecture and module boundaries111- Explain technology choices and trade-offs112- Define data model, API, security, and testing strategy as needed113- Use Mermaid only when a diagram materially improves clarity114115### Phase 3: Tasks116117Create `specs/<spec_name>/tasks.md`.118119What to do:120121- Break the design into executable tasks122- Keep tasks specific and reviewable123- Link each task back to the relevant requirement124- Update task status as work progresses125126Task format:127128```markdown129# Implementation Plan130131- [ ] 1. Task title132 - Specific work item133 - Another concrete step134 - _Requirement: 1135```136137### Phase 4: Execution138139Only start implementation after the user confirms the task plan.140141During execution:142143- Keep task status current144- Finish one meaningful unit at a time145- Preserve traceability from change -> task -> requirement146147## Working rules for the agent1481491. Ask follow-up questions when the request is underspecified; do not guess core product behavior.1502. Require confirmation between requirements, design, and task breakdown.1513. Pull in `ui-design` early when the change includes end-user pages or visual decisions.1524. Keep documents concise but testable.1535. Prefer user-visible outcomes over implementation-detail task names.154155## Output expectations156157- `requirements.md` -> problem, scope, user stories, EARS acceptance criteria158- `design.md` -> architecture, technical approach, data/API/security/test notes159- `tasks.md` -> actionable implementation checklist tied to requirements