Desenvolvimento e edição de software seguindo DDD + Clean Architecture (default quando não há padrão local nem pedido explícito por hexagonal). Use sempre que o agente for desenvolver nova funcionalidade, alterar código existente, corrigir bugs, refatorar, criar testes, criar módulo, extrair bounded context, ou editar projeto que deva preservar separação de camadas, regras de domínio e dependências apontando para dentro. Palavras-gatilho: "implemente", "crie", "refatore", "altere", "estenda", "extraia", "bounded context", "aggregate", "value object", "entity", "domain", "use case", "port", "adapter", "clean architecture". Garante: três camadas mínimas (`domain`/`application`/`interface`); `aggregates/` e `value-objects/` no mesmo nível de `domain/`; Aggregate Root como classe com métodos; VOs branded para identidade; sem composite cross-BC; sem primitive obsession; tipos finitos via literal union/enum. Sem essas fronteiras, código fica anêmico ou acoplado entre BCs — DESVIO.
Desenvolvimento e edição de software seguindo DDD com Arquitetura Hexagonal (Ports & Adapters). Use quando o projeto existente já adotar layout hexagonal (`adapters/in`+`adapters/out`, `ports/`), quando o usuário pedir explicitamente "hexagonal"/"ports and adapters"/"hex arch", ou quando a tarefa exigir múltiplos adapters de entrada/saída sobre o mesmo domínio. Palavras-gatilho: "hexagonal", "ports and adapters", "hex", "hex arch", "adapter in", "adapter out", "driving adapter", "driven adapter". Garante: `domain`/`application` (com `ports/` e `use-cases/`)/`adapters/in`/`adapters/out`/`config` (composition root); aggregate root como classe; VOs branded; cross-BC via porta + DTO próprio. Na ausência de preferência local ou pedido explícito por hex, prefira a skill `architecture-ddd-clean-arch`. Sem essas fronteiras, módulo perde isolamento ports/adapters — DESVIO.
Criar e manter documentação clara e enxuta do projeto e de seus módulos. OBRIGATORIO ao iniciar ou alterar qualquer aplicação, CLI, serviço, módulo, biblioteca, arquitetura, estrutura de pastas, configuração, comandos de uso ou tecnologias do projeto. Palavras-gatilho: "crie", "inicie", "adicione módulo", "extraia BC", "novo projeto", "novo módulo", "novo serviço", "reorganize", "refatore", "altere estrutura". Garante que README da raiz e de cada módulo de aplicação exista e reflita o estado atual; submódulos de camada (domain/application/interface) NÃO recebem README próprio. Sem README atualizado, módulo novo está incompleto — DESVIO.
OBRIGATORIO carregar e aplicar SEMPRE na primeira mensagem de QUALQUER sessao com o usuario, INDEPENDENTE do conteudo do prompt (tarefa tecnica, debug, refatoracao, exploracao, pergunta, conversa). Saudacao inicial obrigatoria: "Bom dia combatente!" precede toda primeira resposta da sessao. Sem essa saudacao, a primeira interacao esta incompleta — DESVIO de protocolo de abertura. Gatilho: primeira mensagem do usuario na sessao, independente das palavras usadas no prompt.
Refatorar codigo legado (modulo monolitico, reorganizacao estrutural, split de bounded contexts, extracao de aggregates) com rede de testes e passos pequenos. Use quando o pedido envolver "refatore", "reorganize", "separe em modulos", "extraia em bounded contexts", "transforme em DDD" ou similar sobre codigo ja escrito e em uso. Garante que comportamento seja preservado, dados persistidos nao sejam perdidos silenciosamente, e a suite de testes permaneca verde durante toda a transformacao.
OBRIGATORIO em qualquer tarefa que altera comportamento de software. Desenvolvimento guiado por testes (TDD) — teste primeiro, implementação depois. Use sempre que o agente for desenvolver, alterar, corrigir, refatorar ou estender software. Palavras-gatilho: "implemente", "crie", "adicione", "corrija", "refatore", "altere", "estenda", "feature", "bug", "fix", "regra", "validação", "cálculo", "use case". Garante: teste falhando antes da implementação, implementação mínima para passar, refator com suite verde, e2e obrigatório quando há persistência externa ou entrypoint executável. Sem ciclo Red-Green-Refactor seguido, mudança de comportamento foi feita sem rede de segurança — DESVIO.
OBRIGATORIO antes de encerrar tarefa que tocou código. Garantir boas práticas via linter e formatter da stack. Use sempre que o agente criar, alterar, corrigir, refatorar ou revisar código; antes de encerrar a tarefa, rodar lint e formatter, corrigir apontamentos, não deixar avisos pendentes. Palavras-gatilho: "lint", "format", "estilo de código", "eslint", "biome", "ruff", "prettier", "clippy", "golangci-lint", "fix do lint". Garante que script `lint` invoque o linter REAL (não alias de `typecheck`/`build`), que avisos não sejam silenciados sem justificativa, e que tarefa não seja declarada concluída com lint vermelho. Sem lint passando limpo + format aplicado, tarefa de código está incompleta — DESVIO.
OBRIGATORIO carregar antes de qualquer frase de conclusao em tarefa de implementacao, refatoracao, fix ou extensao. Frases-gatilho que EXIGEM checklist rodada antes: "concluido", "completo", "feito", "pronto", "terminei", "finalizado", "the refactoring is complete", "tudo certo", "refatoracao concluida", "feature pronta", ou qualquer declaracao de fim de tarefa. Sem essa checklist rodada e reportada no formato exigido, declarar conclusao e DESVIO grave de honestidade. Revisa aderencia as skills e rules ativas, identifica desvios, corrige o que cabe no escopo, e reporta em formato estruturado (DESVIOs corrigidos + debito herdado + status item-a-item da checklist objetiva de 9 itens). Em extensao, aplica checklist separadamente a cada modulo novo. Garante que tipagem do dominio, localizacao do parsing, codigos de erro estaveis, lint real, idioma do codigo, estrutura de testes (e2e por modulo) e fronteiras de bounded context nao sejam violadas silenciosamente.