--- name: web-search description: 当任务需要联网检索、外部依据、最新技术知识、官方文档、GitHub 仓库、论文博客、标准、数据集、benchmark、许可证、价格、API 或工程实践依据时使用;适合代码生成前的技术选型、方案设计、内容生成、论文理解、工具库更新和其他 skill 需要外部依据支撑结论的场景。用户明确要求不联网时不要使用。 --- # web-search ## 技能定位 用于给代码开发、内容生成、方案设计、技术选型、论文理解、官方 API 使用、工具库更新、前沿博客和 benchmark 规则提供可追溯的外部依据。目标是弥补 Agent 的知识滞后,避免在外部事实可能变化时凭记忆回答。 本 skill 不绑定单一项目、单一技术栈或单一资料类型。它既服务学术论文,也服务工程实践、官方文档、作者仓库、release notes、数据集主页、RFC / 标准、供应商文档和社区高质量实践。 ## 触发场景 - 用户明确要求联网、检索、查资料、查论文、查官方文档、查 GitHub、查 benchmark 或查最新进展。 - 信息可能近期变化,例如模型版本、API、库用法、框架能力、许可证、价格、标准、论文结论、数据集规则、release notes 或供应商政策。 - 代码生成、技术选型、架构设计、内容生成或文档编写依赖外部事实。 - 另一个 skill 需要外部依据支撑结论,例如 `$knowledge-explainer` 需要解释最新论文、官方文档、benchmark、争议结论或现代 API。 - 用户问“现在主流怎么做”“有没有官方实现”“最新版本怎么用”“这个 benchmark 规则是什么”“这个库还推荐吗”。 ## 不触发场景 - 用户明确要求不联网、不检索或只基于本地材料回答。 - 本地源码、README、设计文档、测试日志已经足够回答,且问题不依赖最新外部信息。 - 纯文件整理、格式修复、已有代码解释、无外部事实依赖的一次性任务。 - 用户只要求本地 diff、当前实现、仓库内调用链或已有文档的总结。 ## 检索源优先级 优先使用一手来源,并按任务类型调整具体来源: 1. 官方文档、标准、RFC、供应商文档、官方 release notes。 2. 作者仓库、官方 GitHub、论文代码、数据集主页、benchmark 官方页面。 3. 一手论文、会议页面、作者主页、arXiv、OpenReview、ACL Anthology、主要会议或期刊页面。 4. 高质量技术博客、工程实践文章、项目 issue、维护者讨论、迁移指南。 5. 社区问答、论坛、社交媒体只作为补充,不能作为唯一依据。 不同项目可以替换具体来源类型,但不能降低“优先一手来源、二手来源只作补充”的原则。 ## 最小检索流程 1. 明确任务类型: - 官方 API / 库用法确认。 - 代码生成前技术选型。 - 论文、方法、benchmark 或数据集调研。 - 工程实践、架构方案或迁移策略对照。 - 许可证、价格、标准、兼容性或发布规则核对。 2. 拆关键词: - 用户原始中文问题。 - 英文关键词、同义词、论文术语、库名、版本名、接口名。 - 当前项目相关关键词,但不要把项目私有事实写成外部事实。 3. 优先查一手来源: - API / 库任务至少查官方文档或官方 release notes。 - 论文 / benchmark / 数据集任务至少查论文、会议页面、作者仓库或官方主页。 - 工程选型任务至少查官方文档、维护者仓库或权威迁移说明。 4. 对来源做可信度分层: - 明确哪些是已确认事实。 - 明确哪些是来源之间存在冲突的判断。 - 明确哪些是工程推断。 - 明确哪些仍需用户或真实环境验证。 5. 只把可靠来源纳入最终结论。若只能找到二手来源,必须说明“证据不足”,不能写成确定事实。 ## 输出结构 按任务需要裁剪,但默认包含: 1. `问题重述`:这次检索要解决什么决策或事实。 2. `检索关键词`:列出中文关键词和英文关键词。 3. `核心发现`:按官方规范、论文依据、工程实践、社区补充等来源类型分组。 4. `结论分层`: - 已确认事实。 - 来源冲突与取舍。 - 工程推断。 - 仍需真实环境验证的边界。 5. `项目落地点`:如果和当前项目相关,说明对模块、流程、接口、数据、测试、文档或设计取舍的影响;如果只是背景知识,明确说明不直接落代码。 6. `来源清单`:给出可点击链接,并标注来源类型、年份或更新时间。 ## 代码生成前的特别要求 当检索服务于代码生成、配置修改或架构决策时,必须先把结论转成工程约束: - 推荐使用哪个官方 API、库、协议、格式或实现路径。 - 不推荐什么做法,原因是什么,依据来自哪里。 - 当前项目的最小可行实现是什么。 - 哪些内容只能作为后续扩展,不能包装成当前已完成能力。 - 需要新增或更新哪些测试、smoke test、文档或验证证据。 - 如果来源和当前项目环境不完全匹配,说明差异和需要真实环境验证的边界。 ## 质量要求 - 不允许只写“网上说”“资料显示”这类不可追溯表达。 - 不允许只给二手转述;二手来源只能作为补充。 - 不允许把论文、博客或官方能力夸大成当前项目已实现。 - 涉及现代库、API、模型、标准、许可证、价格或 benchmark 时,必须核对最新官方来源。 - 若不同来源冲突,必须说明冲突点、取舍理由和仍需验证的部分。 - 若网页无法访问,说明访问限制,并改用可访问的一手来源或高质量来源。 - 输出外部依据时,必须区分已确认事实、冲突判断、工程推断和未验证边界。 ## 自检 输出前检查: 1. 是否满足触发条件,且用户没有要求不联网。 2. 是否至少优先使用了一手来源。 3. 是否给出可追溯链接,而不是泛泛转述。 4. 是否区分事实、冲突、推断和未验证边界。 5. 如果服务于代码生成,是否把外部结论转成最小工程约束和验证要求。 6. 是否没有把任何单一项目的私有路径、模块名、benchmark、trace 文件或测试命令写成通用模板事实。