debugging-dags – Airflow DAG 调试与故障排查 Skill

3周前更新 8 0 0 0

debugging-dags 是帮助 AI Agent 诊断和修复 Apache Airflow DAG 运行错误的 Skill,可在 DAG 解析失败、任务报错或调度异常时定位问题原因并给出修改建议。

Skill 安装

多 Agent 安装
npx skills add https://github.com/astronomer/agents --skill debugging-dags

使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。

Skill 调研报告

Skill 详细介绍

astronomer/agents#debugging-dags 是 Astronomer 官方 agents 仓库中的一个 Skill,名称可以识别为 debugging-dags,来自 astronomer/agents 仓库。Astronomer 是 Apache Airflow 的商业公司,也是 Airflow 生态的主要维护方之一。

需要先说明一点:目前公开可查的 Astronomer agents 仓库资料有限,官方没有为 debugging-dags 提供非常详尽的独立说明文档。因此下面关于具体行为的描述,以名称、仓库背景和 Airflow / DAG 调试的通用工作方式为基础,属于合理推断,具体行为请以该 Skill 当前的官方说明为准。

它是什么

  • 一个面向 Apache Airflow DAG 调试的 Agent Skill。
  • 本质是提示词 / 工作流 / 指令集,不是一个可以独立运行的程序或服务。
  • 安装后,Agent 在处理 Airflow DAG 报错、任务失败、调度异常等问题时,会遵循该 Skill 提供的调试思路和方法。

它不是什么

  • 它不是一个 Airflow 替代品,不负责运行、调度或托管 DAG。
  • 它本身不连接你的 Airflow 实例,也不自带 Airflow CLI。
  • 它不保证自动修复问题,主要价值在于提供系统化的排查思路和代码分析。

核心用途

帮助开发者排查和定位 Apache Airflow DAG 相关的常见问题,例如:

  • DAG 文件解析失败(import error、语法错误、依赖缺失)。
  • 任务(Task)运行失败、重试、超时。
  • 调度相关异常(schedule、timetable、catchup 行为不符合预期)。
  • 依赖、连接、变量、XCom 等使用问题。
  • DAG 结构、Task 依赖关系、运算符(Operator)使用方式的问题。

典型任务

  • 把一段报错日志或 traceback 提供给 Agent,请它分析可能的根因。
  • 把 DAG 代码贴给 Agent,请它检查结构、依赖和潜在错误。
  • 让 Agent 解释某个 DAG 为什么没有按预期时间调度。
  • 让 Agent 对比多个 Task 的失败模式,给出排查顺序。

适合哪些用户

  • 使用 Apache Airflow 做数据管道的工程师。
  • 正在排查 DAG 报错、任务失败、调度异常的数据团队。
  • 希望让 AI Agent 更懂 Airflow 调试套路的开发者。

不适合哪些需求

  • 不使用 Airflow 的项目(该 Skill 针对性很强,帮助有限)。
  • 希望 Agent 直接连上 Airflow 并自动修复线上 DAG(这不是它的定位)。
  • 需要托管、部署、运维 Airflow 本身(属于 Astronomer 其他产品或服务范畴)。

Skill 安全评估

总体判断:这是一个以提示词 / 调试指导为主的 Skill,本身不包含可执行程序,公开资料中没有发现明显的高风险行为。但由于官方独立说明有限,仍建议按常规第三方 Skill 对待。

来源可信度

  • 来自 astronomer/agents,Astronomer 是 Airflow 生态的官方商业公司,来源相对可信。
  • 仍建议在安装前查看该仓库当前的 README / SKILL.md,确认实际内容。

主要风险点

  • 代码与日志外发:使用该 Skill 时,你很可能把 DAG 代码、报错日志、traceback、连接信息等交给 Agent。这些内容会随 Agent 的调用方式发送到对应模型服务。如果其中包含凭证、内网地址、业务敏感逻辑,存在信息泄露风险。
  • 提示词内容:Skill 本身是指令集。理论上,如果 Skill 内容被篡改或被第三方重新发布,可能引入恶意指令。建议只从官方来源安装。
  • Agent 自动执行权限:如果 Agent 被授予 Shell 自动执行权限,且你在对话中让它运行命令,可能产生意外操作。这与 Skill 本身无关,但和整体使用方式有关。

降低风险的建议

  • 不要外发真实的生产凭证、Secret、API Key、连接密码。必要时用占位符替换后再交给 Agent。
  • 如果只是让 Agent 帮助分析代码和日志,可以关闭 Agent 的自动执行 Shell 权限,由你手动执行命令。
  • 只从官方 astronomer/agents 仓库安装,避免使用来源不明的镜像或副本。
  • 安装前快速阅读 SKILL.md,确认里面没有让你意外执行的操作。

