CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

makepad-shaders

CRITICAL: Use for Makepad shader system. Triggers on: makepad shader, makepad draw_bg, Sdf2d, makepad pixel, makepad glsl, makepad sdf, draw_quad, makepad gpu, makepad 着色器, makepad shader 语法, makepad 绘制

Quality

70%

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 ./plugins/antigravity-bundle-makepad-builder/skills/makepad-shaders/SKILL.md

The canonical home for this skill is makepad-shaders in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

60%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 strong, executable shader patterns and a sensible reference-reading workflow with an explicit fallback, but it spends tokens on a GLSL built-ins table Claude already knows and a version/date header, and every external reference (references/, _base/, community/) is missing from the bundle, breaking progressive disclosure. Fixing the dangling bundle files is the highest-impact repair.

Suggestions

Create the referenced files (references/shader-basics.md, references/sdf2d-reference.md, _base/ patterns, community/) or remove all pointers to them — the Documentation Completeness Check currently guarantees a read failure on every invocation

Delete the "Built-in Functions (GLSL)" table or move it into a reference file; Claude already knows sin, cos, mix, and pow

Give the Advanced Patterns table real file paths (e.g. `_base/01-shader-structure.md`) so the listed patterns can actually be opened

DimensionReasoningScore

Conciseness

The "Built-in Functions (GLSL)" table restating `abs`, `sign`, `sin`, `cos`, `mix`, `pow`, `sqrt` etc. is knowledge Claude already has, and the header "**Version:** makepad-widgets (dev branch) | **Last Updated:** 2026-01-19" is time-sensitive information outside any deprecated/old-patterns section. Most other tables (Sdf2d functions, `self.pos`/`self.rect_size` built-ins) are genuinely niche Makepad knowledge that earns its place, so this sits between anchors 3 and 4 rather than at 2.

3 / 5

Actionability

Four complete, copy-paste-ready shader examples (solid color, rounded rect with border, gradient, circle) plus concrete rules ("Always use `show_bg: true`", "Use `Sdf2d::viewport()` to create SDF context") make the core writing task fully executable. Not 5 because the "Advanced Patterns" table lists pattern names ("01-shader-structure", "05-progress-track") with no usable file paths or instructions for what to do with them, leaving the advanced guidance not directly actionable.

4 / 5

Workflow Clarity

The "Documentation Completeness Check" gives a clear sequenced decision flow with an explicit failure fallback: read references → "If file read fails or file is empty: Inform user... Still answer based on SKILL.md patterns + built-in knowledge" → otherwise incorporate. Not 5 because there is no validation or verification step for generated shader code and the code-writing path has no sequence; not 3 because the failure checkpoint is explicit, not implicit.

4 / 5

Progressive Disclosure

The body clearly signals one-level-deep references ("`./references/shader-basics.md` - Shader language fundamentals", "`./references/sdf2d-reference.md` - Complete Sdf2d API reference", "`_base/` directory", "`./community/"), but the actual bundle contains none of these files or directories — every external pointer is dangling, so navigation fails outright despite the good in-file sectioning. This is worse than anchor 3's "references present but not clearly signaled" because the referenced content is entirely absent from the bundle.

2 / 5

Total

13

/

20

Passed

Description

68%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 has an excellent, explicit trigger list with good bilingual coverage and near-zero conflict risk, but it never states what the skill actually does — no actions like writing shaders or explaining the Sdf2d API are named. Adding 1-2 concrete capability verbs would lift both specificity and completeness.

Suggestions

Replace "Use for Makepad shader system" with named capabilities, e.g. "Write and debug Makepad custom shaders (draw_bg pixel/vertex functions) using Sdf2d; explain Makepad shader syntax and built-ins. Use when..."

Add a few natural unqualified phrases users would say ("custom shader", "shader syntax", "live-reload shader") alongside the makepad-prefixed keywords

Keep the existing trigger list — it is the description's strongest asset

DimensionReasoningScore

Specificity

"Use for Makepad shader system" names the domain but lists zero concrete actions — no writing, explaining, or debugging capabilities appear anywhere in the description; the remainder is a keyword trigger list, not a capability statement. This matches anchor 2 ("Names the domain but actions are minimal or generic") rather than 3, which requires 1-2 concrete actions to be named.

2 / 5

Completeness

Both parts are present: the "when" is fully explicit ("Triggers on: makepad shader, Sdf2d, draw_quad...") with concrete trigger phrases, while the "what" is only domain-level ("Use for Makepad shader system") without naming what the skill actually does. Falls between anchor 3 (what clear, when missing) and anchor 5 (both explicit) — the explicit trigger list lifts it above 3, but the unnamed capabilities keep it below 5.

4 / 5

Trigger Term Quality

Good keyword coverage: "makepad shader, makepad draw_bg, Sdf2d, makepad pixel, makepad glsl, makepad sdf, draw_quad, makepad gpu, makepad 着色器" plus Chinese variants covers many ways a user would phrase the need, including non-English synonyms. Not 5 because most terms are permutations of "makepad + X" and natural standalone phrases users might say (e.g. "custom shader", "shader syntax help") and file extensions are absent.

4 / 5

Distinctiveness Conflict Risk

The trigger set is almost entirely Makepad-qualified ("makepad shader", "makepad glsl", "makepad gpu", "makepad 着色器") and "Sdf2d" is a term essentially unique to Makepad, giving this a clear niche with minimal conflict risk. Only "draw_quad" could plausibly arise in another GPU framework, which is too minor to drop it from anchor 5.

5 / 5

Total

15

/

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

plugins/antigravity-bundle-makepad-builder/skills/makepad-shaders/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.