Three agent skills for academic research, in one repo. Find real papers, read any paper as a visual experience, and write new papers grounded in real sources. Runtime-neutral β works with 50+ AI coding agents.
npx skills add aniketkrs/research-paperAfter install, in any compatible agent session:
/research "graph neural networks for fraud detection" --style ieee
/find-paper "retrieval-augmented generation" --years last-3
/read-paper https://arxiv.org/abs/1706.03762
Date freshness: every paper run starts by checking today's actual date (via
date -u +%Y-%m-%dor runtime context). Year-range flags like--years last-3are computed from today, not from the model's training cutoff. The skill never silently uses stale data β seeinstructions/freshness.mdin any of the three skills.
Three small, focused skills that work together β or independently β to make academic-paper work fast, rigorous, and not boring.
| Skill | One-line job | |
|---|---|---|
| βοΈ | research-paper |
Writes new papers β research papers, lit reviews, theses, whitepapers, surveys, policy briefs |
| π | get-research-paper |
Finds real existing papers β searches arXiv, Scholar, PubMed, Semantic Scholar |
| π | read-research-paper |
Reads any paper (URL / arXiv / DOI / PDF / DOCX / PPTX / image) and renders it visually |
All three are runtime-neutral. They install with one command and work
with Claude Code, OpenCode, Cursor, Cline, Codex, Aider, Amp,
Antigravity, AiderDesk, Augment, IBM Bob, and 50+ other agent
runtimes via npx skills.
npx skills add aniketkrs/research-paper --yes --skill '*'The --yes --skill '*' flags install all three skills in one shot
without prompting. The installer auto-detects every agent runtime on
your machine and places the skills in the universal .agents/skills/
directory.
npx skills listExpected: research-paper, get-research-paper, read-research-paper all listed.
# Install only one skill
npx skills add aniketkrs/research-paper --yes --skill research-paper
# Pin to a version
npx skills add aniketkrs/research-paper#v2.4.0 --yes --skill '*'
# User-scope (global) instead of project-scope
npx skills add aniketkrs/research-paper --yes --skill '*' --global
# Direct from GitHub (no skills CLI; this installer also installs all skills by default)
npx -y github:aniketkrs/research-paper installFor per-platform manual install (Claude Desktop, claude.ai web, Anthropic API/SDK, etc.), see INSTALLATION.md.
Produces publication-ready research papers, literature reviews, theses, whitepapers, surveys, and policy briefs.
Trigger it:
/research "topic" --style ieee --depth comprehensive
/literature-review "topic" --systematic --sources 50
/whitepaper "topic" --audience technical
/thesis "Chapter 3: Methodology" --style harvard
/policy "topic" --depth standard
β¦or in plain English: "write a research paper on graph neural networks for fraud detection".
Produces:
- 10 paper formats: arXiv, IEEE, ACM, Nature, Harvard, lit-review, thesis chapter, whitepaper, survey, policy brief.
- 7 citation styles: Harvard, APA, IEEE, MLA, Chicago, Nature, arXiv-numeric. Switchable with one flag.
- Real visualizations: charts, tables, heatmaps, flowcharts, PRISMA diagrams, forest plots.
- Methodology section with sample-size justification and validity threats.
- Statistical validation with effect sizes, CIs, multiple-comparison correction.
- Three-persona simulated peer review (methodologist + domain expert
- reader).
- Plain-English summary alongside the technical content.
What it won't do: invent citations, DOIs, or coauthors.
Unverifiable items are flagged [UNVERIFIED] and surfaced in
Known-gaps.md.
Searches arXiv, Google Scholar, PubMed, Semantic Scholar, DBLP, ACM DL, IEEE Xplore, and OpenReview. Returns a curated reading list with verified DOIs, key findings, and ready-to-cite metadata.
Trigger it:
/get-research-paper "topic" --n 25 --years 2020-2024 --depth deep
/find-paper "topic"
/papers-on "topic"
/scholar "topic"
β¦or: "find research papers on retrieval-augmented generation".
Produces:
- A ranked reading list (
reading-list.md) with quality scores. - A canonical
bibliography.yamlready to feed the writer skill. - A 1β3 paragraph field briefing.
- Source-quality scoring (authority + rigor + recency).
- Diversity heuristics: per-author cap, per-venue cap, β₯1 review, β₯1 foundational paper.
- DOI verification + retraction screening (when web tools are available).
Take any paper input β arXiv URL, arXiv ID, DOI, PDF, DOCX, PPTX, image, plain text β and render it as a visual reading experience.
Trigger it:
/read-research-paper https://arxiv.org/abs/1706.03762
/read-paper ./paper.pdf
/explain-paper https://doi.org/10.1145/3589334
/visualize-paper ./slides.pptx
/tldr-paper ./scan.png
β¦or: "read this research paper [URL]", "explain this paper", "make this paper visual".
Produces a multi-layer Markdown rendering with:
- One-page infographic at the top (mind map + headline numbers).
- TL;DR (5β8 sentences).
- Plain-English summary (5β10 sentences).
- Section-by-section walk-through with plain-English alongside the technical content (not replacing it).
- Method flowchart (Mermaid).
- Key-findings infographic (matplotlib when available, Markdown otherwise).
- Comparison table to baselines.
- Related-work timeline.
- "Why this matters" footer.
- Verification trail.
Three-tier "don't bluff" cascade: local cache β live fetch β
bundled corpus β model knowledge with [UNVERIFIED] flags. Source
tier is always declared in the output footer.
The read-research-paper skill handles any of these as input:
| Format | Extensions | Always available? |
|---|---|---|
| Markdown, plain text, JSON | .md, .markdown, .txt, .json |
β |
| LaTeX | .tex, .latex |
β |
| HTML | .html, .htm |
β (with regex fallback) |
| CSV / TSV | .csv, .tsv |
β (basic) |
| RTF | .rtf |
β (with regex fallback) |
.pdf |
install pdfplumber or pypdf |
|
| DOCX | .docx |
install python-docx |
| PPTX | .pptx |
install python-pptx |
| XLSX | .xlsx, .xls |
install pandas + openpyxl |
| EPUB | .epub |
install ebooklib |
| Images (OCR) | .png, .jpg, .tiff, .bmp |
install pytesseract + Tesseract |
One command to enable everything:
pip install pdfplumber python-docx python-pptx pandas openpyxl \
beautifulsoup4 striprtf ebooklib pytesseract PillowThe research-paper skill produces Markdown by default. To convert
to other formats:
| Format | Extension | Renderer |
|---|---|---|
| Markdown | .md |
native (always) |
| HTML | .html |
Pandoc |
| DOCX | .docx |
Pandoc |
| LaTeX | .tex |
Pandoc |
.pdf |
Pandoc + LaTeX engine | |
| RTF | .rtf |
Pandoc |
| EPUB | .epub |
Pandoc |
| ODT | .odt |
Pandoc |
| PPTX | .pptx |
Pandoc |
Install Pandoc (and optionally LaTeX for PDFs):
# macOS
brew install pandoc # base
brew install --cask mactex-no-gui # for PDF output
# Linux
apt install pandoc # base
apt install texlive # for PDF output
# Windows
choco install pandoc # or scoop install pandoc
choco install miktex # for PDF outputThen:
/research "topic" --output paper.pdf
/research "topic" --output paper.docxSelf-test to see what's available on your machine:
python skills/read-research-paper/toolchains/read_any_file.py --self-test
python skills/research-paper/toolchains/convert_output.py --self-testFull reference: skills/read-research-paper/sources/file-formats.md.
The three skills chain cleanly:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β /find-paper "topic" β
β βββ reading-list.md + bibliography.yaml β
βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β /read-paper <URL> (visualize ANY single paper) β
β βββ paper-visual.md (mind map + flowchart + plain English) β
βββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β /research "topic" --bibliography ./topic/bibliography.yaml β
β βββ paper-final.md β convert_output β paper.pdf / .docx β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Or use any one standalone β they don't require each other.
/find-paper "transformer architectures for time-series forecasting" --n 10
The skill returns a curated reading list with verified DOIs, key
findings per paper, and a bibliography.yaml ready for the writer
skill.
/read-paper https://arxiv.org/abs/1706.03762
The skill returns a multi-layer Markdown rendering with mind map, flowchart, infographic, and plain-English alongside the technical content. Cached locally so re-asking is instant.
/research "predicting customer churn with graph neural networks" \
--style ieee \
--depth comprehensive \
--bibliography ./gnn-fraud-detection/bibliography.yaml
The skill walks: plan β literature review β methodology β analysis β visualization β drafting β citations β validation β review β ship.
python skills/research-paper/toolchains/convert_output.py \
--input ./gnn-fraud-detection/paper-final.md \
--to pdf \
--out paper.pdfA paper is delivered only after passing every quality gate:
- β₯ 1500 words (configurable).
- β₯ 8 references with verified DOIs.
- β₯ 1 figure or table.
- All required sections present (abstract, intro, methodology, results, discussion, limitations, conclusion, references).
- Plain-English summary present.
- Reproducibility statement present.
- Future Work section present.
- Academic-quality rubric mean β₯ 4 / 5.
- All three reviewer personas score β₯ 3.0.
- All
[CITATION NEEDED]and[UNVERIFIED]flags resolved or surfaced inKnown-gaps.md.
Failures surface in Known-gaps.md. Never silent.
npx skills add auto-detects and installs into 50+ agent runtimes:
| Universal | Symlink-supported |
|---|---|
| Amp, Antigravity, Cline, Codex, Cursor, +10 more | AiderDesk, Augment, IBM Bob, Claude Code, OpenCode, +35 more |
Run npx skills add aniketkrs/research-paper --list to see the full
list of agents detected on your machine.
research-paper/
βββ README.md, LICENSE, CHANGELOG.md, INSTALLATION.md, package.json
βββ bin/install.js β direct npx installer
βββ tests/test-runner.js β 116/116 tests pass
βββ docs/ β architecture, design decisions, FAQ
βββ skills/
βββ research-paper/ β writes papers (106 files)
βββ get-research-paper/ β finds papers (20 files)
βββ read-research-paper/ β reads any paper (26 files)
Each skill is self-contained β manifest, instructions, prompts, templates, schemas, toolchains, examples, sources, tests.
The skills work with just filesystem read/write. They emit Markdown tables and Mermaid diagrams as the always-available default.
To enable real charts, statistical validation, multi-format file I/O, and Pandoc output:
# Charts + statistical validation (research-paper)
pip install pandas numpy scipy statsmodels matplotlib seaborn pyyaml
# Multi-format file reading (read-research-paper)
pip install pdfplumber python-docx python-pptx openpyxl \
beautifulsoup4 striprtf ebooklib pytesseract Pillow
# Multi-format output (research-paper) - install Pandoc + LaTeX system-wide
# macOS: brew install pandoc && brew install --cask mactex-no-gui
# Linux: apt install pandoc texlive
# Windows: choco install pandoc miktexWhen any tool is missing, the skill detects it and falls back β never silent failure, always a clear "install X to enable" message.
The skills are modular. Each one is a folder with a clear extension boundary.
- Add a new venue (e.g., LNCS): drop a template in
templates/<venue>.md+ register inmanifest.json. - Add a new citation style: extend
citation_engine/citation-styles.mdandtoolchains/format_bibliography.py. - Add a new chart type: extend
visualization_engine/decision-engine.mdandtoolchains/generate_charts.py. - Add a new file format: extend
read-research-paper/toolchains/read_any_file.pyandread-research-paper/sources/file-formats.md.
Full extension guide: docs/extending.md.
Lightweight test suite in tests/test-runner.js:
node tests/test-runner.jsCovers:
- File structure (every required file present).
- SKILL.md frontmatter (valid YAML).
- manifest.json (valid JSON, required fields).
- JSON Schemas (paper-schema, citation-schema, visual-paper schema, etc.).
- Python toolchain self-tests (graceful degradation).
- Citation pipeline smoke test against fixtures.
116/116 tests pass.
| Symptom | Likely cause | Fix |
|---|---|---|
| Skill never activates | Restart your agent session after install | |
| Charts come out as Markdown only | Python plotting deps missing | pip install pandas matplotlib seaborn |
Can't read a .pdf |
PDF library missing | pip install pdfplumber |
Can't read a .docx |
DOCX library missing | pip install python-docx |
| Can't OCR an image | OCR not installed | pip install pytesseract Pillow + install Tesseract |
| Can't convert to PDF | Pandoc / LaTeX missing | install Pandoc + a LaTeX engine |
| Skill activates for unrelated requests | Trigger patterns too broad | edit manifest.json β trigger.patterns |
| Output truncated mid-section | Context pressure | switch to multi-file output (--depth comprehensive) |
MIT β see LICENSE.
Issues and PRs welcome at github.com/aniketkrs/research-paper.
When filing an issue, please include:
- Your runtime (Claude Code, OpenCode, etc.)
- The slash command or prompt that triggered the issue
- The contents of
Known-gaps.mdif any - The relevant
validation-report.mdif any
| Version | Highlights |
|---|---|
| 2.3.0 | Multi-format file I/O: read PDF/DOCX/PPTX/XLSX/EPUB/images; write PDF/DOCX/HTML/LaTeX/EPUB/RTF/ODT/PPTX |
| 2.2.0 | Added read-research-paper skill (visual paper reading) |
| 2.1.0 | Added get-research-paper skill (paper discovery) |
| 2.0.x | Initial release of research-paper skill (paper writing) |
See CHANGELOG.md for the full history.