任何 Skill 都无法做到绝对安全,判断标准应是:其权限和行为是否符合“DAG 调试辅助”这一正常用途。就目前资料看,它属于工具型、低侵入性的 Skill。

Skill 使用要求

一、Agent / 客户端

该 Skill 属于通用 Agent Skill 形式。官方没有公布完整的第三方 Agent 兼容列表。通常建议:

  • 在支持自定义 Skill / 指令加载机制的 Agent 中使用,例如 Claude Code、Codex、Cursor、Trae、OpenClaw、WorkBuddy 等。
  • 不同 Agent 的 Skill 加载方式和兼容程度可能不同,具体以对应 Agent 当前版本为准。

官方若在未来明确列出支持的 Agent,请以其官方说明为准。

二、运行环境 / 依赖

该 Skill 本身是提示词 / 指令集,通常不需要额外安装运行环境。下面列出的是“调试 Airflow DAG”这一实际任务本身可能需要的东西,而不是 Skill 运行所必需的:

项目 要求
Agent 支持 Skill / 自定义指令的 Agent(如 Claude Code 等)
Python 调试 Airflow 项目时通常需要,版本以你的 Airflow 版本要求为准
Apache Airflow 被调试的对象,版本以你的项目为准
网络 Skill 安装和 Agent 调用通常需要

注意:Skill 官方没有明确列出 Node.js、Python 等硬性版本要求,上表中的 Python / Airflow 属于被调试项目的需要,并非 Skill 本身的强制依赖。

三、权限

  • 文件读取:可选。如果让 Agent 读取本地 DAG 文件,需要文件读取权限。
  • Shell:可选。可以用来运行 Airflow CLI、Python 脚本等验证命令,但不是 Skill 必需。
  • 网络:Skill 安装与 Agent 调用通常需要。
  • 其他权限:非必需。

四、账号 / API Key

  • Skill 本身通常不要求独立账号或 API Key。
  • 但如果你的 Agent 依赖某个模型服务的 API Key,那是 Agent 层面的要求,不是该 Skill 的要求。
  • 被调试的 Airflow 项目可能涉及连接信息、凭证,这些属于被调试对象,不是该 Skill 提供的。

最小使用条件

  1. 一个支持 Skill / 自定义指令的 Agent。
  2. 能安装并加载 astronomer/agents#debugging-dags。
  3. (可选)待调试的 Airflow DAG 代码或报错日志。

Skill 安装、使用与卸载教程

一、安装

可以直接复制本页面提供的 Skill 安装指令,粘贴到对应 Agent 或终端执行即可。

如果你不确定自己的 Agent 该怎么装,可以直接问当前 Agent:

如何安装 astronomer/agents#debugging-dags?

如何在 Claude Code 中安装 astronomer/agents#debugging-dags?

如何在 Cursor 中安装 astronomer/agents#debugging-dags?

让 Agent 根据自己的 Skill 加载 / 管理机制来指导安装。官方没有为该 Skill 提供特殊的额外安装条件说明,按常规 Skill 安装流程处理即可。

二、安装后如何使用

安装后,通常无需特殊触发命令。当你在对话中提出与 Airflow DAG 调试相关的任务时,Agent 会参考该 Skill 提供的调试思路。适合交给它的任务包括:分析报错、检查 DAG 代码、排查调度异常。

你也可以显式点名使用该 Skill。自然语言示例:

使用 debugging-dags,帮我分析这个 Airflow DAG 的报错,找出可能的根因。

使用 debugging-dags,检查这段 DAG 代码有没有结构或依赖问题。

使用 debugging-dags,这个 DAG 没有按预期时间调度,帮我列出排查步骤。

描述需求时,把报错日志、traceback、DAG 代码、Airflow 版本、执行环境等信息一起提供,通常能得到更准确的分析。

三、卸载

不同 Agent 的 Skill 安装位置和管理方式可能不同。如果没有统一的卸载命令,直接询问当前 Agent 更稳妥:

如何卸载 astronomer/agents#debugging-dags?

通常也可以通过对应 Agent / Skill 管理器提供的删除方式,或直接删除对应 Skill 目录来完成卸载。

常见问题

1. 官方对 astronomer/agents#debugging-dags 的说明很详细吗?

目前公开可查的独立说明比较有限。建议直接查看 astronomer/agents 仓库当前的 README 与 SKILL.md,以官方最新内容为准。

2. 安装后 Agent 没有识别到这个 Skill,怎么办?

