
The tavily-research skill conducts comprehensive AI-powered research on complex topics, synthesizing information from multiple web sources and returning structured reports with citations. It serves users who need in-depth analysis, comparisons, market reports, or literature reviews rather than quick fact-finding. The skill solves the problem of gathering, analyzing, and citing multiple sources in a single command, with options for different model sizes, citation formats, and async workflows.
$ npx -y skills add tavily-ai/skills --skill tavily-research --agent claude-codeInstalls into .claude/skills of the current project.
Use this when the answer has to be built from many sources. A single fact or
answer to find is a search: follow tavily-search instead.
Search and read pages as tavily-search describes. Load it only if it isn't
loaded yet.
Ask when a term has two meanings, the user assumed a place, or a name is two different entities. Otherwise start.
Split into subtopics that do not overlap and that together cover the question. Carry the user's limits with every subtopic: dates, places, and what is out of scope. Use 3 subtopics when you are unsure, 4 for a comparison with separate criteria, 5 for separate entities, regions or domains, and more only for a large set.
With subagents: choose a title of 3 to 6 words, create
research_notes/{title}/ and reports/ in the working directory, and start
one general-purpose subagent per subtopic in the same turn. Give each the
subtopic, the key questions, the user's limits, the absolute path of its notes
file, and this first step: read references/researcher.md at its absolute path
next to this skill.
On your own: run each subtopic's searches in parallel, as tavily-search
describes, and extract the main sources for each. Keep the findings and their
URLs in your context. Don't write notes files.
Before writing, run another round for any part of the question that would leave its section thin.
Follow references/report-writer.md. On your own, write it once, as
your reply. Save it to reports/{title}.md only when the user asked for a
file, and then give the path after the report. With subagents, have one agent
write reports/{title}.md from the notes, then give the user the full report
in your reply, followed by its path.
If this conversation already produced a report on the subject, build on it: research only what is new or needs checking again.
Sponsors