CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

gen-ui

Build interactive HTML widgets (simulators, explorers, calculators, UI mockups) inline in desktop conversations with render_widget.

Quality

78%

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 ./resources/bundled-skills/gen-ui/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.

The content is a lean, actionable rulebook that supplies only environment-specific knowledge (Kun theme variables, widgetState API, bundled library URLs, size limits) and closes with an explicit pre-call quality checklist. Its only notable gap is the lack of a worked example widget fragment that would make the output contract fully copy-paste ready.

DimensionReasoningScore

Conciseness

The body is dense, directive, and free of explanations of concepts Claude already knows (e.g. "Never depend on document.currentScript", "Keep it under 1 MB"), and the pinned CDN URLs are functionally required for offline use rather than gratuitous version advice, but a few rules could still be tightened, matching 'efficient; minor instances of over-explanation'.

4 / 5

Actionability

Guidance is highly concrete for an instruction-only skill: exact call fields (title, html, path, mode: "wide"), exact theme variables and base classes, verbatim API calls like window.kun.setWidgetState({ modelContent, privateContent }).catch(() => {}), and hard limits (1 MB, 16 KiB, 360px, 11px); the gap is the absence of a complete example widget fragment covering common cases.

4 / 5

Workflow Clarity

Sections are coherently ordered (when to build, output contract, libraries, styling, composition, state) and end with an explicit validation checklist ("Every queried element exists, no undefined identifiers... nothing overflows at a 360px width"), but there is no feedback loop for what to do when the check fails, matching 'clear sequence with most checkpoints present'.

4 / 5

Progressive Disclosure

The body is under 50 lines with no bundle files, organized into seven clear headed sections, and nothing that clearly belongs in a separate reference file; per the rubric's simple-skill rule, well-organized sections alone merit a 5.

5 / 5

Total

17

/

20

Passed

Description

66%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 specific and distinctive, clearly stating what the skill builds and with which tool, using natural vocabulary users would say. Its main weakness is the absence of any explicit 'when to use' trigger clause, which caps completeness and leaves activation guidance only weakly implied.

Suggestions

Append an explicit trigger clause, e.g. "Use when the user asks to simulate, explore parameters, calculate, or mock up UI alternatives interactively in the conversation."

Add a few natural synonym trigger terms such as "prototype", "demo", or "interactive tool" to broaden keyword coverage for how users phrase these requests.

State when NOT to use it at a high level (e.g. "not for project code changes or static charts") to sharpen distinctiveness against web-dev and charting skills.

DimensionReasoningScore

Specificity

"Build interactive HTML widgets (simulators, explorers, calculators, UI mockups) inline in desktop conversations with render_widget" names the domain, four concrete widget types, and the exact tool, but describes one action (build) over several object types rather than multiple distinct actions, matching the 'several specific actions; minor gaps' anchor.

4 / 5

Completeness

The 'what' is clear (build interactive HTML widgets with render_widget inline in desktop conversations), but there is no 'Use when...' clause or equivalent explicit trigger guidance; when-to-use is only weakly implied by the inline-conversation context, which caps completeness at 3 per the rubric guideline.

3 / 5

Trigger Term Quality

Natural terms like "simulators", "calculators", "UI mockups", "interactive", and "HTML widgets" are present, but common variations such as "prototype", "demo", or "interactive tool" are missing, matching 'good keyword coverage; a few natural terms missing' rather than comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

"Interactive HTML widgets ... with render_widget" defines a clear niche with the tool name as a distinct trigger, with only minor overlap risk against charting/dataviz or general web-development skills, matching 'mostly distinct; minor overlap risk'.

4 / 5

Total

15

/

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

KunAgent/Kun

Path

resources/bundled-skills/gen-ui/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.