What problem does it solve? It standardizes how Go backend developers build persistence layers for domain aggregates, preventing common mistakes like leaking sql.ErrNoRows, skipping optimistic-lock version increments, or bypassing UnitOfWork transactions. ## Core Features & Use Cases - Three-file repository pattern: Generates the interface, Postgres implementation, and in-memory mock in a folder-per-repo layout under <ctx>/repositories/<snake_name>/. - Transaction-aware persistence: Enforces the txOrDB helper so every query flows through the active UnitOfWork transaction, and Save drains domain events to the outbox. - fx dependency injection wiring: Binds interfaces to implementations via fx.Annotate and fx.As so consumers depend on interfaces, not concrete structs. - Use Case: When adding a new aggregate like TranscodingJob to the api-go workspace, follow the skill to produce a compliant repository with compile-time interface checks, (nil, nil) not-found semantics, and a mock whose Save mirrors Postgres behavior for tests. ## Quick Start Ask the agent to create a Go repository for a new domain entity following the repository skill, including the Postgres implementation, mock, and fx wiring.