web-search-pro

Review·Scanned 2/19/2026

Provides a multi-engine CLI web search and content extractor for AI agents. It reads API keys (TAVILY_API_KEY, EXA_API_KEY, SERPER_API_KEY, SERPAPI_API_KEY), instructs running node {baseDir}/scripts/search.mjs, and calls external endpoints such as https://api.tavily.com/search and https://api.exa.ai/search.

from clawhub.ai·v57af8e9·24.4 KB·0 installs
Scanned from 1.0.0 at 57af8e9 · Transparency log ↗
$ vett add clawhub.ai/zjianru/web-search-proReview findings below

Web Search Pro

Multi-engine web search with full parameter control for AI agents. A precision supplement to OpenClaw's built-in web_search (Brave/Perplexity), providing domain filtering, deep search, news mode, date ranges, and content extraction that the built-in search does not support.

多引擎精细化网络搜索,为 AI Agent 设计。 作为 OpenClaw 内置 web_search(Brave/Perplexity)的精细化补充,提供域名过滤、 深度搜索、新闻模式、日期范围、内容提取等内置搜索不支持的能力。 配置一个或多个 API Key,自动选择最优引擎。

Engines / 引擎

EngineStrengthsFree TierAPI Key Env
TavilyAI-optimized, best answer quality, full filters, extract1000/monthTAVILY_API_KEY
ExaSemantic/neural search, deep research$10 creditEXA_API_KEY
SerperReal Google SERP, best news coverage100/monthSERPER_API_KEY
SerpAPIMulti-engine (Google/Bing/Baidu/Yandex/DuckDuckGo)250/monthSERPAPI_API_KEY

Auto-Select Priority / 自动选择优先级

When --engine is not specified, the skill picks the best available engine:

Query TypePriorityReason
DefaultTavily > Exa > Serper > SerpAPITavily has best AI answer + full filters
--deepTavily > ExaBoth have dedicated deep search modes
--newsSerper > TavilyGoogle News has widest coverage
--include-domainsTavily > Exa > Serper > SerpAPITavily/Exa have native domain filters
--search-engine baiduSerpAPIOnly SerpAPI supports Baidu/Yandex
Chinese queriesSerpAPI (Baidu) > SerperBaidu has better Chinese results

Search / 搜索

# Basic search (auto-select engine)
node {baseDir}/scripts/search.mjs "query"

# Force specific engine
node {baseDir}/scripts/search.mjs "query" --engine tavily

# Domain filtering (only search specific sites)
node {baseDir}/scripts/search.mjs "query" --include-domains "github.com,stackoverflow.com"

# Exclude domains
node {baseDir}/scripts/search.mjs "query" --exclude-domains "pinterest.com,quora.com"

# Date range (absolute)
node {baseDir}/scripts/search.mjs "query" --from 2026-01-01 --to 2026-02-09

# Time range (relative)
node {baseDir}/scripts/search.mjs "query" --time-range week

# Deep/advanced search
node {baseDir}/scripts/search.mjs "query" --deep

# News search
node {baseDir}/scripts/search.mjs "query" --news --days 7

# Multi-engine: Baidu search
node {baseDir}/scripts/search.mjs "query" --engine serpapi --search-engine baidu

# More results
node {baseDir}/scripts/search.mjs "query" -n 10

# JSON output (for programmatic use)
node {baseDir}/scripts/search.mjs "query" --json

Extract / 内容提取

Extract readable content from URLs (Tavily Extract or Exa livecrawl):

node {baseDir}/scripts/extract.mjs "https://example.com/article"
node {baseDir}/scripts/extract.mjs "url1" "url2" "url3"
node {baseDir}/scripts/extract.mjs "url" --engine exa
node {baseDir}/scripts/extract.mjs "url" --json

All Options / 全部参数

OptionDescriptionEngines
--engine <name>Force engine: tavily|exa|serper|serpapiall
-n <count>Number of results (default: 5)all
--deepDeep/advanced search modetavily, exa
--newsNews search modetavily, serper, serpapi
--days <n>Limit news to last N daystavily
--include-domains <d,...>Only search these domainsall (native: tavily, exa)
--exclude-domains <d,...>Exclude these domainsall (native: tavily, exa)
--time-range <range>day|week|month|yearall
--from <YYYY-MM-DD>Results after this dateall
--to <YYYY-MM-DD>Results before this dateall
--search-engine <name>SerpAPI sub-engine: google|bing|baidu|yandex|duckduckgoserpapi
--country <code>Country code (us, cn, de...)serper, serpapi
--lang <code>Language code (en, zh, de...)serper, serpapi
--jsonRaw JSON outputall

Setup / 配置

Add API keys to your environment (e.g., ~/.openclaw/.env):

# Configure at least one (recommended: Tavily)
TAVILY_API_KEY=tvly-xxxxx        # https://tavily.com (1000 free/month)
EXA_API_KEY=exa-xxxxx            # https://exa.ai ($10 free credit)
SERPER_API_KEY=xxxxx             # https://serper.dev (100 free/month)
SERPAPI_API_KEY=xxxxx            # https://serpapi.com (250 free/month)

Notes / 说明

  • At least one API key must be configured
  • Domain filtering via --include-domains/--exclude-domains works natively on Tavily and Exa; on Serper/SerpAPI it's implemented via site: query operators
  • --deep mode uses more API credits (Tavily: 2x, Exa: varies)
  • Extract only works with Tavily and Exa
  • All output is Markdown-formatted for AI agent consumption; use --json for programmatic access