Agent Skills
返回列表
💻

dbt-osmosis 模式同步器

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md 安装 @user_3c6cb52e/sync-dbt-schema-yaml-and-inherited-column-metadata-before-docs-drift-accumulates-with-dbt-osmosis

技能介绍

问题:文档漂移如何积累

在 dbt 项目中,当你修改模型、重命名字段或调整继承关系时,schema.yml 和列文档往往不会自动更新。时间一长,文档与实际模型结构逐渐偏离,出现所谓的文档漂移。继承的列元数据尤其容易过时,因为手动维护很难跟上频繁的模型迭代。这些陈旧的元数据会让新团队成员难以理解数据血缘,也会误导下游消费方。

技能如何工作

这个技能基于 dbt-osmosis,它是一个面向 dbt 开发工作流的 Python CLI 和包。核心目标是让 schema.yml 与列文档保持与项目当前状态一致,从而防止漂移累积。具体能力包括:

  • 分析模型变更,同步 schema.yml 中的字段描述
  • 同步继承的列元数据,确保文档反映最新的模型结构
  • 提供 ad-hoc SQL 编译与运行辅助,支持开发中的快速验证

适用边界与注意点

使用前需要满足一些条件:Python 版本需在 3.10 至 3.13 之间,环境中要有 dbt Core 及兼容的适配器,并能访问目标 dbt 项目仓库。对于文档站点相关命令,还需在 docs/ 目录下使用 Node 工具链。技能侧重于元数据同步,不替代数据库迁移或测试流程。

使用场景

  • dbt 项目迭代后 `schema.yml` 与模型实际字段描述不一致,需要批量同步更新
  • 模型字段通过继承复用,父级列文档变更后需刷新子模型的元数据
  • 团队接手历史 dbt 项目,发现文档严重滞后,想重建文档与模型的一致性
  • 发布 dbt 文档站点前,需要确认 YAML 中的字段描述与当前模型结构匹配

适合人员

  • dbt 数据工程师,负责维护模型文档与代码同步,避免文档随迭代漂移
  • 数据分析团队负责人,需要确保下游消费方看到的列描述准确无误
  • 刚接手 dbt 项目的新成员,想快速理解模型结构与列继承关系
  • 技术文档维护者,需要定期校验 YAML 元数据与模型代码是否一致