CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

makepad-widgets

Version: makepad-widgets (dev branch) | Last Updated: 2026-01-19 > > Check for updates: https://crates.io/crates/makepad-widgets

Quality

53%

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/makepad-widgets/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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 concrete, executable Live DSL patterns and well-organized reference tables with clear behavioral rules and a sensible missing-documentation fallback. Its main weaknesses are the broken progressive-disclosure structure — three cited reference files are absent from the bundle — and inline catalog content that duplicates what those files should hold. Adding event-handling coverage would close the biggest actionability gap.

Suggestions

Ship the three cited reference files (references/widgets-core.md, widgets-advanced.md, widgets-richtext.md) or remove the pointers and the sync-fallback instructions, since every invocation currently hits the missing-file branch.

Move the widget catalog tables (All Built-in Widgets, Core Widgets Reference, View/Button variants, ImageFit) into the reference files so SKILL.md keeps only the code patterns and navigation.

Add an event-handling example (e.g., matching a Button's action in handle_event and updating state) to make the interactive widget cases executable end-to-end.

DimensionReasoningScore

Conciseness

The body is dense and factual — code patterns, property tables, and short rule lists like "1. Always set width and height on widgets" — with no explanation of concepts Claude already knows. Minor trimming is possible: the version header block duplicates the frontmatter, and the widget catalog appears in three overlapping forms ("All Built-in Widgets", "Core Widgets Reference", plus separate variant tables), which keeps it just below the 'lean and efficient' anchor.

4 / 5

Actionability

Five copy-paste-ready Live DSL examples (View, Button, Label, Image, TextInput) plus concrete rules like "Use `dep("crate://self/...")` for resource paths" give mostly executable guidance. It falls short of level 5 because key usage details are missing — notably no event-handling example (subscribing to a Button action) and no widget registration/import setup, so the common interactive cases are not covered.

4 / 5

Workflow Clarity

The two modes are clearly addressed ("When Writing Code" numbered rules, "When Answering Questions"), and the "Documentation Completeness Check" gives an explicit validation loop: read the reference file, and "If file read fails or file is empty" inform the user and fall back to SKILL.md patterns. Minor gaps — no guidance on iterating when generated code fails to compile or how to verify widget behavior — keep it below the level-5 anchor.

4 / 5

Progressive Disclosure

The body points to three clearly signaled reference files ("./references/widgets-core.md - Core widgets" etc.), but no references/ directory or bundle files exist, so the references are dangling and navigation always falls into the missing-file branch. Additionally, ~100 lines of widget catalog tables inlined in SKILL.md are exactly the content that belongs in those separate files, matching the level-2 anchor ('content that clearly belongs in separate files is inlined') better than level 3, whose structure-and-signaling profile otherwise fits.

2 / 5

Total

14

/

20

Passed

Description

18%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 carries only version/date/update-URL metadata and fails to state any capability or usage trigger, so it answers neither 'what does this do' nor 'when should Claude use it'. Its sole redeeming quality is the highly distinct 'makepad-widgets' domain keyword. Almost any rewrite focused on capabilities and trigger phrases would be a large improvement.

Suggestions

Replace the metadata with concrete capabilities in third person, e.g. "Generates Makepad widget code in Rust using the Live DSL (View, Button, TextInput, PortalList) and explains widget properties, variants, and styling.

Add an explicit trigger clause: "Use when writing, styling, or debugging Makepad UI code, or when the user mentions makepad-widgets, Live DSL, or Makepad views and buttons."

Move the version, date, and update URL out of the description (into the body or metadata fields) so the description holds only capability and trigger terms.

DimensionReasoningScore

Specificity

The description is only metadata: "Version: makepad-widgets (dev branch) | Last Updated: 2026-01-19 > > Check for updates: https://crates.io/crates/makepad-widgets". It names no actions whatsoever — not even a minimal verb like "Processes" — so it matches the anchor 'no concrete actions' rather than the level-2 anchor, which requires at least minimal or generic actions.

1 / 5

Completeness

Neither 'what' nor 'when' appears: there is no capability statement and no 'Use when...' clause or equivalent trigger guidance (which alone would cap this dimension at 3). This matches the level-1 anchor 'missing both what and when'.

1 / 5

Trigger Term Quality

The only natural keyword is the crate name "makepad-widgets"; everything else ("dev branch", "Last Updated", the crates.io URL) is noise a user would never say when they need this skill. This is one domain keyword with the natural phrases users would say ("makepad widget", "Makepad UI", "Rust Makepad code") missing, fitting the 'one or two keywords; missing natural phrases' anchor rather than level 3's 'relevant keywords with some coverage'.

2 / 5

Distinctiveness Conflict Risk

"makepad-widgets" names a niche Rust UI framework, so overlap with other skills is minor — fitting 'mostly distinct; minor overlap risk'. It is not level 5 because that anchor expects distinct triggers plus a stated capability; the description's distinctiveness rests solely on the crate name embedded in metadata, and it cannot be distinguished from other Makepad-related skills.

4 / 5

Total

8

/

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

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

skills/makepad-widgets/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.