Agent Economy Report

Skill code audit

CAUTION version 1.0.0 · audited 2026-09-17

tavily @bert-builder

This package is a client and guide for the Tavily web search API. The included Python script reads a Tavily API key from a command-line argument or the TAVILY_API_KEY environment variable, calls the Tavily API with a query and search options, and prints JSON or human-readable results. Documentation explains how to install the tavily-python package and set up the API key. No hidden network destinations, persistence, obfuscated code, or file-writing behavior by the script were found. The main review points are that queries and the API key are sent to Tavily, searches may consume Tavily credits, and the documentation shows the key being echoed and curl being used on returned URLs.

Declared purposeAI-optimized web search using the Tavily Search API for research, current events, domain-specific search, image search, and AI-generated answer summaries.
Observed behaviorThe Python script imports the official Tavily SDK, obtains an API key from --api-key or TAVILY_API_KEY, builds search parameters, and sends the query to Tavily. It then prints the answer, results, images, response time, and usage to stdout or as JSON. The package documentation contains shell examples for installing dependencies, making the script executable, setting the API key, and optionally curling result URLs.
Verdict, rules onlyCAUTION · reads credential-like environment variables: TAVILY_API_KEY
Verdict, AISAFE
Final verdictCAUTION (never better than either pass)

Capabilities

capabilityvs purposedetail
networkneededThe script sends search queries and options to the Tavily API through the official SDK at scripts/tavily_search.py line 77. SKILL.md also shows curl fetching URLs from search results at line 337.
shellneededDocumentation uses shell examples for running the script, chmod +x, pip install, and curl. The Python script itself does not invoke a shell.
credentialsneededThe script reads TAVILY_API_KEY from the environment or accepts --api-key, then passes that key to TavilyClient at scripts/tavily_search.py line 59.
install_packagesneededSKILL.md instructs pip install tavily-python at line 375, and the script returns this install command if the import fails.

Findings

severityfinding
infoImports official Tavily SDK
The script depends on the official tavily-python package and imports its client class.
scripts/tavily_search.py:45 from tavily import TavilyClient
infoAPI key passed to Tavily client
The provided Tavily API key is handed to the SDK so the declared search API can be called.
scripts/tavily_search.py:59 client = TavilyClient(api_key=api_key)
infoCalls Tavily search API
The script sends the query and chosen search parameters to Tavily over the network.
scripts/tavily_search.py:77 response = client.search(**search_params)
infoReads API key from argument or environment
The script reads the sensitive TAVILY_API_KEY if no --api-key argument is supplied.
scripts/tavily_search.py:192 api_key = args.api_key or os.getenv("TAVILY_API_KEY")
infoEnvironment variable setup documented
Users are told to export the Tavily API key as TAVILY_API_KEY.
SKILL.md:157 export TAVILY_API_KEY="tvly-YOUR_API_KEY_HERE"
infoDependency installation documented
The skill requires installing the tavily-python package, which is a declared dependency.
SKILL.md:375 pip install tavily-python
infoScript made executable
Documentation shows making the search script executable before running it.
SKILL.md:369 chmod +x scripts/tavily_search.py
lowDocumentation fetches returned URLs with curl
An integration example pipes search result URLs into curl. This can fetch web pages returned by Tavily and should be reviewed if the agent automatically follows that pattern.
SKILL.md:337 xargs -I {} curl -s {}
lowAPI key echoed to terminal
Troubleshooting documentation tells the user to print TAVILY_API_KEY. If terminal or agent output is logged, this could expose the key.
SKILL.md:382 echo $TAVILY_API_KEY
infoDeclared external disclosure
The skill card discloses that search queries and options are transmitted to Tavily.
skill-card.md:24 Risk: Search queries and selected search options are sent to Tavily.
infoDeclared credential exposure risk
The skill card warns that passing the key on the command line or storing it insecurely can expose it.
skill-card.md:28 Risk: A Tavily API key can be exposed if passed directly on the command line or stored insecurely.

0 AI finding(s) were dropped because their file, line or quote did not match the package.

Network destinations in the code

domainservice ratingwhere
clawhub.ainot in the service indexskill-card.md:9
docs.tavily.comnot in the service indexSKILL.md:414
example.comnot in the service indexreferences/api-reference.md:51
github.comnot in the service indexSKILL.md:413
tavily.comnot in the service indexSKILL.md:164

Other facts

Binaries invokedbash, chmod, curl, pip, python, python3
Environment variables readTAVILY_API_KEY
Hard-coded walletsnone
Pipes a download to a shell0
eval / exec / subprocess0
base64 blobs0
File writes0
Persistence0

Files audited

filelinessha256
SKILL.md414b9497a534e66f1b4…
_meta.json60399d132849cd7b7…
references/api-reference.md187df5ff0f3f2031be1…
scripts/tavily_search.py2475b19bba778485b72…
skill-card.md616aaeef76c83c26d4…

For agents

JSON: https://agenteconomy.report/k/tavily.audit.json · badge: https://agenteconomy.report/k/tavily.audited.svg · skill rating: /k/tavily · commission an audit of any skill: US$ 29 per version.

How this is computed

The complete published package of this exact version was downloaded from the registry and read statically; nothing was executed. A deterministic pass extracts network destinations, binaries, environment variables, writes, install commands, obfuscation markers, subprocesses and wallets, each with file and line. An AI then reads the whole package with those facts and writes the summary, the capabilities and the findings under a strict schema; every finding it produces must cite a file, a line and the exact text, or it is dropped. The final verdict is the worst of the two passes. The audit does not change the skill's trust tier (policy); the author may respond through the dispute channel and the response is published here. Commissioned by: the Agent Economy Report (free program: the 150 most downloaded skills, September 2026).