auto-geo
oficialMecanismo de publicação de conteúdo otimizado para GEO para visibilidade em IA
O que você pode fazer com Auto Geo MCP?
- Auditar prontidão de citações — Execute
doctorem qualquer URL para avaliar sua postura GEO em 8 verificações, como JSON-LD, densidade de entidades e H2s em formato de pergunta. - Gerar páginas otimizadas — Use
writecom consultas-alvo para produzir páginas JSON validadas e prontas para publicação que seguem a arquitetura GEO completa. - Reescrever conteúdo existente — Aplique
fixa qualquer página para obter uma reescrita otimizada para GEO que passe em todas as 8 verificações de auditoria. - Acompanhar cobertura de citações — Execute
checkem mecanismos de IA reais (Perplexity, OpenAI, Gemini, etc.) para ver se seu domínio é realmente citado para prompts rastreados. - Monitorar tendências ao longo do tempo — Use
historypara visualizar mudanças de cobertura a cada execução, incluindo prompts recém-citados ou perdidos por mecanismo. - Gerenciar prompts rastreados — Adicione, liste ou remova prompts com
prompts, ou useprompts discoverpara que o LLM proponha consultas de alta intenção para competir.
Documentação
auto-geo
O mecanismo GEO de código aberto que faz sua marca ser mencionada no ChatGPT, Claude, Gemini, Perplexity e Grok.
Audite, gere, corrija e acompanhe as páginas que os grandes modelos de linguagem citam — uma CLI, baseada em arquivos, MIT.
Quando alguém pergunta ao ChatGPT, Perplexity, Claude, Gemini ou Google AI Overviews uma pergunta que sua empresa deveria responder, esses mecanismos citam seu domínio? auto-geo é o ciclo completo para fazer isso acontecer e provar que está acontecendo:
auto-geo init # set up the system once
auto-geo doctor # audit any page for citation readiness
auto-geo write # generate publish-ready pages from target queries
auto-geo fix # rewrite an existing page so it passes the audit
auto-geo check # measure: do AI engines actually cite you?
auto-geo history # track citation coverage over time
Tudo é baseado em arquivos e versionável — prompts rastreados, histórico de verificações, configuração. Sem servidor, sem conta, sem banco de dados. A uma instalação de distância:
npm i -g auto-geo
Construído pela Shadow — um laboratório de pesquisa de mídia que constrói a próxima geração de tecnologia de inteligência de mídia e comunicação com IA, em parceria com as equipes que colocaram OpenAI, TikTok, Meta, Amazon e Lovable no mapa. A Shadow usa
auto-geopara publicar em shadow.inc/resources.
Conteúdo
- Início rápido
- O que é GEO?
- O fluxo de trabalho
auto-geo init— configurar o sistemaauto-geo doctor— auditar qualquer página para prontidão de citaçãoauto-geo write— gerar páginas a partir de consultasauto-geo fix— reescrever uma página para prontidão de citaçãoauto-geo prompts— gerenciar seus prompts rastreadosauto-geo check— medir a cobertura real de citaçõesauto-geo history— cobertura de citações ao longo do tempo- Configuração
- A arquitetura da página
- Saída amigável para agentes
- Amigável para LLMs
- Contribuindo
- Licença
Início rápido
# 0. Install once (or run any command one-shot via \`npx auto-geo@latest\`)
npm i -g auto-geo
# 1. Set up — config, .env.local key slots, and the .auto-geo workspace
auto-geo init
# 2. Add an API key to .env.local (auto-loaded by every command)
# 3. Audit any page — yours or a competitor's
auto-geo doctor https://example.com/some-page
# 4. Track the prompts you want AI engines to cite you for
auto-geo prompts add "best media monitoring tools" "what is GEO"
# 5. Measure — every run is saved to history automatically
auto-geo check
# 6. Watch coverage move over time
auto-geo history
Node >=18.17 é necessário. Atualizar depois é npm i -g auto-geo@latest. Outras formas de entrar:
brew install shadowresearch/tap/auto-geo # Homebrew (macOS / Linux)
mise use -g npm:auto-geo # mise
Executáveis autônomos (sem necessidade de Node) para macOS, Linux e Windows acompanham cada lançamento.
O que é GEO?
Otimização de Mecanismos Generativos é a disciplina de fazer suas páginas serem as que os mecanismos de busca com IA citam ao responder uma pergunta. É a sucessora do SEO: em vez de ranquear em uma lista de links, você compete para ser citado dentro da resposta.
As páginas que vencem não são posts de blog. Pesquisas empíricas associam a probabilidade de citação a um formato específico:
- Arquitetura, não prosa. Blocos nomeados e validados — TL;DR, introdução, seções H2 em formato de pergunta, guias relacionados, principais conclusões, FAQ, divulgação. Mecanismos de IA extraem blocos estruturados; estrutura rígida melhora a extração.
- Resposta primeiro. Cada seção abre com uma "cápsula de resposta" de 40–60 palavras que responde completamente à pergunta da seção antes de qualquer parágrafo de apoio.
- Cabeçalhos em formato de pergunta. Os H2s são escritos como as perguntas que os usuários realmente fazem aos mecanismos de IA.
- Denso em entidades. Entidades nomeadas (empresas, pessoas, produtos) em alta densidade — associadas a ~4,8x maior probabilidade de citação.
- Derivado de esquema. JSON-LD de Artigo + FAQPage emitido a partir da estrutura, não escrito à mão.
auto-geo codifica esse formato em um esquema estrito (veja docs/sop.md — o procedimento operacional padrão completo), audita qualquer URL contra ele, gera novas páginas que o seguem e, em seguida, fecha o ciclo medindo se os mecanismos realmente citam você.
O fluxo de trabalho
┌──────────────────────────────────────────────────────┐
│ auto-geo init │
│ config · .env.local · .auto-geo/ workspace │
└──────────────────────────────────────────────────────┘
│
┌──────────┼──────────────┬─────────────────┐
▼ ▼ ▼ ▼
doctor write fix prompts
audit a generate rewrite an track the queries
page new pages existing page that matter to you
│ │ │ │
└──────────┴──────────────┴────────┬────────┘
▼
check ──── saves every run ────┐
measure actual ▼
citations history
coverage over time,
newly cited / lost
doctor mede a prontidão (esta página está formatada para citação?). check mede o resultado (ela está realmente sendo citada?). history transforma os resultados em uma linha de tendência.
auto-geo init — configurar o sistema
auto-geo init # interactive (a handful of questions)
auto-geo init --yes # non-interactive template
Um comando cria toda a estrutura:
| Arquivo | O que é |
|---|---|
auto-geo.config.json | Seus padrões — domínio, provedor, modelo, autor. Versionável; nunca contém segredos. |
.env.local | Espaços para chaves de API. Carregado automaticamente por cada comando. Coloque no .gitignore. |
.auto-geo/prompts.txt | Seus prompts rastreados — um por linha, comentários # permitidos. |
.auto-geo/checks/ | Cada execução de check, salva como JSON. Os dados por trás de history. |
O fluxo interativo termina pedindo os prompts que você deseja rastrear, então um projeto novo vai do zero a uma linha de base de citação mensurável em uma única sessão. init nunca sobrescreve um .env.local existente e se recusa a sobrescrever uma configuração existente sem --force.
auto-geo doctor — auditar qualquer página para prontidão de citação
Execute em qualquer URL — a sua, a de um concorrente, todas as páginas do seu sitemap — e obtenha um relatório estruturado sobre os sinais de citação que os mecanismos de IA procuram.
auto-geo doctor https://example.com/some-page
✓ TL;DR present (52 words, in range)
✗ Question-format H2 headings (2 of 6 are question-format; SOP §3 targets all)
✓ Article JSON-LD present
✗ FAQPage JSON-LD present (No FAQPage JSON-LD block detected)
✓ Entity density (12.3/1k words)
✗ Image cadence (0 images for 1247 words)
✓ Answer-first first paragraph
✓ No self-link in related guides
Score: 5 / 8 checks pass — moderate GEO posture
Top 3 fixes (ranked by citation lift):
1. Add a FAQPage JSON-LD block. Each Q is a citable extraction target.
2. Convert 4 statement-form H2 headings to question form.
3. Add 2 images with descriptive alt text (entity + context).
# Whole sitemap — mean score, lowest-scoring pages, most common failures
auto-geo doctor --site https://example.com/sitemap.xml --max-pages 50
# JSON for CI / dashboards
auto-geo doctor https://example.com/page --json
Código de saída 0 se a pontuação for ≥ 75%, 1 caso contrário — use como portão de deploy. Veja docs/doctor.md para a referência completa das verificações.
auto-geo write — gerar páginas a partir de consultas
Forneça seu domínio e as consultas pelas quais deseja ser citado; receba arquivos JSON validados e prontos para publicação — uma página estruturada por consulta, em conformidade com a arquitetura GEO completa.
auto-geo write \
--query "what is GEO" \
--query "GEO vs SEO" \
--out ./resources
✓ "what is GEO" → ./resources/geo.json (validated, ~$0.06)
✓ "GEO vs SEO" → ./resources/geo-vs-seo.json (validated, ~$0.06)
Total: 2 pages · 2 ok · ~$0.12 spent · 31s elapsed
O prompt do sistema codifica o SOP GEO — tamanho do TL;DR, janelas de cápsula de resposta, superlativos proibidos, estrutura de FAQ — e a saída é restrita ao esquema no nível do sistema de tipos via generateObject do Vercel AI SDK, com um loop de autocorreção limitado em caso de falha de validação. Padrões: gpt-5.4 (OpenAI) ou claude-sonnet-4-6 (Anthropic), detectados automaticamente a partir de qualquer chave de API que você tenha definido.
# Dry-run — plan + cost estimate, no LLM calls
auto-geo write --query "what is X" --dry-run
# Batch from a file, anthropic, 4 pages at a time
auto-geo write --queries-file queries.txt --provider anthropic --concurrency 4
Com um arquivo de configuração (auto-geo init), --domain, campos de autor e provedor vêm da configuração — um simples --query é tudo que você precisa. Veja docs/write.md.
auto-geo fix — reescrever uma página para prontidão de citação
Enquanto doctor informa o que está errado, fix produz uma reescrita otimizada para GEO que passa em todas as 8 verificações — buscada, auditada, regenerada e validada contra o mesmo esquema que write usa.
auto-geo fix https://www.example.com/some-blog-post --out ./fixed.json
Score (before): 3 / 8
Generating rewrite via openai gpt-5.4...
Score (projected): 8 / 8 — strong GEO posture
→ ./fixed.json (validated)
auto-geo fix https://example.com/page --provider anthropic # Claude instead
auto-geo fix https://example.com/page --dry-run # audit + cost estimate only
Veja docs/fix.md.
auto-geo prompts — gerenciar seus prompts rastreados
Seus prompts rastreados são as perguntas que você quer que os mecanismos de IA respondam citando seu domínio. Eles ficam em .auto-geo/prompts.txt (texto simples, versionável) e são o que check executa por padrão.
auto-geo prompts add "best media monitoring tools" "what is GEO"
auto-geo prompts # numbered list
auto-geo prompts rm 2 # by index — or by exact text
Não sabe o que rastrear? Deixe o mecanismo propor seu conjunto de prompts — discover busca sua página inicial, analisa o que você já rastreia e faz o LLM gerar as consultas de alta intenção pelas quais você deve competir:
auto-geo prompts discover --dry-run # preview the proposals
auto-geo prompts discover --count 15 # append 15 (never overwrites, never duplicates)
prompts add (e discover) inicializam o workspace no primeiro uso, então você nem precisa de init para começar a rastrear.
auto-geo check — medir a cobertura real de citações
Para cada prompt, pergunte a um mecanismo de busca de IA real e relate se seu domínio está entre as citações. Esta é a verdade fundamental que doctor prevê.
auto-geo check # tracked prompts, domain from config
using 3 tracked prompts from .auto-geo/prompts.txt
[1/3] ✗ "what is GEO" — not cited (5 sources)
[2/3] ✓ "how do I get cited by ChatGPT" — cited (2 sources)
[3/3] ✓ "open source GEO tools" — cited (1 source)
Coverage: 2/3 queries (67%) · 3 page citations total · ~$0.012 spent
saved → .auto-geo/checks/2026-06-10T13-22-05--perplexity.json (auto-geo history)
Mecanismos: perplexity (padrão), openai, anthropic, gemini, xai (alias grok) ou --engine all — que executa todos os mecanismos cuja chave de API está definida e relata a cobertura por mecanismo, além de um resumo unificado.
# Explicit queries instead of the tracked set
auto-geo check --domain shadow.inc --query "what is GEO"
# Every engine you have keys for, union coverage
auto-geo check --engine all
# CI: fail the deploy when critical queries don't cite you
auto-geo check --queries-file geo/critical-queries.txt && deploy
# Streaming JSON for agents / dashboards
auto-geo check --ndjson
Cada execução é salva em .auto-geo/checks/ automaticamente (desative com --no-save). Código de saída 0 se a cobertura for > 0%, 1 se for 0%. Veja docs/check.md para formatos de saída, captura de consultas em leque, regras de correspondência de domínio e o modo de interoperabilidade --format geo-audit.
auto-geo history — cobertura de citações ao longo do tempo
A recompensa por salvar cada execução: uma linha de tendência. Cobertura execução por execução com deltas por mecanismo, além de exatamente quais prompts você começou ou parou de ser citado.
auto-geo history
2026-06-01 08:30 perplexity 33% · 1/3 cited $0.01
2026-06-08 09:15 perplexity 67% ↑34 2/3 cited $0.01
Since last run (perplexity · 2026-06-01 08:30 ▸ 2026-06-08 09:15)
✓ newly cited open source GEO tools
✗ lost (none)
2 runs · .auto-geo/checks
As tendências comparam coisas semelhantes — cada execução é medida contra a execução anterior do mesmo seletor de mecanismo. --engine all filtra para execuções com vários mecanismos; --limit N controla a profundidade; --json emite linhas + delta de forma legível por máquina. Veja docs/history.md.
Configuração
Defina uma vez com auto-geo init, sobrescreva em qualquer lugar. Precedência, da maior para a menor:
- Flag de CLI
- Variável de ambiente (provedor detectado automaticamente a partir de qual chave de API está definida)
auto-geo.config.json(sobe a partir do diretório atual — amigável para monorepos)- Padrão embutido
// auto-geo.config.json — committable, no secrets
{
"domain": "https://www.example.com",
"basePath": "/resources",
"provider": "openai",
"model": "gpt-5.4",
"engine": "perplexity",
"concurrency": 4,
"author": {
"name": "Jane Doe",
"jobTitle": "Head of Content",
"bio": "Jane writes about generative engine optimization…",
},
}
As chaves de API ficam em .env.local (ou .env), carregadas automaticamente por cada comando — variáveis de ambiente já definidas sempre vencem:
| Mecanismo / provedor | Variável de ambiente |
|---|---|
| OpenAI (write, fix, check) | OPENAI_API_KEY |
| Anthropic (write, fix, check) | ANTHROPIC_API_KEY |
| Perplexity (check) | PERPLEXITY_API_KEY |
| Gemini (check) | GOOGLE_API_KEY ou GEMINI_API_KEY |
| xAI / Grok (check) | XAI_API_KEY |
A arquitetura da página
Tudo o que write e fix produzem — e tudo o que doctor audita — segue uma arquitetura estrita de sete blocos:
- TL;DR — cápsula de resposta de 40–60 palavras
- Introdução — blocos de contextualização
- Seções — H2s em formato de pergunta, cada uma abrindo com uma cápsula de resposta de 40–60 palavras
- Guias Relacionados — 4–8 entradas
- Principais Conclusões — 4–6 marcadores declarativos
- FAQ — 3–10 perguntas e respostas com respostas de 40–60 palavras
- Divulgação — nota de fonte, carimbo de data/hora, linha do editor
Violações estruturais são erros graves (o payload gerado é rejeitado e regenerado); heurísticas de densidade e cadência são avisos leves. A especificação completa: docs/architecture.md, docs/validation.md e o SOP por trás de cada restrição: docs/sop.md.
O JSON de saída é independente de renderizador — envie via POST para seu CMS, hidrate um template ou renderize com seus próprios componentes. A estrutura é o contrato.
Saída amigável para agentes
Cada comando é construído para ser dirigido por um agente tanto quanto por um humano:
--json— um objeto estável e legível por máquina no stdout.--ndjson(check) — uma linha JSON por consulta conforme os resultados chegam, além de uma linha_summary.- O progresso vai para stderr, os resultados para stdout — os pipes permanecem limpos.
- Códigos de saída estáveis —
doctorechecksão portões de CI prontos para uso. --no-color/NO_COLOR/ detecção de não-TTY para saída amigável a logs.
auto-geo check --ndjson | jq 'select(.cited) | .query'
Amigável para LLMs
auto-geo é uma ferramenta cuja saída é conteúdo destinado a ser citado por LLMs — então este repositório pratica o que prega:
llms.txt— um índice curado seguindo a convenção do llmstxt.org.llms-full.txt— README + todos os documentos relevantes em um único arquivo para ingestão em uma única busca.- Site no GitHub Pages em shadowresearch.github.io/auto-geo — divulga ambos via
<link rel="alternate">, emite Article JSON-LD. AGENT.md— uma especificação operacional compacta para agentes de codificação que dirigem a CLI.
Contribuindo
Veja CONTRIBUTING.md. Relatórios de bugs, melhorias nas verificações, novos mecanismos e refinamentos de documentação são todos bem-vindos.
Licença
MIT.
Sobre a Shadow
Shadow é um laboratório de pesquisa em mídia que constrói a próxima geração de tecnologia de inteligência de mídia e comunicação com IA, em parceria com as equipes que colocaram OpenAI, TikTok, Meta, Amazon e Lovable no mapa. A Shadow executa auto-geo de ponta a ponta em um cronograma para equipes de pesquisa de mídia, relações públicas e comunicação.
Saiba mais em shadow.inc.
