Agent skill

ddd-guide

Document-Driven Development workflow for existing codebases. Provides systematic planning, documentation-first design, and implementation verification.

Stars 1
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/drillan/amplifier-skills-plugin/tree/main/skills/ddd-guide

Metadata

Additional technical details for this skill

category
workflow
complexity
high

SKILL.md

Document-Driven Development (DDD) Guide

Core Principle

Documentation IS the specification. Code implements what documentation describes.

DDD inverts traditional development: update documentation first, then implement code to match.

Why DDD?

  • Catches design flaws early - Before expensive code changes
  • Prevents documentation drift - Docs and code stay synchronized
  • Enables human review - Humans approve specs, not code
  • AI-friendly - Clear specifications reduce hallucination

Six-Phase Workflow

Phase Name Command Deliverable
0-1 Planning /ddd 1-plan plan.md
2 Documentation /ddd 2-docs Updated docs
3 Code Planning /ddd 3-code-plan code_plan.md
4 Implementation /ddd 4-code Working code
5-6 Finalization /ddd 5-finish Tested, committed

Core Techniques

Retcon Writing

Document features as if they already exist. No future tense.

  • Bad: "This feature will add..."
  • Good: "This feature provides..."

File Crawling

Process files one at a time to avoid context overflow:

  1. Generate index with [ ] checkboxes
  2. Process one file per iteration
  3. Mark [x] when complete

Context Poisoning Prevention

Eliminate contradictions:

  • One authoritative location per concept
  • Delete duplicates, don't update
  • Resolve conflicts before proceeding

When to Use DDD

Use DDD for:

  • Multi-file changes
  • New features in existing codebases
  • Complex integrations

Skip DDD for:

  • Typo fixes
  • Single-file changes
  • Emergency hotfixes

References

See @skills/ddd-guide/references/ for detailed documentation:

  • core-concepts/ - Techniques and methodologies
  • phases/ - Step-by-step phase guides
  • philosophy/ - Underlying principles

Remember

Documentation first. If it's not documented, it doesn't exist.

Retcon, don't predict. Write as if the feature already exists.

One source of truth. Delete duplicates, don't update them.

Expand your agent's capabilities with these related and highly-rated skills.

drillan/amplifier-skills-plugin

amplifier-philosophy

Amplifier design philosophy using Linux kernel metaphor. Covers mechanism vs policy, module architecture, event-driven design, and kernel principles. Use when designing new modules or making architectural decisions.

1 0
Explore
drillan/amplifier-skills-plugin

module-development

Guide for creating new Amplifier modules including protocol implementation, entry points, mount functions, and testing patterns. Use when creating new modules or understanding module architecture.

1 0
Explore
drillan/speckit-gates

implementation-verify

Verifies implementation against specifications by checking requirement fulfillment, task completion, and contract implementation. Generates a fulfillment report with coverage metrics. Always run after /speckit.implement completes.

3 0
Explore
drillan/speckit-gates

docs-sync

Synchronizes documentation (README.md, CHANGELOG.md, API docs) with implementation. Preserves user content outside speckit markers. Updates are non-destructive and clearly delineated. Always run after /speckit.implement completes.

3 0
Explore
drillan/speckit-gates

progress-report

Displays progress dashboard showing phase completion, blocked tasks, and remaining work estimate. Provides at-a-glance view of implementation status. Run anytime to check progress.

3 0
Explore
drillan/speckit-gates

release-check

Validates all artifacts are complete and consistent for release. Checks spec kit artifacts, documentation, versioning, and API docs. Run before creating a release to ensure nothing is missing.

3 0
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results