Pular para o conteúdo

archgate adr

Cria um novo ADR interativamente ou via flags.

Terminal window
archgate adr create [options]

Quando executado sem --title e --domain, o comando solicita interativamente o domínio, título e padrões de arquivo opcionais. Quando ambos --title e --domain são fornecidos, ele executa de forma não interativa.

O ID do ADR é gerado automaticamente com o prefixo do domínio e o próximo número de sequência disponível (ex.: ARCH-002, BE-001).

OpçãoDescrição
--title <title>Título do ADR (pula o prompt interativo)
--domain <domain>Domínio do ADR. Integrados: backend, frontend, data, architecture, general. Domínios personalizados devem ser registrados antes via archgate adr domain add.
--files <patterns>Padrões de arquivo, separados por vírgula
--body <markdown>Corpo completo do ADR em markdown (pula o template)
--rulesDefine rules: true no frontmatter
--jsonSaída como JSON

Modo interativo:

Terminal window
archgate adr create

Modo não interativo:

Terminal window
archgate adr create \
--title "API Response Envelope" \
--domain backend \
--files "src/api/**/*.ts" \
--rules

Lista todos os ADRs do projeto.

Terminal window
archgate adr list [options]
OpçãoDescrição
--jsonSaída como JSON
--domain <domain>Filtrar por domínio

Listar todos os ADRs em formato de tabela:

Terminal window
archgate adr list
ID Domain Rules Title
────────────────────────────────────────────────────────
ARCH-001 architecture true Command Structure
ARCH-002 architecture true Error Handling
BE-001 backend true API Response Envelope

Listar ADRs como JSON:

Terminal window
archgate adr list --json

Filtrar por domínio:

Terminal window
archgate adr list --domain backend

Exibe um ADR específico pelo ID.

Terminal window
archgate adr show <id>

Imprime o conteúdo completo do ADR (frontmatter e corpo) na saída padrão.

ArgumentoDescrição
<id>ID do ADR (ex.: ARCH-001, BE-003)
Terminal window
archgate adr show ARCH-001

Atualiza um ADR existente pelo ID.

Terminal window
archgate adr update --id <id> --body <markdown> [options]

Substitui o corpo do ADR pelo markdown fornecido. Campos do frontmatter (--title, --domain, --files, --rules) são atualizados apenas quando passados explicitamente; caso contrário, os valores existentes são preservados.

OpçãoObrigatórioDescrição
--id <id>SimID do ADR a atualizar (ex.: ARCH-001)
--body <markdown>SimCorpo completo do ADR em markdown (substitui o existente)
--title <title>NãoNovo título do ADR (preserva o existente se omitido)
--domain <domain>NãoNovo domínio. Integrados: backend, frontend, data, architecture, general. Domínios personalizados devem ser registrados antes via archgate adr domain add.
--files <patterns>NãoNovos padrões de arquivo, separados por vírgula (preserva existente se omitido)
--rulesNãoDefine rules: true no frontmatter
--jsonNãoSaída como JSON
Terminal window
archgate adr update \
--id ARCH-001 \
--title "Updated Command Structure" \
--body "## Context\n\nUpdated context..."

Gerencia domínios ADR personalizados. Domínios personalizados são mapeamentos nome → prefixo de ID persistidos em .archgate/config.json e mesclados com os cinco integrados (backend, frontend, data, architecture, general) no momento da leitura.

Use este comando quando uma decisão não se encaixar claramente em nenhum domínio integrado. Antes de registrar um novo, verifique se a decisão pode ser agrupada sob um domínio existente — integrados são o padrão e um domínio personalizado deve ser introduzido apenas quando nenhum integrado for uma opção genuína.

Terminal window
archgate adr domain <subcommand> [options]
SubcomandoDescrição
archgate adr domain listExibe todos os domínios mesclados (integrados + personalizados) e seus prefixos
archgate adr domain add <name> <prefix>Registra um domínio personalizado
archgate adr domain remove <name>Remove um domínio personalizado (integrados não podem ser removidos)
  • <name> — kebab-case em minúsculas, 2–32 caracteres (ex.: security, ml-ops)
  • <prefix> — letras maiúsculas, dígitos ou underscores, 2–10 caracteres (ex.: SEC, MLOPS)
  • Nomes e prefixos personalizados não podem colidir com integrados ou com qualquer outra entrada personalizada.
OpçãoAplica-se aDescrição
--jsontodos os subcomandosSaída como JSON

Listar domínios integrados e personalizados:

Terminal window
archgate adr domain list
Domain Prefix Source
────────────────────────────────
architecture ARCH default
backend BE default
data DATA default
frontend FE default
general GEN default
security SEC custom

Registrar um domínio personalizado:

Terminal window
archgate adr domain add security SEC

Remover um domínio personalizado:

Terminal window
archgate adr domain remove security

Importa ADRs do registro ou de um repositório git.

Terminal window
archgate adr import <source...> [options]

O comando clona a fonte, lê os arquivos ADR, remapeia os IDs para a sequência do projeto local e os grava em .archgate/adrs/. As importações são rastreadas em .archgate/imports.json para que possam ser verificadas posteriormente via archgate adr sync.

ArgumentoDescrição
<source...>Caminho(s) do registro, org/repo/path ou URL(s) git
OpçãoDescrição
--yesPula o prompt de confirmação
--jsonSaída como JSON
--dry-runVisualiza alterações sem gravar
--listLista ADRs importados anteriormente

Importar do registro:

Terminal window
archgate adr import archgate/packs/typescript

Importar de um repositório git:

Terminal window
archgate adr import https://github.com/acme/adr-packs.git

Visualizar o que seria importado sem gravar arquivos:

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

Importar de forma não interativa (pula confirmação):

Terminal window
archgate adr import archgate/packs/typescript --yes

Listar ADRs importados anteriormente:

Terminal window
archgate adr import --list

Verifica atualizações upstream para ADRs importados.

Terminal window
archgate adr sync [source...] [options]

O comando compara os ADRs importados locais com a fonte upstream e mostra quais seções mudaram. No modo interativo, solicita para cada ADR alterado com três opções: manter local, aceitar upstream ou pular.

ArgumentoDescrição
[source...]Filtro(s) de fonte opcionais — sincroniza apenas importações correspondentes
OpçãoDescrição
--checkSai com código 1 se houver atualizações (modo CI)
--yesPula prompts de confirmação
--jsonSaída como JSON

Verificar todos os ADRs importados por atualizações upstream:

Terminal window
archgate adr sync

Verificar apenas importações de uma fonte específica:

Terminal window
archgate adr sync archgate/packs/typescript

Modo CI — falha o build se algum ADR importado estiver desatualizado:

Terminal window
archgate adr sync --check

Aceitar todas as atualizações upstream de forma não interativa:

Terminal window
archgate adr sync --yes