コンソール :3000
- Landing /
- コンソールを開く
- Playground → routedFetch
世界中で場所を変えられるIPで、AIエージェントにグローバルな到達範囲を。
現地の顧客と同じものを見る:選んだ国の本物のローカル出口と、すべての回答に付く証拠。
青い ping は模擬のエージェントメッシュ — (あなたのエージェント)。棒人間は(あなた)で、このページを開いた IP から置かれる。
実際に回しているモデルと harness — Hermes Agent、OpenClaw、Claude Code、Cursor、その他のスタック。fetch tool を足すか、ブラウザを gateway に向ける。
国か都市を指定する。IP Router がそこに出口を選び、そのIPからリクエストを出し、ページを返す。JSONエージェントも本物のブラウザも同じ頭脳。
見えるのは出口IP。出口を変えればページが変わる — 価格、SERP、店舗検索、ペイウォール。
cc-JP は日本のIPに載せる。lang-ja はサイトに日本語を読むと伝える。普通は両方いる。
途中でIPが変わるとログイン、カート、cookie は死ぬ。sessid は期限まで出口に釘付けする。
エージェントは /api/v1/fetch に JSON を POST。ブラウザと curl は :7777 で CONNECT。どちらも selectRoute を呼ぶ。
Google(と Bing、maps)はひとつのネットを出さない。立っている場所からのネットを出す。順位、local pack、広告、表記まで — 出口IPと言語ヘッダに乗る。エージェントが米国データセンターから fetch すれば、採点するのは米国の結果ページだ。「マンチェスターではどう見えるか」と聞いても同じ。
非 direct の pool ノードで都市が一致すると、sticky の次に先に勝つ。
セッションあり → hashPick(nodes, session)。なければ Math.random()。
finish() はセッションを upsert し、backconnect では vendor username を書き換える。
targeting.type があれば、一致ノードがあるときそのクラスを残す。なければ enabled 全部。Direct は最後の手段として geo を満たせる。
出典: src/lib/router.ts selectRoute。都市は src/lib/geo.ts の cityMatches。
メールとパスワードでアカウントを作ります。決済でプランが始まり、初回の支払い後に使えるようになります。
Hobby を始める