plotting-agent

A paper-figure creation step from PaperOrchestra, a research-paper automation pipeline described in an arXiv paper. It turns an outline and experiment notes into plots or explanatory diagrams, then can review and refine the rendered images.

In plain words
What is it for?
Use it to render research plots and conceptual diagrams as PNG files, refine them through visual review, and produce captions for each planned figure.
Why use it?
It reduces the manual work of making figures from experiment data and writing captions that match the paper’s context. Existing figures can also be used as inputs in the supported mode.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/woodfishhhh/ez_math_model/plotting-agent
Any agent
npx skills add woodfishhhh/EZ_math_model --skill plotting-agent
Clone the repo
git clone --depth 1 https://github.com/woodfishhhh/EZ_math_model

Made for: Claude Code, Codex.

Per session 102 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,961 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 97% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00102 $0.01961
Opus 5 $0.00051 $0.00981
Sonnet 5 $0.00020 $0.00392
Haiku 4.5 $0.00010 $0.00196

Measured 3d ago against content hash 57bd1e7e18ab, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

plotting-agent scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

The scan reads SKILL.md. This mod also ships 3 executable files (scripts/paperbanana_render.py, scripts/render_diagram.py, scripts/render_matplotlib.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

97% identical to plotting-agent — 1 line differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

skills/ez-math-model/external/paper-orchestra/skills/plotting-agent/SKILL.md · 168 lines

How it starts

The opening of the file, as written. The whole thing — 168 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Plotting Agent (Step 2)

Faithful implementation of the Plotting Agent from PaperOrchestra (Song et al., 2026, arXiv:2604.05018, §4 Step 2 and App. F.1 p.45).

Cost: ~20–30 LLM calls. The paper uses PaperBanana (Zhu et al., 2026) as the default backbone with a closed-loop VLM-critique refinement. This skill expresses that loop in host-agent terms: you (the host agent) generate matplotlib code with your own LLM, render via your Bash/Python tool, optionally critique the rendered PNG with your vision model, redraw, and finally caption.

Inputs

  • workspace/outline.json — specifically the plotting_plan array
  • workspace/inputs/idea.md and workspace/inputs/experimental_log.md — the source data
  • workspace/inputs/figures/ — optional pre-existing figures (PlotOn mode)

Outputs

  • workspace/figures/<figure_id>.png — one PNG per plotting_plan entry (300 DPI, sized to the requested aspect ratio)
  • workspace/figures/captions.json{figure_id: caption_text} map

Workflow

Per figure (executed independently per figure_id)

  1. Read the figure spec from outline.json:

    {
      "figure_id": "fig_main_results",
      "title": "Main Results on Dataset X",
      "plot_type": "plot",
      "data_source": "experimental_log.md",
      "objective": "Visual summary (Grouped Bar Chart) demonstrating ...",
      "aspect_ratio": "5:4"
    }
    
  2. Few-shot retrieval (visual planning): pick the matching pattern from references/chart-patterns.md (for plot_type=="plot") or references/diagram-patterns.md (for plot_type=="diagram").

  3. Extract data: parse idea.md and/or experimental_log.md (data_source field tells you which) to obtain the numeric values or conceptual entities the figure needs. For experimental_log.md, the ## 2. Raw Numeric Data section contains markdown tables.

  4. Render:

    If PAPERBANANA_PATH is set — use the PaperBanana backbone (Zhu et al., 2026). It runs a Retriever → Planner → Stylist → Visualizer → Critic loop and is especially good for plot_type == "diagram". See references/paperbanana-cookbook.md for setup (needs a Gemini API key).

Read the full file on GitHub · 168 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 168 lines · 102 tokens per session scan A 57bd1e7e18ab

Subscribe to this mod's changes

plotting-agent is a skill published in the GitHub repository woodfishhhh/EZ_math_model (39 stars, last pushed 1mo ago), licensed MIT. It adds 102 tokens to every session and 1,961 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. It is 97% identical to plotting-agent, differing in 1 line, and is treated as a copy.

Related

Other skills, from other repositories

math-modeling-solver

数学建模竞赛解题全流程指导。覆盖国赛(CUMCM)和美赛(MCM/ICM)全部题型(A-F),提供12种问题本质分析、95+场景模型决策矩阵、5本算法Cookbook、11本完整例题Playbook、22个Python+7个MATLAB可运行代码模板。与math-modeling-paper形成"解题→写作"配对。当用户提及建模思路、选什么模型、怎么建模、赛题求解、粘贴赛题文本、美赛/国赛题目分析、CVaR/NSGA-II/Monte Carlo/时间序列/ANOVA/灰色关联、网络流/图论/生态建模、模型命名/Memo/Letter/Our Work流程图时,使用此skill。.

Lupynow/math-modeling-skills · 186 tokens

mathmodel-skill

CUMCM 国赛、MCM/ICM 美赛与电工杯数学建模竞赛的端到端协作工作流。Use when a user explicitly works on one of these modeling contests or asks to run/review a modeling-competition paper from problem selection through modeling, solving, robustness, writing, compliance, and final submission review. Provides 10 stages, persistent decision state…

handsomeZR-netizen/mathmodel-skill · 127 tokens

math-modeling-paper

数学建模竞赛论文写作全流程指导。覆盖国赛(CUMCM)和美赛(MCM/ICM),从论文结构规划、各章节撰写、模型检验、参考文献规范到最终格式检查。与math-modeling-solver形成"解题→写作"配对——可接收solver输出的论文草稿片段直接展开写作。当用户提及数学建模论文写作、建模比赛、国赛/美赛/电工杯/亚太杯/深圳杯/华为杯论文、CUMCM、MCM/ICM、数模论文结构、摘要写作、模型检验、灵敏度分析、latex建模模板、word建模排版、Memo/Letter写作、模型命名、Our Work流程图,或需要写/修改/优化/检查建模论文的任何部分时,都必须使用此 skill。.

Lupynow/math-modeling-skills · 202 tokens

interpret-modeling-problems

根据原始赛题和附件,生成可回查证据的国赛及类似数学建模赛题解读,建立小问输入输出、约束与歧义、附件审计、模型蓝图、验证方案和论文交付接口。适用于选题比较、正式建模前的完整解读和已有解读复核;不用于在缺少原题时臆测题意,也不把候选模型伪装成已经验证的数值求解。.

zhoufz021/interpret-modeling-problems · 114 tokens

math-modeling-finalizer

数学建模项目收口与终审 Skill。用于正式结果已基本冻结后的参赛者尺度代码简化与行为回归、最终完整复审、AI 工具使用详情 DOCX、Word/PDF 排版检查、支撑材料 ZIP 与提交前卫生检查。典型请求包括“结果已经定了,把代码改得更像学生项目”“最后完整审一遍”“检查最终 Word/PDF”“生成 AI 使用详情和支撑材料”。若需要重新建模、修改 evaluator 或正式结果,路由回 math-modeling-solver;正文、摘要、引用语义或公式写作问题路由回 math-modeling-paper;提交后的项目复盘/教学交给 math-modeling-growth。.

mantou6666/Math-Modeling-Agent-Flow · 160 tokens

math-modeling-growth

把真实项目的阶段结果、决策、证据、失败记录和当前进度,转化为通俗、循序渐进、可执行的学习解释与赛后成长报告。用户要求复盘项目、理解自己学到了什么、解释某次决策、生成赛后报告、从项目进度推进学习,或需要按接受度逐步教学时使用;优先读取 Solver、Paper、Finalizer 等上游阶段产物和当前冻结结果。.

mantou6666/Math-Modeling-Agent-Flow · 108 tokens