What problem does it solve? Complex business domains produce tangled code when the model in developers' heads diverges from the code they write. This Skill provides the strategic and tactical patterns of Domain-Driven Design (Eric Evans, Vaughn Vernon) so that code, conversations, and documentation express one consistent model. ## Core Features & Use Cases - Strategic Design: Establish ubiquitous language, define bounded contexts, classify core/supporting/generic subdomains, and map context relationships (partnership, anticorruption layer, conformist, and more). - Tactical Building Blocks: Decide between entities and value objects, design small aggregates with explicit invariants, and use domain events, domain services, repositories, and factories correctly. - Supple Design & Refactoring: Apply intention-revealing interfaces, side-effect-free functions, and specifications, and refactor toward deeper insight when the model feels awkward. - Use Case: When designing an order management system, use this Skill to split the system into bounded contexts, model Order as an aggregate root referencing Customer by ID, and coordinate fulfillment through an OrderPlaced domain event. ## Quick Start Ask Claude to review your domain model or design a new module, for example: "Design the aggregates and bounded contexts for a shipping system using DDD."