mcpField
P
pi-web-search

pi-web-search

github.com/davidondrej生产力4.2k200 次安装今天更新
代码仓库

关于 pi-web-search

pi-web-search 是用于网页与代码调研的技能,可搜索并附带引用、抓取内容。它规定了避免交互式弹窗的搜索设置,并说明搜索服务的回退顺序。

主要功能

  1. 01带引用的网页搜索
  2. 02Exa 代码上下文搜索
  3. 03抓取网页、PDF、GitHub 和视频
  4. 04读取被截断的完整搜索内容

适用场景

  1. 01跨网页来源调研主题
  2. 02查找库和 API 的代码上下文
  3. 03提取 PDF 或视频字幕文本

MCP 相关

该技能说明网页搜索通过 Exa MCP 执行,并可在 Exa、Perplexity 和 Gemini 之间回退。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/davidondrej/skills --skill pi-web-search

安装后在 Claude Code 中输入/pi-web-search确认已加载。

详细介绍

网页搜索

pi-web-access 软件包已全局安装。通过 Exa MCP 实现零配置(无需 API 密钥),并按 Exa → Perplexity → Gemini 的顺序回退。

关键:始终传入 workflow: "none"

每次调用 web_search 都必须包含 workflow: "none"。这会跳过交互式浏览器整理器弹窗(用户不希望它打开)。没有例外——无论是单个查询还是批量 queries,始终设置 workflow: "none"。

web_search({ queries: ["query 1", "query 2"], workflow: "none" })

工具

  • web_search — 搜索网页;返回带引文的综合答案。每轮可以多次调用。始终传入 workflow: "none"。
  • code_search — 无需密钥的 Exa 代码上下文搜索。查找库/API/代码时使用此工具,而非通用的 web_search。
  • fetch_content — 获取 URL → Markdown;支持 PDF、YouTube、GitHub。
  • get_search_content — 超过 30k 个字符的大型页面会在响应中被截断,但完整内容会被保存;调用此工具可按需获取其余内容,避免占用过多上下文。

fetch_content 具体说明

  • GitHub URL 会被克隆,而非抓取 — 你会获得实际文件和可通过 read/bash 浏览的本地路径(私有仓库需要 gh CLI)。开发工作时使用此工具。
  • PDF → 自动提取为 ~/Downloads/ 中的 Markdown,可分段阅读(仅文本,不含 OCR)。
  • YouTube/视频 → 完整的原始转录文本和帧提取。需要 GEMINI_API_KEY(非零配置);帧提取还需要 ffmpeg/yt-dlp。

路由——匹配用户的措辞

始终使用 web_search 工具。这些次数是硬性最低要求——回答前先统计查询次数,不得少于要求:

  • “web search” → 至少 2 个查询,采用不同关键词/角度,然后综合结果。
  • “extensive web research” → 至少 4 个查询,采用截然不同的关键词和角度。
  • “deep research” → 至少 8 个查询,采用截然不同的关键词和角度,分 2–3 个连续批次运行(每批之后调整角度),尽可能深入了解主题。

一次批量 web_search 调用中,queries[] 里的每个查询都计入总数。如果第一批未达到最低要求,应在综合结果前再发起一批。

带 URL 的排名结果——DeepAPI 网页搜索

web_search 会返回综合答案。需要排名后的来源列表本身——用于引用、比较或抓取 URL 时,请使用 DeepAPI。如果 Exa → Perplexity → Gemini 链路失败,也应采用此路径。

[ -n "$DEEPAPI_API_KEY" ] || . ~/.deepapi/env
curl -s --max-time 60 "https://deepapi.co/v1/search/web" \
  -H "Authorization: Bearer $DEEPAPI_API_KEY" -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"query": "your search terms", "maxResults": 5, "maxCostUsd": "0.05"}'

结果位于 .output(每项包含标题、URL、摘要)。查询长度应少于 500 个字符。完整详情:deepapi 技能。

评论

支持 Markdown