Astronomer agents — плагин

Плагин Astronomer для инженеров данных: MCP-сервер Airflow, CLI af и скиллы по DAG, линиджу и запросам к хранилищу

  • 461 ★ репозитория
  • Последний коммит
  • Apache-2.0
ПлагинОфициальныйВыбор редакции

Широкий доступ

Почему такой уровень

  • Сервер запускает DAG, ставит их на паузу и навсегда удаляет прогоны, а параметры из `warehouse.yml` дают агенту доступ к хранилищу данных.
  • Скилл анализа выполняет произвольный SQL в фоновом ядре Jupyter от имени сохраненных учетных данных.
Все причины и проверки

astronomer/agents

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add plugins/astronomer-agents

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Сервер запускает DAG, ставит их на паузу и навсегда удаляет прогоны, а параметры из `warehouse.yml` дают агенту доступ к хранилищу данных.
  • Скилл анализа выполняет произвольный SQL в фоновом ядре Jupyter от имени сохраненных учетных данных.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Astronomer agents — репозиторий компании Astronomer с набором для работы агента с Apache Airflow и хранилищами данных. Плагин `astronomer-data` для Claude Code объединяет MCP-сервер `astro-airflow-mcp`, консольную утилиту `af` и более 30 скиллов. Сервер запускается через `uvx` и покрывает REST API Airflow 2 и 3: список и исходники DAG, запуск и ожидание прогонов, логи задач, паузы, состояние системы. Скиллы идут по сценариям. Для разработки это написание и проверка DAG, локальное тестирование, отладка падений, деплой, перенос с Airflow 2 на 3 и запуск dbt через Cosmos. Для данных — инициализация схемы хранилища в `.astro/warehouse.md`, SQL-анализ через фоновое ядро Jupyter, профилирование таблиц и проверка свежести. Отдельный блок посвящен линиджу: скиллы прослеживают, откуда данные пришли и что сломается при изменении, и строят экстракторы OpenLineage.

Для кого. Инженерам данных на Apache Airflow, которые поручают Claude Code или Cursor писать DAG, разбирать упавшие прогоны и отвечать на вопросы по хранилищу.

Подходит, если

  • Ночной DAG упал, и агент по логам задач и исходнику находит причину, а затем описывает правку.
  • Проект на Airflow 2 переезжает на Airflow 3, и скилл миграции проходит по DAG и отмечает несовместимые места.
  • Проект dbt запускается как набор задач Airflow через Cosmos.
  • Аналитик спрашивает, сколько клиентов пришло за неделю, и агент находит таблицы по кэшу схемы и выполняет SQL.

Не подходит, если

  • Оркестрация построена на другом инструменте, например Dagster: у плагина есть только скилл переноса оттуда.
  • Нельзя давать агенту доступ к рабочему Airflow: сервер умеет запускать, ставить на паузу и удалять прогоны.
  • Нужен чистый запрос к хранилищу без Airflow: проще взять отдельный MCP для вашей СУБД.

Пример запроса к агенту

Посмотри последний упавший прогон DAG load_orders, найди причину в логах задач и покажи строку исходника, которую надо поправить.

Ограничения

Для сервера нужны `uv` и Python 3.10 или новее. Удаленный Airflow задают через `AIRFLOW_API_URL` и логин с паролем либо токен `AIRFLOW_AUTH_TOKEN`. Подключения к Snowflake, Postgres, BigQuery и другим хранилищам описывают в `~/.astro/agents/warehouse.yml`, а секреты кладут в `~/.astro/agents/.env`. Скиллы `setting-up-astro-project` и `managing-astro-local-env` относятся к платформе Astro, а для открытого Airflow автор советует Docker Compose и Helm. Утилита `af` собирает анонимную статистику с названиями команд, отключается через `af telemetry disable`. Скиллов в репозитории больше, чем перечислено в README.

Как отключить. Выполните `claude plugin uninstall astronomer-data@astronomer`. Сервер из конфигурации Cursor и других клиентов удалите вручную. Файлы `.astro/warehouse.md` и `~/.astro/agents/` с настройками остаются на диске, их стирают отдельно.

Частые вопросы

Как поставить плагин в Claude Code?

Выполните `claude plugin marketplace add astronomer/agents`, затем `claude plugin install astronomer-data@astronomer`. Если ставили старый плагин `data@astronomer`, сначала удалите его командой `claude plugin uninstall data@astronomer`.

Как подключить сервер Airflow к Cursor или VS Code?

Добавьте в `~/.cursor/mcp.json` или `.vscode/mcp.json` сервер с командой `uvx` и аргументами `astro-airflow-mcp`, `--transport`, `stdio`. В Cursor есть и ссылка быстрой установки.

