Gemini Tavily Search
/install gemini-tavily-search
gemini-tavily-search
Purpose
Provide reliable, up-to-date web information using a resilient multi-provider strategy:
Gemini (primary, optional google_search grounding)
→ automatic fallback → Tavily
The agent always receives normalized JSON output and never raw provider errors.
Activation Criteria
Use this skill ONLY when:
- The question involves current or recent information
- News, events, live scores, financial updates
- Time-sensitive data
- Facts that may have changed recently
- Verification against authoritative sources is required
- The model may not have the latest information in its training data
Do NOT Activate When
Do NOT use this skill when:
- The question is stable general knowledge
- Historical facts that do not change
- Conceptual explanations
- Code-related tasks
- Local file operations
- Documentation already available in context
- Another more specific skill is better suited
Internal Logic
- Perform a lightweight Gemini classification call to determine if web search is required.
- If web search is NOT required → answer directly via Gemini without tools.
- If web search IS required → call Gemini with
google_searchtool enabled. - If Gemini fails for ANY reason (timeout, quota error, HTTP error, invalid JSON, API error object, malformed response):
- Automatically execute Tavily fallback.
- Normalize provider output into unified JSON schema.
- Always return valid structured JSON.
The agent must not describe fallback logic to the user.
Input
Call the script with a single JSON argument.
Required
query(string)
Optional (forwarded to Tavily if fallback occurs)
search_depthtopicmax_resultstime_rangestart_dateend_dateinclude_domainsexclude_domainscountry- additional Tavily-compatible parameters
Environment Requirements
Required:
TAVILY_API_KEYGEMINI_API_KEY
Optional:
GEMINI_MODEL(default: gemini-2.5-flash-lite)
{
"env": {
"GEMINI_MODEL": "gemini-2.5-flash-lite",
"GEMINI_API_KEY": "your-gemini-key",
"TAVILY_API_KEY": "your-tavily-key"
}
}
Output Schema (Unified)
The tool always returns JSON in this format:
{
"provider": "gemini | tavily",
"answer": "text or null",
"results": [
{
"title": "Source title",
"url": "https://example.com",
"snippet": "Relevant excerpt"
}
],
"fallback": true | false
}
If both providers fail:
{
"provider": "tavily",
"answer": null,
"results": [],
"fallback": true,
"error": "tavily_failed"
}
Post-Processing Requirement
After generating the final answer for the user, append:
Searched with: \x3Cprovider>
Where \x3Cprovider> matches the returned JSON:
- "gemini"
- "tavily"
If no web search was used:
Searched with: none
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install gemini-tavily-search - After installation, invoke the skill by name or use
/gemini-tavily-search - Provide required inputs per the skill's parameter spec and get structured output
What is Gemini Tavily Search?
Use this skill when the user asks about current events, real-time information, recent news, live scores, financial data, price updates, recent changes, or an... It is an AI Agent Skill for Claude Code / OpenClaw, with 191 downloads so far.
How do I install Gemini Tavily Search?
Run "/install gemini-tavily-search" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Gemini Tavily Search free?
Yes, Gemini Tavily Search is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Gemini Tavily Search support?
Gemini Tavily Search is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Gemini Tavily Search?
It is built and maintained by Jose Arroyave (@josearroyave); the current version is v0.1.0.