CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

python-dagster-to-orchestra

Use this skill when the user wants to convert a Dagster @op or @asset that runs arbitrary Python (computation, API calls, pandas, boto3) into an equivalent Orchestra Python pipeline task. Triggers: any mention of migrating or rewriting Dagster ops/assets to Orchestra; plain @op / @asset / @multi_asset functions containing Python logic (not a dedicated integration like dbt/Airbyte/Fivetran).

Quality

88%

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.

A highly actionable, well-structured single-file skill: copy-paste-ready YAML and code, a clear six-step conversion workflow with decision points, and dense coverage of non-obvious Orchestra specifics. The main costs are repeated restatements of the INLINE-default and connection-wiring rules (token overhead) and the absence of any verify/test checkpoint, plus long inlined sections that a references file could absorb.

DimensionReasoningScore

Conciseness

The body never explains concepts Claude already knows and concentrates on genuinely Orchestra-specific facts (INLINE vs GIT, linked-connection env-var naming, silent-skip behavior). However, the "default to INLINE, not GIT" rule is restated roughly six times and "only wire connection: if needed" roughly five times across the Overview, YAML comments, Conversion Steps, and Gotchas — more than minor trimming opportunity.

4 / 5

Actionability

Fully executable throughout: a copy-paste YAML task template, a complete before/after example (Dagster asset, extracted script, Orchestra YAML), a working OrchestraSDK snippet for linked credentials, exact env-var naming rules, concrete build_command examples, and a full alerts YAML block with valid statuses.

5 / 5

Workflow Clarity

Six numbered conversion steps in a clear order, with decision checkpoints for INLINE vs GIT routing, connection wiring, and Slack-task routing. Not a destructive/batch operation, so no validation cap applies, but there is no verify/test-the-pipeline step at the end — a minor validation gap.

4 / 5

Progressive Disclosure

No bundle files exist, so all content lives in a single SKILL.md with well-organized sections, a clear References list, and one-level-deep, well-signaled deferrals to sibling skills and external docs. The inlined alerts schema example and linked-connection naming deep-dive are content a bundle file could carry, and the >50-line simple-skill exception does not apply.

4 / 5

Total

17

/

20

Passed

Description

91%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: it states a precise, concrete conversion capability, includes an explicit and natural trigger clause with synonyms and decorator names, and carves out a clear niche with explicit exclusions. The only weakness is a small unresolved overlap with sibling Dagster-to-Orchestra skills (e.g., Slack-posting ops) that the body, not the description, has to disambiguate.

DimensionReasoningScore

Specificity

The description precisely names the source constructs ("convert a Dagster @op or @asset that runs arbitrary Python (computation, API calls, pandas, boto3)") and the concrete target ("an equivalent Orchestra Python pipeline task"). It is a single conversion action rather than a list of multiple actions, so it falls just short of the comprehensive anchor.

4 / 5

Completeness

"Use this skill when the user wants to convert..." explicitly states what the skill does, and the dedicated "Triggers:" clause explicitly states when to use it with concrete trigger phrases. Both what and when are clearly and explicitly answered.

5 / 5

Trigger Term Quality

"Triggers: any mention of migrating or rewriting Dagster ops/assets to Orchestra; plain @op / @asset / @multi_asset functions" covers the natural synonyms (convert/migrate/rewrite), the decorator names users would actually type, and an explicit exclusion list (dbt/Airbyte/Fivetran) — comprehensive for this domain.

5 / 5

Distinctiveness Conflict Risk

A clear niche (Dagster Python ops/assets to Orchestra) with distinct trigger terms and an exclusion for dedicated integrations. Minor overlap remains: a plain @op whose body posts to Slack via slack_sdk still matches this description, though the skill body routes it to a sibling skill — minor overlap risk with closely related skills rather than minimal.

4 / 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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

15

/

16

Passed

Repository

orchestra-hq/orchestra-skills

Path

skills/migrate-to-orchestra/skills/python-dagster-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.