CtrlK
BlogDocsLog inGet started
Tessl Logo

chart-image

Generate publication-quality PNG chart images from data, supporting line, bar, area, candlestick, pie, and heatmap charts. Triggers when the user asks to visualize data, create a graph, plot a time series, or generate a chart for a report, alert, or dashboard. Runs as a lightweight, headless Node.js process without a browser.

68

Quality

83%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Critical

Do not install without reviewing

SKILL.md
Quality
Evals
Security

Quality

Content

71%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 is a strong, example-driven CLI reference with copy-paste-ready commands for every chart type and a memorable post-generation workflow step. Its main weaknesses are the monolithic inline options reference (no progressive disclosure into separate files) and placeholder data in several advanced examples. A few error-handling/validation checkpoints would round it out.

Suggestions

Move the ~100-line Options Reference tables into a references/OPTIONS.md (or similar) file and keep 2-3 key examples inline in SKILL.md, so the main file stays a lean overview with well-signaled one-level-deep references.

Replace the '[...]' placeholder data in the alert-style, y-format, subtitle, and timeline-annotation examples with small concrete datasets so every example is copy-paste executable.

Add a short error-recovery step after generation (e.g., check the command's exit status and confirm the output file exists before sending it to the channel).

DimensionReasoningScore

Conciseness

The body is dense with executable commands and option tables and explains nothing Claude already knows, but the per-type sections repeat the same invocation shape many times and the full options reference is inlined — minor trimming possible, matching anchor 4 rather than 5 ("every token earns its place") or 3 (unnecessary explanation present).

4 / 5

Actionability

Nearly all commands are copy-paste ready with concrete JSON payloads (all chart types, annotations, formatting, piping, custom spec), but several later sections use placeholder data ("--data '[...]'") in the alert-style, y-format, subtitle, and timeline-annotation examples — anchor 4 ("minor gaps") rather than 5 ("specific examples cover the common cases").

4 / 5

Workflow Clarity

The sequence is clear — one-time npm install, invocation, then the explicit "always send the image" post-step with channel/timing tips — but there are no validation or error-recovery checkpoints (no check that the output file was written, no guidance on failure), matching anchor 4 ("most checkpoints present; minor validation gaps") rather than 5.

4 / 5

Progressive Disclosure

The bundle contains only scripts/chart.mjs with no reference files, and roughly 100 lines of option tables are inlined in SKILL.md instead of being split into a reference document — matching anchor 3 ("content that should be separate is inline") despite good section headers and working script paths.

3 / 5

Total

15

/

20

Passed

Description

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

The description is exemplary: third-person voice, concrete capability enumeration across chart types, an explicit and well-phrased trigger clause, and a differentiating runtime constraint. The only shortcoming is that it undersells the script's full type coverage (point, donut, sparkline are undocumented in the description).

DimensionReasoningScore

Specificity

"Generate publication-quality PNG chart images from data, supporting line, bar, area, candlestick, pie, and heatmap charts" lists several concrete, named capabilities plus the runtime constraint ("headless Node.js process without a browser"). Scored 4 rather than 5 because the underlying script also supports point, donut, and sparkline charts that the description omits — a minor coverage gap — and clearly above anchor 3 (only 1-2 actions).

4 / 5

Completeness

Both questions are answered explicitly: "what" is the first sentence (PNG chart images across six named types) and "when" is the concrete "Triggers when the user asks to..." clause — a clear anchor-5 match, above anchor 4 where the "when" clause would be less specific.

5 / 5

Trigger Term Quality

"asks to visualize data, create a graph, plot a time series, or generate a chart for a report, alert, or dashboard" covers the natural phrasings and their synonyms (chart/graph/plot/visualize) plus the output format (PNG), matching the comprehensive anchor rather than anchor 4 ("a few natural terms missing").

5 / 5

Distinctiveness Conflict Risk

"Runs as a lightweight, headless Node.js process without a browser" carves out a clear niche (headless PNG chart generation for reports/alerts/dashboards) with distinct trigger phrases, so it is unlikely to fire for the wrong skill — anchor 5 rather than 4 ("minor overlap risk").

5 / 5

Total

19

/

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
zebbern/claude-code-guide
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.