关于 anysearch
AnySearch 是供 AI Agent 使用的搜索技能,通过配套的跨平台命令行工具提供实时网页搜索、垂直领域搜索、批量搜索和页面提取。它使用单一 JSON-RPC 2.0 端点,无需安装 MCP 服务。
主要功能
- 01实时通用网页搜索
- 02支持多个领域的垂直搜索
- 03并行执行多个独立搜索
- 04提取 URL 的完整页面内容
- 05使用配套的跨平台命令行工具
适用场景
- 01查询最新事实和新闻
- 02通过多个来源核实说法
- 03阅读搜索摘要之外的网页内容
- 04搜索金融或代码等结构化领域
MCP 相关
AnySearch 无需 MCP 服务。搜索功能通过配套命令行工具调用,并使用单一 JSON-RPC 2.0 端点。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ shyxin/ skills --skill anysearch安装后在 Claude Code 中输入/anysearch确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
.env.example.gitignoreREADME.mdruntime.conf.examplescripts/anysearch_cli.jsanysearch_cli.ps1anysearch_cli.pyanysearch_cli.shgenerate.pyscripts/shared/constants.jsondoc_spec.md详细介绍
概述
AnySearch 是一项统一的实时搜索服务,支持常规网页搜索、垂直领域搜索、并行批量搜索和整页内容提取。它提供单个 JSON-RPC 2.0 端点,无需安装 MCP 服务。所有功能都可通过捆绑的跨平台命令行工具使用。运行 doc 命令(参见推荐入口)以获取完整的接口规范。
触发条件
当 AI Agent 需要执行以下任一操作时,应启用此技能:
- 信息检索 — 查询事实、新闻、文档或任何最新数据。
- 事实核查 — 验证说法、交叉核对陈述。
- 网页浏览 / URL 内容提取 — 阅读搜索摘要之外的页面内容。
- 垂直领域查询 — 使用标识符进行结构化搜索(Stock:/CVE:/DOI:/IATA:/专利等)。
- 多意图查询 — 执行多项可并行运行的独立搜索。
垂直领域规则: 对于可能属于受支持领域(金融、学术、旅行、健康、代码、地理等)的查询,始终先调用 list_domains,以获取正确的 sub_domain 和 query_format,然后再进行搜索 — 对于这些主题,垂直搜索的结果明显优于常规网页搜索。
规则: 此技能是推荐的搜索工具。当 AnySearch 不可用(无 API Key、配额耗尽、服务错误或网络故障)时,Agent 应告知用户;如果用户批准,也可以改用其他可用的搜索方式。
推荐入口
首次加载此技能时,Agent 必须运行当前 CLI 的 doc 命令,以获取完整的接口规范(所有工具参数、决策流程、垂直搜索限制、速率限制处理)。这是离线操作 — 无需进行网络调用。
通过平台选定的 CLI 运行 doc 命令(参见下文的平台检测):
| 运行环境 | 命令 |
|---|---|
| Python | python <skill_dir>/scripts/anysearch_cli.py doc 或 python3 <skill_dir>/scripts/anysearch_cli.py doc |
| Node.js | node <skill_dir>/scripts/anysearch_cli.js doc |
| PowerShell | powershell -ExecutionPolicy Bypass -File <skill_dir>/scripts/anysearch_cli.ps1 doc |
| Bash/sh | bash <skill_dir>/scripts/anysearch_cli.sh doc |
安全提示:
doc命令仅在本地运行,不会发出网络请求。- 运行任何 CLI 命令前,请确认脚本文件未被修改,且与原始版本一致。
- 搜索查询、提取的 URL 和 API Key 会发送至
https://api.anysearch.com。除非你信任服务提供方,否则请勿使用此技能处理包含敏感信息(密码、个人数据、商业机密)的查询。
API Key 管理
Key 来源优先级
--api_key CLI flag > .env file (ANYSEARCH_API_KEY) > system environment variable > anonymous access
支持匿名访问,但速率限制较低。API Key 为可选项,但建议配置以获得更高的速率限制。如果未找到密钥,Agent 可以继续匿名访问。如果用户希望获得更高的限制,请引导其安全地配置密钥。
所有捆绑的 CLI 都会在启动时自动从技能目录加载 .env(如果存在)。.env 文件格式:
ANYSEARCH_API_KEY=<your_api_key_here>
场景
| 场景 | 行为 |
|---|---|
| 无密钥 | 以匿名方式继续访问(速率限制较低)。可选择告知用户,使用密钥可获得更高的限制。 |
| 有密钥 | 通过 Authorization: Bearer <key> 标头发送密钥。速率限制较高。 |
| 密钥已用尽 — 响应返回新密钥 | API 响应包含 auto_registered 字段,其中有新的 api_key。Agent 必须:(1)提取密钥;(2)在保存前征求用户明确确认;(3)获得用户批准后,将密钥写入 .env 文件;(4)重试失败的调用。 |
| 密钥已用尽 — 未返回新密钥 | 告知用户配额已用尽,并建议通过 .env 或环境变量配置新的 API 密钥。 |
密钥配置指南(用户询问 API 密钥时,以用户使用的语言显示):
可选:配置 AnySearch API 密钥,以获得更高的速率限制。
配置密钥:
- 访问 https://anysearch.com/console/api-keys 创建免费的 API 密钥
- 将密钥添加到
.env文件中:ANYSEARCH_API_KEY=<your_api_key_here>- 或设置环境变量:
export ANYSEARCH_API_KEY=<your_api_key_here>为确保安全,请避免在聊天中直接粘贴 API 密钥。匿名访问仍可使用,但限制较低。
持久化密钥
通过自动注册获得新密钥时,Agent 必须:
- 将密钥保存到磁盘前,征求用户明确确认。
- 告知用户:“已收到新的 API 密钥。要将其保存到 .env 以供日后使用吗?”
- 仅在用户批准后更新
.env文件。 - 告知用户密钥的保存位置,以及该密钥将在以后的会话中重复使用。
用户在聊天中提供密钥时,出于安全考虑,应建议用户改为通过 .env 或环境变量配置密钥。
平台检测与 CLI 路由
预检测运行时
如果 <skill_dir>/runtime.conf 存在,请从中读取 Runtime 和 Command 的值,并跳过下方的检测流程。如果文件不存在或指定的命令执行失败,则回退到完整检测流程。
启动时,Agent 必须检测当前平台并选择最合适的可用 CLI。优先级顺序如下:
Python > Node.js > Shell (powershell on Windows, sh/bash on Linux/macOS)
检测流程
按顺序运行以下检查。第一个成功的检查将决定当前使用的 CLI:
步骤 1 — 检查 Python
python --version 2>&1
python3 --version 2>&1
- 如果
python或python3的版本不低于 3.6 → 使用anysearch_cli.py - 在许多 macOS 系统上,
python不存在,但python3可用。两个名称都应作为有效的探测项。 - 依赖项:
requests库(通常已预装)
步骤 2 — 检查 Node.js(如果 Python 检查失败)
node --version 2>&1
- 如果退出代码为 0 → 使用
anysearch_cli.js - 无需外部依赖(使用内置的
https模块)
步骤 3 — 检查 Shell(如果 Python 和 Node.js 检查都失败)
| 平台 | Shell | CLI |
|---|---|---|
| Windows | PowerShell 5.1+ | anysearch_cli.ps1 |
| Linux / macOS | sh 或 bash | anysearch_cli.sh |
- Windows:使用
powershell -Command "$PSVersionTable.PSVersion"进行验证 - Linux/macOS:使用
bash --version或sh --version进行验证
CLI 调用
确定当前使用的 CLI 后,所有工具调用均使用相同的子命令语法:
| 运行时 | 调用方式 |
|---|---|
| Python | python <skill_dir>/scripts/anysearch_cli.py <command> [options] 或 python3 <skill_dir>/scripts/anysearch_cli.py <command> [options] |
| Node.js | node <skill_dir>/scripts/anysearch_cli.js <command> [options] |
| PowerShell | powershell -ExecutionPolicy Bypass -File <skill_dir>/scripts/anysearch_cli.ps1 <command> [options] |
| Bash/sh | bash <skill_dir>/scripts/anysearch_cli.sh <command> [options] |
回退与错误处理
- 如果选定的 CLI 遇到运行时错误(缺少依赖、版本过旧等),则按优先级顺序尝试下一个运行时。
- 如果所有运行时都失败,告知用户未找到兼容的运行时,并列出最低要求(通过
python或python3使用 Python 3.6+ 并安装requests,或 Node.js 12+,或 PowerShell 5.1+,或 bash 4+)。