Learn-skills.dev spec-driven

install
source · Clone the upstream repo
git clone https://github.com/NeverSight/learn-skills.dev
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/adeonir/agents-skills/spec-driven" ~/.claude/skills/neversight-learn-skills-dev-spec-driven-30e1ab && rm -rf "$T"
manifest: data/skills-md/adeonir/agents-skills/spec-driven/SKILL.md
source content

Spec-Driven Development

Structured development workflow: Initialize -> Plan -> Tasks -> Implement + Validate.

Workflow

initialize --> plan --> tasks --> implement --> validate --> archive

Project Structure

.artifacts/
├── project/
│   ├── PROJECT.md          # Vision, goals, constraints
│   ├── ROADMAP.md          # Planned features, milestones
│   └── CHANGELOG.md        # Feature implementation history
├── codebase/               # Brownfield analysis (optional)
│   ├── STACK.md
│   ├── ARCHITECTURE.md
│   ├── CONVENTIONS.md
│   ├── STRUCTURE.md
│   ├── TESTING.md
│   └── INTEGRATIONS.md
├── research/               # Research cache (optional)
│   └── {topic}.md
└── features/
    └── {ID}-{name}/
        ├── spec.md         # WHAT: Requirements
        ├── plan.md         # HOW: Architecture
        └── tasks.md        # WHEN: Tasks

docs/
└── features/
    └── {name}.md           # Consolidated implementation

Templates

ContextTemplate
Project initializationPROJECT.md
RoadmapROADMAP.md
Feature changelogCHANGELOG.md
Feature specspec.md
Technical planplan.md
Task breakdowntasks.md
Archive documentarchive.md
Codebase explorationexploration.md
Research cacheresearch.md

Context Loading Strategy

Base load (~15k tokens):

  • PROJECT.md (context)
  • Current feature spec.md

On-demand:

  • codebase/*.md (brownfield)
  • plan.md (implementing)
  • tasks.md (executing)
  • research/*.md (new technologies)

Never simultaneous:

  • Multiple feature specs
  • Archived features

Triggers

Project-Level

Trigger PatternReference
Initialize project, setup projectproject-init.md
Create roadmap, plan featuresroadmap.md
Map codebase, analyze codebasecodebase-mapping.md

Feature-Level

Trigger PatternReference
Create new feature, new featureinitialize.md (greenfield)
Modify feature, improve featureinitialize.md (brownfield)
Create technical planplan.md
Research technology, cache researchresearch.md
Create taskstasks.md
Implement taskimplement.md
Validatevalidate.md
Archivearchive.md
List features, show statusstatus-specs.md

Guidelines

Trigger PatternReference
How to write specsspec-writing.md
How to decompose taskstasks.md
Codebase explorationcodebase-exploration.md
Research patternsresearch.md
Baseline discoverybaseline-discovery.md
Extract from PRD/docsdoc-extraction.md
Coding principlescoding-principles.md
Status workflow, when to update statusstatus-workflow.md

Cross-References

project-init.md ----> roadmap.md
project-init.md ----> codebase-mapping.md
initialize.md ------> plan.md (when spec complete)
plan.md ------------> tasks.md
plan.md ------------> research.md (if new tech)
tasks.md -----------> implement.md
implement.md -------> coding-principles.md (loaded before coding)
implement.md -------> validate.md
validate.md --------> implement.md (if issues)
validate.md --------> archive.md (if passed)

Guidelines

DO:

  • Separate content by purpose: spec=WHAT, plan=HOW, tasks=WHEN
  • Follow status flow: draft -> ready -> in-progress -> to-review -> done -> archived
  • Use sequential Feature IDs (001, 002)
  • Reuse research cache across features (.artifacts/research/)
  • Archive to docs/features/{name}.md (without ID prefix)

DON'T:

  • Reuse Feature IDs from previous features
  • Mix spec, plan, and task content in a single file
  • Skip status transitions (e.g., jumping from draft to done)
  • Create feature-specific research files outside .artifacts/research/

Error Handling

  • No .artifacts/: Suggest initialize project first
  • Spec not found: List available features
  • Open questions blocking architecture: Resolve before planning
  • Plan not found: Suggest plan before tasks
  • Tasks not found: Suggest tasks before implement