ddd-architect

Identify bounded contexts, aggregates, and context mappings for Domain-Driven Design.

12|2|Updated Jan 27, 2026
One-click install
npx skills add https://github.com/jikig-ai/soleur --skill ddd-architect-jikig-ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ddd-architect
Source: https://github.com/jikig-ai/soleur/tree/main/.openhands/skills/ddd-architect
Command: npx skills add https://github.com/jikig-ai/soleur --skill ddd-architect-jikig-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Helps teams and architects structure complex business domains by defining bounded contexts, mapping context relationships, and designing aggregates so the domain model remains coherent, consistent, and aligned with business intent.

Core Features & Use Cases

  • Strategic discovery: Classify core, supporting, and generic domains and capture ubiquitous language.
  • Context mapping: Recommend relationships such as Customer-Supplier, Anti-Corruption Layer, Shared Kernel, and Published Language.
  • Tactical design: Define aggregates, root entities, value objects, domain events, repositories, and integration patterns (CQRS, event sourcing, sagas).
  • Use case: Break a monolith into microservices by identifying bounded contexts and proposing anti-corruption layers and integration strategies.

Quick Start

Use the ddd-architect skill to analyze your domain and produce bounded contexts, a context map, and aggregate designs with recommended integration patterns.

Frequently Asked Questions about ddd-architect

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I identify bounded contexts when breaking a monolith into microservices?

To identify bounded contexts for microservice decomposition, you classify core, supporting, and generic domains while capturing ubiquitous language. This process maps context relationships and defines aggregate boundaries to ensure your domain model remains coherent and aligned with business intent.

What is context mapping in domain-driven design and when do I need it?

Context mapping in domain-driven design defines relationships between bounded contexts like Customer-Supplier, Anti-Corruption Layer, and Shared Kernel. You need it when integrating complex business domains to maintain domain separation and propose robust integration strategies.

How do I design aggregates with root entities and invariants for complex business domains?

Designing aggregates involves defining root entities, value objects, and domain invariants to enforce consistency. This tactical design step also produces domain events and repository interfaces to maintain a robust and coherent domain model.

What is the best way to apply CQRS and event sourcing patterns in domain-driven design?

The best way to apply CQRS and event sourcing is by defining integration patterns during tactical design. This approach separates read and write models and persists domain events, providing robust integration strategies for complex business domains and microservice architectures.

When should I use an anti-corruption layer when integrating microservices?

You should use an anti-corruption layer when integrating microservices to prevent external domain concepts from polluting your bounded context. It acts as a translation mechanism between contexts, ensuring your domain model remains coherent and protected during complex integrations.

Can I use domain-driven design for strategic architecture and microservice decomposition?

Yes, you can use domain-driven design for strategic architecture and microservice decomposition. It helps classify domains, capture ubiquitous language, and map context relationships, resulting in coherent domain models aligned with business intent.