skills/68-research-productivity-skills/literature-survey-generator/SKILL.md
Generate a complete academic literature survey from scratch using multi-agent orchestration. Searches academic databases (OpenAlex, CrossRef, Unpaywall), downloads PDFs, builds BibTeX, drafts a LaTeX review, compiles it, reviews for quality, and revises based on feedback — all automated. Use this skill whenever the user asks to "generate a literature review", "write a survey paper", "review recent papers on [topic]", "create a survey of [field]", "综述", "文献综述", "survey papers in top journals", or wants a multi-agent pipeline to produce a publishable-quality literature review. Also trigger when the user wants to search multiple journals for papers on a topic and synthesize findings into a structured document. Works for any academic field but optimized for economics journals.
npx skillsauth add brycewang-stanford/Awesome-Agent-Skills-for-Empirical-Research literature-survey-generatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A multi-agent, multi-phase pipeline that produces a complete academic literature survey in LaTeX with BibTeX — from search to final compiled PDF.
The pipeline has 4 phases, each using parallel subagents where possible:
Phase 1: SEARCH (parallel per journal)
↓ search_{journal}.json files
Phase 2: PROCESS (3 parallel agents)
↓ references.bib + paper_summaries.md + pdfs/
Phase 3: DRAFT (1 agent + compilation)
↓ survey.tex → survey.pdf
Phase 4: REVIEW & REVISE (sequential)
↓ review_report.md → survey_v2.tex → survey_v2.pdf
Parse the user's request to extract:
Create working directory:
agent_tasks/{topic_slug}_{YYYYMMDDHH}/
Write plan.md to the working directory documenting the execution plan.
Set up task tracking with TaskCreate for the 4 phases.
Launch one subagent per journal (up to 10 in parallel). Each agent:
search_{journal_abbrev}.jsonAgent prompt template:
Search for papers about "{TOPIC}" published in {JOURNAL_NAME} in {YEAR}.
1. OpenAlex API (source ID: {OPENALEX_ID}):
curl -s "https://api.openalex.org/works?filter=primary_location.source.id:{OPENALEX_ID},default.search:{TOPIC},publication_year:{YEAR}&per_page=50&[email protected]"
2. CrossRef API (ISSN: {ISSN}):
curl -s "https://api.crossref.org/journals/{ISSN}/works?query={TOPIC}&filter=from-pub-date:{YEAR}-01-01&rows=50&[email protected]"
Extract: title, authors, doi, year, cited_by, pdf_urls, abstract (from inverted index), openalex_id.
Deduplicate by DOI. Save to: {WORKDIR}/search_{ABBREV}.json
Key journal identifiers (verify OpenAlex IDs via API before use):
| Journal | ISSN | OpenAlex ID | |---------|------|-------------| | American Economic Review | 0002-8282 | S23254222 | | Econometrica | 0012-9682 | S95464858 | | Journal of Political Economy | 0022-3808 | (verify via API) | | Quarterly Journal of Economics | 0033-5533 | S203860005 | | Review of Economic Studies | 0034-6527 | (verify via API) |
For non-Top-5 journals, first look up the OpenAlex source ID:
curl -s "https://api.openalex.org/sources?search={journal+name}&[email protected]"
Wait for all search agents to complete before proceeding.
After all agents complete, do a quick tally: read each search_*.json and count papers. If total < 3, consider broadening the search terms or year range. If total > 30, the topic may need narrowing — flag this to the user.
Launch these 3 agents simultaneously:
For each paper with a DOI:
https://api.unpaywall.org/v2/{DOI}[email protected]best_oa_location.url_for_pdf and all oa_locations[].url_for_pdfpdfs/{safe_filename}.pdfpdfs/download_report.mdFor each DOI:
curl -sL -H "Accept: application/x-bibtex" "https://doi.org/{DOI}"
{firstauthor}{year}{keyword} formatreferences.bibFor each paper:
search_*.json filespaper_summaries.md with per-paper sections:
all_papers.json (consolidated, enriched metadata)Wait for all 3 agents to complete before proceeding.
Launch 1 agent to write the survey. The agent reads:
paper_summaries.md (content source)references.bib (citation keys)Survey structure (adapt based on paper count and topics):
\documentclass[12pt]{article}
\usepackage{amsmath,amssymb,natbib,geometry,hyperref,booktabs,setspace,array}
\bibliographystyle{plainnat}
1. Title, Author, Abstract (150-200 words)
2. Introduction
- Motivation for the topic
- Selection methodology (how papers were found)
- Brief overview of themes
- Positioning relative to existing surveys
3. Summary Table (booktabs: Authors, Journal, Title, Type, Key Aspect)
4-6. Thematic Sections (group papers by theme, not by journal)
- Each paper: 2+ paragraphs of substantive discussion
- Critical engagement: limitations, open questions
- Cross-references between papers where relevant
7. Methodological Advances (compare approaches across papers)
8. Conclusion (synthesis, gaps, future directions)
Important instructions for the drafting agent:
\citet{} for in-text citations, \citep{} for parenthetical\cite keys match entries in references.bibAfter the agent saves survey.tex, compile it:
cd {WORKDIR}
pdflatex -interaction=nonstopmode survey.tex
bibtex survey
pdflatex -interaction=nonstopmode survey.tex
pdflatex -interaction=nonstopmode survey.tex
Check for errors. Fix any compilation issues before proceeding.
Reads survey.tex, paper_summaries.md, references.bib.
Writes review_report.md covering:
Reads review_report.md, survey.tex, paper_summaries.md.
Implements ALL revision suggestions. Saves to survey_v2.tex.
Final compilation:
cd {WORKDIR}
pdflatex -interaction=nonstopmode survey_v2.tex
bibtex survey_v2
pdflatex -interaction=nonstopmode survey_v2.tex
pdflatex -interaction=nonstopmode survey_v2.tex
Verify zero errors in the final PDF.
Report to the user:
File handoff, not context handoff: Every agent saves its output to a file. Never pass large content back to the main agent. Agents return only a status summary (paper count, success/failure, file paths).
Parallel where possible, sequential where required: Phases 1 and 2 are parallel internally. Phase 3 depends on Phase 2 outputs. Phase 4 is sequential (review before revision).
All agents get mode: auto: Subagents need Bash, Read, Write, Edit access
to do their work without permission prompts.
Verify before proceeding: Always compile LaTeX and check for errors between phases. Don't hand broken output to the next phase.
Be transparent about relevance: Not every paper returned by keyword search is centrally about the topic. The survey should acknowledge varying degrees of relevance rather than force-fitting papers into the narrative.
Respect API rate limits: OpenAlex (add mailto), CrossRef (add mailto), Semantic Scholar (3s between calls), arXiv (3s between calls).
academic-paper-search skill's API patterns.zotero_add_by_doi.agent_tasks/{topic}_{timestamp}/
├── plan.md # Execution plan
├── search_aer.json # Per-journal search results
├── search_ecma.json
├── search_jpe.json
├── search_qje.json
├── search_restud.json
├── all_papers.json # Consolidated metadata
├── paper_summaries.md # Full abstracts + key themes
├── references.bib # Complete BibTeX database
├── pdfs/ # Downloaded open-access PDFs
│ ├── *.pdf
│ └── download_report.md
├── survey.tex # Initial draft
├── survey.pdf # Initial compilation
├── review_report.md # Quality review
├── survey_v2.tex # Revised draft
└── survey_v2.pdf # Final PDF (deliverable)
tools
Recommend AND run open-source AI tools, agents, Claude Code / Codex skills, and MCP servers for any stage of a literature review — searching, reading, extracting, synthesizing, screening, citation-checking, and paper writing. Use when the user asks "what tool should I use to..." OR "install/run/use <tool> to ..." for research/lit-review work: automating a survey or related-work section, PDF→Markdown extraction for LLMs (MinerU/marker/docling), PRISMA / systematic review (ASReview), citation-backed Q&A over PDFs (PaperQA2), wiring papers into Claude/Cursor via MCP (arxiv/paper-search/zotero servers), or chatting with a Zotero library. Ships a launcher (scripts/litrun.py) that installs each tool in an isolated venv and runs it. Curated catalog of 70+ vetted projects. 支持中英文(用于「文献综述工具选型」与「一键安装/运行」)。
development
Route empirical-research requests through the Auto-Empirical Research Skills catalog when this whole repository is installed as one skill in Codex, CodeBuddy, Claude Code, or another IDE. Use to choose and load the right vendored AERS skill for causal inference, econometrics, replication, data acquisition, manuscript writing, peer review and referee responses, citation checking, de-AIGC editing, or full empirical-paper workflows without reading the entire repository at once.
documentation
Use when the project collects primary data or runs a field, lab, or survey experiment, before the intervention begins — write the pre-analysis plan, size the sample from a power calculation, and register with the AEA RCT Registry. Apply after the design is chosen in aer-identification and before any outcome data are seen.
tools
Guide economists to authoritative data sources with explicit, confirmed data specifications before retrieval; interfaces with Playwright MCP to navigate portals and extract real data, not articles about data.