Give your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Find a file
Panniantong 8b00f73e84 docs: 重写设计理念 — 突出脚手架定位、可插拔架构、新渠道贡献指南
- 设计理念: 明确「脚手架不是框架」定位
- 项目结构: 每个文件标注可替换后端选项
- 添加新渠道: 3 步完整教程 + 代码示例
- 贡献指南: 希望支持的渠道列表(HN/Mastodon/Telegram/arXiv 等)
- 中英文 README 同步更新
2026-02-24 13:41:14 +01:00
agent_reach feat: 新增 YouTube/Bilibili/XHS 搜索 CLI 命令 + 修复 B站搜索 2026-02-24 13:39:21 +01:00
docs docs: 重写设计理念 — 突出脚手架定位、可插拔架构、新渠道贡献指南 2026-02-24 13:41:14 +01:00
scripts polish: 全面清理旧名引用 + 英文 README 对齐中文版质量 2026-02-24 12:15:30 +01:00
tests rename: Agent Eyes → Agent Reach 2026-02-24 10:25:46 +01:00
.env.example polish: 全面清理旧名引用 + 英文 README 对齐中文版质量 2026-02-24 12:15:30 +01:00
.gitignore polish: 全面清理旧名引用 + 英文 README 对齐中文版质量 2026-02-24 12:15:30 +01:00
LICENSE README: 对标爆火开源项目标准重写 2026-02-24 10:17:52 +01:00
pyproject.toml rename: Agent Eyes → Agent Reach 2026-02-24 10:25:46 +01:00
README.md docs: 重写设计理念 — 突出脚手架定位、可插拔架构、新渠道贡献指南 2026-02-24 13:41:14 +01:00

👁️ Agent Reach

给你的 AI Agent 一键装上互联网能力

MIT License Python 3.8+ GitHub Stars

快速开始 · English · 支持平台 · 设计理念


为什么需要 Agent Reach

AI Agent 已经能访问互联网——但只是"能上网"而已。

真正有价值的信息散落在各种社媒和私域平台里Twitter 上的行业讨论、Reddit 上的真实反馈、YouTube 的深度教程、小红书上的用户口碑、B站的技术视频、GitHub 的开源动态……这些地方才是信息密度最高的地方,但每个平台都有自己的门槛:

痛点 现状
Twitter API $100/月起步
Reddit 服务器 IP 直接 403
小红书 必须登录才能看
B站 屏蔽海外/服务器 IP

你要让 Agent 接入这些平台,就得一个一个去踩坑、装工具、调配置。

Agent Reach 把这件事变成一行命令:

帮我安装 Agent Reachhttps://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/install.md

复制给你的 Agent30 秒后它就能读推特、搜 Reddit、看 B站了。

在你用之前,你可能想知道

💰 完全免费 所有工具开源、所有 API 免费。唯一可能花钱的是服务器代理($1/月),本地电脑不需要
🔒 隐私安全 Cookie 只存在你本地,不上传不外传。代码完全开源,随时可审查
🔄 持续更新 底层工具yt-dlp、birdx、Jina Reader 等)定期追踪更新到最新版,你不用自己盯
🤖 兼容所有 Agent Claude Code、OpenClaw、Cursor、Windsurf……任何能跑命令行的 Agent 都能用
🩺 自带诊断 agent-reach doctor 一条命令告诉你哪个通、哪个不通、怎么修

支持的平台

