{"id":"270903c9-092c-408b-9997-68d9cd834d78","slug":"park-peter-airflow-to-dabs","name":"airflow-to-dabs","description":"Converts Apache Airflow DAG files into Databricks Asset Bundles (DABs) projects. Use when migrating Airflow DAGs to Databricks Lakeflow Jobs, converting Airflow operators to DABs task types, or generating databricks.yml and job resource YAML from Airflow Python files. Triggers on mentions of Airflow migration, DAG conversion, Airflow to Databricks, Airflow to Lakeflow, or DABs generation from Airflow.","canonicalUrl":"https://www.xpersona.co/skill/park-peter-airflow-to-dabs","sourceUrl":"https://github.com/park-peter/airflow-to-dabs","homepage":null,"source":"GITHUB_OPENCLEW","vendor":{"slug":"park-peter","label":"Park Peter","url":"https://github.com/park-peter/airflow-to-dabs"},"protocols":["OPENCLEW"],"capabilities":[],"trustScore":null,"trustConfidence":"unknown","artifactCount":0,"benchmarkCount":0,"lastRelease":null,"freshnessAt":"2026-02-25T02:27:57.960Z","freshnessLabel":"Feb 25, 2026","securityReviewed":true,"openapiReady":false,"stats":[{"label":"Trust score","value":"Unknown"},{"label":"Compatibility","value":"OpenClaw"},{"label":"Freshness","value":"Feb 25, 2026"},{"label":"Vendor","value":"Park Peter"},{"label":"Artifacts","value":"0"},{"label":"Benchmarks","value":"0"},{"label":"Last release","value":"Unpublished"}],"factsPreview":[{"factKey":"docs_crawl","category":"integration","label":"Crawlable docs","value":"6 indexed pages on the official domain","href":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceUrl":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceType":"search_document","confidence":"medium","observedAt":"2026-04-15T05:03:46.393Z","isPublic":true},{"factKey":"vendor","category":"vendor","label":"Vendor","value":"Park Peter","href":"https://github.com/park-peter/airflow-to-dabs","sourceUrl":"https://github.com/park-peter/airflow-to-dabs","sourceType":"profile","confidence":"medium","observedAt":"2026-02-25T02:27:59.188Z","isPublic":true},{"factKey":"protocols","category":"compatibility","label":"Protocol compatibility","value":"OpenClaw","href":"https://www.xpersona.co/api/v1/agents/park-peter-airflow-to-dabs/contract","sourceUrl":"https://www.xpersona.co/api/v1/agents/park-peter-airflow-to-dabs/contract","sourceType":"contract","confidence":"medium","observedAt":"2026-02-25T02:27:59.188Z","isPublic":true},{"factKey":"handshake_status","category":"security","label":"Handshake status","value":"UNKNOWN","href":"https://www.xpersona.co/api/v1/agents/park-peter-airflow-to-dabs/trust","sourceUrl":"https://www.xpersona.co/api/v1/agents/park-peter-airflow-to-dabs/trust","sourceType":"trust","confidence":"medium","observedAt":null,"isPublic":true}],"highlights":["Trust evidence available"],"agentCard":{"name":"airflow-to-dabs","description":"Converts Apache Airflow DAG files into Databricks Asset Bundles (DABs) projects. Use when migrating Airflow DAGs to Databricks Lakeflow Jobs, converting Airflow operators to DABs task types, or generating databricks.yml and job resource YAML from Airflow Python files. Triggers on mentions of Airflow migration, DAG conversion, Airflow to Databricks, Airflow to Lakeflow, or DABs generation from Airflow.","source":"GITHUB_OPENCLEW","sourceId":"github:1157357695","repository":"https://github.com/park-peter/airflow-to-dabs","documentation":"https://www.xpersona.co/skill/park-peter-airflow-to-dabs/agent/park-peter-airflow-to-dabs","protocols":["OPENCLEW"],"languages":["typescript"],"install":{"command":"git clone https://github.com/park-peter/airflow-to-dabs.git","ecosystem":"git"},"examples":[{"kind":"example","language":"text","snippet":"| Task ID           | Operator                | DABs Task Type      | Tier | Notes              |\n|-------------------|-------------------------|---------------------|------|--------------------|\n| extract_data      | PythonOperator          | notebook_task       | 1    |                    |\n| check_env         | BranchPythonOperator    | condition_task      | 2    | Simple equality    |\n| wait_for_file     | S3KeySensor             | trigger.file_arrival| 3    | Becomes job trigger|\n| custom_step       | MyCustomOperator        | notebook_task       | 4    | MANUAL REVIEW      |"},{"kind":"example","language":"text","snippet":"<bundle-name>/\n  databricks.yml                    # Single bundle config with shared variables and targets\n  resources/\n    <dag_id_1>_job.yml              # One job resource per DAG\n    <dag_id_2>_job.yml\n    <dag_id_3>_job.yml\n  src/\n    <dag_id_1>/                     # Source files namespaced per DAG\n      <task_id>.py\n      <task_id>.sql\n    <dag_id_2>/\n      <task_id>.py\n    <dag_id_3>/\n      <task_id>.py\n  MIGRATION_NOTES.md                # Consolidated migration notes for all DAGs"}]}}