setting-up-astro-project — скилл для Claude Code: настройка Astro
Скилл проводит агента через создание проекта Airflow на Astro CLI: структура каталогов, зависимости, подключения и переменные.
npx skills add astronomer/agents --skill setting-up-astro-project -a claude-codeЧто делает setting-up-astro-project
Скилл включается, когда вы просите агента развернуть новый проект Airflow или разобраться в уже существующем. Он знает команду astro dev init и объясняет, что появится после неё: dags/, include/, plugins/, tests/, Dockerfile, packages.txt, requirements.txt и airflow_settings.yaml.
Зависимости добавляются в requirements.txt для Python-пакетов и в packages.txt для системных. Если нужен приватный индекс или свои скрипты, скилл предложит править Dockerfile поверх образа Astro Runtime. После правок агент напомнит про astro dev restart. Подключения, переменные и пулы описываются в airflow_settings.yaml и подхватываются при старте окружения; есть и перенос через astro dev object export с последующим astro dev object import.
Проверить DAG без запуска всего окружения можно командой astro dev parse. Скилл советует не указывать --airflow-version и --runtime-version без явной необходимости: без них astro dev init берёт актуальный Astro Runtime, а версия из памяти модели может оказаться устаревшей. Если вы не на Astro, скилл уводит к Docker Compose quickstart для локальной разработки и Helm-чарту для продакшена.
Какие задачи решает
- развернуть новый проект Airflow через Astro CLI
- добавить Python- и системные зависимости в проект
- описать подключения, переменные и пулы в одном файле
- перенести настройки окружения между машинами
- проверить DAG на ошибки до запуска окружения
Примеры запросов агенту
- создай новый проект Airflow через astro dev init и покажи структуру каталогов
- добавь в requirements.txt провайдер Snowflake и pandas, потом перезапусти окружение
- настрой подключение my_postgres и переменную env в airflow_settings.yaml
Как установить setting-up-astro-project
1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill setting-up-astro-project -a claude-code2Вручную: положить файлы
~/.claude/skills/setting-up-astro-project/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/setting-up-astro-project/
1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill setting-up-astro-project -a codex2Вручную: положить файлы
.agents/skills/setting-up-astro-project/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill setting-up-astro-project -a cursor2Вручную: положить файлы
.cursor/skills/setting-up-astro-project/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install astronomer/agents setting-up-astro-project2Вручную: положить файлы
.github/skills/setting-up-astro-project/SKILL.md1Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill setting-up-astro-project -a gemini-cli2Командой платформы
gemini skills install https://github.com/astronomer/agents --path skills/setting-up-astro-projectВручную: положить файлы
.devin/skills/setting-up-astro-project/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add astronomer/agents --skill setting-up-astro-project -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о setting-up-astro-project
Как установить setting-up-astro-project в Claude?
Выполните npx skills add astronomer/agents --skill setting-up-astro-project -a claude-code. После этого файл скилла появится в ~/.claude/skills/setting-up-astro-project/SKILL.md.
Что делает setting-up-astro-project?
Помогает агенту инициализировать и настроить проект Airflow на Astro: создать структуру, добавить зависимости, описать подключения и переменные, проверить DAG командой astro dev parse.
Нужно ли указывать версию Airflow при создании проекта?
Скилл советует не передавать --airflow-version и --runtime-version, если вы не хотите конкретный пин. Без них astro dev init подставит актуальный Astro Runtime, а нужную версию потом можно посмотреть в сгенерированном Dockerfile.
Исходный текст
SKILL.md · Apache-2.0
---
name: setting-up-astro-project
description: Initialize and configure Astro/Airflow projects. Use when the user wants to create a new project, set up dependencies, configure connections/variables, or understand project structure. For running the local environment, see managing-astro-local-env.
---
# Astro Project Setup
This skill helps you initialize and configure Airflow projects using the Astro CLI.
> **To run the local environment**, see the **managing-astro-local-env** skill.
> **To write DAGs**, see the **authoring-dags** skill.
> **Open-source alternative:** If the user isn't on Astro, guide them to Apache Airflow's Docker Compose quickstart for local dev and the Helm chart for production. For deployment strategies, use the `deploying-airflow` skill.
---
## Initialize a New Project
```bash
astro dev init
```
> **Don't pass `--airflow-version` or `--runtime-version` unless the user explicitly asks for a specific pin.** Plain `astro dev init` resolves to the latest Astro Runtime — that's the right default. Specifying a version risks pinning to a stale value from training data. If the user wants to know what was installed, read the generated `Dockerfile` afterward instead of guessing.
Creates this structure:
```
project/
├── dags/ # DAG files
├── include/ # SQL, configs, supporting files
├── plugins/ # Custom Airflow plugins
├── tests/ # Unit tests
├── Dockerfile # Image customization
├── packages.txt # OS-level packages
├── requirements.txt # Python packages
└── airflow_settings.yaml # Connections, variables, pools
```
---
## Adding Dependencies
### Python Packages (requirements.txt)
```
apache-airflow-providers-snowflake==5.3.0
pandas==2.1.0
requests>=2.28.0
```
### OS Packages (packages.txt)
```
gcc
libpq-dev
```
### Custom Dockerfile
For complex setups (private PyPI, custom scripts):
```dockerfile
FROM quay.io/astronomer/astro-runtime:12.4.0
RUN pip install --extra-index-url https://pypi.example.com/simple my-package
```
**After modifying dependencies:** Run `astro dev restart`
---
## Configuring Connections & Variables
### airflow_settings.yaml
Loaded automatically on environment start:
```yaml
airflow:
connections:
- conn_id: my_postgres
conn_type: postgres
host: host.docker.internal
port: 5432
login: user
password: pass
schema: mydb
variables:
- variable_name: env
variable_value: dev
pools:
- pool_name: limited_pool
pool_slot: 5
```
### Export/Import
```bash
# Export from running environment
astro dev object export --connections --file connections.yaml
# Import to environment
astro dev object import --connections --file connections.yaml
```
---
## Validate Before Running
Parse DAGs to catch errors without starting the full environment:
```bash
astro dev parse
```
---
## Related Skills
- **managing-astro-local-env**: Start, stop, and troubleshoot the local environment
- **authoring-dags**: Write and validate DAGs (uses MCP tools)
- **testing-dags**: Test DAGs (uses MCP tools)
- **deploying-airflow**: Deploy DAGs to production (Astro, Docker Compose, Kubernetes)
© astronomer · Apache-2.0 · astronomer/agents