agentleFS
LichAmnesiaLichAmnesia/lich-skills/skills/tavily-search/SKILL.md

tavily-search

Skill233 starsChanged 7 months agoMITView on GitHub

Web search and content extraction via the Tavily API. Use when you need real-time web results, citations, or raw article content without a browser. Requires TAVILY_API_KEY.

  • Pipes a download into a shell
  • Reads credentials

20 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use tavily-extract, tavily-research and 5 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • baofeng-techSkill

    tavily-extract

    Extract clean, readable content from one or more URLs using Tavily Extract via AIsa API. Useful for reading full articles without visiting the page. Use when: the user needs web search, research, source discovery, or content extraction.

    Also in 5 projects that use this

  • jpoindexterSkill

    tavily-research

    Conduct comprehensive AI-powered research with citations via the Tavily CLI. Use this skill when the user wants deep research, a detailed report, a comparison, market analysis, literature review, or says "research", "investigate", "analyze in depth", "compare X vs Y", "what does the market look like for", or needs multi-source synthesis with explicit citations. Returns a structured report grounded in web sources. Takes 30-120 seconds. For quick fact-finding, use tavily-search instead.

    Also in 3 projects that use this

  • garri333Skill

    self-improving-agent

    Sistema para capturar aprendizajes, errores y outputs de tareas para mejorar performance del agente. Usa cuando quieras que el agente aprenda de sus errores y mejore entre sesiones.

    Also in 5 projects that use this

  • MicrosoftSkill

    web-search

    Also in 4 projects that use this

  • OpenAISkill

    hyperframes

    Create video compositions, animations, title cards, overlays, captions, voiceovers, audio-reactive visuals, and scene transitions in HyperFrames HTML. Use when asked to build any HTML-based video content, add captions or subtitles synced to audio, generate text-to-speech narration, create audio-reactive animation (beat sync, glow, pulse driven by music), add animated text highlighting (marker sweeps, hand-drawn circles, burst lines, scribble, sketchout), or add transitions between scenes (crossfades, wipes, reveals, shader transitions). Covers composition authoring, timing, media, and the full video production workflow. For CLI commands (init, lint, preview, render, transcribe, tts) see the hyperframes-cli skill.

    Also in 3 projects that use this

  • VercelSkill

    find-skills

    Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

    Also in 5 projects that use this

The file

We split this skill into the rules it gives an agent

3 rules. 0 are common, 1 is distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 15 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Add to ~/.zshrc or ~/.bashrc for persistence.

    line 32
  2. Very specific:

    Default model: Tavily's search and extract endpoints (v1)

    line 121
  3. Distinctive:

    Default timeout: 30s per request

    line 122

“Common” is measured: kept by at least 6 in 10 of the 15 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Tavily Search

Headless web search and content extraction using Tavily. Built for LLM agents — returns clean, summarised results with optional raw article bodies. No browser required.

When to use

  • You need up-to-date web information (news, docs, pricing, facts)
  • You want cited sources with URLs for a research/writing task
  • You need the full readable body of a URL as markdown
  • Brave/Google search is not available or rate-limited

When NOT to use

  • You already have the page in your context
  • The answer is static and likely in the model's training data
  • You need to interact with a page (login, click) — use a browser MCP instead

Setup

  1. Get a free API key: https://app.tavily.com (1000 free searches/month)
  2. Export it:

    export TAVILY_API_KEY="tvly-YOUR_KEY_HERE"

    Add to ~/.zshrc or ~/.bashrc for persistence. Never commit the key.

  3. First run will auto-install dependencies via uv:

    command -v uv || curl -LsSf https://astral.sh/uv/install.sh | sh

Search

# Basic search — 5 results, summarised answer
uv run ~/.claude/skills/lich-skills/skills/tavily-search/scripts/search.py "your query"

# More results
uv run .../search.py "your query" --max-results 10

# Include full article bodies (slower, more tokens)
uv run .../search.py "your query" --raw-content

# Deeper search with higher recall
uv run .../search.py "your query" --depth advanced

# News-only, last 7 days
uv run .../search.py "your query" --topic news --days 7

# Output as JSON
uv run .../search.py "your query" --json

Flags

FlagDefaultPurpose
--max-results N5Number of results to return (1–20)
--depth {basic,advanced}basicadvanced = slower, higher quality
--topic {general,news}generalNews mode adds recency filtering
--days N—With --topic news, restrict to last N days
--raw-contentoffInclude full article body as markdown
--include-domains a,b—Restrict to comma-separated domains
--exclude-domains a,b—Exclude comma-separated domains
--jsonoffMachine-readable JSON output

Extract a single URL

uv run .../search.py --extract https://example.com/article

Returns clean markdown of the page body (no nav, ads, or boilerplate).

Output format (default, human-readable)

ANSWER: <Tavily's synthesised answer, 1–3 sentences>

RESULTS:
[1] <title>
    <url>
    <snippet — 1–2 sentences>

[2] ...

With --raw-content each result gets an indented markdown body below the snippet.

Examples

Research a library:

uv run .../search.py "Gemini 3 Flash Image API pricing" --depth advanced

Get the full article body of a blog post:

uv run .../search.py --extract https://blog.example.com/post --json > post.json

News sweep:

uv run .../search.py "OpenAI Codex release" --topic news --days 3 --max-results 10

Environment

  • Key lookup order: --api-key flag → $TAVILY_API_KEY → $TAVILY_KEY
  • Default model: Tavily's search and extract endpoints (v1)
  • Default timeout: 30s per request

Common failures

ErrorFix
Error: No TAVILY_API_KEYExport the key or pass --api-key
401 UnauthorizedKey is wrong, revoked, or over quota
429 Rate limitWait or upgrade plan
No resultsBroaden query, try --depth advanced, drop domain filters

Red flags

  • Hardcoding the API key anywhere in this repo
  • Passing the key on the command line in shared terminals (shell history leak)
  • Using --raw-content with --max-results 20 on every query (burns tokens)

Verification

  • $TAVILY_API_KEY is set in env, not in files
  • uv run .../search.py "hello world" returns results
  • gitleaks detect --source . clean

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.