Resumen en una frase: Tu AI Agent escribe código genial, pero si le dices que “busque cosas en internet” se queda en blanco. Agent Reach es el antídoto de un solo comando: instala de una vez 14+ plataformas (X/Twitter, Reddit, YouTube, Bilibili, Xiaohongshu, Douyin, WeChat/Wechat Official Accounts…) y el Agent ya sabe qué herramienta llamar.
Introducción al proyecto
Agent Reach es un “instalador de capacidades de internet” para AI Agents. GitHub: Panniantong/Agent-Reach, licencia MIT, paquete de Python.
Su posicionamiento es bastante singular: no es un framework, sino un andamiaje (scaffolding).
¿Qué significa? Cuando tu AI Agent (Claude Code / OpenClaw / Cursor / Windsurf…) instala Agent Reach, no pasa por la capa de “envoltorio” de Agent Reach; en su lugar, llama directamente a las herramientas aguas arriba — twitter-cli / rdt-cli / yt-dlp / xhs-cli / douyin-mcp-server / Jina Reader / gh CLI — que los autores del proyecto ya seleccionaron, probaron en la práctica, solucionaron los fallos típicos y configuraron con parámetros por defecto. Agent Reach solo se encarga de:
- Instalador — Con una sola línea
pip install agent-reach+agent-reach install, instala todas esas herramientas aguas arriba - Diagnóstico —
agent-reach doctorte dice con un comando qué plataformas funcionan, cuáles no y cómo arreglarlo - Configurador — Gestión única de autenticación por Cookie, API Keys, servicios MCP, etc.
- Inyección de SKILL — Registra
SKILL.mdpara el Agent, de modo que cuando se encuentre con necesidades como “buscar en X/Twitter” o “ver un vídeo”, llame automáticamente a la herramienta correspondiente
Soporte para 14+ canales:
| Plataforma | Lista para usar | Desbloquea funciones avanzadas |
|---|---|---|
| 🌐 Cualquier web (Jina Reader) | ✅ | — |
| 📺 Subtítulos de YouTube | ✅ | — |
| 📡 RSS / Atom | ✅ | — |
| 🔍 Búsqueda en toda la web (Exa) | ✅ (sin Key) | — |
| 📦 GitHub | ✅ repos públicos | repos privados / Crear un Issue |
| 🐦 Twitter/X | ✅ leer una sola publicación | búsqueda / timeline / publicar |
| 📺 Bilibili | ✅ subtítulos + búsqueda | acceso al servidor (requiere proxy) |
| ⚠️ requiere rdt login | búsqueda completa + comentarios | |
| 📕 Xiaohongshu | ⚠️ requiere xhs login | lectura / búsqueda / comentarios |
| 🎵 Douyin | ✅ análisis de vídeo | descarga sin marca de agua |
| ✅ páginas públicas | perfil / puestos | |
| 💬 WeChat Official Accounts | ✅ búsqueda + texto completo | — |
| ✅ tendencias / búsqueda | — | |
| 💻 V2EX | ✅ “hot” / nodos / publicaciones | — |
| 📈 Xueqiu | ✅ cotizaciones bursátiles | — |
| 🎙️ Podcast Xiaoyuzhou | ⚠️ requiere Whisper Key | audio a texto |
En una frase: no necesitas memorizar comandos, ni configurar rastreadores; habla con el Agent y ya puede navegar por internet.
Dificultad / Duración / Beneficio
- Dificultad: ⭐ (principiante, de verdad es un solo comando)
- Duración: 5–15 minutos (PC local); 30 minutos (servidor, incluyendo configuración de Cookie)
- Beneficios:
- Que Claude Code / OpenClaw lea directamente X/Twitter, haga scroll por Xiaohongshu y lea subtítulos de YouTube
- Comprender la diferencia de diseño en el ecosistema de herramientas para AI Agents: “scaffolding vs framework”
- Aprender a usar Cookie-Editor para gestionar de forma unificada las Cookies de múltiples plataformas y evitar el problema del inicio de sesión por QR
- Saber que
agent-reach doctores una buena práctica para la cadena de herramientas del Agent
Perfil de lectores objetivo
- Desarrolladores que trabajan con Claude Code / OpenClaw / Cursor
- Quieren que el Agent realmente pueda navegar para buscar información, no solo quedarse mirando
- No quieren pelearse por separado con rastreadores (o pagar APIs) para X/Twitter / Reddit / Xiaohongshu
- Ya tienen una cadena de herramientas de AI Agent y quieren añadir una capa de “capacidades de internet”
- Cuando hacen que el Agent corra tareas largas, buscan una forma de obtener cómputo menos dolorosa (hablaremos luego)
Dependencias clave y entorno
Requisitos mínimos:
| Proyecto | Requisito |
|---|---|
| Python | 3.10+ |
| Memoria | 512 MB (Agent Reach es muy ligero) |
| Disco | 500 MB (núcleo) / 2 GB+ (incluye drivers del navegador) |
| Sistema operativo | macOS / Linux / Windows |
Recomendado / Opcional:
| Proyecto | Para qué sirve |
|---|---|
pipx | instalación aislada; recomendado |
| Node.js 18+ | dependencias de algunas herramientas aguas arriba como twitter-cli / mcporter |
| Navegador Chrome / Edge | exportar Cookies |
| Plugin de navegador Cookie-Editor | exportación unificada de Cookies (sustituye el login por QR) |
| Proxy en el extranjero (~$1/mes) | solo necesario al desplegar Bilibili en servidor |
TIP
En local se puede usar totalmente gratis; el único escenario en el que hay que pagar es desplegar en un servidor en el extranjero y, si quieres ver Bilibili, configurar un proxy. Agent Reach por sí mismo + todas las herramientas aguas arriba son open source y gratis.
Estructura completa del proyecto (árbol)
Agent-Reach/
├── pyproject.toml # Definición del paquete Python
├── agent_reach/
│ ├── __init__.py # número de versión
│ ├── cli.py # Entrada CLI (argparse)
│ ├── core.py # Rutas principales de read/search
│ ├── config.py # Gestión de configuración YAML
│ ├── doctor.py # Motor de diagnóstico
│ ├── cookie_extract.py # Herramienta de extracción de Cookie
│ ├── channels/ # Un archivo por plataforma
│ │ ├── base.py # Clase abstracta BaseChannel
│ │ ├── web.py # Jina Reader
│ │ ├── twitter.py # twitter-cli
│ │ ├── youtube.py # yt-dlp
│ │ ├── github.py # gh CLI
│ │ ├── bilibili.py # yt-dlp + bili-cli
│ │ ├── reddit.py # rdt-cli
│ │ ├── xiaohongshu.py # xhs-cli
│ │ ├── douyin.py # douyin-mcp-server
│ │ ├── linkedin.py # linkedin-mcp
│ │ ├── wechat.py # Exa + Camoufox
│ │ ├── rss.py # feedparser
│ │ ├── exa_search.py # Exa via mcporter
│ │ ├── weibo.py
│ │ ├── v2ex.py
│ │ ├── xueqiu.py
│ │ └── xiaoyuzhou.py
│ ├── integrations/
│ │ └── mcp_server.py # Integración del servidor MCP
│ ├── skill/ # SKILL.md para el Agent
│ ├── guides/ # Documentación (CH/EN/JP/KR)
│ ├── scripts/ # Scripts de instalación
│ └── utils/
├── config/
│ └── mcporter.json # Configuración de herramientas MCP
├── tests/ # Pruebas pytest
└── docs/ # Versiones README en varios idiomas
Como usuario, solo necesitas tocar estos tres comandos: pip install / agent-reach install / agent-reach doctor.
channels/ está pensado para que los desarrolladores amplíen el proyecto.
Pasos guiados (paso a paso)
Paso 1: Instalación básica (ruta principal)
# Recomendado: pipx para instalar aislado
pipx install agent-reach
# O, alternativamente, pip (ojo: no lo instales en el Python del sistema)
python3 -m venv ~/.agent-reach-venv
source ~/.agent-reach-venv/bin/activate
pip install agent-reach
Después de instalar, debería existir este comando:
agent-reach --version
# agent-reach 1.4.0
Paso 2: Instalar de una vez todas las herramientas aguas arriba
# Modo predeterminado: detecta el entorno y instala todas las dependencias
agent-reach install --env=auto
Esto va a hacer, en orden:
- Instalar dependencias del sistema (Node.js / gh CLI / mcporter / twitter-cli / rdt-cli, etc.)
- Configurar el motor de búsqueda (conexión a Exa vía MCP, sin Key)
- Comprobar si es local o servidor, y dar recomendaciones distintas
- Registrar
SKILL.mden el directorioskills/del Agent
TIP
Usuarios de OpenClaw, atención: En OpenClaw, el profile tools.profile es messaging por defecto. Este profile no permite que el Agent ejecute comandos de shell; Agent Reach se quedará “a medio instalar” si no se cambia. Antes de instalar, activa exec:
openclaw config set tools.profile "coding"
openclaw gateway restart
Luego abre una sesión nueva y envía de nuevo: “Ayúdame a instalar Agent Reach”.
Paso 3: Diagnosticar el estado de los canales
agent-reach doctor
Deberías ver algo como:
✅ web Jina Reader OK
✅ youtube yt-dlp 2025.10.x installed
✅ rss feedparser 6.0.x
✅ exa_search Exa MCP connected
✅ github gh CLI 2.x authenticated
⚠️ twitter twitter-cli not logged in → run: twitter login
⚠️ reddit rdt-cli not logged in → run: rdt login
✅ bilibili yt-dlp OK
⚠️ xiaohongshu xhs-cli not logged in → see step 4
✅ douyin douyin-mcp-server OK
✅ wechat Exa search OK
✅ v2ex API OK
✅ significa listo para funcionar “tal cual”; ⚠️ indica que falta configuración extra (normalmente autenticación por Cookie).
Paso 4: Configurar la autenticación en plataformas que requieren Cookie (punto clave)
Estas tres categorías — Twitter / Xiaohongshu / Reddit requieren sesión iniciada. Se usa autenticación por Cookie en vez de QR.
Primero instala Cookie-Editor: busca “Cookie-Editor” en la tienda de apps de Chrome / Edge y instálalo.
Proceso unificado:
1. Inicia sesión manualmente en x.com / xiaohongshu.com / reddit.com en el navegador
2. Pulsa el icono del plugin Cookie-Editor → "Export" → elige el formato "Netscape"
3. Envía la cadena de Cookies exportada al Agent y dile: "Ayúdame a configurar Twitter"
4. El Agent usa cookie_extract.py para guardarlo en ~/.agent-reach/config.yaml
5. Permisos del archivo 600: solo legible por tu cuenta
# También puedes configurarlo por línea de comandos, sin pasar por el Agent
agent-reach config set twitter.cookie "$(pbpaste)" # macOS
agent-reach config set xhs.cookie "$(xclip -o)" # Linux
WARNING
El login por QR de Xiaohongshu se queda colgado: no lo uses. Usa directamente el flujo de exportación con Cookie-Editor; en 1 minuto está listo. Este es un “pozo” que el autor del proyecto repite una y otra vez en el CHANGELOG; no pierdas tiempo en el escaneo de QR.
Paso 5: Verificar las plataformas con Cookie
agent-reach doctor
Vuelve a ejecutar el diagnóstico: las plataformas marcadas con ⚠️ deberían pasar a ✅.
Paso 6: Haz que el Agent lo intente una vez
Dile a tu Agent (Claude Code / OpenClaw / Cursor):
A ver qué dice este tuit: https://x.com/vercel/status/1234567890
Después de leer SKILL.md, el Agent llamará automáticamente al comando twitter tweet URL, y en cuestión de segundos te devolverá el contenido del tuit.
Prueba varias combinaciones:
Busca qué se está hablando últimamente en Reddit en r/LocalLLaMA
Lee este vídeo de YouTube: https://youtube.com/watch?v=xxx
Mira en Xiaohongshu qué notas se están volviendo virales sobre "equipamiento de camping"
¿Para qué sirve este repositorio de GitHub? https://github.com/xxx/yyy
Vas a notar un detalle: no necesitas decirle al Agent qué comando ejecutar. SKILL.md ya tiene mapeadas las equivalencias: “leer X/Twitter = twitter CLI”, “ver vídeos = yt-dlp”, etc. Esa es la mayor diferencia de Agent Reach frente a un simple conjunto de herramientas: tras instalarlo, el Agent es consciente y elige herramientas, en lugar de probar a ciegas.
Paso 7 (opcional): Búsqueda semántica en toda la web
Por defecto ya está conectada Exa: no hace falta API Key. Pregúntale así al Agent:
Busca y compara los marcos de trabajo de LLM Agent más recientes de 2026; dame 5 que sean los más relevantes
Llamará a la herramienta Exa MCP; con los resultados, luego usará Jina Reader para extraer el texto completo y lo organizará en un informe.
TIP
Exa usa el protocolo MCP. Agent Reach lo integra mediante mcporter. Si quieres cambiar a Tavily / SerpAPI, lo único es cambiar el comando de arranque del alias exa_search en config/mcporter.json; no necesitas tocar ningún código de Agent Reach.
Paso 8 (opcional): Acceso a repositorios privados de GitHub
# Iniciar sesión una vez
gh auth login
Tras completar OAuth, el Agent podrá leer tus repos privados, abrir Issues, PRs y reviews.
Paso 9 (opcional): Refuerzo para Bilibili / Douyin
Bilibili en local: listo para usar; en servidor en el extranjero requiere proxy (~$1/mes, recomendado tipo proxy residencial como FluxNode):
# Asumiendo que tu proxy es http://127.0.0.1:7890
agent-reach config set bilibili.proxy "http://127.0.0.1:7890"
agent-reach doctor # vuelve a ejecutar el diagnóstico
Douyin no necesita iniciar sesión: pasa el enlace compartido al Agent:
Analiza este vídeo de Douyin: https://v.douyin.com/xxxxx
El Agent llama a mcporter call 'douyin.parse_douyin_video_info(...)', y te devuelve la información del vídeo junto con el enlace para descargar sin marca de agua.
Paso 10 (opcional): Modo seguro / Desinstalación
Modo seguro (para servidores de producción o máquinas con varios usuarios):
# No instala automáticamente paquetes del sistema; solo los lista para que los revises
agent-reach install --env=auto --safe
# O bien, primero previsualiza lo que haría sin ejecutarlo
agent-reach install --env=auto --dry-run
Desinstalar por completo:
agent-reach uninstall # borra configuración + archivos de skill
agent-reach uninstall --keep-config # conserva el token para re-instalar
pip uninstall agent-reach # elimina el paquete de Python
Solución de problemas (FAQ)
P1: Al instalar, OpenClaw da "permission denied" / el Agent no hace nada
Causa raíz: En OpenClaw, el tools.profile por defecto es messaging, y no permite que el Agent ejecute comandos de shell. Solución:
openclaw config set tools.profile "coding"
openclaw gateway restart
# Abre una sesión nueva y vuelve a enviar "Ayúdame a instalar Agent Reach"
O modifica ~/.openclaw/openclaw.json:
{
"tools": { "profile": "coding" }
}
P2: El login por QR en Xiaohongshu se queda girando
No uses QR. Directo:
- Instala Cookie-Editor desde la tienda de apps de Chrome
- Inicia sesión en Xiaohongshu en la web desde el navegador
- Cookie-Editor → Export → Netscape
- Envía la cadena al Agent y di: "Ayúdame a configurar Xiaohongshu"
- Listo en 30 segundos
P3: Reddit devuelve 403 al instante
Reddit, desde 2024, obliga a autenticar. Solución:
# Instala rdt-cli (en la fase de Agent Reach install, debería haberse instalado)
pipx install rdt-cli
# Iniciar sesión de una vez (extraerá Cookies desde tu Chrome automáticamente)
rdt login
# Verificar
rdt search "LocalLLaMA" --limit 5
Al igual que con Twitter / Xiaohongshu,
rdt loginextrae Cookies automáticamente desde el navegador; no es QR.
P4: Bilibili en servidor en el extranjero no conecta
Las IPs extranjeras están bloqueadas por Bilibili; necesitas un proxy residencial. Dos opciones:
# Opción 1: Configuración por línea de comandos (recomendado, tipo FluxNode como proxy barato)
agent-reach config set bilibili.proxy "http://user:pass@proxy:port"
# Opción 2: Variables de entorno
export HTTP_PROXY="http://user:pass@proxy:port"
export HTTPS_PROXY="http://user:pass@proxy:port"
Los proxies residenciales baratos cuestan ~ $1/mes; no hace falta montar uno tú.
P5: agent-reach doctor muestra "channel not found" / conflicto de archivos de canales
Normalmente es porque falló la instalación de algunas herramientas aguas arriba, o se instalaron en el Python del sistema en vez de pipx. La solución más limpia es empezar de cero del todo:
agent-reach uninstall
pipx uninstall agent-reach
# limpiar posibles restos en ~/.agent-reach/
rm -rf ~/.agent-reach/
pipx install agent-reach
agent-reach install --env=auto
agent-reach doctor
P6: Cambiaste de navegador / las Cookies expiraron
Las Cookies suelen expirar tras varios meses; repite el flujo: "login en el navegador → exportar con Cookie-Editor → enviarlas al Agent". El Agent sobrescribirá automáticamente las Cookies antiguas en ~/.agent-reach/config.yaml.
TIP
Recomendación: usa una cuenta secundaria dedicada para configurar Cookies. Las plataformas tienen detecciones para llamadas a scripts; si la cuenta principal entra en riesgo, será un problema. Para Twitter / Xiaohongshu / Reddit se recomienda crear por separado una cuenta secundaria “para el Agent”; si llega a estar bloqueada, no duele tanto.
P7 (Bonus): Cuando el Agent corre tareas largas, la factura se dispara; ¿cómo hago el cálculo?
Te cuento un problema en el que yo mismo caí al hacer correr tareas con un Agent.
Agent Reach resuelve el problema de "cómo conecta el Agent a internet"; pero, en esencia, cuando el Agent ejecuta llamadas de herramientas, sigue consumiendo tokens del LLM. Una tarea típica de "investigar competidores + resumir" involucra 5–10 rondas de llamadas de herramientas (buscar, capturar páginas web, leer tuits, volver a buscar, volver a leer). En una ronda se van decenas de miles de tokens; si al día corres 20 y pico tareas, la factura explota rápido.
Tres formas de conectarlo que probé (mi experiencia al desplegar):
- Conectar con la API oficial de Anthropic — La experiencia es la más completa; pero cuando Claude Opus ejecuta tareas de Agent, es normal que la factura del día sea de cuatro cifras de RMB
- Conectar con APIs agregadoras como OpenRouter — Un poco más barato que la oficial, pero aun así es caro
- Conectar con Defapi — Mi solución actual. A mitad de precio del precio oficial, y además a nivel de protocolo es totalmente compatible: del lado de Agent Reach la configuración sigue igual; no necesitas cambiar ningún código de SKILL / prompt / llamadas a herramientas
Configuración concreta (asumiendo que tu Agent usa el protocolo Claude / Anthropic):
# ~/.openclaw/openclaw.json o variables de entorno de Claude Code
ANTHROPIC_BASE_URL=https://api.defapi.org
ANTHROPIC_API_KEY=sk-xxxxxx # obtener en el panel de defapi.org
Modelos de Defapi suelen ser compatibles con las tres suites principales de protocolos — v1/chat/completions (OpenAI) / v1/messages (Anthropic) / v1beta/models (Gemini). Cambiar de modelo es como cambiar un nombre. Para tareas “intensivas en llamadas de herramientas” como capturar tuits de X/Twitter, analizar Xiaohongshu y resumir subtítulos de vídeo, pasar de cuatro cifras a tres cifras al mes es totalmente real.
TIP
Agent Reach + Defapi es una combinación ganadora: la primera resuelve “si el Agent, después de todo, puede conectarse a internet”, la segunda resuelve “si tras conectarse, correrlo cuesta o no”. Ambos están impulsados por protocolos compatibles con OpenAI/Anthropic y se configuran sin conflictos.
Lecturas adicionales / Direcciones de mejora
- Canal personalizado: agrega un archivo en
agent_reach/channels/, heredaBaseChannele implementa cuatro métodos:can_handle(url)/read(url)/search(query)/check(). Luego basta conpip install -e .. El umbral es muy bajo: un archivo por plataforma - Sustituir herramientas aguas arriba:
channels/web.pyusa Jina Reader por defecto. ¿Crees que no es suficiente? Puedes cambiar a Firecrawl / Crawl4AI / un crawler propio; cambia el import y listo - Mecanismo SKILL.md: cuando el Agent instala Agent Reach, SKILL.md se registra automáticamente en
~/.claude/skills//~/.openclaw/skills/. Puedes escribir tu propio SKILL.md y enseñarle al Agent qué channel priorizar en situaciones específicas - mcporter para cualquier MCP: no solo Exa. Cualquier servidor compatible con MCP puede conectarse mediante
config/mcporter.json. Basta con cambiar el alias por el comando de arranque correspondiente - Varios Agents compartiendo: la configuración de Agent Reach
~/.agent-reach/config.yamles a nivel de archivo. Si tienes varios Agents (Claude Code + OpenClaw + Cursor) corriendo en la misma máquina, pueden compartir la misma configuración - Integración con Defapi: Agent Reach obtiene datos y Defapi ejecuta la inferencia. Es una “capa de obtención de información” y otra “capa de costo de cómputo”. Como ambas son impulsadas por protocolos, combinarlas produce un “flujo de trabajo de tareas largas de un Agent de bajo costo”
Repositorio GitHub: Panniantong/Agent-Reach. Documentación en varios idiomas en docs/README_en.md / docs/README_ja.md / docs/README_ko.md, y la idea de diseño en el apartado final de README llamado “Diseño de la idea/filosofía”. Para contribuir con PR de canales, basta con hacerlo; el autor Neo Reid está muy activo manteniéndolo.