mcpField
A
agent-reach

agent-reach

github.com/panniantong生产力105.6k21.1k 次安装3 天前更新
代码仓库

关于 agent-reach

agent-reach 是用于跨平台搜索和阅读内容的只读 Skill 与命令行工具。它指导 Agent 在公开网页和已配置的渠道工具间选择,并处理登录、错误及限流,不执行发帖或私信等操作。

主要功能

  1. 01跨平台搜索与阅读
  2. 02选择公开网页或站内工具
  3. 03管理渠道安装与登录
  4. 04处理平台错误和限流
  5. 05限定为只读操作

适用场景

  1. 01搜索多个平台的公开内容
  2. 02通过链接读取页面
  3. 03检查渠道可用性与状态
  4. 04安装渠道或登录

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/panniantong/agent-reach --skill agent-reach

安装后在 Claude Code 中输入/agent-reach确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

SKILL_en.md
references/
capabilities.md
maintenance.md
sessions.md

详细介绍

来自项目 README

Agent Reach

一个命令读所有平台:agent-reach。只读,默认输出一行 JSON。

动手前先说一句"用 agent-reach skill(X 渠道)"。本 skill 被调用后全程有效,以下规则一直适用。

选路

  • 公开内容先用你自带的搜索/读取工具(可加 site:域名)。正文、评论、字幕分别核对是否已拿到;够了就直接回答,不装渠道、不登录。
  • 自带工具不可用、结果缺了用户要的部分、或用户要的是渠道声明的站内动作时,再用 Reach。不确定有哪些动作和参数先跑 agent-reach channels。
  • 渠道已经加上(默认渠道或 add 过)时,搜索/阅读直接走该站工具;还没加的渠道,搜索/阅读先试免登录公开网页,结果里 backend: public-web 标明来源。--backend public-web 只查公开网页;--backend <后端> 指定站内工具。
  • 平台名或链接只用来认出来源,不自动触发安装或登录。
  • 摘要、页面壳、评论计数、字幕轨道列表不等于正文、评论或字幕本身,要分别说明。用户跳过登录时,已拿到的公开结果照样交付。
agent-reach channels                      # 每个渠道的动作和参数
agent-reach <渠道> <动作> [参数]          # 例:agent-reach xiaohongshu search "咖啡" --limit 5
agent-reach read <链接>                   # 按链接自动选渠道

结果与错误

  • ok: true → 内容在 items,每条有 title / url / author / published_at / text,原始数据在 raw。
  • ok: false → 看 error.code,照 error.hint 做:
error.code怎么办
NEED_SETUP缺依赖或密钥。按提示 agent-reach add <渠道>;要密钥时请用户本人提供,再 agent-reach configure <key>
NEED_LOGIN保留已有结果,告诉用户需要登录;agent-reach login <渠道> 打开浏览器,由用户本人登录,你绝不代登、不要密码
UPSTREAM_BROKEN这个平台暂时有问题,message 是出错时的原话。用平台名告诉用户哪个平台暂时用不了、大概是什么原因,不说工具名;原话说明工具过时,才在用户同意后跑一次 agent-reach update;不循环重试
TIMEOUT看失败阶段和渠道状态(agent-reach doctor --text);不反复重试、不反复开窗
RATE_LIMITED平台限流,Reach 已暂停该渠道;按 retry_after_seconds 等,不换后端
PLATFORM_BLOCKED平台要求验证(验证码/风控)。停下,请用户在官方页面处理;不换账号、不换后端
BUSY排队等了 2 分钟浏览器仍然满,或用户正开着登录窗口。过一会儿、或等用户说登好了再试;不关窗口、不切换配置
NOT_FOUND内容不存在,核对链接或 ID
BAD_INPUT参数不对,跑 agent-reach channels 看用法

遇到 PLATFORM_BLOCKED、RATE_LIMITED、NEED_LOGIN、BUSY 就停止本次尝试,不换账号、后端或浏览器反复请求。网络失败或某台机器的失败不能说成"平台必须登录"。

登录与专用浏览器

所有浏览器渠道共用一个专用浏览器(优先 CloakBrowser,装不上时用本机 Chrome),默认无头不弹窗,闲置 10 分钟自动关闭,下次调用自动重开。可以并行调用(包括子代理同时查):同一平台最多同时 2 条,所有平台合计 4 条,多出来的自动排队;同一平台的两次搜索之间至少隔 10 秒。

第一次用某个网站时,如果用户的 Chrome 已连接 OpenCLI 扩展,程序会把该站登录自动复制一次到专用浏览器,之后一直复用;只复制该站,不动原浏览器。登录失效或没有可复制的来源时,才请用户本人 agent-reach login <渠道>。刷新、选来源、退出等细节见 会话与专用浏览器:用户要登录、退出、换账号,或遇到 NEED_LOGIN 时读它。

平台注意

  • 小红书 read 只返回文字描述,不要声称看懂了图片或视频。
  • Boss 直聘搜索结果 salary_encoded=true 时绝不猜薪资数字;read 职位链接拿详情里的可读薪资。
  • 各平台公开能做什么、Reach 补什么,见 能力边界:用户问"能查什么/查得全吗"或要判断结果完整度时读它。

渠道

{{CHANNEL_TABLE}}

default 是默认安装的渠道,也可以去掉,去掉后更新不会加回来。login 列是认证入口,不是查公开内容的前提。

安装完成时

agent-reach setup 后,把 result.installation_report.markdown 原样展示给用户,不增删、不重排、不自己补问候或表格;报告由程序生成。

用户要管理 Agent Reach 时

用户说你运行
加上某个平台agent-reach add <渠道>,依赖自动装好;只告诉用户他必须做的事(登录或提供密钥)
去掉某个平台agent-reach remove <渠道>
登录 / 登录过期agent-reach login <渠道>,由用户本人在打开的窗口里登录
退出登录agent-reach logout <渠道>
看看状态 / 哪些能用agent-reach doctor --text;要实测跑 agent-reach check <渠道> --text
升级 / 更新agent-reach update
卸载先 agent-reach uninstall --dry-run 给用户看,确认后 agent-reach uninstall
让另一个 AI 也能用agent-reach skill link <那个 AI 的 skill 目录>;agent-reach skill 查看现在放在哪

故障排查、浏览器维护和卸载细节见 维护说明:更新失败、浏览器起不来或要卸载时读它。

有新版本时

结果里出现 meta.update 就说明有新版本。每次对话只提一次,用用户的语言、大白话:

  1. 告诉用户有新版本(meta.update.latest)。
  2. 从 meta.update.notes 挑 1 到 3 个要点说清改了什么。
  3. 问要不要更新;用户同意后才跑 agent-reach update。

红线

  • 只读。发帖、评论、点赞、私信一律不做。
  • 不替用户登录,不索要或输出密码、Cookie 等凭据。
  • 普通查询不改依赖、不自动更新。

评论

支持 Markdown