auto-geo
resmiMesin penerbitan konten yang dioptimalkan GEO untuk visibilitas AI
Apa yang bisa Anda lakukan dengan Auto Geo MCP?
- Audit kesiapan sitasi — Jalankan
doctorpada URL mana pun untuk menilai postur GEO-nya melalui 8 pemeriksaan seperti JSON-LD, kepadatan entitas, dan H2 berformat pertanyaan. - Buat halaman yang dioptimalkan — Gunakan
writedengan kueri target untuk menghasilkan halaman JSON yang tervalidasi dan siap terbit, mengikuti arsitektur GEO lengkap. - Tulis ulang konten yang ada — Terapkan
fixpada halaman mana pun untuk mendapatkan penulisan ulang yang dioptimalkan GEO dan lolos semua 8 pemeriksaan audit. - Lacak cakupan sitasi — Jalankan
checkterhadap mesin AI nyata (Perplexity, OpenAI, Gemini, dll.) untuk melihat apakah domain Anda benar-benar disitasi untuk prompt yang dilacak. - Pantau tren dari waktu ke waktu — Gunakan
historyuntuk melihat perubahan cakupan per proses, termasuk prompt yang baru disitasi atau hilang per mesin. - Kelola prompt yang dilacak — Tambah, daftar, atau hapus prompt dengan
prompts, atau gunakanprompts discoveragar LLM mengusulkan kueri berniat tinggi untuk diperebutkan.
Dokumentasi
auto-geo
Mesin GEO open-source yang membuat merek Anda disebut di ChatGPT, Claude, Gemini, Perplexity, dan Grok.
Audit, buat, perbaiki, dan lacak halaman yang dikutip model bahasa besar — satu CLI, berbasis file, MIT.
Ketika seseorang bertanya kepada ChatGPT, Perplexity, Claude, Gemini, atau Google AI Overviews sebuah pertanyaan yang seharusnya dijawab oleh bisnis Anda, apakah mesin-mesin tersebut mengutip domain Anda? auto-geo adalah putaran lengkap untuk mewujudkannya dan membuktikan bahwa itu terjadi:
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
Semuanya berbasis file dan dapat di-commit — prompt yang dilacak, riwayat pemeriksaan, konfigurasi. Tanpa server, tanpa akun, tanpa database. Satu langkah instalasi:
npm i -g auto-geo
Dibangun oleh Shadow — laboratorium riset media yang membangun generasi berikutnya dari intelijen media dan teknologi komunikasi bertenaga AI, bermitra dengan tim yang menempatkan OpenAI, TikTok, Meta, Amazon, dan Lovable di peta. Shadow menggunakan
auto-geountuk memublikasikan ke shadow.inc/resources.
Daftar Isi
- Mulai Cepat
- Apa itu GEO?
- Alur kerja
auto-geo init— siapkan sistemauto-geo doctor— audit halaman apa pun untuk kesiapan kutipanauto-geo write— buat halaman dari kueriauto-geo fix— tulis ulang halaman untuk kesiapan kutipanauto-geo prompts— kelola prompt yang Anda lacakauto-geo check— ukur cakupan kutipan aktualauto-geo history— cakupan kutipan dari waktu ke waktu- Konfigurasi
- Arsitektur halaman
- Output yang ramah agen
- Ramah LLM
- Berkontribusi
- Lisensi
Mulai Cepat
# 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 diperlukan. Peningkatan di kemudian hari bersifat npm i -g auto-geo@latest. Cara lain untuk masuk:
brew install shadowresearch/tap/auto-geo # Homebrew (macOS / Linux)
mise use -g npm:auto-geo # mise
Eksekusi mandiri (tanpa Node) untuk macOS, Linux, dan Windows disertakan dalam setiap rilis.
Apa itu GEO?
Generative Engine Optimization adalah disiplin untuk membuat halaman Anda menjadi halaman yang dikutip mesin pencari AI saat menjawab pertanyaan. Ini adalah penerus SEO: alih-alih bersaing dalam daftar tautan, Anda bersaing untuk dikutip di dalam jawaban.
Halaman yang menang bukanlah posting blog. Riset empiris menghubungkan probabilitas kutipan dengan bentuk tertentu:
- Arsitektur, bukan prosa. Blok bernama dan tervalidasi — TL;DR, intro, bagian H2 format pertanyaan, panduan terkait, poin-poin utama, FAQ, pengungkapan. Mesin AI mengekstrak potongan terstruktur; struktur yang kaku meningkatkan ekstraksi.
- Jawaban lebih dulu. Setiap bagian dibuka dengan "kapsul jawaban" 40–60 kata yang sepenuhnya menjawab pertanyaan bagian tersebut sebelum paragraf pendukung apa pun.
- Judul format pertanyaan. H2 ditulis sebagai pertanyaan yang benar-benar diajukan pengguna ke mesin AI.
- Padat entitas. Entitas bernama (perusahaan, orang, produk) dengan kepadatan tinggi — terkait dengan probabilitas kutipan ~4,8x lebih tinggi.
- Berasal dari skema. JSON-LD Article + FAQPage yang dihasilkan dari struktur, bukan ditulis tangan.
auto-geo mengodekan bentuk ini dalam skema ketat (lihat docs/sop.md — prosedur operasi standar lengkap), mengaudit URL apa pun terhadapnya, membuat halaman baru yang sesuai dengannya, lalu menutup putaran dengan mengukur apakah mesin benar-benar mengutip Anda.
Alur kerja
┌──────────────────────────────────────────────────────┐
│ 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 mengukur kesiapan (apakah halaman ini berbentuk untuk kutipan?). check mengukur hasil (apakah benar-benar dikutip?). history mengubah hasil menjadi garis tren.
auto-geo init — siapkan sistem
auto-geo init # interactive (a handful of questions)
auto-geo init --yes # non-interactive template
Satu perintah menyiapkan semuanya:
| File | Apa itu |
|---|---|
auto-geo.config.json | Default Anda — domain, penyedia, model, penulis. Dapat di-commit; tidak pernah menyimpan rahasia. |
.env.local | Slot kunci API. Dimuat otomatis oleh setiap perintah. Gitignore. |
.auto-geo/prompts.txt | Prompt yang Anda lacak — satu per baris, komentar # diizinkan. |
.auto-geo/checks/ | Setiap proses check, disimpan sebagai JSON. Data di balik history. |
Alur interaktif diakhiri dengan meminta prompt yang ingin Anda lacak, sehingga proyek baru berjalan dari nol ke garis dasar kutipan yang terukur dalam satu sesi. init tidak pernah menimpa .env.local yang ada dan menolak menimpa konfigurasi yang ada tanpa --force.
auto-geo doctor — audit halaman apa pun untuk kesiapan kutipan
Jalankan pada URL apa pun — milik Anda, milik pesaing, setiap halaman di sitemap Anda — dan dapatkan laporan terstruktur tentang sinyal kutipan yang dicari mesin AI.
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
Kode keluar 0 jika skor ≥ 75%, 1 jika tidak — gunakan sebagai gerbang deploy. Lihat docs/doctor.md untuk referensi pemeriksaan lengkap.
auto-geo write — buat halaman dari kueri
Beri domain Anda dan kueri yang ingin Anda dikutip; dapatkan file JSON tervalidasi yang siap publikasi — satu halaman terstruktur per kueri, sesuai dengan arsitektur GEO lengkap.
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
Prompt sistem mengodekan SOP GEO — panjang TL;DR, jendela kapsul jawaban, superlatif yang dilarang, struktur FAQ — dan output dibatasi ke skema di tingkat sistem tipe melalui generateObject dari Vercel AI SDK, dengan putaran koreksi diri terbatas saat validasi gagal. Default: gpt-5.4 (OpenAI) atau claude-sonnet-4-6 (Anthropic), terdeteksi otomatis dari kunci API mana pun yang Anda atur.
# 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
Dengan file konfigurasi (auto-geo init), --domain, kolom penulis, dan penyedia berasal dari konfigurasi — --query polos saja sudah cukup. Lihat docs/write.md.
auto-geo fix — tulis ulang halaman untuk kesiapan kutipan
Jika doctor memberi tahu Anda apa yang salah, fix menghasilkan penulisan ulang yang dioptimalkan GEO yang lulus semua 8 pemeriksaan — diambil, diaudit, dibuat ulang, dan divalidasi terhadap skema yang sama yang digunakan write.
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
Lihat docs/fix.md.
auto-geo prompts — kelola prompt yang Anda lacak
Prompt yang Anda lacak adalah pertanyaan yang Anda ingin mesin AI jawab dengan mengutip domain Anda. Prompt tersebut berada di .auto-geo/prompts.txt (teks biasa, dapat di-commit) dan itulah yang dijalankan check secara default.
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
Tidak tahu apa yang harus dilacak? Biarkan mesin mengusulkan kumpulan prompt Anda — discover mengambil beranda Anda, melihat apa yang sudah Anda lacak, dan meminta LLM membuat kueri berniat tinggi yang harus Anda perebutkan:
auto-geo prompts discover --dry-run # preview the proposals
auto-geo prompts discover --count 15 # append 15 (never overwrites, never duplicates)
prompts add (dan discover) mem-bootstrap ruang kerja pada penggunaan pertama, jadi Anda bahkan tidak perlu init untuk mulai melacak.
auto-geo check — ukur cakupan kutipan aktual
Untuk setiap prompt, tanyakan mesin pencari AI sungguhan dan laporkan apakah domain Anda termasuk di antara kutipan. Ini adalah kebenaran dasar yang diprediksi doctor.
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)
Mesin: perplexity (default), openai, anthropic, gemini, xai (alias grok), atau --engine all — yang menjalankan setiap mesin yang kunci API-nya diatur dan melaporkan cakupan per mesin plus ringkasan gabungan.
# 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
Setiap proses disimpan ke .auto-geo/checks/ secara otomatis (nonaktifkan dengan --no-save). Kode keluar 0 jika cakupan > 0%, 1 jika 0%. Lihat docs/check.md untuk bentuk output, penangkapan kueri fan-out, aturan pencocokan domain, dan mode interoperasi --format geo-audit.
auto-geo history — cakupan kutipan dari waktu ke waktu
Hasil dari menyimpan setiap proses: garis tren. Cakupan per proses dengan delta per mesin, plus persis prompt mana yang mulai atau berhenti Anda dikutip.
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
Tren membandingkan hal yang serupa — setiap proses diukur terhadap proses sebelumnya dari pemilih mesin yang sama. --engine all memfilter ke proses multi-mesin; --limit N mengontrol kedalaman; --json mengeluarkan baris + delta yang dapat dibaca mesin. Lihat docs/history.md.
Konfigurasi
Atur sekali dengan auto-geo init, timpa di mana saja. Prioritas, tertinggi lebih dulu:
- Bendera CLI
- Variabel lingkungan (penyedia terdeteksi otomatis dari kunci API mana yang diatur)
auto-geo.config.json(berjalan naik dari cwd — ramah monorepo)- Default bawaan
// 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…",
},
}
Kunci API berada di .env.local (atau .env), dimuat otomatis oleh setiap perintah — variabel lingkungan yang sudah diatur selalu menang:
| Mesin / penyedia | Variabel env |
|---|---|
| OpenAI (tulis, perbaiki, periksa) | OPENAI_API_KEY |
| Anthropic (tulis, perbaiki, periksa) | ANTHROPIC_API_KEY |
| Perplexity (periksa) | PERPLEXITY_API_KEY |
| Gemini (periksa) | GOOGLE_API_KEY atau GEMINI_API_KEY |
| xAI / Grok (periksa) | XAI_API_KEY |
Arsitektur halaman
Semua yang dihasilkan write dan fix — dan semua yang diaudit doctor — mengikuti arsitektur tujuh blok yang ketat:
- TL;DR — kapsul jawaban 40–60 kata
- Intro — blok pengaturan konteks
- Bagian — H2 format pertanyaan, masing-masing dibuka dengan kapsul jawaban 40–60 kata
- Panduan Terkait — 4–8 entri
- Poin-Poin Utama — 4–6 poin deklaratif
- FAQ — 3–10 tanya jawab dengan jawaban 40–60 kata
- Pengungkapan — catatan sumber, stempel waktu, baris penerbit
Pelanggaran struktural adalah kesalahan keras (payload yang dihasilkan ditolak dan dibuat ulang); heuristik kepadatan dan irama adalah peringatan lunak. Spesifikasi lengkap: docs/architecture.md, docs/validation.md, dan SOP di balik setiap batasan: docs/sop.md.
JSON output tidak bergantung pada renderer — POST ke CMS Anda, hidrasi template, atau render dengan komponen Anda sendiri. Struktur adalah kontraknya.
Output yang ramah agen
Setiap perintah dibangun untuk dijalankan oleh agen sama baiknya dengan oleh manusia:
--json— satu objek stabil yang dapat dibaca mesin di stdout.--ndjson(periksa) — satu baris JSON per kueri saat hasil mengalir masuk, plus baris_summary.- Kemajuan masuk ke stderr, hasil ke stdout — pipa tetap bersih.
- Kode keluar stabil —
doctordancheckadalah gerbang CI langsung. --no-color/NO_COLOR/ deteksi non-TTY untuk output yang ramah log.
auto-geo check --ndjson | jq 'select(.cited) | .query'
Ramah LLM
auto-geo adalah alat yang keluarannya berupa konten yang dimaksudkan untuk dikutip oleh LLM — jadi repositori ini menggunakan produknya sendiri:
llms.txt— indeks terkurasi yang mengikuti konvensi llmstxt.org.llms-full.txt— README + setiap dokumen substantif digabungkan ke satu file untuk pengambilan satu kali.- Situs GitHub Pages di shadowresearch.github.io/auto-geo — mengiklankan keduanya melalui
<link rel="alternate">, mengeluarkan Article JSON-LD. AGENT.md— spesifikasi operasi ringkas untuk agen pengode yang menjalankan CLI.
Berkontribusi
Lihat CONTRIBUTING.md. Laporan bug, peningkatan pemeriksaan, mesin baru, dan penyempurnaan dokumentasi semuanya diterima.
Lisensi
MIT.
Tentang Shadow
Shadow adalah laboratorium riset media yang membangun generasi berikutnya dari teknologi intelijen media dan komunikasi bertenaga AI, bermitra dengan tim-tim yang menempatkan OpenAI, TikTok, Meta, Amazon, dan Lovable di peta. Shadow menjalankan auto-geo secara end-to-end sesuai jadwal untuk tim riset media, PR, dan komunikasi.
Pelajari lebih lanjut di shadow.inc.
