> FigMirror mirrors the visual style of a top-conference paper figure (NeurIPS / ICML / ICLR / Nature family) onto the user's own data. Takes dirty data plus a reference figure screenshot (cropped or uncropped), preprocesses the reference crop, runs a Drawer/Reviewer loop, and outputs a camera-ready PDF plus a self-contained matplotlib script with an inline DATA SECTOR.
npx skills add https://github.com/VILA-Lab/FigMirror --skill figmirror
figmirror)Use this skill when the user wants to:
style, not in data.
bars, layered waterfalls, or plane projections when the reference or data is
actually 3D.
.py script with editable inline data plus PNG/PDFoutputs.
PNG/JPG). It may include margins, captions,neighboring panels, or page text; Stage 0 preprocesses it.
dirty terminal text.
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.
data-gen, and launching the main Codex process.
role dispatch, artifact checks, Reviewer audit-view staging, JSON parsing, stop
decisions, and final selection.
figmirror-drawer custom subagent throughspawn_agent with fork_context=false. It writes each iteration's matplotlib
script, render, notes, and floor self-check in the staged workdir.
figmirror-reviewer custom subagent throughspawn_agent with fork_context=false. It sees only the staged audit view:
the far-view composite, full-resolution reference/draft near views, the
Reviewer prompt, the aesthetic library, and bounded history. It returns strict
JSON including boxes; the Orchestrator writes that JSON to
audit_iter<N>.json and deterministically renders annotated.png plus
notes.md for the next Drawer.
subagents, and optional candidate-scoring path for strict reproduction.
references/preprocessor.md for Stage-0 reference crop cleanup.references/orchestrator-codex.md for loop wiring and stop conditions.references/drawer.md for the Drawer instructions.references/reviewer.md for the Reviewer instructions.references/aesthetic-library.md for the L2 convention library.references/three-d-prompting.md only when the 3D insert gate is enabled.inputs/reference_raw.png, then run thereference preprocessor to write inputs/reference_clean.png,
inputs/reference_crop_check.png, and inputs/reference_crop_report.md.
to make up data or proceed without confirmation, record that in data_echo.md
and continue; otherwise ask for confirmation.
references/three-d-prompting.mdplus references/three-d/ beside the normal prompts. The router selects
exactly one mode file: three-d/style-transfer.md for ordinary user-data
figures, or three-d/strict-reproduction.md for reproduction, comparison, or
candidate/control replacement. For strict 3D reproduction runs that need
quantitative candidate diagnosis, also stage scripts/score_3d_candidates.py;
do not use that scorer for ordinary style transfer. The top-level
Orchestrator owns final selection and must run the selected mode's
rendered-image gates before copying any candidate to the final figure.
Always stage scripts/figannot.py; it is the deterministic operator for
building audit composites and drawing Reviewer boxes.
references/orchestrator-codex.md andspawns figmirror-drawer for each iter. The Drawer writes
figure_iter<N>.py, img_iter<N>.png, notes_iter<N>.md, and
floor_selfcheck_iter<N>.txt; the Orchestrator verifies those files before
any Reviewer handoff.
audit_view_<N>, run scripts/figannot.py compose to createcomposite.png and review_prompt.txt, and spawn figmirror-reviewer as
described in references/orchestrator-codex.md. The Reviewer sees the
composite far view, full-resolution reference/draft near views, aesthetic
library, optional 3D insert, bounded anchors/changed lists, and prior audit
JSON, then returns strict JSON for the Orchestrator to persist.
scripts/figannot.py draw so audit_view_<N>/annotated.png andaudit_view_<N>/notes.md become the next Drawer invocation's explicit
stateless visual history.
If the caller supplied max_iters, select the best floor-passing close iteration
when that limit is reached. If the caller enabled auto-until-shipped, keep
iterating until ship or a real blocker.
figure.py, figure.png, figure.pdf, output.png,floor_selfcheck_final.txt, selection.md, process.md, and status.json.
output.png is the evaluator-facing PNG and may be identical to
figure.png.
<workdir>/
inputs/
reference_raw.png
reference_clean.png
reference_crop_check.png
reference_crop_report.md
data.txt
aesthetic-library.md
prompts/
preprocessor.md
drawer.md
reviewer.md
orchestrator-codex.md
aesthetic-library.md
three-d-prompting.md # router, only for 3D runs
three-d/ # mode files and routed 3D modules, only for 3D runs
tools/
figannot.py
score_3d_candidates.py # optional for strict 3D candidate diagnosis
figure_iter0.py
img_iter0.png
notes_iter0.md
floor_selfcheck_iter0.txt
audit_view_0/
reference_clean.png
img_iter0.png
composite.png
composite_meta.json
review_prompt.txt
aesthetic-library.md
anchors.md
changed.md
three-d-prompting.md # router, only for 3D runs
three-d/ # mode files and routed 3D modules, only for 3D runs
review.json
annotated.png
notes.md
audit_iter0.json
audit_iter0.stderr
...
figure.py
figure.png
figure.pdf
output.png
floor_selfcheck_final.txt
selection.md
process.md
status.json
and signature motifs ARE style, not layout numbers. Reproduce them.
bands, error bars, streamline fields, stacked/offset construction, insets. Dropping
or flattening one is a fidelity failure, not a simplification. Only the data values
and labels change to match data.txt.
inputs/reference_raw.png is the preserved upload; inputs/reference_clean.pngis the Stage-0 crop used for L1 measurement.
(references/aesthetic-library.md); L3 opinion is disallowed.
data.txt or source code to the Reviewer audit view.plt.rcParams["pdf.fonttype"] = 42.Searches across your Notion workspace, synthesizes findings from multiple pages, and creates comprehensive research documentation saved as new Notion pages. Turns scattered information into structured reports with proper citations and actionable insights.
Generate concise (3-4 page), focused medical treatment plans in LaTeX/PDF format for all clinical specialties. Supports general medical treatment, rehabilitation therapy, mental health care, chronic disease management, perioperative care, and pain management. Includes SMART goal frameworks, evidence-based interventions with minimal text citations, regulatory compliance (HIPAA), and professional formatting. Prioritizes brevity and clinical actionability.
Generate concise (3-4 page), focused medical treatment plans in LaTeX/PDF format for all clinical specialties. Supports general medical treatment, rehabilitation therapy, mental health care, chronic disease management, perioperative care, and pain management. Includes SMART goal frameworks, evidence-based interventions with minimal text citations, regulatory compliance (HIPAA), and professional formatting. Prioritizes brevity and clinical actionability.
Generate concise (3-4 page), focused medical treatment plans in LaTeX/PDF format for all clinical specialties. Supports general medical treatment, rehabilitation therapy, mental health care, chronic disease management, perioperative care, and pain management. Includes SMART goal frameworks, evidence-based interventions with minimal text citations, regulatory compliance (HIPAA), and professional formatting. Prioritizes brevity and clinical actionability.
【强制】所有技术文档查询必须使用本技能,禁止在主对话中直接使用 mcp__context7-mcp 工具。触发关键词:查询/学习/了解某个库或框架的文档、API用法、配置参数、错误解释、版本差异、代码示例、最佳实践。本技能通过 context7-researcher agent 执行查询,避免大量文档内容污染主对话上下文,保持 token 效率。
Generates rich technical documentation pages with dark-mode Mermaid diagrams, source code citations, and first-principles depth. Use when writing documentation, generating wiki pages, creating technical deep-dives, or documenting specific components or systems.
Maximum-saturation research orchestration: ALWAYS proposes the final materials first (PDF+DOCX default), then parallel explore+librarian swarms across codebase, web, official docs, and OSS repos — max-roster teammode when the harness has it — with live journaling, a recursive EXPAND loop driven by leads workers return in message text, empirical verification by running code, and a cited synthesis with charts/Mermaid/assets behind a mandatory visual-QA gate. ACTIVATES ONLY on an explicit user demand for research — the word 'ulw-research' ('/ulw-research', '$ulw-research'), any 'ulw' research wording, 'ultradebate' or 'hyperdebate' research requests, or an explicit request for research / deep research / an ultra-precise investigation, in any language. Never self-activates for ordinary questions, debugging, or implementation context-gathering. While active it overrides exploration-bounding defaults: exhaustive coverage is the goal.
"Solve competition math problems (IMO, Putnam, USAMO, AIME) with adversarial verification that catches the errors self-verification misses. Activates when asked to 'solve this IMO problem', 'prove this olympiad inequality', 'verify this competition proof', 'find a counterexample', 'is this proof correct', or for any problem with 'IMO', 'Putnam', 'USAMO', 'olympiad', or 'competition math' in it. Uses pure reasoning (no tools) — then a fresh-context adversarial verifier attacks the proof using specific failure patterns, not generic 'check logic'. Outputs calibrated confidence — will say 'no confident solution' rather than bluff. If LaTeX is available, produces a clean PDF after verification passes."
Take vila-lab/figmirror-figmirror from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.