Install
$ agentstack add skill-yuanruichen-metforge-metforge-figure ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
MetForge Figure
Treat each figure as a visual scientific argument. Define what it must show, render it with the user's existing stack when possible, and inspect the exported result before delivery.
Figure loop
- Inspect the data, existing plotting code, target medium, and relevant prior figures.
- Write a compact figure contract using [references/figure-contract.md](references/figure-contract.md).
- Choose the smallest figure grammar that tests the claim. Read [references/atmospheric-patterns.md](references/atmospheric-patterns.md) for atmospheric defaults.
- Implement within the user's language and project conventions. For a new Python workflow, prefer xarray + matplotlib and use cartopy only when geographic projection is needed.
- Render at final or representative size. Open the actual output and audit it with [references/qa-checklist.md](references/qa-checklist.md).
- Fix high-impact scientific or readability failures, rerender, and reinspect. Stop polishing when the contract is satisfied.
Execution mode and processing record
Before rendering, inspect data size, memory needs, expected runtime, available CPUs, whether sbatch/Slurm is available, whether the session is already inside a Slurm job, and existing project conventions.
- Render directly for ordinary figures and small validation subsets that fit safely in the current session.
- Use Slurm or the site's scheduler when figure preparation requires large aggregations, many files, ensemble processing, high-resolution rasterization, or work unsuitable for a login node.
- Do not guess scheduler account, partition, walltime, modules, or paths. Reuse validated project configuration.
- For submitted work, capture the job script, job ID, resources, environment, stdout/stderr paths, and terminal status.
After every completed data-preparation call, render/export, or audit-revision cycle, append a record to the project's existing log/provenance location. If none exists, use output/logs/YYYYMMDD-HHMM-.md. Record inputs, software environment, direct/Slurm decision, commands or script, figure contract, transformations, output files, visual checks, deviations, and status. Never record credentials or secrets. If files cannot be written, return the same record explicitly in the response.
Hard scientific rules
- Label variables and units; state period, season/sample, domain, and diagnostic definition.
- Use shared limits and norms when panels are meant to be compared.
- Use a perceptually ordered sequential map for magnitude and a centered diverging map for signed anomalies or differences. Choose limits from scientific meaning and robust data ranges, not arbitrary defaults.
- Distinguish zero, missing, masked, and statistically unsupported values.
- State smoothing, filtering, interpolation, regridding, anomaly baselines, and significance methods.
- Do not add significance marks, uncertainty bands, or causal annotations without the underlying calculation.
- Preserve map geometry. Handle longitude wrapping, cyclic seams, latitude order, and projection transforms explicitly.
- Do not hide inconvenient extremes solely to improve appearance. If clipping is necessary, disclose it and quantify affected values.
Layout and export
- Give the most important evidence the largest or earliest panel.
- Remove panels that repeat the same evidence.
- Use panel labels, shared legends/colorbars, and deliberate whitespace.
- Keep text readable at final display size; inspect dense maps after rasterization.
- Prefer PDF/SVG for vector-dominant plots. Use high-resolution PNG/TIFF for raster-heavy maps or image plates; avoid huge vector files containing millions of cells.
- Save the plotting source and enough data provenance to reproduce the figure.
Delivery
Return the figure, source code, and a short audit note covering:
- conclusion the figure supports
- panel-to-evidence mapping
- transformations and statistical overlays
- visual checks performed on the exported file
- remaining uncertainty or limitations
- processing record, including scheduler job IDs when used
If scientific calculation rather than visualization is unresolved, use metforge-analysis. If the question is why a model test fails, use metforge-model-diagnose instead of inventing a stronger interpretation.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: yuanruichen
- Source: yuanruichen/MetForge
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.