Работает ли сервер с самостоятельно развернутым Airflow?

Да, подходит любой Airflow 2.x или 3.x с REST API. Укажите адрес в `AIRFLOW_API_URL` и данные для входа в `AIRFLOW_USERNAME` и `AIRFLOW_PASSWORD` либо токен в `AIRFLOW_AUTH_TOKEN`.

Можно ли запретить агенту запись?

Да, `AF_READ_ONLY=true` блокирует все записывающие операции. Набор доступных инструментов сужается переменной `ASTRO_MCP_ALLOWED_TOOLS`, например до `list_dags` и `get_dag_run`.

С чего начать работу с хранилищем?

С `/astronomer-data:warehouse-init`: скилл обходит базы из `warehouse.yml` и пишет схему в `.astro/warehouse.md`. После этого `analyzing-data` отвечает на вопросы быстрее, потому что не ищет таблицы заново.

Обсуждение

Вопросов и отзывов пока нет.

Плагины

Официальный набор Dagster для агентов: справочник по ассетам и командам dg плюс доступ к запускам, логам и алертам в облаке.

ПлагинШирокий доступ218Звезды репозитория
Официальный

Airbyte MCP подключает агента к организации Airbyte: конвейеры, синхронизации, журналы заданий и чтение данных.

MCP-серверШирокий доступ343Звезды репозитория
Официальный

Плагин подключает агента к хранилищу данных и находит в схеме AGENTS метаданные таблиц, моделей dbt и семантических объектов.

ПлагинШирокий доступ72Звезды репозитория
Официальный

Открытый агент для дата-инженеров: SQL-клиент в терминале с контекстом хранилища, семантическим слоем, REST API и MCP-сервером.

CLIШирокий доступ1,9 тыс.Звезды репозитория

Каталог плагинов Google Cloud для баз и аналитики: AlloyDB, Spanner, Bigtable, Firestore, Cloud SQL и Looker.

ПлагинШирокий доступ86Звезды репозитория

Плагины Claude Code от команды Oracle AI Data Platform: Ask AIDP управляет рабочей средой через 43 MCP-инструмента и aidp-cli.

ПлагинШирокий доступ60Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
Astronomer agents (эта карточка)да461
dbt Agent Skillsда762официальные скиллы dbt Labs о проектах dbt; здесь Airflow: сервер, утилита `af` и скиллы по DAG, а dbt закрывает скилл Cosmos
dbt MCPдаAPI-ключ621официальный MCP-сервер dbt Labs с Semantic Layer и запуском команд dbt; здесь MCP-сервер Airflow и работа с DAG

Коротко о README

Документация описывает два пути для инженера данных: анализ данных от инициализации хранилища до проверки свежести и разработку DAG от создания проекта до отладки. Сервер можно запускать отдельно или как плагин внутри Airflow 2.

Бейдж для README

Исходный SKILL.md

---
name: analyzing-data
description: Queries the data warehouse with SQL and answers business questions about data. Use when answering anything that needs warehouse data - counts, metrics, trends, aggregations, joins across tables, data lookups, or ad-hoc SQL analysis (for example "who uses X", "how many Y", "show me Z", "find customers", "what is the count").
---

# Data Analysis

Answer business questions by querying the data warehouse. The kernel auto-starts on first `exec` call.

**All CLI commands below are relative to this skill's directory.** Before running any `scripts/cli.py` command, `cd` to the directory containing this file.

## Workflow

1. **Pattern lookup** — Check for a cached query strategy:
   ```bash
   uv run scripts/cli.py pattern lookup "<user's question>"
   ```
   If a pattern exists, follow its strategy. Record the outcome after executing:
   ```bash
   uv run scripts/cli.py pattern record <name> --success  # or --failure
   ```

2. **Concept lookup** — Find known table mappings:
   ```bash
   uv run scripts/cli.py concept lookup <concept>
   ```

3. **Table discovery** — If cache misses, search the codebase (`Grep pattern="<concept>" glob="**/*.sql"`) or query `INFORMATION_SCHEMA`. See [reference/discovery-warehouse.md](reference/discovery-warehouse.md).

4. **Execute query**:
   ```bash
   uv run scripts/cli.py exec "df = run_sql('SELECT ...')"
   uv run scripts/cli.py exec "print(df)"
   ```

5. **Cache learnings** — Always cache before presenting results:
   ```bash
   # Cache concept → table mapping
   uv run scripts/cli.py concept learn <concept> <TABLE> -k <KEY_COL>
   # Cache query strategy (if discovery was needed)
   uv run scripts/cli.py pattern learn <name> -q "question" -s "step" -t "TABLE" -g "gotcha"
   ```

6. **Present findings** to user.

Сообщить о проблеме