Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

tavily-search

v1.0.0

Tavily AI search API integration for OpenClaw. Provides web search functionality with AI-powered summarization optimized for RAG and question answering. Use...

0· 72·0 current·0 all-time
bySimon Sun@quenfly
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
high confidence
!
Purpose & Capability
The code files (tavily_api.py, tavily_cli.py), SKILL.md, and references all implement a Tavily search client consistent with the declared purpose. However the registry metadata omitted any required environment variable or primary credential even though the client requires a TAVILY_API_KEY at runtime. This mismatch between declared requirements and actual code is a coherence concern.
Instruction Scope
SKILL.md instructions are scoped to configuring TAVILY_API_KEY and calling the provided CLI/API. They do not ask the agent to read unrelated system files or transmit data to unexpected endpoints. Minor inconsistencies: the usage example references python scripts/tavily_search.py which does not exist (the provided CLI is tavily_cli.py), and the SKILL.md mentions adding the key to tools.tavily.apiKey without the package declaring that config anywhere.
Install Mechanism
There is no install script or arbitrary remote download; the bundle is file-based and instruction-driven. No installer that fetches remote code is present. The only runtime dependency is the requests library (used in tavily_api.py), which is typical but not declared in metadata.
!
Credentials
The runtime code mandates a TAVILY_API_KEY (TavilyClient raises an exception if it's missing), yet the registry metadata lists no required environment variables or primary credential. Requesting a single service API key is proportionate to the stated purpose, but it should be declared in the skill metadata so users know they must provide it. The omission is a meaningful inconsistency and could lead to misuse or misconfiguration.
Persistence & Privilege
The skill does not request always:true, does not modify other skills or system configuration, and has no elevated persistence. Autonomous invocation is allowed by default but that's normal for skills and is not combined with other high-risk indicators here.
What to consider before installing
This package appears to implement a legitimate Tavily search client, but there are several packaging/information mismatches you should resolve before installing: - The code requires a TAVILY_API_KEY environment variable but the registry metadata does not declare this; expect the CLI to fail if you don't set TAVILY_API_KEY. Ask the publisher to add the required env var/primary credential to the metadata. - The SKILL.md example references a non-existent script (tavily_search.py vs the provided tavily_cli.py). Confirm which entrypoint to run. - The code sends your queries and the API key to https://api.tavily.com as JSON. If you will send sensitive queries, be aware they leave your environment and go to that external service; review Tavily's privacy and retention policy before use. - Confirm the source/publisher (owner ID looks opaque and homepage is missing). If you need a higher trust level, request a verifiable homepage or repository and a signed release. - Ensure the runtime has the requests library available; the package does not declare dependencies in metadata. If you accept those caveats and set TAVILY_API_KEY securely, the code itself does not contain obvious exfiltration or obfuscated behavior. If you need stronger assurance, ask the publisher to correct metadata, provide a canonical repo link, and sign the release.

Like a lobster shell, security has layers — review code before you run it.

latestvk97beaej0hbs1qpxxt26rsseax83v5vf

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Comments