Context-Driven Development
Treat 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.
Installation
OpenClaw / Moltbot / Clawbot
npx clawhub@latest install context-driven-development
WHAT This Skill Does
Creates and maintains a set of context documents that:
- Define what you're building and why (product.md)
- Specify technology choices and constraints (tech-stack.md)
- Establish how the team works (workflow.md)
- Track what's happening (tracks.md)
WHEN to Use
Use for:
- Setting up new projects with AI-assisted development
- Onboarding team members to existing codebases
- Ensuring consistent AI behavior across sessions
- Documenting decisions that affect code generation
- Managing projects with multiple contributors or AI assistants
Skip for:
- Solo experiments or throwaway prototypes
- Single-file scripts
- Projects without AI assistance
Keywords: context, project setup, documentation, AI alignment, team workflow, product vision, tech stack
Core Philosophy
Context precedes code.
Living documentation.
Single source of truth.
AI alignment.
- Context precedes code — Define what you're building and how before implementation
- Living documentation — Context artifacts evolve with the project
- Single source of truth — One canonical location for each type of information
- AI alignment — Consistent context produces consistent AI behavior
The Workflow
Context → Spec & Plan → Implement
- Context Phase: Establish or verify project context artifacts exist and are current
- Specification Phase: Define requirements and acceptance criteria for work units
- Planning Phase: Break specifications into phased, actionable tasks
- Implementation Phase: Execute tasks following established workflow patterns
The Context Documents
product.md — 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
tech-stack.md — 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 — HOW to Work
Purpose: Establishes development practices, quality gates, and team workflows.
Contents:
- Development methodology (TDD, trunk-based, 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 — 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 specs
Update when:
- New work starts
- Work status changes
- Work completes
Directory Structure
context/
├── product.md # Product vision and goals
├── tech-stack.md # Technology choices
├── workflow.md # Development practices
├── tracks.md # Work unit registry
└── styleguides/ # Language-specific conventions
├── python.md
├── typescript.md
└── ...
Setup: New Project (Greenfield)
For new projects, create all artifacts from scratch:
-
Create
context/product.md:- Define the problem you're solving
- Describe target users
- List core features for v1
- Define success metrics
-
Create
context/tech-stack.md:- Choose languages and frameworks
- Document key dependencies with versions
- Specify infrastructure targets
- List development tools
-
Create
context/workflow.md:- Define branching strategy
- Set commit conventions
- Establish testing requirements
- Document deployment process
-
Create
context/tracks.md:- Start with empty registry
- Add work units as they're created
Setup: Existing Project (Brownfield)
For existing codebases, extract context from what exists:
-
Analyze the codebase:
- Read package.json, requirements.txt, go.mod, etc.
- Look at existing README and docs
- Check git history for patterns
-
Create
context/tech-stack.md:- Document discovered dependencies
- Note infrastructure from configs (Docker, CI, etc.)
-
Create
context/product.md:- Infer product purpose from code
- Document current feature set
- Note any README content
-
Create
context/workflow.md:- Document existing practices
- Note any established patterns
Maintenance Principles
Keep Artifacts Synchronized
Changes in one artifact should 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:
- Check if existing dependencies solve the need
- Document the rationale for new dependencies
- Add version constraints
- Note any configuration requirements
Verify Context Before Implementation
Before starting any work:
- Read all context artifacts
- Flag any outdated information
- Propose updates before proceeding
- Confirm context accuracy
Validation Checklist
Before starting implementation, validate:
Product Context:
- product.md reflects current vision
- Target users are accurately described
- Feature list is up to date
Technical Context:
- tech-stack.md lists all current dependencies
- Version numbers are accurate
- Infrastructure targets are correct
Workflow Context:
- workflow.md describes current practices
- Quality gates are defined
- Commit conventions are documented
Anti-Patterns
| Anti-Pattern | Problem | Fix |
|---|---|---|
| Stale Context | Documents become outdated and misleading | Update context as part of each track's completion |
| Context Sprawl | Information scattered across multiple locations | Use defined artifact structure; resist new document types |
| Implicit Context | Relying on knowledge not captured in artifacts | If referenced repeatedly, add to appropriate artifact |
| Over-Specification | Context so detailed it's impossible to maintain | Keep focused on decisions affecting AI behavior and team alignment |
Session Continuity
Starting a New Session
- Read context/product.md to orient yourself
- Check context/tracks.md for active work
- Read relevant track specs for current task
- Verify context artifacts are current
Ending a Session
- Update track status with current progress
- Note any blockers or decisions made
- Commit in-progress work with clear status
- Update tracks.md if status changed
Benefits
Team Alignment:
- New team members onboard faster with explicit context
- Consistent terminology across the team
- Shared understanding of product goals
AI Consistency:
- AI assistants produce aligned outputs across sessions
- Reduced need to re-explain context
- Predictable behavior based on documented standards
Institutional Memory:
- Decisions and rationale are preserved
- Context survives team changes
- Historical context informs future decisions
NEVER Do
- NEVER start implementation without reading context — context precedes code
- NEVER add dependencies without updating tech-stack.md — keep the source of truth current
- NEVER let context documents get stale — update them as part of completing work
- NEVER scatter context across ad-hoc documents — use the defined structure
- NEVER assume AI remembers previous sessions — context must be in artifacts
- NEVER skip context for "quick" changes — small changes compound into drift