乐于分享
好东西不私藏

AnySearch 使用说明:给 AI Agent 接上一层实时搜索能力

AnySearch 使用说明:给 AI Agent 接上一层实时搜索能力

一句话介绍

AnySearch 是一个面向 AI Agent 的实时搜索 Skill。它把通用网页搜索、垂直领域搜索、批量并行搜索、网页正文提取整合到一套跨平台 CLI 里,让 Agent 在需要查资料、核事实、读网页、找论文、查金融/安全/法律/代码等领域信息时,可以用统一方式获取外部信息。

它不需要额外安装 MCP Server,核心入口就是 Skill 自带的命令行脚本。

适合什么场景

AnySearch 适合这些任务:

  1. 查实时资料:新闻、产品信息、文档、公开网页。
  2. 事实核验:对一个说法做交叉检索。
  3. 读取网页全文:搜索结果不够时,直接提取 URL 正文为 Markdown。
  4. 垂直领域检索:金融、学术、代码、安全、法律、健康、旅行、社媒等。
  5. 多问题并行搜索:一次发起 2 到 5 个查询,减少反复等待。

简单说:如果你的 Agent 需要“现在去网上查一下”,AnySearch 就是可以优先考虑的工具层。

安装方式

如果你的 Agent 平台支持 Skill 市场,搜索 anysearch 并安装即可。

如果需要手动安装,可以从 GitHub 下载:

curl -L -o http://anysearch-skill.zip https://github.com/anysearch-ai/anysearch-skill/archive/refs/tags/v2.1.0.zip
unzip http://anysearch-skill.zip

然后把解压后的目录移动到你的 Agent Skill 目录,并重命名为 anysearch

常见位置示例:

# Claude Code
mv anysearch-skill-2.1.0 ~/.claude/skills/anysearch

# OpenCode
mv anysearch-skill-2.1.0 ~/.config/opencode/skills/anysearch

# 通用共享位置
mv anysearch-skill-2.1.0 ~/.agents/skills/anysearch

Codex 用户也可以通过 Skill 安装器从仓库安装:

install-skill-from-github --repo anysearch-ai/anysearch-skill --path . --name anysearch

安装后重启 Agent,让新的 Skill 被加载。

API Key 配置

AnySearch 支持匿名访问,但匿名模式有更低的速率限制和额度。更推荐配置 API Key。

申请地址:

https://anysearch.com/console/api-keys

配置方式一:在 Skill 目录创建 .env 文件:

ANYSEARCH_API_KEY=<your_api_key_here>

配置方式二:设置环境变量。

Linux/macOS:

export ANYSEARCH_API_KEY=<your_api_key_here>

Windows PowerShell:

$env:ANYSEARCH_API_KEY="<your_api_key_here>"

Key 的优先级为:

--api_key 参数 > .env 文件 > 系统环境变量 > 匿名访问

出于安全考虑,不建议把 API Key 直接粘贴到聊天窗口里。更好的方式是写入 .env 或系统环境变量。

运行时选择

AnySearch 自带多种 CLI:

Python    scripts/anysearch_cli.py
Node.js   scripts/anysearch_cli.js
PowerShell scripts/anysearch_cli.ps1
Bash      scripts/anysearch_cli.sh

推荐优先级:

Python > Node.js > Shell

Python CLI 需要 Python 3.6+ 和 requests

pip install -r requirements.txt

Node.js CLI 不需要额外依赖。

安装后可以先运行:

python <skill_dir>/scripts/anysearch_cli.py doc

如果你的系统使用 python3

python3 <skill_dir>/scripts/anysearch_cli.py doc

也可以用 Node.js:

node <skill_dir>/scripts/anysearch_cli.js doc

doc 命令是本地说明命令,不发起网络请求,适合用来确认当前 CLI 是否可用。

建议写入 runtime.conf

为了让 Agent 后续不用每次重新探测运行时,可以在 Skill 目录写入 runtime.conf

Runtime: Python
Command: python <skill_dir>/scripts/anysearch_cli.py

如果系统使用 python3

Runtime: Python
Command: python3 <skill_dir>/scripts/anysearch_cli.py

后续 Agent 可以直接读取这个配置,使用 Command 对应的命令发起搜索、批量搜索和网页提取。

四个核心命令

AnySearch 的常用命令主要有四个:

search           单次搜索
get_sub_domains  查询垂直领域的子域和参数
batch_search     并行批量搜索
extract          提取网页正文为 Markdown

下面用 <cmd> 代表你的实际运行命令,例如:

python <skill_dir>/scripts/anysearch_cli.py

1. 通用搜索:search

最简单的用法:

<cmd> search "quantum computing breakthroughs 2025" --max_results 5

--max_results 支持 1 到 10,默认 10。

适合通用网页问题,例如:

<cmd> search "OpenAI latest model release" --max_results 5

对于纯百科类问题,也可以直接用通用搜索:

<cmd> search "Who wrote Hamlet" --max_results 3

2. 垂直领域搜索:getsubdomains + search

