Install
openclaw skills install @jwestburg/tavily-search-native-nodeMinimal Tavily web search for OpenClaw - native Node.js, zero dependencies, small audit surface. Use when the user asks to search the web, look up current information, find news, research a topic, check recent events, compare options, or get real-time data. Returns summarized, AI-optimized results with source citations. Requires TAVILY_API_KEY in the process environment. NOT for scraping individual URLs; use the platform URL-fetch/read tool when available. For caching, raw content, extract endpoint, and usage stats, use a separately reviewed Pro Tavily skill/package when available.
openclaw skills install @jwestburg/tavily-search-native-nodeMinimal, auditable Tavily web search.
Version: 1.0.11 / publishable utility.
Native Node.js. Zero dependencies. Small runtime footprint and small audit surface.
TAVILY_API_KEY from the process environment only.~/.openclaw/.env.https://api.tavily.com/search; tests may override the endpoint with TAVILY_TEST_ENDPOINT for local no-credit regression checks only.Trigger phrases: "search for", "look up", "what's the latest on", "find recent news about", "research", "compare", "current info on".
Use this when:
Do NOT use this when:
Want caching, raw full-page content, extract endpoint, or usage stats? Use a separately reviewed Pro Tavily skill/package when available.
The script is in scripts/search.mjs.
Requirement: Node.js 18+ for native fetch and AbortController support. Node.js 21+ is recommended when clean stderr is important because older Node releases may emit native-fetch experimental warnings.
Basic search:
node "<skill-dir>/scripts/search.mjs" "your query here"
News search (past ~7 days by default, freshness-biased):
node "<skill-dir>/scripts/search.mjs" --topic news "software release notes"
Deeper research (costs 2 credits per call):
node "<skill-dir>/scripts/search.mjs" --depth advanced "AI agents market analysis 2026"
(Where <skill-dir> is typically workspace/skills/tavily-search-native-node/.)
| Flag | Values | Default | Purpose |
|---|---|---|---|
--topic | general | news | general | news biases to fresh articles |
--depth | basic | advanced | basic | advanced = deeper analysis, 2x credits |
--max | 1-20 | 5 | How many results to return |
--days | 1-365 | 7 (news only) | Age window for news topic |
--include | comma list | (none) | Only these domains, e.g. github.com,stackoverflow.com |
--exclude | comma list | (none) | Skip these domains |
--json | flag | off | Return raw JSON instead of formatted output |
--help | flag | - | Show help |
Optional environment variable: TAVILY_TIMEOUT_MS sets the network timeout in milliseconds, from 1000 to 120000; default is 30000.
# Compare frameworks, GitHub+SO only
node "./scripts/search.mjs" --include "github.com,stackoverflow.com" "React Native vs Flutter 2026"
# Recent news, 10 results, last 14 days
node "./scripts/search.mjs" --topic news --max 10 --days 14 "small business AI adoption"
# Deep research with JSON for programmatic use
node "./scripts/search.mjs" --depth advanced --json "small business VPN options"
Human-readable by default:
JSON mode (--json) dumps the full Tavily response as-is, useful for piping into follow-up scripts.
Requires TAVILY_API_KEY in the process environment.
If it is not set, the script exits with a clear error message before making a network call.
Get a key: https://app.tavily.com - free tier was 1,000 API credits/month as of 2026-05; verify current pricing and limits before relying on them. Credit usage depends on request type (for this skill, basic search is 1 credit and advanced search is 2 credits as of 2026-05).
--depth basic = 1 credit per search--depth advanced = 2 credits per searchTAVILY_TIMEOUT_MS only when a different operator-approved timeout is needed.When invoking this skill, prefer batching:
basic depth unless the user explicitly asks for a deep dive--include to scope to trusted domains when appropriatehttps://api.tavily.com/searchapi.tavily.com; tests may use local 127.0.0.1 loopback via TAVILY_TEST_ENDPOINTSanitized representative output for eval/review checks:
$ node scripts/search.mjs --max 2 "example AI operations news"
warn: using TAVILY_API_KEY from process environment
Query: example AI operations news
Topic: general - Depth: basic - Results: 2/2
Answer:
Recent AI operations coverage emphasizes governed agent workflows, deployment safety, and measurable business outcomes. Teams are comparing lightweight automation with more advanced agent orchestration, while continuing to prioritize auditability, permissions, and source-backed research.
Results:
1. Example AI Operations Trends 2026
https://example.com/ai-operations-trends
A summary of current AI operations themes, including governance, rollout patterns, and practical adoption lessons for teams.
2. Agent Workflow Safety Checklist
https://example.org/agent-workflow-safety
A practical checklist for reviewing agent permissions, human approval gates, logging, and rollback before production use.
- elapsed 842ms - api 0.78s
JSON mode (--json) returns Tavily's raw JSON response as formatted JSON. The API key value is never printed.
This skill is intentionally small and dependency-free for auditability. Before publishing or updating, run node --check scripts/search.mjs, node scripts/search.mjs --help, and a no-key smoke test with a temporary home directory to verify clear credential errors without spending API credits.
1.0.11: ClawHub publication/version refresh after public-readiness review; no runtime behavior change.1.0.10: Clarify that production network calls go only to api.tavily.com while tests may use local 127.0.0.1 loopback via TAVILY_TEST_ENDPOINT; no runtime behavior change.1.0.9: Extend timeout coverage through response body reads, document Node.js 18+ runtime requirement, and add populated-key non-leak regression coverage.1.0.8: Add offline tests, bounded TAVILY_TIMEOUT_MS network timeout, and stronger sensitive-query privacy guidance.1.0.7: Clarify Tavily free-tier wording as API credits/month rather than searches/month.1.0.6: Reject unknown flags instead of folding them into the query, wrap top-level async failures, handle response-read errors cleanly, and clarify stdout query visibility vs. no file logging.1.0.5: Add frontmatter version metadata, polish env-key status wording, and include sanitized representative success output for eval review.1.0.4: Public package wording and metadata cleanup; no runtime behavior change.Last reviewed: 2026-05-31