feat(identity): capability-layer positioning + skill rewrite, v1.5.0
SKILL.md (per the skill-writing guide): - description rewritten trigger-first: 调研/全网调研/帮我调研/research lead the text (the owner's own phrasing "去全网调研" previously had NO matching trigger word — the exact undertrigger the guide warns about); platform keywords front-loaded against the 1536-char truncation - standing rules added: probe `doctor --json` active_backend before acting on multi-backend platforms, announce which skill/backend is in use, follow the documented retry chains, compose multi-platform research - quick commands updated to the new reality: bili-cli for bilibili search, Reddit/xiaohongshu moved to a "login-backed platforms" section - SKILL_en.md: same description surgery + the actively harmful stale advice removed (anonymous reddit .json curl, yt-dlp for bilibili) README / README_en: - tagline gains the capability-layer subline: backends are chosen, installed and health-checked for us to swap — the user never notices - "设计理念" reframed from scaffolding to capability layer (selection / install / doctor / routing); channels diagram now shows ordered backend lists; selection table split into primary + fallback columns with the live-test rationale per row - platform table: honest rows for bilibili (bili-cli, yt-dlp retired), Reddit (no zero-config path), xiaohongshu (OpenCLI / mcp / legacy) Version 1.5.0 across pyproject / __init__ / CLAUDE.md / test fixture. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
+44
-26
@@ -1,19 +1,24 @@
|
||||
---
|
||||
name: agent-reach
|
||||
description: >
|
||||
MUST USE when user asks to search, browse, read, or interact with content from any of these platforms:
|
||||
小红书/xiaohongshu/xhs, Twitter/推特/X, B站/bilibili,
|
||||
V2EX, Reddit, LinkedIn/领英, YouTube, GitHub code search,
|
||||
小宇宙播客, 雪球/股票行情, RSS feeds, or any web URL.
|
||||
MUST USE when user wants to 调研/research/搜索/search/查/找/look up anything
|
||||
on the internet — e.g. 全网调研 X / 帮我调研一下 X / 查一下 X / 搜搜 X /
|
||||
看看大家怎么评价 X / X 上有什么讨论 / research this topic。
|
||||
|
||||
Also MUST USE for: web搜索/搜/查/找/look up/research, 招聘/求职/jobs, 分享的链接/URL.
|
||||
Routes to CLI tools: xhs-cli, twitter-cli, rdt-cli, gh, yt-dlp, curl+Jina, mcporter.
|
||||
13 platforms. Zero config for 6 channels.
|
||||
Also MUST USE when user mentions any platform or shares any URL/链接:
|
||||
小红书/xiaohongshu/xhs, Twitter/推特/X, B站/bilibili, Reddit, V2EX,
|
||||
LinkedIn/领英/招聘/求职/jobs, YouTube, GitHub code search, 小宇宙播客,
|
||||
雪球/股票行情, RSS feeds, or any web URL.
|
||||
|
||||
13 platforms, multi-backend routing (OpenCLI / per-platform CLIs / APIs).
|
||||
Zero config for 6 channels. Run `agent-reach doctor --json` to see which
|
||||
backend serves each platform right now.
|
||||
|
||||
【路由方式】SKILL.md 包含路由表和常用命令,复杂场景需按需阅读对应分类的 references/*.md。
|
||||
分类:search / social (小红书/推特/B站/V2EX/Reddit) / career(LinkedIn) / dev(github) / web(网页/文章/RSS) / video(YouTube/B站/播客)。
|
||||
triggers:
|
||||
- search: 搜/查/找/search/搜索/查一下/帮我搜
|
||||
- research: 调研/全网调研/帮我调研/研究一下/research/深入了解
|
||||
- search: 搜/查/找/search/搜索/查一下/帮我搜/看看大家怎么说
|
||||
- social:
|
||||
- 小红书: xiaohongshu/xhs/小红书/红书
|
||||
- Twitter: twitter/推特/x.com/推文
|
||||
@@ -30,9 +35,17 @@ metadata:
|
||||
homepage: https://github.com/Panniantong/Agent-Reach
|
||||
---
|
||||
|
||||
# Agent Reach — 路由器
|
||||
# Agent Reach — 互联网能力路由器
|
||||
|
||||
13 平台工具集合。根据用户意图选择对应分类。
|
||||
13 平台、多后端。**本 skill 存在时必须用它访问这些平台,不要自己发明方案。**
|
||||
|
||||
## 常驻规则(全程适用)
|
||||
|
||||
1. **动手前先体检**:多后端平台(小红书/Reddit/B站/Twitter)先跑
|
||||
`agent-reach doctor --json`,按各平台 `active_backend` 字段选命令组。
|
||||
2. **声明你在用什么**:开始干活前说一句「使用 agent-reach 的 X 平台 / Y 后端」。
|
||||
3. **失败按 references 里的重试链处理**,不要瞎猜命令。
|
||||
4. **全网调研类任务**:组合多平台(Exa 搜索 + Twitter/Reddit 看讨论 + 小红书/B站看中文场景),并行收集再汇总。
|
||||
|
||||
## 路由表
|
||||
|
||||
@@ -57,30 +70,35 @@ curl -s "https://r.jina.ai/URL"
|
||||
# GitHub 搜索
|
||||
gh search repos "query" --sort stars --limit 10
|
||||
|
||||
# Twitter 搜索
|
||||
twitter search "query" -n 10
|
||||
|
||||
# YouTube/B站字幕
|
||||
# YouTube 字幕(注意:B站不要用 yt-dlp,见 video.md)
|
||||
yt-dlp --write-sub --skip-download -o "/tmp/%(id)s" "URL"
|
||||
|
||||
# Reddit 搜索
|
||||
rdt search "query" --limit 10
|
||||
|
||||
# Reddit 读帖 + 评论
|
||||
rdt read POST_ID
|
||||
|
||||
# V2EX 热门
|
||||
curl -s "https://www.v2ex.com/api/topics/hot.json" -H "User-Agent: agent-reach/1.0"
|
||||
|
||||
# B站搜索(bili-cli,无需登录)
|
||||
bili search "query" --type video -n 5
|
||||
```
|
||||
|
||||
## 需登录态的平台(按 doctor 的 active_backend 选命令)
|
||||
|
||||
```bash
|
||||
# Twitter 搜索(twitter-cli 首选;失败重试链见 social.md)
|
||||
twitter search "query" -n 10
|
||||
|
||||
# Reddit(无零配置路径:OpenCLI 或 rdt-cli,必须登录态)
|
||||
opencli reddit search "query" -f yaml # 桌面
|
||||
rdt search "query" --limit 10 # 存量/服务器
|
||||
|
||||
# 小红书(桌面首选 OpenCLI)
|
||||
opencli xiaohongshu search "query" -f yaml
|
||||
```
|
||||
|
||||
## 环境检查
|
||||
|
||||
```bash
|
||||
# 检查可用 channel
|
||||
agent-reach doctor
|
||||
|
||||
# 查看所有 MCP 服务
|
||||
mcporter_list_servers()
|
||||
# 检查可用 channel 与每个平台当前激活的后端
|
||||
agent-reach doctor --json
|
||||
```
|
||||
|
||||
## 工作区规则
|
||||
@@ -92,7 +110,7 @@ mcporter_list_servers()
|
||||
根据用户需求,阅读对应的详细文档:
|
||||
|
||||
- [搜索工具](references/search.md) — Exa AI 搜索
|
||||
- [社交媒体](references/social.md) — 小红书, Twitter, B站, V2EX, Reddit
|
||||
- [社交媒体](references/social.md) — 小红书, Twitter, B站, V2EX, Reddit(多后端命令组)
|
||||
- [职场招聘](references/career.md) — LinkedIn
|
||||
- [开发工具](references/dev.md) — GitHub CLI
|
||||
- [网页阅读](references/web.md) — Jina Reader, RSS
|
||||
|
||||
@@ -1,16 +1,20 @@
|
||||
---
|
||||
name: agent-reach
|
||||
description: >
|
||||
MUST USE when user asks to search, browse, read, or interact with content from any supported platform:
|
||||
MUST USE when user wants to research/search/look up/find anything on the
|
||||
internet — e.g. "research this topic", "do a deep dive on X", "search the
|
||||
web for X", "see what people say about X", "look this up".
|
||||
|
||||
Also MUST USE when user mentions any platform or shares any URL/link:
|
||||
Twitter/X, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu,
|
||||
Xiaoyuzhou Podcast, LinkedIn, V2EX, Xueqiu (stocks), RSS, or any web URL.
|
||||
Xiaoyuzhou Podcast, LinkedIn/jobs/recruiting, V2EX, Xueqiu (stocks), RSS.
|
||||
|
||||
Also MUST USE for: web search, look up, research, find, share a URL/link, jobs/recruiting.
|
||||
Routes to CLI tools: xhs-cli, twitter-cli, rdt-cli, gh, yt-dlp, curl+Jina, mcporter.
|
||||
13 platforms, zero config for 6 channels.
|
||||
13 platforms, multi-backend routing (OpenCLI / per-platform CLIs / APIs).
|
||||
Zero config for 6 channels. Run `agent-reach doctor --json` to see which
|
||||
backend serves each platform right now.
|
||||
|
||||
Triggers: "search twitter", "search xiaohongshu", "watch this video",
|
||||
"search the web", "look this up", "research", "youtube transcript",
|
||||
Triggers: "research", "deep dive", "search twitter", "search xiaohongshu",
|
||||
"watch this video", "search the web", "look this up", "youtube transcript",
|
||||
"search reddit", "read this link", "bilibili", "V2EX",
|
||||
"xiaoyuzhou", "podcast", "xueqiu", "stock quote", "雪球", "股票".
|
||||
metadata:
|
||||
@@ -62,24 +66,30 @@ yt-dlp --write-sub --write-auto-sub --sub-lang "zh-Hans,zh,en" --skip-download -
|
||||
yt-dlp --dump-json "ytsearch5:query" # search
|
||||
```
|
||||
|
||||
## Bilibili (yt-dlp)
|
||||
## Bilibili (bili-cli / OpenCLI)
|
||||
|
||||
> ⚠️ Do NOT use yt-dlp for bilibili — its risk control 412-blocks yt-dlp in
|
||||
> every configuration (verified 2026-06). yt-dlp is for YouTube only.
|
||||
|
||||
```bash
|
||||
yt-dlp --dump-json "https://www.bilibili.com/video/BVxxx"
|
||||
yt-dlp --write-sub --write-auto-sub --sub-lang "zh-Hans,zh,en" --convert-subs vtt --skip-download -o "/tmp/%(id)s" "URL"
|
||||
bili video BVxxx # video detail, no login needed
|
||||
bili search "query" --type video -n 5 # search
|
||||
bili hot -n 10 # trending
|
||||
opencli bilibili subtitle BVxxx # subtitles (desktop Chrome)
|
||||
```
|
||||
|
||||
> Server IPs may get 412. Use `--cookies-from-browser chrome` or configure a proxy.
|
||||
## Reddit (login required — no zero-config path)
|
||||
|
||||
## Reddit
|
||||
> Anonymous .json endpoints are 403-blocked and official API registration is
|
||||
> approval-gated (2025-11). Every backend needs a logged-in session.
|
||||
> Check `agent-reach doctor --json` for the active backend.
|
||||
|
||||
```bash
|
||||
curl -s "https://www.reddit.com/r/SUBREDDIT/hot.json?limit=10" -H "User-Agent: agent-reach/1.0"
|
||||
curl -s "https://www.reddit.com/search.json?q=QUERY&limit=10" -H "User-Agent: agent-reach/1.0"
|
||||
opencli reddit search "query" -f yaml # desktop, browser session
|
||||
rdt search "query" --limit 10 # legacy/server, cookie login
|
||||
rdt read POST_ID # post + comments
|
||||
```
|
||||
|
||||
> Server IPs may get 403. Search via Exa instead, or configure a proxy.
|
||||
|
||||
## GitHub (gh CLI)
|
||||
|
||||
```bash
|
||||
@@ -90,13 +100,20 @@ gh issue list -R owner/repo --state open
|
||||
gh issue view 123 -R owner/repo
|
||||
```
|
||||
|
||||
## XiaoHongShu (mcporter)
|
||||
## XiaoHongShu (multi-backend — check doctor for active backend)
|
||||
|
||||
```bash
|
||||
mcporter call 'xiaohongshu.search_feeds(keyword: "query")'
|
||||
mcporter call 'xiaohongshu.get_feed_detail(feed_id: "xxx", xsec_token: "yyy")'
|
||||
mcporter call 'xiaohongshu.get_feed_detail(feed_id: "xxx", xsec_token: "yyy", load_all_comments: true)'
|
||||
mcporter call 'xiaohongshu.publish_content(title: "Title", content: "Body text", images: ["/path/img.jpg"], tags: ["tag"])'
|
||||
# Desktop preferred: OpenCLI (reuses browser session, zero config)
|
||||
opencli xiaohongshu search "query" -f yaml
|
||||
opencli xiaohongshu note "NOTE_URL" -f yaml
|
||||
|
||||
# Server: xiaohongshu-mcp via mcporter (QR login; always pass --timeout 120000)
|
||||
mcporter call 'xiaohongshu.search_feeds(keyword: "query")' --timeout 120000
|
||||
mcporter call 'xiaohongshu.get_feed_detail(feed_id: "xxx", xsec_token: "yyy")' --timeout 120000
|
||||
|
||||
# Legacy fallback: xhs-cli (upstream unmaintained since 2026-03)
|
||||
xhs search "query"
|
||||
xhs read NOTE_ID_OR_URL
|
||||
```
|
||||
|
||||
> Requires login. Use Cookie-Editor to import cookies.
|
||||
|
||||
Reference in New Issue
Block a user