DDD Tactical Patterns is a development claude skill built by sickn33. Best for: Backend developers translate domain rules into behavior-rich code structures by modeling aggregates around invariants, value objects, and domain events..
- What it does
- Apply Domain-Driven Design tactical patterns—entities, value objects, aggregates, repositories, domain events—with explicit invariants in code.
- Category
- development
- Created by
- sickn33
- Last updated
DDD Tactical Patterns
Apply Domain-Driven Design tactical patterns—entities, value objects, aggregates, repositories, domain events—with explicit invariants in code.
Skill instructions
name: ddd-tactical-patterns description: "Apply DDD tactical patterns in code using entities, value objects, aggregates, repositories, and domain events with explicit invariants." risk: safe source: self tags: "[ddd, tactical, aggregates, value-objects, domain-events]" date_added: "2026-02-27"
DDD Tactical Patterns
Use this skill when
- Translating domain rules into code structures.
- Designing aggregate boundaries and invariants.
- Refactoring an anemic model into behavior-rich domain objects.
- Defining repository contracts and domain event boundaries.
Do not use this skill when
- You are still defining strategic boundaries.
- The task is only API documentation or UI layout.
- Full DDD complexity is not justified.
Instructions
- Identify invariants first and design aggregates around them.
- Model immutable value objects for validated concepts.
- Keep domain behavior in domain objects, not controllers.
- Emit domain events for meaningful state transitions.
- Keep repositories at aggregate root boundaries.
If detailed checklists are needed, open references/tactical-checklist.md.
Example
class Order {
private status: "draft" | "submitted" = "draft";
submit(itemsCount: number): void {
if (itemsCount === 0) throw new Error("Order cannot be submitted empty");
if (this.status !== "draft") throw new Error("Order already submitted");
this.status = "submitted";
}
}
Limitations
- This skill does not define deployment architecture.
- It does not choose databases or transport protocols.
- It should be paired with testing patterns for invariant coverage.
Use this skill
Most skills are portable instruction packages. Claude Code supports SKILL.md directly. Other agents can use adapted files like AGENTS.md, .cursorrules, and GEMINI.md.
Claude Code
Save SKILL.md into your Claude Skills folder, then restart Claude Code.
mkdir -p ~/.claude/skills/ddd-tactical-patterns && curl -L "https://raw.githubusercontent.com/sickn33/antigravity-awesome-skills/HEAD/skills/ddd-tactical-patterns/SKILL.md" -o ~/.claude/skills/ddd-tactical-patterns/SKILL.mdInstalls to ~/.claude/skills/ddd-tactical-patterns/SKILL.md.
Use cases
Backend developers translate domain rules into behavior-rich code structures by modeling aggregates around invariants, value objects, and domain events.
Reviews
No reviews yet. Be the first to review this skill.
No signup required
Stats
Creator
Ssickn33
@sickn33