specification-writing
npx machina-cli add skill a5c-ai/babysitter/specification-writing --openclawSpecification Writing
Overview
Write comprehensive feature specifications from business-level descriptions. Produces requirements, user stories, acceptance criteria, and scope boundaries that define WHAT to build without prescribing HOW.
When to Use
- Defining a new feature before planning or implementation
- Formalizing vague feature requests into structured requirements
- Clarifying scope boundaries for a feature area
- Establishing acceptance criteria for user stories
Key Principle
Specifications describe desired behavior from the user's perspective. They define what the system should do, not how it should be built. Business value must be explicit in every requirement.
Process
- Elicit requirements - Extract functional and non-functional requirements from feature description
- Write user stories - Author stories in standard format with personas
- Define acceptance criteria - Testable conditions for each story (Given/When/Then)
- Identify edge cases - Error scenarios and boundary conditions
- Clarify gaps - Surface and resolve ambiguities and contradictions
- Document assumptions - Make implicit assumptions explicit
- Define scope - Clearly delineate in-scope vs. out-of-scope
- Human review - Approve specification before planning
Tool Use
Invoke via babysitter process: methodologies/spec-kit/spec-kit-specification
Full pipeline: methodologies/spec-kit/spec-kit-orchestrator
Source
git clone https://github.com/a5c-ai/babysitter/blob/main/plugins/babysitter/skills/babysit/process/methodologies/spec-kit/skills/specification-writing/SKILL.mdView on GitHub Overview
Specification Writing produces comprehensive feature specifications from business-level descriptions. It yields requirements, user stories, acceptance criteria, and scope boundaries that define WHAT to build without prescribing HOW. It emphasizes business value and testability in every requirement.
How This Skill Works
Elicit requirements from feature descriptions, write user stories in standard format with personas, and define acceptance criteria using Given/When/Then. Identify edge cases, clarify gaps, document assumptions, and delineate scope before human review. Invoke via babysitter process: `methodologies/spec-kit/spec-kit-specification` or full pipeline `methodologies/spec-kit/spec-kit-orchestrator`.
When to Use It
- Defining a new feature before planning or implementation
- Formalizing vague feature requests into structured requirements
- Clarifying scope boundaries for a feature area
- Establishing acceptance criteria for user stories
- Resolving ambiguities and contradictions in feature requests
Quick Start
- Step 1: Elicit requirements from the feature description and identify scope
- Step 2: Write user stories with personas and attach Given/When/Then acceptance criteria
- Step 3: Document edge cases, assumptions, and perform a human review before planning
Best Practices
- Elicit both functional and non-functional requirements with stakeholder input
- Write user stories with clear personas and value statements
- Define acceptance criteria for each story using Given/When/Then
- Identify edge cases and boundary conditions to prevent gaps
- Document assumptions and surface ambiguities early for resolution
Example Use Cases
- Spec for exporting order data to CSV with filter and date-range scope, including acceptance criteria
- User stories for a user registration feature with email verification and retry logic
- Search feature with pagination, relevance ranking, and error handling criteria
- Beta feature toggle implementation with rollout criteria and rollback conditions
- Form input validation rules including error messaging and accessibility considerations