Scientific Figure Making
ChenLiu-1996/figures4papers
Covers publication-ready matplotlib figures for academic papers, slides, and reports—bars, trends, scatter, heatmaps, and multi-panel layouts—with this…
Redraws your data as a matplotlib figure in the visual style of a reference paper figure, using a drawer and reviewer loop.
$ npx skills add VILA-Lab/FigMirror --skill figmirror -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install VILA-Lab/FigMirror figmirror --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/VILA-Lab/FigMirror.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/retired-figmirror-20260817/skills-figmirror .claude/skills/figmirror && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "figmirror" agent skill from https://github.com/VILA-Lab/FigMirror/tree/main/.claude/retired-figmirror-20260817/skills-figmirror into .claude/skills/figmirror/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "figmirror", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/VILA-Lab/FigMirror/tree/main/.claude/retired-figmirror-20260817/skills-figmirrorType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add VILA-Lab/FigMirror --skill figmirror -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install VILA-Lab/FigMirror figmirror --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VILA-Lab/FigMirror.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/retired-figmirror-20260817/skills-figmirror .agents/skills/figmirror && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "figmirror" agent skill from https://github.com/VILA-Lab/FigMirror/tree/main/.claude/retired-figmirror-20260817/skills-figmirror into .agents/skills/figmirror/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "figmirror", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add VILA-Lab/FigMirror --skill figmirror -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install VILA-Lab/FigMirror figmirror --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VILA-Lab/FigMirror.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/retired-figmirror-20260817/skills-figmirror .cursor/skills/figmirror && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "figmirror" agent skill from https://github.com/VILA-Lab/FigMirror/tree/main/.claude/retired-figmirror-20260817/skills-figmirror into .cursor/skills/figmirror/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "figmirror", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/VILA-Lab/FigMirror.git --path .claude/retired-figmirror-20260817/skills-figmirror--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add VILA-Lab/FigMirror --skill figmirror -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install VILA-Lab/FigMirror figmirror --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VILA-Lab/FigMirror.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/retired-figmirror-20260817/skills-figmirror .gemini/skills/figmirror && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "figmirror" agent skill from https://github.com/VILA-Lab/FigMirror/tree/main/.claude/retired-figmirror-20260817/skills-figmirror into .gemini/skills/figmirror/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "figmirror", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install VILA-Lab/FigMirror figmirrorInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add VILA-Lab/FigMirror --skill figmirror -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/VILA-Lab/FigMirror.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/retired-figmirror-20260817/skills-figmirror .github/skills/figmirror && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "figmirror" agent skill from https://github.com/VILA-Lab/FigMirror/tree/main/.claude/retired-figmirror-20260817/skills-figmirror into .github/skills/figmirror/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "figmirror", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add VILA-Lab/FigMirror --skill figmirror -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install VILA-Lab/FigMirror figmirror --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/VILA-Lab/FigMirror.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/retired-figmirror-20260817/skills-figmirror .opencode/skills/figmirror && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "figmirror" agent skill from https://github.com/VILA-Lab/FigMirror/tree/main/.claude/retired-figmirror-20260817/skills-figmirror into .opencode/skills/figmirror/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "figmirror", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
figmirrorRedraws your data as a matplotlib figure in the visual style of a reference paper figure, using a drawer and reviewer loop.
You supply a reference figure image, your own data in any parseable form (a pasted table, CSV, TSV, markdown table or messy terminal text) and optionally a working directory. Three bundled subagents run the loop: a preprocessor that crops away margins, captions and neighboring panels, a drawer that writes a matplotlib script and PNG on each iteration, and a reviewer that audits the draft on a fresh view and returns one strict JSON verdict.
Output is a self-contained matplotlib script, a PNG and a type-42 PDF that match the reference's style but not its data. An optional 3D guide is used only when you ask for a 3D figure, the reference is visibly 3D or the data needs a 3D encoding; it is never used to turn a 2D task into 3D. Plain matplotlib requests with no reference image do not trigger it. State passes between iterations through files in the work directory, since the subagents keep no memory.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 11631cc. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/, which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
FigMirror Figure Style Transfer loads about 2.1k tokens when it runs, and up to ~22k if it reads all its reference files. Until then it costs about 170 tokens; SKILL.md has 947 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
Without a licence we can't republish the file, so here is its outline and opening line. It has 947 words (~2,100 tokens).
“Transfer the visual style of a top-conference paper figure (NeurIPS / ICML / ICLR / Nature / Science) onto user data via an iterative Drawer / Reviewer loop. Output is a self-contained matplotlib script + PNG + type-42 PDF that…”
SKILL.md and 19 other files (scripts, references) in .claude/retired-figmirror-20260817/skills-figmirror of VILA-Lab/FigMirror.
Open the folder on GitHubat commit 11631cc
FigMirror Figure Style Transfer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| FigMirror Figure Style Transfer this skillVILA-Lab/FigMirror | 523 | — | ~2.1k | Automated safety check: Pass | None | |
| Scientific Figure MakingChenLiu-1996/figures4papers | 8.2k | — | ~557 | Automated safety check: Pass | Custom licence | |
| Agent Figure GalleryDsadd4/AgentFigureGallery | 159 | — | ~643 | Automated safety check: Pass | MIT | |
| Scientific Figure Generationlingzhi227/agent-research-skills | 384 | — | ~809 | Automated safety check: Pass | None | |
| MathModel Figure Templatesjihe520/MathModelAgent | 6.2k | — | ~627 | Automated safety check: Notes | None | |
| Plot From ImageTrae1ounG/paper-plot-skills | 866 | 1 repos | ~868 | Automated safety check: Pass | None |
ChenLiu-1996/figures4papers
Covers publication-ready matplotlib figures for academic papers, slides, and reports—bars, trends, scatter, heatmaps, and multi-panel layouts—with this…
Dsadd4/AgentFigureGallery
Lets a plotting agent query a gallery of scientific figure references, show candidates for you to pick from, and export the chosen ones before it writes plot code.
lingzhi227/agent-research-skills
Generates publication-quality scientific figures with matplotlib or seaborn through query expansion, a run-and-retry coding loop and a visual check of the rendered PNG.
jihe520/MathModelAgent
Renders ready-made scientific figure templates, such as raincloud plots, Taylor diagrams and chord diagrams, from bundled Python scripts in the MathModel sandbox.
Trae1ounG/paper-plot-skills
Reproduce any academic paper figure from an uploaded image using accumulated style experience.
cortega26/chile-hub
Execute Python code in a safe sandboxed environment via [inference.sh](https://inference.sh).
VILA-Lab/FigMirror
Mirrors the visual style of a top-conference paper figure onto your own data, producing a camera-ready PDF and a self-contained matplotlib script.
Works with
Categories
Redraws your data as a matplotlib figure in the visual style of a reference paper figure, using a drawer and reviewer loop. You supply a reference figure image, your own data in any parseable form (a pasted table, CSV, TSV, markdown table or messy terminal text) and optionally a working directory. Three bundled subagents run the loop: a preprocessor that crops away margins, captions and neighboring panels, a drawer that writes a matplotlib script and PNG on each iteration, and a reviewer that audits the draft on a fresh view and returns one strict JSON verdict.
FigMirror Figure Style Transfer fits situations like: plotting your results in the style of a figure from a published paper; reproducing a reference figure's look with your own table of numbers; making a paper-quality chart from a screenshot plus CSV data; matching the look of a 3D reference figure with your own data.
Run `npx skills add VILA-Lab/FigMirror --skill figmirror -a claude-code`. Or copy the skill folder (.claude/retired-figmirror-20260817/skills-figmirror in VILA-Lab/FigMirror) into .claude/skills/figmirror in your project. Claude Code loads it when a task matches its description.
Run `npx skills add VILA-Lab/FigMirror --skill figmirror -a codex`. Or copy the skill folder (.claude/retired-figmirror-20260817/skills-figmirror in VILA-Lab/FigMirror) into .agents/skills/figmirror in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add VILA-Lab/FigMirror --skill figmirror -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/figmirror, .gemini/skills/figmirror, .github/skills/figmirror and .opencode/skills/figmirror in your project.
SKILL.md names no scripts, command-line tools or credentials: FigMirror Figure Style Transfer is instructions for the agent only. Our summary lists: Python with matplotlib; A reference figure image and your own data.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
No licence was found for FigMirror Figure Style Transfer or its repository. Without one, default copyright applies: ask the author before reusing or redistributing it.
About 2.1k tokens (SKILL.md is roughly 8.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 20k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with FigMirror Figure Style Transfer: Scientific Figure Making (ChenLiu-1996/figures4papers, 8.2k stars), Agent Figure Gallery (Dsadd4/AgentFigureGallery, 159 stars), Scientific Figure Generation (lingzhi227/agent-research-skills, 384 stars) and MathModel Figure Templates (jihe520/MathModelAgent, 6.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
VILA-Lab (a GitHub organization) maintains it in VILA-Lab/FigMirror, which has 523 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on September 30, 2026.
Source: VILA-Lab/FigMirror on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.