Archify: como fazer diagramas de arquitetura com Claude Code e comparar duas versões

Archify gera diagramas de arquitetura a partir de Claude Code e compara duas versões do mesmo diagrama para te mostrar o que mudou. Nenhuma outra ferramenta da área faz essa segunda parte.

E essa é a parte que importa. Gerar um diagrama bonito a partir de uma descrição já fazem várias ferramentas, e no yoDEV cobrimos diagram-design e GitDiagram recentemente. O que não existia era um diff de arquitetura que você possa deixar anexado em um pull request.

O que é Archify?

Archify é um sistema de renderização e validação escrito em Node.js, com licença MIT. Funciona como agent skill: seu agente escreve um JSON tipado (o IR, ou representação intermediária) e Archify o compila de forma determinística em um arquivo HTML interativo e autossuficiente.

Esse JSON é um arquivo plano com essas chaves de primeiro nível: schema_version, diagram_type, meta, layout, components, boundaries, connections e cards. Vale a pena ter isso em mente, porque as duas versões que você vai comparar mais adiante não são nada mais do que dois desses arquivos.

O repositório estava em 63.1K stars em 15 de setembro de 2026, e cresce rápido, então esse número envelhece em dias.

Que tipos de diagrama gera?

Cinco, e cada um tem um nome que você vai usar como argumento na linha de comando:

  • architecture — componentes, serviços, armazenamento e limites
  • workflow — CI/CD, aprovações, chamadas a ferramentas, runbooks
  • sequence — chamadas a APIs, fallback de cache, rastreamentos assíncronos
  • dataflow — pipelines, linhagem, limites de consumo
  • lifecycle — estados, retentativas, esperas e resultados terminais

Exporta para PNG, SVG, WebM e um card para compartilhar de 1200×630.

Como instalar Archify em Claude Code?

Uma linha. A mesma funciona para opencode:

npx skills add tt-a1i/archify -g

Cursor e Codex CLI não usam esse mesmo comando. Se trabalha neles, são estes:

npx -y skills add tt-a1i/archify --skill archify --agent cursor --global --copy --yes
npx skills use tt-a1i/archify@archify --agent codex

Para verificar que ficou bem instalado, e para gerar um conjunto de exemplos:

archify doctor
archify demo [diretório-de-saída]

Por que serve que um diagrama se valide sozinho?

Porque o diagrama quebrado não chega a existir. Antes de escrever o artefato, Archify executa verificações de esquema, layout, roteamento e separação de rótulos. Se algo falha você não recebe uma imagem com setas cruzadas: recebe um JSON com códigos de regra e com indicações de reparo, que o agente pode ler e corrigir sem sua intervenção.

Há dois perfis de qualidade, standard e showcase. Uma passagem em showcase tem que reportar os 9 checkups de artefato com 0 erros de composição e 0 avisos. Um recebimento básico traz apenas 4 checkups e não alcança o critério de aceitação de showcase.

archify validate <tipo> <input.json> --json --quality showcase
archify deliver <tipo> <input.json> <output.html> --json --quality showcase

Como comparar duas versões de um diagrama de arquitetura?

Com o comando compare, passando os dois arquivos JSON:

archify compare architecture <base.json> <head.json> [output.html] \
  [--receipt ruta] [--json] [--quality standard|showcase] [--repo-root ruta]

Invocado diretamente do diretório da skill, como mostra o README do projeto:

node archify/bin/archify.mjs compare architecture base.json head.json architecture-delta.html --json

base.json e head.json são arquivos IR normais, os mesmos que consumem validate e deliver. O fluxo então é direto: você gera o IR em main, o gera novamente em seu branch, e compara os dois.

Archify escreve o HTML e seu recebimento como um par: se a escrita falha, reverte os arquivos anteriores em vez de deixá-lo no meio do caminho.

A limitação que não está documentada

compare aceita architecture e nada mais. Se passar workflow ou sequence, sai com o bloco de uso e não faz nada.

Isso não aparece no README, nem no SKILL.md, nem no guia nem na página inicial do projeto: está no binário. Verificamos lendo o código no momento de publicar esta nota, em setembro de 2026, então é possível que mude mais adiante. Por enquanto, se seu caso é comparar um fluxo de CI ou uma sequência de chamadas, essa parte da ferramenta não serve para você.

O que te diz o recebimento da comparação?

O repositório traz um exemplo trabalhado: uma plataforma de checkout que incorpora um módulo antifraude. O resumo do recebimento fica assim:

"summary": {
  "components":  { "added": 1, "changed": 1, "evidenceChanged": 0, "removed": 1, "moved": 1 },
  "connections": { "added": 1, "changed": 2, "removed": 1, "rerouted": 1 },
  "boundaries":  { "added": 0, "changed": 2, "removed": 0, "geometryChanged": 0 }
}

Cada elemento tem um estado — added, removed, changed, evidence-changed, moved, rerouted, geometry-changed — mais suas classificações (topology, semantic, scope, evidence, geometry) e os campos exatos que mudaram, com nível de detalhe de /sublabel. Na visualização renderizada aparecem marcados como +, , ~, e E.

O detalhe que converte isso em algo realmente revisável: o recebimento guarda rawSha256 e semanticSha256 de cada versão. Dois diagramas podem diferir byte a byte e ser idênticos em significado. O segundo hash é o que permite distinguir uma mudança real de arquitetura de um simples reformatação, e é o campo que torna isso automatizável em CI.

Você consegue reutilizar seus diagramas de Mermaid?

Sim, mas não como espera. O projeto declara que o parse automático de Mermaid está fora do escopo, e ao mesmo tempo o SKILL.md instrui o agente para ler Mermaid buscando topologia e significado, e depois escrever JSON de Archify do zero. Seu Mermaid não é re-renderizado: é reinterpretado.

O mapeamento é este: flowchart e graph vão para workflow, ou para architecture se o que você quer é um mapa de componentes; sequenceDiagram vai para sequence; stateDiagram vai para lifecycle.

Quando não convém usar Archify?

Quando o que você busca é um editor de desenho. O projeto é explícito: o parse automático de Mermaid, o auto-layout de propósito geral, o hosting compartilhado e a edição WYSIWYG estão deliberadamente fora do escopo. Se você quer colar Mermaid e obter o mesmo diagrama com melhor tema visual, essa não é a ferramenta.

Um ponto que convém mencionar porque para um time com critério de segurança vai chamar atenção: Archify pode fazer um GET ao manifesto estável para mostrar um lembrete opcional de atualização. Não baixa nem instala nada. Está declarado no README e se desativa assim:

ARCHIFY_UPDATE_CHECK_DISABLED=1

O que você leva de tudo isso?

A deriva de arquitetura é invisível em um diff de código. Os componentes se movem, as conexões são reencaminhadas e o diagrama do wiki segue mostrando o sistema de oito meses atrás. Archify converte essa mudança em um artefato que alguém pode revisar, com a ressalva de que hoje funciona apenas em um dos cinco tipos.

Instale, aponte para um repositório real e gere o IR duas vezes: uma em main e outra em seu branch. A primeira vez que vir o Before/Delta/After de uma mudança que acreditava ser menor vai entender para que serve.