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:
@@ -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