database-patterns — скилл для Claude Code: схемы, миграции, Exposed
Задаёт правила проектирования БД: типы колонок, UUID-ключи, мягкое удаление и шаблоны миграций. Пригодится, когда агент создаёт таблицы или пишет репозитории.
npx skills add c0x12c/ai-toolkit --skill database-patterns -a claude-codeЧто делает database-patterns
Скилл подключается к агенту и подсовывает ему свод правил по схемам и миграциям. Жёсткие требования простые: колонки типа TEXT вместо VARCHAR, первичные ключи на UUID вместо SERIAL и BIGINT, мягкое удаление через deleted_at TIMESTAMP вместо DELETE FROM, внешние ключи проверяются на уровне приложения, а не через REFERENCES и ON DELETE CASCADE. Стандартный набор колонок — id, created_at, updated_at, deleted_at.
Внутри лежат шаблоны: SQL-миграция с таблицей, триггером и частичными индексами под мягкое удаление, объект таблицы на Exposed с наследованием от UUIDTable, data-класс сущности с Entity<Instant> и репозиторий по схеме «интерфейс + Default*». Чтение идёт на db.replica, запись на db.primary, а метод convert() переводит ResultRow в сущность. Отдельный чек-лист перечисляет семь шагов создания новой таблицы — от файла миграции до тестов репозитория.
Есть раздел с граблями. Например, .value работает только у id: у остальных колонок row[Table.projectId] уже возвращает UUID, и лишний .value ломает компиляцию. Если сущность наследуется от SoftDeleteTable, поля createdAt, updatedAt и deletedAt объявлять повторно нельзя — получите ошибку о дублирующейся колонке. По Flyway правило жёсткое: не заполнять пропуски в уже развёрнутой последовательности миграций и не переименовывать применённые файлы.
Какие задачи решает
- выбрать тип колонки и ключа по единому правилу
- написать SQL-миграцию с триггером и частичными индексами
- собрать репозиторий с чтением на реплике и записью на праймари
- добавить новую таблицу по чек-листу из семи шагов
- развести мягкое удаление и физический
DELETE
Примеры запросов агенту
- Создай таблицу проектов по правилам database-patterns
- Напиши миграцию для новой таблицы с мягким удалением
- Сделай репозиторий для сущности с чтением на
db.replica
Как установить database-patterns
1Через Skills CLI (Vercel)
npx skills add c0x12c/ai-toolkit --skill database-patterns -a claude-code2Вручную: положить файлы
~/.claude/skills/database-patterns/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/database-patterns/
1Через Skills CLI (Vercel)
npx skills add c0x12c/ai-toolkit --skill database-patterns -a codex2Вручную: положить файлы
.agents/skills/database-patterns/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add c0x12c/ai-toolkit --skill database-patterns -a cursor2Вручную: положить файлы
.cursor/skills/database-patterns/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install c0x12c/ai-toolkit database-patterns2Вручную: положить файлы
.github/skills/database-patterns/SKILL.md1Через Skills CLI (Vercel)
npx skills add c0x12c/ai-toolkit --skill database-patterns -a gemini-cli2Командой платформы
gemini skills install https://github.com/c0x12c/ai-toolkit --path toolkit/skills/database-patternsВручную: положить файлы
.devin/skills/database-patterns/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add c0x12c/ai-toolkit --skill database-patterns -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о database-patterns
Как установить database-patterns в Claude Code?
Выполните npx skills add c0x12c/ai-toolkit --skill database-patterns -a claude-code. Файл скилла окажется по пути ~/.claude/skills/database-patterns/SKILL.md.
Что делает database-patterns?
Даёт агенту набор правил по схемам, миграциям и репозиториям: типы колонок, UUID-ключи, мягкое удаление, шаблоны на Exposed и чек-лист создания таблицы.
Какие инструменты доступны скиллу?
В нём разрешены Read, Write, Edit, Glob и Grep — то есть агент может читать существующие миграции и править файлы репозитория.