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.
npx agentmods add skills/leonardodalinky/scider/plotting-agentnpx skills add leonardodalinky/SciDER --skill plotting-agentgit clone --depth 1 https://github.com/leonardodalinky/SciDERWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/leonardodalinky/scider/plotting-agent)<a href="https://agentmods.dev/skills/leonardodalinky/scider/plotting-agent"><img src="https://agentmods.dev/badge/skills/leonardodalinky/scider/plotting-agent.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00102 | $0.01967 |
| Opus 5 | $0.00051 | $0.00983 |
| Sonnet 5 | $0.00020 | $0.00393 |
| Haiku 4.5 | $0.00010 | $0.00197 |
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.
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.
Copies of this mod
1 near-identical copy found in the catalogue:
- plotting-agent — 97% identical, 1 lines differ
How it starts
The opening of the file, as written. The whole thing — 169 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 theplotting_planarrayworkspace/inputs/idea.mdandworkspace/inputs/experimental_log.md— the source dataworkspace/inputs/figures/— optional pre-existing figures (PlotOnmode)
Outputs
workspace/figures/<figure_id>.png— one PNG perplotting_planentry (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)
-
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" } -
Few-shot retrieval (visual planning): pick the matching pattern from
references/chart-patterns.md(forplot_type=="plot") orreferences/diagram-patterns.md(forplot_type=="diagram"). -
Extract data: parse
idea.mdand/orexperimental_log.md(data_sourcefield tells you which) to obtain the numeric values or conceptual entities the figure needs. Forexperimental_log.md, the## 2. Raw Numeric Datasection contains markdown tables. -
Render:
If
PAPERBANANA_PATHis set — use the PaperBanana backbone (Zhu et al., 2026). It runs a Retriever → Planner → Stylist → Visualizer → Critic loop and is especially good forplot_type == "diagram". Seereferences/paperbanana-cookbook.mdfor setup (needs a Gemini API key).
What ships with it
9 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/aspect-ratios.md 2.0 KB
- references/caption-prompt.md 2.7 KB
- references/chart-patterns.md 6.6 KB
- references/diagram-patterns.md 3.9 KB
- references/paperbanana-cookbook.md 6.0 KB
- references/plotting-pipeline.md 5.8 KB
- scripts/paperbanana_render.py 13 KB runs code
- scripts/render_diagram.py 4.2 KB runs code
- scripts/render_matplotlib.py 7.3 KB runs code
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.
- 3d ago First seen · 169 lines · 102 tokens per session scan A 49bf729fd37e
plotting-agent is a skill published in the GitHub repository leonardodalinky/SciDER (88 stars, last pushed 3mo ago), licensed Apache-2.0. It adds 102 tokens to every session and 1,967 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
scientific-visualization
Create publication figures with matplotlib/seaborn/plotly. Multi-panel layouts, error bars, significance markers, colorblind-safe, export PDF/EPS/TIFF, for journal-ready scientific plots.
compute-env-setup
Set up a compute environment on a remote provider so Claude Science jobs can run there. Covers direct SSH/conda hosts, Slurm clusters, container-via-bridge runners, and managed-API providers (Modal, GCP, RunPod). Use when standing up a new provider, porting an env to a different backend, adding a tool that needs its…
figure-style
Publication-grade figure correctness and legibility rules. Load before drawing any plot and call applyfigurestyle() — sets a role-mapped font-size ladder, outward ticks, frameless legends, and 300-dpi output. The skill is a checklist, not a house look: data fidelity (claim-titles tested against every row, excluded…
paper-polish
Polishes existing academic prose while preserving the author's meaning: grammar and flow repair, tone calibration against evidence strength, AI-tone removal, and Chinese-to-English rewriting at submission quality. Never fabricates data, citations, or claims, and flags any edit that could change scientific meaning. Use…
paper-writer
Drafts publishable paper prose from the author's own materials, from a single paragraph to a full manuscript, across STEM and non-STEM fields. Every factual claim traces to user input, verified retrieval, or field common knowledge; citations pass an independent verification ladder; delivery is clean prose with zero…
pre-submission-reviewer
Runs a pre-submission review of a technical paper across five dimensions: macro logic, writing details, English grammar, LaTeX formatting, and figure quality. Uses a reviewer-style severity taxonomy (CRITICAL / MAJOR / MINOR) and flags banned AI-tone vocabulary and em-dash misuse. Use when the user asks to 'review…