Skill 安装
多 Agent 安装npx skills add https://github.com/astronomer/agents --skill migrating-airflow-2-to-3
使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。
Skill 调研报告
Skill 详细介绍
astronomer/agents#migrating-airflow-2-to-3 是 Astronomer 官方 agents 仓库中提供的一个迁移辅助 Skill,名称对应 Airflow 2 到 Airflow 3 的版本迁移。它本身不是一个独立运行的软件,也不是 Airflow 本体,而是一套面向 AI Agent 的指令 / 工作流集合,目标是帮助用户在把已有 Airflow 2 项目升级到 Airflow 3 时,减少人工比对的成本。
它的核心用途可以概括为:让 Agent 依据 Airflow 3 的迁移规则,读懂现有 Airflow 2 代码库,指出需要改动的地方,并给出可参考的迁移方案。安装后,Agent 相当于增加了一项“Airflow 2 → 3 迁移助手”的能力,而不是增加一个 Airflow 运行环境。
主要解决的问题
- Airflow 3 存在较多破坏性变更,DAG、Operator、导入路径、调度方式、执行器与部分配置可能需要调整。
- 人工逐文件核对迁移点耗时且容易遗漏。
- 迁移过程中需要区分“必须改”和“可以保留”的部分,避免过度重构。
- 需要把迁移改动落到具体代码,而不只是给出一份泛泛的升级清单。
典型任务
- 扫描现有 Airflow 2 代码库,定位与 Airflow 3 不兼容的写法。
- 给出具体文件、具体行的迁移建议或改动方案。
- 处理导入路径、依赖引用、DAG 定义方式等常见迁移点。
- 在迁移过程中保持原有业务逻辑尽量不变,降低回归风险。
- 配合代码审查,作为迁移改动的辅助工具,而不是替代人工判断。
适合的使用者
- 正在或计划把生产 / 测试环境中的 Airflow 2 升级到 Airflow 3 的数据工程师。
- 维护较多历史 DAG、需要批量迁移的团队。
- 已经使用 AI Agent 写代码,希望把迁移这类重复性工作交给 Agent 辅助的开发者。
不适合的需求
- 想直接一键完成整套升级、无需人工确认的场景。迁移涉及生产调度逻辑,仍需要人工审查每一次改动。
- 想用它替代 Airflow 官方升级文档。该 Skill 是辅助工具,最终仍应以 Airflow 官方迁移说明为准。
- 完全没有 Airflow 经验、只是第一次接触 Airflow 的用户。
需要明确:该 Skill 属于提示词 / 工作流 / 指令集性质,而不是一个可独立执行的迁移程序。它提供的迁移建议是否准确,取决于 Agent 自身能力、所加载的 Skill 内容以及项目实际情况。涉及生产环境的迁移,务必人工复核。
Skill 安全评估
总体判断:该 Skill 来源于 Astronomer 官方 agents 仓库,来源可信度较高,本身属于迁移辅助指令,不涉及窃取凭证或上传代码等可疑行为。主要风险不在于 Skill 本身,而在于它引导 Agent 对真实 Airflow 代码库做改动时可能带来的副作用。
来源可信度
- 来自 Astronomer 官方 agents 仓库,属于 Airflow 生态内的官方 / 一手来源,相比第三方同名仓库更可信。
- 仍建议通过 LemonAIKit 页面提供的安装指令或官方渠道获取,避免从不明来源复制剪贴。
文件读写与代码修改
- 迁移辅助几乎必然涉及读取现有 DAG、配置、依赖文件。
- 如果放开 Agent 的自动写入 / 自动执行权限,Agent 可能直接修改项目文件。
- 建议操作前先提交或备份代码,把迁移改动放在独立分支上进行,方便对比与回滚。
- 如果只想先看建议、不想改文件,可以只给 Agent 读取权限,由用户自己手动应用改动。
Shell 权限
- 如果 Agent 需要运行 Airflow 相关命令或测试迁移结果,会用到 Shell 权限。
- Shell 权限本身不是问题,但建议限定在工作目录内,避免执行删除、覆盖等破坏性命令。
- 生产环境的迁移验证,建议先在隔离环境执行。
网络与依赖
- 如果安装或验证过程需要拉取 Airflow 3 相关依赖,会涉及网络访问。
- 依赖来源应以 PyPI 或官方渠道为准,避免使用不明镜像。
凭证与敏感信息
- 迁移过程中 Agent 可能读取 Airflow 配置,其中可能包含连接串、密钥等敏感信息。
- 如果项目里存在明文凭证,建议先清理或替换为环境变量,再交给 Agent 处理。
- 不要把生产凭证明文放进交给 Agent 的上下文中。
Prompt Injection 风险
- 如果 Agent 读取的代码或文档中包含诱导性内容,理论上存在被误导的可能。
- 对 Agent 给出的迁移改动,仍应以人工审查为准。
降低风险的做法:先在 Git 分支或代码副本上操作;关闭不必要的自动执行权限;把生产凭证与迁移代码分离;迁移结果人工复核后再合入主分支。
Skill 使用要求
一、Agent / 客户端
该 Skill 来自 Astronomer 官方 agents 仓库,主要面向支持 Skills / 自定义指令加载机制的 AI Agent。官方未公布完整的第三方 Agent 兼容列表,因此无法逐一确认所有客户端的官方支持情况。
一般来说:
- Claude Code 这类支持 Skill / 指令加载的 Agent,通常更适合使用。
- Codex、Cursor、Trae、OpenClaw、WorkBuddy 等主流 AI Agent,在支持自定义 Skill 或类似指令加载机制时,通常也可以尝试。
- 不同 Agent 的 Skill 加载方式、上下文长度、文件读写与执行权限不同,实际可用程度会有差异,具体以对应 Agent 当前版本为准。
判断优先级建议:如果该 Skill 的加载结构与某个 Agent 的 Skill 机制匹配,可直接使用;否则可让 Agent 读取 Skill 内容并按提示执行。
二、运行环境 / 依赖
| 项目 | 要求 |
| Agent | 支持 Skill / 自定义指令加载的 AI Agent,Claude Code 优先 |
| Python | 迁移对象是 Airflow 项目,实际验证通常需要 Python 与 Airflow 环境 |
| Airflow | 需要有 Airflow 2 代码库;验证迁移结果通常需要可运行 Airflow 3 的环境 |
| Git | 建议使用,便于分支隔离与回滚 |
| 网络 | 安装或校验依赖时需要 |
官方没有明确给出必须的 Python / Airflow 具体版本号,因此不要假设某个固定版本。实际以你项目使用的 Airflow 版本和目标 Airflow 3 版本为准。
三、权限
- 文件读取:必需,用于读取现有 DAG、配置、依赖。
- 文件写入:可选,若希望 Agent 直接改代码则需要;只想看建议时可以关闭。
- Shell:可选,用于运行验证命令;可关闭后由用户手动执行。
- 网络:安装 / 校验依赖时可选需要。
- Git:建议具备,用于隔离与回滚。
四、账号 / API Key
- 该 Skill 本身不要求额外的账号或 API Key。
- 若迁移后的 Airflow 项目需要连接外部服务,相关凭证属于项目自身需求,与该 Skill 无关。
- 如果使用托管型 Agent 服务,是否需要账号取决于该 Agent 平台,而不是这个 Skill。
最小使用条件
- 一个支持 Skill / 自定义指令加载的 AI Agent。
- 一份可读的 Airflow 2 代码库。
- 建议具备 Git 环境,用于分支隔离。
Skill 安装、使用与卸载教程
一、安装
可以直接复制本页面提供的 Skill 安装指令,粘贴到对应 Agent 或终端执行。LemonAIKit 已经在 Skill 详情页给出对应安装指令,这里不再重复完整安装命令。
如果不知道自己的 Agent 该如何安装,可以直接向当前 AI Agent 提问,让它根据自己的 Skill 加载 / 管理机制给出步骤:
如何安装 astronomer/agents#migrating-airflow-2-to-3?
如何在 Claude Code 中安装 astronomer/agents#migrating-airflow-2-to-3?
如何在 Cursor 中安装 astronomer/agents#migrating-airflow-2-to-3?
如果该 Skill 存在额外的官方安装前提(例如需要先加载所属仓库 / 插件集),以 Astronomer 官方说明为准,不要自行拼接安装命令。
二、安装后如何使用
安装后,该 Skill 一般会在处理 Airflow 迁移相关任务时被触发。也可以在提问时显式点名,让 Agent 使用该 Skill。
适合交给它的任务类型:
- 分析现有 Airflow 2 代码库与 Airflow 3 的不兼容点。
- 给出具体文件的迁移改动建议。
- 按模块分批推进迁移,并保持业务逻辑不变。
向 Agent 描述需求时,建议说清楚:Airflow 版本、目标版本、代码路径、是否允许直接改文件、是否允许运行命令。
自然语言使用示例:
使用 migrating-airflow-2-to-3,帮我检查这个 Airflow 2 项目的 DAG 目录,列出需要改到 Airflow 3 的地方。
使用 migrating-airflow-2-to-3,按文件给出迁移建议,先不要修改代码,只输出改动清单。
使用 migrating-airflow-2-to-3,把 dags/ 目录下的 Operator 写法迁移到 Airflow 3,改完列出每个文件的变更点。
三、卸载
不同 Agent 的 Skill 安装位置和管理方式可能不同。通常可以:
- 使用对应 Agent / Skill 管理器提供的删除方式移除该 Skill。
- 直接询问当前 Agent:
如何卸载 astronomer/agents#migrating-airflow-2-to-3?
如果没有统一卸载命令,直接让当前 Agent 移除对应的 Skill 目录或条目通常更稳妥。官方未提供统一卸载命令时,不要自行编造。
常见问题
这个 Skill 会自动把 Airflow 2 升级到 Airflow 3 吗?
不会。它提供迁移辅助能力,具体改动仍需 Agent 执行、用户审查。生产迁移建议人工复核后再合入。
安装后 Agent 没有识别到 Skill 怎么办?
先确认安装指令已成功执行、Skill 目录存在且结构正确,再确认当前 Agent 是否支持该加载机制。可以询问当前 Agent“是否已加载 migrating-airflow-2-to-3”,让它自行排查。
它会直接修改我的代码吗?
取决于你授予 Agent 的权限。若只给读取权限,它只输出建议;若允许文件写入,它可能直接改代码。建议在 Git 分支上操作,便于对比与回滚。
可以只让它给迁移建议、不执行 Shell 命令吗?
可以。关闭 Agent 的自动执行权限,让它在分析后输出改动清单,由你手动执行安装、测试等命令。
中国大陆使用有网络要求吗?
该 Skill 本身不强制特定网络环境,但安装和验证 Airflow 3 依赖时可能需要访问 PyPI 等源。若下载不畅,可考虑使用可用的镜像源,具体以你所在环境为准。
迁移结果准确吗,可以直接上生产吗?
不能仅依赖 Skill 输出直接上生产。它降低人工比对成本,但 Airflow 3 迁移涉及调度、执行器、依赖等多方面变化,最终应以 Airflow 官方迁移文档为准并配合完整测试。