rhpxgr8pzm-max/claude-skills

Capture decisões arquiteturais como arquivos ADR numerados em docs/adr/ com contexto, alternativas consideradas, consequências e um README índice. Ative quando o usuário disser 'grave esta decisão' ou 'ADR isso', escolher entre frameworks ou bancos de dados, discutir trade-offs ou perguntar por que o código está assim.

O que é claude-skills?

Esta skill (rhpxgr8pzm-max/claude-skills) transforma a captura de decisões arquiteturais durante sessões de codificação em documentos estruturados e versionados. Em vez de decisões importantes ficarem perdidas em threads do Slack, comentários de PR ou na memória de alguém, a skill gera ADRs (Architecture Decision Records) formatados segundo a proposta de Michael Nygard, adaptados para desenvolvimento assistido por IA. Ela suporta agentes como Claude Code, Cursor e Codex, detectando sinais explícitos ('grave esta decisão', 'ADR isso', 'vamos de X') e implícitos (comparações entre frameworks, escolhas de schema de banco, decisões de infraestrutura). O fluxo de trabalho inclui inicialização segura do diretório docs/adr/ (somente com confirmação do usuário), extração de contexto, documentação de alternativas consideradas, consequências, numeração automática baseada em ADRs existentes e escrita do arquivo apenas após aprovação explícita. Também permite consulta a ADRs anteriores quando o usuário pergunta 'por que escolhemos X?'. A skill enfatiza boas práticas: ser específico, registrar o 'porquê', incluir alternativas rejeitadas, manter o documento conciso (legível em 2 minutos) e usar o ciclo de vida proposto → aceito → [depreciado | substituído por ADR-NNNN].

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/rhpxgr8pzm-max/claude-skills/tree/HEAD/plugins/tally-dev/skills/architecture-decision-records

Installed? Explore more Produtividade e Colaboração skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Registros de Decisão Arquitetural (ADR)

Capture decisões arquiteturais conforme elas acontecem durante sessões de codificação. Em vez de decisões viverem apenas em threads do Slack, comentários de PR ou na memória de alguém, esta skill produz documentos ADR estruturados que acompanham o código.

Quando Ativar

  • O usuário diz explicitamente "vamos registrar esta decisão" ou "ADR isso"
  • O usuário escolhe entre alternativas significativas (framework, biblioteca, padrão, banco de dados, design de API)
  • O usuário diz "nós decidimos..." ou "a razão pela qual estamos fazendo X em vez de Y é..."
  • O usuário pergunta "por que escolhemos X?" (ler ADRs existentes)
  • Durante fases de planejamento quando trade-offs arquiteturais são discutidos

Formato ADR

Use o formato ADR leve proposto por Michael Nygard, adaptado para desenvolvimento assistido por IA:

# ADR-NNNN: [Título da Decisão]

**Data**: YYYY-MM-DD
**Status**: proposta | aceita | depreciada | substituída por ADR-NNNN
**Decisores**: [quem estava envolvido]

## Contexto

Qual é o problema que estamos vendo que motiva esta decisão ou mudança?

[2-5 frases descrevendo a situação, restrições e forças em jogo]

## Decisão

Qual é a mudança que estamos propondo e/ou fazendo?

[1-3 frases declarando a decisão claramente]

## Alternativas Consideradas

### Alternativa 1: [Nome]
- **Prós**: [benefícios]
- **Contras**: [desvantagens]
- **Por que não**: [motivo específico pelo qual foi rejeitada]

### Alternativa 2: [Nome]
- **Prós**: [benefícios]
- **Contras**: [desvantagens]
- **Por que não**: [motivo específico pelo qual foi rejeitada]

## Consequências

O que se torna mais fácil ou mais difícil de fazer por causa desta mudança?

### Positivas
- [benefício 1]
- [benefício 2]

### Negativas
- [trade-off 1]
- [trade-off 2]

### Riscos
- [risco e mitigação]

Fluxo de Trabalho

Capturando um Novo ADR

Quando um momento de decisão for detectado:

  1. Inicializar (apenas na primeira vez) — se docs/adr/ não existir, peça confirmação ao usuário antes de criar o diretório, um README.md com o cabeçalho da tabela de índice (veja Formato do Índice ADR abaixo) e um template.md em branco para uso manual. Não crie arquivos sem consentimento explícito.
  2. Identificar a decisão — extraia a escolha arquitetural central que está sendo feita
  3. Coletar contexto — qual problema motivou isso? Quais restrições existem?
  4. Documentar alternativas — quais outras opções foram consideradas? Por que foram rejeitadas?
  5. Declarar consequências — quais são os trade-offs? O que se torna mais fácil/difícil?
  6. Atribuir um número — escaneie ADRs existentes em docs/adr/ e incremente
  7. Confirmar e escrever — apresente o rascunho do ADR ao usuário para revisão. Escreva em docs/adr/NNNN-titulo-da-decisao.md apenas após aprovação explícita. Se o usuário recusar, descarte o rascunho sem escrever nenhum arquivo.
  8. Atualizar o índice — anexe ao docs/adr/README.md

