CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

physics-visualization

Publication-quality physics plots — vector fields, streamlines, contour maps, 3D surfaces, phase space, spectrograms, and animations. Optimized for journal submission with LaTeX labels, proper colormaps, and multi-panel layouts.

63

Quality

79%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./backend/cli/skills/physics/physics-visualization/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

78%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An action-dense, highly executable reference: complete runnable code for every advertised plot type, terse prose, and useful decision tables. Its weaknesses are structural — all detail lives inline in SKILL.md with no reference files, and the recommended workflow (setup → choose type → save) is never stated explicitly.

Suggestions

Split the six worked examples into references/ files (e.g. references/vector-fields.md, references/animations.md) and keep one minimal snippet per type in SKILL.md, turning the body into an overview with well-signaled one-level-deep references.

State the intended sequence explicitly at the top of "Core Plot Types" (e.g. "Run the Setup block first; it is required by all examples below").

Replace the ineffective LaTeX try/except with a real pre-flight check (e.g. test-render a small figure or detect a TeX installation) so the "fallback to mathtext" path is an actual feedback loop.

DimensionReasoningScore

Conciseness

The body is code-forward with almost no padding — it never explains concepts Claude already knows (no "matplotlib is a plotting library" prose) and comments are terse and purposeful ("# non-interactive backend for scripts", "# Dipole at (±0.5, 0)"). Minor trimming is possible (e.g. the "Enable LaTeX if available" try/except block, and full worked examples could be slightly leaner), so it sits just below the lean-and-efficient anchor.

4 / 5

Actionability

Every section provides complete, copy-paste-ready executable code: the Setup rcParams block, six fully-worked plotting functions/examples ("def plot_vector_field...", the dipole field example, the FuncAnimation wave example), and concrete save commands ("plt.savefig('figure.png', dpi=300, bbox_inches='tight')"). The examples cover the common cases for each plot type with no pseudocode.

5 / 5

Workflow Clarity

The implied sequence is clear and unambiguous — apply the Setup defaults, pick the plot type from "Core Plot Types", follow the Colormap Guide, then the Save Format Guide — and no destructive/batch operations exist so no validation checkpoint cap applies. It falls short of anchor 5 because the sequencing is implicit rather than stated (there is no explicit "include the Setup block before using any plot function" instruction) and the LaTeX-fallback check ("try: ... except: pass") gives no real feedback loop.

4 / 5

Progressive Disclosure

The section structure itself is clean and navigable, but the file is a single monolithic ~250-line document with no bundle files (no references/, scripts/, or assets/ exist) and no pointers to detailed material — all six complete worked examples plus the colormap and save-format guides are inlined where per-plot-type detail naturally belongs in one-level-deep reference files, matching the "content that should be separate is inline" anchor.

3 / 5

Total

16

/

20

Passed

Description

71%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A highly specific, well-scoped description that clearly states what the skill produces, weakened only by the complete absence of a "when to use" trigger clause and a few missing natural synonyms (matplotlib, figure). Adding an explicit trigger sentence would move completeness and trigger quality to the top anchors.

Suggestions

Append an explicit trigger clause, e.g. "Use when the user asks for a physics figure, publication-quality plot, vector field, contour map, phase space plot, spectrogram, or animation of simulation data."

Include natural synonyms users would say — "matplotlib", "figure", "plot", and file outputs like ".png"/".pdf" — to strengthen trigger term coverage.

Optionally note when NOT to use it (e.g. general data visualization unrelated to physics) to further reduce overlap with generic plotting skills.

DimensionReasoningScore

Specificity

The description enumerates multiple concrete deliverables — "vector fields, streamlines, contour maps, 3D surfaces, phase space, spectrograms, and animations" — and concrete formatting behaviors ("LaTeX labels, proper colormaps, and multi-panel layouts"), giving comprehensive coverage of the skill's capabilities with no vague filler.

5 / 5

Completeness

The "what" is clearly and concretely answered, but there is no "Use when..." clause or equivalent explicit trigger guidance (e.g. "Use when the user asks for a physics figure or publication-ready plot"), which per the judging guidelines caps completeness at 3.

3 / 5

Trigger Term Quality

Strong natural terms users would actually say ("physics plots", "vector fields", "contour maps", "3D surfaces", "animations", "journal submission"), but it omits common synonyms and tooling terms users would mention — e.g. "matplotlib", "figure", "plot", ".png"/".pdf" — so it falls just short of the comprehensive-with-synonyms anchor.

4 / 5

Distinctiveness Conflict Risk

The niche ("Publication-quality physics plots ... Optimized for journal submission") is clearly distinguished from general plotting or data-viz skills, but it would still overlap with a generic matplotlib/visualization skill on generic plot requests — minor overlap risk with closely related skills, matching anchor 4.

4 / 5

Total

16

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

synthetic-sciences/openscience

Path

backend/cli/skills/physics/physics-visualization/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.