CtrlK
BlogDocsLog inGet started
Tessl Logo

write-workflow-as-code

MUST use when writing or modifying Windmill Workflow-as-Code scripts using workflow, task, step, sleep, approvals, taskScript, taskFlow, task_script, or task_flow.

65

Quality

79%

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/write-workflow-as-code/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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 dense, highly actionable WAC authoring guide with strong executable examples and a clear decision framework for preview/run/deploy/metadata. Its main weaknesses are redundancy across the prose and inline API blocks, and a large inlined API reference that would benefit from progressive disclosure into separate files.

Suggestions

Move the TypeScript and Python API reference blocks (lines ~244-596) into separate reference files (e.g. references/ts-api.md, references/py-api.md) and link to them from the body to improve progressive disclosure and conciseness.

De-duplicate the approval key-uniqueness rules: state them once in the Approvals section and have the getApprovalUrls/get_approval_urls docs reference it rather than repeating the full explanation three times.

Add a concise numbered checklist for the core write-then-validate loop (write -> generate-metadata --dry-run -> preview with sample args -> report version diffs) so the workflow's validation checkpoints are explicit rather than implied.

DimensionReasoningScore

Conciseness

Mostly efficient and full of non-obvious semantics, but several rules are restated (approval key-uniqueness appears in prose, the TS JSDoc, and the Python docstring; 'do not alias SDK names' repeats) and the large inline API references pad the body.

3 / 5

Actionability

Provides copy-paste-ready TypeScript and Python examples, exact import lines, and concrete CLI commands (wmill script preview, generate-metadata rehash, --dry-run) that cover the common authoring cases.

5 / 5

Workflow Clarity

Clear sequences for preview-vs-run choice, metadata sync, and post-write test offers, with checkpoints like --dry-run and lock-diffing; a crisp numbered validate-fix-retry loop for the script itself is only implied, leaving minor gaps.

4 / 5

Progressive Disclosure

Good section structure, but with no references/scripts/assets bundle present the large inline TypeScript and Python API reference blocks are content that would be better placed in separate reference files.

3 / 5

Total

15

/

20

Passed

Description

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

A focused, well-constructed description that names the niche, concrete actions, and explicit trigger tokens in both naming conventions. It clearly answers both what and when with low conflict risk; its only mild weakness is relying on technical SDK jargon rather than natural user phrases.

DimensionReasoningScore

Specificity

Names the concrete domain ('Windmill Workflow-as-Code scripts') and concrete actions ('writing or modifying') plus specific SDK identifiers (workflow, task, step, sleep, taskScript, taskFlow), giving several specific concrete actions with only minor gaps.

4 / 5

Completeness

Explicitly answers both what ('writing or modifying Windmill Workflow-as-Code scripts') and when ('MUST use when ... using workflow, task, step, sleep, approvals, taskScript, taskFlow, task_script, or task_flow') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Good keyword coverage listing both camelCase and snake_case SDK variants (taskScript/task_script, taskFlow/task_flow) plus 'approvals', but missing more natural user phrases like 'Windmill script' or 'approval step'.

4 / 5

Distinctiveness Conflict Risk

Targets a clear niche (Windmill Workflow-as-Code) with distinct SDK-token triggers that are unlikely to fire for unrelated skills, giving minimal conflict risk.

5 / 5

Total

18

/

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.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (597 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

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.