kedro-to-zenml-migration
Migrate Kedro to ZenML
This skill translates Kedro projects into idiomatic ZenML pipelines. It handles the full migration workflow: analyze the Kedro project, classify each pattern as direct / approximate / absent, translate what maps cleanly, flag what needs redesign, and produce a working ZenML project plus a clear migration report.
How migration works at a high level
Kedro and ZenML are both Python-first workflow systems, so the business logic inside node functions often survives migration surprisingly well. The hard part is not the node code. The hard part is the contract around the node code.
Kedro uses the Data Catalog as the central registry of datasets, storage details, credentials, versioning, and sometimes representation tricks such as transcoding. ZenML does not have a DataCatalog equivalent. ZenML treats internal handoffs as typed artifacts and expects external reads and writes to be made explicit in step code, materializers, stack settings, and secrets.
So this migration is not a rename exercise. It is mostly a careful rewrite of:
- Boundary handling -- catalog-driven reads and writes become explicit loader/exporter steps
- Data flow -- string dataset names become typed artifact edges
- Configuration and auth --
parameters.ymlandcredentials.ymlmove into ZenML parameters, YAML config, secrets, and stack settings - Operational semantics -- runners, slicing, hooks, namespaces, and deployment plugins must be checked for behavior drift