Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

prisma-cli — Claude Code skill: what it does, how to install

Prisma ORM 7 CLI reference for AI agents. Guides client generation, schema migrations, and local database workflows while preventing accidental data loss.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add prisma/skills --skill prisma-cli -a claude-code
Open on GitHub

What prisma-cli does

This skill provides precise guidance for Prisma ORM 7 workflows, covering prisma init, client generation, database inspection, and prisma dev. It keeps the stable prisma command separate from the Platform @prisma/cli package. When running on Bun, it enforces the --bun flag so execution stays inside the Bun runtime instead of falling back to Node.js.

Configuration relies on prisma.config.ts with explicit dotenv loading. Destructive commands such as migrate reset or db push --force-reset require explicit approval. The agent must record the user confirmation into PRISMA_USER_CONSENT_FOR_DANGEROUS_AI_ACTION, and the built-in Prisma MCP server deliberately omits the reset tool. Applying this skill to Prisma 8 projects breaks workflows because its commands are locked strictly to Prisma ORM 7.

What it helps with

  • Initialize a Prisma 7 project using prisma.config.ts
  • Apply development and production schema migrations safely
  • Run local Prisma Postgres instances with prisma dev
  • Block destructive database resets until explicit confirmation is given

Example prompts for the agent

  • Create a new migration named add_users_table and apply it
  • Start a local prisma dev database in detached mode
  • Set up prisma.config.ts for PostgreSQL with dotenv

How to install prisma-cli

1Skills CLI (Vercel)

npx skills add prisma/skills --skill prisma-cli -a claude-code

2Manually: put the files in place

~/.claude/skills/prisma-cli/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/prisma-cli/

From the same set5

The whole set →

Similar

cqrs-implementation Seth Hobson This skill guides you through separating command and query handling and using distinct write and read models. Use it when implementing CQRS or an event-sourced system. Claude Code CX Codex Cursor 11,000installs paypal-integration Seth Hobson This skill covers PayPal checkout, subscriptions, refunds, and payment notifications. Use it when adding PayPal payments or recurring billing to an application. Claude Code CX Codex Cursor 10,900installs hybrid-search-implementation Seth Hobson This skill combines vector and keyword search into one retrieval flow. Use it for RAG systems and search engines when one method misses important matches. Claude Code CX Codex Cursor 10,800installs event-store-design Seth Hobson This skill guides event store design for event-sourced systems and helps compare storage technologies. Use it when building event persistence infrastructure or choosing a store. Claude Code CX Codex Cursor 10,800installs distributed-tracing Seth Hobson This skill sets up distributed tracing with Jaeger and Tempo. Use it to inspect request paths and find latency or failure points across microservices. Claude Code CX Codex Cursor 10,700installs mcp-builder official anthropics This skill walks through building an MCP server in TypeScript or Python, from reading the protocol spec to writing tests and evaluation questions. Claude Code Claude.ai 130,949installs google-agents-cli-adk-code official Google A reference skill for building ADK agents with tools, callbacks, state, and workflows. Use it when an agent project needs concrete API patterns or code examples. Claude Code CX Codex Cursor +1 511,400installs lark-im larksuite This skill lets an agent work with Lark IM messages, chats, files, and interactive cards. Use it when coding tasks need access to team conversations. Claude Code CX Codex Cursor +1 472,300installs

Questions about prisma-cli

How do I install prisma-cli in Claude Code?

Run npx skills add prisma/skills --skill prisma-cli -a claude-code in your terminal.

What does prisma-cli do?

It supplies CLI reference rules for Prisma ORM 7, handling schema migrations, client generation, and local database instances.

How does it handle destructive database operations?

The agent halts before executing commands like migrate reset and requires explicit user consent via PRISMA_USER_CONSENT_FOR_DANGEROUS_AI_ACTION.

Source text

SKILL.md · MIT
---
name: prisma-cli
description: Prisma ORM 7 CLI reference for existing Prisma 7 applications or explicitly selected Prisma 7 workflows. Covers prisma init, generate, migrate, db, dev, studio, and mcp. For setup, connection repair, or Prisma 8, use prisma-orm-setup; not the Prisma Platform CLI.
license: MIT
metadata:
  author: prisma
  version: "7.9.1"
---

# Prisma ORM 7 CLI reference

These commands and examples apply to **Prisma ORM 7** only. For setup, connection repair, or a Prisma 8 application, load [prisma-orm-setup](../prisma-orm-setup/SKILL.md).

Use the project's version-matched CLI. Do not install a floating `prisma@latest` to run these commands.

## Boundary: Platform and Compute

Do not confuse the stable ORM command (`prisma`) with the public-beta Platform package (`@prisma/cli`, binary `prisma-cli`). Use `prisma-compute` for Compute apps and workspace auth, and `prisma-postgres-setup` for Platform projects and databases.

## When to Apply

Reference this skill when:
- Setting up an explicitly selected Prisma 7 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`)
- Generating shell completions (`prisma complete`)

## 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 | `complete`, `studio`, `validate`, `format`, `debug`, `mcp` |

## Command Categories

| Category | Commands | Purpose |
|----------|----------|---------|
| Setup | `init` | Initialize a 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 | `complete`, `studio`, `mcp`, `version`, `debug` | Shell, development, and AI tooling |

## Quick Reference

### Project Setup

```bash
# 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

```bash
# 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):

```bash
bunx --bun prisma init
bunx --bun prisma generate
```

### Local Development Database

```bash
# 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

```bash
# 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)

```bash
# 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)

```bash
# 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

```bash
# 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

# Generate shell completion code
prisma complete zsh
```

## AI Safety Checkpoint

Prisma blocks destructive commands when it detects an AI agent until the agent has obtained explicit user consent. This covers `migrate reset`, `db push --force-reset`, and `db push --accept-data-loss`.

- Explain the exact data-loss impact and ask for consent immediately before running the command.
- Do not infer consent from earlier or unrelated messages.
- If automation needs the consent variable, set `PRISMA_USER_CONSENT_FOR_DANGEROUS_AI_ACTION` to the user's exact consent message. Do not invent the text.
- The Prisma MCP server deliberately has no `migrate-reset` tool.

Read `references/agent-safety.md` before any destructive Prisma command.

## Current Prisma CLI Setup

### New Configuration File

Use `prisma.config.ts` for CLI configuration:

```typescript
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 generate` explicitly after `migrate dev`, `db push`, or other schema syncs when you need fresh client output
- Run `prisma db seed` explicitly after `migrate dev` or `migrate reset` when 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`:

```typescript
// 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/complete.md       - Shell completion generation
references/agent-safety.md   - AI consent checkpoint for destructive commands
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.

© prisma · MIT · prisma/skills

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor