agentleFS
ruyoutorruyoutor/agentic-archflow/skills/ddd-architect/SKILL.md

ddd-architect

Skill0 starsChanged 3 months agoMITView on GitHub

Desenha, constrói E EVOLUI sistemas de software ancorados em Domain-Driven Design e arquitetura equilibrada. Greenfield: de uma história de negócio (mini-mundo) via estratégico → tático → decisões arquiteturais com tradeoffs → geração de código com testes em paralelo via subagents; artefatos versionáveis em docs/ddd/. MODO EVOLUÇÃO (brownfield): recebe um CHG-NNN da feature-loop e responde 'o que precisa mudar?' e 'quais trade-offs?' (análise de impacto com checkpoint humano duro) antes de construir cirurgicamente a fatia e evoluir os artefatos com histórico de revisões — sem commit de entrega (a aterrissagem é da feature-loop). Triggers: 'modelar X com DDD', 'desenhar a arquitetura de Y', 'construir um sistema partindo do domínio', 'design-first', 'gerar código a partir do domínio', 'trabalhar a fatia CHG-NNN em modo evolução', 'analisar o impacto de uma mudança no domínio', ou invocação explícita da skill. Stack default Go, com override (java-spring, node-ts, etc).

9 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use security-reviewer.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • JeffallanSkill

    security-reviewer

    Identifies security vulnerabilities, generates structured audit reports with severity ratings, and provides actionable remediation guidance. Use when conducting security audits, reviewing code for vulnerabilities, or analyzing infrastructure security. Invoke for SAST scans, penetration testing, DevSecOps practices, cloud security reviews, dependency audits, secrets scanning, or compliance checks. Produces vulnerability reports, prioritized recommendations, and compliance checklists.

    Also in 4 projects that use this

The file

We split this skill into the rules it gives an agent

1 rule. 0 are common, 0 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 3 edited versions we read keep these.

  • 0

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Detectar stack: Default Go. Se o usuário passou stack=<nome> ou mencionou outra stack, use-a.

    line 43

“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

ddd-architect

Constrói sistemas a partir de um mini-mundo, em quatro fases checkpointadas — e evolui sistemas já construídos em fatias, no modo evolução. Cada fase produz um artefato em docs/ddd/ (no projeto target, não na skill). O usuário revisa cada artefato antes da próxima fase.

Fluxo

Dois modos:

Greenfield (do mini-mundo à v1):

FaseMétodoArtefato
1. Estratégicophases/01-strategic.mddocs/ddd/01-strategic.md
2. Táticophases/02-tactical.mddocs/ddd/02-tactical.md
3. Arquiteturaphases/03-architecture.mddocs/ddd/03-architecture.md
4. Implementaçãophases/04-implementation.mdcódigo + docs/ddd/04-build-log.md

A fase 4 se decompõe em sub-fases (4.0 contratos → 4.1 domínio ∥ → 4.2 aplicação ∥ → 4.3 adapters → 4.4 composition).

Evolução (brownfield — entrada é um CHG-NNN da feature-loop):

FaseMétodoSaída
E1. Análise de impactophases/evolution.mdseções 6–7 do CHG (checkpoint humano duro)
E2. Construção cirúrgicaphases/evolution.mddiff da fatia, suíte inteira verde
E3. Artefatos + relatóriophases/evolution.mdartefatos evoluídos com histórico de revisões; sem commit de entrega

Protocolo de ativação

Ao ativar a skill:

  1. Detectar o modo. Se a entrada é um CHG-NNN em docs/changes/ (handoff da feature-loop) ou o usuário pede pra evoluir/mudar/consertar um sistema que já tem docs/ddd/ + código construído → modo evolução: leia phases/evolution.md e siga por ele (as fases 1–4 abaixo são o repertório, não o roteiro). Caso contrário, greenfield.
  2. Detectar estado (greenfield). Verifique se docs/ddd/ existe no projeto. Se sim, liste os artefatos presentes e pergunte: retomar, revisar fase específica, ou recomeçar. Pule fases já concluídas a menos que o usuário peça revisão.
  3. Obter o mini-mundo. Se o usuário não forneceu, peça. Sondar: atores, eventos de negócio, restrições, integrações, escala.
  4. Detectar stack. Default Go. Se o usuário passou stack=<nome> ou mencionou outra stack, use-a. Leia templates/stacks/<stack>.md. Se o arquivo não existir, pare e peça ao usuário as convenções; escreva o arquivo de stack antes de prosseguir.
  5. Rodar fase a fase, com checkpoint. Leia o arquivo de método da fase, conduza o trabalho em conversa, escreva o artefato usando o template correspondente, apresente, pause. Não avance sem ordem do usuário.

Protocolo de checkpoint

Após cada fase ou sub-fase (4.0, 4.1, 4.2, 4.3.X, 4.4) — antes de propor commit:

  1. Atualizar docs/ddd/04-build-log.md com a nova seção (campos mínimos: iniciada/concluída, modo, resultados build/test, arquivos criados/modificados, decisões tomadas, ambiguidades flagadas, ajustes pós-review). Antes do commit, não depois.
  2. Verificar build/test verde — go build/vet/test ./... (ou equivalente da stack). Não propor commit com vermelho.
  3. Invocar revisões pré-commit quando aplicável:
    • cardpay-skills:review-go — projetos Go (já no CLAUDE.md global).
    • code-review (skill do marketplace oficial) — sempre que houver mudança significativa (≥50 LOC, ≥3 arquivos, ou camada nova). Pedir effort=high pra cobertura ampla.
    • Apresentar achados ao usuário; aplicar os que ele aprovar; documentar os mantidos com justificativa no build log.
  4. Salvar artefato no caminho documentado + apresentar ao usuário.
  5. Pausar — não avançar sem ordem.

