CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

prefect-flow-structure-to-orchestra

Use this skill when converting any Prefect flow to Orchestra YAML to handle flow-level configuration. Triggers: any Prefect flow definition containing @flow, schedule= (CronSchedule, IntervalSchedule, RRuleSchedule), retries=, timeout_seconds=, flow.deploy() or flow.serve() deployment config, flow parameters (typed function args), or flow-level tags. Must be applied before converting individual tasks — it establishes the pipeline root fields that wrap all task conversions.

Quality

90%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

Highly actionable, token-dense conversion guidance where every rule encodes non-obvious cross-system knowledge. The main improvements are removing the duplicated YAML structure/example sections and adding an explicit output-validation step to the conversion checklist.

Suggestions

Remove or merge the 'Orchestra YAML Structure' section, since its YAML duplicates the Before/After example almost verbatim — keeping one canonical example saves ~20 lines.

Add an explicit final validation step to 'Conversion Steps', e.g. 'Validate the resulting YAML against Orchestra's /pipelines/schema endpoint before delivering' — the gotchas already cite this endpoint, so the workflow should close the loop with it.

Consider consolidating the mapping-table Notes column and the 'Gotchas' section, since several rules (retry_delay minutes conversion, 6-field cron, rrule MANUAL) appear in both places.

DimensionReasoningScore

Conciseness

Efficient and dense with non-obvious domain knowledge (retry_delay in minutes, 6-field EventBridge cron, tags validation failure) with zero padding of concepts Claude already knows — but the 'Orchestra YAML Structure' section duplicates the Before/After example's YAML nearly verbatim, which could be trimmed.

4 / 5

Actionability

Fully executable guidance: a complete copy-paste-ready Prefect Python + Orchestra YAML before/after pair, a precise construct-to-field mapping table (e.g. 'retry_delay_seconds=300 -> retry_delay: 5'), and exact API error messages ('6 required, 5 provided', 'Delay between retries cannot be greater than 120 minutes.') that make outcomes verifiable.

5 / 5

Workflow Clarity

A clear sequenced checklist with per-construct handling and MANUAL-note checkpoints for edge cases (RRuleSchedule, non-clean intervals, retry_delay > 120), but there is no explicit step validating the produced YAML against the Orchestra schema, which keeps it at 'most checkpoints present' rather than fully explicit validation.

4 / 5

Progressive Disclosure

Well-organized single-file skill with clearly signaled one-level-deep external references (Orchestra/Prefect doc links) and clearly named sibling-skill handoffs ('prefect-secrets-to-orchestra', 'prefect-alerts-to-orchestra'); the main organization gap is the duplicated YAML block that could be consolidated.

4 / 5

Total

17

/

20

Passed

Description

95%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 strong description that explicitly states what it does, when to use it with concrete code-level trigger terms, and how it relates to sibling conversion skills. The only minor weakness is that capability description leans on trigger enumeration rather than a richer action list.

DimensionReasoningScore

Specificity

Concrete actions are stated ('converting any Prefect flow to Orchestra YAML to handle flow-level configuration', 'establishes the pipeline root fields that wrap all task conversions'), but the action list is thinner than the comprehensive trigger enumeration — several specific actions with minor gaps rather than a fully comprehensive action list.

4 / 5

Completeness

Explicitly answers both what ('converting any Prefect flow to Orchestra YAML... establishes the pipeline root fields') and when ('Use this skill when...', followed by a concrete 'Triggers:' list enumerating exact code constructs).

5 / 5

Trigger Term Quality

Triggers cover both the natural phrase ('converting any Prefect flow to Orchestra YAML') and the exact identifiers a user's code would contain: '@flow', 'schedule= (CronSchedule, IntervalSchedule, RRuleSchedule)', 'retries=', 'timeout_seconds=', 'flow.deploy() or flow.serve()', 'flow parameters (typed function args)', 'flow-level tags' — comprehensive coverage including variants.

5 / 5

Distinctiveness Conflict Risk

A clear niche (Prefect flow-level constructs → Orchestra pipeline root fields) with distinct triggers, and 'Must be applied before converting individual tasks' explicitly separates it from sibling task-conversion skills, minimizing conflict risk.

5 / 5

Total

19

/

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.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

orchestra-hq/orchestra-skills

Path

skills/migrate-to-orchestra/skills/prefect-flow-structure-to-orchestra/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.