PaperBanana — Automated Academic Illustration Tool
Multi-agent framework that generates publication-ready diagrams and statistical plots from research paper text, expanding Google Research's PaperBanana to new domains.
- Source repo
- llmsresearch/paperbanana
- Stars
- ★ 2.4k
- Last updated
- 1mo ago
- License
- MIT
- Primary language
- Python
- FA score
- 52/100 · Major gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformClaude Code · OpenAI APIChatGPT (Partial support)
- Cost
- Free software; you pay for model usage
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- AI researchers: Automatically generate architecture diagrams for conferences like NeurIPS from methodological text.
- Not a fit if
- Users unwilling to manage API keys and pay per-call costs
- Teams needing official Google Research endorsement or parity with the original system
- Source review
- 52/100 · Major gaps
What does this agent do, and when should you use it?
PaperBanana is an unofficial, community-driven open-source implementation of Google Research's PaperBanana paper, focusing on automating academic figure generation. It implements a multi-agent pipeline with up to seven specialized agents, including input optimization, retrieval, planning, styling, visualization, and critique, to produce publication-quality methodology diagrams and statistical plots. Supporting multiple VLM and image generation providers such as OpenAI, Azure OpenAI, Google Gemini, and Atlas Cloud, it offers a CLI, Python API, MCP server, and local web UI (PaperBanana Studio) for flexible integration. The project also includes batch generation, sweep manifests, evaluation tools, and overleaf GitHub Action, making it a comprehensive tool for AI researchers.
PaperBanana reads methodology text or PDF files and generates figures via commands like paperbanana generate and paperbanana plot. The pipeline consists of phases: optional input optimization (context enricher and caption sharpener), planning with retriever, planner, stylist, and iterative refinement with visualizer and critic. It supports batch generation from manifest files, sweep parameter scans, comparative evaluation with paperbanana evaluate, and polishing existing figures with paperbanana polish. It can orchestrate full-paper figure packages with paperbanana orchestrate, and provides MCP server integration for Claude Code, Cursor, and other MCP clients.
- AI researchers: Automatically generate architecture diagrams for conferences like NeurIPS from methodological text.
- Data scientists: Use
paperbanana plotto create statistical charts from CSV/JSON data. - Authors: Use
paperbanana orchestrateto generate a complete set of figures and LaTeX code from a paper source. - Developers: Integrate diagram generation into CI/CD pipelines via the Python API.
- Researchers using Claude Code: Generate diagrams directly in the editor via MCP server or Claude skills.
- Teams needing batch generation: Generate multiple diagrams or run parameter sweeps from manifest files.
How do you install or deploy this agent?
Install with pip install paperbanana. For development or extra features, clone the repository and run pip install -e ".[dev,openai,google]". After installation, copy .env.example to .env and add API keys (OPENAI_API_KEY or GOOGLE_API_KEY), or run paperbanana setup for interactive configuration. Docker is also supported by building the image and passing the API key at runtime.
How do you use this agent?
First, ensure API keys are configured. Then run commands like paperbanana generate --input method.txt --caption "Overview of our framework" --optimize --auto to generate a methodology diagram, or paperbanana plot --data results.csv --intent "Bar chart comparing accuracy" for statistical plots. Additional usage includes batch generation, evaluation, MCP integration, and more, as documented.
What are this agent's strengths and limitations?
- High automation: Fully automated pipeline from text to publication-ready diagrams with multi-agent iterative optimization.
- Multi-provider support: Works with OpenAI, Azure, Gemini, Atlas Cloud, and OpenRouter, reducing vendor lock-in.
- Rich integration: Provides CLI, Python API, MCP server, GitHub Action, and PaperBanana Studio UI.
- Extensible: Supports batch generation, parameter sweeps, custom venue style packs, and Overleaf integration.
- Unofficial implementation: Community reimplementation that may differ from the original system and lacks endorsement from authors.
- Dependency on external APIs: Requires API keys and incurs costs, depending on the selected provider.
- Complex setup: Requires Python environment and configuration of multiple providers and dependencies.
- Output quality depends on model: Generated figures rely on the capabilities of the chosen VLM and image generation models.
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| PaperBanana — Automated Academic Illustration Tool This agent | 52 · Major gaps | CLIFree + model costs | ★ 2.4k | 1mo ago | Python | Claude Code · OpenAI API |
| MetaHarness | 86 · Good | CLIFree + model costs | ★ 707 | 9d ago | TypeScript | Codex · Claude Code |
| no_human | 67 · Some gaps | CLIFree + model costs | ★ 331 | 9d ago | Python | Claude Code |
| Maestro-Flow | 52 · Major gaps | CLIFree + model costs | ★ 566 | 3d ago | TypeScript | Codex · Claude Code · Claude API |
How does FollowAgents rate this agent?
Why each dimension lost points
Evidence shows: project uses API keys, but documentation warns not to commit .env and .gitignore excludes it. User confirmation: CLI provides --continue and --feedback, but no mandatory confirmation. Data flow transparency: README describes multi-agent pipeline, but not detailed data transmission to external APIs. Sensitive data handling: API keys stored in .env, security policy exists. Dependency security: Dependabot monitoring, but no specific vulnerability details. External effects: generates images and code, but no explicit restrictions. Rollback: supports --continue-run, but no formal rollback mechanism. Source attribution: clearly states unofficial implementation and cites arXiv paper. Deductions: lack of detailed least privilege, user confirmation, data flow details, sensitive data encryption, dependency vulnerability details, external effect control, rollback mechanism, and source verification.
Evidence shows: README and code structure consistent, tests cover key parsing functions. Dependencies listed in pyproject.toml, but availability not verified. Failure messages: tests show parsing failures return empty results, but no user-friendly error messages. Deductions: dependency availability not verified, failure messages not detailed.
Evidence shows: targets AI scientists, provides multiple usage scenarios (CLI, API, MCP, Studio). Capability boundaries: clearly lists supported providers and models. Trigger precision: CLI commands and parameters clearly defined. Environment fit: supports Python 3.10+, provides Docker and Colab. Deductions: no detailed limitations across environments.
Evidence shows: README structure clear, installation instructions detailed. Naming stability: version defined in pyproject.toml. Examples and FAQ: multiple examples provided. Known limitations: not explicitly listed. License: MIT. Versioning changelog: not provided. Maintenance responsibility: not clear. Deductions: missing known limitations, changelog, and maintenance responsibility.
Evidence shows: outputs are PNG etc., directly usable. Marginal value: provides automated diagram generation, saves time. Cost benefit: offers free Gemini option, but no detailed cost analysis. Deductions: no cost-benefit analysis.
Evidence shows: README cites arXiv paper, but no specific implementation details. Cross-source corroboration: not provided. Fact/inference separation: not clear. Deductions: lack of traceability, cross-source corroboration, and fact/inference separation.
- API key management requires caution; ensure .env file is not committed.
- Generated code (e.g., matplotlib) may contain malicious content; review before execution.
- MCP server should not be exposed to untrusted networks.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
Release notes excerpt
PaperBanana v0.3.0 The feature release that closes out the entire issue tracker — every open issue and PR resolved. Highlights below; the dataset, benchmarking, and venue work make this the most research-credible release yet. Highlights Official benchmarking — paperbanana benchmark --split test runs the official PaperBananaBench test split (292 diagram / 240 plot cases, with the official per-example aspect ratios), and --mode vanilla provides the no-pipeline ablation baseline — results are now directly comparable to the paper (arXiv:2601.23265). …View on GitHub ↗ -
bench-data-v1 PaperBananaBench dataset mirror (v1)
Release notes excerpt
Mirror of PaperBananaBench.zip (254 MB) from the original authors' dataset [dwzhu/PaperBananaBench](https://huggingface.co/datasets/dwzhu/PaperBananaBench) (last upstream update 2026-03-22), re-hosted here so paperbanana data download has a stable, project-controlled source. Contents: PaperBananaBench/{diagram,plot}/{ref.json, test.json, images/} — diagram: 298 reference + 292 test entries (610 images); plot: 240 reference + 240 test entries with ground-truth matplotlib code (480 images). Fields per entry: id, category, content, visual_intent, path_to_gt_image, `additional_i …View on GitHub ↗ -
Release notes excerpt
PaperBanana v0.2.0 The first release in four months — 150+ commits. If you installed from PyPI, this is a very different (and much better) tool than 0.1.2. Fresh installs work again out of the box (the deprecated default Gemini model was replaced), and --budget now actually protects your spend on Gemini image models. Highlights New providers — Atlas Cloud (#220), LiteLLM for 100+ backends (#212), Ollama and OpenAI-compatible local endpoints, Anthropic, AWS Bedrock, and Claude Code as a VLM. Plots no longer demand image-gen credentials they never use (#202, fixes #201). …View on GitHub ↗