
prisma-cli-db-pull
✓ Official★ 8by prisma · part of prisma/cursor-plugin
prisma-cli-db-pull — an installable skill for AI agents, published by prisma/cursor-plugin.
prisma-cli-db-pull — an installable skill for AI agents, published by prisma/cursor-plugin.
Inspect the full instructions your agent will receiveExpandCollapse
This is the exact playbook injected into your agent when the skill activates — shown here so you can audit it before installing. You don't need to read it to use the skill.
by prisma
prisma-cli-db-pull — an installable skill for AI agents, published by prisma/cursor-plugin.
npx skills add https://github.com/prisma/cursor-plugin --skill prisma-cli-db-pull
Download ZIPGitHub8
prisma db pull
Introspects an existing database and updates your Prisma schema to reflect its structure.
Command
prisma db pull [options]
What It Does
-
Connects to your database
-
Reads the database schema (tables, columns, relations, indexes)
-
Updates
schema.prismawith corresponding Prisma models -
For MongoDB, samples data to infer schema
Options
Option Description
--force Ignore current Prisma schema file
--print Print the introspected Prisma schema to stdout
--schema Custom path to your Prisma schema
--config Custom path to your Prisma config file
--url Override the datasource URL from the Prisma config file
--composite-type-depth Specify the depth for introspecting composite types (default: -1 for infinite, 0 = off)
--schemas Specify the database schemas to introspect
--local-d1 Generate a Prisma schema from a local Cloudflare D1 database
Examples
Basic introspection
prisma db pull
Preview without writing
prisma db pull --print
Outputs schema to terminal for review.
Force overwrite
prisma db pull --force
Replaces schema file, losing any manual customizations.
Workflow
Starting from existing database
Initialize Prisma:
prisma init
Configure database URL
Pull schema:
prisma db pull
Review and customize generated schema
Generate client:
prisma generate
Syncing changes from database
When database changes are made outside Prisma:
prisma db pull
prisma generate
Generated Schema Example
Database tables become Prisma models:
-- Database tables
CREATE TABLE users (
id SERIAL PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
name VARCHAR(100)
);
CREATE TABLE posts (
id SERIAL PRIMARY KEY,
title VARCHAR(255) NOT NULL,
author_id INTEGER REFERENCES users(id)
);
Becomes:
model users {
id Int @id @default(autoincrement())
email String @unique @db.VarChar(255)
name String? @db.VarChar(100)
posts posts[]
}
model posts {
id Int @id @default(autoincrement())
title String @db.VarChar(255)
author_id Int?
users users? @relation(fields: [author_id], references: [id])
}
Post-Introspection Cleanup
After db pull, consider:
Rename models to PascalCase:
model User { // Was: users
@@map("users")
}
Rename fields to camelCase:
authorId Int? @map("author_id")
Add relation names for clarity:
author User? @relation("PostAuthor", fields: [authorId], references: [id])
Add documentation:
/// User account information
model User {
/// Primary email for authentication
email String @unique
}
MongoDB Introspection
For MongoDB, db pull samples documents to infer schema:
prisma db pull
May require manual refinement since MongoDB is schemaless.
Warning
db pull overwrites your schema file. Always:
-
Commit current schema before pulling
-
Use
--printto preview first -
Backup customizations you want to keep
npx skills add https://github.com/prisma/cursor-plugin --skill prisma-cli-db-pullRun this in your project — your agent picks the skill up automatically.
Prerequisites
Configure database connection in prisma.config.ts:
import 'dotenv/config'
import { defineConfig, env } from 'prisma/config'
export default defineConfig({
schema: 'prisma/schema.prisma',
datasource: {
url: env('DATABASE_URL'),
},
})
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.