When you screenshot a figure from a NeurIPS paper and want your own data plotted in that exact visual style, this skill runs a three-agent loop: a preprocessor crops the reference image, a drawer writes matplotlib code matching the style, and a vision-only reviewer audits the output against the reference without seeing your data. It iterates up to six times or until the reviewer says ship. The output is a self-contained Python script with embedded data and a type-42 PDF. It explicitly does not trigger on generic matplotlib requests, only when you provide both a reference image and your own data. The architecture is careful about separating style transfer from layout cloning, so it matches colors and typography without copying axis limits that don't fit your numbers.

GitHub stars
457
last updated
May 25, 2026

Install

$ npx -y skills add vila-lab/figmirror --skill figmirror --agent claude-code

Installs into .claude/skills of the current project.

Files

FigMirror (figmirror)

Use this skill when the user wants to:

  • Transfer the visual style of a top-conference paper figure to their own data.
  • Produce a camera-ready matplotlib figure matching a reference screenshot in style, not in data.
  • Mirror 3D paper-figure references such as surfaces, scatter, trajectories, bars, layered waterfalls, or plane projections when the reference or data is actually 3D.
  • Receive a self-contained .py script with editable inline data plus PNG/PDF outputs.

Required Inputs

  • A reference figure screenshot (PNG/JPG). It may include margins, captions, neighboring panels, or page text; Stage 0 preprocesses it.
  • The user's data in any parseable form: pasted table, CSV, TSV, markdown table, or dirty terminal text.
  • A working directory for iteration artifacts.

3D Insert Gate

Enable references/three-d-prompting.md only when the user asks for a 3D figure, the reference is visibly 3D, or the parsed data requires a 3D encoding such as x/y/z, surfaces, trajectories, layered profiles, closed objects, 3D small multiples, 3D bars, or plane projections. Do not use this insert to turn an ordinary 2D task into 3D.

Sponsors

Details

Repository
github.com/vila-lab/figmirror
Categories
Code Review & Quality, Data Science & ML, Release Management, Design & UI/UX
First seen
Jun 11, 2026

More from vila-lab/figmirror

All 5
1addyosmani avataraccessibilityaddyosmani/web-quality-skillsAudit and improve web accessibility following WCAG 2.2 guidelines. Use when asked to "improve accessibility", "a11y audit", "WCAG compliance", "screen reader su68.8Kskills.sh installs
2addyosmani avatarseoaddyosmani/web-quality-skillsOptimize for search engine visibility and ranking. Use when asked to "improve SEO", "optimize for search", "fix meta tags", "add structured data", "sitemap opti54.8Kskills.sh installs
3addyosmani avatarperformanceaddyosmani/web-quality-skillsOptimize web performance for faster loading and better user experience. Use when asked to "speed up my site", "optimize performance", "reduce load time", "fix s43.7Kskills.sh installs
4addyosmani avatarcore-web-vitalsaddyosmani/web-quality-skillsOptimize Core Web Vitals (LCP, INP, CLS) for better page experience and search ranking. Use when asked to "improve Core Web Vitals", "fix LCP", "reduce CLS", "o34.4Kskills.sh installs
5obra avatarwriting-clearly-and-conciselyobra/the-elements-of-styleApply Strunk's timeless writing rules to ANY prose humans will read—documentation, commit messages, error messages, explanations, reports, or UI text. Makes you2.2Kskills.sh installs
6tirth8205 avatarbuild-graphtirth8205/code-review-graphBuild or update the code review knowledge graph. Run this first to initialize, or let hooks keep it updated automatically.1.3Kskills.sh installs