search-and-fetch
Search & Fetch
通用搜索与内容提取技能,提供两个核心能力:搜索模式(多源并行搜索 + 结果综合)和提取模式(URL 内容提取 + 结构化分析)。
工具概览
本技能编排以下几类工具,按需组合使用:
| 类别 | 工具 | 说明 |
|---|---|---|
| 内置搜索 | WebSearch |
DuckDuckGo 搜索,始终可用 |
| MCP 搜索 | 当前环境中可用的 MCP 搜索工具 | 中文搜索、专业搜索等,按可用性自动选用 |
| 技术文档 | ctx7 CLI |
编程库/框架官方文档查询 |
| 浏览器 | agent-browser CLI |
访问搜索引擎、页面交互(Rust 原生,token 高效) |
| 内容提取 | crwl CLI → agent-browser |
按优先级降级 |
具体调用语法参见 references/tool-catalog.md。
意图检测
本技能负责所有 URL 和搜索意图的识别与路由。根据用户输入自动判断:
URL 检测
| 情况 | 处理 |
|---|---|
| 消息仅含 URL(无其他文字,或只有 URL + 空格/标点) | 直接进入 Fetch Mode |
| 消息含 URL + 阅读意图("读一下"、"分析"、"看看这个") | 直接进入 Fetch Mode |
| 消息含 URL + 保存意图("保存"、"clip"、"save"、"归档") | Fetch Mode 完成后,自动触发知识库技能的 Clipping Save |
| URL 出现在较长消息中,意图不明 | 询问:"要我提取内容分析,还是只需要链接?" |
| URL 明显是工具性的(localhost、内网地址、文件路径) | 不触发 |
搜索检测
| 情况 | 处理 |
|---|---|
| 用户提问、研究主题、需要查找信息 | Search Mode |
| 提供 URL + "搜索更多类似的" | 先 Fetch 再 Search |
| 其他技能委托调用 | 按委托方指定的模式执行 |
Search Mode
多源并行搜索,综合去重后输出结构化结果。
Step 1 — 查询分类
根据查询内容判断类型,选择工具组合:
| 查询类型 | 判断依据 | 工具组合 |
|---|---|---|
| 技术文档 | 涉及编程库、API、框架用法 | ctx7(library → docs)+ WebSearch |
| 通用查询 | 一般性问题 | WebSearch + MCP 搜索 并行(中文查询优先 MCP 搜索) |
| 深度研究 | 用户明确要求全面/深入调研 | 全部工具并行,含 agent-browser 访问 Google/Bing |
Step 2 — 并行执行搜索
根据分类结果,在同一轮响应中并行调用多个搜索工具。工具调用细节参见 references/tool-catalog.md。
关键原则:
- 独立工具并行调用,不等待
- context7 有顺序依赖:先
ctx7 library解析库 ID,再ctx7 docs查询内容(每个问题最多 3 次调用) - 对同一查询可以为不同搜索引擎调整措辞(如中文查询给 MCP 搜索原文,给 WebSearch 翻译为英文)
- 深度研究时使用
agent-browser打开 Google/Bing 搜索页,通过snapshot获取元素引用后提取结果
Step 3 — 结果综合
- 去重:按 URL 去重,合并来自不同来源的同一页面信息
- 分组:按子主题或关联度分组
- 排序:按相关性和信息质量排序
- 输出格式:
## 搜索结果:[查询主题]
### [子主题 1]
- 要点摘要(来源:[标题](url))
- 要点摘要(来源:[标题](url))
### [子主题 2]
- ...
---
**来源列表**
1. [标题](url) — 简述
2. [标题](url) — 简述
Step 4 — 后续操作
搜索结果展示后,提供后续选项:
- "要我读取某个链接的完整内容吗?" → 转入 Fetch Mode
- "要保存到知识库吗?" → 引导用户触发知识管理技能
- 用户可继续追问以缩小或扩大搜索范围
Fetch Mode
从 URL 提取干净内容并进行结构化分析。
Step 1 — 提取内容
按优先级尝试,前一个失败(报错、返回空、内容 < 100 字符)时自动降级:
1. crwl <url> -o md-fit ← 首选,支持 JS 渲染
2. agent-browser open <url> → snapshot → get text ← 最终手段
提取成功后记录使用了哪个工具,便于透明告知用户。
工具调用细节参见 references/tool-catalog.md。
Step 2 — 结构化分析
根据内容类型选择性应用分析维度。详细模板参见 references/analysis-template.md。
| 内容类型 | 适用维度 |
|---|---|
| 文章、评论、论文 | 全部五维(文本解构 → 概念提炼 → 批判审视 → 思想深化 → 实践转化) |
| 新闻、产品页 | 文本解构 + 概念提炼 + 实践转化 |
| 教程、技术文档 | 文本解构 + 概念提炼 + 实践转化 |
| 数据页、API 文档、参考表 | 跳过分析,直接呈现提取内容 |
Step 3 — 输出
两种输出模式:
独立模式(用户直接使用时):
## [页面标题](url)
**作者**: xxx | **日期**: xxx | **字数**: xxx
### 摘要
一段话总结。
### 分析
[按 analysis-template.md 输出适用维度]
### 关键要点
- 要点一
- 要点二
- 要点三
分析输出后,主动提示:"要保存到知识库吗?" 若用户同意,引导触发知识管理技能的保存流程。
集成模式(被其他技能委托调用时):
以自然语言输出以下信息块,供调用方直接消费(不要输出 JSON):
- 页面标题和原始 URL
- 一句话摘要
- 关键要点(要点列表)
- 五维分析(按适用维度输出)
- 完整正文(提取的干净 markdown 全文)
- 提取的实体:提到的工具/软件、股票/公司、人物(姓名+身份)、书籍/论文/资源
降级策略
当某个工具不可用时的处理方式:
| 工具不可用 | 影响 | 替代方案 |
|---|---|---|
| crwl | 无法提取内容 | 降级到 agent-browser |
| MCP 搜索 | 搜索来源减少 | 用 WebSearch 处理所有查询 |
| ctx7 | 无库文档搜索 | 用 WebSearch + site:xxx 定向搜索 |
| agent-browser | 无法处理 JS 重度页面 | 告知用户,提取失败 |
| 全部搜索工具 | 无法搜索 | 告知用户,建议直接提供 URL |
不要因为某个工具失败就中断流程——始终尝试下一个降级方案,直到全部耗尽才告知用户。
集成协议
本技能可被其他技能委托调用。调用方在自己的 SKILL.md 中指定"委托 search-and-fetch"即可。
被委托时的行为
- 按调用方指定的模式(Search/Fetch)执行
- 使用集成模式输出格式
- 不直接与用户交互后续问题(由调用方处理)
- 如果内容提取完全失败,返回失败标记和原因,由调用方决定如何告知用户
More from zhuxining/skills
股票分析
提供获取用户自选分组(LongPort)、股票市场数据(LongPort + AkShare)、技术指标计算(ta-lib)的技能。分析数并与用户研究交易策略,形成买卖点建议,并可做回测、寻优与报告输出。
16obsidian-knowledge
指导 Agent 助理如何在共享的 MyObsidian vault 中进行知识管理。当需要创建、整理、检索笔记,维护每日笔记,管理 _AgentSpace 知识库,或将已提取的网页内容保存到知识库时使用。触发关键词:记录、笔记、整理、归档、每日、任务、保存到知识库、知识、术语、记下来、记住、审计知识库。
11web-artifacts-builder
Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
5pdf
Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.
4canvas-design
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
4pptx
Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks
3