Skip to content

CarlosA49/academic-engine

Repository files navigation

Universal Academic Multi-Agent Engine

Multi-agent system that researches, drafts, verifies, typesets, and exports academic papers across 7 formats.

Pipeline

Architect -> Researcher -> Synthesizer -> Reviewer -+-> Typesetter -> Export
                              ^                     |
                              +------ feedback -----+

The Reviewer routes back to the Researcher (missing evidence) or Synthesizer (writing issues) until verification passes, capped at 3 revisions.

Install

python -m venv .venv
.venv\Scripts\activate   # Windows PowerShell/cmd
# source .venv/bin/activate  # macOS/Linux
pip install -r requirements.txt
playwright install chromium

System dependencies for exporters:

Configure

Copy .env.example to .env and set:

  • ANTHROPIC_API_KEY — required
  • TAVILY_API_KEY — required for web search
  • SEMANTIC_SCHOLAR_API_KEY — optional (higher rate limits)

Run

python main.py run "Survey of CRISPR delivery vectors" --out output/crispr

Generates output/crispr.md, .txt, .docx, .pdf, .pptx, .xlsx, and output/crispr_page_N.png.

Pick specific formats:

python main.py run "Quantum error correction overview" -o out/qec -f pdf -f docx

Test

pytest -v

Project Layout

academic_engine/
├── state.py          # GlobalState TypedDict
├── config.py         # Env-driven Config dataclass
├── llm.py            # Anthropic SDK wrapper with prompt caching
├── graph.py          # LangGraph wiring + reviewer routing
├── pipeline.py       # run_pipeline orchestrator
├── agents/           # 5 agent nodes + system prompts
├── tools/            # Semantic Scholar, ArXiv, Tavily, web scraper
└── exporters/        # 7 export formats + universal facade
main.py               # Typer CLI entry point
tests/                # Full pytest suite (40+ tests)

Use as Claude Code Plugin

This repo is also a Claude Code plugin. It ships a single skill (academic-engine) that teaches Claude how to drive the CLI from inside a Claude Code session.

Install

claude plugin install "<path to this repo>"
claude plugin list   # verify "academic-engine" appears

Required environment variables (never committed)

  • ANTHROPIC_API_KEY (required)
  • TAVILY_API_KEY (required for web search)
  • SEMANTIC_SCHOLAR_API_KEY (optional — higher rate limits)

Set these in the shell that launches Claude Code; the plugin reads them at run time.

Optional system dependencies

  • PDF export needs WeasyPrint GTK runtime.
  • PNG/JPG export needs Poppler.
  • MD / TXT / DOCX / PPTX / XLSX have no system dependencies.

Usage

Ask Claude Code something like: "Write me a literature review on X, export as DOCX and PDF." The skill activates automatically, bootstraps the venv if needed, verifies API keys, runs the test suite, then invokes python main.py run … and reports the output files.

See PLUGIN_QUICKSTART.md for the full 60-second walkthrough.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages