plugins/aai-stack-prisma/skills/prisma-migrations/SKILL.md
February 1, 2026
Select agents to install to:
npx add-skill https://github.com/the-answerai/alphaagent-team/blob/main/plugins/aai-stack-prisma/skills/prisma-migrations/SKILL.md -a claude-code --skill prisma-migrationsInstallation paths:
.claude/skills/prisma-migrations/# Prisma Migrations Skill
Patterns for managing database migrations with Prisma.
## Migration Workflow
### Development Flow
```bash
# Create and apply migration
npx prisma migrate dev --name add_user_role
# Create migration without applying (for review)
npx prisma migrate dev --create-only --name add_phone
# Apply pending migrations
npx prisma migrate dev
# Reset database (drops and recreates)
npx prisma migrate reset
```
### Production Flow
```bash
# Apply migrations in production
npx prisma migrate deploy
# Check migration status
npx prisma migrate status
# Resolve migration issues
npx prisma migrate resolve --applied "migration_name"
npx prisma migrate resolve --rolled-back "migration_name"
```
## Schema Changes
### Adding Fields
```prisma
// Before
model User {
id String @id @default(uuid())
email String @unique
}
// After - add optional field
model User {
id String @id @default(uuid())
email String @unique
phone String? // Nullable, no migration issue
}
// After - add required field with default
model User {
id String @id @default(uuid())
email String @unique
status String @default("active") // Has default
}
```
### Renaming Fields
```prisma
// Step 1: Add new field
model User {
id String @id @default(uuid())
name String // Old field
fullName String? // New field (nullable initially)
}
// Step 2: Run data migration (in code or SQL)
// UPDATE users SET full_name = name;
// Step 3: Make new field required, drop old
model User {
id String @id @default(uuid())
fullName String // Now required
}
```
### Changing Field Types
```prisma
// Be careful - may lose data!
// Before
model Product {
price Int // Cents
}
// After
model Product {
price Decimal @db.Decimal(10, 2) // Dollars
}
// Better: Add migration script to convert
// migration.sql will need manual editing
```
### Adding Relations
```prisma
// Step 1: Add optional relation
model Post {
id String @id @default(