What problem does it solve? When building or reviewing code that follows hexagonal architecture, developers often struggle to decide where a piece of logic belongs — domain, port, adapter, or composition root — and accidentally violate the dependency rule by letting the domain import frameworks or infrastructure. ## Core Features & Use Cases - Layer Reference: Defines the responsibilities of the domain (entities, value objects, aggregates, domain services, domain events), input/output ports, input/output adapters, and the composition root. - Placement Guide & Checklists: Provides a quick lookup table for "where does X go?" questions, an entity-vs-value-object decision checklist, and guidance on when hexagonal architecture is worth using. - Anti-Pattern Detection: Lists common mistakes such as business logic in adapters, framework imports in the domain, and leaking domain models through APIs. - Use Case: While reviewing a pull request, you notice a REST controller checking whether an order is cancellable. Use this Skill to confirm the rule belongs in the domain entity and that the controller should only map requests and responses. ## Quick Start Ask the assistant to review your service's package structure against hexagonal architecture layer rules and identify any dependency violations.