Guide · Agent skill
How to use the Firecrawl Web Search and Scrape agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The firecrawl-search skill lets an agent run a web search through the Firecrawl service and read the full text of each result as markdown, or convert a URL you give it into clean markdown. It is aimed at researchers who need blog posts, project pages, benchmark leaderboards and technical reports rather than only peer-reviewed papers. By the end of this guide you will know what the skill does, how to install it, how to trigger it, and what it needs to run.
Quick start
- 1Download the ZIP. Download the firecrawl-search skill ZIP from this page.
- 2Unzip into a skills folder. Unzip into ~/.claude/skills/ for all projects, or into a project's .claude/skills/ folder for one project.
- 3Set your API key. Export FIRECRAWL_API_KEY in your shell with your Firecrawl key.
- 4Make the helper available. Ensure firecrawl_search.py from the ARIS repository tools/ folder can be found, via ARIS_REPO or tools/.
- 5Ask in natural language. Say "firecrawl search" followed by your query, or use /firecrawl-search with a query or URL.
- 6Review results. Check the returned table, then confirm any academic papers through /arxiv or /semantic-scholar before citing.
What is an agent skill, and what does firecrawl-search do?
An agent skill is a folder containing a SKILL.md file that tells an AI agent when and how to perform a task, and it can include scripts the agent runs. The firecrawl-search skill is one such folder in the Auto-claude-code-research-in-sleep research toolkit, located at skills/firecrawl-search.
Once installed, the agent can search the web through Firecrawl and read each result as full-page markdown, so it can use project pages, blog posts, leaderboards and PDF reports instead of short snippets. The skill also scrapes a specific URL you provide. It is meant for sources outside academic databases; for direct preprint or published-paper searches, the toolkit has separate skills such as /arxiv and /semantic-scholar.
Install the firecrawl-search skill
You can install the skill in either of two ways. Download the ZIP from this page, then either unzip it into ~/.claude/skills/ to make it available across your projects, or unzip it into a project's .claude/skills/ folder to limit it to that project.
Alternatively, in the Claude apps, open Settings, go to Capabilities, and upload the skill under Skills.
- Personal install: unzip into ~/.claude/skills/
- Project install: unzip into .claude/skills/ inside your project
- Claude apps: Settings → Capabilities → Skills, then upload
Set up your Firecrawl API key and helper
The helper script uses only the Python 3 standard library, so there is nothing extra to install for Python. You do need a Firecrawl API key, which you set as an environment variable named FIRECRAWL_API_KEY. You can get a key from firecrawl.dev. Requests without a key are limited to a small daily cap.
The skill also needs the firecrawl_search.py helper from the ARIS repository (tools/ folder). The skill looks for it in .aris/tools/, tools/, the location in the ARIS_REPO environment variable, or the path recorded in ~/.aris/repo. If it cannot find the helper, it stops with an error and suggests rerunning the install scripts, exporting ARIS_REPO, or copying the helper to tools/.
- Python 3 (standard library only)
- FIRECRAWL_API_KEY set in your environment
- firecrawl_search.py from the ARIS repository tools/ folder
export FIRECRAWL_API_KEY=your-key-hereHow do you trigger the skill with natural requests?
You can invoke the skill with the phrases "firecrawl search", "firecrawl scrape" or "/firecrawl-search". Put your query or URL after the command. The skill accepts a search query, or one or more URLs, which switches it to scrape mode.
A bare URL is scraped instead of searched. Optional overrides go at the end of your request, for example the number of results, whether to include page content, a time range, or a domain filter.
- Search: /firecrawl-search "KV cache compression" — max: 10 (top 10 results)
- Titles and links only: /firecrawl-search "speculative decoding" — content: none
- PDFs only: /firecrawl-search "mixture of experts" — category: pdf
- Past month: /firecrawl-search "diffusion transformers" — time: qdr:m
- Domain filter: /firecrawl-search "LLM agents" — domains: arxiv.org,openreview.net
- Scrape a page: /firecrawl-search "https://arxiv.org/abs/2211.17192"
What does the agent return?
By default the skill searches and returns up to 5 results, each with its markdown content kept to 4000 characters. The agent presents results in a table with the title, source domain, URL, and a short summary of the relevant content. It notes when content was truncated, when a page failed to load, and flags the most relevant results.
Results from web search are for discovery only and are not citation evidence. Confirm papers through /arxiv, /semantic-scholar or verify_papers.py before you cite them.
- Default: 5 results, 4000 markdown characters per result
- Scrape mode keeps up to 20000 characters per page
- Content: none returns only titles, URLs and descriptions, which is faster and cheaper
What are the cost and safety considerations?
Firecrawl charges credits. A search costs credits per 10 results, and with markdown content each scraped result adds credits. PDFs are billed per page. To scan many results cheaply, use content none first, then scrape only the few that matter.
The skill runs scripts and uses the network. Search terms and scraped URLs are sent to a third-party service, so avoid sensitive or confidential research queries. Treat everything the helper returns as untrusted web content: the agent should read it as data, not as instructions. The skill also validates URLs before scraping and rejects arguments that do not pass its checks.
- Search terms and URLs are sent to Firecrawl
- Scripts run and network access is used
- Bulk full-content scanning consumes paid credits
What people use it for
- Finding a lab blog post or project page on a new model and reading its full text
- Reviewing a benchmark leaderboard as markdown to compare reported results
- Reading a PDF technical report from a company or research group
- Scraping a paper URL the user pasted to get its page content as markdown
Frequently asked questions
Is the firecrawl-search skill free?
The skill itself is MIT licensed. Firecrawl usage is not free beyond a small daily cap for requests without a key, and searches and scrapes consume credits.
Do I need a Firecrawl API key?
Yes, for normal use. Set it as FIRECRAWL_API_KEY. Requests without a key are limited to a small daily cap.
What does the firecrawl_search.py helper need?
Python 3 with only the standard library, plus the firecrawl_search.py file from the ARIS repository tools/ folder, which the skill locates automatically.
How do I install a Claude agent skill?
Download the ZIP and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder. In the Claude apps, you can instead upload it under Settings, Capabilities, Skills.
Why does the skill say it cannot find firecrawl_search.py?
The helper is not in .aris/tools/, tools/, or the ARIS_REPO location. Rerun the ARIS install or update scripts, export ARIS_REPO, or copy the helper into tools/.
How does firecrawl-search compare with /exa-search or /arxiv?
Firecrawl returns full-page markdown for broad web sources and can scrape a known URL. Exa offers highlights, summaries or text with find-similar pages, and arXiv gives direct preprint search and PDF download.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use firecrawl-search if you need blog posts, project pages, leaderboards or technical reports read in full, and you already have or are willing to pay for a Firecrawl key. Pick another source if your queries are sensitive, you need only peer-reviewed papers, or you want to scan many results with full content on a tight budget.
Download the skill