常见原因包括:Agent 不支持该 Skill 格式、安装位置不对、需要重启 Agent 或新开会话。可以先确认 Agent 的 Skill 目录,再尝试重启或直接询问当前 Agent 如何加载该 Skill。

3. Skill 更新后需要重新安装吗?

取决于你的安装方式。如果是直接引用官方仓库,更新方式以对应 Agent / Skill 管理器的机制为准。可以询问当前 Agent 如何更新已安装的 Skill。

4. 中国大陆使用有网络要求吗?

Skill 来源在 GitHub,安装和更新通常需要能访问 GitHub。如果你的网络环境访问 GitHub 受限,可能需要相应的网络配置。Agent 调用模型服务另有其自身的网络要求,与该 Skill 无关。

5. 这个 Skill 会修改我的已有项目吗?

该 Skill 本身以提示词 / 调试指导为主,不主动修改文件。但如果你在对话中让 Agent 直接改代码,修改行为来自 Agent 本身,而不是 Skill。建议在重要项目上先备份或使用版本控制。

6. 不用 Airflow,这个 Skill 还有用吗?

帮助有限。它针对的是 Airflow DAG 调试,脱离 Airflow 后价值不大。

7. 可以同时安装到多个 Agent 吗?

通常可以,前提是各 Agent 都支持 Skill / 自定义指令。各自独立安装和管理即可,互不影响。

Skill 更新日志

