terrylica

agent-reach

Give your AI agent eyes to see the entire internet. 17 platforms via CLI, MCP, curl, and Python scripts. Zero config for 8 channels. Route by intent: search / social (小红书/抖音/微博/推特/B站/V2EX/Reddit) / career (LinkedIn) / dev (GitHub) / web (网页/文章/公众号/RSS) / video (YouTube/B站/播客). Use when user asks to search, read, or interact on any supported platform, shares a URL from a supported site, or asks to search the web. Triggers: "search twitter", "youtube transcript", "search reddit", "read this link", "bilibili", "web search", "research this", "search weibo", "wechat article", "xiaohongshu", "douyin", "podcast transcript", "V2EX", "RSS feed", "xueqiu", "stock".

terrylica 61 9 Updated 3mo ago

Resources

1
GitHub

Install

npx skillscat add terrylica/cc-skills/agent-reach

Install via the SkillsCat registry.

About this skill

Agent Reach provides a unified interface for AI agents to access 17 internet platforms, including social media sites, code repositories, video services, and web search. It routes requests by intent to the appropriate channel via CLI, MCP, curl, or Python, eliminating the need for separate integrations. Developers use it when their agents need to search, read, or interact with content across these platforms.

SKILL.md

Agent Reach — Router

17 platform toolset. Route by user intent to the matching category reference.

Upstream: Panniantong/Agent-Reach

Self-Evolving Skill: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues.

Preflight (Auto-Update)

Run this before every use. It ensures Agent Reach is installed and up-to-date.

#!/usr/bin/env bash
set -euo pipefail

PASS=true

# 1. Check if agent-reach CLI exists
if ! command -v agent-reach &>/dev/null; then
    echo "  MISSING  agent-reach CLI"
    echo "  Installing via pipx..."
    if command -v pipx &>/dev/null; then
        pipx install https://github.com/Panniantong/agent-reach/archive/main.zip --python python3.14 2>&1
        agent-reach install --env=auto 2>&1
        echo "  OK  agent-reach installed"
    else
        echo "  FAIL  pipx not found. Install: brew install pipx"
        PASS=false
    fi
else
    INSTALLED=$(agent-reach --version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' || echo "0.0.0")
    echo "  OK  agent-reach v${INSTALLED}"

    # 2. Check for updates (non-blocking: 5s timeout, failures are non-fatal)
    LATEST=$(curl -sf --max-time 5 https://api.github.com/repos/Panniantong/Agent-Reach/releases/latest 2>/dev/null \
        | python3 -c "import sys,json; print(json.load(sys.stdin).get('tag_name','').lstrip('v'))" 2>/dev/null || echo "")

    if [[ -n "$LATEST" && "$LATEST" != "$INSTALLED" ]]; then
        echo "  UPDATE  v${INSTALLED} → v${LATEST}"
        echo "  Upgrading..."
        pipx upgrade agent-reach 2>&1 | tail -1
        # Re-run install to update tools and SKILL.md
        agent-reach install --env=auto 2>&1 | grep -E '^\s*(✅|--|✗|\[)' | head -20
        echo "  OK  Updated to v${LATEST}"
    fi
fi

# 3. Quick health check (which channels are active?)
if command -v agent-reach &>/dev/null; then
    DOCTOR_OUTPUT=$(agent-reach doctor 2>&1)
    ACTIVE=$(echo "$DOCTOR_OUTPUT" | grep -c '✅' || true)
    TOTAL=$(echo "$DOCTOR_OUTPUT" | grep -cE '(✅|--)' || true)
    echo "  OK  ${ACTIVE}/${TOTAL} channels active"
fi

if ! $PASS; then
    echo "FAIL: Agent Reach not available."
    exit 1
fi
echo "Preflight passed."

If the version check fails (no network, GitHub rate-limited), it silently continues with the installed version. Updates are best-effort, never blocking.

Routing Table

User Intent Category Reference
Web search / code search search references/search.md
小红书/抖音/微博/推特/B站/V2EX/Reddit social references/social.md
Jobs / LinkedIn career references/career.md
GitHub / code dev references/dev.md
Web pages / articles / 公众号 / RSS web references/web.md
YouTube / Bilibili / podcasts video references/video.md

Zero-Config Quick Commands

# Exa web search
mcporter call 'exa.web_search_exa(query: "query", numResults: 5)'

# Read any web page
curl -s "https://r.jina.ai/URL"

# GitHub search
gh search repos "query" --sort stars --limit 10

# Twitter search
twitter search "query" --limit 10

# YouTube / Bilibili subtitles
yt-dlp --write-sub --skip-download -o "/tmp/%(id)s" "URL"

# Reddit search + read
rdt search "query" --limit 10
rdt read POST_ID

# V2EX hot topics
curl -s "https://www.v2ex.com/api/topics/hot.json" -H "User-Agent: agent-reach/1.0"

Environment Check

# Check available channels
agent-reach doctor

# List all MCP services
mcporter_list_servers()

Configuration

agent-reach configure proxy http://user:pass@ip:port     # Reddit/Bilibili proxy
agent-reach configure twitter-cookies "auth_token=xxx; ct0=yyy"
agent-reach configure groq-key gsk_xxxxx                 # Xiaoyuzhou podcasts
agent-reach configure xhs-cookies "key1=val1; key2=val2" # XiaoHongShu
agent-reach configure --from-browser chrome              # Auto-extract all cookies

For channel-specific setup details, see references/setup-channels.md.

Workspace Rules

Never create files in the agent workspace. Use /tmp/ for temporary output and ~/.agent-reach/ for persistent data.

Troubleshooting

  • Channel not working? Run agent-reach doctor
  • Update manually: pipx upgrade agent-reach && agent-reach install --env=auto
  • Full reinstall: pipx reinstall agent-reach && agent-reach install --env=auto

Post-Execution Reflection

After this skill completes, check before closing:

  1. Did the command succeed? — If not, fix the instruction or error table that caused the failure.
  2. Did parameters or output change? — If the underlying tool's interface drifted, update Usage examples and Parameters table to match.
  3. Was a workaround needed? — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround.

Only update if the issue is real and reproducible — not speculative.