CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

jui-ui

Entry point for building user interfaces with the JUI framework (Java-to-JavaScript UI). Use this skill whenever doing any front-end / UI work in a JUI application: building screens, pages, panels, dialogs, forms, tables, galleries, navigation, or any reusable UI element — and when you need to know what JUI offers, which kind of artefact to build, what standard controls/components/fragments already exist, or how to inspect the JUI source. Routes to the specialised jui-components, jui-controls, jui-fragments and jui-styles skills. Triggers include: JUI, UI, building a screen/page/panel/form/dialog/table/gallery, SimpleComponent, Control, Fragment, DomBuilder, ControlForm, TabNavigator, or 'how do I do X in the UI'.

Quality

90%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

A strong, well-structured router skill: it teaches the non-obvious taxonomy and traps concisely, hands construction detail off to specialised skills, and provides genuinely executable guidance (jar extraction script, source paths, doc URLs). Its weaknesses are repetitive emphasis of the re-render rule, absent verification steps in the workflows, and a referenced catalogue.md that is not present in the bundle as shipped.

Suggestions

State the catalogue.md reference only once and either ship catalogue.md in the bundle or fall back to the GitHub docs table, so the primary reuse-first pointer is never a dead link.

Add a verification step at the end of both workflows (e.g. compile the project / check the re-rendered view responds to events) to close the validation gap flagged by the re-render trap.

Deduplicate the buildInto/rerender warning: keep the callout and step references that say only 'see the re-render trap above' instead of restating the rule three times.

DimensionReasoningScore

Conciseness

The body is dense with framework-specific, non-obvious knowledge (the four-artefact taxonomy, the re-render trap, variant model, jar-source extraction) and never explains background concepts, but it repeats itself: the buildInto/rerender-vs-Wrap.buildInto warning appears three times (the callout, 'Modifying existing UI' step 4, 'Building new UI' step 5) and the reuse-first/project-Variants advice appears twice. Minor trimming would apply, matching anchor 4; anchor 5 ('every token earns its place') doesn't hold given the duplication.

4 / 5

Actionability

Guidance is concrete and executable throughout: exact base types and methods (buildNode, renderer(...), Wrap.$(el), .by("name"), dom.first, Controls.text(...)), a copy-paste-ready bash block for extracting jar sources (with a runnable find/unzip loop and gitignore step), concrete source paths, and a table of direct doc URLs. For an entry-point skill this covers the common cases fully; it's not an instruction-only skill lacking code.

5 / 5

Workflow Clarity

Two clearly sequenced numbered workflows (modify vs. build new) with concrete per-step guidance and a decision guide for classification. Validation checkpoints are only implicit (no compile/render/verify step after making a change), which fits anchor 4 ('clear sequence with most checkpoints present; minor validation gaps') rather than anchor 5 (explicit validation with feedback loops); anchor 3 would require the sequence itself to be gappy, which it is not.

4 / 5

Progressive Disclosure

The body is a well-signaled overview that routes to one-level-deep resources: the sibling skills table, 'catalogue.md' for the catalogue, and direct GitHub doc links. However, against the actual bundle (no references/, scripts/, assets/, and no catalogue.md shipped next to SKILL.md), the primary local reference 'catalogue.md' is dangling — a navigation gap that keeps this below anchor 5, matching anchor 4 ('references mostly clear; minor organization gaps') since the external docs index provides a fallback.

4 / 5

Total

17

/

20

Passed

Description

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

An exemplary router-style description: it states its scope in third person, gives an explicit 'Use when' clause with concrete triggers, enumerates what it covers, and names the sibling skills it hands off to. The only residual risk is trigger-token overlap ('UI', 'Control', 'Fragment') with the sibling jui-* skills, which is inherent to its routing role.

DimensionReasoningScore

Specificity

Concrete actions are enumerated explicitly: 'building screens, pages, panels, dialogs, forms, tables, galleries, navigation', deciding 'which kind of artefact to build', discovering 'what standard controls/components/fragments already exist', and 'how to inspect the JUI source' — comprehensive coverage for the router role it declares.

5 / 5

Completeness

Both halves are explicit: 'what' ('Entry point for building user interfaces with the JUI framework… Routes to the specialised jui-components, jui-controls, jui-fragments and jui-styles skills') and 'when' ('Use this skill whenever doing any front-end / UI work in a JUI application') with concrete trigger phrases, matching the anchor-5 example structure.

5 / 5

Trigger Term Quality

Triggers are listed verbatim ('Triggers include: JUI, UI, building a screen/page/panel/form/dialog/table/gallery, SimpleComponent, Control, Fragment, DomBuilder, ControlForm, TabNavigator, or "how do I do X in the UI"') covering natural user phrases plus framework-specific class names, i.e. synonyms and API-level terms. No anchor-4 gap (a few natural terms missing) is identifiable.

5 / 5

Distinctiveness Conflict Risk

The scope is well-narrowed to a distinct niche ('in a JUI application', JUI-only class names like DomBuilder/ControlForm/TabNavigator), but broad tokens such as 'UI', 'Control' and 'Fragment' overlap with the sibling jui-* skills it routes to; it is mostly distinct with minor overlap risk against those closely related skills, fitting anchor 4 rather than the minimal-conflict anchor 5.

4 / 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

relative_links

Relative link issues: 2 missing

Warning

Total

15

/

16

Passed

Repository

juiproject/jui-stack

Path

jui-skills/jui-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.