Feature Management Guide
Complete guide to managing features in Spec-Driven Development projects using natural language commands and automated tracking.
Complete guide to managing features in Spec-Driven Development projects using natural language commands and automated tracking.
Complete guide to managing features in Spec-Driven Development projects using natural language commands and automated tracking.
Claude automatically tracks feature status and provides natural language feature management for both greenfield and brownfield projects. This eliminates manual tracking and makes it easy to add, reorder, and monitor features throughout development.
**Just describe what you want:**
"Add a new feature for user notifications"
"We need email integration"
"Let's add an admin dashboard"
"I want to build a reporting module"**Claude will:**
**Example interaction:**
User: "Add a feature for user notifications"
Claude: I'll add "user-notifications" as a new feature. Let me ask a few questions:
1. **Priority**: High, Medium, or Low?
2. **Dependencies**: Does this depend on any existing features? (e.g., user-authentication)
3. **Brief description**: What should this feature do?
[User answers...]
Claude:
β
Feature added: user-notifications
π Updated Feature List:
1. user-authentication (In Progress - 80%)
2. profile-management (Pending)
3. user-notifications (Pending) β NEW
4. admin-dashboard (Pending)
Would you like to start specifying this feature now, or continue with the current feature?**Natural commands:**
"Move user-notifications before profile-management"
"Let's do admin-dashboard first"
"Swap the order of reporting and analytics"
"Prioritize email integration"**Example interaction:**
User: "Let's do user-notifications before profile-management"
Claude:
Current order:
1. user-authentication (In Progress)
2. profile-management (Pending)
3. user-notifications (Pending)
4. admin-dashboard (Pending)
Proposed new order:
1. user-authentication (In Progress)
2. user-notifications (Pending) β MOVED UP
3. profile-management (Pending)
4. admin-dashboard (Pending)
This will also update dependencies if needed.
Is this correct? (yes/no)
[User: yes]
Claude:
β
Feature order updated!
π Feature Status: user-authentication (In Progress - 80%) β Next: user-notifications**Natural commands:**
"Remove the reporting feature"
"Delete admin-dashboard from the list"
"We don't need email integration anymore"**Example interaction:**
User: "Remove the reporting feature"
Claude:
β οΈ Warning: This will remove 'reporting' feature from the project.
**Impact Analysis:**
- Features depending on this: None
- Progress lost: 0% (not started)
- Artifacts to remove: None (not yet created)
Are you sure you want to remove this feature? (yes/no)
[User: yes]
Claude:
β
Feature 'reporting' removed.
π Updated Feature List:
1. user-authentication (Complete - 100%)
2. profile-management (In Progress - 60%)
3. admin-dashboard (Pending)**Natural commands:**
"Show feature status"
"What's the current progress?"
"List all features"
"Show me the feature dashboard"**Displays full dashboard:**
π Project Feature Status Dashboard
π― CURRENT FEATURE
ββ profile-management (Planning - 40% complete)
β ββ β
Requirements specified
β ββ π Implementation plan in progress
β ββ βΈοΈ Tasks not started
β ββ βΈοΈ Implementation not started
β Blockers: None
β Dependencies: user-authentication β
β
COMPLETED FEATURES (2)
ββ database-setup (100% complete)
ββ user-authentication (100% complete)
π UPCOMING FEATURES (2)
ββ user-notifications (depends on: user-authentication β
)
ββ admin-dashboard (depends on: user-authentication β
, profile-management βΈοΈ)
β οΈ BLOCKED FEATURES (0)
**Overall Progress:** 2 of 5 features complete (40%)**Natural commands:**
"What features depend on user-authentication?"
"What does profile-management depend on?"
"Show me the dependency tree"
"Can we start admin-dashboard yet?"**Example interaction:**
User: "What features depend on user-authentication?"
Claude:
π user-authentication Dependencies
**Features that depend on user-authentication:**
ββ profile-management (βΈοΈ Pending)
ββ user-notifications (βΈοΈ Pending)
ββ admin-dashboard (βΈοΈ Pending)
**Status:** user-authentication is β
Complete
**Impact:** 3 features are now unblocked and ready to start
Would you like to start one of these features now?Each feature automatically tracks its progress through the SDD workflow:
| Stage | Progress | Indicators | Next Step | |-------|----------|------------|-----------| | **Not Started** | 0% | No artifacts exist | Run `/speckit.specify` | | **Specified** | 20% | `specify.md` exists | Run `/speckit.plan` | | **Planned** | 40% | `plan.md` exists | Run `/speckit.tasks` | | **Tasked** | 60% | `tasks.md` exists | Run `/speckit.implement` | | **In Progress** | 80% | Implementation started | Complete implementation | | **Complete** | 100% | Tests pass, feature done | Move to next feature |
After every SDD command, Claude shows a brief status line:
π **Feature Status:** profile-management (Planning) β Next: user-notifications
Progress: [βββββ] 40% | Completed: 2 of 5 features | Dependencies: user-authentication β
**Components:**
**Natural language:**
"Profile-management depends on user-authentication"
"Admin-dashboard needs both user-auth and profile-management"
"User-notifications requires user-authentication"**Claude automatically:**
**Before starting a feature:**
π Can we start profile-management?
Checking dependencies...
β
user-authentication (complete)
β
database-setup (complete)
All dependencies satisfied! Ready to proceed.**If dependencies not met:**
π Can we start admin-dashboard?
Checking dependencies...
β
user-authentication (complete)
βΈοΈ profile-management (in progress - 60%)
β οΈ Not all dependencies satisfied.
Blocked by: profile-management (needs 40% more progress)
Estimated wait: Complete profile-management first**Claude automatically detects circular dependencies:**
β οΈ Warning: Circular dependency detected!
feature-A depends on feature-B
feature-B depends on feature-C
feature-C depends on feature-A
**How to resolve:**
1. Remove one of the dependencies
2. Extract shared functionality into a new base feature
3. Reconsider the feature boundaries
Would you like help resolving this?.speckit/
βββ constitution.md # Project-wide principles
βββ features/
β βββ 001-database-setup/
β β βββ specify.md # β
Complete
β β βββ plan.md
β β βββ tasks.md
β β βββ implementation/ # Code generated
β βββ 002-user-auth/
β β βββ specify.md # β
Complete
β β βββ plan.md
β β βββ tasks.md
β β βββ implementation/
β βββ 003-profile-mgmt/
β β βββ specify.md # π In Progress
β β βββ plan.md
β β βββ tasks.md # βΈοΈ Not started
β βββ 004-user-notifications/
β β βββ specify.md # βΈοΈ Pending
β βββ 005-admin-dashboard/
β βββ (empty) # βΈοΈ Not started
βββ .claude/commands/ # SDD slash commands**Recommended pattern:**
**Avoid:**
**Adding multiple features at once:**
User: "Add these features: user-notifications, email-integration, admin-dashboard, reporting"
Claude:
I'll add 4 new features. For each, I'll need some details:
**1. user-notifications**
- Priority? (High/Medium/Low)
- Dependencies?
- Brief description?
[Repeat for each feature...]
Claude:
β
Added 4 features:
1. user-notifications (High priority, depends on: user-auth)
2. email-integration (Medium priority, depends on: user-auth)
3. admin-dashboard (High priority, depends on: user-auth, profile-mgmt)
4. reporting (Low priority, depends on: admin-dashboard)
π Total features: 7 (3 complete, 1 in progress, 3 pending)**For common feature types, Claude can use templates:**
User: "Add a CRUD feature for products"
Claude:
I'll create a CRUD feature using the standard template:
**Features to add:**
1. product-list (display all products)
2. product-create (create new product)
3. product-edit (update existing product)
4. product-delete (remove product)
Or would you prefer a single "product-management" feature with all CRUD operations?
**Choose:**
A) 4 separate features (more granular tracking)
B) 1 combined feature (simpler, faster)**Combining related features:**
User: "Merge user-notifications and email-integration into one feature"
Claude:
I'll merge these features:
**Current:**
- user-notifications (Specified - 20%)
- email-integration (Pending - 0%)
**Merged feature:**
- user-communication (combines both)
- Inherits progress from user-notifications (20%)
- Includes email integration requirements
- Dependencies: user-authentication β
**Artifacts to merge:**
- Combine specify.md files
- Update dependencies
Proceed with merge? (yes/no)**Starting fresh:**
**Example workflow:**
1. Initialize project
2. Create constitution
3. Specify first feature β Feature tracking begins
4. Add more features as needed
5. Track all features through completion**Working with existing code:**
**Example workflow:**
1. Analyze existing codebase
2. Reverse-engineer major features (optional)
3. Add new feature β Track alongside existing
4. Show integration impact on status
5. Track dependencies on existing features**Status display for brownfield:**
π Project Feature Status Dashboard
π EXISTING FEATURES (Documented)
ββ user-authentication (Existing - documented)
ββ profile-management (Existing - documented)
ββ basic-reporting (Existing - not documented)
π― CURRENT SDD FEATURE
ββ advanced-analytics (Planning - 40% complete)
β Dependencies: basic-reporting (existing β
)
π UPCOMING SDD FEATURES (2)
ββ email-notifications (depends on: user-authentication existing β
)
ββ admin-dashboard (depends on: advanced-analytics βΈοΈ)β **Good:**
β **Avoid:**
**Too granular:**
- login-form
- login-validation
- login-error-handling
- login-success-redirect**Better:**
- user-authentication (includes all login functionality)**Too coarse:**
- user-module (authentication, profile, preferences, notifications)**Better:**
- user-authentication
- user-profile
- user-preferences
- user-notifications**Declare early:**
When specifying: "This depends on user-auth"
Not later: "Oh, we need user-auth first"**Keep shallow:**
β
Feature A β Feature B β Feature C (3 levels)
β Feature A β B β C β D β E β F (6 levels)**Let Claude track automatically:**
**Example:**
User: "We finished implementing user-auth"
Claude:
β
Updating user-authentication to 100% complete!
Running final checks:
- β
specify.md exists
- β
plan.md exists
- β
tasks.md exists
- β
Implementation complete
- π Checking tests...
Tests passing? (yes/no)
[User: yes]
Claude:
β
user-authentication marked as COMPLETE!
π Features: 3 of 7 complete (43%)
π― Next feature: profile-management
Ready to start profile-management? (yes/no)**Problem:** Claude doesn't recognize a feature
**Solution:**
User: "Why isn't email-integration showing in the status?"
Claude:
Let me check the feature list...
I don't see "email-integration" in the tracked features.
**Possible reasons:**
1. Feature was never added
2. Feature was removed
3. Feature has a different name
Would you like to:
A) Add "email-integration" as a new feature
B) Show me all tracked features
C) Search for similar feature names**Problem:** Unclear what depends on what
**Solution:**
User: "What's blocking admin-dashboard?"
Claude:
π admin-dashboard Dependency Analysis
**Required dependencies:**
ββ user-authentication β
(complete)
ββ profile-management βΈοΈ (in progress - 60%)
ββ reporting βΈοΈ (pending - not started)
**Blocking status:**
β οΈ Blocked by 2 features:
1. profile-management (needs 40% more)
2. reporting (not started)
**Recommendation:**
Complete profile-management, then start reporting before admin-dashboard.
Estimated time to unblock: [Based on current velocity]**Problem:** Feature showing incorrect progress
**Solution:**
User: "User-auth shows 40% but we finished it"
Claude:
Let me verify user-authentication status...
**Artifact check:**
- β
specify.md exists
- β
plan.md exists
- β
tasks.md exists
- β Implementation not detected
**Issue:** Implementation not marked complete
**To fix:**
1. Confirm implementation is done
2. Confirm tests pass
3. I'll update status to 100%
Is implementation complete with passing tests? (yes/no)
[User: yes]
Claude:
β
Updated user-authentication to 100% complete!| User Intent | Example Command | Claude Action | |-------------|----------------|---------------| | Add feature | "Add user-notifications" | Ask questions, create feature | | Reorder | "Move X before Y" | Show current/proposed order, update | | Remove | "Remove feature X" | Warn about impact, remove if confirmed | | Show status | "Show features" | Display full dashboard | | Check deps | "What blocks X?" | Show dependency tree and blockers | | Start feature | "Let's work on X" | Switch current feature to X | | Mark complete | "We finished X" | Verify completion, update to 100% |
Claude automatically detects these patterns:
Feature management is automatically integrated with all SDD commands:
/speckit.specify β Asks about features, tracks new feature
/speckit.plan β Shows feature status, updates progress to 40%
/speckit.tasks β Updates progress to 60%
/speckit.implement β Updates progress to 80%
[Tests pass] β Updates progress to 100%, shows next featureEvery command includes a **brief status line** in its summary, and users can request **full status** anytime with option `[D]` or by asking "show feature status".
---
For more information, see: