mcpbeat

Paper To Code

lingzhi227/paper-to-code

Convert an ML research paper into a complete, runnable code repository. 3-stage pipeline from Paper2Code — Planning (UML + dependency graph) → Analysis (per-file logic) → Coding (dependency-ordered generation). Use for reproducing paper methods.

3k tokens
context cost
the whole folder, loaded on every use
2
files
instructions only
0
copies elsewhere
how many repositories repackaged it
256
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/lingzhi227/agent-research-skills --skill paper-to-code

The instruction itself

12 sections, as written by the author

Paper to Code

Convert a research paper into a complete, runnable code repository.

Input

  • $0 — Paper PDF path, paper text, or paper URL

References

  • Paper2Code prompts (planning, analysis, coding stages): ~/.claude/skills/paper-to-code/references/paper-to-code-prompts.md

Workflow (from Paper2Code)

Stage 1: Planning

Four-turn conversation to create a comprehensive plan:

  • Overall Plan: Extract methodology, experiments, datasets, hyperparameters, evaluation metrics
  • Architecture Design: Generate file list, Mermaid classDiagram, sequenceDiagram
  • Task Breakdown: Logic analysis per file, dependency-ordered task list, required packages
  • Configuration: Extract training details into config.yaml

Stage 2: Analysis

For each file in the task list (dependency order):

  • Conduct detailed logic analysis
  • Map paper methodology to code structure
  • Reference the config.yaml for all settings
  • Follow the UML class diagram interfaces strictly

Stage 3: Coding

For each file in dependency order:

  • Generate code with access to all previously generated files
  • Follow the design's data structures and interfaces exactly
  • Reference config.yaml — never fabricate configuration values
  • Write complete code — no TODOs or placeholders

Stage 4: Debugging (if needed)

If execution fails:

  • Collect error messages
  • Identify root cause using SEARCH/REPLACE diff format
  • Apply minimal fixes preserving original intent
  • Re-run until successful

Output Structure

reproduced_code/
├── config.yaml        # Training configuration
├── main.py            # Entry point
├── model.py           # Model architecture
├── dataset_loader.py  # Data loading
├── trainer.py         # Training loop
├── evaluation.py      # Metrics and evaluation
├── reproduce.sh       # Run script
└── requirements.txt   # Dependencies

Key Constraints

  • Dependency order: Each file is generated with access to all previously generated files
  • Interface contracts: Mermaid diagrams serve as rigid interface definitions across all stages
  • No fabrication: Only use configurations explicitly stated in the paper
  • Complete code: Every function must be fully implemented

Rules

  • Follow the paper's methodology exactly — do not invent improvements
  • Generate code in dependency order (data loading → model → training → evaluation → main)
  • Use config.yaml for all hyperparameters and settings
  • Every class/method in UML diagram must exist in code
  • Generate a reproduce.sh script for one-command execution
  • If paper details are ambiguous, note them explicitly
  • Upstream: literature-search
  • Downstream: experiment-code
  • See also: code-debugging, algorithm-design

How to use it

Copy the folder

Take lingzhi227/paper-to-code from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

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.