# sql-migrations

Готовит скрипты миграций SQL для PostgreSQL, MySQL и SQL Server с откатом и проверками целостности данных. Пригодится, когда менять схему на живой базе.

- команда · `type=command` · Claude Code, Codex, Cursor · ★ 41729
- Автор: Seth Hobson
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/wshobson/agents/tree/HEAD/plugins/database-migrations/commands/sql-migrations.md
- Обновлён: 2026-10-24
- HTML: https://affpapa.org/nevibecode/commands/sql-migrations

## Что делает

Команда превращает описание задачи в набор шагов миграции: расширение схемы, перенос данных пачками, затем удаление старого. Для PostgreSQL показан приём с `CREATE INDEX CONCURRENTLY` и добавлением `NOT NULL` через `NOT VALID` с последующей проверкой ограничения. Есть вариант blue-green: новая таблица, триггер на двойную запись, догон истории.

Скрипты даются под конкретные инструменты — Flyway, Alembic для Python. Внутри также блок проверок перед миграцией: поиск NULL в обязательных колонках и дублей по ключу. То есть на выходе не один `ALTER TABLE`, а последовательность с валидацией и процедурой отката.

Команда работает с доступом к `Read`, `Write`, `Edit`, `Bash`, `Grep`, `Glob`, поэтому может и читать вашу схему, и запускать запросы. Осторожно с этим: `Bash` в руках агента означает, что команды уходят в вашу базу, и на проде это повод сначала прогнать всё на копии. Аргумент передаётся через `$ARGUMENTS` — опишите таблицу, движок и что именно меняете.

## Требования
- Работает с: PostgreSQL

## Установка

### Claude Code (родная платформа)

1. **Через маркетплейс плагинов**
В чате агента (не в терминале):
```text
/plugin marketplace add wshobson/agents
```
В чате агента (не в терминале):
```text
/plugin install database-migrations@claude-code-workflows
```

2. **Вручную: положить файлы**
- Файл: `.claude/commands/sql-migrations.md` — Вызов — /sql-migrations. Для всех проектов — ~/.claude/commands/

### Codex

**Вручную: положить файлы**
- Файл: `~/.codex/prompts/sql-migrations.md` — Вызов — /prompts:sql-migrations. В Codex этот формат помечен устаревшим, замена — скиллы

### GitHub Copilot

**Вручную: положить файлы**
- Файл: `.github/prompts/sql-migrations.prompt.md`

### Gemini CLI

**Вручную: положить файлы**
- Файл: `.gemini/commands/sql-migrations.toml` — Gemini хранит команды в TOML: текст запроса — в поле prompt

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/wshobson/agents/tree/HEAD/plugins/database-migrations/commands/sql-migrations.md

## Когда брать
- добавить колонку в большую таблицу без блокировки записи
- перенести данные пачками, не роняя базу
- написать откат для миграции заранее
- проверить NULL и дубли перед изменением схемы
- перевести ручной ALTER TABLE в скрипт Flyway или Alembic

## Примеры запросов агенту
- Добавь в users колонку email_verified, миграция для PostgreSQL без простоя, с откатом
- Сделай blue-green переход таблицы orders на новую схему с двойной записью
- Оформи миграцию user_preferences как Alembic-ревизию с проверкой дублей

## Похожие
- [313-frameworks-spring-db-migrations-flyway](https://affpapa.org/nevibecode/skills/313-frameworks-spring-db-migrations-flyway.md) — скилл · 352 установки
- [413-frameworks-quarkus-db-migrations-flyway](https://affpapa.org/nevibecode/skills/413-frameworks-quarkus-db-migrations-flyway.md) — скилл · 313 установок
- [sql-optimization](https://affpapa.org/nevibecode/skills/sql-optimization.md) — скилл · 15701 установка
- [sql-code-review](https://affpapa.org/nevibecode/skills/sql-code-review.md) — скилл · 14060 установок
- [sql-pro](https://affpapa.org/nevibecode/skills/httpsgithubcomjeffallan-sql-pro.md) — скилл · 6400 установок
- [sql-queries](https://affpapa.org/nevibecode/skills/phuryn-sql-queries.md) — скилл · 2800 установок

Из того же набора: [wshobson/agents](https://affpapa.org/nevibecode/by/wshobson/agents.md) — 342 карточки

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