版本列表
astro-airflow-mcp-0.9.1 最新
补丁版本:修复了在 FastMCP 3.4.3+ 下插件 `/mcp/v1/` 端点上的 `421 Misdirected Request` 问题,并将 `fastmcp` 固定在有界范围内。 ## 自 0.9.0 以来的修复 ### 修复来自 FastMCP 主机防护的 `421 Misdirected Request`(#241) FastMCP 3.4.3 默认启用了 `HostOriginGuardMiddleware`:它只接受回环 `Host` 头(`127.0.0.1`/`localhost`/`::1`)以及 ASGI `scope["server"]` 主机,对其他任何内容返回 `421 Misdirected Request`。在插件模式下,MCP 应用嵌入在 Airflow webserver 中,并通过 Deployment 自己的主机名访问,因此在未固定版本、解析到 fastmcp 3.4.3 的安装中,对 `/mcp/v1/` 的每个请求都被以 421 拒绝。 - 插件现在保持防护**启用**,但将 `allowed_hosts` 限定为 Deployment 的主机名,从 `AIRFLOW__WEBSERVER__BASE_URL` 环境变量读取(该变量在插件导入时存在,不同于 Airflow 的 `conf`)。DNS 重绑定防护保持开启,而不是被关闭。 - `ASTRO_MCP_ALLOWED_HOSTS`(逗号分隔)可为自定义域名覆盖允许列表;仅当无法推导出主机名时(非 Astro 嵌入),插件才回退到禁用防护。 - 独立模式(`mcp.run`)不变——它保持 FastMCP 的默认回环防护,这正是本地绑定服务器所需的。 - 固定 `fastmcp>=3.4.3,<4`,使行为确定,不会在 FastMCP 下一次默认翻转时悄然改变。 ## 安装 ``` uvx --from 'astro-airflow-mcp==0.9.1' af ``` ## 升级说明 如果你曾将 `fastmcp<3.4.3` 固定作为临时变通方案,升级到 0.9.1 后可以移除该固定。
astro-airflow-mcp-0.9.0
次要版本:每个 MCP 工具现在返回结构化的、可供 agent 操作的错误,并带有 MCP 安全注解,此外 `af runs list` 新增了结束日期过滤器。 ## 自 0.8.2 以来的新内容 ### 结构化工具错误 + MCP 安全注解(#221) 工具此前将所有失败都简化为裸的 `str(e)`——agent 无法区分错误的 `dag_id`(修正参数并重试)与 Airflow 不可达(停止并上报),因为两者都返回相同的不透明字符串。 - **错误即数据。** 每个工具现在返回 `error`、`error_type`、`hint`、`retryable` 标志,以及回显的标识参数(例如 `dag_id`)。`retryable` 将调用方可修复的问题(错误参数、400/404/429)与硬性阻塞(认证、5xx、只读、不可达)区分开,因此 agent 知道修正后的重试是否有帮助。对 `ReadOnlyError`、`NotFoundError`、Astro 认证错误、`httpx` 状态码、超时和传输错误进行分类。 - **所有 34 个工具上的安全注解。** 27 个读取标记为只读 + 幂等;7 个写入带有准确的提示——`delete_dag_run` 破坏性 + 非幂等,`clear_*` 破坏性 + 幂等,`pause`/`unpause` 幂等,`trigger*` 非幂等。客户端可以在调用*之前*对写入进行门控,补充现有的 `AF_READ_ONLY` 防护(后者仅在模型决定调用*之后*才拒绝)。默认谨慎:只有当工具明确选择加入时才会被宣告为“安全”。 - **凭据卫生。** `normalize_airflow_url` 现在从 netloc 中剥离 `user:password@`(主机/端口/IPv6 原样保留),因此凭据不会泄漏到日志或错误消息中嵌入的 URL 中。 向后兼容——`str(e)` 始终保留在 `error` 内,因此任何 grep 旧裸字符串响应的消费者仍可工作;新消费者可获得结构化字段。 ### `af runs list` 的 `--end-date-gte` / `--end-date-lte` 过滤器(#233) 按运行*结束*时间过滤运行,与现有的 `--start-date-*` 过滤器对应——适用于“过去 N 分钟内完成了哪些运行以及它们如何结束”的恢复扫描。ISO 8601 时间戳;`--dag-id` 可选。关闭 #225。 ```bash # 在某个时间窗口内完成、并结合状态的运行 af runs list --end-date-gte 2026-06-10T15:00:00Z --state failed ``` ## 安装 ``` uvx --from 'astro-airflow-mcp==0.9.0' af ``` ## 升级说明 可直接替换 0.8.2——仅新增,无破坏性变更。结构化错误负载是旧字符串的超集(`str(e)` 保留在 `error` 中),因此现有消费者不受影响;新消费者可以读取结构化字段。
astro-airflow-mcp-0.8.2
补丁版本:修复当环境中设置了 `ASTRO_API_TOKEN` 时 `af instance discover` 静默报告“No instances discovered”的问题。 ## 自 0.8.1 以来的修复 - **解析 astro CLI 表格输出时跳过前导行**(#213):当设置了 `ASTRO_API_TOKEN` 时,astro CLI 会在 stdout 前加上 `Using an Astro API Token`。af 表格解析器将该行当作表头行,把每个 `astro deployment list` 行折叠为名为 `using_an_astro_api_token` 的单列,并丢弃每个 deployment——discover 会静默返回零个实例。解析器现在从顶部逐行遍历,选择第一个边界检测出 2+ 列的行作为真正的表头,因此 astro CLI 输出的任何单行前导都会被自动跳过。 ## 安装 ``` uvx --from 'astro-airflow-mcp==0.8.2' af ``` ## 升级说明 可直接替换 0.8.1。无配置或 CLI 变更。任何在 shell 中设置了 `ASTRO_API_TOKEN` 时遇到 `No instances discovered` 的人现在都能正确看到 deployments。
astro-airflow-mcp-0.8.1
补丁版本:修复针对 webserver URL 带有 `?orgId=…` 查询字符串的 Astro deployments 的版本检测。 ## 自 0.8.0 以来的修复 - **从 Airflow URL 中剥离查询字符串 / 片段**(#210):Astro 发现有时返回 `webserver_url=https://host/dep?orgId=org_…`。由于 API URL 是通过字符串拼接构建的(`f"{airflow_url}/api/v2/version"`),结果是 `https://host/dep?orgId=org_…/api/v2/version`,API 路径被吞入查询字符串,破坏了版本检测以及随后的每次 API 调用。新的 `normalize_airflow_url()` 辅助函数剥离查询、片段和尾部斜杠,应用于四个边界:`discovery/astro_cli.py`(在源头)、`adapters/base.py`(适配器构造函数)、`adapters/airflow_v3.py`(令牌交换)和 `adapters/__init__.py`(`detect_version`)。 - **更好的版本检测错误**:`detect_version` 现在收集每个探测的失败并在 `RuntimeError` 消息中呈现(`Probes: /api/v2: HTTP 404; /api/v1: HTTP 502; ...`),而不是通用的“Failed to detect Airflow version”。还捕获了此前静默漏过的 `200 但非 JSON 正文` 情况。 ## 安装 ``` uvx --from 'astro-airflow-mcp==0.8.1' af ``` ## 升级说明 可直接替换 0.8.0。无配置或 CLI 变更。已将 `?orgId=…` 烘焙进其存储的 `airflow_url` 的现有用户不再需要重新运行 `af discover`——该值在读取时被规范化。
astro-airflow-mcp-0.8.0
分层配置版本。`af` 现在跨全局、项目共享和项目本地文件读取和写入配置(镜像 `git config` 的 system/global/local 模型),并与 astro-cli 在 `~/.astro/` 共享配置主目录。 ## 自 0.7.0 以来的新内容 - **分层配置**(#207):三个作用域与 astro-cli 的配置树共置 - 全局:`~/.astro/config.yaml`(每用户) - 项目共享:`/.astro/config.yaml`(已提交;团队共享) - 项目本地:`/.astro/config.local.yaml`(gitignored;每开发者当前实例) - `` 通过从 cwd 向上查找 `.astro/` 找到。项目内的写入路由:`add` / `discover` → 项目共享,`use` → 项目本地。用 `--global` / `--project` / `--local` 覆盖。`AF_CONFIG=` 完全绕过分层。 - 读取优先级:项目本地 > 项目共享 > 全局。更窄作用域中的同名实例会遮蔽。 - **默认全局路径移动**从 `~/.af/config.yaml` 到 `~/.astro/config.yaml`。旧路径作为一次性只读回退被尊重(带有 stderr 弃用提示)。运行 `af migrate` 进行显式迁移并保留 `.bak`。 - **新命令**: - `af migrate`:幂等。报告 `migrated` / `already-migrated` / `nothing-to-migrate`。 - `af instance show `:`git config --show-origin` 风格的查找,报告实例来自哪个文件。 - **`af instance list`** 现在包含作用域和来源列,并用 `*` 标记当前实例。 - **`save()` 与外来顶层键合并**(`project`、`cloud`、`contexts`、`telemetry.notice_shown`),因此 `af` 和 astro-cli 可以共存于同一文件。往返时保留文件模式;新文件以 0600 写入。 - **Skill**:停止在 `astro dev init` 上固定 Airflow 版本(#206)。修复了模型尽管 CLI 默认使用最新版却传递 `--airflow-version 3.1.0` 的幻觉。 ## 安装 ``` uvx --from 'astro-airflow-mcp==0.8.0' af ``` ## 升级说明 - 现有 `~/.af/config.yaml` 用户:不会中断。`af` 将其作为回退读取。方便时运行 `af migrate`。它会合并到 `~/.astro/config.yaml`,保留那里已有的任何 astro-cli 内容,并将旧文件重命名为 `.bak`。 - 在 astro 项目内,`af instance add` 现在默认写入 `.astro/config.yaml`(已提交)。凭据优先使用 `${ENV_VAR}` 插值或 `astro_pat`,或传递 `--local` 用于 gitignored 机密,或 `--global` 用于个人配置。 - `AF_CONFIG=` 和 `AF_CONFIG=/dev/null` 语义不变。
astro-airflow-mcp-0.7.0
PAT 认证重写(#204)的稳定版本,加上 OSError 后续修复(#205) ## 自 0.6.4 以来的新内容 - `af instance discover astro` 现在通过 Auth0 刷新令牌交换复用用户的 `astro login` 会话,而不是铸造永久 `DEPLOYMENT_ADMIN` 令牌。发现的 deployments 使用 `auth.kind = astro_pat`,且从不将令牌写入 af 的配置 - 现有 `kind = token` 和 `kind = basic` 实例保持不变继续工作(向后兼容) - 401 重试路径,带一次强制刷新,去抖动为每 60 秒一次 - 轮换的刷新令牌在 flock 下持久化回 `~/.astro/config.yaml`,以免 astro CLI 自己的会话中断 - `astro_context` 在发现时始终固定(避免 `astro context switch` 后的跨租户令牌泄漏) - 朴素的 `expiresin` 字符串锚定到 UTC(纵深防御) - `_read_yaml` 捕获 `FileNotFoundError`、`NotADirectoryError`、`IsADirectoryError`,因此非文件的 `ASTRO_HOME` 路径会呈现干净的“run astro login”错误,而不是被掩盖的版本检测失败 ## 验证 - 490 个单元测试通过;CI 在所有矩阵条目上绿色(py3.10/11/12,AF2/AF3 集成) - 完整破坏测试组(约 30 个场景)针对 0.7.0a1 和 0.7.0a2 运行干净 - 使用 otto agent 针对 AF3 云 deployment 和本地 AF2 独立版进行端到端测试 - 所有测试中未铸造任何 deployment 令牌 ## 安装 ``` uvx --from 'astro-airflow-mcp==0.7.0' af ``` ## 升级说明 - 如果你有由旧 `af instance discover astro` 铸造的 deployment 令牌的现有 af 配置,它们继续工作。你可以不管它们,或重新运行 discover(如果传递 `--overwrite`,它会覆盖为 PAT 支持的实例) - 留在你的 astro deployments 中的现有 `af-discover-*` 令牌现在是孤儿。方便时在 astro UI 中撤销它们
astro-airflow-mcp-0.7.0a2
后续 alpha,在 0.7.0a1 之上捆绑了来自 #205 的 OSError 修复 ## 自 0.7.0a1 以来的新内容 - `_read_yaml` 现在捕获表示“无可读 astro 配置”的特定 OSError 形态(`FileNotFoundError`、`NotADirectoryError`、`IsADirectoryError`),而不是泄漏到 `detect_version` 成为被掩盖的“Failed to detect Airflow version”(#205) - `PermissionError` 和其他意外 OS 错误会传播,因此它们清晰呈现,而不是死胡同到“run astro login” ## 安装 ``` uvx --from 'astro-airflow-mcp==0.7.0a2' af ```
astro-airflow-mcp-0.7.0a1
PAT 认证重写(PR #204)的 alpha 版本,用于在 otto 中测试后再提升为 0.7.0 稳定版 ## 新内容 - `af instance discover astro` 现在通过 Auth0 刷新令牌交换复用用户的 `astro login` 会话,而不是铸造永久 `DEPLOYMENT_ADMIN` 令牌 - 实例配置中新增 `auth.kind = astro_pat`;现有 `token` / `basic` 实例保持不变继续工作 - 401 重试路径,带一次强制刷新,去抖动为每 60 秒一次 - 轮换的刷新令牌在 flock 下持久化回 ~/.astro/config.yaml,以免 astro CLI 自己的会话中断 - 朴素的 `expiresin` 字符串锚定到 UTC(针对手工编辑的纵深防御) ## 安装 ``` uvx --from 'astro-airflow-mcp==0.7.0a1' af ``` ## 为什么是 alpha 切一个 alpha 以用 otto 的包装器(通过 uvx 固定 af)进行端到端验证,然后再提升为 0.7.0
astro-airflow-mcp-0.6.4
## 变更内容 * 在 `runs trigger-wait` 中检测暂停的 DAG,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/190 * af CLI:将空的 AIRFLOW_API_URL 视为显式无操作,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/191 * af CLI:当 AF_CONFIG 指向非普通文件时不要崩溃,作者 @kaxil,见 https://github.com/astronomer/agents/pull/193 * 修复 list_dag_runs(MCP 工具 + af CLI)返回最旧运行在前的问题,作者 @JoaVirtudes19,见 https://github.com/astronomer/agents/pull/192 ## 新贡献者 * @JoaVirtudes19 在 #192 中做出首次贡献 **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.6.3...astro-airflow-mcp-0.6.4
astro-airflow-mcp-0.6.3
## 变更内容 * 扩展插件模式文档,包含 Astro 认证、角色和故障排除,作者 @tayloramurphy,见 https://github.com/astronomer/agents/pull/184 * 为 MCP 服务器添加 Airflow 2.x 插件模式支持,作者 @kaxil,见 https://github.com/astronomer/agents/pull/186 **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.6.2...astro-airflow-mcp-0.6.3
astro-airflow-mcp-0.6.2
## 变更内容 * 修复远程部署的 Airflow MCP 插件模式,作者 @kaxil,见 https://github.com/astronomer/agents/pull/183 **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.6.1...astro-airflow-mcp-0.6.2
astro-airflow-mcp-0.6.1
## Bug 修复 - 修复当配置文件包含不同实例的凭据时的环境变量认证(#181) - 修复:从 TERMINAL_DAG_RUN_STATES 中移除 upstream_failed(#166)
astro-airflow-mcp-0.6.0
## 新内容 ### `af registry` — 查询 Airflow Provider Registry(#145) 四个新的 CLI 命令,可直接从终端浏览 [Airflow Provider Registry](https://airflow.apache.org/registry)——无需运行中的 Airflow 实例: - `af registry providers` — 列出所有 providers(id、name、version、lifecycle) - `af registry modules ` — 列出 operators、hooks、sensors 和 transfers - `af registry parameters ` — 显示 provider 类的构造函数参数 - `af registry connections ` — 显示连接类型及其字段 支持 `--version` 以固定到特定 provider 发布版,结果本地缓存(最新版 1 小时,版本化快照 30 天)。使用 `--no-cache` 绕过。 ```bash af registry modules amazon | jq '.modules[] | select(.type == "hook") | .name' af registry parameters ftp | jq '.classes | keys[]' ``` ### 改进 - 为 `list_dag_runs` MCP 工具添加 `dag_id` 过滤器(#163) - 澄清 `get_dag_stats` 需要 `dag_ids` 作为列表(#162) ### 修复 - 使发现令牌名称用户特定以避免冲突(#156) - 修复 airflow-adapter skill frontmatter(#147) **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.5.1...astro-airflow-mcp-0.6.0
astro-airflow-mcp-0.5.1
## 变更内容 * 改进 agent 检测,作者 @schnie,见 https://github.com/astronomer/agents/pull/141 * 分离 agent 和 ci_system 属性,作者 @schnie,见 https://github.com/astronomer/agents/pull/142 **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.5.0...astro-airflow-mcp-0.5.1
astro-airflow-mcp-0.5.0
## 变更内容 * fix:运行 --plugin-dir 时加载 hooks,作者 @milton-li,见 https://github.com/astronomer/agents/pull/102 * 确保 airflow mcp 包高效使用 uvx 缓存,作者 @schnie,见 https://github.com/astronomer/agents/pull/100 * fix:从 skill 参考文件中移除 doctoc 目录,作者 @kaxil,见 https://github.com/astronomer/agents/pull/107 * 基于早期用户反馈改进 authoring-dags skill,作者 @tayloramurphy,见 https://github.com/astronomer/agents/pull/104 * 添加 `af` CLI 遥测,作者 @schnie,见 https://github.com/astronomer/agents/pull/106 * 在 skills 中使用 `af` cli,作者 @milton-li,见 https://github.com/astronomer/agents/pull/108 * docs:在 README 中添加缺失的 skills,作者 @tayloramurphy,见 https://github.com/astronomer/agents/pull/112 * 重构 skill hooks 并扁平化 analyzing-data 脚本,作者 @milton-li,见 https://github.com/astronomer/agents/pull/113 * docs:为 Airflow 2→3 迁移添加共享工具导入破坏性变更,作者 @tayloramurphy,见 https://github.com/astronomer/agents/pull/111 * 将 init skill 重命名为 warehouse-init,作者 @kaxil,见 https://github.com/astronomer/agents/pull/114 * 添加 BigQuery 作业标签支持并修复 location 参数 bug,作者 @kaxil,见 https://github.com/astronomer/agents/pull/118 * 添加 Snowflake query_tag 支持,作者 @kaxil,见 https://github.com/astronomer/agents/pull/119 * 添加 Postgres application_name 支持,作者 @kaxil,见 https://github.com/astronomer/agents/pull/120 * 修复 `cosmos-dbt-core/SKILL.md`,作者 @tatiana,见 https://github.com/astronomer/agents/pull/122 * 进一步改进 Cosmos skills,作者 @tatiana,见 https://github.com/astronomer/agents/pull/123 * feat:添加部署管理 agents,作者 @kh3dron,见 https://github.com/astronomer/agents/pull/121 * fix:为自签名证书添加 SSL 证书验证绕过,作者 @kaxil,见 https://github.com/astronomer/agents/pull/126 * 触发前自动取消暂停 DAG,作者 @josh-fell,见 https://github.com/astronomer/agents/pull/127 * docs:澄清 Snowflake 账户标识符格式,作者 @josh-fell,见 https://github.com/astronomer/agents/pull/130 * 移除写入键,作者 @schnie,见 https://github.com/astronomer/agents/pull/128 * feat:添加 `af runs delete` 和 `af runs clear` 命令,作者 @tayloramurphy,见 https://github.com/astronomer/agents/pull/129 * 迁移到 prek.toml 配置进行静态检查,作者 @josh-fell,见 https://github.com/astronomer/agents/pull/131 * 为 MCP 工具调用添加遥测跟踪,作者 @schnie,见 https://github.com/astronomer/agents/pull/134 * 将遥测配置移入 config.yaml,作者 @schnie,见 https://github.com/astronomer/agents/pull/135 * 从 mypy 迁移到 ty 进行类型检查,作者 @josh-fell,见 https://github.com/astronomer/agents/pull/133 * 处理 Copilot 关于类型安全的反馈,作者 @kaxil,见 https://github.com/astronomer/agents/pull/139 * 实现 AF_READ_ONLY 模式以阻止写操作,作者 @igorastronomer,见 https://github.com/astronomer/agents/pull/138 ## 新贡献者 * @tatiana 在 https://github.com/astronomer/agents/pull/122 中做出首次贡献 * @kh3dron 在 https://github.com/astronomer/agents/pull/121 中做出首次贡献 **完整变更日志**:https://github.com/astronomer/agents/compare/plugin-0.2.0...astro-airflow-mcp-0.5.0
plugin-0.2.0
## Claude 插件发布 自初始发布以来的首次版本号提升,反映累积的变更: ### 新 Skills - Cosmos 集成 - Airflow HITL(Human-in-the-Loop) - 血缘注解 - 最佳实践 - Airflow 2-3 迁移 - 以及更多... ### 改进 - 用于 skill 建议的 hook 改进 - 用于 Astro deployments 的 `af` CLI 集成 - 多数据库支持(Snowflake、BigQuery 等) ### 安装 ```bash claude plugin marketplace add astronomer/agents claude plugin install data@astronomer ``` 或更新现有安装: ```bash claude plugin marketplace update astronomer/agents ```
astro-airflow-mcp-0.4.1
## 变更内容 * feat(skills):更新 testing-dags 以使用 af CLI,作者 @kaxil,见 https://github.com/astronomer/agents/pull/75 * refactor(cli):用子命令替换 `af api` 标志,作者 @kaxil,见 https://github.com/astronomer/agents/pull/76 * 添加血缘注解和 OpenLineage extractor skills,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/66 * 在根 README 中添加 af CLI 文档,作者 @schnie,见 https://github.com/astronomer/agents/pull/78 * feat(cli):为 list 命令添加过滤选项,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/79 * docs:添加社区健康文件,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/80 * docs:添加 CODE_OF_CONDUCT.md,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/81 * 在 README 中添加路线图部分,作者 @tayloramurphy,见 https://github.com/astronomer/agents/pull/74 * 添加 `af instance discover` 命令以自动发现 Astro deployments,作者 @schnie,见 https://github.com/astronomer/agents/pull/63 * Skill:Airflow HITL,作者 @igorastronomer,见 https://github.com/astronomer/agents/pull/95 * Skill:更新 airflow 2-3 迁移 skill,作者 @igorastronomer,见 https://github.com/astronomer/agents/pull/99 * Skill:Cosmos,作者 @igorastronomer,见 https://github.com/astronomer/agents/pull/96 ## 新贡献者 * @igorastronomer 在 https://github.com/astronomer/agents/pull/95 中做出首次贡献 **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.4.0...astro-airflow-mcp-0.4.1
astro-airflow-mcp-0.4.0
## 变更内容 * 更好地支持 airflow skill,作者 @schnie,见 https://github.com/astronomer/agents/pull/65 * fix:为 uvx af CLI 使用 @latest 后缀以防止陈旧版本问题,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/68 * fix:配置加载失败时警告而不是静默回退,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/70 * feat(cli):添加 `af api` 命令以直接访问 Airflow REST API,作者 @kaxil,见 https://github.com/astronomer/agents/pull/73 **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.3.0...astro-airflow-mcp-0.4.0
astro-airflow-mcp-0.3.0
## 变更内容 * 将 astro-dwh-mcp 切换为从 git 标签动态版本化,作者 @schnie,见 https://github.com/astronomer/agents/pull/46 * 提升 MCP 服务器版本标签,作者 @schnie,见 https://github.com/astronomer/agents/pull/47 * feat:airflow mcp skill 和 hook,作者 @milton-li,见 https://github.com/astronomer/agents/pull/45 * 添加 Cursor hooks 兼容性,作者 @kaxil,见 https://github.com/astronomer/agents/pull/50 * 添加 clear_task_instances MCP 工具以重试失败任务,作者 @petedejoy,见 https://github.com/astronomer/agents/pull/51 * 按域将 server.py 拆分为模块化工具文件,作者 @jlaneve,见 https://github.com/astronomer/agents/pull/52 * 更新 pre-commit hooks,作者 @jedcunningham,见 https://github.com/astronomer/agents/pull/55 * 修复 skill hook 路径以解析到正确目录,作者 @josh-fell,见 https://github.com/astronomer/agents/pull/56 * 为 analyzing-data skill 添加多数据库支持,作者 @kaxil,见 https://github.com/astronomer/agents/pull/57 * 为 analyzing-data skill 添加多数据库文档,作者 @kaxil,见 https://github.com/astronomer/agents/pull/58 * 将配置路径从 `~/.astro/ai/config/` 重命名为 `~/.astro/agents/`,作者 @kaxil,见 https://github.com/astronomer/agents/pull/59 * 通过 SQLAlchemy 连接器添加 Redshift 支持,作者 @kaxil,见 https://github.com/astronomer/agents/pull/60 * 用统一方言注册表重构 SQLAlchemy 连接器,作者 @kaxil,见 https://github.com/astronomer/agents/pull/61 * 添加 Airflow API Skill,作者 @schnie,见 https://github.com/astronomer/agents/pull/53 * 添加 CLI 命令并修复 CI 构建,作者 @schnie,见 https://github.com/astronomer/agents/pull/62 ## 新贡献者 * @petedejoy 在 https://github.com/astronomer/agents/pull/51 中做出首次贡献 * @jedcunningham 在 https://github.com/astronomer/agents/pull/55 中做出首次贡献 **完整变更日志**:https://github.com/astronomer/agents/compare/astro-airflow-mcp-0.2.3...astro-airflow-mcp-0.3.0
astro-airflow-mcp-0.2.3
该版本暂未提供更新说明。

暂无评论

none
暂无评论...