Se o usuário editar o .md manualmente, a versão editada vira a fonte da verdade — a próxima fase lê do disco, não da memória da conversa.

Regras transversais

  • Os artefatos são o contrato entre fases. A fase N+1 nunca usa informação da fase N que não esteja escrita no artefato. Se o artefato está vago, conserte o artefato — não compense na próxima fase.
  • Seja explícito sobre incerteza. Ao propor um modelo ou decisão, liste alternativas consideradas e o porquê da escolha. Tradeoffs vão no artefato, não só na conversa.
  • Não superdesenhe. Calibre a complexidade pelo mini-mundo. Sistema pequeno não precisa de 5 bounded contexts e outbox. A fase 3 explicita esse julgamento.
  • Não invente regras de negócio. Se o usuário não disse, não escreva como se ele tivesse dito. Quando faltar info, pergunte.
  • Em modo evolução: editar, não reescrever; escopo = fatia; sem commit de entrega. A análise de impacto (o que muda? que trade-offs?) precede qualquer código e para no checkpoint humano. Exceção nomeada — o commit de congelamento: os contratos compartilhados da sub-fase (tático revisado + contracts.go) são commitados antes do despacho dos agents (docs(ddd): congela contratos da fatia CHG-NNN), porque são o contrato de convergência e o hash é o registro da versão que cada agent leu. Cobre artefato de contrato, nunca código de produção nem a entrega; a aterrissagem confere. Artefatos existentes são editados com entrada no histórico de revisões (CHG-NNN), nunca regenerados. A suíte inteira verde é o detector de preservação. Lacuna de produto na história devolve o card à feature-loop — não se remenda aqui.

Agents (dependências)

A fase 4 despacha agents dedicados em paralelo (não general-purpose). Eles devem estar instalados em ~/.claude/agents/:

AgentUsado emStatus
ddd-domain-test-generatorfase 4.1obrigatório
ddd-domain-code-generatorfase 4.1obrigatório
ddd-app-test-generatorfase 4.2obrigatório
ddd-app-code-generatorfase 4.2obrigatório

Os agents são versionados junto com a skill (mesmo repo).

Se o cumprimento de uma instrução depende de um parâmetro de tool, a instrução nomeia o parâmetro — ou é decoração. "Despache ambos em Sonnet" não garante nada: sem model na chamada da tool Agent, o agent herda o modelo da sessão — sem erro, sem aviso, e a instrução parece cumprida. Vale para model, isolation, subagent_type e execução em background.

isolation: "remote" tem uma pré-condição silenciosa: o estado que o agent vai ler precisa existir no remoto. Antes de despachar remoto, verifique e reporte: (a) a branch tem upstream; (b) HEAD está publicado; (c) os artefatos que o agent precisa ler (tático, contratos) estão rastreados e commitados. Se qualquer um falhar, apresente a escolha ao usuário (publicar × rodar local) em vez de despachar — o modo de falha não é um erro, são agents trabalhando contra a árvore errada. Publicar é ação externa: decisão humana, nunca passo automático.

Agent faltante — diagnostique antes de prescrever. Agent type '<nome>' not found tem dois modos de falha, com remediações diferentes e incompatíveis. Rode ls ~/.claude/agents/ antes de reportar:

  • arquivo ausente → instalar o agent (estão em agents/ no repo da skill);
  • arquivo presente, tipo não registrado → a lista de agents de uma sessão em execução não relê o disco. Só sessão nova resolve; pedir recarga em sessão viva não tem efeito e queima um ciclo de ida e volta com o usuário.

Agent que morreu no meio pode ter entregado. Estouro de limite de gasto, timeout ou interrupção deixam o que já foi escrito intocado em disco — o que não voltou foi o relato, não necessariamente o trabalho. Antes de propor reexecução, liste os artefatos que ele deveria ter produzido e reporte o que existe. Reexecutar às cegas paga de novo exatamente quando o orçamento acabou, e o agent novo pode sobrescrever com outra variante arquivos que o par cego já consumiu.

Arquivos

  • phases/01-strategic.md — método estratégico (domínio, subdomínios, linguagem ubíqua, bounded contexts, mapa de contextos)
  • phases/02-tactical.md — método tático (entidades, VOs, agregados, repositórios, invariantes, eventos)
  • phases/03-architecture.md — árvore de decisão arquitetural (topologia, comunicação, consistência, padrões de leitura, evolução)
  • phases/04-implementation.md — orquestrador da fase de código
  • phases/evolution.md — modo evolução (brownfield): análise de impacto com checkpoint duro → construção cirúrgica → evolução de artefatos; entrada CHG-NNN, entrega sem commit (exceto o congelamento dos contratos)
  • phases/04-0-contracts.md — geração de contratos compartilhados
  • phases/04-1-domain.md — domínio em paralelo (testes ∥ código via subagents)
  • phases/04-2-application.md — aplicação em paralelo (testes ∥ código via subagents)
  • phases/04-3-adapters.md — adapters (sequencial: código → testes de integração)
  • phases/04-4-composition.md — composition root, main, smoke test
  • templates/01-strategic.md.tmpl — template do artefato estratégico
  • templates/02-tactical.md.tmpl — template do artefato tático
  • templates/03-architecture-adr.md.tmpl — template do ADR de arquitetura
  • templates/stacks/go.md — convenções Go (default)

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.