Agent skill
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.
Install this agent skill to your Project
npx add-skill https://github.com/tavily-ai/skills/tree/main/skills/tavily-research
SKILL.md
tavily research
AI-powered deep research that gathers sources, analyzes them, and produces a cited report. Takes 30-120 seconds.
Before running any command
If tvly is not found on PATH, install it first:
curl -fsSL https://cli.tavily.com/install.sh | bash && tvly login
Do not skip this step or fall back to other tools.
See tavily-cli for alternative install methods and auth options.
When to use
- You need comprehensive, multi-source analysis
- The user wants a comparison, market report, or literature review
- Quick searches aren't enough — you need synthesis with citations
- Step 5 in the workflow: search → extract → map → crawl → research
Quick start
# Basic research (waits for completion)
tvly research "competitive landscape of AI code assistants"
# Pro model for comprehensive analysis
tvly research "electric vehicle market analysis" --model pro
# Stream results in real-time
tvly research "AI agent frameworks comparison" --stream
# Save report to file
tvly research "fintech trends 2025" --model pro -o fintech-report.md
# JSON output for agents
tvly research "quantum computing breakthroughs" --json
Options
| Option | Description |
|---|---|
--model |
mini, pro, or auto (default) |
--stream |
Stream results in real-time |
--no-wait |
Return request_id immediately (async) |
--output-schema |
Path to JSON schema for structured output |
--citation-format |
numbered, mla, apa, chicago |
--poll-interval |
Seconds between checks (default: 10) |
--timeout |
Max wait seconds (default: 600) |
-o, --output |
Save output to file |
--json |
Structured JSON output |
Model selection
| Model | Use for | Speed |
|---|---|---|
mini |
Single-topic, targeted research | ~30s |
pro |
Comprehensive multi-angle analysis | ~60-120s |
auto |
API chooses based on complexity | Varies |
Rule of thumb: "What does X do?" → mini. "X vs Y vs Z" or "best way to..." → pro.
Async workflow
For long-running research, you can start and poll separately:
# Start without waiting
tvly research "topic" --no-wait --json # returns request_id
# Check status
tvly research status <request_id> --json
# Wait for completion
tvly research poll <request_id> --json -o result.json
Tips
- Research takes 30-120 seconds — use
--streamto see progress in real-time. - Use
--model profor complex comparisons or multi-faceted topics. - Use
--output-schemato get structured JSON output matching a custom schema. - For quick facts, use
tvly searchinstead — research is for deep synthesis. - Read from stdin:
echo "query" | tvly research - --json
See also
- tavily-search — quick web search for simple lookups
- tavily-crawl — bulk extract from a site for your own analysis
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
tavily-search
Search the web with LLM-optimized results via the Tavily CLI. Use this skill when the user wants to search the web, find articles, look up information, get recent news, discover sources, or says "search for", "find me", "look up", "what's the latest on", "find articles about", or needs current information from the internet. Returns relevant results with content snippets, relevance scores, and metadata — optimized for LLM consumption. Supports domain filtering, time ranges, and multiple search depths.
tavily-map
Discover and list all URLs on a website without extracting content, via the Tavily CLI. Use this skill when the user wants to find a specific page on a large site, list all URLs, see the site structure, find where something is on a domain, or says "map the site", "find the URL for", "what pages are on", "list all pages", or "site structure". Faster than crawling — returns URLs only. Essential when you know the site but not the exact page. Combine with extract for targeted content retrieval.
tavily-best-practices
Build production-ready Tavily integrations with best practices baked in. Reference documentation for developers using coding assistants (Claude Code, Cursor, etc.) to implement web search, content extraction, crawling, and research in agentic workflows, RAG systems, or autonomous agents.
tavily-crawl
Crawl websites and extract content from multiple pages via the Tavily CLI. Use this skill when the user wants to crawl a site, download documentation, extract an entire docs section, bulk-extract pages, save a site as local markdown files, or says "crawl", "get all the pages", "download the docs", "extract everything under /docs", "bulk extract", or needs content from many pages on the same domain. Supports depth/breadth control, path filtering, semantic instructions, and saving each page as a local markdown file.
tavily-cli
Web search, content extraction, crawling, and deep research via the Tavily CLI. Use this skill whenever the user wants to search the web, find articles, research a topic, look something up online, extract content from a URL, grab text from a webpage, crawl documentation, download a site's pages, discover URLs on a domain, or conduct in-depth research with citations. Also use when they say "fetch this page", "pull the content from", "get the page at https://", "find me articles about", or reference extracting data from external websites. This provides LLM-optimized web search, content extraction, site crawling, URL discovery, and AI-powered deep research — capabilities beyond what agents can do natively. Do NOT trigger for local file operations, git commands, deployments, or code editing tasks.
tavily-extract
Extract clean markdown or text content from specific URLs via the Tavily CLI. Use this skill when the user has one or more URLs and wants their content, says "extract", "grab the content from", "pull the text from", "get the page at", "read this webpage", or needs clean text from web pages. Handles JavaScript-rendered pages, returns LLM-optimized markdown, and supports query-focused chunking for targeted extraction. Can process up to 20 URLs in a single call.
Didn't find tool you were looking for?