平台 能力 配置难度 说明
🌐 网页 阅读 零配置 任意 URL → 干净 MarkdownJina Reader 9.8K 驱动)
🐦 Twitter/X 阅读 · 搜索 零配置 / Cookie 单条推文零配置可读。配置 Cookie 可解锁搜索、时间线、发推(birdx 驱动)
📕 小红书 阅读 · 搜索 · 发帖 · 评论 · 点赞 mcporter 通过 xiaohongshu-mcp 内部 API安装即可用
🔍 全网搜索 搜索 自动配置 安装时自动配置,免 Key 免费用(Exa via mcporter 驱动)
📦 GitHub 阅读 · 搜索 零配置 gh CLI 驱动,公开仓库直接可用。gh auth login 后可解锁 Fork、Issue、PR
📺 YouTube 阅读 · 搜索 零配置 视频字幕 + 搜索,支持 1800+ 视频网站(yt-dlp 148K 驱动)
📺 B站 阅读 · 搜索 零配置 / 代理 视频信息 + 字幕 + 搜索。本地直接用,服务器配个代理(yt-dlp 驱动)
📡 RSS 阅读 零配置 任意 RSS/Atom 源(feedparser 2.3K 驱动)
📖 Reddit 搜索 · 阅读 免费 / 代理 搜索通过 Exa 免费直接可用。读帖子配个代理即可

配置难度说明: 零配置 = 装好即用 · 自动配置 = 安装时搞定 · mcporter = 需要 MCP 服务 · Cookie = 从浏览器导出 · 代理 = $1/月


30 秒上手

复制给你的 AI AgentClaude Code、OpenClaw、Cursor 等):

帮我安装 Agent Reachhttps://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/install.md

Agent 自动安装、检测环境、告诉你哪些功能已经可以用。

手动安装
pip install https://github.com/Panniantong/agent-reach/archive/main.zip
agent-reach install --env=auto

装好就能用

不需要任何配置,告诉 Agent 就行:

  • "帮我看看这个链接" → 任意网页
  • "这个 GitHub 仓库是做什么的" → GitHub 仓库、Issue、代码
  • "这个视频讲了什么" → YouTube / B站字幕提取
  • "帮我看看这条推文" → Twitter 推文
  • "订阅这个 RSS" → RSS / Atom 源
  • "搜一下 GitHub 上有什么 LLM 框架" → GitHub 搜索

不需要记命令。 Agent 自己知道该调什么。


按需解锁

不用的不用配。每一步都可以跳过,直接告诉 Agent 就行。

告诉 Agent "帮我配置 Twitter Cookie"Agent 会引导你从浏览器导入。本地电脑可以一键自动导入。

🌐 代理 — $1/月,仅服务器需要

Reddit 和 B站封服务器 IP。买个代理推荐 Webshare$1/月),把地址发给 Agent 就行。

本地电脑不需要代理。Reddit 搜索通过 Exa 免费可用,不买代理也能搜。


状态一目了然

$ agent-reach doctor

👁️  Agent Reach 状态
========================================

✅ 装好即用:
  ✅ GitHub 仓库和代码 — 公开仓库可读可搜。配置 gh CLI 或 Token 可解锁 Fork、Issue、PR 等操作
  ✅ Twitter/X 推文 — 可读取推文。配置 Cookie 可解锁搜索和发推
  ✅ YouTube 视频字幕 — yt-dlp
  ⚠️  B站视频信息和字幕 — 服务器 IP 可能被封,配置代理即可解决
  ✅ RSS/Atom 订阅源 — feedparser
  ✅ 网页(任意 URL — Jina Reader API

🔍 搜索(免费 Exa Key 即可解锁):
  ⬜ 全网语义搜索 — 注册 exa.ai 获取免费 Key配置一下就能用

🔧 配置后可用:
  ⬜ Reddit 帖子和评论 — 搜索用 Exa 免费可用。读帖子需配个代理
  ⬜ 小红书笔记 — 需要配置 Cookie。导入浏览器 Cookie 即可

状态6/9 个渠道可用

设计理念

Agent Reach 是一个脚手架scaffolding不是框架。

你给一个新 Agent 装环境的时候总要花时间去找工具、装依赖、调配置——Twitter 用什么读Reddit 怎么绕封YouTube 字幕怎么提取?每次都要重新踩一遍。

Agent Reach 做的事情很简单:帮你把这些选型和配置的活儿做完了。

🔌 每个渠道都是可插拔的

每个平台对应一个独立的 Python 文件(~50100 行),实现统一接口。后端工具随时可以换——哪天出了更好的工具,改一个文件就行,其他不用动。

channels/
├── base.py         → 统一接口Channel 基类)
├── web.py          → Jina Reader     ← 可以换成 Firecrawl、Crawl4AI……
├── twitter.py      → birdx           ← 可以换成 Nitter、官方 API……
├── youtube.py      → yt-dlp           ← 可以换成 YouTube API、Whisper……
├── github.py       → gh CLI          ← 可以换成 REST API、PyGithub……
├── bilibili.py     → yt-dlp           ← 可以换成 bilibili-api……
├── reddit.py       → JSON API + Exa  ← 可以换成 PRAW、Pushshift……
├── xiaohongshu.py  → mcporter MCP    ← 可以换成其他 XHS 工具……
├── rss.py          → feedparser       ← 可以换成 atoma……
├── exa_search.py   → mcporter MCP    ← 可以换成 Tavily、SerpAPI……
└── __init__.py     → 渠道注册(加一行就注册一个新渠道)

