Curated Search Skill 是一款面向开发者的本地化技术文档全文检索工具,其核心用法围绕"白名单索引+本地搜索"架构展开。用户首先通过配置 config.yaml 定义允许爬取的权威域名(如 MDN、Python Docs、Node.js 文档等),运行爬虫构建本地 BM25 索引后,即可通过 curated-search.search 工具进行毫秒级全文检索。工具支持按域名过滤、相关性评分阈值控制(min_score)和分页查询,返回包含标题、摘要、URL 和评分的结构化结果,完全离线运行无需联网。
该技能的显著优点在于权威性与纯净性的双重保障。通过严格的域名白名单机制,彻底过滤了传统搜索引擎的广告、SEO 垃圾和低质量内容,确保开发者获取的都是官方技术文档。同时,纯本地索引架构意味着用户的搜索行为、查询关键词和浏览记录完全保留在本地 data/ 目录,不存在隐私泄露风险。安全性方面,代码通过了严格的 SSRF 防护审查,内置 BLOCKED_IP_PATTERNS 自动阻断对私有地址(RFC 1918、回环地址)的访问,且遵守目标站点的 robots.txt 协议,避免对源站造成压力。
然而,该技能也存在一定局限性。首先是时效性约束:索引需要定期手动重建(通过 npm run crawl),无法获取文档网站的实时更新,适合查阅稳定 API 文档而非追踪最新技术动态。其次是范围限制:仅支持白名单内的技术文档站点,无法覆盖 Stack Overflow、GitHub Issues 等社区讨论内容。此外,技能依赖 Node.js 运行时环境,且索引文件可能占用较大存储空间(取决于配置的 max_documents),对轻量级使用场景不够友好。
该技能最适合离线开发环境、企业内部知识库以及对隐私敏感的开发者。特别适合需要频繁查阅官方文档但网络环境受限(如内网开发、差旅场景)的工程师,以及希望建立团队统一技术文档检索入口的 DevOps 团队。对于教育场景,教师可构建特定技术栈(如 Python + React)的精选文档集,避免学生被网络信息干扰。
使用风险方面,尽管安全评级为 A 级,仍需注意以下常规风险:一是爬虫行为风险,若配置的 crawl.depth 或 delay 不合理,可能对目标文档站点造成过大负载,建议遵守各站点的爬取频率限制;二是存储与性能,大规模索引(数万文档)可能占用数百 MB 磁盘空间,搜索时内存占用随索引大小增长;三是依赖维护,技能依赖 minisearch、jsdom 等 npm 包,需定期更新以修复潜在 CVE 漏洞;四是配置安全,config.yaml 中的域名白名单若被篡改加入恶意站点,可能导致爬虫访问危险 URL,建议对配置文件进行权限管控(如设为只读)。