Figmirror

Omformaterar dina data som en matplotlib-figur som matchar en referensartikels visuella stil

av VILA-Lab · VILA-Lab/FigMirror

Testad · Fungerar ★ 8.0/10

Figmirror — Omformaterar dina data som en matplotlib-figur som matchar en referensartikels visuella stil

Vad den gör

Överför den visuella stilen från en referensartikels figur (NeurIPS/ICML/Nature-stil) till dina egna data, och genererar ett fristående matplotlib-skript plus PNG och en Type-42 PDF via en iterativ Drawer/Reviewer-loop. Utlöses när du bifogar en skärmdump av en pappersfigur tillsammans med dina data och ber att "mirror this figure's style", "make a chart that looks like this paper", eller "reproduce this figure with my numbers". Utlöses inte vid vanliga matplotlib-förfrågningar utan referensbild.

Testrapport

Hittade SKILL.md på .claude/skills/figmirror/SKILL.md; frontmatter parsas med name+description. Stickprovskontrollerade 6 i texten refererade filer (aesthetic-library.md, iter-loop-spec.md, de tre figure-*-agenterna, score_3d_candidates.py) alla HTTP 200; aesthetic-library.md är 933 rader, vilket matchar påståendet om "~900". Inga säkerhetsbrister. Trigger testades med 5 formuleringar (3 med referensbild+data borde aktiveras, 2 vanliga matplotlib utan bild borde inte) — alla 5 bedömdes korrekt; beskrivningens explicita negativa fall gör detta rent. Utdata: renderade ett BASLINJE-linjediagram med matplotlib-standardinställningar, sedan ett FÄRDIGHETS-diagram som tillämpade de medföljande L2 aesthetic-library-värdena ordagrant (serif+STIX, top/right despine vid 0.6pt, #e0e0e0 rutnät, ramlös tät legend, seaborn-deep palett, single-column figsize, pdf.fonttype=42 — Type-42 inbäddning verifierad i PDF:en). Konkret, tydligt pappersklassad förbättring jämfört med baslinjen. Förbehåll: jag utövade endast L2-konventionslagret; den huvudsakliga L1 vision-mirror-loopen mot en verklig referensskärmdump via de tre utsända underagenterna kördes inte (ingen referensbild / vision-iteration i min kontext), även om färdigheten dokumenterar en main-thread fallback så den fungerar fortfarande endast som färdighet.

Testad: 2026-07-21 · Claude Code 2.x (agent harness)

Installation

git clone --depth 1 https://github.com/VILA-Lab/FigMirror.git /tmp/figmirror-src
mkdir -p ~/.claude/skills ~/.claude/agents
cp -R /tmp/figmirror-src/.claude/skills/figmirror ~/.claude/skills/figmirror
cp /tmp/figmirror-src/.claude/agents/figure-preprocessor.md /tmp/figmirror-src/.claude/agents/figure-illustrator.md /tmp/figmirror-src/.claude/agents/figure-critic.md ~/.claude/agents/
# Requires python3 + matplotlib to run the generated figure scripts.
# The 3 agents above drive the Drawer/Reviewer loop; SKILL.md has a main-thread fallback if they are absent.
# Recommended installer (also wires Codex + local web UI): curl -fsSL https://raw.githubusercontent.com/VILA-Lab/FigMirror/main/scripts/install.sh | bash -s -- --claude
# Usage: attach a paper-figure screenshot + paste your data, then "mirror this figure's style with my data".

Kommandon och exempelprompter

  • /figmirrorOmformaterar dina data som en matplotlib-figur som matchar en referensartikels visuella stil

Skills triggas av vanliga förfrågningar — inga kommandon att memorera. Efter installationen aktiverar prompter som dessa skillen (på engelska):

  • Mirror this paper figure's style with my dataset
  • Make my chart look like this NeurIPS figure
  • Reproduce this reference plot using my own data