Agent-Reach/README.md
2026-02-24 22:45:43 +08:00

210 lines
9.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<h1 align="center">👁️ Agent Reach</h1>
<p align="center">
<strong>给你的 AI Agent 一键装上互联网能力</strong>
</p>
<p align="center">
<a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-blue.svg?style=for-the-badge" alt="MIT License"></a>
<a href="https://www.python.org/"><img src="https://img.shields.io/badge/Python-3.10+-green.svg?style=for-the-badge&logo=python&logoColor=white" alt="Python 3.8+"></a>
<a href="https://github.com/Panniantong/agent-reach/stargazers"><img src="https://img.shields.io/github/stars/Panniantong/agent-reach?style=for-the-badge" alt="GitHub Stars"></a>
</p>
<p align="center">
<a href="#30-秒上手">快速开始</a> · <a href="docs/README_en.md">English</a> · <a href="#支持的平台">支持平台</a> · <a href="#设计理念">设计理念</a>
</p>
---
## 为什么需要 Agent Reach
AI Agent 已经能帮你写代码、改文档、管项目——但你让它去网上找点东西,它就抓瞎了:
- 📺 "帮我看看这个 YouTube 教程讲了什么" → **看不了**,拿不到字幕
- 🐦 "帮我搜一下推特上大家怎么评价这个产品" → **搜不了**Twitter API 要付费
- 📖 "去 Reddit 上看看有没有人遇到过同样的 bug" → **403 被封**,服务器 IP 被拒
- 📕 "帮我看看小红书上这个品的口碑" → **打不开**,必须登录才能看
- 📺 "B站上有个技术视频帮我总结一下" → **连不上**,海外/服务器 IP 被屏蔽
- 🔍 "帮我在网上搜一下最新的 LLM 框架对比" → **没有好用的搜索**,要么付费要么质量差
- 🌐 "帮我看看这个网页写了啥" → **抓回来一堆 HTML 标签**,根本没法读
- 📦 "这个 GitHub 仓库是干嘛的Issue 里说了什么?" → 能用,但认证配置很麻烦
- 📡 "帮我订阅这几个 RSS 源,有更新告诉我" → 要自己装库写代码
**这些不难实现,但是需要自己折腾配置**
每个平台都有自己的门槛——要付费的 API、要绕过的封锁、要登录的账号、要清洗的数据。你要一个一个去踩坑、装工具、调配置光是让 Agent 能读个推特就得折腾半天。
**Agent Reach 把这件事变成一句话:**
```
帮我安装 Agent Reachhttps://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/install.md
```
复制给你的 Agent几分钟后它就能读推特、搜 Reddit、看 YouTube、刷小红书了。
### ✅ 在你用之前,你可能想知道
| | |
|---|---|
| 💰 **完全免费** | 所有工具开源、所有 API 免费。唯一可能花钱的是服务器代理($1/月),本地电脑不需要 |
| 🔒 **隐私安全** | Cookie 只存在你本地,不上传不外传。代码完全开源,随时可审查 |
| 🔄 **持续更新** | 底层工具yt-dlp、birdx、Jina Reader 等)定期追踪更新到最新版,你不用自己盯 |
| 🤖 **兼容所有 Agent** | Claude Code、OpenClaw、Cursor、Windsurf……任何能跑命令行的 Agent 都能用 |
| 🩺 **自带诊断** | `agent-reach doctor` 一条命令告诉你哪个通、哪个不通、怎么修 |
---
## 支持的平台
| 平台 | 阅读 | 搜索 | 发布/互动 | 你需要做什么 |
|------|:----:|:----:|:---------:|------------|
| 🌐 **网页** | ✅ | — | — | 无,装好即用 |
| 🐦 **Twitter/X** | ✅ | 🍪 | 🍪 发推 | 单条推文直接读。搜索/发推:把 Twitter Cookie 发给 Agent |
| 📺 **YouTube** | ✅ | ✅ | — | 无,装好即用 |
| 📦 **GitHub** | ✅ | ✅ | 🔑 | 公开仓库直接用。提 Issue/PR告诉 Agent「登录 GitHub」|
| 📡 **RSS** | ✅ | — | — | 无,装好即用 |
| 📺 **B站** | ✅ | ✅ | — | 本地直接用。服务器:把代理地址发给 Agent |
| 🔍 **全网搜索** | — | ✅ | — | 无,安装时自动配好 |
| 📖 **Reddit** | 🌐 | ✅ | — | 搜索免费直接用。读帖子:把代理地址发给 Agent |
| 📕 **小红书** | 🔧 | 🔧 | 🔧 发帖·评论·点赞 | 告诉 Agent「配置小红书」按提示扫码登录 |
> **图标说明:** ✅ 装好即用 · 🍪 需提供 Cookie · 🌐 需代理 · 🔑 需登录 · 🔧 需配置 MCP 服务 · — 不支持
### 所有配置都不需要你跑命令,把需要的东西发给 Agent 就行:
| 解锁什么 | 你跟 Agent 说 | 花多久 | 花多少钱 |
|---------|-------------|:------:|:-------:|
| Twitter 搜索/发推 | "帮我配 Twitter Cookie",从浏览器复制 Cookie 发给它 | 2 分钟 | 免费 |
| GitHub 完整功能 | "帮我登录 GitHub" | 1 分钟 | 免费 |
| Reddit 读帖子 | "帮我配代理",把代理地址发给它 | 1 分钟 | ~$1/月 |
| B站服务器 | 同上 | 1 分钟 | ~$1/月 |
| 小红书 | "帮我配置小红书",扫码登录 | 3 分钟 | 免费 |
> 🔒 Cookie 只存在你本地,不上传不外传。代码完全开源,随时可审查。
> 💻 本地电脑不需要代理。代理只有部署在服务器上才需要。
---
## 快速上手
复制给你的 AI AgentClaude Code、OpenClaw、Cursor 等):
```
帮我安装 Agent Reachhttps://raw.githubusercontent.com/Panniantong/agent-reach/main/docs/install.md
```
Agent 自动安装、检测环境、告诉你哪些功能已经可以用。
<details>
<summary>手动安装</summary>
```bash
pip install https://github.com/Panniantong/agent-reach/archive/main.zip
agent-reach install --env=auto
```
</details>
---
## 装好就能用
不需要任何配置,告诉 Agent 就行:
- "帮我看看这个链接" → 任意网页
- "这个 GitHub 仓库是做什么的" → GitHub 仓库、Issue、代码
- "这个视频讲了什么" → YouTube / B站字幕提取
- "帮我看看这条推文" → Twitter 推文
- "订阅这个 RSS" → RSS / Atom 源
- "搜一下 GitHub 上有什么 LLM 框架" → GitHub 搜索
**不需要记命令。** Agent 自己知道该调什么。
---
## 状态一目了然
```
$ 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 文件,实现统一接口。**后端工具随时可以换**——哪天出了更好的工具,改一个文件就行,其他不用动。
```
channels/
├── 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 → 渠道注册
```
### 当前选型
| 场景 | 选型 | 为什么选它 |
|------|------|-----------|
| 读网页 | [Jina Reader](https://github.com/jina-ai/reader) | 9.8K Star免费不需要 API Key |
| 读推特 | [birdx](https://github.com/runesleo/birdx) | Cookie 登录,免费。官方 API 按量付费(读一条 $0.005 |
| 视频字幕 + 搜索 | [yt-dlp](https://github.com/yt-dlp/yt-dlp) | 148K StarYouTube + B站 + 1800 站通吃 |
| 搜全网 | [Exa](https://exa.ai) via [mcporter](https://github.com/nicepkg/mcporter) | AI 语义搜索MCP 接入免 Key |
| GitHub | [gh CLI](https://cli.github.com) | 官方工具,认证后完整 API 能力 |
| 读 RSS | [feedparser](https://github.com/kurtmckee/feedparser) | Python 生态标准选择2.3K Star |
| 小红书 | [xiaohongshu-mcp](https://github.com/user/xiaohongshu-mcp) | 内部 API不受反爬限制 |
> 📌 这些都是「当前选型」。不满意?换掉对应文件就行。这正是脚手架的意义。
---
## 贡献
这个项目是纯 vibe coding 出来的 🎸 可能会有一些不完美的地方,如果遇到问题请多多包涵。有 bug 尽管提 [Issue](https://github.com/Panniantong/agent-reach/issues),我都会尽快修复。
**想要新渠道?** 直接提 Issue 告诉我们,或者自己提 PR。
**想在本地加?** 让你的 Agent clone 下来改就行,每个渠道就是一个独立文件,加起来很简单。
[PR](https://github.com/Panniantong/agent-reach/pulls) 也随时欢迎!
## 致谢
[Jina Reader](https://github.com/jina-ai/reader) · [yt-dlp](https://github.com/yt-dlp/yt-dlp) · [birdx](https://github.com/runesleo/birdx) · [Exa](https://exa.ai) · [feedparser](https://github.com/kurtmckee/feedparser)
## License
[MIT](LICENSE)