CtrlK
BlogDocsLog inGet started
Tessl Logo

scientific-visualization

Meta-skill for publication-ready figures. Use when creating journal submission figures requiring multi-panel layouts, significance annotations, error bars, colorblind-safe palettes, and specific journal formatting (Nature, Science, Cell). Orchestrates matplotlib/seaborn/plotly with publication styles. For quick exploration use seaborn or plotly directly.

56

Quality

65%

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 ./writing_skills/scientific-visualization/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

56%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.

The body delivers strong executable guidance with a verified, coherent bundle (scripts, style files, and reference docs all exist and match what the text claims) and a clear workflow with checklists. Its main weaknesses are heavy redundancy — the seaborn material is duplicated verbatim and generic library explanation pads the file — and a large inline seaborn section that both belongs in a reference file and points to non-existent scientific-packages/ paths.

Suggestions

Deduplicate repeated code blocks: the seaborn boxplot/stripplot example, correlation heatmap, Okabe-Ito palette listing, and set_theme/despine guidance each appear twice; keep one copy and point to references/matplotlib_examples.md for the rest.

Move the ~250-line seaborn deep-dive (advantages, plot-type gallery, axes- vs figure-level functions, advanced techniques) into a references/seaborn_examples.md file, keeping only a brief quick-start inline.

Fix or remove the four dangling references to scientific-packages/seaborn/SKILL.md and its references/*.md files (lines 648-651), which do not exist in this bundle; replace them with the bundle's actual reference files or with instructions on how to apply the documented principles to seaborn.

DimensionReasoningScore

Conciseness

At 781 lines the body is noticeably verbose with pervasive verbatim duplication: the seaborn boxplot/stripplot block appears twice, the correlation-heatmap block twice, the Okabe-Ito palette list twice, and set_theme/despine guidance is repeated across multiple sections. It also explains concepts Claude already knows ('Seaborn provides a high-level, dataset-oriented interface for statistical graphics, built on matplotlib' plus generic library advantages), matching anchor 2 rather than the occasional over-explanation of anchor 3.

2 / 5

Actionability

Provides extensive concrete code, and the claimed helpers were verified to exist (save_publication_figure/save_for_journal/check_figure_size in scripts/figure_export.py, apply_publication_style/configure_for_journal in scripts/style_presets.py, OKABE_ITO_LIST/apply_palette in assets/color_palettes.py). Minor gaps keep it below anchor 5: many snippets use undefined variables (df, timeseries, x_jittered, datasets) and script imports assume path setup, so they are not fully copy-paste ready.

4 / 5

Workflow Clarity

The Workflow Summary gives a clear sequenced process (Plan, Configure, Create, Verify, Export, Review) with inline commands, an explicit Verify step (check_figure_size), a fix-an-existing-figure checklist (Task 5), and a Final Checklist. It lacks an error-recovery feedback loop (no guidance on what to do when a check fails), which is the anchor-5 requirement, so it sits at anchor 4; no destructive/batch cap applies.

4 / 5

Progressive Disclosure

Scored against the actual bundle: the four references/, two scripts/, and four assets/ files are real, listed, and described in the Resources section, one level deep. However, the ~250-line seaborn section inlines content that belongs in a reference file, and it cites scientific-packages/seaborn/SKILL.md plus three of its reference files (lines 648-651) that do not exist in the bundle — dangling references. This matches anchor 3 ('content that should be separate is inline') rather than the well-split structure of anchor 4.

3 / 5

Total

13

/

20

Passed

Description

75%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 well-constructed description with an explicit and concrete 'Use when' trigger clause, natural domain keywords, named journals, and a useful boundary statement steering generic plotting elsewhere. Its main weakness is that the 'what' is expressed through the jargon term 'meta-skill' and output features rather than direct concrete action verbs.

DimensionReasoningScore

Specificity

Lists several concrete items — 'multi-panel layouts, significance annotations, error bars, colorblind-safe palettes', 'specific journal formatting (Nature, Science, Cell)' — but the action verbs are thin ('Meta-skill for publication-ready figures', 'Orchestrates matplotlib/seaborn/plotly'), so the concrete items read as output features rather than the comprehensive concrete actions of the anchor-5 example. Clearly above anchor 3, which covers only 1-2 concrete actions.

4 / 5

Completeness

Explicitly answers 'when' with a strong trigger clause ('Use when creating journal submission figures requiring multi-panel layouts, significance annotations, error bars, colorblind-safe palettes...'), and states 'what' ('publication-ready figures', 'Orchestrates matplotlib/seaborn/plotly with publication styles'). Falls between anchors 4 and 5: the when-clause is more explicit than the anchor-4 example, but the what relies on jargon ('meta-skill') and the when-clause for its concreteness, unlike the direct verb list in the anchor-5 example.

4 / 5

Trigger Term Quality

Contains natural phrases users would say: 'publication-ready figures', 'journal submission figures', 'multi-panel layouts', 'error bars', 'colorblind-safe palettes', plus journal names and library names. Missing common synonyms such as 'manuscript figure' or 'figure for my paper', matching anchor 4 ('good keyword coverage; a few natural terms missing') rather than the comprehensive synonym spread of anchor 5.

4 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (journal submission figures, named journals) and includes a boundary statement ('For quick exploration use seaborn or plotly directly') that hands off generic plotting work. Minor overlap risk remains with general dataviz/plotting skills because it names all three plotting libraries, matching anchor 4 ('mostly distinct; minor overlap risk') rather than the minimal-conflict clarity of anchor 5.

4 / 5

Total

16

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (782 lines); consider splitting into references/ and linking

Warning

metadata_version

'metadata.version' is missing

Warning

Total

14

/

16

Passed

Repository
fernandezbaptiste/CatMaster
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.