# Golang Ddd

> Entry-point router for Go architecture and refactoring tasks focused on DDD-style services. Use when working on a Go service and you want one skill to decide whether the task is primarily about architecture boundaries, domain-first refactoring, pragmatic CQRS, or delivery and test support. This skill should select one or more companion skills and apply them in the right order. Use when this capability is needed.

- Skill: `tomevault-io/golang-ddd` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/golang-ddd`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/golang-ddd/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/golang-ddd

---


# Golang DDD

Use this as the default manual entry point when the task is “make this Go service easier to evolve without over-engineering” but the exact technique is not yet obvious.

## Routing Workflow

1. Start by classifying the task.
- If the main problem is package structure, layer boundaries, shared models, dependency direction, or import cycles, start with `$golang-ddd-architecture`.
- If the main problem is business rules hidden in handlers, repositories, or mutable structs, start with `$golang-ddd-refactor`.
- If the main problem is a wide application service, CRUD names, mixed reads and writes, or handler-specific dependency sprawl, start with `$golang-ddd-cqrs`.
- If the main problem is Terraform, CI, test strategy, service auth, or secure internal operations, start with `$golang-ddd-infrastructure`.

2. Combine skills when the task spans layers.
- Architecture + domain refactor is the most common pair for rescue refactors.
- Domain refactor + CQRS fits when write-side business logic already exists and the app layer is too wide.
- Architecture + infrastructure fits when CI or deployment work is exposing missing boundaries.
- Infrastructure may follow any of the others when tests, auth, or delivery constraints need to be aligned with the code structure.

3. Use this default order when multiple skills apply.
- First `$golang-ddd-architecture`
- Then `$golang-ddd-refactor`
- Then `$golang-ddd-cqrs`
- Finally `$golang-ddd-infrastructure`

4. Keep the solution proportional.
- Do not force CQRS into simple CRUD.
- Do not split models or layers more than the current complexity needs.
- Prefer the smallest change that makes the code safer to modify.

## Manual Invocation Tips

- Use `golang-ddd` when you are unsure which specialized skill is the right one.
- Use a specialized skill directly when the problem is already obvious.
- If the request asks for a domain-oriented cleanup or refactor without more detail, start here.

## Companion Skills

- `$golang-ddd-architecture`
- `$golang-ddd-refactor`
- `$golang-ddd-cqrs`
- `$golang-ddd-infrastructure`

## Deliverables

- a clear choice of which companion skill or skill sequence to use,
- a scoped plan that matches the actual complexity,
- avoidance of over-engineering for simple services.

---
> Source: [joeyave/golang-ddd-skills](https://github.com/joeyave/golang-ddd-skills) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-16 -->

