
Prisma Upgrade V7 Env Variables
- 14 installs
- 8 repo stars
- Updated February 9, 2026
- prisma/cursor-plugin
prisma-upgrade-v7-env-variables loads .env for Prisma v7 CLI commands.
About
The prisma-upgrade-v7-env-variables skill explains v7 no longer auto-loads .env files unlike v6. Add import dotenv/config as first line in prisma.config.ts before defineConfig env DATABASE_URL calls. Bun projects skip extra setup because Bun loads .env automatically. Multiple env files use dotenv-cli in package scripts such as dotenv -e .env.local -- prisma migrate dev or dotenv.config path overrides. Documents testing, production, and monorepo patterns for keeping DATABASE_URL and shadow URLs available to CLI without leaking secrets into generated client code. v7 requires explicit dotenv loading in prisma.config.ts. Bun auto-loads .env without extra imports. dotenv-cli supports per-environment script wrappers. Contrasts v6 automatic versus v7 manual loading. Covers multiple .env file path strategies. prisma.config.ts importing dotenv with working DATABASE_URL. User fixes missing env vars after v7 upgrade. Teams upgrading Prisma CLI to v7 with env-based URLs.
- v7 requires explicit dotenv loading in prisma.config.ts.
- Bun auto-loads .env without extra imports.
- dotenv-cli supports per-environment script wrappers.
- Contrasts v6 automatic versus v7 manual loading.
- Covers multiple .env file path strategies.
Prisma Upgrade V7 Env Variables by the numbers
- 14 all-time installs (skills.sh)
- Ranked #604 of 911 Databases skills by installs in the Skillselion catalog
- Data as of Aug 4, 2026 (Skillselion catalog sync)
prisma-upgrade-v7-env-variables capabilities & compatibility
- Capabilities
- v6 versus v7 behavior comparison · dotenv setup steps · multiple env file patterns
- Use cases
- database · devops
What prisma-upgrade-v7-env-variables says it does
You must manually load environment variables
import 'dotenv/config'
npx skills add https://github.com/prisma/cursor-plugin --skill prisma-upgrade-v7-env-variablesAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 14 |
|---|---|
| repo stars | ★ 8 |
| Last updated | February 9, 2026 |
| Repository | prisma/cursor-plugin ↗ |
Why does Prisma v7 not read my .env file?
Load environment variables explicitly in Prisma v7 via dotenv or Bun automatic .env support.
Who is it for?
Teams upgrading Prisma CLI to v7 with env-based URLs.
Skip if: Skip on Bun where .env loads automatically.
When should I use this skill?
User fixes missing env vars after v7 upgrade.
What you get
prisma.config.ts importing dotenv with working DATABASE_URL.
Files
Environment Variables
Prisma v7 no longer automatically loads environment variables. You must load them explicitly.
The Change
v6 Behavior
Prisma CLI automatically loaded .env files.
v7 Behavior
You must manually load environment variables using dotenv or similar.
Setup
1. Install dotenv
npm install dotenv2. Import in prisma.config.ts
import 'dotenv/config' // Must be first import
import { defineConfig, env } from 'prisma/config'
export default defineConfig({
datasource: {
url: env('DATABASE_URL'),
},
})Bun Users
Bun automatically loads .env files. No additional setup needed:
// prisma.config.ts (Bun)
import { defineConfig, env } from 'prisma/config'
export default defineConfig({
datasource: {
url: env('DATABASE_URL'),
},
})Multiple .env Files
Using dotenv-cli
npm install -D dotenv-cli{
"scripts": {
"db:migrate": "dotenv -e .env.local -- prisma migrate dev",
"db:push": "dotenv -e .env.development -- prisma db push"
}
}Using dotenv with path
// prisma.config.ts
import { config } from 'dotenv'
import path from 'path'
// Load specific .env file
config({ path: path.join(__dirname, '.env.local') })
import { defineConfig, env } from 'prisma/config'
export default defineConfig({
datasource: {
url: env('DATABASE_URL'),
},
})Application Code
For your application, load env vars at startup:
Entry point
// index.ts
import 'dotenv/config'
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 })Or use dotenv explicitly
import { config } from 'dotenv'
config()
// Now process.env.DATABASE_URL is availableRemoved Environment Variables
These Prisma-specific env vars are removed in v7:
| Removed Variable | Alternative |
|---|---|
PRISMA_CLI_QUERY_ENGINE_TYPE | Not needed (no engines) |
PRISMA_CLIENT_ENGINE_TYPE | Not needed (no engines) |
PRISMA_QUERY_ENGINE_BINARY | Not needed |
PRISMA_QUERY_ENGINE_LIBRARY | Not needed |
PRISMA_GENERATE_SKIP_AUTOINSTALL | Not needed |
PRISMA_SKIP_POSTINSTALL_GENERATE | Not needed |
PRISMA_GENERATE_IN_POSTINSTALL | Not needed |
PRISMA_GENERATE_DATAPROXY | Use --no-engine flag |
PRISMA_GENERATE_NO_ENGINE | Use --no-engine flag |
PRISMA_CLIENT_NO_RETRY | Configure on adapter |
PRISMA_MIGRATE_SKIP_GENERATE | Not needed (auto-generate removed) |
PRISMA_MIGRATE_SKIP_SEED | Not needed (auto-seed removed) |
TypeScript env() Helper
The env() function from prisma/config provides type safety:
import { env } from 'prisma/config'
// Type-safe environment variable access
const url = env('DATABASE_URL') // stringNote: This only works within prisma.config.ts, not in your application code.
CI/CD Considerations
Ensure environment variables are set in your CI environment:
# GitHub Actions
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
steps:
- run: npx prisma migrate deployNo need for dotenv in CI if variables are set directly.
{
"name": "prisma-upgrade-v7-env-variables",
"version": "7.0.0",
"author": "prisma",
"license": "MIT"
}Related skills
FAQ
What does prisma-upgrade-v7-env-variables do?
prisma-upgrade-v7-env-variables loads .env for Prisma v7 CLI commands.
When should I use prisma-upgrade-v7-env-variables?
User fixes missing env vars after v7 upgrade.
Is this skill safe to install?
Review the Security Audits panel on this page before installing in production.