CtrlK
BlogDocsLog inGet started
Tessl Logo

native-trigger

Guidance for adding native trigger services to Windmill. Use when implementing or modifying native trigger integrations across the backend and frontend.

60

Quality

76%

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 ./.agents/skills/native-trigger/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.

This is a dense, highly actionable implementation guide whose project-specific knowledge justifies its length — no filler and concrete commands throughout. Its main structural weakness is the total absence of progressive disclosure: reference-grade material (full trait implementation, per-service reference docs) is inlined rather than split into reference files, and a few sections repeat the same patterns.

Suggestions

Move the full external.rs example implementation and the Nextcloud/Google reference-implementation sections into references/ files (e.g., references/external-trait.md, references/service-examples.md), keeping SKILL.md as an overview with clearly signaled one-level-deep links.

Remove the duplicated External trait presentation — keep the design-points commentary in 'Core Concepts' and point to the Step 3 code, or vice versa — and consolidate the three explanations of the short-create/Google pattern into one.

Add brief error-recovery guidance for the verification commands (e.g., what to check when cargo check fails on the new ServiceName match arms, or when svelte-check flags a missing icon import) to close the feedback-loop gap.

DimensionReasoningScore

Conciseness

Every line carries project-specific facts (exact file paths, enum names, table schemas) with no filler praise or explanations of concepts Claude already knows. Minor trimming is possible: the External trait skeleton appears in 'Core Concepts' and again fully in Step 3, and the Google short-create pattern is explained three times (Create Lifecycle, Special Patterns, Reference Implementations) — matching 'efficient; minor instances of over-explanation that could be trimmed' rather than anchor 5.

4 / 5

Actionability

Highly concrete: exact paths, near-complete Rust implementations, SQL migrations, and runnable commands (cargo check -p windmill-native-triggers --features native_trigger, npx svelte-check --threshold error, npm run generate-backend-client). Some snippets are illustrative rather than executable — the trait definition elides parameter types, list_all() is todo!(), and the handler.rs/sync.rs blocks are edited excerpts — so it is 'mostly executable with minor gaps' rather than copy-paste ready.

4 / 5

Workflow Clarity

18 explicitly numbered steps in a coherent order (database migration → common enums → backend → frontend → OpenAPI) plus a Testing Checklist with concrete verification commands. Checkpoints are present but there are no error-recovery feedback loops ('if cargo check fails, fix X') and steps 7–16 are terse pointers, matching 'clear sequence with most checkpoints present; minor validation gaps' rather than the full validate-fix-retry loop of anchor 5.

4 / 5

Progressive Disclosure

No bundle files exist; the ~200-line external.rs reference implementation, the ServiceName method table, and the Nextcloud/Google reference-implementation sections are inlined in a monolithic ~800-line body where separate reference files clearly belong. Good section headers keep it navigable — above anchor 2's 'minimal structure' — but 'content that should be separate is inline' matches anchor 3, and it cannot reach anchor 4 since nothing is split out to separate files.

3 / 5

Total

15

/

20

Passed

Description

73%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 well-scoped, distinct, and correctly structured with an explicit 'Use when' trigger clause. Its main weakness is a thin what-clause: it names the domain without enumerating the concrete capabilities the skill covers, which slightly undersells both specificity and keyword coverage.

Suggestions

Enumerate 2-3 concrete capabilities in the what-clause, e.g., 'Adding native trigger services to Windmill: database migrations, the External trait implementation, OAuth token storage, background sync, and frontend registry/form wiring.'

Add natural trigger terms users would say, such as 'webhook', 'push notification trigger', or example service names (Nextcloud, Google Drive), to improve trigger-term coverage.

DimensionReasoningScore

Specificity

"Guidance for adding native trigger services to Windmill" names the domain and a single concrete action but enumerates no capabilities (OAuth setup, database migrations, background sync, frontend forms). It matches 'names domain and 1-2 concrete actions, but not comprehensive' — above anchor 2 because the domain is specific rather than generic, below anchor 4 because several specific actions are not listed.

3 / 5

Completeness

It answers both parts: what ("Guidance for adding native trigger services to Windmill") and an explicit when ("Use when implementing or modifying native trigger integrations across the backend and frontend"). The when-clause is specific, but the what-clause uses a single soft verb without concrete capability phrases, so it sits between anchor 4 and anchor 5 rather than clearly matching 5.

4 / 5

Trigger Term Quality

Natural terms are present — "native trigger services", "trigger integrations", "backend and frontend", "implementing or modifying" — that a Windmill developer would actually say. A few natural terms are missing (e.g., "webhook", "push notification", specific service names), keeping it below the comprehensive synonym coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

"native trigger services to Windmill" is a narrow, project-scoped niche with distinct triggers and virtually no overlap risk with other skills, matching the clear-niche anchor exactly.

5 / 5

Total

16

/

20

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.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

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

Warning

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

14

/

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.