# django-safe-migration

Скилл помогает писать и проверять миграции Django для PostgreSQL с учётом блокировок и выкладки без остановки приложения. Пригодится перед изменением схемы или релизом.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 776 установок · ★ 162
- Автор: vintasoftware
- Лицензия: не указана · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/vintasoftware/django-ai-plugins/tree/HEAD/skills/django-safe-migration/SKILL.md
- Обновлён: 2026-07-23
- HTML: https://affpapa.org/nevibecode/skills/django-safe-migration

## Что делает

Скилл разбирает миграции Django для PostgreSQL и помогает переписать рискованные операции. При проверке он предлагает получить SQL, который сгенерировал Django, и оценить его для rolling deploy. Это важно: опасная блокировка может задержать запросы к таблице и создать очередь ожидания.

Среди описанных приёмов — создание индекса через `AddIndexConcurrently`, добавление внешнего ключа с последующей проверкой через `NOT VALID` и `VALIDATE CONSTRAINT`, а также разделение изменений состояния и базы данных. Для операций с блокировкой `ACCESS EXCLUSIVE` инструкция требует задавать `lock_timeout`. Значение зависит от конфигурации проекта, поэтому скилл просит свериться с его инструкциями; для `db_default` имеет значение версия Django.

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

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add vintasoftware/django-ai-plugins --skill django-safe-migration -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/django-safe-migration/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/django-safe-migration/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add vintasoftware/django-ai-plugins --skill django-safe-migration -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/django-safe-migration/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add vintasoftware/django-ai-plugins --skill django-safe-migration -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/django-safe-migration/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install vintasoftware/django-ai-plugins django-safe-migration
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/django-safe-migration/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add vintasoftware/django-ai-plugins --skill django-safe-migration -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/vintasoftware/django-ai-plugins --path skills/django-safe-migration
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/django-safe-migration/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add vintasoftware/django-ai-plugins --skill django-safe-migration -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/vintasoftware/django-ai-plugins/tree/HEAD/skills/django-safe-migration/SKILL.md

## Когда брать
- проверить миграцию перед rolling deploy
- переписать изменение схемы с учётом блокировок
- добавить внешний ключ с отложенной проверкой
- разобраться, какой SQL выполнит Django

## Примеры запросов агенту
- Проверь эту миграцию Django для PostgreSQL перед rolling deploy.
- Перепиши добавление внешнего ключа так, чтобы сначала создать его без проверки старых строк.
- Покажи SQL для этой миграции и оцени риск блокировки таблицы.

## Похожие
- [mcp-builder](https://affpapa.org/nevibecode/skills/mcp-builder.md) — скилл · 130949 установок
- [claude-api](https://affpapa.org/nevibecode/skills/claude-api.md) — скилл · 74198 установок
- [lark-im](https://affpapa.org/nevibecode/skills/lark-im.md) — скилл · 472900 установок
- [lark-event](https://affpapa.org/nevibecode/skills/lark-event.md) — скилл · 466800 установок
- [caveman-discover](https://affpapa.org/nevibecode/skills/caveman-discover.md) — скилл · 104400 установок
- [migration](https://affpapa.org/nevibecode/skills/migration.md) — скилл · 103900 установок

Из того же набора: [vintasoftware/django-ai-plugins](https://affpapa.org/nevibecode/by/vintasoftware/django-ai-plugins.md) — 4 карточки

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