glebis/firecrawl-research
This skill should be used when the user requests to research topics using FireCrawl, enrich notes with web sources, search and scrape information, or write scientific/academic papers. It extracts research topics from markdown files, creates research documents with scraped sources, generates BibTeX bibliographies from research results, and provides Pandoc/MyST templates for academic writing with citation management.
npx skills add https://github.com/glebis/claude-skills --skill firecrawl-research
Enrich research documents by automatically searching and scraping web sources using the FireCrawl API. Extract research topics from markdown files and generate comprehensive research documents with source material.
Use this skill when the user:
The script automatically extracts research topics from markdown files using two methods:
Method 1: Headers
## Spatial Reasoning in AI
### Computer Vision Applications
Both Spatial Reasoning in AI and Computer Vision Applications become research topics.
Method 2: Research Tags
- [research] Large Language Models for robotics
- [search] Theory of Mind in autonomous driving
Both tagged items become research topics.
For each topic:
Creates new markdown files in the specified output directory:
{topic}_{timestamp}.mdpython scripts/firecrawl_research.py research.md
Outputs to current directory.
python scripts/firecrawl_research.py research.md ./output
Creates files in ./output/ folder.
python scripts/firecrawl_research.py research.md ./output 3
Retrieves maximum 3 results per topic.
.env.example to .env: cp .env.example .env
FIRECRAWL_API_KEY=fc-your-actual-api-key
The script automatically loads the API key from the skill's .env file.
The script includes automatic rate limiting for FireCrawl's free tier:
When processing multiple topics, expect:
User request: "Research these AI topics using FireCrawl"
Input file (ai-research.md):
# AI Research Topics
## Spatial Reasoning in Vision-Language Models
- [research] Embodied AI for robotics
- [research] Computer Use Agents
Command:
python scripts/firecrawl_research.py ai-research.md ./research_output 5
Output:
research_output/
├── Spatial_Reasoning_in_Vision-Language_Models_20251122_140530.md
├── Embodied_AI_for_robotics_20251122_140542.md
└── Computer_Use_Agents_20251122_140554.md
Each file contains:
Extract topics from existing notes, research them, save to current folder:
python scripts/firecrawl_research.py my-notes.md
Create dedicated output folder for research results:
python scripts/firecrawl_research.py topics.md ./research_results
Increase results per topic for comprehensive coverage:
python scripts/firecrawl_research.py topics.md ./deep_research 10
Direct output to vault's research folder:
python scripts/firecrawl_research.py topics.md ~/Brains/brain/Research
Create .env file in skill folder with FIRECRAWL_API_KEY=...
Add topics to markdown using:
## Header format- [research] Topic format- [search] Topic formatLocation: scripts/firecrawl_research.py
Dependencies:
python-dotenv - Environment variable managementrequests - HTTP requests to FireCrawl APIInstall dependencies:
pip install python-dotenv requests
FireCrawl Features Used:
/v1/search endpoint - Search with automatic scrapingscrapeOptions.formats: ['markdown'] - Markdown outputscrapeOptions.onlyMainContent: true - Filter noiseThis skill includes templates for writing scientific papers in markdown format.
1. Pandoc Scholarly Paper (assets/templates/pandoc-scholarly-paper.md)
2. MyST Scientific Paper (assets/templates/myst-scientific-paper.md)
Copy template to your project:
cp assets/templates/pandoc-scholarly-paper.md my-paper.md
# or
cp assets/templates/myst-scientific-paper.md my-paper.md
Edit content:
[@AuthorYear] (Pandoc) or {cite}\AuthorYear\ (MyST)Convert to PDF/DOCX:
python scripts/convert_academic.py my-paper.md pdf
python scripts/convert_academic.py my-paper.md docx
python scripts/convert_academic.py my-paper.md pdf --myst # For MyST
Convert FireCrawl research results into BibTeX bibliography entries:
python scripts/generate_bibliography.py research_output/*.md -o references.bib
What it does:
@misc entriesExample workflow:
# 1. Research topics
python scripts/firecrawl_research.py topics.md ./research
# 2. Generate bibliography
python scripts/generate_bibliography.py research/*.md -o refs.bib
# 3. Copy template
cp assets/templates/pandoc-scholarly-paper.md paper.md
# 4. Edit paper.md (add content, cite sources)
# 5. Convert to PDF
python scripts/convert_academic.py paper.md pdf
Pandoc syntax:
Recent research [@Smith2024] shows...
Multiple studies [@Jones2023; @Brown2024] indicate...
MyST syntax:
Recent research {cite}`Smith2024` shows...
Multiple studies {cite}`Jones2023,Brown2024` indicate...
An example bibliography is provided in assets/references.bib with common entry types:
@article)@inproceedings)@book)@phdthesis)@misc)@article with arXiv)## for main topics, ### for subtopicsTake glebis/firecrawl-research from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference pip.
Without those the skill loads but fails at the first command.