CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

rill-component

Detailed instructions and examples for developing component (custom viz) resources in Rill

Quality

73%

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 ./skills/rill-component/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.

This is a high-quality, densely informative skill body: executable examples throughout, domain rules Claude cannot derive, and precise silent-failure warnings that make it genuinely actionable. Its weaknesses are mild redundancy, no explicit post-authoring verification step, and a monolithic single-file structure where the chart-type catalog and Vega-Lite conversion guide belong in reference files.

Suggestions

Move the chart-type catalog and/or the full Vega-Lite conversion rules (with the long example) into references/ files linked one level deep, keeping SKILL.md as the overview plus core anatomy.

Deduplicate repeated facts: state 'a component issues exactly one query' and 'prefer defaults over required when evolving' once each.

Add an explicit verification checkpoint at the end of 'Creating a new component', e.g. 'confirm the component renders in a canvas that references it, since a misplaced renderer block silently renders nothing.'

DimensionReasoningScore

Conciseness

Assumes Claude's competence throughout — no filler about YAML, SQL, or Vega-Lite basics — and nearly every rule is Rill-specific knowledge Claude cannot already have. However, facts repeat ('A component issues exactly one query' appears in both the Vega-Lite rules and metrics_sql rules; 'prefer defaults over required when evolving' appears in both Params and Tips) and a few bullets (e.g. the ORDER BY bullet) run long, keeping it below the leanest anchor.

4 / 5

Actionability

Complete, copy-paste-ready YAML for a full component file, a canvas binding, three chart-spec variants (ranked bar, donut, small multiples), and a full parameterized Vega-Lite spec, plus exact chart-type names, numeric limit defaults per chart shape, and concrete failure modes ('a limit too small for the series fills up on the first category ... and leaves the rest of the chart empty'). This matches the fully-executable anchor covering the common cases.

5 / 5

Workflow Clarity

The body is clearly sequenced (Anatomy, Params, Creating a new component, chart spec, Vega-Lite conversion, metrics_sql rules, Tips) and teaches which failures are loud vs silent (parse-time rejection, reconcile-time binding validation, the empty-render of a misplaced renderer block). It lacks an explicit final validation checkpoint (e.g. 'confirm the component renders in the referencing canvas') and the creation guidance is decision rules rather than an ordered procedure with feedback loops, so it sits at 4 rather than 5; no destructive/batch cap applies.

4 / 5

Progressive Disclosure

Section headers are clear and consistent, but there are no bundle files at all and ~310 lines are fully inlined; the chart-type catalog, the Vega-Lite conversion rules, and the metrics_sql dialect details are each natural candidates for a one-level-deep reference file. This matches the 'content that should be separate is inline' anchor better than the 'most content appropriately placed' anchor, since nothing is split out.

3 / 5

Total

16

/

20

Passed

Description

53%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 identifies a clear niche domain (Rill custom viz components) but is under-specified as a trigger: it states one generic action and gives no 'when to use' guidance. Adding explicit use-when phrasing and concrete actions (create, parameterize, convert to Vega-Lite) would lift it substantially.

Suggestions

Add a 'Use when...' clause naming natural triggers, e.g. 'Use when creating or editing custom viz / component resources in Rill dashboards, or when a Rill chart needs parameterization or Vega-Lite conversion.'

List concrete actions instead of the filler 'Detailed instructions and examples', e.g. 'Create parameterized chart components, write metrics_sql, and convert chart specs to Vega-Lite in Rill.'

Include the natural synonyms users say ('custom viz', 'chart', 'dashboard', 'visualization') so the description triggers on those terms.

DimensionReasoningScore

Specificity

Names the domain (Rill components, glossed as 'custom viz') and one action ('developing'), but 'Detailed instructions and examples' is filler rather than a capability; no list of several concrete actions.

3 / 5

Completeness

Has a clear 'what' (instructions and examples for developing component resources in Rill) but no 'Use when...' clause or equivalent trigger guidance, capping completeness at 3.

3 / 5

Trigger Term Quality

Includes 'Rill', 'component', and 'custom viz', but misses common natural terms users would say such as 'chart', 'dashboard', or 'visualization', offering only the parenthetical '(custom viz)' as a synonym.

3 / 5

Distinctiveness Conflict Risk

Rill is a niche platform and 'custom viz' is its own term, so conflict risk is low; the generic word 'component' alone could overlap with general component-development requests, giving minor rather than minimal risk.

4 / 5

Total

13

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

rilldata/agent-skills

Path

skills/rill-component/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.