architecture-decision-records
Ajuda seu agente a registrar decisões importantes de arquitetura. Ele cria documentos que explicam o porquê de certas escolhas técnicas.
O que ela faz
Esta ferramenta ajuda a registrar e gerenciar decisões importantes sobre como construir software. Ela documenta o porquê de uma escolha técnica ter sido feita, quais outras opções foram consideradas e quais foram os resultados.
Quando usar
- ✓Ao escolher uma nova tecnologia para um projeto.
- ✓Ao decidir como diferentes partes do software devem se comunicar.
- ✓Ao documentar mudanças importantes que afetam a estrutura do software.
Exemplo do que pedir para a IA
“Registre a decisão de usar PostgreSQL como banco de dados principal para o novo e-commerce.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Você descreve o problema, lista as opções que pensou, explica qual escolheu e por quê, e detalha o que aconteceu depois.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill architecture-decision-recordsOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/architecture-decision-records/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Registros de Decisões de Arquitetura
Padrões abrangentes para criar, manter e gerenciar Registros de Decisões de Arquitetura (ADRs) que capturam o contexto e a justificativa por trás de decisões técnicas significativas.
Use esta habilidade quando
- Tomar decisões arquiteturais significativas
- Documentar escolhas de tecnologia
- Registrar trade-offs de design
- Integrar novos membros da equipe
- Revisar decisões históricas
- Estabelecer processos de tomada de decisão
Não use esta habilidade quando
- Você só precisa documentar pequenos detalhes de implementação
- A mudança é um patch menor ou manutenção de rotina
- Não há decisão arquitetural a ser registrada
Instruções
- Capture o contexto, as restrições e os impulsionadores da decisão.
- Documente as opções consideradas com seus trade-offs.
- Registre a decisão, a justificativa e as consequências.
- Vincule ADRs relacionados e atualize o status ao longo do tempo.
Conceitos Principais
1. O que é um ADR?
Um Registro de Decisão de Arquitetura captura:
- Contexto: Por que precisávamos tomar uma decisão
- Decisão: O que decidimos
- Consequências: O que acontece como resultado
2. Quando Escrever um ADR
| Escrever ADR | Pular ADR |
|---|---|
| Adoção de novo framework | Atualizações de versão menores |
| Escolha de tecnologia de banco de dados | Correções de bugs |
| Padrões de design de API | Detalhes de implementação |
| Arquitetura de segurança | Manutenção de rotina |
| Padrões de integração | Mudanças de configuração |
3. Ciclo de Vida do ADR
Proposed → Accepted → Deprecated → Superseded
↓
Rejected
Modelos
Modelo 1: ADR Padrão (Formato MADR)
# ADR-0001: Usar PostgreSQL como Banco de Dados Principal
## Status
Aceito
## Contexto
Precisamos selecionar um banco de dados principal para nossa nova plataforma de e-commerce. O sistema lidará com:
- ~10.000 usuários simultâneos
- Catálogo de produtos complexo com categorias hierárquicas
- Processamento de transações para pedidos e pagamentos
- Busca de texto completo para produtos
- Consultas geoespaciais para localizador de lojas
A equipe tem experiência com MySQL, PostgreSQL e MongoDB. Precisamos de conformidade ACID para transações financeiras.
## Impulsionadores da Decisão
* **Deve ter conformidade ACID** para processamento de pagamentos
* **Deve suportar consultas complexas** para relatórios
* **Deve suportar busca de texto completo** para reduzir a complexidade da infraestrutura
* **Deve ter bom suporte a JSON** para atributos de produto flexíveis
* **Familiaridade da equipe** reduz o tempo de integração
## Opções Consideradas
### Opção 1: PostgreSQL
- **Prós**: Conformidade ACID, excelente suporte a JSON (JSONB), busca de texto completo integrada, PostGIS para geoespacial, a equipe tem experiência
- **Contras**: Configuração de replicação ligeiramente mais complexa que o MySQL
### Opção 2: MySQL
- **Prós**: Muito familiar para a equipe, replicação simples, grande comunidade
- **Contras**: Suporte a JSON mais fraco, sem busca de texto completo integrada (precisa de Elasticsearch), sem geoespacial sem extensões
### Opção 3: MongoDB
- **Prós**: Esquema flexível, JSON nativo, escalabilidade horizontal
- **Contras**: Sem ACID para transações multi-documento (no momento da decisão), a equipe tem experiência limitada, requer disciplina de design de esquema
## Decisão
Usaremos o **PostgreSQL 15** como nosso banco de dados principal.
## Justificativa
O PostgreSQL oferece o melhor equilíbrio entre:
1. **Conformidade ACID** essencial para transações de e-commerce
2. **Capacidades integradas** (busca de texto completo, JSONB, PostGIS) reduzem a complexidade da infraestrutura
3. **Familiaridade da equipe** com bancos de dados SQL reduz a curva de aprendizado
4. **Ecossistema maduro** com excelente suporte de ferramentas e comunidade
A ligeira complexidade na replicação é compensada pela redução de serviços adicionais (nenhum Elasticsearch separado necessário).
## Consequências
### Positivas
- Um único banco de dados lida com transações, busca e consultas geoespaciais
- Complexidade operacional reduzida (menos serviços para gerenciar)
- Fortes garantias de consistência para dados financeiros
- A equipe pode alavancar a expertise SQL existente
### Negativas
- Necessidade de aprender recursos específicos do PostgreSQL (sintaxe de JSONB, busca de texto completo)
- Limites de escalabilidade vertical podem exigir réplicas de leitura mais cedo
- Alguns membros da equipe precisam de treinamento específico em PostgreSQL
### Riscos
- A busca de texto completo pode não escalar tão bem quanto mecanismos de busca dedicados
- Mitigação: Projetar para uma possível adição de Elasticsearch, se necessário
## Notas de Implementação
- Usar JSONB para atributos de produto flexíveis
- Implementar pooling de conexões com PgBouncer
- Configurar replicação de streaming para réplicas de leitura
- Usar a extensão pg_trgm para busca fuzzy
## Decisões Relacionadas
…
Perguntas frequentes
O que é um ADR?
É um documento curto que explica uma decisão técnica importante, incluindo o contexto, a decisão tomada e suas consequências.
Quando devo usar isso?
Use quando fizer uma escolha técnica significativa que precise ser lembrada e entendida por todos, como escolher um banco de dados ou um novo framework.
Quando NÃO devo usar isso?
Não use para documentar pequenas correções de bugs ou mudanças rotineiras que não afetam a estrutura principal do software.
Detalhes
Descrição original do autor
Comprehensive patterns for creating, maintaining, and managing Architecture Decision Records (ADRs) that capture the context and rationale behind significant technical decisions.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2195
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
architecture-decision-records
Faz seu agente registrar decisões importantes sobre a estrutura do projeto. Ajuda a entender o porquê das escolhas feitas e a manter um histórico claro das mudanças.
affaan-m/ECC
code-tour
Faz seu agente criar guias passo a passo no código, com locais exatos em arquivos e linhas. É útil para apresentar um projeto, explicar código ou revisar mudanças. Ajuda a entender como um sistema funciona.
affaan-m/ECC
codebase-onboarding
Ajuda seu agente a analisar um código desconhecido e criar um guia de integração. Ele inclui um mapa da arquitetura, pontos de entrada e convenções. Ideal para quem está começando em um novo projeto.
affaan-m/ECC