- Version: 1.0
Executes the complete story development workflow in sequence, automating progression from creation through deployment, retrospective, and archival.
/plugin marketplace add ninthspace/claude-code-marketplace/plugin install sdd@ninthspace-marketplacePurpose: Execute the complete story development workflow in sequence, automating the progression through all stages from story creation to production deployment, retrospective completion, and archival.
Syntax: /sdd:story-flow <prompt|story_id> [--start-at=step] [--stop-at=step] [--auto]
| Parameter | Type | Required | Default | Description | Validation |
|---|---|---|---|---|---|
| prompt|story_id | string | Yes | - | Story prompt/title or existing story ID (e.g., STORY-2025-001, STORY-DUE-001) | Non-empty string |
| --start-at | string | No | new | Start at specific step (new|start|implement|review|qa|validate|save|ship|complete) | Valid step name |
| --stop-at | string | No | complete | Stop at specific step | Valid step name |
| --auto | flag | No | false | Skip confirmations between steps | Boolean flag |
PARSE input to determine if it's a new prompt or existing story ID:
STORY-[A-Z0-9]+-\d+: Use as existing story ID
VALIDATE start-at and stop-at parameters:
DISPLAY workflow plan:
📋 STORY WORKFLOW PLAN
═══════════════════════
Story: [prompt or ID]
Sequence: [start-at] → [stop-at]
Mode: [auto ? "Automatic" : "Interactive"]
Steps to execute:
[list of steps that will run]
STEP 1: /sdd:story-new (IF start-at is "new")
STORY-[A-Z0-9]+-\d+/sdd:story-new with prompt as story titleSTEP 2: /sdd:story-start (IF in range)
/sdd:story-start [story_id]STEP 3: /sdd:story-implement (IF in range)
/sdd:story-implement [story_id]/sdd:story-saveSTEP 4: /sdd:story-review (IF in range)
/sdd:story-review [story_id]STEP 5: /sdd:story-qa (IF in range)
/sdd:story-qa [story_id]/sdd:story-flow [story_id] --start-at=qaSTEP 6: /sdd:story-validate (IF in range)
/sdd:story-validate [story_id]STEP 7: /sdd:story-save (IF in range)
/sdd:story-save with auto-generated commit messageSTEP 8: /sdd:story-ship (IF in range)
/sdd:story-ship [story_id]/sdd:story-rollback [story_id] if neededSTEP 9: /sdd:story-complete (IF in range AND is stop-at)
/sdd:story-complete [story_id]/sdd:story-complete [story_id]DISPLAY workflow completion status:
✅ STORY WORKFLOW COMPLETED
═══════════════════════════
Story: [story_id] - [Title]
Status: [current stage]
Completed Steps:
✓ Story created/loaded
✓ Development started (branch: [name])
✓ Implementation generated
✓ Code review passed
✓ QA tests passed
✓ Validation successful
✓ Changes committed
✓ Deployed to production
✓ Story completed and archived
[IF stopped before complete:]
⏸️ Workflow Paused
Next Step: /sdd:story-flow [story_id] --start-at=[next-step]
[IF any warnings:]
⚠️ Warnings:
[list of non-blocking issues]
Total Duration: [time elapsed]
Next Actions:
[context-appropriate suggestions]
INPUT:
/sdd:story-flow "Add user registration form with email verification"
PROCESS:
→ Step 1/9: Creating story...
✅ Story created: STORY-2025-015
→ Prompt: Continue to start development? (y/n) y
→ Step 2/9: Starting development...
✅ Branch created: feature/registration-015
→ Prompt: Continue to implementation? (y/n) y
→ Step 3/9: Generating implementation...
✅ Files created: RegistrationForm.php, registration-form.blade.php, RegistrationTest.php
→ Prompt: Continue to review? (y/n) y
→ Step 4/9: Running code review...
✅ Review passed: 0 issues found
→ Prompt: Continue to QA? (y/n) y
→ Step 5/9: Running QA tests...
✅ All tests passed (Unit: 5, Feature: 3, Browser: 2)
→ Prompt: Continue to validation? (y/n) y
→ Step 6/9: Validating story...
✅ All acceptance criteria met
→ Prompt: Ready to save and ship? (y/n) y
→ Step 7/9: Committing changes...
✅ Committed: "feat: add user registration form with email verification"
→ Prompt: Continue to ship? (y/n) y
→ Step 8/9: Shipping to production...
✅ Merged to main, deployed successfully
→ Prompt: Complete story and archive? (y/n) y
→ Step 9/9: Completing and archiving story...
✅ Story file updated with retrospective and metrics
✅ Story archived to /docs/stories/completed/
OUTPUT:
✅ STORY WORKFLOW COMPLETED
═══════════════════════════
Story: STORY-2025-015 - Add user registration form
Status: completed
All steps completed successfully ✓
Total Duration: 13 minutes
INPUT:
/sdd:story-flow STORY-2025-010 --start-at=qa --auto
PROCESS:
→ Loading story: STORY-2025-010
→ Starting from: qa
→ Auto mode: enabled
→ Step 1/5: Running QA tests...
✅ All tests passed
→ Step 2/5: Validating story...
✅ Validation successful
→ Step 3/5: Committing changes...
✅ Changes committed
→ Step 4/5: Shipping to production...
✅ Deployed successfully
→ Step 5/5: Completing and archiving story...
✅ Story completed and archived
OUTPUT:
✅ STORY WORKFLOW COMPLETED
Story: STORY-2025-010
Executed: qa → validate → save → ship → complete
Duration: 4 minutes
INPUT:
/sdd:story-flow STORY-DUE-001 --start-at=start
PROCESS:
→ Detected phase-based story: STORY-DUE-001
→ Found in: /docs/project-context/phases/phase-due-dates/
→ Starting from: start
→ Skipping story creation (already exists)
→ Step 1/7: Starting development...
✅ Branch created: feature/due-001-database-schema
→ Prompt: Continue to implementation? (y/n) y
→ Step 2/7: Generating implementation...
✅ Migration and model files created
→ Prompt: Continue to review? (y/n) y
[continues through workflow...]
OUTPUT:
✅ STORY WORKFLOW COMPLETED
Story: STORY-DUE-001 - Add Due Date Database Schema
Phase: due-dates
Duration: 8 minutes
INPUT:
/sdd:story-flow "Fix login page responsive layout" --stop-at=review
PROCESS:
→ Step 1/4: Creating story...
✅ Story created: STORY-2025-016
→ Step 2/4: Starting development...
✅ Branch created: feature/login-layout-016
→ Step 3/4: Generating implementation...
✅ Implementation complete
→ Step 4/4: Running code review...
✅ Review passed
OUTPUT:
⏸️ WORKFLOW PAUSED AT: review
═══════════════════════════
Story: STORY-2025-016 - Fix login page layout
Status: in-review
Completed: new → start → implement → review
Next: /sdd:story-flow STORY-2025-016 --start-at=qa
To resume full workflow:
/sdd:story-flow STORY-2025-016 --start-at=qa --auto
INPUT:
/sdd:story-flow STORY-2025-012 --start-at=qa --auto
PROCESS:
→ Step 1/4: Running QA tests...
❌ Tests failed: 2 failures in Feature tests
OUTPUT:
❌ WORKFLOW HALTED AT: qa
═══════════════════════════
Story: STORY-2025-012
Failed Tests:
- Feature\TaskCompletionTest::test_task_can_be_marked_complete
- Feature\TaskCompletionTest::test_completed_task_updates_timestamp
QA must pass before proceeding.
Next Actions:
1. Review test failures above
2. Fix implementation issues
3. Run tests: vendor/bin/pest --filter=TaskCompletion
4. Resume workflow: /sdd:story-flow STORY-2025-012 --start-at=qa
IF story_id found in /docs/stories/completed/:
- SHOW: Story already completed
- OFFER: View story details or create new version
- SUGGEST: /sdd:story-new for related feature
- EXIT workflow
IF user cancels mid-workflow:
- SHOW: Current step and status
- SAVE: Workflow state
- SUGGEST: Resume command with --start-at
- EXIT gracefully
IF starting mid-workflow and previous steps incomplete:
- DETECT: Missing prerequisites
- WARN: "Story implementation not found, cannot run QA"
- SUGGEST: Start from earlier step
- OFFER: Continue anyway (risky) or restart
/sdd:story-new or check story ID/sdd:story-new - Create individual story (Step 1)/sdd:story-start - Start development (Step 2)/sdd:story-implement - Generate code (Step 3)/sdd:story-review - Code review (Step 4)/sdd:story-qa - Run tests (Step 5)/sdd:story-validate - Final validation (Step 6)/sdd:story-save - Commit changes (Step 7)/sdd:story-ship - Deploy to production (Step 8)/sdd:story-complete - Complete story with retrospective and archive (Step 9)/sdd:story-rollback - Rollback if issues arise--auto) speeds up workflow but still halts on errors