想换后端?打开对应文件,改掉 read() / search() 的实现就行。接口不变,其他代码不用动。

🧩 添加新渠道3 步)

添加新渠道非常简单3 步就能搞定:

第 1 步: 新建 channels/你的渠道.py

from .base import Channel, ReadResult, SearchResult

class 你的渠道Channel(Channel):
    name = "你的渠道"
    description = "一句话描述"
    backends = ["用了什么工具"]

    def can_handle(self, url: str) -> bool:
        return "你的域名" in url

    async def read(self, url: str, config=None) -> ReadResult:
        # 读取内容,返回 ReadResult
        return ReadResult(title="...", content="...", url=url, platform=self.name)

    def check(self, config=None):
        return "ok", "一切正常"

    # 可选:实现 search() 支持搜索

第 2 步:channels/__init__.py 注册

from .你的渠道 import 你的渠道Channel

ALL_CHANNELS: List[Channel] = [
    ...
    你的渠道Channel(),  # 加这一行
    WebChannel(),
]

第 3 步: 没了。agent-reach doctor 自动识别,agent-reach read 自动路由。

💡 参考现有渠道: rss.py30 行,最简单)→ web.py50 行)→ youtube.py100 行,含搜索)

当前选型

场景 选型 为什么选它
读网页 Jina Reader 9.8K Star免费不需要 API Key
读推特 birdx Cookie 登录,不用花 $100/月买官方 API
视频字幕 + 搜索 yt-dlp 148K StarYouTube + B站 + 1800 站通吃
搜全网 Exa via mcporter AI 语义搜索MCP 接入免 Key
GitHub gh CLI 官方工具,认证后完整 API 能力
读 RSS feedparser Python 生态标准选择2.3K Star
小红书 xiaohongshu-mcp 内部 API不受反爬限制

📌 这些都是「当前选型」。不满意?换掉对应文件就行。这正是脚手架的意义。


贡献

欢迎提 IssuePR

🆕 想添加新渠道?

  1. 复制 agent_reach/channels/rss.py(最简单的参考)
  2. 实现 can_handle() + read(),可选 search()check()
  3. __init__.py 注册

就这么简单。不需要改框架代码,不需要了解其他渠道。

希望支持的渠道(欢迎 PR

  • 📰 Hacker News — 科技新闻
  • 🐘 Mastodon / Fediverse — 去中心化社交
  • 📱 Telegram — 频道和群组
  • 🎵 Spotify / Apple Podcasts — 播客字幕
  • 📝 Medium / Substack — 付费墙文章
  • 🔬 arXiv / Semantic Scholar — 学术论文
  • 💬 Discord — 服务器消息
  • 📌 Pinterest — 图片搜索
  • …… 任何你觉得有用的平台!

致谢

Jina Reader · yt-dlp · birdx · Exa · feedparser

License

MIT