context-driven-development
Install this skill
npx skills add wshobson/agentsWorks across Claude Code, Cursor, Codex, Copilot & Antigravity
Context-Driven Development is a structural framework for treating project documentation as essential source code. By maintaining specific files like product.md, tech-stack.md, and workflow.md, you provide AI agents with a persistent mental model of your project. This approach prevents context drift during long-term development by ensuring every agent interaction references a single, centralized source of truth. Rather than feeding an agent scattered instructions, you curate a set of evolving artifacts that dictate the scope, technical choices, and operational requirements. This method forces a 'context first' discipline, requiring you to define the product vision, architectural boundaries, and team protocols before any implementation begins. It turns project documentation into a functional engine that directs AI behavior, resulting in consistent, predictable, and aligned output throughout the entire development lifecycle.
When to Use This Skill
- β’Starting a greenfield project with a standardized documentation foundation
- β’Onboarding developers to complex repositories using centralized context
- β’Managing technical debt by documenting architectural decisions before implementation
- β’Ensuring AI-assisted coding aligns with specific brand voice and tone
How to Invoke This Skill
Example prompts that trigger this skill in Claude Code, Cursor, or Antigravity:
- βSetup new project context using Conductor
- βUpdate the tech stack documentation with these new dependencies
- βSync project artifacts after completing the latest feature track
- βReview product guidelines before starting this implementation
- βCreate a new work track in the tracker
Pro Tips
- π‘Regularly review and update your context artifacts (product.md, tech-stack.md, workflow.md) as your project evolves to maintain a 'living documentation' philosophy.
- π‘Utilize version control for your context documents, just like your code, to track changes, revert if necessary, and ensure team alignment.
- π‘Before a major development phase, explicitly prompt your AI agent with specific context documents to ensure it's operating with the most relevant information.
What this skill does
- β’Maintains synchronized project artifacts for consistent AI behavior
- β’Tracks granular work unit progress through dedicated metadata files
- β’Establishes a rigid hierarchy between product vision and technical implementation
- β’Automates initial project setup via guided interactive configuration
- β’Formalizes team-wide quality gates and communication standards
When not to use it
- βRapid prototyping where documentation overhead exceeds the value of the code
- βProjects lacking long-term maintenance requirements or recurring AI interaction
Example workflow
- Audit current context artifacts for outdated information
- Define requirements and acceptance criteria in a new work track
- Update product.md to reflect the new feature scope
- Generate a plan to break down the task into sub-tasks
- Execute the implementation phase using the updated context
Prerequisites
- βInstalled Conductor agent
- βBasic knowledge of repository-level documentation
Pitfalls & limitations
- !Documentation decay when changes to code aren't mirrored in context files
- !Adding unnecessary friction to simple, one-off tasks
- !Over-documenting trivial changes that don't impact project goals
FAQ
How it compares
Unlike generic prompting which relies on immediate memory, this approach builds a persistent environment that forces AI agents to adhere to established project constraints and architectural patterns.
π Full skill instructions β original source: wshobson/agents
Guide for implementing and maintaining context as a managed artifact alongside code, enabling consistent AI interactions and team alignment through structured project documentation.
## When to Use This Skill
- Setting up new projects with Conductor
- Understanding the relationship between context artifacts
- Maintaining consistency across AI-assisted development sessions
- Onboarding team members to an existing Conductor project
- Deciding when to update context documents
- Managing greenfield vs brownfield project contexts
## Core Philosophy
Context-Driven Development treats project context as a first-class artifact managed alongside code. Instead of relying on ad-hoc prompts or scattered documentation, establish a persistent, structured foundation that informs all AI interactions.
Key principles:
1. **Context precedes code**: Define what you're building and how before implementation
2. **Living documentation**: Context artifacts evolve with the project
3. **Single source of truth**: One canonical location for each type of information
4. **AI alignment**: Consistent context produces consistent AI behavior
## The Workflow
Follow the **Context β Spec & Plan β Implement** workflow:
1. **Context Phase**: Establish or verify project context artifacts exist and are current
2. **Specification Phase**: Define requirements and acceptance criteria for work units
3. **Planning Phase**: Break specifications into phased, actionable tasks
4. **Implementation Phase**: Execute tasks following established workflow patterns
## Artifact Relationships
### product.md - Defines WHAT and WHY
Purpose: Captures product vision, goals, target users, and business context.
Contents:
- Product name and one-line description
- Problem statement and solution approach
- Target user personas
- Core features and capabilities
- Success metrics and KPIs
- Product roadmap (high-level)
Update when:
- Product vision or goals change
- New major features are planned
- Target audience shifts
- Business priorities evolve
### product-guidelines.md - Defines HOW to Communicate
Purpose: Establishes brand voice, messaging standards, and communication patterns.
Contents:
- Brand voice and tone guidelines
- Terminology and glossary
- Error message conventions
- User-facing copy standards
- Documentation style
Update when:
- Brand guidelines change
- New terminology is introduced
- Communication patterns need refinement
### tech-stack.md - Defines WITH WHAT
Purpose: Documents technology choices, dependencies, and architectural decisions.
Contents:
- Primary languages and frameworks
- Key dependencies with versions
- Infrastructure and deployment targets
- Development tools and environment
- Testing frameworks
- Code quality tools
Update when:
- Adding new dependencies
- Upgrading major versions
- Changing infrastructure
- Adopting new tools or patterns
### workflow.md - Defines HOW to Work
Purpose: Establishes development practices, quality gates, and team workflows.
Contents:
- Development methodology (TDD, etc.)
- Git workflow and commit conventions
- Code review requirements
- Testing requirements and coverage targets
- Quality assurance gates
- Deployment procedures
Update when:
- Team practices evolve
- Quality standards change
- New workflow patterns are adopted
### tracks.md - Tracks WHAT'S HAPPENING
Purpose: Registry of all work units with status and metadata.
Contents:
- Active tracks with current status
- Completed tracks with completion dates
- Track metadata (type, priority, assignee)
- Links to individual track directories
Update when:
- New tracks are created
- Track status changes
- Tracks are completed or archived
## Context Maintenance Principles
### Keep Artifacts Synchronized
Ensure changes in one artifact reflect in related documents:
- New feature in product.md β Update tech-stack.md if new dependencies needed
- Completed track β Update product.md to reflect new capabilities
- Workflow change β Update all affected track plans
### Update tech-stack.md When Adding Dependencies
Before adding any new dependency:
1. Check if existing dependencies solve the need
2. Document the rationale for new dependencies
3. Add version constraints
4. Note any configuration requirements
### Update product.md When Features Complete
After completing a feature track:
1. Move feature from "planned" to "implemented" in product.md
2. Update any affected success metrics
3. Document any scope changes from original plan
### Verify Context Before Implementation
Before starting any track:
1. Read all context artifacts
2. Flag any outdated information
3. Propose updates before proceeding
4. Confirm context accuracy with stakeholders
## Greenfield vs Brownfield Handling
### Greenfield Projects (New)
For new projects:
1. Run
/conductor:setup to create all artifacts interactively2. Answer questions about product vision, tech preferences, and workflow
3. Generate initial style guides for chosen languages
4. Create empty tracks registry
Characteristics:
- Full control over context structure
- Define standards before code exists
- Establish patterns early
### Brownfield Projects (Existing)
For existing codebases:
1. Run
/conductor:setup with existing codebase detection2. System analyzes existing code, configs, and documentation
3. Pre-populate artifacts based on discovered patterns
4. Review and refine generated context
Characteristics:
- Extract implicit context from existing code
- Reconcile existing patterns with desired patterns
- Document technical debt and modernization plans
- Preserve working patterns while establishing standards
## Benefits
### Team Alignment
- New team members onboard faster with explicit context
- Consistent terminology and conventions across the team
- Shared understanding of product goals and technical decisions
### AI Consistency
- AI assistants produce aligned outputs across sessions
- Reduced need to re-explain context in each interaction
- Predictable behavior based on documented standards
### Institutional Memory
- Decisions and rationale are preserved
- Context survives team changes
- Historical context informs future decisions
### Quality Assurance
- Standards are explicit and verifiable
- Deviations from context are detectable
- Quality gates are documented and enforceable
## Directory Structure
conductor/
βββ index.md # Navigation hub linking all artifacts
βββ product.md # Product vision and goals
βββ product-guidelines.md # Communication standards
βββ tech-stack.md # Technology preferences
βββ workflow.md # Development practices
βββ tracks.md # Work unit registry
βββ setup_state.json # Resumable setup state
βββ code_styleguides/ # Language-specific conventions
β βββ python.md
β βββ typescript.md
β βββ ...
βββ tracks/
βββ <track-id>/
βββ spec.md
βββ plan.md
βββ metadata.json
βββ index.md## Context Lifecycle
1. **Creation**: Initial setup via
/conductor:setup2. **Validation**: Verify before each track
3. **Evolution**: Update as project grows
4. **Synchronization**: Keep artifacts aligned
5. **Archival**: Document historical decisions
## Context Validation Checklist
Before starting implementation on any track, validate context:
### Product Context
- [ ] product.md reflects current product vision
- [ ] Target users are accurately described
- [ ] Feature list is up to date
- [ ] Success metrics are defined
### Technical Context
- [ ] tech-stack.md lists all current dependencies
- [ ] Version numbers are accurate
- [ ] Infrastructure targets are correct
- [ ] Development tools are documented
### Workflow Context
- [ ] workflow.md describes current practices
- [ ] Quality gates are defined
- [ ] Coverage targets are specified
- [ ] Commit conventions are documented
### Track Context
- [ ] tracks.md shows all active work
- [ ] No stale or abandoned tracks
- [ ] Dependencies between tracks are noted
## Common Anti-Patterns
Avoid these context management mistakes:
### Stale Context
Problem: Context documents become outdated and misleading.
Solution: Update context as part of each track's completion process.
### Context Sprawl
Problem: Information scattered across multiple locations.
Solution: Use the defined artifact structure; resist creating new document types.
### Implicit Context
Problem: Relying on knowledge not captured in artifacts.
Solution: If you reference something repeatedly, add it to the appropriate artifact.
### Context Hoarding
Problem: One person maintains context without team input.
Solution: Review context artifacts in pull requests; make updates collaborative.
### Over-Specification
Problem: Context becomes so detailed it's impossible to maintain.
Solution: Keep artifacts focused on decisions that affect AI behavior and team alignment.
## Integration with Development Tools
### IDE Integration
Configure your IDE to display context files prominently:
- Pin conductor/product.md for quick reference
- Add tech-stack.md to project notes
- Create snippets for common patterns from style guides
### Git Hooks
Consider pre-commit hooks that:
- Warn when dependencies change without tech-stack.md update
- Remind to update product.md when feature branches merge
- Validate context artifact syntax
### CI/CD Integration
Include context validation in pipelines:
- Check tech-stack.md matches actual dependencies
- Verify links in context documents resolve
- Ensure tracks.md status matches git branch state
## Session Continuity
Conductor supports multi-session development through context persistence:
### Starting a New Session
1. Read index.md to orient yourself
2. Check tracks.md for active work
3. Review relevant track's plan.md for current task
4. Verify context artifacts are current
### Ending a Session
1. Update plan.md with current progress
2. Note any blockers or decisions made
3. Commit in-progress work with clear status
4. Update tracks.md if status changed
### Handling Interruptions
If interrupted mid-task:
1. Mark task as
[~] with note about stopping point2. Commit work-in-progress to feature branch
3. Document any uncommitted decisions in plan.md
## Best Practices
1. **Read context first**: Always read relevant artifacts before starting work
2. **Small updates**: Make incremental context changes, not massive rewrites
3. **Link decisions**: Reference context when making implementation choices
4. **Version context**: Commit context changes alongside code changes
5. **Review context**: Include context artifact reviews in code reviews
6. **Validate regularly**: Run context validation checklist before major work
7. **Communicate changes**: Notify team when context artifacts change significantly
8. **Preserve history**: Use git to track context evolution over time
9. **Question staleness**: If context feels wrong, investigate and update
10. **Keep it actionable**: Every context item should inform a decision or behavior
How to Use This Skill Unit
Option A: Project-Specific (Recommended)
- Click "Download" above
- In your project, create the directory:
.agent/skills/context-driven-development/ - Save the file as
SKILL.md - The agent will automatically discover the skill based on its description.
Option B: Global Installation (All Agents)
Save the file to these locations to make it available across all projects:
- Claude Code:
~/.claude/skills/wshobson/agents/context-driven-development/SKILL.md - Cursor:
~/.cursor/skills/wshobson/agents/context-driven-development/SKILL.md - Antigravity:
~/.gemini/antigravity/skills/wshobson/agents/context-driven-development/SKILL.md
π Install with CLI:npx skills add wshobson/agents
