Spec-Driven Development — Maquina
Claude Code plugin for Rails spec-driven development. Shape features, break down tasks, and hand off self-contained specs to Claude Code with six slash commands.
A Claude Code plugin for Rails-focused spec-driven development. Shape a feature into a structured spec, break it into tasks, and hand it off to Claude Code for implementation — with a progress file that survives across sessions.
What Is This?
A Claude Code agent that turns rough feature ideas into implementation-ready specs:
- Plans your product from existing MVP documentation (mission, roadmap, tech stack)
- Shapes feature specs through targeted discovery questions
- Writes formal specifications with user stories, acceptance criteria, and scope boundaries
- Breaks each spec into ordered, self-contained tasks
- Discovers coding standards and tribal knowledge already present in the codebase
- Tracks progress in a YAML file so any session can resume where the last one stopped
The goal: features built to spec instead of code thrown together, with a paper trail you can point Claude at later.
The Workflow
| Step | Command | Output |
|---|---|---|
| 1. Initialize | /sdd-init |
sdd/ directory + progress.yml |
| 2. Plan the product | /sdd-plan |
mission.md, roadmap.md, tech-stack.md |
| 3. Shape a feature | /sdd-shape |
planning/requirements.md + formal spec.md |
| 4. Break into tasks | /sdd-tasks |
tasks.md with ordered task groups |
| 5. Discover standards | /sdd-discover-standards |
Extracted patterns in standards/ |
| 6. Check progress | /sdd-status |
Current phase, completed items, next step |
Steps 1–2 are one-time setup. Steps 3–6 repeat per feature. You can also drive the workflow with natural language — the agent responds to “shape a spec for comments” or “what’s next?” without requiring the slash commands.
Quick Start
1. Add the Marketplace
/plugin marketplace add maquina-app/rails-claude-code
2. Install the Plugin
/plugin install spec-driven-development@maquina
3. Initialize in Your Project
> /sdd-init
The agent creates the sdd/ directory, a progress file, and the folder structure the rest of the workflow depends on.
4. Plan the Product
> /sdd-plan
If MVP Creator documentation already exists in the project, the agent reuses it. Otherwise it asks you the product-planning questions directly.
5. Shape Your First Feature
> /sdd-shape user authentication
The agent asks the clarifying questions, writes requirements, and produces a spec ready for task breakdown.
Slash Commands
| Command | What It Does |
|---|---|
/sdd-init |
Bootstrap the sdd/ directory and progress.yml for a project |
/sdd-plan |
Create mission, roadmap, and tech-stack documents from MVP docs or discovery |
/sdd-shape |
Shape a feature into requirements and a formal spec |
/sdd-tasks |
Generate an ordered task breakdown from a spec |
/sdd-status |
Show current phase, completed steps, and next action |
/sdd-discover-standards |
Extract coding patterns and tribal knowledge from the codebase |
What You’ll Get
Each feature lives in its own folder under sdd/specs/:
sdd/
├── progress.yml # Workflow state across sessions
├── product/
│ ├── mission.md # Product vision
│ ├── roadmap.md # Feature priorities
│ └── tech-stack.md # Technology choices
├── standards/ # Coding standards discovered in your code
│ ├── global/
│ ├── backend/
│ └── frontend/
└── specs/
└── 2026-04-16-user-auth/
├── planning/
│ ├── requirements.md # Gathered requirements
│ └── visuals/ # Mockups, wireframes (optional)
├── spec.md # Formal specification
└── tasks.md # Ordered task breakdown
Specs are self-contained: once shaped, Claude can execute them without needing to replay the conversation that produced them.
Usage Examples
Start From an Existing MVP
> /sdd-plan
If you ran MVP Creator earlier, the agent pulls directly from business-plan.md and technical-guide.md instead of asking the same questions again.
Shape a Feature From an Idea
> I want to add comments to posts
The agent asks for scope, user roles, moderation rules, and related code — then writes requirements and a spec.
Break a Spec Into Tasks
> /sdd-tasks for the user-auth spec
Produces grouped tasks (database layer, models, controllers, views, tests) with acceptance criteria.
Resume After a Break
> /sdd-status
Reads progress.yml and reports exactly where you left off — no context-replay needed.
Capture Tribal Knowledge
> /sdd-discover-standards
The agent scans your codebase for recurring patterns (naming conventions, controller structure, test style) and writes them into sdd/standards/ so future specs align with your existing code.
Package Contents
spec-driven-development/
├── agents/spec-driven-development.md # Main agent
├── README.md # Full documentation
├── QUICKSTART.md # Quick reference
├── commands/ # 6 slash commands
│ ├── sdd-init.md
│ ├── sdd-plan.md
│ ├── sdd-shape.md
│ ├── sdd-tasks.md
│ ├── sdd-status.md
│ └── sdd-discover-standards.md
├── scripts/
│ ├── init_sdd.sh # Bootstrap SDD structure
│ ├── new_spec.sh # Create a new spec folder
│ └── status.sh # Show progress
├── references/
│ ├── rails-standards.md # Rails conventions
│ ├── hotwire-patterns.md # Turbo/Stimulus patterns
│ └── document-templates.md # Spec templates
└── templates/
├── standard-template.md # Spec template
└── progress.yml # Progress-tracking file
Team Installation
Add to your project’s .claude/settings.json:
{
"extraKnownMarketplaces": {
"maquina": {
"source": {
"source": "github",
"repo": "maquina-app/rails-claude-code"
}
}
},
"enabledPlugins": [
"spec-driven-development@maquina"
]
}
Commit sdd/ alongside your code. Every teammate — human or AI — picks up the same plan, specs, and standards.