CtrlK
BlogDocsLog inGet started
Tessl Logo

raw-app

MUST use when creating raw apps.

53

Quality

59%

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 ./system_prompts/auto-generated/skills/raw-app/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 body is a detailed, highly actionable reference with concrete code, clear sequenced workflows, and real validation safeguards for destructive operations. Its main weaknesses are a monolithic single-file structure that inlines content the doc itself says belongs in a companion guide, and some repeated emphasis that could be tightened.

DimensionReasoningScore

Conciseness

The body is high-signal Windmill-specific content with executable commands and code rather than concepts Claude already knows, fitting the score-4 anchor "Efficient; minor instances of over-explanation that could be trimmed"; it is not 5 because the 'YOU run it, don't tell the user' message and `wmill generate-metadata` guidance are repeated across the intro, steps, anti-patterns, and CLI sections, and it is not 3 because the bulk of the prose earns its place.

4 / 5

Actionability

The guide is packed with copy-paste-ready, executable guidance — the `wmill app new` flag invocation, TypeScript/Python runnable examples, YAML configs, parameterized SQL queries, and the `backend`/`backendAsync`/`waitJob` binding table — covering the common cases, matching the score-5 anchor "Fully executable; copy-paste ready code or commands; specific examples cover the common cases."

5 / 5

Workflow Clarity

The 'Creating a Raw App' workflow is explicitly sequenced (Step 1 gather → Step 2 run → Step 3 offer preview) with an input-validation feedback loop ("If the user replies with something ambiguous, ask again rather than guessing"), an anti-patterns checklist, and destructive-op safeguards (non-interactive mode aborts without `--overwrite`; idempotent SQL; whitelist-after-creation), matching the score-4 anchor; it is not 5 because the SQL-migration and sync workflows lean on a browser modal or user action rather than an explicit Claude-driven validate→fix→retry loop.

4 / 5

Progressive Disclosure

The file has clear section headers and tables (good structure) but is a single ~460-line monolith with no bundle files and no one-level-deep references, and the intro states the platform-shape material "is covered in the companion authoring guide" yet that material is inlined in the second `# Windmill Raw Apps` section — fitting the score-3 anchor "Some structure but could be better organized; ... content that should be separate is inline"; it is not 2 because structure is real and well-organized, not minimal, and not 4 because no content is split out into separate referenced files.

3 / 5

Total

16

/

20

Passed

Description

40%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 a terse trigger-only statement: it tells Claude when to use the skill but nothing about what the skill actually does. It is distinctive and uses a natural trigger term, but it fails to convey capabilities, capping its completeness and specificity.

Suggestions

Add a 'what' clause naming concrete actions, e.g. "Scaffolds and configures Windmill raw apps via the `wmill app new` CLI, manages on-disk layout, backend runnables, datatable config, and SQL migrations."

Broaden trigger-term coverage by including the product name and synonyms, e.g. "Use when creating or scaffolding Windmill raw apps (React/Svelte/Vue frontends backed by Windmill runnables and datatables)."

Convert the imperative "MUST use when creating raw apps" into a descriptive third-person statement plus an explicit 'Use when...' trigger clause so both 'what' and 'when' are clearly answered.

DimensionReasoningScore

Specificity

The phrase "creating raw apps" names the domain and a generic activity but lists no concrete actions the skill performs (e.g. scaffolding via `wmill app new`, configuring datatables), matching the score-2 anchor "Names the domain but actions are minimal or generic" / "Processes PDF files"; it is above score 1 because the domain is clearly named, and below score 3 because no specific capabilities are enumerated.

2 / 5

Completeness

The description gives only the 'when' ("MUST use when creating raw apps") with no 'what' explaining what the skill does, exactly matching the score-2 anchor "only 'when' is present without 'what'" / "Use when working with documents"; it is not 3 because there is no clear 'what' statement at all, and not 1 because the 'when' trigger is explicit rather than vague.

2 / 5

Trigger Term Quality

"raw apps" is the natural term a user would say when needing this skill, but coverage stops at that single phrase — missing the product name "wmill" and common synonyms — fitting the score-3 anchor "Some relevant keywords but missing common variations or synonyms" / "Works with PDF files"; it is not 4 because keyword coverage is thin rather than merely missing a few.

3 / 5

Distinctiveness Conflict Risk

"raw apps" is a niche, Windmill-specific term giving the skill a clear trigger unlikely to fire for unrelated skills, matching the score-4 anchor "Mostly distinct; minor overlap risk with closely related skills"; it is not 5 only because the terse description does not fully articulate the niche, leaving minor overlap risk with a generic 'apps' skill.

4 / 5

Total

11

/

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
windmill-labs/windmill
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.