What problem does it solve? Modeling domain entities consistently across a polyglot DDD codebase is error-prone: validation rules get scattered, version increments land in the wrong layer, and rehydration logic regenerates identities. This Skill encodes the canonical entity patterns for both the TypeScript and Go backends so every aggregate root follows the same rules. ## Core Features & Use Cases - Language dispatch hub: Routes to the TypeScript or Go playbook based on file extension, with per-language registries of mandatory patterns and bad practices. - TypeScript entity playbook: Covers Zod schema declaration, z.instance() value object wiring, interface merging, create() factories, this.validate() behavior methods, and the rule that incrementVersion() lives in repository save(). - Go entity playbook: Covers BaseEntity embedding, New<Name> constructors returning errors, Reconstruct<Name> rehydration, AddDomainEvent/PullDomainEvents, and IncrementVersion inside behavior methods. - Use Case: When adding a new TranscodingJob aggregate to the Go gateway or an Organization aggregate to the TypeScript daemon, invoke this Skill to scaffold the entity with correct validation, events, and versioning on the first pass. ## Quick Start Ask the agent to create a domain entity for your bounded context, for example: create an entity named Product in the catalog context with a name, price, and active status.