Pular para o conteúdo
Skillpedia
Documentação41 mil · #4855

architecture-decision-records

Ajuda seu agente a escrever e organizar registros de decisões de arquitetura. É útil para documentar escolhas técnicas importantes e manter um histórico claro.

O que ela faz

Esta ferramenta ajuda a registrar e gerenciar decisões importantes sobre como construir software. Ela explica o porquê de uma decisão, qual foi a decisão tomada e o que acontece como resultado.

Quando usar

  • ✓Ao decidir qual nova tecnologia usar em um projeto.
  • ✓Quando você precisa explicar por que uma escolha técnica foi feita.
  • ✓Para manter um histórico de como o software evoluiu.

Exemplo do que pedir para a IA

“Registre a decisão de usar PostgreSQL como banco de dados principal para o projeto X.”

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

https://github.com/wshobson/agents/blob/main/plugins/documentation-generation/skills/architecture-decision-records/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/wshobson/agents/blob/main/plugins/documentation-generation/skills/architecture-decision-records/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você escreve um documento curto explicando o problema, as opções consideradas, a decisão final e as consequências. Esses documentos são organizados em uma pasta e podem ser atualizados conforme as decisões mudam.

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 wshobson/agents --skill architecture-decision-records

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/documentation-generation/skills/architecture-decision-records/SKILL.md -o SKILL.md
Conteú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.

Quando Usar Esta Habilidade

  • Tomar decisões arquiteturais significativas
  • Documentar escolhas de tecnologia
  • Registrar compromissos de design (trade-offs)
  • Integrar novos membros da equipe
  • Revisar decisões históricas
  • Estabelecer processos de tomada de decisão

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 rotineira
Padrões de integração Mudanças de configuração

3. Ciclo de Vida do ADR

Proposed → Accepted → Deprecated → Superseded
              ↓
           Rejected

Antes de redigir um ADR padrão, leve ou Y-statement, leia modelos de decisão.

Antes de redigir um ADR de depreciação ou RFC, leia modelos de depreciação e RFC.

Gerenciamento de ADRs

Estrutura de Diretório

docs/
├── adr/
│   ├── README.md           # Index and guidelines
│   ├── template.md         # Team's ADR template
│   ├── 0001-use-postgresql.md
│   ├── 0002-caching-strategy.md
│   ├── 0003-mongodb-user-profiles.md  # [DEPRECATED]
│   └── 0020-deprecate-mongodb.md      # Supersedes 0003

Índice de ADRs (README.md)

# Architecture Decision Records

This directory contains Architecture Decision Records (ADRs) for [Project Name].

## Index

| ADR                                   | Title                              | Status     | Date       |
| ------------------------------------- | ---------------------------------- | ---------- | ---------- |
| [0001](0001-use-postgresql.md)        | Use PostgreSQL as Primary Database | Accepted   | 2024-01-10 |
| [0002](0002-caching-strategy.md)      | Caching Strategy with Redis        | Accepted   | 2024-01-12 |
| [0003](0003-mongodb-user-profiles.md) | MongoDB for User Profiles          | Deprecated | 2023-06-15 |
| [0020](0020-deprecate-mongodb.md)     | Deprecate MongoDB                  | Accepted   | 2024-01-15 |

## Creating a New ADR

1. Copy `template.md` to `NNNN-title-with-dashes.md`
2. Fill in the template
3. Submit PR for review
4. Update this index after approval

## ADR Status

- **Proposed**: Under discussion
- **Accepted**: Decision made, implementing
- **Deprecated**: No longer relevant
- **Superseded**: Replaced by another ADR
- **Rejected**: Considered but not adopted

Automação (adr-tools)

# Install adr-tools
brew install adr-tools

# Initialize ADR directory
adr init docs/adr

# Create new ADR
adr new "Use PostgreSQL as Primary Database"

# Supersede an ADR
adr new -s 3 "Deprecate MongoDB in Favor of PostgreSQL"

# Generate table of contents
adr generate toc > docs/adr/README.md

# Link related ADRs
adr link 2 "Complements" 1 "Is complemented by"

Processo de Revisão

## ADR Review Checklist

### Before Submission

- [ ] Context clearly explains the problem
- [ ] All viable options considered
- [ ] Pros/cons balanced and honest
- [ ] Consequences (positive and negative) documented
- [ ] Related ADRs linked

### During Review

- [ ] At least 2 senior engineers reviewed
- [ ] Affected teams consulted
- [ ] Security implications considered
- [ ] Cost implications documented
- [ ] Reversibility assessed

### After Acceptance

- [ ] ADR index updated
- [ ] Team notified
- [ ] Implementation tickets created
- [ ] Related documentation updated

Melhores Práticas

Fazer

  • Escrever ADRs cedo - Antes do início da implementação
  • Mantê-los curtos - 1-2 páginas no máximo
  • Ser honesto sobre os compromissos - Incluir contras reais
  • Vincular decisões relacionadas - Construir um grafo de decisões
  • Atualizar o status - Depreciar quando substituído

Não Fazer

  • Não alterar ADRs aceitos - Escrever novos para substituir
  • Não omitir o contexto - Leitores futuros precisam de histórico
  • Não esconder falhas - Decisões rejeitadas são valiosas

…

Perguntas frequentes

O que é um ADR?

É um documento que registra uma decisão técnica importante, explicando o contexto, a decisão e suas consequências.

Quando devo escrever um ADR?

Sempre que uma decisão técnica tiver um impacto significativo, como escolher uma nova tecnologia, mudar a arquitetura ou definir padrões importantes.

O que significa 'Deprecated' ou 'Superseded'?

'Deprecated' (Obsoleto) significa que a decisão não é mais recomendada. 'Superseded' (Substituído) significa que uma nova decisão a substituiu.

Detalhes

Descrição original do autor

Write and maintain Architecture Decision Records (ADRs) following best practices for technical decision documentation. Use when documenting significant technical decisions, reviewing past architectural choices, or establishing decision processes.

repo: wshobson/agents

Popularidade

Estrelas no GitHub
41 mil
Posição no ranking
#4855
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas