tactical-ddd

Detect anemia signals in domain models and propose DDD refactoring steps.

Updated May 1, 2026
One-click install
npx skills add https://github.com/Roger-Quinelato/BBSIA-Copia --skill tactical-ddd-roger-quinelato
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tactical-ddd
Source: https://github.com/Roger-Quinelato/BBSIA-Copia/tree/main/.claude/skills/tactical-ddd
Command: npx skills add https://github.com/Roger-Quinelato/BBSIA-Copia --skill tactical-ddd-roger-quinelato

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill assists developers and domain experts in identifying and refactoring anemic domain models, ensuring robust, encapsulated, and meaningful domain code.

Core Features & Use Cases

  • Detection and Diagnosis: Scans code for anemia signals and evaluates severity to guide improvements.
  • Refactoring Guidance: Provides step-by-step instructions to improve encapsulation, move logic into aggregates, and replace primitives with value objects.
  • Review and Validation: Helps users validate their domain models against DDD best practices, facilitating better design and implementation.

Quick Start

Ask this Skill to review your domain model code for potential anemia issues and get recommendations for improvements.

Frequently Asked Questions about tactical-ddd

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

FAQPage Schema
How do I detect and fix an anemic domain model in my code?

To refactor an anemic domain model, scan your code for anemia signals and evaluate severity. Then move logic into aggregates and replace primitives with value objects to enforce encapsulation and DDD principles.

What is an anemic domain model and how does it violate DDD principles?

An anemic domain model separates data from logic, lacking encapsulation and meaningful behavior. It violates DDD principles by relying on primitive data containers instead of rich aggregates and value objects.

How do I replace primitive types with value objects in domain models?

To replace primitives with value objects, follow step-by-step refactoring guidance to enforce encapsulation. This ensures your domain model uses proper value objects instead of primitive types, aligning with DDD best practices.

Can I use static code analysis to validate domain model aggregates?

Yes, static code analysis is required to detect anemia signals and evaluate severity in your domain models. This validation ensures your aggregates follow DDD best practices and maintain proper encapsulation.

When should I refactor existing domain models versus designing new domain layers?

You can refactor existing models when anemia signals are detected, or design new domain layers from scratch. Both scenarios benefit from enforcing DDD principles with proper aggregates and value objects.