Lendo ADRs Existentes

Quando um usuário pergunta "por que escolhemos X?":

  1. Verifique se docs/adr/ existe — se não existir, responda: "Nenhum ADR encontrado neste projeto. Gostaria de começar a registrar decisões arquiteturais?"
  2. Se existir, escaneie o índice docs/adr/README.md em busca de entradas relevantes
  3. Leia os arquivos ADR correspondentes e apresente as seções de Contexto e Decisão
  4. Se nenhuma correspondência for encontrada, responda: "Nenhum ADR encontrado para essa decisão. Gostaria de registrar um agora?"

Estrutura do Diretório ADR

docs/
└── adr/
    ├── README.md              ← índice de todos os ADRs
    ├── 0001-use-nextjs.md
    ├── 0002-postgres-over-mongo.md
    ├── 0003-rest-over-graphql.md
    └── template.md            ← modelo em branco para uso manual

Formato do Índice ADR

# Registros de Decisão Arquitetural

| ADR | Título | Status | Data |
|-----|--------|--------|------|
| [0001](0001-use-nextjs.md) | Usar Next.js como framework frontend | aceita | 2026-01-15 |
| [0002](0002-postgres-over-mongo.md) | PostgreSQL sobre MongoDB como armazenamento primário | aceita | 2026-01-20 |
| [0003](0003-rest-over-graphql.md) | API REST sobre GraphQL | aceita | 2026-02-01 |

Sinais de Detecção de Decisão

Fique atento a estes padrões na conversa que indicam uma decisão arquitetural:

Sinais explícitos

  • "Vamos de X"
  • "Deveríamos usar X em vez de Y"
  • "O trade-off vale a pena porque..."
  • "Registre isso como um ADR"

Sinais implícitos (sugira registrar um ADR — não crie automaticamente sem confirmação do usuário)

  • Comparar dois frameworks ou bibliotecas e chegar a uma conclusão
  • Fazer uma escolha de design de schema de banco de dados com justificativa declarada
  • Escolher entre padrões arquiteturais (monólito vs microsserviços, REST vs GraphQL)
  • Decidir sobre estratégia de autenticação/autorização
  • Selecionar infraestrutura de deploy após avaliar alternativas

O Que Torna um Bom ADR

Faça

  • Seja específico — "Usar Prisma ORM", não "usar um ORM"
  • Registre o porquê — a justificativa importa mais do que o quê
  • Inclua alternativas rejeitadas — futuros desenvolvedores precisam saber o que foi considerado
  • Declare consequências honestamente — toda decisão tem trade-offs
  • Mantenha curto — um ADR deve ser legível em 2 minutos
  • Use o presente — "Usamos X", não "Usaremos X"

Não Faça

  • Registrar decisões triviais — escolhas de nomenclatura de variáveis ou formatação não precisam de ADRs
  • Escrever ensaios — se a seção de contexto exceder 10 linhas, está muito longa
  • Omitir alternativas — "apenas escolhemos" não é uma justificativa válida
  • Preencher retroativamente sem marcar — se estiver registrando uma decisão passada, anote a data original
  • Deixar ADRs ficarem obsoletos — decisões substituídas devem referenciar sua substituição

Ciclo de Vida do ADR

proposta → aceita → [depreciada | substituída por ADR-NNNN]
  • proposta: decisão está em discussão, ainda não foi confirmada
  • aceita: decisão está em vigor e sendo seguida
  • depreciada: decisão não é mais relevante (ex.: funcionalidade removida)
  • substituída: um ADR mais novo substitui este (sempre vincule a substituição)

Categorias de Decisões que Vale a Pena Registrar

CategoriaExemplos
Escolhas de tecnologiaFramework, linguagem, banco de dados, provedor de nuvem
Padrões arquiteturaisMonólito vs microsserviços, orientado a eventos, CQRS
Design de APIREST vs GraphQL, estratégia de versionamento, mecanismo de autenticação
Modelagem de dadosDesign de schema, decisões de normalização, estratégia de cache
InfraestruturaModelo de deploy, pipeline CI/CD, stack de monitoramento
SegurançaEstratégia de autenticação, abordagem de criptografia, gerenciamento de segredos
TestesFramework de teste, metas de cobertura, equilíbrio E2E vs integração
ProcessoEstratégia de branching, processo de revisão, cadência de releases

Integração com Outras Skills

  • Agente planejador: quando o planejador propuser mudanças arquiteturais, sugira criar um ADR
  • Agente revisor de código: sinalize PRs que introduzam mudanças arquiteturais sem um ADR correspondente

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Habilidades Relacionadas