Pular para o conteúdo

Importando ADRs

Um ADR pack é uma coleção curada de Architecture Decision Records agrupados sob um tema compartilhado. Cada pack inclui:

  • Um manifesto archgate-pack.yaml com metadados (nome, versão, mantenedores, tags)
  • Um ou mais arquivos ADR markdown em um diretório adrs/
  • Arquivos complementares .rules.ts opcionais que aplicam cada decisão automaticamente

Packs permitem inicializar um projeto com convenções arquiteturais comprovadas em vez de escrever tudo do zero.

O registro Archgate awesome-adrs hospeda packs mantidos pela comunidade. Importe um com:

Terminal window
archgate adr import packs/typescript-strict

Isso clona o registro, copia os ADRs para o diretório .archgate/adrs/ e remapeia os IDs para se adequar ao esquema de numeração do seu projeto.

Adicione @<ref> para fixar em uma tag ou branch específica:

Terminal window
archgate adr import packs/[email protected]

Você não precisa importar um pack inteiro. Aponte para um arquivo ADR específico dentro de um pack:

Terminal window
archgate adr import packs/security/adrs/SEC-001-no-secrets-in-code

Apenas esse ADR (e seu arquivo de regras complementar, se existir) será importado.

Qualquer repositório GitHub com arquivos ADR funciona como fonte. Use a sintaxe org/repo/path com três segmentos:

Terminal window
archgate adr import acme/company-adrs/packs/api-standards

Isso clona https://github.com/acme/company-adrs.git e importa do subpath especificado.

Para repositórios não-GitHub ou quando precisar de controle total, passe uma URL completa:

Terminal window
archgate adr import https://github.com/org/repo/tree/main/packs/my-pack

O CLI analisa o formato GitHub /tree/<ref>/<path> automaticamente. Para outros hosts, passe qualquer URL clonável via git:

Terminal window
archgate adr import https://gitlab.com/team/repo.git

Veja o que seria importado sem escrever nada:

Terminal window
archgate adr import packs/typescript-strict --dry-run

A saída mostra os IDs originais, IDs remapeados e títulos em uma tabela.

Verifique o que foi importado anteriormente:

Terminal window
archgate adr import --list

Isso lê .archgate/imports.json e exibe cada fonte, versão e os IDs de ADR produzidos.

Quando você importa ADRs, os IDs originais (ex: TS-001) são remapeados para se adequar à sequência de IDs do seu projeto. Por exemplo, se seu projeto já tem ARCH-001 até ARCH-005, os ADRs importados receberão ARCH-006, ARCH-007, etc.

Você pode sobrescrever o prefixo com --prefix:

Terminal window
archgate adr import packs/security --prefix SEC

O remapeamento garante:

  1. Nenhuma colisão de ID com ADRs existentes
  2. Um esquema de numeração único e consistente em todo o projeto
  3. Arquivos de regras importados funcionam imediatamente sem edições manuais

Cada importação é registrada em .archgate/imports.json:

{
"imports": [
{
"source": "packs/typescript-strict",
"version": "0.3.0",
"importedAt": "2026-05-10T14:32:00.000Z",
"adrIds": ["ARCH-006", "ARCH-007", "ARCH-008"]
}
]
}

Este manifesto permite rastrear a proveniência — de onde cada ADR importado veio e quando. Faça commit dele no controle de versão junto com seus ADRs.

OpçãoDescrição
--yesPula o prompt de confirmação
--jsonSaída em formato JSON
--dry-runPreview sem escrever arquivos
--prefix <prefix>Sobrescreve o prefixo de ID dos ADRs importados
--listLista ADRs importados anteriormente