From def2ce932ec8bd28164838331350ac2adb26ecb2 Mon Sep 17 00:00:00 2001 From: Pnant <73925474+Panniantong@users.noreply.github.com> Date: Thu, 2 Apr 2026 18:27:32 +0800 Subject: [PATCH] docs: update all remaining files for v1.4.0 upstream migrations Co-Authored-By: Claude Opus 4.6 (1M context) --- README.md | 2 +- agent_reach/core.py | 2 +- agent_reach/guides/setup-reddit.md | 35 +++++--- agent_reach/guides/setup-twitter.md | 39 ++++----- agent_reach/guides/setup-xiaohongshu.md | 101 +++++++++++------------- agent_reach/integrations/mcp_server.py | 2 +- docs/README_en.md | 8 +- docs/README_ja.md | 42 +++++----- docs/install.md | 22 ++++-- docs/troubleshooting.md | 20 ++--- 10 files changed, 141 insertions(+), 132 deletions(-) diff --git a/README.md b/README.md index 0e273c2..3c6ad62 100644 --- a/README.md +++ b/README.md @@ -73,7 +73,7 @@ AI Agent 已经能帮你写代码、改文档、管项目——但你让它去 | 📦 **GitHub** | 读公开仓库 + 搜索 | 私有仓库、提 Issue/PR、Fork | 告诉 Agent「帮我登录 GitHub」 | | 🐦 **Twitter/X** | 读单条推文 | 搜索推文、浏览时间线、发推 | 告诉 Agent「帮我配 Twitter」 | | 📺 **B站** | 本地:字幕提取 + 搜索 | 服务器也能用 | 告诉 Agent「帮我配代理」 | -| 📖 **Reddit** | 搜索 + 读帖子和评论(通过 Exa) | — | 无需配置(自动通过 Exa) | +| 📖 **Reddit** | 搜索 + 读帖子和评论(通过 rdt-cli) | — | 无需配置(pipx install rdt-cli) | | 📕 **小红书** | — | 阅读、搜索、发帖、评论、点赞 | 告诉 Agent「帮我配小红书」 | | 🎵 **抖音** | — | 视频解析、无水印下载链接获取 | 告诉 Agent「帮我配抖音」 | | 💼 **LinkedIn** | Jina Reader 读公开页面 | Profile 详情、公司页面、职位搜索 | 告诉 Agent「帮我配 LinkedIn」 | diff --git a/agent_reach/core.py b/agent_reach/core.py index fd8caae..075d9de 100644 --- a/agent_reach/core.py +++ b/agent_reach/core.py @@ -3,7 +3,7 @@ AgentReach — installer, doctor, and configuration tool. Agent Reach helps AI agents install and configure upstream platform tools -(bird CLI, yt-dlp, mcporter, gh CLI, etc.). After installation, agents +(twitter-cli, yt-dlp, mcporter, gh CLI, etc.). After installation, agents call the upstream tools directly — no wrapper layer needed. Usage: diff --git a/agent_reach/guides/setup-reddit.md b/agent_reach/guides/setup-reddit.md index 022e5d5..45e32a6 100644 --- a/agent_reach/guides/setup-reddit.md +++ b/agent_reach/guides/setup-reddit.md @@ -4,42 +4,51 @@ Reddit 封锁了几乎所有非浏览器的直接访问(包括数据中心和 ISP 代理 IP),JSON API 返回 403。 -Agent Reach 通过 **Exa** 实现 Reddit 的搜索和阅读功能: -- **搜索**:`web_search_exa` + `includeDomains: ["reddit.com"]` -- **阅读完整帖子+评论**:`crawling_exa` 读取 Reddit URL 的缓存内容 +Agent Reach 通过 **rdt-cli** 实现 Reddit 的搜索和阅读功能: +- **搜索**:`rdt search "关键词"` +- **阅读完整帖子+评论**:`rdt read POST_ID` -免费,无需代理,无需 API Key。 +免费,无需代理,无需 API Key,无需登录。 ## Agent 可自动完成的步骤 -1. 检查 Exa 是否可用: +1. 检查 rdt-cli 是否可用: ```bash -agent-reach doctor | grep -E "Reddit|Exa" +which rdt && echo "installed" || echo "not installed" ``` -2. 如果 Exa 未安装,自动安装: +2. 如果未安装,自动安装: ```bash -npm install -g mcporter -mcporter config add exa https://mcp.exa.ai/mcp +pipx install rdt-cli ``` 或一键安装: ```bash -agent-reach install --env=auto +agent-reach install --env=auto --channels=reddit ``` ## 使用示例 搜索 Reddit 内容: ```bash -mcporter call 'exa.web_search_exa(query: "python best practices", numResults: 5, includeDomains: ["reddit.com"])' +rdt search "python best practices" -n 5 ``` 阅读完整帖子和评论: ```bash -mcporter call 'exa.crawling_exa(urls: ["https://www.reddit.com/r/python/comments/xxx/"], maxCharacters: 10000)' +rdt read POST_ID ``` ## 需要用户手动做的步骤 -无。Exa 通过 `agent-reach install --env=auto` 自动配置。 +无。rdt-cli 通过 `agent-reach install --env=auto` 自动安装。 + +## Fallback:Exa 搜索 + +如果你已经配置了 Exa(通过 mcporter),也可以通过 Exa 搜索 Reddit 内容: + +```bash +mcporter call 'exa.web_search_exa(query: "python best practices", numResults: 5, includeDomains: ["reddit.com"])' +``` + +rdt-cli 是当前推荐方案,无需额外配置即可使用。 diff --git a/agent_reach/guides/setup-twitter.md b/agent_reach/guides/setup-twitter.md index 8023765..880656d 100644 --- a/agent_reach/guides/setup-twitter.md +++ b/agent_reach/guides/setup-twitter.md @@ -1,35 +1,34 @@ -# Twitter 高级功能配置指南(bird CLI) +# Twitter 高级功能配置指南(twitter-cli) Twitter 基础阅读通过 Jina Reader 免费可用,无需配置。 -高级功能需要 bird CLI(@steipete/bird): +高级功能需要 twitter-cli(@public-clis/twitter-cli): -- 搜索推文(`bird search`) -- 读取完整推文和对话链(`bird read`、`bird thread`) -- 用户时间线(`bird user-tweets`) +- 搜索推文(`twitter search`) +- 读取完整推文和对话链(`twitter tweet`、`twitter thread`) +- 用户时间线(`twitter timeline`) +- 长文阅读(`twitter article`) -bird 是免费开源工具(npm 包 @steipete/bird),但需要你的 Twitter 账号 cookie。 +twitter-cli 是免费开源工具(pipx 安装),但需要你的 Twitter 账号 cookie。 ## 快速配置 -1. 检查 bird 是否安装: +1. 检查 twitter-cli 是否安装: ```bash -which bird && echo "installed" || echo "not installed" +which twitter && echo "installed" || echo "not installed" ``` -2. 安装 bird: +2. 安装 twitter-cli: ```bash -npm install -g @steipete/bird +pipx install twitter-cli ``` -> 备选包:`npm install -g @connormartin/bird` - 3. 测试是否配置好: ```bash -AUTH_TOKEN="xxx" CT0="yyy" bird search "test" -n 1 +twitter search "test" -n 1 ``` ## 获取 Cookie(Cookie-Editor 方式,推荐) @@ -49,7 +48,7 @@ agent-reach configure twitter-cookies "粘贴的 cookie JSON" 如果你已经知道 `auth_token` 和 `ct0`: -1. 安装 bird(如果没装):`npm install -g @steipete/bird` +1. 安装 twitter-cli(如果没装):`pipx install twitter-cli` 2. 设置环境变量: @@ -61,21 +60,25 @@ export CT0="你的ct0" 3. 测试: ```bash -bird search "test" -n 1 +twitter search "test" -n 1 ``` ## 代理配置 -> bird CLI 支持通过环境变量设置代理: +> twitter-cli 支持通过环境变量设置代理: ```bash export HTTP_PROXY="http://user:pass@host:port" export HTTPS_PROXY="http://user:pass@host:port" -bird search "test" -n 1 +twitter search "test" -n 1 ``` 也可以使用全局代理工具: ```bash -proxychains bird search "test" -n 1 +proxychains twitter search "test" -n 1 ``` + +## Fallback:bird CLI + +如果你已经安装了 [bird CLI](https://www.npmjs.com/package/@steipete/bird)(`npm install -g @steipete/bird`),它也能正常工作。Agent Reach 会自动检测并使用已安装的 bird。两者功能类似,twitter-cli 是当前推荐方案。 diff --git a/agent_reach/guides/setup-xiaohongshu.md b/agent_reach/guides/setup-xiaohongshu.md index 2fe4ce7..18eb8f1 100644 --- a/agent_reach/guides/setup-xiaohongshu.md +++ b/agent_reach/guides/setup-xiaohongshu.md @@ -1,51 +1,36 @@ # 小红书配置指南 ## 功能说明 -读取和搜索小红书笔记。通过 [xiaohongshu-mcp](https://github.com/xpzouying/xiaohongshu-mcp) 实现(⭐9K+,Go 语言,内置 Chrome 浏览器)。 +读取和搜索小红书笔记。通过 [xhs-cli](https://github.com/jackwener/xiaohongshu-cli)(⭐1.5K,pipx 一行安装)实现。 ## 前置条件 -- Docker(用来运行 xiaohongshu-mcp 服务) -- mcporter CLI(MCP 协议桥接工具) +- Python 3.10+(pipx 安装) +- 浏览器已登录 xiaohongshu.com(用于导出 Cookie) ## Agent 可自动完成的步骤 -### 1. 安装 mcporter +### 1. 安装 xhs-cli ```bash -npm install -g mcporter +pipx install xiaohongshu-cli ``` -### 2. 启动 xiaohongshu-mcp 服务 +### 2. 登录(从浏览器提取 Cookie) ```bash -docker run -d \ - --name xiaohongshu-mcp \ - -p 18060:18060 \ - xpzouying/xiaohongshu-mcp +xhs login ``` -> 如需代理(服务器部署推荐): -> ```bash -> docker run -d \ -> --name xiaohongshu-mcp \ -> -p 18060:18060 \ -> -e XHS_PROXY=http://user:pass@ip:port \ -> xpzouying/xiaohongshu-mcp -> ``` +> 这会自动从浏览器提取 Cookie。如果自动提取失败,可以手动导入(见下方)。 -### 3. 注册到 mcporter -```bash -mcporter config add xiaohongshu http://localhost:18060/mcp -``` - -### 4. 验证 +### 3. 验证 ```bash agent-reach doctor ``` -应该看到小红书显示为 ✅ 或 ⚠️(MCP 已连接但未登录)。 +应该看到小红书显示为 ✅。 ## 需要用户手动做的步骤 -如果 doctor 显示"MCP 已连接但未登录",需要导入 cookies: +如果 `xhs login` 自动提取失败,需要手动导入 cookies: > **推荐方式:Cookie-Editor 浏览器导出(最可靠)** > @@ -54,43 +39,47 @@ agent-reach doctor > 3. 点击 Cookie-Editor 图标 → Export → Header String > 4. 把导出的字符串发给 Agent,运行:`agent-reach configure xhs-cookies "导出的cookie字符串"` > -> **注意**:`http://localhost:18060` 根路径可能返回 404,这是正常的——MCP 服务在 `/mcp` 路径。 -> 不要依赖 QR 扫码登录,Docker 容器内的 QR 登录页面不一定可用,且 cookies 不会自动共享到 MCP 服务。 +> **注意**:不要依赖 QR 扫码登录,Cookie-Editor 导出方式最简单可靠。 + +## 使用示例 + +搜索笔记: +```bash +xhs search "关键词" +``` + +阅读笔记详情: +```bash +xhs read NOTE_ID +``` + +查看评论: +```bash +xhs comments NOTE_ID +``` ## 常见问题 -**Q: Docker 容器重启后 cookie 丢了?** -A: 挂载数据卷持久化: +**Q: Cookie 过期了?** +A: 重新运行 `xhs login` 或通过 Cookie-Editor 重新导出。 + +**Q: 小红书提示 IP 风险?** +A: 推荐使用住宅代理:`export HTTP_PROXY="http://user:pass@ip:port"`。 + +**Q: xhs-cli 不支持我的系统?** +A: 确保 Python 3.10+ 和 pipx 已安装。运行 `pipx install xiaohongshu-cli` 即可。 + +## 备选方案:Docker MCP + +如果你已经在使用 [xiaohongshu-mcp](https://github.com/xpzouying/xiaohongshu-mcp) Docker 方案,它也能正常工作: + ```bash docker run -d \ --name xiaohongshu-mcp \ -p 18060:18060 \ - -v xhs-data:/app/data \ xpzouying/xiaohongshu-mcp + +mcporter config add xiaohongshu http://localhost:18060/mcp ``` -**Q: 服务器上小红书提示 IP 风险?** -A: 加代理参数 `-e XHS_PROXY=http://user:pass@ip:port`,推荐住宅代理。 - -**Q: Docker 镜像不支持 ARM64 / Apple Silicon?** -A: 上游镜像暂无 ARM64 版本,两种解决办法: - -方法一:使用 Rosetta 模拟运行(推荐,最简单) -```bash -docker run -d \ - --name xiaohongshu-mcp \ - -p 18060:18060 \ - --platform linux/amd64 \ - xpzouying/xiaohongshu-mcp -``` - -方法二:从源码编译原生 ARM64 版本 -```bash -git clone https://github.com/xpzouying/xiaohongshu-mcp -cd xiaohongshu-mcp -docker build -t xiaohongshu-mcp . -docker run -d --name xiaohongshu-mcp -p 18060:18060 xiaohongshu-mcp -``` - -**Q: 我不想用 Docker?** -A: 可以从源码编译:https://github.com/xpzouying/xiaohongshu-mcp +xhs-cli 是当前推荐方案,不需要 Docker,安装更简单。 diff --git a/agent_reach/integrations/mcp_server.py b/agent_reach/integrations/mcp_server.py index 636e4ee..bace664 100644 --- a/agent_reach/integrations/mcp_server.py +++ b/agent_reach/integrations/mcp_server.py @@ -5,7 +5,7 @@ Agent Reach MCP Server — expose doctor/status as MCP tool. Run: python -m agent_reach.integrations.mcp_server Agent Reach is an installer + doctor tool. For actual reading/searching, -agents should call upstream tools directly (bird, yt-dlp, mcporter, etc.). +agents should call upstream tools directly (twitter-cli, yt-dlp, mcporter, etc.). """ import asyncio diff --git a/docs/README_en.md b/docs/README_en.md index 38f7017..0fc5c9b 100644 --- a/docs/README_en.md +++ b/docs/README_en.md @@ -76,7 +76,7 @@ Update Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/ma | 📺 **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 / Proxy | Video info + subtitles + search. Local works directly, servers need a proxy ([yt-dlp](https://github.com/yt-dlp/yt-dlp)) | | 📡 **RSS** | Read | Zero config | Any RSS/Atom feed ([feedparser](https://github.com/kurtmckee/feedparser) ⭐2.3K) | -| 📖 **Reddit** | Search · Read | Zero config | Search and read via Exa (free, no proxy needed) | +| 📖 **Reddit** | Search · Read | Zero config | Search and read via [rdt-cli](https://github.com/public-clis/rdt-cli) (free, no proxy needed) | > **Setup levels:** Zero config = install and go · Auto-configured = handled during install · mcporter = needs MCP service · Cookie = export from browser · Proxy = $1/month @@ -147,7 +147,7 @@ Tell your Agent "help me configure Twitter cookies" — it'll guide you through Bilibili blocks server IPs. Get a proxy ([Webshare](https://webshare.io) recommended, $1/month) and send the address to your Agent. -> Reddit now works free via Exa without any proxy. Local computers don't need a proxy for Bilibili either. +> Reddit now works free via rdt-cli without any proxy. Local computers don't need a proxy for Bilibili either. --- @@ -171,7 +171,7 @@ $ agent-reach doctor ⬜ Web semantic search — sign up at exa.ai for free key 🔧 Configurable: - ✅ Reddit posts and comments — search and read via Exa (free, no proxy) + ✅ Reddit posts and comments — search and read via rdt-cli (free, no proxy) ⬜ XiaoHongShu notes — needs cookie. Export from browser Status: 6/9 channels available @@ -200,7 +200,7 @@ channels/ ├── youtube.py → yt-dlp ← swap to YouTube API, Whisper… ├── github.py → gh CLI ← swap to REST API, PyGithub… ├── bilibili.py → yt-dlp ← swap to bilibili-api… -├── reddit.py → Exa ← search + read, no proxy needed +├── reddit.py → rdt-cli ← search + read, no proxy needed ├── xiaohongshu.py → mcporter MCP ← swap to other XHS tools… ├── douyin.py → mcporter MCP ← swap to other Douyin tools… ├── linkedin.py → linkedin-mcp ← swap to LinkedIn API… diff --git a/docs/README_ja.md b/docs/README_ja.md index bed5159..d0658af 100644 --- a/docs/README_ja.md +++ b/docs/README_ja.md @@ -51,7 +51,7 @@ Update Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/ma |---|---| | 💰 **完全無料** | すべてのツールはオープンソース、すべてのAPIは無料。唯一のコストはサーバープロキシ(月額$1)の可能性のみ — ローカルPCでは不要 | | 🔒 **プライバシー安全** | Cookieはローカルに保存。アップロードされることはありません。完全オープンソース — いつでも監査可能 | -| 🔄 **常に最新** | 上流ツール(yt-dlp、bird、Jina Reader等)を定期的に追跡・更新 | +| 🔄 **常に最新** | 上流ツール(yt-dlp、twitter-cli、rdt-cli、Jina Reader等)を定期的に追跡・更新 | | 🤖 **あらゆるエージェントに対応** | Claude Code、OpenClaw、Cursor、Windsurf… コマンドを実行できるすべてのエージェント | | 🩺 **組み込み診断** | `agent-reach doctor` — 1コマンドで何が動き、何が動かないか、どう修正するかを表示 | @@ -62,11 +62,11 @@ Update Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/ma | プラットフォーム | 機能 | セットアップ | 備考 | |-----------------|------|:----------:|------| | 🌐 **Web** | 閲覧 | 設定不要 | 任意のURL → クリーンなMarkdown([Jina Reader](https://github.com/jina-ai/reader) ⭐9.8K) | -| 🐦 **Twitter/X** | 閲覧・検索 | 設定不要 / Cookie | 単一ツイートはすぐに閲覧可能。Cookieで検索、タイムライン、投稿が解放([bird](https://www.npmjs.com/package/@steipete/bird)) | -| 📕 **小紅書** | 閲覧・検索・**投稿・コメント・いいね** | mcporter | [xiaohongshu-mcp](https://github.com/user/xiaohongshu-mcp) 内部APIで、インストールしてすぐ使える | +| 🐦 **Twitter/X** | 閲覧・検索 | 設定不要 / Cookie | 単一ツイートはすぐに閲覧可能。Cookieで検索、タイムライン、投稿が解放([twitter-cli](https://github.com/public-clis/twitter-cli)) | +| 📕 **小紅書** | 閲覧・検索・**投稿・コメント・いいね** | Cookie | `pipx install xiaohongshu-cli` + `xhs login`([xhs-cli](https://github.com/jackwener/xiaohongshu-cli)) | | 🎵 **抖音** | 動画解析・ウォーターマークなしダウンロード | mcporter | [douyin-mcp-server](https://github.com/yzfly/douyin-mcp-server)、ログイン不要 | | 💼 **LinkedIn** | Jina Reader(公開ページ) | プロフィール、企業、求人検索 | エージェントに「LinkedInの設定を手伝って」と伝えてください | -| 💬 **WeChat記事** | 検索 + 閲覧 | 設定不要 | WeChat公式アカウント記事の検索+閲覧(完全Markdown)([wechat-article-for-ai](https://github.com/Panniantong/wechat-article-for-ai) + [miku_ai](https://github.com/GobinFan/Miku_Spider)) | +| 💬 **WeChat記事** | 検索 + 閲覧 | 設定不要 | WeChat公式アカウント記事の検索+閲覧(完全Markdown)([Exa](https://exa.ai) + [Camoufox](https://github.com/daijro/camoufox)(オプション)) | | 📰 **Weibo** | トレンド・検索・フィード・コメント | 設定不要 | ホット検索、コンテンツ/ユーザー/トピック検索、フィード、コメント([mcp-server-weibo](https://github.com/Panniantong/mcp-server-weibo)) | | 💻 **V2EX** | 人気トピック・ノードトピック・トピック詳細+返信・ユーザープロフィール | 設定不要 | 公開JSON API、認証不要。技術コミュニティのコンテンツに最適 | | 📈 **雪球(Xueqiu)** | 株価・検索・人気投稿・人気銘柄 | 設定不要 | 公開APIで自動セッションCookie、ログイン不要 | @@ -76,7 +76,7 @@ Update Agent Reach: https://raw.githubusercontent.com/Panniantong/agent-reach/ma | 📺 **YouTube** | 閲覧・**検索** | 設定不要 | 字幕 + 1800以上の動画サイトでの検索([yt-dlp](https://github.com/yt-dlp/yt-dlp) ⭐148K) | | 📺 **Bilibili** | 閲覧・**検索** | 設定不要 / プロキシ | 動画情報 + 字幕 + 検索。ローカルはそのまま動作、サーバーはプロキシが必要([yt-dlp](https://github.com/yt-dlp/yt-dlp)) | | 📡 **RSS** | 閲覧 | 設定不要 | 任意のRSS/Atomフィード([feedparser](https://github.com/kurtmckee/feedparser) ⭐2.3K) | -| 📖 **Reddit** | 検索・閲覧 | 無料 / プロキシ | 検索はExa(無料)経由。投稿の閲覧はサーバーでプロキシが必要 | +| 📖 **Reddit** | 検索・閲覧 | 設定不要 | [rdt-cli](https://github.com/public-clis/rdt-cli)で検索+閲覧(無料、プロキシ不要) | > **セットアップレベル:** 設定不要 = インストールしてすぐ使える · 自動設定 = インストール時に処理 · mcporter = MCPサービスが必要 · Cookie = ブラウザからエクスポート · プロキシ = 月額$1 @@ -127,7 +127,7 @@ Skillインストール後、エージェントは`agent-reach` CLIが利用可 - 「このリンクを読んで」→ `curl https://r.jina.ai/URL` で任意のWebページ - 「このGitHubリポジトリは何?」→ `gh repo view owner/repo` - 「この動画の内容は?」→ `yt-dlp --dump-json URL` で字幕取得 -- 「このツイートを読んで」→ `bird read URL` +- 「このツイートを読んで」→ `twitter tweet URL` - 「このRSSを購読して」→ `feedparser` でフィード解析 - 「GitHubでLLMフレームワークを検索して」→ `gh search repos "LLM framework"` @@ -147,7 +147,7 @@ Skillインストール後、エージェントは`agent-reach` CLIが利用可 RedditとBilibiliはサーバーIPをブロックします。プロキシを取得し([Webshare](https://webshare.io) 推奨、月額$1)、アドレスをエージェントに伝えてください。 -> ローカルPCではプロキシは不要です。Reddit検索はプロキシなしでもExaで無料で動作します。 +> ローカルPCではプロキシは不要です。Reddit検索はプロキシなしでもrdt-cliで無料で動作します。 --- @@ -171,7 +171,7 @@ $ agent-reach doctor ⬜ Webセマンティック検索 — exa.aiで無料キーを取得 🔧 設定可能: - ⬜ Reddit投稿とコメント — 検索はExa(無料)経由。閲覧にはプロキシが必要 + ✅ Reddit投稿とコメント — rdt-cliで検索+閲覧(無料、プロキシ不要) ⬜ 小紅書ノート — Cookieが必要。ブラウザからエクスポート ステータス: 9チャンネル中6チャンネルが利用可能 @@ -187,7 +187,7 @@ $ agent-reach doctor Agent Reach はシンプルなことを1つだけ行います:**ツールの選定と設定の判断をあなたの代わりに行います。** -インストール後、エージェントは上流ツール(bird CLI、yt-dlp、mcporter、gh CLI等)を直接呼び出します — 間にラッパーレイヤーはありません。 +インストール後、エージェントは上流ツール(twitter-cli、rdt-cli、xhs-cli、yt-dlp、mcporter、gh CLI等)を直接呼び出します — 間にラッパーレイヤーはありません。 ### 🔌 すべてのチャンネルはプラグ可能 @@ -196,12 +196,12 @@ Agent Reach はシンプルなことを1つだけ行います:**ツールの ``` channels/ ├── web.py → Jina Reader ← Firecrawl、Crawl4AIなどに差し替え可能… -├── twitter.py → bird CLI ← Nitter、公式APIなどに差し替え可能… +├── twitter.py → twitter-cli ← 公式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ツールに差し替え可能… +├── reddit.py → rdt-cli ← PRAW、Pushshiftなどに差し替え可能… +├── xiaohongshu.py → xhs-cli ← 他のXHSツールに差し替え可能… ├── douyin.py → mcporter MCP ← 他の抖音ツールに差し替え可能… ├── linkedin.py → linkedin-mcp ← LinkedIn APIに差し替え可能… ├── rss.py → feedparser ← atomaなどに差し替え可能… @@ -216,15 +216,15 @@ channels/ | シナリオ | ツール | 理由 | |----------|--------|------| | Webページ閲覧 | [Jina Reader](https://github.com/jina-ai/reader) | ⭐9.8K、無料、APIキー不要 | -| ツイート閲覧 | [bird](https://www.npmjs.com/package/@steipete/bird) | Cookie認証、無料。公式APIは従量課金(投稿閲覧1件$0.005) | +| ツイート閲覧 | [twitter-cli](https://github.com/public-clis/twitter-cli) | 2.1K Star、Cookie認証、検索/閲覧/タイムライン/長文 | | 動画字幕 + 検索 | [yt-dlp](https://github.com/yt-dlp/yt-dlp) | ⭐148K、YouTube + Bilibili + 1800サイト | | Web検索 | [Exa](https://exa.ai)([mcporter](https://github.com/nicepkg/mcporter)経由) | AIセマンティック検索、MCP統合、APIキー不要 | | GitHub | [gh CLI](https://cli.github.com) | 公式ツール、認証後フルAPI | | RSS閲覧 | [feedparser](https://github.com/kurtmckee/feedparser) | Pythonエコシステムの標準、⭐2.3K | -| 小紅書 | [xiaohongshu-mcp](https://github.com/user/xiaohongshu-mcp) | 内部API、アンチボット回避 | +| 小紅書 | [xhs-cli](https://github.com/jackwener/xiaohongshu-cli) | 1.5K Star、pipxインストール、検索/閲覧/コメント/投稿 | | 抖音 | [douyin-mcp-server](https://github.com/yzfly/douyin-mcp-server) | MCPサーバー、ログイン不要、動画解析 + ウォーターマークなしダウンロード | | LinkedIn | [linkedin-scraper-mcp](https://github.com/stickerdaniel/linkedin-mcp-server) | ⭐900+、MCPサーバー、ブラウザ自動化 | -| WeChat記事 | [wechat-article-for-ai](https://github.com/Panniantong/wechat-article-for-ai) + [miku_ai](https://github.com/GobinFan/Miku_Spider) | ステルスブラウザで記事全文閲覧 + Sogou検索 | +| WeChat記事 | [Exa](https://exa.ai)(検索+閲覧)+ [Camoufox](https://github.com/daijro/camoufox)(オプション) | ゼロ設定で検索+全文閲覧、Camoufoxでオプション強化 | | Weibo | `mcporter` | `mcporter call 'weibo.get_trendings(limit: 10)'` | | 小宇宙Podcast | `transcribe.sh` | `bash ~/.agent-reach/tools/xiaoyuzhou/transcribe.sh ` | @@ -249,7 +249,7 @@ channels/
Twitter/X APIに課金せずにAIエージェントで検索するには? -Agent Reach は [bird CLI](https://www.npmjs.com/package/@steipete/bird) をCookie認証で使用します — 完全無料、Twitter APIのサブスクリプションは不要です。Agent Reach インストール後、Cookie-Editor Chrome拡張機能でTwitterのCookieをエクスポートし、`agent-reach configure twitter-cookies "your_cookies"` を実行すれば、`bird search "query" -n 10` でエージェントが検索できるようになります。 +Agent Reach は [twitter-cli](https://github.com/public-clis/twitter-cli) をCookie認証で使用します — 完全無料、Twitter APIのサブスクリプションは不要です。`pipx install twitter-cli` でインストール後、Cookie-Editor Chrome拡張機能でTwitterのCookieをエクスポートし、`agent-reach configure twitter-cookies "your_cookies"` を実行すれば、`twitter search "query" -n 10` でエージェントが検索できるようになります。
@@ -261,7 +261,7 @@ Agent Reach は [bird CLI](https://www.npmjs.com/package/@steipete/bird) をCook
サーバー/データセンターIPからRedditが403を返す? -Redditはデータセンター IPをブロックします。レジデンシャルプロキシを設定してください:`agent-reach configure proxy http://user:pass@ip:port`。推奨:Webshare(月額約$1)。ローカルマシンでは通常この問題は発生しません。 +Agent Reach は [rdt-cli](https://github.com/public-clis/rdt-cli) でRedditにアクセスします — ログイン不要、プロキシ不要、APIキー不要。`pipx install rdt-cli` でインストール後、`rdt search "query"` で検索、`rdt read POST_ID` で投稿+コメントの閲覧ができます。
@@ -273,19 +273,19 @@ Redditはデータセンター IPをブロックします。レジデンシャ
Agent Reach は無料?APIのコストは? -100%無料でオープンソース。すべてのバックエンド(bird CLI、yt-dlp、Jina Reader、Exa)は有料APIキーが不要な無料ツールです。唯一のオプションコストは、サーバーからReddit/Bilibiliにアクセスする場合のレジデンシャルプロキシ(月額約$1)です。 +100%無料でオープンソース。すべてのバックエンド(twitter-cli、rdt-cli、xhs-cli、yt-dlp、Jina Reader、Exa)は有料APIキーが不要な無料ツールです。唯一のオプションコストは、サーバーからBilibiliにアクセスする場合のレジデンシャルプロキシ(月額約$1)です。
Twitter APIの無料代替 — Webスクレイピング用 -Agent Reach はbird CLIを使用し、Cookie認証でTwitterにアクセスします — ブラウザセッションと同じです。API料金なし、レート制限のティアなし、開発者アカウント不要。検索、ツイート閲覧、プロフィール閲覧、タイムラインに対応。 +Agent Reach はtwitter-cliを使用し、Cookie認証でTwitterにアクセスします — ブラウザセッションと同じです。API料金なし、レート制限のティアなし、開発者アカウント不要。検索、ツイート閲覧、プロフィール閲覧、タイムラインに対応。
小紅書のコンテンツをプログラムで読むには? -Agent Reach は xiaohongshu-mcp(Dockerで実行)と統合されています。セットアップ後、`mcporter call 'xiaohongshu.get_feed_detail(...)'` でノートを閲覧、`mcporter call 'xiaohongshu.search_feeds(keyword: "query")'` で検索できます。 +`pipx install xiaohongshu-cli` でインストール後、`xhs login`(ブラウザからCookieを自動抽出)。エージェントは `xhs search "query"` でノートを検索、`xhs read NOTE_ID` で詳細を閲覧、`xhs comments NOTE_ID` でコメントを表示できます。Dockerは不要です。
@@ -298,7 +298,7 @@ douyin-mcp-serverをインストールすれば、`mcporter call 'douyin.parse_d ## クレジット -[Jina Reader](https://github.com/jina-ai/reader) · [yt-dlp](https://github.com/yt-dlp/yt-dlp) · [bird](https://www.npmjs.com/package/@steipete/bird) · [Exa](https://exa.ai) · [feedparser](https://github.com/kurtmckee/feedparser) · [douyin-mcp-server](https://github.com/yzfly/douyin-mcp-server) · [linkedin-scraper-mcp](https://github.com/stickerdaniel/linkedin-mcp-server) +[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) · [Jina Reader](https://github.com/jina-ai/reader) · [yt-dlp](https://github.com/yt-dlp/yt-dlp) · [Exa](https://exa.ai) · [feedparser](https://github.com/kurtmckee/feedparser) · [douyin-mcp-server](https://github.com/yzfly/douyin-mcp-server) · [linkedin-scraper-mcp](https://github.com/stickerdaniel/linkedin-mcp-server) ## お問い合わせ diff --git a/docs/install.md b/docs/install.md index ced05fa..612cb89 100644 --- a/docs/install.md +++ b/docs/install.md @@ -156,18 +156,17 @@ agent-reach configure twitter-cookies "PASTED_STRING" agent-reach configure proxy http://user:pass@ip:port ``` -**XiaoHongShu / 小红书 (需要 Docker):** -> "小红书需要一个 MCP 服务。需要你的机器上有 Docker。安装好 Docker 后我来搞定剩下的。" +**XiaoHongShu / 小红书 (xhs-cli):** +> "小红书通过 xhs-cli 访问,pipx 一行安装,不需要 Docker。" ```bash -docker run -d --name xiaohongshu-mcp -p 18060:18060 xpzouying/xiaohongshu-mcp -mcporter config add xiaohongshu http://localhost:18060/mcp +pipx install xiaohongshu-cli +xhs login ``` -> 如果在服务器上,建议加代理避免 IP 风控: -> `docker run -d --name xiaohongshu-mcp -p 18060:18060 -e XHS_PROXY=http://user:pass@ip:port xpzouying/xiaohongshu-mcp` +> `xhs login` 会自动从浏览器提取 Cookie。如果自动提取失败,可以手动导入: > -> **登录方式(优先用 Cookie-Editor,最简单):** +> **手动导入 Cookie(Cookie-Editor 方式):** > 1. 用户在自己的浏览器登录小红书 (xiaohongshu.com) > 2. 用 [Cookie-Editor](https://chromewebstore.google.com/detail/cookie-editor/hlkenndednhfkekhgcdicdfddnkalmdm) 插件导出 Cookie(JSON 或 Header String 格式均可) > 3. 把 Cookie 字符串发给 Agent @@ -181,7 +180,14 @@ mcporter config add xiaohongshu http://localhost:18060/mcp > agent-reach configure xhs-cookies "key1=val1; key2=val2; ..." > ``` > -> **注意:** `http://localhost:18060` 根路径可能返回 404,MCP 服务在 `/mcp` 路径。推荐使用 Cookie-Editor 导出方式,不要依赖 Docker 容器内的 QR 扫码登录。 +> **注意:** 推荐使用 Cookie-Editor 导出方式,不要依赖 QR 扫码登录。 +> +> **备选方案:Docker MCP** +> 如果你已经在使用 [xiaohongshu-mcp](https://github.com/xpzouying/xiaohongshu-mcp) Docker 方案,它也能正常工作: +> ```bash +> docker run -d --name xiaohongshu-mcp -p 18060:18060 xpzouying/xiaohongshu-mcp +> mcporter config add xiaohongshu http://localhost:18060/mcp +> ``` **微博 / Weibo (mcp-server-weibo):** > "微博已默认安装,装好即用。可搜索微博内容、查看热搜、获取用户动态和评论。" diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md index 88c4945..eb70f50 100644 --- a/docs/troubleshooting.md +++ b/docs/troubleshooting.md @@ -16,11 +16,11 @@ agent-reach configure --from-browser chrome --- -## Twitter/X: bird CLI 连接失败 +## Twitter/X: twitter-cli 连接失败 -**症状:** `bird search` 或其他命令返回错误 +**症状:** `twitter search` 或其他命令返回错误 -**原因:** bird CLI 需要 AUTH_TOKEN 和 CT0 环境变量才能访问 Twitter API。如果你的网络环境需要代理才能访问 x.com,需要配置代理。 +**原因:** twitter-cli 需要 AUTH_TOKEN 和 CT0 环境变量才能访问 Twitter API。如果你的网络环境需要代理才能访问 x.com,需要配置代理。 **解决方案:** @@ -29,22 +29,22 @@ agent-reach configure --from-browser chrome ```bash export HTTP_PROXY="http://user:pass@host:port" export HTTPS_PROXY="http://user:pass@host:port" -bird search "test" -n 1 +twitter search "test" -n 1 ``` ### 方案 2:使用全局代理工具 -让代理工具接管所有网络流量,这样 bird 的请求也会走代理: +让代理工具接管所有网络流量,这样 twitter-cli 的请求也会走代理: ```bash # macOS — ClashX / Surge 开启"增强模式" # Linux — proxychains 或 tun2socks -proxychains bird search "test" -n 1 +proxychains twitter search "test" -n 1 ``` -### 方案 3:不用 bird,用 Exa 搜索替代 +### 方案 3:不用 twitter-cli,用 Exa 搜索替代 -bird 不可用时,可以直接用 Exa 搜索 Twitter 内容: +twitter-cli 不可用时,可以直接用 Exa 搜索 Twitter 内容: ```bash mcporter call 'exa.web_search_exa(query: "site:x.com 搜索词", numResults: 5)' @@ -53,7 +53,9 @@ mcporter call 'exa.web_search_exa(query: "site:x.com 搜索词", numResults: 5)' ### 方案 4:检查认证 ```bash -bird check +twitter check ``` > 如果返回 "Missing credentials",需要设置 AUTH_TOKEN 和 CT0 环境变量。 +> +> **Fallback:** 如果你已经安装了 bird CLI(`npm install -g @steipete/bird`),它也能正常工作。Agent Reach 会自动检测已安装的工具。