init
Prepare a repository for Prisma development.
init prepares the current directory for Prisma development. It runs locally and calls no platform API. It does not scaffold the ORM: use orm init to add the Prisma 8 config, contract, and runtime files to a project.
init does three things:
- Adds a
postinstallscript topackage.json(prisma skills sync || exit 0), so the Prisma agent skills resync on every install and upgrade. - Scaffolds a
prisma.config.tsrecording which agents to install skills for, in theskillsconfig section. - Runs
skills synconce.
It never prompts, always exits 0, and is safe to rerun: each step reports what is already done. A prisma.config.ts or postinstall script that already exists is never edited. If package.json already has a different postinstall script, init reports it and tells you what to append instead of chaining or replacing it.
Usage
bunx --bun prisma@latest initOptions
| Option | What it does |
|---|---|
--skills <agents> | Agents to install skills for, comma-separated: claude, cursor, agents, devin. Pass none to record that no agent skills are wanted. Default: all of them. |
--postinstall/--no-postinstall | Add the skills-sync postinstall hook. --no-postinstall skips that step. |
Examples
bunx --bun prisma@latest init
bunx --bun prisma@latest init --skills=claude,cursor
bunx --bun prisma@latest init --skills=none
bunx --bun prisma@latest init --no-postinstallThe scaffolded config
init writes a minimal prisma.config.ts when none exists:
import { definePrismaConfig } from "prisma/config";
export default definePrismaConfig({
skills: {
agents: ["claude", "cursor", "agents", "devin"],
},
});The prisma/config import resolves from your project's node_modules, so add prisma as a dev dependency before running other commands against this file. See Configuration.
Only init writes the postinstall hook. No other command edits package.json; skills sync itself never touches it.
