migrate-airflow-kestra

Installation
SKILL.md

Migrate Airflow DAG to Kestra

Migrate an Apache Airflow DAG file to a production-ready Kestra flow with proper namespace files, correct task ordering, and schema-validated YAML.

Never emit the legacy constructs below — they fail to parse, even if older docs, blueprints or examples use them:

Never emit Use instead
ForEach, ForEachItem, EachSequential, EachParallel io.kestra.plugin.core.flow.Loop
pluginDefaults (flow-level) Set the values on each task, or hoist shared values into flow variables:
conditions: on a trigger when: Pebble expression
Flow trigger preconditions / multipleConditions dependsOn + window + mode
json() Pebble function fromJson()
taskrun.value / parent.taskrun.value item.value (inside a Loop)
runner: property taskRunner: or containerImage
Listeners, Templates, core.trigger.Toggle, scripts.nashorn.* Flow triggers, Subflows, the API, graalvm.*

When to use

Installs
49
GitHub Stars
19
First Seen
May 18, 2026