auto-geo
公式AI可視性のためのGEO最適化コンテンツ公開エンジン
Auto Geo MCPで何ができますか?
- Audit any page for AI citation readiness —
auto-geo doctorをURLに対して実行し、TL;DRの有無、質問形式の見出し、エンティティ密度、JSON-LDなどをチェックしたスコア付きレポートを取得します。 - Generate GEO-optimized pages from target queries —
auto-geo writeを使用して、完全な7ブロック引用アーキテクチャに準拠した、検証済みで公開可能なJSONページを生成します。 - Rewrite an existing page to pass all GEO checks — URLを
auto-geo fixに渡すと、引用準備監査で8/8のスコアが見込まれる再生成バージョンを受け取れます。 - Measure whether AI engines actually cite your domain —
auto-geo checkをPerplexity、ChatGPT、Gemini、Claude、またはGrokに対して実行し、追跡対象のクエリのうちどれがあなたのドメインをソースとして返すかを確認します。 - Track citation coverage trends over time —
auto-geo historyを使用して、実行ごとのカバレッジ率、エンジンごとの差分、新たに引用されたクエリや失われたクエリを表示します。 - Discover high-intent queries to track —
auto-geo prompts discoverにあなたのドメインを分析させ、AI検索結果で競合すべき質問を提案してもらいます。
ドキュメント
auto-geo
ChatGPT、Claude、Gemini、Perplexity、Grokであなたのブランドを引用させるオープンソースGEOエンジン。
大規模言語モデルが引用するページを監査、生成、修正、追跡 — 単一CLI、ファイルベース、MITライセンス。
誰かがChatGPT、Perplexity、Claude、Gemini、Google AI Overviewsに、あなたのビジネスが答えるべき質問をしたとき、それらのエンジンはあなたのドメインを引用するでしょうか?auto-geo はそれを実現し、証明するための完全なループです:
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
すべてがファイルベースでコミット可能 — 追跡されたプロンプト、チェック履歴、設定。サーバーもアカウントもデータベースも不要。インストールはこれだけ:
npm i -g auto-geo
開発元は Shadow — OpenAI、TikTok、Meta、Amazon、Lovableを成功に導いたチームと提携し、次世代のAI駆動メディアインテリジェンスとコミュニケーション技術を構築するメディアリサーチラボ。Shadowは
auto-geoを使用してshadow.inc/resourcesで公開しています。
目次
- クイックスタート
- GEOとは?
- ワークフロー
auto-geo init— システムのセットアップauto-geo doctor— 任意のページの引用準備状況を監査auto-geo write— クエリからページを生成auto-geo fix— 引用準備のためにページを書き換えauto-geo prompts— 追跡プロンプトの管理auto-geo check— 実際の引用カバレッジを測定auto-geo history— 時系列での引用カバレッジ- 設定
- ページアーキテクチャ
- エージェントフレンドリーな出力
- LLMフレンドリー
- 貢献
- ライセンス
クイックスタート
0. インストール(または npx auto-geo@latest で任意のコマンドをワンショット実行)
npm i -g auto-geo
1. セットアップ — 設定、.env.localキースロット、.auto-geoワークスペース
auto-geo init
2. .env.localにAPIキーを追加(すべてのコマンドで自動読み込み)
3. 任意のページを監査 — 自社または競合他社
auto-geo doctor https://example.com/some-page
4. AIエンジンに引用させたいプロンプトを追跡
auto-geo prompts add "best media monitoring tools" "what is GEO"
5. 測定 — 毎回の実行は自動的に履歴に保存
auto-geo check
6. カバレッジの推移を監視
auto-geo history
Node >=18.17 が必要です。アップグレードは npm i -g auto-geo@latest で。その他の導入方法:
brew install shadowresearch/tap/auto-geo # Homebrew (macOS / Linux) mise use -g npm:auto-geo # mise
macOS、Linux、Windows向けのスタンドアロン実行ファイル(Node不要)は各リリースに同梱されています。
GEOとは?
Generative Engine Optimization(生成エンジン最適化) とは、AI検索エンジンが質問に答える際に、あなたのページを引用させるための分野です。SEOの後継であり、リンクリストでのランキングではなく、回答の中で引用されることを競います。
勝つページはブログ記事ではありません。実証研究は引用確率を特定の形状に結びつけています:
- 散文ではなくアーキテクチャ。 名前付きの検証済みブロック — TL;DR、イントロ、質問形式のH2セクション、関連ガイド、キーテイクアウェイ、FAQ、ディスクロージャー。AIエンジンは構造化されたチャンクを抽出します。厳格な構造が抽出を改善します。
- 回答ファースト。 各セクションは、補足段落の前にセクションの質問に完全に答える40〜60語の「回答カプセル」で始まります。
- 質問形式の見出し。 H2はユーザーが実際にAIエンジンに尋ねる質問として書かれます。
- エンティティ密度。 名前付きエンティティ(企業、人物、製品)が高密度で — 約4.8倍高い引用確率にリンク。
- スキーマ由来。 Article + FAQPage JSON-LDは手書きではなく構造から生成。
auto-geo はこの形状を厳密なスキーマにエンコードし(完全な標準操作手順については docs/sop.md を参照)、任意のURLをそれに対して監査し、準拠する新しいページを生成し、エンジンが実際にあなたを引用しているかを測定することでループを閉じます。
ワークフロー
┌──────────────────────────────────────────────────────┐
│ 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 は準備状況(このページは引用用に整形されているか?)を測定します。check は結果(実際に引用されているか?)を測定します。history は結果をトレンドラインに変換します。
auto-geo init — システムのセットアップ
auto-geo init # インタラクティブ(いくつかの質問) auto-geo init --yes # 非インタラクティブテンプレート
1つのコマンドですべてをスキャフォールディング:
| ファイル | 概要 |
|---|---|
| auto-geo.config.json | デフォルト — ドメイン、プロバイダー、モデル、著者。コミット可能。シークレットは保持しません。 |
| .env.local | APIキースロット。すべてのコマンドで自動読み込み。Gitignore対象。 |
| .auto-geo/prompts.txt | 追跡プロンプト — 1行1プロンプト、# コメント可。 |
| .auto-geo/checks/ | すべてのチェック実行がJSONとして保存。履歴の背後にあるデータ。 |
インタラクティブフローは追跡したいプロンプトを尋ねて終了するため、新規プロジェクトは1回のセッションでゼロから測定可能な引用ベースラインに到達します。init は既存の .env.local を上書きせず、--force なしに既存の設定を上書きすることを拒否します。
auto-geo doctor — 任意のページの引用準備状況を監査
任意のURL(自社、競合他社、サイトマップ内の全ページ)で実行し、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).
サイトマップ全体 — 平均スコア、最低スコアページ、最も一般的な失敗
auto-geo doctor --site https://example.com/sitemap.xml --max-pages 50
CI/ダッシュボード用JSON
auto-geo doctor https://example.com/page --json
スコアが75%以上なら終了コード 0 、それ以外は 1 — デプロイをゲートします。完全なチェックリファレンスは docs/doctor.md を参照。
auto-geo write — クエリからページを生成
ドメインと引用されたいクエリを渡すと、検証済みで公開準備完了のJSONファイルが返ってきます — クエリごとに1つの構造化ページ、完全なGEOアーキテクチャに準拠。
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
システムプロンプトはGEO SOP(TL;DRの長さ、回答カプセルウィンドウ、禁止された最上級表現、FAQ構造)をエンコードし、出力はVercel AI SDKの generateObject を介して型システムレベルでスキーマに制約され、検証失敗時の境界付き自己修正ループを備えています。デフォルト:gpt-5.4(OpenAI)または claude-sonnet-4-6(Anthropic)、設定されたAPIキーから自動検出。
ドライラン — 計画とコスト見積もり、LLM呼び出しなし
auto-geo write --query "what is X" --dry-run
ファイルからバッチ、Anthropic、一度に4ページ
auto-geo write --queries-file queries.txt --provider anthropic --concurrency 4
設定ファイル(auto-geo init)があれば、--domain、著者フィールド、プロバイダーは設定から取得 — 裸の --query だけで十分です。docs/write.md を参照。
auto-geo fix — 引用準備のためにページを書き換え
doctor が何が問題かを教えるのに対し、fix は8つのチェックすべてに合格するGEO最適化された書き換えを生成します — 取得、監査、再生成され、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 auto-geo fix https://example.com/page --dry-run # 監査とコスト見積もりのみ
docs/fix.md を参照。
auto-geo prompts — 追跡プロンプトの管理
追跡プロンプトは、AIエンジンがあなたのドメインを引用して答えることを望む質問です。それらは .auto-geo/prompts.txt(プレーンテキスト、コミット可能)に存在し、check がデフォルトで実行するものです。
auto-geo prompts add "best media monitoring tools" "what is GEO" auto-geo prompts # 番号付きリスト auto-geo prompts rm 2 # インデックスで — または正確なテキストで
何を追跡すべきかわからない?エンジンにプロンプトセットを提案させましょう — discover はあなたのホームページを取得し、既に追跡しているものを確認し、LLMに競合すべき高意図クエリを生成させます:
auto-geo prompts discover --dry-run # 提案をプレビュー auto-geo prompts discover --count 15 # 15件追加(上書きも重複もしない)
prompts add(および discover)は初回使用時にワークスペースをブートストラップするため、追跡を開始するのに init さえ必要ありません。
auto-geo check — 実際の引用カバレッジを測定
各プロンプトについて、実際のAI検索エンジンに問い合わせ、あなたのドメインが引用に含まれているかを報告します。これは doctor が予測するグラウンドトゥルースです。
auto-geo check # 追跡プロンプト、設定からのドメイン
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)
エンジン:perplexity(デフォルト)、openai、anthropic、gemini、xai(エイリアス grok)、または --engine all — APIキーが設定されているすべてのエンジンを実行し、エンジンごとのカバレッジとユニオンロールアップを報告します。
追跡セットの代わりに明示的なクエリ
auto-geo check --domain shadow.inc --query "what is GEO"
キーを持つすべてのエンジン、ユニオンカバレッジ
auto-geo check --engine all
CI: 重要なクエリがあなたを引用していない場合にデプロイを失敗させる
auto-geo check --queries-file geo/critical-queries.txt && deploy
エージェント/ダッシュボード用ストリーミングJSON
auto-geo check --ndjson
すべての実行は自動的に .auto-geo/checks/ に保存されます(--no-save でオプトアウト)。カバレッジが0%超なら終了コード 0、0%なら 1。出力形状、ファンアウトクエリキャプチャ、ドメインマッチングルール、--format geo-audit 相互運用モードについては docs/check.md を参照。
auto-geo history — 時系列での引用カバレッジ
すべての実行を保存する見返り:トレンドライン。実行ごとのカバレッジとエンジンごとのデルタ、さらに引用され始めた/されなくなった正確なプロンプト。
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
トレンドは同種比較 — 各実行は同じエンジンセレクターの前回実行と比較されます。--engine all はマルチエンジン実行にフィルター。--limit N は深さを制御。--json は行とデルタを機械可読で出力。docs/history.md を参照。
設定
auto-geo init で一度設定し、どこでも上書き。優先順位(高い順):
- CLIフラグ
- 環境変数(プロバイダーは設定されたAPIキーから自動検出)
auto-geo.config.json(cwdから上に探索 — モノレポ対応)- ビルトインデフォルト
// auto-geo.config.json — コミット可能、シークレットなし { "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…", }, }
APIキーは .env.local(または .env)に保存され、すべてのコマンドで自動読み込み — 既に設定された環境変数が常に優先されます:
| エンジン/プロバイダー | 環境変数 |
|---|---|
| OpenAI (write, fix, check) | OPENAI_API_KEY |
| Anthropic (write, fix, check) | ANTHROPIC_API_KEY |
| Perplexity (check) | PERPLEXITY_API_KEY |
| Gemini (check) | GOOGLE_API_KEY または GEMINI_API_KEY |
| xAI / Grok (check) | XAI_API_KEY |
ページアーキテクチャ
write と fix が生成するすべて、そして doctor が監査するすべては、厳密な7ブロックアーキテクチャに従います:
- TL;DR — 40〜60語の回答カプセル
- イントロ — コンテキスト設定ブロック
- セクション — 質問形式のH2、それぞれ40〜60語の回答カプセルで開始
- 関連ガイド — 4〜8エントリ
- キーテイクアウェイ — 4〜6の宣言的箇条書き
- FAQ — 40〜60語の回答を持つ3〜10のQ&A
- ディスクロージャー — ソースノート、タイムスタンプ、パブリッシャー行
構造違反はハードエラー(生成されたペイロードは拒否され再生成されます)であり、密度と頻度のヒューリスティックはソフト警告です。完全な仕様:
docs/architecture.md、docs/validation.md、そしてすべての制約の背後にあるSOP:docs/sop.md。
出力JSONはレンダラーに依存しません — CMSにPOSTしたり、テンプレートにハイドレートしたり、独自のコンポーネントでレンダリングしたりできます。構造こそが契約です。
エージェントフレンドリーな出力
すべてのコマンドは、人間だけでなくエージェントによって駆動されるように構築されています:
--json— 標準出力に1つの安定した機械可読オブジェクト。--ndjson(check) — 結果がストリーミングされるにつれてクエリごとに1行のJSON、さらに_summary行。- 進捗はstderrへ、結果はstdoutへ — パイプはクリーンなまま。
- 安定した終了コード —
doctorとcheckはそのままCIゲートとして利用可能。 --no-color/NO_COLOR/ ログフレンドリーな出力のための非TTY検出。
auto-geo check --ndjson | jq 'select(.cited) | .query'
LLMフレンドリー
auto-geo は、LLMによって引用されることを意図したコンテンツを出力するツールです — そのため、このリポジトリは自らのドッグフードを食べています:
llms.txt— llmstxt.orgの規則に従ったキュレーションされたインデックス。llms-full.txt— README + すべての実質的なドキュメントを1回のフェッチで取り込めるように単一ファイルにインライン化。- GitHub Pagesサイト shadowresearch.github.io/auto-geo —
<link rel="alternate">を通じて両方を告知し、Article JSON-LDを出力。 AGENT.md— CLIを駆動するコーディングエージェント向けのコンパクトな操作仕様。
コントリビューション
CONTRIBUTING.mdを参照してください。バグ報告、チェックの改善、新しいエンジン、ドキュメントの改良を歓迎します。
- 行動規範
- セキュリティポリシー
- 変更履歴
ライセンス
MIT。
Shadowについて
Shadowは、OpenAI、TikTok、Meta、Amazon、Lovableを地図に載せたチームと提携し、次世代のAI駆動型メディアインテリジェンスおよびコミュニケーションテクノロジーを構築するメディアリサーチラボです。Shadowは、メディアリサーチ、PR、コミュニケーションチーム向けに auto-geo をスケジュールに従ってエンドツーエンドで実行しています。
詳細はshadow.incをご覧ください。