What is CafeKit Spec?#
CafeKit Spec is a spec-driven development workflow for AI coding assistants.
Command chain by platform:
- Claude Code:
/spec-init,/spec-requirements,/spec-design,/spec-tasks,/code,/test,/review,/spec-status - Antigravity:
/spec-init(or@spec-init),/spec-requirements,/spec-design,/spec-tasks,/code,/test,/review,/spec-status
What is spec-driven development?#
Spec-driven development is a methodology where you:
- Plan before coding - Define requirements and design upfront
- Document decisions - Create specifications that serve as documentation
- Break down work - Divide features into manageable, trackable tasks
- Implement systematically - Build with clear guidance and verification
When should I use CafeKit Spec?#
Use CafeKit Spec for:
- Complex features (authentication, payments, admin dashboards)
- Multi-file changes that need coordination
- Features requiring architectural decisions
- Long-running work across multiple sessions
- Team projects needing shared context
Skip it for:
- Simple bug fixes (< 30 minutes)
- Copy changes or typo fixes
- Minor CSS adjustments
- One-line changes
How does it compare to regular AI coding?#
| Traditional AI Coding | CafeKit Spec |
|---|---|
| "Build login" | /spec-init login → structured requirements |
| Vague requirements | /spec-requirements captures detailed needs |
| No architecture doc | /spec-design creates technical blueprint |
| Ad-hoc implementation | /spec-tasks breaks down prioritized work |
| Lost context | /spec-status tracks progress across sessions |
Result: Fewer bugs, better documentation, more consistent results.
Installation & Setup#
How do I install CafeKit Spec?#
npx @haposoft/cafekit-spec
This installs the spec workflow command set to your selected platform.
What are the prerequisites?#
- Node.js 18+
- AI coding assistant (Claude Code or Antigravity)
- Git (for version control)
Can I use CafeKit Spec with other AI assistants?#
CafeKit Spec supports multiple AI coding assistant platforms:
| Platform | Status | Notes |
|---|---|---|
| Claude Code | Available | Full support with / commands |
| Antigravity | Available | Full support with / or @ commands |
The installer automatically detects and configures for your platform.
Where are the spec files stored?#
Specs are stored in .specs/ directory in your project root:
.specs/
└── feature-name/
├── spec.json
├── requirements.md
├── design.md
└── tasks.md
Using Spec Commands#
How do I start a new spec?#
Claude Code:
/spec-init my-feature-name
Antigravity:
/spec-init my-feature-name
# or @spec-init my-feature-name
This creates a .specs/my-feature-name/ directory with initial structure.
What happens in each phase?#
| Phase | Claude Code | Antigravity | Description |
|---|---|---|---|
| Initialize | /spec-init | /spec-init or @ | Creates spec workspace |
| Requirements | /spec-requirements | /spec-requirements or @ | AI asks questions to gather requirements |
| Design | /spec-design | /spec-design or @ | Generates technical architecture document |
| Tasks | /spec-tasks | /spec-tasks or @ | Breaks design into actionable tasks |
| Implement | /code | /code or @ | Implements the next pending task |
| Test | /test | /test or @ | Runs tests and reports failures |
| Review | /review | /review or @ | Reviews correctness, security, and regressions |
| Status | /spec-status | /spec-status or @ | Shows current phase and approvals |
Can I skip phases?#
While possible, it's not recommended. Each phase builds on the previous:
- Design without requirements misses edge cases
- Tasks without design lack technical clarity
- Implementation without tasks is disorganized
How long does a spec take?#
- Simple feature (CRUD, form): 1-2 hours
- Medium feature (auth, API): 3-5 hours
- Complex feature (payments, real-time): 6+ hours
Time includes requirements, design, tasks, implementation, test, and review.
Can I work on multiple specs at once?#
Yes. Each spec is independent in its own .specs/feature-name/ directory. Switch between them by specifying the spec name:
/spec-status feature-a
/spec-status feature-b
Troubleshooting#
Command not found#
Problem: Spec commands don't work
Solutions:
- Check files exist in the correct folder:
- Claude Code:
.claude/commands/ - Antigravity:
.agent/workflows/
- Claude Code:
- Restart your AI coding assistant
- Re-run installer:
npx @haposoft/cafekit-spec - Verify you selected the correct platform during installation
Spec directory not created#
Problem: /spec-init runs but no .specs/ folder
Solution:
- Check you have write permissions in project root
- Ensure you're in the correct project directory
- Try creating
.specs/manually first
AI doesn't understand my feature#
Problem: Requirements or design are off-target
Solutions:
- Be more specific in
/spec-initdescription - Clarify during
/spec-requirementsQ&A - Edit generated files manually if needed
- Re-run the phase with more context
Tasks are too big/too small#
Problem: Task breakdown doesn't fit your workflow
Solution:
- Edit
.specs/[feature-name]/tasks.mdmanually - Re-run
/spec-taskswith different instructions - Split or combine tasks as needed
Best Practices#
Should I commit specs to Git?#
Yes. Commit specs to share context with your team:
git add .specs/my-feature/
git commit -m "spec: add user authentication spec"
Specs serve as living documentation.
How do I handle changing requirements?#
- Re-run
/spec-requirementswith new context - Re-run
/spec-designto update architecture - Re-run
/spec-tasksfor new task breakdown - Continue implementation
Specs are iterative - update them as needs change.
What makes a good spec name?#
Use kebab-case, descriptive names:
✅ Good:
user-authenticationpayment-gateway-integrationdark-mode-toggle
❌ Avoid:
feature-1new-stufffix-bug
Advanced Questions#
Can I use the same spec across different platforms?#
Yes. Specs created with CafeKit are platform-agnostic. The .specs/ directory and its contents work identically whether you're using Claude Code or Antigravity. You can:
- Start a spec in Claude Code and continue in Antigravity
- Share specs between team members using different platforms
- Migrate between platforms without losing spec data
Can I customize the workflow?#
Yes. After installation, edit the .md files in your platform's commands folder:
Claude Code:
.claude/commands/
├── spec-init.md # Customize init process
├── spec-requirements.md # Change question style
└── ...
Antigravity:
.agent/workflows/
├── spec-init.md # Customize init process
├── spec-requirements.md # Change question style
└── ...
Changes take effect immediately.
How do I archive completed specs?#
Move specs to .specs/archive/ when done:
mv .specs/completed-feature .specs/archive/
This keeps your workspace clean while preserving documentation.
Can I use spec templates?#
Yes. Create steering context in .specs/steering/:
.specs/steering/
├── tech.md # Technology standards
├── structure.md # Project conventions
└── product.md # Product context
All new specs will reference these files.
What if I get stuck during implementation?#
- Run
/spec-statusto see current state - Review
design.mdfor guidance - Check
.specs/[feature-name]/tasks.mdfor current task details - Ask Claude Code specific questions about the task
Still Have Questions?#
- Browse GitHub Issues - See if others had similar questions
- Open a new issue - We're happy to help
- Check the Spec Workflow Guide - Detailed walkthrough
Happy spec-driven coding! ☕✨