CtrlK
BlogDocsLog inGet started
Tessl Logo

write-script-python3

MUST use when writing Python scripts.

43

Quality

43%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Medium

Suggest reviewing before use

Fix and improve this skill with Tessl

tessl review fix ./system_prompts/auto-generated/skills/write-script-python3/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The instructional content is highly actionable and rich in genuine Windmill-specific knowledge, but the file is bloated by an inline full-SDK reference and the write→test→sync→deploy workflow lacks explicit validation checkpoints.

Suggestions

Move the wmill SDK API reference (roughly lines 186-923) into a separate REFERENCE.md and keep only the import line plus a 'See [REFERENCE.md]' pointer, sharply cutting token cost.

Render the post-write workflow as a numbered checklist with explicit validation gates: write → preview to validate → generate-metadata + diff locks (report version bumps) → deploy only on explicit request.

De-duplicate the SDK entries (e.g. the paired get_*_connection_settings/*_connection_settings, run_script vs run_script_by_path/by_hash, whoami vs user) and mark deprecated ones in a single 'deprecated' subsection.

DimensionReasoningScore

Conciseness

The CLI and Python-structure sections are dense and carry project-specific knowledge, but ~740 lines of the wmill SDK (full signatures plus Args/Returns docstrings, including duplicates like get_duckdb_connection_settings/duckdb_connection_settings) are dumped inline — verbose, padded context that could be tightened or externalized rather than level-3 lean.

2 / 3

Actionability

Concrete executable commands ('wmill script preview <script_path>', 'wmill generate-metadata --dry-run') and copy-paste-ready Python examples (main(), TypedDict resources, S3 ops) give fully concrete, specific guidance.

3 / 3

Workflow Clarity

The post-write flow (preview vs run vs generate-metadata vs deploy) is conveyed as intent-aware prose with some checks (--dry-run, diffing locks), but it lacks a clear numbered sequence with explicit validate→fix→retry checkpoints for a multi-step, state-mutating process, matching 'sequence present but checkpoints missing or implicit'.

2 / 3

Progressive Disclosure

Section headers give some structure, but the hundreds of lines of inline wmill API reference are exactly the 'content that should be separate is inline' anti-pattern from the level-2 anchor; no reference bundle files exist and the inline SDK should be a one-level-deep REFERENCE.md.

2 / 3

Total

9

/

12

Passed

Description

22%

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 clause with no statement of capabilities, giving it a clear 'when' but no 'what'. It is natural but minimally distinctive and lacking action specificity.

Suggestions

State what the skill does, e.g. 'Writes Python scripts for the Windmill platform that expose a main() function, define resource TypedDicts, and use the wmill client.'

Add explicit trigger variations users would say, e.g. 'Use when the user asks to write, create, or edit a Windmill Python script, or mentions Windmill scripts, automation scripts, or the wmill client.'

Include 'Windmill' in the description so it does not collide with generic Python scripting skills.

DimensionReasoningScore

Specificity

The phrase 'MUST use when writing Python scripts' states only a trigger condition and names no concrete actions or capabilities the skill performs, matching the 'vague or no actions' anchor ('Helps with documents').

1 / 3

Completeness

It answers 'when' (an explicit 'Use when' trigger) but never states what the skill does; per the judging guideline only explicit content counts, so the missing 'what' matches 'Missing what OR when'.

1 / 3

Trigger Term Quality

'writing Python scripts' is a natural phrase a user would say, but coverage is thin with no variations or domain terms (e.g. Windmill), matching 'some relevant keywords but missing common variations' rather than the broad coverage of level 3.

2 / 3

Distinctiveness Conflict Risk

'writing Python scripts' names a domain but is generic and omits the Windmill context that would distinguish it, so it could overlap with other Python scripting skills, matching 'somewhat specific but could still overlap'.

2 / 3

Total

6

/

12

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 (924 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.