本技能是智能体所有互联网搜索操作的统一入口和强制流程,不得绕过本技能直接发起搜索或抓取搜索结果页。 搜索流程:强制拆分关键词,完整执行多级检索与权威网址知识库双路并行,综合全部结果并进行质量评估;不合格时调整策略重试,最多三轮。
Resources
5Install
npx skillscat add horizonn1/cn-web-search-skill Install via the SkillsCat registry.
SKILL.md
CN Web Search — 零配置互联网搜索
四级通用搜索链 + 垂直搜索与专业数据源 + 全领域权威网址知识库 + 智能质量评估,全部零配置。
常驻规则
- 🚫 搜索唯一入口 — 禁止绕过本技能:本技能是 agent 所有搜索操作的唯一入口和强制流程。以下行为一律禁止:
- 禁止直接调用
web_search()作为搜索手段(仅允许作为降级链最后一级使用) - 禁止直接
web_fetch()搜索引擎结果页而不走本技能降级链 - 禁止跳过关键词拆分直接搜索
- 禁止只跑路A(搜索引擎)不跑路B(知识库匹配)
如果你在想"直接搜一下更快"——这是违规行为。必须走完整流程。
- 禁止直接调用
- 用户给 URL → 直接读取:只要用户发了链接,用 curl 直接抓取内容,不要再去搜索引擎搜这个 URL。
- 强制多源搜索链(按降级顺序排列,四级全部走完并综合回答,不是成功即停止的传统降级):
必须从第 1 级开始逐级执行,每级结果都保留。不可因前一级有结果就跳过后续级别。综合全部有结果的节点信息给出最完整回答。
⚠️ 无论本级返回什么(正常结果/超时/失败/验证码/空内容),都不得向用户输出任何状态信息。静默收集,继续下一级。
a) 360 搜索:先web_fetch(url="https://www.so.com/s?q=QUERY", extractMode="text"),超时或失败则 curl 兜底:
curl -s -L --max-time 5 "https://www.so.com/s?q=URL_ENCODED_QUERY" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
⚠️ web_fetch 必须用www.so.com(m.so.com 验证码墙)。Windows CMD/PowerShell 用curl.exe。
b) 搜狗:先web_fetch(url="https://www.sogou.com/web?query=QUERY", extractMode="text"),超时或失败则 curl 兜底:
curl -s -L --max-time 5 "https://www.sogou.com/web?query=URL_ENCODED_QUERY" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
LLM 评判 curl 返回的原始 HTML 后取前 5~8 条。
c) Bing RSS:curl -s "https://cn.bing.com/search?format=rss&q=%22URL_ENCODED_QUERY%22"→ 第 3 级,精准子查询(单主题 ≤ 4 词)。
⚠️ curl 依赖 agent 本地网络,DNS/GFW 可能导致不可达。
⚠️ 所有 query 强制双引号包裹(%22 = "),禁止 Bing 自行分词。
d) web_search:web_search(query="QUERY")→ 第 4 级。无论前三级结果如何均执行,作为补充或兜底。
360、搜狗每级先web_fetch,失败时使用 curl 兜底;Bing RSS 直接使用 curl;web_search直接调用内置搜索。每级超时 5s。头条(1.8MB JS)实测不可用,已移除。 - 平台走对应工具:B站用 curl API 或 bili-cli,GitHub 用 gh CLI。
- 无法直连的引擎走降级:百度/Wikipedia/东方财富 等已内置 Bing site: 降级方案。
- 搜索即双路并行:任何搜索(显式"搜一下"、隐式知识缺口、指名引擎),路A搜索引擎 + 路B知识库必须同时执行,两路独立互不阻塞:
a) 路 A:搜索引擎走降级链
b) 路 B:扫描 references/authoritative-sites.md 全文(22 分类 / 103 条目,必须从头到尾完整读完)→ 关键词匹配 → curl 直接抓取(13 个 URL)7 分仅用于继续验证,获得独立信号确认后才能引用;< 5 分跳过
c) 知识库无匹配 → 动态发现权威网址:≥ 8 分可作为候选权威来源抓取;5
⚠️ 路B强制约束:知识库包含计算机、金融、教育、医疗、旅游等 22 个分类,分布在全文各处。判定"无匹配"前必须确认已读完整个文件(含末尾的分类),禁止只读前几行就下结论。 - 知识缺口驱动搜索:agent 执行任务过程中,需要最新信息/实时数据/外部事实/对比验证/行业动态/权威引用时,主动搜索。判断标准不是用户说了什么关键词,而是 agent 是否缺信息。
- 搜索质量评估与多轮搜索:搜索结果返回后,先评估质量再回答。三维评分(信息充足度/关联度/可靠性),≥ 0.7 合格。不合格则调整关键词/换策略重搜,最多 3 轮。可靠性评分要求每个数据点附具体来源 URL,禁止只写平台名。详见 references/search-quality.md。
- 搜索前必须拆分关键词:搜索前必须从任务描述中提取核心实体和问题,默认拆分为 ≥ 2 组精准关键词(每组 ≤ 6 词)。仅当输入同时满足“单一实体、单一意图、≤ 6 词、无对比/多时间点/多问题维度”时允许单查询。用户指定搜索引擎不构成跳过拆分的理由,只改变路A第1级的顺序。禁止用原始长任务描述直接搜索。多主题/对比类("A vs B")必须拆成独立子查询各自搜索。技术类同时生成中/英两套。详见 references/search-quality.md。
- 🔇 静默搜索:启动搜索时最多说一句"正在搜索…",之后禁止向用户输出任何中间信息。不论降级链每一级返回什么(成功/失败/超时/空结果/验证码/被拦截),一律不汇报、不解释、不告知。所有结果收集完毕直接给出最终回答 + Sources。禁止的输出示例:"360搜索返回了X条结果""搜狗触发验证码,跳过""改用Bing RSS""第1级无结果,尝试第2级"——这类信息用户不需要看到。
路由决策
用户输入
│
├─ 用户给了 URL/链接 → curl 直接抓取(curl -s -L "URL")
│
├─ 指名搜索引擎("用百度搜XXX")→ 指名引擎作为路A第1级;无论成功/失败/超时,仍继续完整执行标准链的其余节点,并执行双路并行+质量评估。
│
├─ 指名平台(B站/GitHub/V2EX/RSS)
│ └─ 对应零配置工具(curl / gh CLI)
│
├─ 搜索意图(显式"搜一下" 或 隐式知识缺口)→ 关键词强制拆分 → 双路并行(路A+路B)→ 质量评估
│
└─ 网页/视频/GitHub/RSS 等 → 对应 references路由表
| 用户意图 | 分类 | 详细文档 |
|---|---|---|
| 四级通用搜索链 + 垂直搜索与专业数据源 + 不可直连渠道替代路径 | search | references/search-engines.md |
| B站 / V2EX | social | references/social.md |
| B站视频 | video | references/video.md |
| GitHub / GitHub Trending | dev | references/dev.md |
| 网页阅读 / RSS | web | references/web.md |
| 专业网址知识库(全领域) | knowledge | references/authoritative-sites.md |
| 动态发现权威网址 | discovery | references/authoritative-url-discovery.md |
| 搜索质量评估与多轮策略 | quality | references/search-quality.md |
搜索流程(显式搜索 + 隐式搜索意图均走此流程)
⚠️ 搜索前自检
发起搜索前逐条确认,任一"否"则不得开始:
| # | 检查项 |
|---|---|
| 1 | 我拆分了关键词?(默认 ≥ 2 组、每组 ≤ 6 词;仅符合单查询例外时可为 1 组) |
| 2 | 我没有用原始任务描述直接搜索? |
| 3 | 我从降级链第 1 级(360)开始,不是直接跳到 web_search? |
| 4 | 我同时启动了路B(知识库匹配),且通读了 authoritative-sites.md 全文再下结论? |
| 5 | 我会逐级走完 360→搜狗→Bing RSS→web_search,综合所有节点结果? |
| 6 | 如果正在想"直接 web_search 更快"→ 回到第 1 条。 |
用户输入("搜一下XXX" 或 "帮我了解XXX" 或 "XXX怎么样")
│
├─ 第 1 步:关键词拆分(必须执行,禁止跳过)
│ ├─ 去除语气词、疑问词、冗余修饰
│ ├─ 提取核心实体(产品名、事件、术语、人名)
│ ├─ 默认生成 ≥ 2 组搜索关键词(每组 ≤ 6 词;仅符合单查询例外时可为 1 组;禁止用原始长任务描述直接搜索)
│ ├─ 多主题/对比类("A vs B")→ 必须拆成独立子查询各自搜索
│ └─ 技术类同时生成中/英两套关键词
│
├─ 第 2 步:首轮搜索
│ ├─ 路 A:强制多源搜索链(四级全部走完;360/搜狗 web_fetch → curl,Bing RSS 用 curl,最后调用 web_search)
│ │ ├─ 1) 360:web_fetch(www.so.com?q=关键词) → 超时/失败则 curl 兜底 → 保留结果,继续
│ │ ├─ 2) 搜狗:web_fetch(sogou.com?query=关键词) → 超时/失败则 curl 兜底 → LLM取前5~8条,继续
│ │ ├─ 3) Bing RSS:无论前两级是否成功均执行;curl -s "cn.bing.com?format=rss&q=%22关键词%22" → 保留结果,继续
│ │ └─ 4) web_search(query="关键词") → 最后一级
│ │ ⚠️ 综合 1~4 级所有有结果的节点信息。不可因前级成功而跳过后级。
│ │
│ └─ 路 B:知识库匹配 → 专业网址爬取
│ ├─ 1) 通读 authoritative-sites.md 全文(22 分类,确认读完末尾再下结论)
│ ├─ 2) ✅ 命中 → curl -s -L "{URL}"(并行 1~3 个)
│ └─ 3) ❌ 未命中 → 动态发现(5 策略,详见 authoritative-url-discovery.md)
│
├─ 第 3 步:结果质量评估(详见 references/search-quality.md)
│ ├─ 📊 信息充足度:结果 ≥ 5 条且内容充实?
│ ├─ 🎯 关联度:≥ 60% 结果直接回应问题核心?
│ └─ 🛡️ 可靠性:来源为官方/权威/一手信息?
│ │
│ ├─ 综合评分 ≥ 0.7 → ✅ 合格,进入第 5 步
│ └─ 综合评分 < 0.7 → ❌ 进入第 4 步
│
├─ 第 4 步:多轮搜索(最多 3 轮)
│ ├─ 第 2 轮:调整关键词
│ │ ├─ 同义词替换 / 中英互译 / 放宽限定词
│ │ └─ 重新搜索 → 质量评估
│ │
│ ├─ 第 3 轮:换搜索策略
│ │ ├─ 使用新关键词重跑强制多源搜索链,四级全部走完并综合所有节点结果
│ │ ├─ 或加 site: 限定 / 技术类 → GitHub gh search
│ │ └─ 重新搜索 → 质量评估
│ │
│ └─ 3 轮后仍不合格 → 用最优轮次结果 + 标注不确定性
│
└─ 第 5 步:综合回答
├─ 优先呈现高质量来源的信息
├─ 标注来源类型:知识库预收录 / 🆕 动态发现 / 🔄 多轮优化
├─ 可靠性不足时明确告知用户
└─ Sources 列出所有引用的具体 URL。禁止只写平台名("网易/新浪/36氪"),必须附完整文章链接。
### ⚠️ 回答前自检
| # | 检查项 |
|---|--------|
| 1 | Sources 中每个引用都附了具体 URL,不是只写平台名? |注意:显式/隐式搜索均走完整流程。用户给 URL 时直接 curl 抓取,不走搜索流程。指名搜索引擎时该引擎作为路A第1级,仍需拆分关键词+双路并行+质量评估。
强制多源搜索链(按降级顺序排列,四级全部走完并综合回答)
必须逐级执行,不可因前级成功而停止。360、搜狗先
web_fetch,超时/失败则 curl 兜底;Bing RSS 直接使用 curl;web_search直接调用内置搜索。综合所有节点信息回答。
# 无论返回什么(正常/超时/验证码/空内容),禁止输出状态。静默收集,继续下一级。
# === 第 1 级:360 搜索 ===
# 主路径:web_fetch
web_fetch(url="https://www.so.com/s?q=QUERY", extractMode="text")
# 兜底:curl(web_fetch 超时/失败时)
curl -s -L --max-time 5 "https://www.so.com/s?q=URL_ENCODED_QUERY" \
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
# === 第 2 级:搜狗网页 ===
# 主路径:web_fetch
web_fetch(url="https://www.sogou.com/web?query=QUERY", extractMode="text")
# 兜底:curl(web_fetch 超时/失败时)
curl -s -L --max-time 5 "https://www.sogou.com/web?query=URL_ENCODED_QUERY" \
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
# === 第 3 级:Bing RSS(强制执行;curl 原生,无需 web_fetch)===
# 所有 query 强制双引号包裹(%22),禁止 Bing 自行分词
curl -s "https://cn.bing.com/search?format=rss&q=%22URL_ENCODED_QUERY%22"
# === 第 4 级:web_search(最后一级)===
web_search(query="QUERY")头条返回 1.8MB JS 代码,已移除。Windows CMD/PowerShell 用
curl.exe替代curl。
其他专用引擎(直接 web_fetch)
# 公众号
web_fetch(url="https://weixin.sogou.com/weixin?type=2&query=QUERY", extractMode="text")
# 美股/宏观/IPO
web_fetch(url="https://seekingalpha.com/symbol/TICKER")
web_fetch(url="https://finviz.com/quote.ashx?t=TICKER")
web_fetch(url="https://www.bea.gov/news/current-releases")
web_fetch(url="https://www.iposcoop.com/ipo-calendar/")
web_fetch(url="https://stockanalysis.com/ipos/")
web_fetch(url="https://github.com/trending?since=weekly")无法直连的引擎(降级路径)
# Wikipedia → Bing 缓存
web_fetch(url="https://cn.bing.com/search?q=site:zh.wikipedia.org+QUERY", extractMode="text")
# 百度/东方财富/集思录/财新 → web_search 降级
web_search(query="QUERY")平台直达
用户给 URL/链接时,直接用 curl 抓取,不要搜索。
# curl 直接抓取网页
curl -s -L "URL"
# V2EX — 公开 API
curl -s "https://www.v2ex.com/api/topics/hot.json" -H "User-Agent: agent-reach/1.0"
# B站搜索 — 公开 API
curl -s -e "https://www.bilibili.com/" \
"https://api.bilibili.com/x/web-interface/search/all/v2?keyword=QUERY&page=1"
# B站 — bili-cli(推荐,需 pipx install bilibili-cli)
bili search "query" --type video -n 5
# GitHub — gh CLI
gh search repos "query" --sort stars --limit 10
# RSS
python3 -c "import feedparser; [print(e.title) for e in feedparser.parse('URL').entries[:5]]"环境检查
agent-reach doctor --json # 平台渠道状态工作区规则
使用 /tmp/ 存放临时输出。不要在 agent workspace 创建文件。
详细文档
- 搜索渠道 + 降级方案 — 四级通用搜索链 + 垂直搜索与专业数据源 + 不可直连渠道替代路径
- 社区平台 — B站搜索 / V2EX
- 视频 — B站
- 开发工具 — GitHub CLI / GitHub Trending
- 网页阅读 — curl 直接抓取 / RSS
- 专业网址知识库 — 全领域权威网址,模糊搜索时自动匹配爬取
- 动态发现权威网址 — 知识库无匹配时动态发现权威来源
- 搜索质量评估与多轮策略 — 结果质量评分、关键词调整、多轮重试