Managing Multiple Features
Real projects have multiple features in flight. Learn how to manage them without losing context or duplicating work.
Time: 15 minutes
Outcome: Understand project-level spec management
- Completed Your First Feature with AI
- Basic familiarity with LeanSpec commands
Try It Now
Get hands-on with a pre-configured dashboard project:
npx lean-spec init --example dashboard-widgets
cd dashboard-widgets
npm install
npm run dev
Then prompt your AI tool:
- GitHub Copilot CLI
- Claude Code
- Gemini CLI
- IDE
# Make sure you have GitHub Copilot CLI installed
npm install -g @github/copilot
# Send the prompt to Copilot CLI
copilot -p "Help me add three new widgets to this dashboard" \
--files specs/ \
--add-dir .
# Make sure you have Claude Code installed
curl -fsSL https://claude.ai/install.sh | bash
# Create soft link to CLAUDE.md from the system prompt AGENTS.md
ln -s AGENTS.md CLAUDE.md
# Send the prompt to Claude Code
claude prompt \
"Help me add three new widgets to this dashboard" \
--include-files specs/ \
--include-dir .
# Make sure you have Gemini CLI installed
npm install -g @google/gemini-cli
# Create soft link to GEMINI.md from the system prompt AGENTS.md
ln -s AGENTS.md GEMINI.md
# Send the prompt to Gemini CLI
gemini -p "Help me add three new widgets to this dashboard" -y
In your IDE with an AI coding assistant (GitHub Copilot, Claude, Cursor, etc.):
- Open the project in your IDE
- Open your AI assistant chat panel
- Send the prompt: "Help me add three new widgets to this dashboard"
Want to understand what happens under the hood? The sections below walk through each step in detail.
The Scenario
You're building a dashboard with three widgets that need to work together:
- List contacts - Display contact table
- Create contact - Add new contact form
- Bulk import - CSV upload for multiple contacts
Each feature is distinct but shares common code (contact model, validation). You need to track all three without losing sight of dependencies.
Starting point:
your-project/
├── src/
│ ├── models/
│ │ └── contact.ts # Shared model
│ └── components/
│ └── dashboard/
└── specs/
└── (empty - let's populate it)
Creating Multiple Specs
Ask your AI:
Create three specs for dashboard features:
1. List contacts in a table (read-only, pagination)
2. Create contact form (name, email, phone validation)
3. Bulk import contacts from CSV (validation, error handling)
Tag them all with "dashboard" and "contacts".
The AI creates:
specs/
├── 021-contact-list/
├── 022-contact-create/
└── 023-contact-bulk-import/
Each with status: planned and tags ['dashboard', 'contacts'].
Seeing the Big Picture
List all your specs:
lean-spec list
Output:
📋 LeanSpec Project Overview
┌─────┬────────────────────────┬───────────┬──────────┬──────────┐
│ Seq │ Name │ Status │ Priority │ Tags │
├─────┼────────────────────────┼───────────┼──────────┼──────────┤
│ 021 │ contact-list │ planned │ medium │ dash... │
│ 022 │ contact-create │ planned │ medium │ dash... │
│ 023 │ contact-bulk-import │ planned │ high │ dash... │
└─────┴────────────────────────┴───────────┴──────────┴──────────┘
Use the board view for workflow status:
lean-spec board
Shows Kanban columns: Planned → In Progress → Complete
Why this matters: At a glance, you know what's queued, what's active, and what's done. No spreadsheet needed.
Finding Related Specs
Search by tag:
lean-spec list --tags contacts
Or ask your AI:
Show me all dashboard specs.
The AI runs the search and shows you the results with context.
Search by keyword:
lean-spec search "validation"
Finds specs mentioning validation across all content. Perfect for avoiding duplicate work.
Working in Parallel
Start work on the list feature:
Implement spec 021.
AI implements the contact list. While that's in review, you start another:
Implement spec 022.
Check status anytime:
lean-spec list --status in-progress
Shows:
│ 021 │ contact-list │ in-progress │
│ 022 │ contact-create │ in-progress │
Best practice: Keep 2-3 specs in-progress max. More than that signals blocked work or context switching overhead.
Managing Dependencies
Bulk import depends on the contact model and validation from the create form. Document this:
Link spec 023 as depending on spec 022 (needs validation logic first).
Or manually:
lean-spec link 023 --depends-on 022
Now when you view spec 023:
---
depends_on: [022]
---
# Contact Bulk Import
> **Dependencies**: [022-contact-create](../022-contact-create)
The AI knows to check spec 022 before implementing 023. It won't start bulk import until contact creation is complete.
View dependencies:
lean-spec deps 023
Shows:
023-contact-bulk-import
└─ depends on → 022-contact-create
Completing the Project
As you finish each feature:
lean-spec update 021 --status complete
lean-spec update 022 --status complete
lean-spec update 023 --status complete
Check project health:
lean-spec stats
Output:
📊 Project Statistics
Status Distribution:
Complete: 3
In Progress: 0
Planned: 0
Recent Activity:
✓ 023-contact-bulk-import completed 2 hours ago
✓ 022-contact-create completed 1 day ago
✓ 021-contact-list completed 1 day ago
Satisfaction: Clear record of what shipped. Future you (or teammates) can see exactly what was built and when.
What Just Happened
You managed a multi-spec project without chaos:
Without LeanSpec:
- Sticky notes or issue tracker for tracking
- No visibility into dependencies
- Hard to find related work
- Status buried in git commits
With LeanSpec:
- Single source of truth (
lean-spec list) - Dependency tracking prevents ordering mistakes
- Search finds related work instantly
- Status tracking built-in
The CLI commands + AI integration give you project visibility without leaving your editor.
Key Techniques
Discovery:
lean-spec list- See everythinglean-spec board- Visualize workflowlean-spec search- Find by keywordlean-spec list --tags <tag>- Filter by category
Management:
lean-spec deps- Show dependencieslean-spec link --depends-on- Document blocking worklean-spec stats- Project health check- Multiple specs
in-progressOK if independent
AI Integration:
- Ask "Show me dashboard specs" → AI runs search
- Ask "What's blocking spec X?" → AI checks deps
- Ask "Update spec status" → AI runs command
Next Steps
Practice with your project:
- Create 2-3 related specs
- Tag them by feature area
- Try
lean-spec list,board,search - Document one dependency
Learn more:
- Refactoring with Specs → - Technical specs for architecture work
- Finding Specs - Advanced search patterns
- Project Management - Board, stats, dependencies
Questions? See FAQ or ask the community.