value-object
Value Object Skill
Generates or refactors immutable TypeScript value objects — domain primitives that encapsulate validation, normalization, and conversion logic.
Note: This skill focuses on patterns for creating value objects and does not require specific npm packages. However, if you're integrating with @efesto-cloud packages, you may want to install @efesto-cloud/entity for the IEntityMapper interface when creating persistence mappers.
Decision: what to generate
| Request | Output |
|---|---|
| Single primitive (email, UUID, phone, color…) | Interface + scalar wrapper class |
| Composite (address, money, date range…) | Interface + composite class accepting IFoo raw shape |
| Mentions persistence or transport layer | Also generate mapper/FooMapper.ts |
| Improving/retrofitting existing code | Add missing factory + toRaw/toJSON without renaming |
File layout
src/
More from efesto-cloud/skills
persistence
>
19population
>
18type-enum-dict
|
18usecase
>
17entity
Create or modify domain entities using the @efesto-cloud/entity package. Use this skill whenever the user asks to add a new entity, update an existing entity, add properties or methods to an entity, or work on the entity/dto layer. Trigger when the user says things like "create a Foo entity", "add a field to Bar", "I need a new domain object", or "add entity X". Also trigger for DTO creation or modification.
17webapp-loader-action
>
12