Consola :3000
- Landing /
- Abrir consola
- Playground → routedFetch
Dale a tu agente de IA un alcance global con una IP que puede cambiar de lugar en todo el mundo.
Ve lo que ven los clientes locales: salidas locales reales en el país que elijas y un comprobante en cada respuesta.
Los pings azules son una malla de agentes simulada — (tus agentes). El monigote es (tú), colocado a partir de la IP que abrió esta página.
Los modelos y harnesses que la gente usa de verdad — Hermes Agent, OpenClaw, Claude Code, Cursor y el resto. Mete un fetch tool o apunta el browser al gateway.
Pides un país o una ciudad. IP Router elige una salida ahí, manda la petición por esa IP y te devuelve la página. El mismo cerebro para un agente JSON y un browser de verdad.
Ve la IP de salida. Cambias la salida, cambia la página — precios, SERP, locator, paywall.
cc-JP te pone en una IP japonesa. lang-ja le dice al sitio que lees japonés. Casi siempre quieres ambos.
Logins, carritos y cookies mueren si la IP cambia a mitad. Un sessid te clava a una salida hasta que caduca.
Los agentes hacen POST JSON a /api/v1/fetch. Browsers y curl hablan CONNECT en :7777. Ambos llaman selectRoute.
Google (y Bing, y maps) no muestran un solo internet. Muestran el internet desde donde estás. Rankings, local pack, anuncios, hasta la ortografía — todo depende de la IP de salida y del idioma. Si tu agente fetcha desde un datacenter US, estás midiendo una página US aunque preguntes “¿cómo se ve en Manchester?”
La ciudad exacta en un nodo de pool (no direct) gana primero después de sticky.
Si hay sesión → hashPick(nodes, session). Si no, Math.random().
finish() guarda la sesión y, en backconnect, reescribe el username del vendor.
Si targeting.type está puesto, se queda esa clase cuando hay un nodo; si no, todo el set enabled. Direct aún puede cumplir geo al final.
Fuente: src/lib/router.ts selectRoute. Ciudad via cityMatches en src/lib/geo.ts.
Crea una cuenta con email y contraseña. El pago inicia el plan. El acceso se activa tras el primer cobro.
Empezar Hobby