.claude/skills/prisma-upgrade-v7/SKILL.md
Complete migration guide from Prisma ORM v6 to v7 covering all breaking changes. Use when upgrading Prisma versions, encountering v7 errors, or migrating existing projects. Triggers on "upgrade to prisma 7", "prisma 7 migration", "prisma-client-js to prisma-client", "driver adapter required".
npx skillsauth add devkit-stack/Claude prisma-upgrade-v7Install this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Complete guide for migrating from Prisma ORM v6 to v7. This upgrade introduces significant breaking changes including ESM-only support, required driver adapters, and a new configuration system.
Reference this skill when:
prisma-client-js to prisma-clientprisma.config.ts# Update packages
npm install @prisma/client@7
npm install -D prisma@7
# Install driver adapter (PostgreSQL example)
npm install @prisma/adapter-pg
# Install dotenv for env loading
npm install dotenv
# Regenerate client
npx prisma generate
| Change | v6 | v7 |
|--------|----|----|
| Module format | CommonJS | ESM only |
| Generator provider | prisma-client-js | prisma-client |
| Output path | Auto (node_modules) | Required explicit |
| Driver adapters | Optional | Required |
| Config file | .env + schema | prisma.config.ts |
| Env loading | Automatic | Manual (dotenv) |
| Middleware | $use() | Client Extensions |
| Metrics | Preview feature | Removed |
Detailed migration guides for each breaking change:
rules/esm-support.md - ESM module configuration
rules/schema-changes.md - Generator and schema updates
rules/driver-adapters.md - Required driver adapter setup
rules/prisma-config.md - New configuration file
rules/env-variables.md - Environment variable loading
rules/client-imports.md - Updated import paths
rules/removed-features.md - Middleware, metrics, CLI flags
rules/accelerate-users.md - Special handling for Accelerate
rules/ssl-certificates.md - SSL validation changes
{
"type": "module"
}
{
"compilerOptions": {
"module": "ESNext",
"moduleResolution": "bundler",
"target": "ES2023",
"strict": true,
"esModuleInterop": true
}
}
// Before (v6)
generator client {
provider = "prisma-client-js"
}
// After (v7)
generator client {
provider = "prisma-client"
output = "../generated"
}
import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'
export default defineConfig({
schema: 'prisma/schema.prisma',
migrations: {
path: 'prisma/migrations',
},
datasource: {
url: env('DATABASE_URL'),
},
})
# PostgreSQL
npm install @prisma/adapter-pg
# MySQL
npm install @prisma/adapter-mariadb mariadb
# SQLite
npm install @prisma/adapter-better-sqlite3
# Prisma Postgres
npm install @prisma/adapter-ppg @prisma/ppg
# Neon
npm install @prisma/adapter-neon
// Before (v6)
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()
// After (v7)
import { PrismaClient } from '../generated/client'
import { PrismaPg } from '@prisma/adapter-pg'
const adapter = new PrismaPg({
connectionString: process.env.DATABASE_URL
})
const prisma = new PrismaClient({ adapter })
npx prisma generate
npx prisma migrate dev # if needed
output path in generator block matches import pathprisma generate ran successfullyssl: { rejectUnauthorized: false } to adapter configdevelopment
Use when sending transactional emails (welcome messages, order confirmations, password resets, receipts), notifications, or bulk emails via Resend API.
development
Use when receiving emails with Resend - setting up inbound domains, processing email.received webhooks, retrieving email content/attachments, or forwarding received emails.
development
Use when setting up an email inbox for an AI agent (Moltbot, Clawdbot, or similar) - configuring inbound email, webhooks, tunneling for local development, and implementing security measures to prevent prompt injection attacks.
testing
Use when working with Resend email platform - routes to specific sub-skills for sending, receiving, audiences, or broadcasts.