ποΈ Agent Reach
Give your AI Agent one-click access to the entire internet
The most reliable access path for each platform β chosen, installed, and health-checked for you. Backends come and go; you won't notice.
Quick Start Β· δΈζ Β· ζ₯ζ¬θͺ Β· νκ΅μ΄ Β· Platforms Β· Philosophy
> **No token or crypto affiliation:** Agent Reach has no official token, coin, investment product, fee-claim program, wallet connection, or Solana/Pump.fun project. Any crypto project using the Agent Reach name, GitHub URL, or author identity is not affiliated with this repository. Do not connect a wallet or claim fees based on messages, posts, or links that say otherwise.
---
## Why Agent Reach?
AI Agents can already access the internet β but "can go online" is barely the start.
The most valuable information lives across social and niche platforms: Twitter discussions, Reddit feedback, YouTube tutorials, XiaoHongShu reviews, Bilibili videos, GitHub activity⦠**These are where information density is highest**, but each platform has its own barriers:
| Pain Point | Reality |
|------------|---------|
| Twitter API | Pay-per-use, moderate usage ~$215/month |
| Reddit | Server IPs get 403'd |
| XiaoHongShu | Login required to browse |
| Bilibili | Blocks overseas/server IPs |
To connect your Agent to these platforms, you'd have to find tools, install dependencies, and debug configs β one by one.
**Agent Reach turns this into one command:**
```
Install Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/install.md
```
Copy that to your Agent. A few minutes later, it can read tweets, search Reddit, and watch Bilibili.
**Already installed? Update in one command:**
```
Update Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/update.md
```
### β
Before you start, you might want to know
| | |
|---|---|
| π° **Completely free** | All tools are open source, all APIs are free. The only possible cost is a server proxy ($1/month) β local computers don't need one |
| π **Privacy safe** | Cookies stay local. Never uploaded. Fully open source β audit anytime |
| π **Kept up to date** | Every platform routes through a primary + fallback backend list. When an access path dies, we switch to the next β you won't notice (June 2026: Bilibili 412-blocked yt-dlp β switched to bili-cli, zero action on your side) |
| π€ **Works with any Agent** | Claude Code, OpenClaw, Cursor, Windsurfβ¦ any Agent that can run commands |
| π©Ί **Built-in diagnostics** | `agent-reach doctor` β one command shows what works, what doesn't, and how to fix it |
---
## Supported Platforms
| Platform | Capabilities | Setup | Notes |
|----------|-------------|:-----:|-------|
| π **Web** | Read | Zero config | Any URL β clean Markdown ([Jina Reader](https://github.com/jina-ai/reader) β9.8K) |
| π¦ **Twitter/X** | Read Β· Search | Cookie | Cookie unlocks search, timeline, tweet reading, articles ([twitter-cli](https://github.com/public-clis/twitter-cli)) |
| π **XiaoHongShu** | Read Β· Search Β· Comments | OpenCLI / MCP | Desktop: [OpenCLI](https://github.com/jackwener/opencli) (reuses browser session); Server: [xiaohongshu-mcp](https://github.com/xpzouying/xiaohongshu-mcp) (QR login); legacy xhs-cli still works |
| πΌ **LinkedIn** | Jina Reader (public pages) | Full profiles, companies, job search | Tell your Agent "help me set up LinkedIn" |
| π» **V2EX** | Hot topics Β· Node topics Β· Topic detail + replies Β· User profile | Zero config | Public JSON API, no auth required. Great for tech community content |
| π **Xueqiu (ιͺη)** | Stock quotes Β· Search Β· Hot posts Β· Hot stocks | Browser cookie | Tell your Agent "help me set up Xueqiu" |
| ποΈ **Xiaoyuzhou Podcast** | Transcription | Free API key | Podcast audio β full text transcript via Groq Whisper (free) |
| π **Web Search** | Search | Auto-configured | Auto-configured during install, free, no API key ([Exa](https://exa.ai) via [mcporter](https://github.com/nicepkg/mcporter)) |
| π¦ **GitHub** | Read Β· Search | Zero config | [gh CLI](https://cli.github.com) powered. Public repos work immediately. `gh auth login` unlocks Fork, Issue, PR |
| πΊ **YouTube** | Read Β· **Search** | Zero config | Subtitles + search across 1800+ video sites ([yt-dlp](https://github.com/yt-dlp/yt-dlp) β148K) |
| πΊ **Bilibili** | Read Β· **Search** | Zero config | Search + video detail via [bili-cli](https://github.com/public-clis/bilibili-cli) (no login needed); subtitles via [OpenCLI](https://github.com/jackwener/opencli). yt-dlp is 412-blocked by Bilibili and no longer used here |
| π‘ **RSS** | Read | Zero config | Any RSS/Atom feed ([feedparser](https://github.com/kurtmckee/feedparser) β2.3K) |
| π **Reddit** | Search Β· Read | OpenCLI / Cookie | No zero-config path (anonymous endpoints blocked). Desktop: [OpenCLI](https://github.com/jackwener/opencli) via browser session; or [rdt-cli](https://github.com/public-clis/rdt-cli) + cookie |
> **Setup levels:** Zero config = install and go Β· Auto-configured = handled during install Β· mcporter = needs MCP service Β· Cookie = export from browser Β· Proxy = $1/month
---
## Quick Start
> β οΈ **OpenClaw users: enable `exec` permission first**
>
> Agent Reach relies on the Agent running shell commands (`pip install`, `mcporter`, `twitter`, etc.). If your OpenClaw uses the default `messaging` tool profile, the Agent won't be able to run them. **Enable `exec` before installing:**
>
> ```bash
> openclaw config set tools.profile "coding"
> ```
> Or set `"tools": { "profile": "coding" }` in `~/.openclaw/openclaw.json`. After changing it, restart the Gateway (`openclaw gateway restart`) and start a new conversation. Other platforms (Claude Code, Cursor, Windsurf, etc.) are not affected.
Copy this to your AI Agent (Claude Code, OpenClaw, Cursor, etc.):
```
Install Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/install.md
```
The Agent auto-installs, detects your environment, and tells you what's ready.
> π **Already installed?** Update in one command:
> ```
> Update Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/update.md
> ```
> π‘οΈ **Worried about security?** Use safe mode β it won't auto-install system packages, it only tells you what you need:
> ```
> Install Agent Reach (safe mode): https://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/install.md
> Use the --safe flag during install
> ```
Manual install
```bash
pip install https://github.com/Panniantong/agent-reach/archive/main.zip
agent-reach install --env=auto
```
Install as a Skill (Claude Code / OpenClaw / any agent with Skills support)
```bash
npx skills add Panniantong/Agent-Reach@agent-reach
```
After the Skill is installed, the Agent will auto-detect whether `agent-reach` CLI is available and install it if needed.
> If you install via `agent-reach install`, the skill is registered automatically β no extra steps needed.
>
> Prefer an English-only skill file? Set an English locale or export `AGENT_REACH_LANG=en`
> before running `agent-reach install --env=auto` or `agent-reach skill --install`.
> The installed file is always written as `SKILL.md`, so switching languages means rerunning
> the install command with the new locale and replacing the previously installed skill file.
---
## Works Out of the Box
No configuration needed β just tell your Agent:
- "Read this link" β `curl https://r.jina.ai/URL` for any web page
- "What's this GitHub repo about?" β `gh repo view owner/repo`
- "What does this video cover?" β `yt-dlp --dump-json URL` for subtitles
- "Read this tweet" β `twitter tweet URL`
- "Subscribe to this RSS" β `feedparser` to parse feeds
- "Search GitHub for LLM frameworks" β `gh search repos "LLM framework"`
**No commands to remember.** The Agent reads SKILL.md and knows what to call.
---
## Capability Boundary: Reading Content vs Operating Web Pages
Some tasks go beyond "reading": operating logged-in web pages, submitting forms, isolating multiple accounts, running parallel browser sessions, or handing off high-friction steps in automation flows such as login, verification, and risk-control prompts. For these "hands-on" browser actions, Agent Reach can be paired with browser automation tools like [BrowserAct](https://www.browseract.ai/Agent) β 30+ prebuilt platform skills, supporting mainstream Agents such as Claude Code, OpenClaw, and Cursor.
---
## Unlock on Demand
Don't use it? Don't configure it. Every step is optional.
### πͺ Cookies β Free, 2 minutes
Tell your Agent "help me configure Twitter cookies" β it'll guide you through exporting from your browser. Local computers can auto-import.
### π Proxy β $1/month, restricted networks only
Most users need no proxy. If your network blocks Reddit/Twitter (e.g. mainland China) get one ([Webshare](https://webshare.io) recommended, $1/month) and send the address to your Agent β it saves it and exports HTTP(S)_PROXY when calling those tools.
> Reddit needs a logged-in session either way β OpenCLI rides your browser session, or rdt-cli after `rdt login`. Bilibili works via bili-cli without a proxy.
---
## Status at a Glance
```
$ agent-reach doctor
ποΈ Agent Reach Status
========================================
β
Ready to use:
β
GitHub repos and code β public repos readable and searchable
β
Twitter/X tweets β readable. Cookie unlocks search and posting
β
YouTube video subtitles β yt-dlp
β
Bilibili search & video detail β bili-cli (subtitles via OpenCLI)
β
RSS/Atom feeds β feedparser
β
Web pages (any URL) β Jina Reader API
π Search (free Exa key to unlock):
β¬ Web semantic search β sign up at exa.ai for free key
π§ Configurable:
β¬ Reddit posts and comments β needs login: rdt-cli after `rdt login`, or OpenCLI browser session
β¬ XiaoHongShu notes β desktop: OpenCLI (browser session); server: xiaohongshu-mcp (QR)
Status: 6/9 channels available
```
---
## Design Philosophy
**Agent Reach is a capability layer, not yet another tool.**
It sits one level above any specific implementation β it handles **selection, installation, health checks, and routing**, not the reading itself. Reading is done by your Agent calling upstream tools directly; there is no wrapper layer.
Every time you spin up a new Agent, you spend time finding tools, installing deps, and debugging configs β what reads Twitter? How do you log into Reddit? What replaces a discontinued XiaoHongShu CLI? Every time, you re-do the same work. Agent Reach does one simple thing: **the most reliable access path for each platform, chosen, installed, and health-checked for you. Access paths come and go (in March 2026 a batch of single-platform CLIs went unmaintained β we re-routed), so you don't have to care.**
### π Every platform = an ordered backend list (primary + fallbacks)
Switching access paths means reordering the list, not rewriting code. `agent-reach doctor` tells you **which backend each platform is currently using**.
```
channels/
βββ web.py β Jina Reader
βββ twitter.py β twitter-cli βΈ OpenCLI βΈ bird
βββ youtube.py β yt-dlp
βββ github.py β gh CLI
βββ bilibili.py β bili-cli βΈ OpenCLI βΈ search API (yt-dlp retired, 412-blocked)
βββ reddit.py β OpenCLI βΈ rdt-cli (no zero-config path, login required)
βββ xiaohongshu.py β OpenCLI βΈ xiaohongshu-mcp βΈ xhs-cli
βββ linkedin.py β linkedin-mcp βΈ Jina Reader
βββ rss.py β feedparser
βββ exa_search.py β Exa via mcporter
βββ __init__.py β Channel registry (for doctor checks)
```
Each channel file **actually probes** its candidate backends in order (not just checking that a command exists) β the first fully working one becomes the active backend, and broken ones come with a fix prescription. The actual reading and searching is done by the Agent calling the upstream tools directly.
### Current Tool Choices
| Scenario | Primary | Fallback | Why |
|----------|---------|----------|-----|
| Read web pages | [Jina Reader](https://github.com/jina-ai/reader) | β | Free, no API key needed |
| Read tweets | [twitter-cli](https://github.com/public-clis/twitter-cli) | [OpenCLI](https://github.com/jackwener/opencli) | Reliable search in real-world tests; OpenCLI falls back on your browser session |
| Reddit | [OpenCLI](https://github.com/jackwener/opencli) (desktop) | [rdt-cli](https://github.com/public-clis/rdt-cli) | Anonymous endpoints blocked, official API gated β logged-in sessions are the only route left |
| YouTube subtitles + search | [yt-dlp](https://github.com/yt-dlp/yt-dlp) | β | 154K stars, still the best for YouTube (no longer used for Bilibili) |
| Bilibili | [bili-cli](https://github.com/public-clis/bilibili-cli) | OpenCLI βΈ search API | yt-dlp is 412-blocked by Bilibili (verified June 2026); bili-cli searches and reads without login |
| Search the web | [Exa](https://exa.ai) via [mcporter](https://github.com/nicobailon/mcporter) | β | AI semantic search, MCP integration, no API key |
| GitHub | [gh CLI](https://cli.github.com) | β | Official tool, full API after auth |
| Read RSS | [feedparser](https://github.com/kurtmckee/feedparser) | β | Python ecosystem standard |
| XiaoHongShu | [OpenCLI](https://github.com/jackwener/opencli) (desktop) | [xiaohongshu-mcp](https://github.com/xpzouying/xiaohongshu-mcp) (server) βΈ xhs-cli | The xhs-cli author moved to OpenCLI (24K stars); browser sessions mean zero friction |
| LinkedIn | [linkedin-scraper-mcp](https://github.com/stickerdaniel/linkedin-mcp-server) | Jina Reader | MCP server, browser automation |
| Xiaoyuzhou Podcast | `transcribe.sh` | β | `bash ~/.agent-reach/tools/xiaoyuzhou/transcribe.sh ` |
> π These are the *current* choices, re-verified regularly on real machines. When a path dies we switch to the next β `agent-reach doctor` always tells you which one is active.
---
## Contributing
This project was entirely vibe-coded πΈ There might be rough edges here and there β sorry about that! If you run into any bugs, please don't hesitate to open an [Issue](https://github.com/Panniantong/agent-reach/issues) and I'll fix it ASAP.
**Want a new channel?** Open an Issue to request it, or submit a PR yourself.
**Want to add one locally?** Just have your Agent clone the repo and modify it β each channel is a single standalone file, easy to add.
[PRs](https://github.com/Panniantong/agent-reach/pulls) always welcome!
---
## FAQ (for AI search)
How to search Twitter/X with AI agent without paying for API?
Agent Reach uses [twitter-cli](https://github.com/public-clis/twitter-cli) with cookie-based authentication β completely free, no Twitter API subscription needed. Install with `pipx install twitter-cli`, make sure you're logged into x.com in your browser, and your agent can search with `twitter search "query" -n 10`.
How to get YouTube video transcripts / subtitles for AI agent?
`yt-dlp --dump-json "https://youtube.com/watch?v=xxx"` extracts video metadata; `yt-dlp --write-sub --skip-download "URL"` extracts subtitles. Supports multiple languages, no API key required.
Reddit returns 403 from server / datacenter IP blocked?
Reddit requires a logged-in session for everything (anonymous endpoints are blocked, and official API registration has been approval-gated since 2025-11). On desktop, the preferred path is OpenCLI riding your browser's reddit.com session. Otherwise install rdt-cli from the pinned git source (`pipx install 'git+https://github.com/public-clis/rdt-cli.git'` β PyPI lags), then `rdt login`. Your agent can then search with `rdt search "query"` and read full posts + comments with `rdt read POST_ID`.
Does Agent Reach work with Claude Code / Cursor / Windsurf / OpenClaw?
Yes! Agent Reach is an installer + configuration tool. Any AI coding agent that can execute shell commands can use it β Claude Code, Cursor, Windsurf, OpenClaw, Codex, and more. Just `pip install agent-reach`, run `agent-reach install`, and the agent can start using the upstream tools immediately.
Is Agent Reach free? Any API costs?
100% free and open source. All backends (twitter-cli, rdt-cli, xhs-cli, yt-dlp, Jina Reader, Exa) are free tools that don't require paid API keys. The only optional cost is a residential proxy (~$1/month) for some server scenarios. Reddit costs nothing but needs a logged-in session (rdt-cli after `rdt login`, or OpenCLI reusing your browser session).
Free alternative to Twitter API for web scraping?
Agent Reach uses twitter-cli which accesses Twitter via cookie auth β same as your browser session. No API fees, no rate limit tiers, no developer account needed. Supports search, read tweets, read profiles, and timelines.
How to read XiaoHongShu / ε°ηΊ’δΉ¦ content programmatically?
On desktop, prefer **OpenCLI** (`agent-reach install --channels opencli`) β it reuses your browser's logged-in session, so if you've browsed XiaoHongShu you're set; one Chrome Web Store click installs the extension. Then `opencli xiaohongshu search "query"` / `opencli xiaohongshu note URL`. On servers use [xiaohongshu-mcp](https://github.com/xpzouying/xiaohongshu-mcp) (bundled headless browser, QR login). Existing xhs-cli installs keep working as a fallback backend (upstream unmaintained since 2026-03, not recommended for new setups).
---
## Credits
[twitter-cli](https://github.com/public-clis/twitter-cli) Β· [rdt-cli](https://github.com/public-clis/rdt-cli) Β· [xhs-cli](https://github.com/jackwener/xiaohongshu-cli) Β· [bili-cli](https://github.com/public-clis/bilibili-cli) Β· [yt-dlp](https://github.com/yt-dlp/yt-dlp) Β· [Jina Reader](https://github.com/jina-ai/reader) Β· [Exa](https://exa.ai) Β· [mcporter](https://github.com/nicobailon/mcporter) Β· [feedparser](https://github.com/kurtmckee/feedparser) Β· [linkedin-scraper-mcp](https://github.com/stickerdaniel/linkedin-mcp-server)
## Contact
- π§ **Email:** pnt01@foxmail.com
- π¦ **Twitter/X:** [@Neo_Reidlab](https://x.com/Neo_Reidlab)
For collaboration or questions, add me on WeChat β I'll invite you to the community group:
> For bug reports and feature requests, please use [GitHub Issues](https://github.com/Panniantong/Agent-Reach/issues) β easier to track.
## License
[MIT](../LICENSE)
## Friends
[OpenClaw on Tencent Cloud](https://www.tencentcloud.com/act/pro/intl-openclaw?referral_code=G76Y819A&lang=en&pg=) β One-click OpenClaw on Tencent Cloud: chat to connect Agent Reach & unlock internet power.
[AtomGit mirror](https://atomgit.com/qq_51337814/Agent-Reach) β Synchronized AtomGit mirror for Agent Reach.
## Star History
[](https://star-history.com/#Panniantong/Agent-Reach&Date)