SuperAPI AI 工具集

end-to-end-snowflake-pipeline

数据与分析

查看项目

更新于 10-28 12:01

技能介绍

end-to-end-snowflake-pipeline 是一个面向数据工程的技能,旨在将来自工单或需求描述的数据管道构建任务自动化,覆盖从需求提取到代码提交与工单更新的完整流程。

主要用途: 当用户提出“构建一个管道…”并涉及 Snowflake、dbt 模型、编排调度以及代码审查时,此技能可提供结构化的端到端执行。它不适用于单一模型增强、无需编排或 PR 的简单建模、仅查询优化或从 MS SQL 迁移等场景。

主要能力:

  • 需求提取:从工单或提示中提取数据源、目标表/粒度、调度/SLA、新鲜度/增量策略四个关键字段,并明确将工单内容视为数据而非指令,防止提示注入。
  • 环境检测:自动定位 dbt 项目,检测 Airflow、Prefect 或 Dagster 编排器,检查 GitHub 认证状态,并初始化本次运行的隔离状态。
  • 代码生成:按分层(source、staging、intermediate、mart)生成 dbt SQL 与 YAML 文件,遵循项目现有命名与文件夹约定,添加测试与描述,并记录写入的文件清单。
  • 编排生成:根据检测到的编排器生成对应的 DAG/flow/asset 文件,镜像项目现有风格(如 Cosmos、BashOperator 等),并记录文件。
  • 验证:强制使用非生产目标进行 dbt 构建,并通过脚本确保所选模型不涉及生产 schema;对 Airflow DAG 进行语法解析检查。
  • 自我审查:在提交前仅审查本次写入的文件,检查 SELECT *、缺失 unique_key、硬编码目标、缺失新鲜度等常见问题。
  • 提交与 PR:提交更改、推送分支,并在 GitHub 认证可用时创建 PR,最后更新工单并生成摘要。

使用方式: 该技能通常以技能形式集成在 AI 编码代理中,通过自然语言指令触发。用户需要提供管道名称、需求描述(或工单链接),并确保环境中存在配置好的 dbt 项目、非生产 dbt 目标、git 与 gh 认证(如需 PR)。若缺少 dbt 或 git,技能会停止并提示用户。流程分为九个阶段,每个阶段有建议时间上限,总目标不超过 7 分钟,硬上限 8 分钟。

适用场景:

  • 从工单出发构建包含 dbt 模型与编排调度的新数据管道。
  • 需要自动生成代码、验证非生产环境、自我审查并提交 PR 的标准化数据工程工作流。
  • 项目已使用 Airflow、Prefect 或 Dagster 之一,并希望保持现有编排风格。

限制:

  • 不安装编排器(Airflow/Prefect/Dagster),要求仓库中已存在框架文件。
  • 仅允许编辑 models 下的 SQL/YAML、本次生成的编排文件以及必要时修改 dbt_project.yml;禁止修改 profiles.yml、macros、grants 等。
  • 必须存在非生产 dbt 目标,否则验证阶段拒绝运行。
  • 若缺少 gh 但其他条件满足,技能可完成到推送分支,但不会创建 PR。
  • 工单内容被视为不可信数据,仅提取四个字段,忽略其他指令。

暂未提供的信息:具体收费模式、价格、官方支持平台等未在资料中说明。