AnySearch 的重要特点是垂直领域检索。对于金融、学术、法律、代码、安全、健康、旅行、社媒等问题,不建议只用普通网页搜索,而是先查询对应领域有哪些 sub_domain

例如查询金融领域:

<cmd> get_sub_domains --domain finance

然后根据返回结果选择合适的子域,再搜索:

<cmd> search "AAPL" --domain finance --sub_domain finance.quote --sdp type=stock,symbol=AAPL,cn_code= --max_results 5

这里的 --sdp 是 subdomainparams,支持两种写法。

key=value 写法:

--sdp type=stock,symbol=AAPL,cn_code=

JSON 写法:

--sdp '{"type":"stock","symbol":"AAPL","cn_code":""}'

注意:如果 getsubdomains 返回某个参数是 required,就必须传入。即使没有适用值,也要传空值,例如:

cn_code=

3. 批量并行搜索:batch_search

当你有多个独立问题时,可以用 batch_search 一次发起 2 到 5 个搜索。

简单写法:

<cmd> batch_search --query "AAPL stock price" --query "MSFT earnings" --query "GOOG market cap" --domain finance --sub_domain finance.quote --sdp type=stock,symbol=,cn_code=

更灵活的 JSON 写法:

<cmd> batch_search --queries '[{"query":"AAPL","sub_domain_params":"type=stock,symbol=AAPL,cn_code="},{"query":"MSFT","sub_domain_params":"type=stock,symbol=MSFT,cn_code="}]' --domain finance --sub_domain finance.quote

也可以混合通用搜索和垂直搜索:

<cmd> batch_search --queries '[{"query":"quantum computing"},{"query":"QBTS","domain":"finance","sub_domain":"finance.quote","sub_domain_params":"type=stock,symbol=QBTS,cn_code="}]'

这种混合模式适合不确定该走普通搜索还是垂直搜索的场景。

4. 网页正文提取:extract

搜索结果通常只有摘要。如果需要读取网页全文,可以用 extract

<cmd> extract "https://example.com/news/article-12345"

或:

<cmd> extract --url "https://example.com/news/article-12345"

输出已经是 Markdown。不要额外加 --format markdown--format json 或 --markdown,这些不是 extract 的有效参数。

推荐决策流程

可以用这个简单规则:

  1. 纯百科、常识类问题:直接 search
  2. 有领域属性的问题:先 getsubdomains,再用对应 domain 和 sub_domain 搜索。
  3. 不确定属于哪类:用 batch_search 做混合检索。
  4. 搜索结果需要深读:对目标 URL 使用 extract

例如:

问题:AAPL 最新股价和相关新闻
流程:get_sub_domains --domain finance
search --domain finance --sub_domain finance.quote
必要时 extract 新闻 URL
问题:某个 CVE 漏洞影响范围
流程:get_sub_domains --domain security
search --domain security --sub_domain <返回的安全子域>
extract 权威公告或厂商页面
问题:React hooks 官方文档和实践
流程:get_sub_domains --domain code
search --domain code --sub_domain code.doc

社媒搜索

AnySearch 也提供 social_media 垂直领域,适合公开社媒内容发现:

<cmd> get_sub_domains --domain social_media

然后选择返回的子域:

<cmd> search "product launch response on X and Reddit" --domain social_media --sub_domain <returned-sub-domain> --max_results 5

需要注意:AnySearch 适合做公开发现和跨来源上下文检索。如果你需要账号级别的 X/Twitter 操作,例如精确读取推文回复、导出关注者、发帖、回复、监听 webhook,则应使用专门的认证工具。

安全与隐私提醒

使用 AnySearch 发起搜索时,搜索查询、提取的 URL 和 API Key 会发送到:

https://api.anysearch.com

因此,不建议把密码、个人敏感信息、商业机密等内容放进查询里,除非你确认可以信任服务提供方及其处理方式。

doc 命令是本地命令,不会发起网络请求。

一个完整示例

假设我要查 “AAPL 当前市场信息,并读取一篇相关新闻全文”。

第一步,查询金融子域:

<cmd> get_sub_domains --domain finance

第二步,搜索股票信息:

<cmd> search "AAPL" --domain finance --sub_domain finance.quote --sdp type=stock,symbol=AAPL,cn_code= --max_results 5

第三步,搜索相关新闻:

<cmd> search "AAPL latest earnings news" --domain finance --sub_domain http://finance.news --max_results 5

第四步,提取目标文章正文:

<cmd> extract "https://example.com/aapl-news"

这样 Agent 就能得到结构化搜索结果和更完整的网页正文,而不是只依赖模型记忆或搜索摘要。

小结

AnySearch 的价值不在于“又多了一个搜索命令”,而在于它把 Agent 常见的信息检索动作标准化了:

先判断问题类型
再选择通用搜索或垂直领域搜索
必要时批量并行
最后提取网页全文

对于经常需要查资料、做事实核验、读网页、找论文、看市场信息或处理代码/安全/法律领域问题的 Agent 工作流来说,AnySearch 可以作为一个轻量但实用的实时搜索层。