Liang Tavily Search 1.0.1
Web search using Tavily's LLM-optimized API. Returns relevant results with content snippets, scores, and metadata.
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 0 · 25 · 1 current installs · 1 all-time installs
MIT-0
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
Name/description, required binary (node), and required env var (TAVILY_API_KEY) align with a simple Node script that calls https://api.tavily.com/search. The script only talks to the Tavily API and formats results for display.
Instruction Scope
SKILL.md and the script are narrowly scoped to running the search script and using the Tavily API. Note: the script supports a --raw-content option which requests full page content from Tavily; that increases the amount of user data sent to the external API when used. Otherwise the instructions do not read unrelated files or other env vars.
Install Mechanism
No install spec — instruction-only plus a small included script. No downloads or archives; nothing is written to disk by an installer. The requirement that 'node' be present is appropriate for the .mjs script.
Credentials
Only TAVILY_API_KEY is required and declared as the primary credential. That is proportional for a service-backed search skill. No other secrets, config paths, or unrelated credentials are requested.
Persistence & Privilege
The skill does not request always:true and does not modify agent/system configs. It can be invoked by the agent (normal default), but there are no other privileged behaviors or persistent privileges requested.
Assessment
This skill appears coherent and limited to calling Tavily's search API. Before installing: 1) Be comfortable trusting Tavily with any full-page content you request (avoid --raw-content if you don't want large page contents sent to the service). 2) Store TAVILY_API_KEY securely (env var or the platform's secret store); the script uses a bearer token to call the API. 3) Ensure your runtime has a recent Node version that supports fetch (the script uses top-level await and fetch). 4) Note a minor metadata mismatch in owner IDs between registry metadata and _meta.json (likely benign but FYI). If you need stricter guarantees about data handling, review Tavily's privacy policy or avoid enabling --raw-content.scripts/search.mjs:81
Environment variable access combined with network send.
Confirmed safe by external scanners
Static analysis detected API credential-access patterns, but both VirusTotal and OpenClaw confirmed this skill is safe. These patterns are common in legitimate API integration skills.Like a lobster shell, security has layers — review code before you run it.
Current versionv1.0.0
Download ziplatest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
🔍 Clawdis
Binsnode
EnvTAVILY_API_KEY
Primary envTAVILY_API_KEY
SKILL.md
Tavily Search
Search the web and get relevant results optimized for LLM consumption.
Authentication
Get your API key at https://tavily.com and add to your OpenClaw config:
{
"skills": {
"entries": {
"tavily-search": {
"enabled": true,
"apiKey": "tvly-YOUR_API_KEY_HERE"
}
}
}
}
Or set the environment variable:
export TAVILY_API_KEY="tvly-YOUR_API_KEY_HERE"
Quick Start
Using the Script
node {baseDir}/scripts/search.mjs "query"
node {baseDir}/scripts/search.mjs "query" -n 10
node {baseDir}/scripts/search.mjs "query" --deep
node {baseDir}/scripts/search.mjs "query" --topic news
Examples
# Basic search
node {baseDir}/scripts/search.mjs "python async patterns"
# With more results
node {baseDir}/scripts/search.mjs "React hooks tutorial" -n 10
# Advanced search
node {baseDir}/scripts/search.mjs "machine learning" --deep
# News search
node {baseDir}/scripts/search.mjs "AI news" --topic news
# Domain-filtered search
node {baseDir}/scripts/search.mjs "Python docs" --include-domains docs.python.org
Options
| Option | Description | Default |
|---|---|---|
-n <count> | Number of results (1-20) | 10 |
--depth <mode> | Search depth: ultra-fast, fast, basic, advanced | basic |
--topic <topic> | Topic: general or news | general |
--time-range <range> | Time range: day, week, month, year | - |
--include-domains <domains> | Comma-separated domains to include | - |
--exclude-domains <domains> | Comma-separated domains to exclude | - |
--raw-content | Include full page content | false |
--json | Output raw JSON | false |
Search Depth
| Depth | Latency | Relevance | Use Case |
|---|---|---|---|
ultra-fast | Lowest | Lower | Real-time chat, autocomplete |
fast | Low | Good | Need chunks but latency matters |
basic | Medium | High | General-purpose, balanced |
advanced | Higher | Highest | Precision matters, research |
Tips
- Keep queries under 400 characters - Think search query, not prompt
- Break complex queries into sub-queries - Better results than one massive query
- Use
--include-domainsto focus on trusted sources - Use
--time-rangefor recent information - Filter by
score(0-1) to get highest relevance results
Files
3 totalSelect a file
Select a file to preview.
Comments
Loading comments…
