CtrlK
BlogDocsLog inGet started
Tessl Logo

extension-points

How extensions render as widgets inside other apps via named UI slots — the framework's VS-Code-style extension system. Use when a user asks to add a custom widget to an app surface (e.g. "add a sticky-note widget to my mail contact sidebar"), when wiring an ExtensionSlot in a template, or when marking an extension as installable into a slot.

76

Quality

96%

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

92%

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, actionable reference: lean and token-efficient with executable code and clearly sequenced workflows. Its only weakness is progressive disclosure — the material is a single inline file rather than an overview pointing into split reference files.

Suggestions

For a skill this size, move the detailed Lifecycle, Permissions, and Context contract sections into referenced bundle files (e.g. LIFECYCLE.md, PERMISSIONS.md) and keep SKILL.md as a concise overview with clearly signaled links, lifting progressive_disclosure to 3.

Consolidate the scattered back-compat callouts (EmbeddedTool, toolClassName, tool_slots/toolFetch aliases) into a single "Legacy names" subsection so each is stated once, reducing repetition across sections.

Add an explicit verification checkpoint at the end of the authoring workflow (e.g. "list-extensions-for-slot to confirm the install") to make the feedback loop explicit even though the operation is non-destructive.

DimensionReasoningScore

Conciseness

The body is dense and assumes Claude's competence — it never explains what iframes, postMessage, Alpine.js, or polling are — and every section (tables, conventions, code) earns its tokens with no endorsement fluff, matching the lean score-3 anchor.

3 / 3

Actionability

Provides fully executable, copy-paste-ready guidance: a complete Alpine.js HTML snippet, exact action invocations ("add-extension-slot-target { extensionId: ... slotId: ... }"), and a concrete TSX <ExtensionSlot> example, satisfying the score-3 anchor.

3 / 3

Workflow Clarity

The authoring flow is a clear numbered 3-step sequence and the "Typical flow" section adds explicit conditional branching (install if it exists, otherwise create → target → install); the operations are reversible/per-user so the destructive-validation cap does not apply.

3 / 3

Progressive Disclosure

Sections are well-organized and cross-references to sibling skills are clearly signaled one level deep, but the ~200-line body is monolithic with no bundle files and content (Lifecycle, Permissions, Context contract) that could be split into referenced files is kept inline, fitting the score-2 rather than the "content appropriately split" score-3 anchor.

2 / 3

Total

11

/

12

Passed

Description

100%

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: it states concrete capabilities, includes a natural-language user trigger quote, and gives explicit "Use when..." guidance. It is specific, complete, and clearly distinguishable from related skills.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions — "add a custom widget to an app surface", "wiring an ExtensionSlot in a template", and "marking an extension as installable into a slot" — matching the score-3 anchor rather than the single-action score-2 anchor.

3 / 3

Completeness

Explicitly answers both what ("How extensions render as widgets inside other apps via named UI slots") and when ("Use when a user asks to add a custom widget...") with explicit triggers, satisfying the score-3 anchor.

3 / 3

Trigger Term Quality

Includes a natural user quote ("add a sticky-note widget to my mail contact sidebar") alongside everyday terms like "widget", "app surface", and "slot", giving good coverage of phrases a user would actually say.

3 / 3

Distinctiveness Conflict Risk

Carves a clear niche (VS-Code-style named-UI-slot widget system) with distinct triggers unlikely to fire for sibling skills, rather than the overlapping score-2 anchor.

3 / 3

Total

12

/

12

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository
BuilderIO/agent-native
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.