# init (/docs/cli/init) > For the complete Prisma documentation index, see [llms.txt](https://www.prisma.io/docs/llms.txt). A markdown version of any docs page is available by appending `.md` to its URL. Prepare a repository for Prisma development. Location: CLI > init `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`](https://www.prisma.io/docs/cli/orm-init) to add the Prisma ORM config, contract, and runtime files to a project. `init` does four things: 1. Adds a `postinstall` script to `package.json` (`prisma skills sync || exit 0`), so the [Prisma agent skills](https://www.prisma.io/docs/cli/skills) resync on every install and upgrade. 2. Adds `prisma` to `devDependencies` in `package.json`, pinned to the CLI's version, unless it is already listed. It does not install it. 3. Scaffolds a `prisma.config.ts` recording which agents to install skills for, in the [`skills` config section](https://www.prisma.io/docs/cli/configuration#agent-skills). 4. Runs [`skills sync`](https://www.prisma.io/docs/cli/skills) once. It never prompts, always exits 0, and is safe to rerun: each step reports what is already done. A `prisma.config.ts`, `postinstall` script, or `prisma` entry 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 [#usage] #### bun ```bash bunx --bun prisma@latest init bun install ``` #### pnpm ```bash pnpm dlx prisma@latest init pnpm install ``` #### yarn ```bash yarn dlx prisma@latest init yarn install ``` #### npm ```bash npx prisma@latest init npm install ``` If `init` added `prisma`, run the install straight after, so the package is in `node_modules`. ## Options [#options] | Option | What it does | | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `--skills ` | 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 [#examples] #### bun ```bash 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-postinstall ``` #### pnpm ```bash pnpm dlx prisma@latest init pnpm dlx prisma@latest init --skills=claude,cursor pnpm dlx prisma@latest init --skills=none pnpm dlx prisma@latest init --no-postinstall ``` #### yarn ```bash yarn dlx prisma@latest init yarn dlx prisma@latest init --skills=claude,cursor yarn dlx prisma@latest init --skills=none yarn dlx prisma@latest init --no-postinstall ``` #### npm ```bash npx prisma@latest init npx prisma@latest init --skills=claude,cursor npx prisma@latest init --skills=none npx prisma@latest init --no-postinstall ``` ## The scaffolded config [#the-scaffolded-config] `init` writes a minimal `prisma.config.ts` when none exists: ```typescript title="prisma.config.ts" 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`. Until `prisma` is installed, commands that read this file stop at `CLI.CONFIG_UNREADABLE`. See [Configuration](https://www.prisma.io/docs/cli/configuration). Only `init` writes the `postinstall` hook. [`orm init`](https://www.prisma.io/docs/cli/orm-init) also adds `prisma` to `devDependencies`. [`skills sync`](https://www.prisma.io/docs/cli/skills) never touches `package.json`. ## Related pages - [`auth`](https://www.prisma.io/docs/cli/auth): Sign in to your Prisma account from the CLI, sign out, and manage workspace sessions. - [`branch`](https://www.prisma.io/docs/cli/branch): List platform branches for a project. - [`bucket`](https://www.prisma.io/docs/cli/bucket): Create and manage object-store buckets. - [`Configuration`](https://www.prisma.io/docs/cli/configuration): Configure Prisma ORM CLI commands with prisma.config.ts and global flags. - [`contract emit`](https://www.prisma.io/docs/cli/contract-emit): Emit Prisma ORM contract artifacts.