prisma-cli
prisma/skills
Prisma ORM CLI commands reference for init, generate, migrate, db, dev, studio, and more.
What is prisma-cli?
Reference for Prisma ORM CLI commands covering project setup, client generation, migrations, database operations, and development workflows. Use this for ORM and database CLI tasks, not Prisma Compute app deployment.
- Initialize new Prisma projects with configurable database providers
- Generate and regenerate Prisma Client with watch mode support
- Manage database migrations in development and production environments
- Perform direct database operations: pull schema, push schema, seed, execute SQL
- Run local Prisma Postgres development database instances
- Validate and format Prisma schema files
How to install prisma-cli
npx skills add https://github.com/prisma/skills --skill prisma-cli- Prisma installed in your project
- prisma.config.ts configuration file (recommended)
- DATABASE_URL environment variable for database connection
- For Bun runtime: use `bunx --bun` prefix for CLI commands
How to use prisma-cli
- 1.Run `prisma init` to bootstrap a new project and select your database provider
- 2.Configure DATABASE_URL in .env and set up prisma.config.ts
- 3.Run `prisma generate` to create Prisma Client after schema changes
- 4.Use `prisma migrate dev --name <name>` to create and apply migrations during development
- 5.Run `prisma db push` to sync schema without creating migration files
- 6.Use `prisma studio` to visually inspect and manage database data
- 7.Run `prisma migrate deploy` in production to apply pending migrations
Use cases
- Setting up a new Prisma project with `prisma init` and choosing database provider
- Creating and applying migrations during development with `prisma migrate dev`
- Pulling existing database schema into Prisma with `prisma db pull`
- Running local development database with `prisma dev` for isolated testing
- Deploying migrations to production with `prisma migrate deploy`
- Backend developers using Prisma ORM
- Database administrators managing schema migrations
- Full-stack developers setting up new projects
- Teams using CI/CD pipelines for database deployments
- Developers needing local development databases
prisma-cli FAQ
`prisma db push` syncs your schema directly without creating migration files—use for prototyping. `prisma migrate dev` creates explicit migration files—use for production workflows where you need migration history and control.
Yes, run `prisma generate` explicitly after `migrate dev`, `db push`, or other schema syncs when you need fresh Prisma Client output.
Always add the `--bun` flag: `bunx --bun prisma init`, `bunx --bun prisma generate`, etc. This ensures Prisma runs with the Bun runtime instead of falling back to Node.js.
This skill covers Prisma ORM CLI commands (init, generate, migrate, db, dev, studio). Use `prisma-compute` skill for Prisma Compute app deployment, `@prisma/cli app deploy`, and Compute-specific commands.
Run `prisma db seed` explicitly after `migrate dev` or `migrate reset`. Configure your seed script in prisma.config.ts under `migrations.seed`.
Full instructions (SKILL.md)
Source of truth, from prisma/skills.
name: prisma-cli
description: Prisma ORM CLI commands reference covering init, generate, migrate, db, dev, studio, validate, format, debug, and mcp. Use for ORM/database CLI workflows, not Prisma Compute app deployment. For Prisma Compute, @prisma/cli app deploy, compute:deploy, create-prisma --deploy, apps, deployments, logs, or domains, use the prisma-compute skill instead. Triggers on "prisma init", "prisma generate", "prisma migrate", "prisma db", "prisma studio", "prisma mcp".
license: MIT
metadata:
author: prisma
version: "7.6.0"
Prisma CLI Reference
Reference for Prisma ORM CLI commands. This skill provides guidance on command usage, options, and best practices for current Prisma ORM releases.
Boundary: Compute
Do not use this skill for Prisma Compute app deployment. Use prisma-compute for @prisma/cli app deploy, compute:deploy, create-prisma --deploy, Compute apps, deployments, logs, domains, and framework deploy readiness.
When to Apply
Reference this skill when:
- Setting up a new Prisma project (
prisma init) - Generating Prisma Client (
prisma generate) - Running database migrations (
prisma migrate) - Managing database state (
prisma db push/pull) - Using local development database (
prisma dev) - Debugging Prisma issues (
prisma debug)
Rule Categories by Priority
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Setup | HIGH | init |
| 2 | Generation | HIGH | generate |
| 3 | Development | HIGH | dev |
| 4 | Database | HIGH | db- |
| 5 | Migrations | CRITICAL | migrate- |
| 6 | Utility | MEDIUM | studio, validate, format, debug, mcp |
Command Categories
| Category | Commands | Purpose |
|---|---|---|
| Setup | init | Bootstrap new Prisma project |
| Generation | generate | Generate Prisma Client |
| Validation | validate, format | Schema validation and formatting |
| Development | dev | Local Prisma Postgres for development |
| Database | db pull, db push, db seed, db execute | Direct database operations |
| Migrations | migrate dev, migrate deploy, migrate reset, migrate status, migrate diff, migrate resolve | Schema migrations |
| Utility | studio, mcp, version, debug | Development and AI tooling |
Quick Reference
Project Setup
# Initialize new project (creates prisma/ folder and prisma.config.ts)
prisma init
# Initialize with specific database
prisma init --datasource-provider postgresql
prisma init --datasource-provider mysql
prisma init --datasource-provider sqlite
# Initialize with Prisma Postgres (cloud)
prisma init --db
# Initialize with an example model
prisma init --with-model
Client Generation
# Generate Prisma Client
prisma generate
# Watch mode for development
prisma generate --watch
# Generate specific generator only
prisma generate --generator client
Bun Runtime
When using Bun, always add the --bun flag so Prisma runs with the Bun runtime (otherwise it falls back to Node.js because of the CLI shebang):
bunx --bun prisma init
bunx --bun prisma generate
Local Development Database
# Start local Prisma Postgres
prisma dev
# Start with specific name
prisma dev --name myproject
# Start in background (detached)
prisma dev --detach
# List all local instances
prisma dev ls
# Stop instance
prisma dev stop myproject
# Remove instance data
prisma dev rm myproject
Database Operations
# Pull schema from existing database
prisma db pull
# Push schema to database (no migrations)
prisma db push
# Seed database
prisma db seed
# Execute raw SQL
prisma db execute --file ./script.sql
Migrations (Development)
# Create and apply migration
prisma migrate dev
# Create migration with name
prisma migrate dev --name add_users_table
# Create migration without applying
prisma migrate dev --create-only
# Reset database and apply all migrations
prisma migrate reset
Migrations (Production)
# Apply pending migrations (CI/CD)
prisma migrate deploy
# Check migration status
prisma migrate status
# Compare schemas and generate diff
prisma migrate diff --from-config-datasource --to-schema schema.prisma --script
Utility Commands
# Open Prisma Studio (database GUI)
prisma studio
# Start Prisma's MCP server for AI tools
prisma mcp
# Show version info
prisma version
prisma -v
# Debug information
prisma debug
# Validate schema
prisma validate
# Format schema
prisma format
Current Prisma CLI Setup
New Configuration File
Use prisma.config.ts for CLI configuration:
import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'
export default defineConfig({
schema: 'prisma/schema.prisma',
migrations: {
path: 'prisma/migrations',
seed: 'tsx prisma/seed.ts',
},
datasource: {
url: env('DATABASE_URL'),
},
})
Current Command Behavior
- Run
prisma generateexplicitly aftermigrate dev,db push, or other schema syncs when you need fresh client output - Run
prisma db seedexplicitly aftermigrate devormigrate resetwhen you need seed data - Use
prisma db execute --file ...for raw SQL scripts
Environment Variables
Load environment variables explicitly in prisma.config.ts, commonly with dotenv:
// prisma.config.ts
import 'dotenv/config'
Rule Files
See individual rule files for detailed command documentation:
references/init.md - Project initialization
references/generate.md - Client generation
references/dev.md - Local development database
references/db-pull.md - Database introspection
references/db-push.md - Schema push
references/db-seed.md - Database seeding
references/db-execute.md - Raw SQL execution
references/migrate-dev.md - Development migrations
references/migrate-deploy.md - Production migrations
references/migrate-reset.md - Database reset
references/migrate-status.md - Migration status
references/migrate-resolve.md - Migration resolution
references/migrate-diff.md - Schema diffing
references/studio.md - Database GUI
references/mcp.md - Prisma MCP server
references/validate.md - Schema validation
references/format.md - Schema formatting
references/debug.md - Debug info
How to Use
Use the command categories above for navigation, then open the specific command reference file you need.
Related skills
More from prisma/skills and the wider catalog.
prisma-database-setup
Configure Prisma ORM with PostgreSQL, MySQL, SQLite, MongoDB, SQL Server, and other database providers.
prisma-client-api
Prisma Client API reference for database queries, CRUD operations, filtering, and transactions.
prisma-postgres
Prisma Postgres setup and operations guidance across Console, create-db CLI, Management API, and Management API SDK. Use when creating Prisma Postgres databases, working in Prisma Console, provisioning with create-db/create-pg/create-postgres, or integrating programmatic provisioning with service tokens or OAuth.
prisma-driver-adapter-implementation
Required reference for Prisma v7 driver adapter work. Use when implementing or modifying adapters, adding database drivers, or touching SqlDriverAdapter/Transaction interfaces. Contains critical contract details not inferable from code examples — including the transaction lifecycle protocol, error mapping requirements, and verification checklist. Existing implementations do not replace this skill.
prisma-upgrade-v7
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 generator", "driver adapter required".
prisma-postgres-setup
Set up a new Prisma Postgres database and connect it to a local project using the Management API. Use when asked to "set up a database", "create a Prisma Postgres project", "get a connection string", "connect my app to Prisma Postgres", or "provision a database".