Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ packages/*/.prisma/
/prisma.config.ts
tmp/

# Local agent skill installs
.agents/skills/
.claude/skills/
skills-lock.json

# Build and test output
dist/
.publish/
Expand Down
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,13 @@ Run tests:

```bash
pnpm test
pnpm lint:skills
pnpm test:skills
```

`pnpm install` also wires the local skill cluster into supported agent
runtimes, including `.agents/skills/` and `.claude/skills/`.

Build the package:

```bash
Expand Down Expand Up @@ -105,6 +110,13 @@ workflows without introducing product-specific namespaces.

The public docs start at `docs/README.md`.

Agent skills for guided Next.js deploys live in `skills/`. Install the cluster
into an app project with:

```bash
pnpm dlx skills@latest add prisma/prisma-cli/skills#cli-v<cli-version> --all
```

Product behavior is defined in `docs/product`.

Start here when changing command behavior:
Expand Down
5 changes: 5 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,19 @@
"packageManager": "pnpm@10.30.0",
"scripts": {
"build:cli": "pnpm --filter @prisma/cli build",
"lint:skills": "node scripts/validate-skills.mjs",
"prepare": "skills add ./skills --skill '*' --agent universal claude-code -y",
"prepare:cli-publish": "node scripts/prepare-cli-publish.mjs",
"smoke:cli-nextjs": "node scripts/smoke-cli-nextjs-artifact.mjs",
"test:skills": "node --test scripts/validate-skills.test.mjs",
"test": "pnpm --filter @prisma/cli test",
"prisma-cli": "tsx packages/cli/src/bin.ts",
"prisma": "tsx packages/cli/src/bin.ts"
},
"devDependencies": {
"gray-matter": "^4.0.3",
"pkg-pr-new": "^0.0.75",
"skills": "^1.5.7",
"tsx": "^4.19.2"
}
}
13 changes: 13 additions & 0 deletions packages/cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,19 @@ npx prisma-cli app promote <deployment-id>
- Stable command groups, flags, and error codes for scripts and agents.
- Environment variable values are not printed back to the terminal.

### Agent skills

For agent-guided Next.js deploys, install the Prisma CLI skill cluster at the
project level. Match the skill ref to the installed CLI version:

```bash
npx prisma-cli version
pnpm dlx skills@latest add prisma/prisma-cli/skills#cli-v<cli-version> --all
```

The skills teach agents how to prepare a Next.js app, run `app deploy`, verify
the result, and route CLI / Compute feedback to the right Prisma channel.

---

## Beta notes
Expand Down
3 changes: 3 additions & 0 deletions packages/cli/src/shell/command-meta.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,11 +139,14 @@ const DESCRIPTORS: CommandDescriptor[] = [
id: "app.deploy",
path: ["prisma", "app", "deploy"],
description: "Creates a new deployment for the app",
longDescription:
"Agent skills for guided Next.js deploys are available from the Prisma CLI skill cluster.",
examples: [
"prisma-cli app deploy",
"prisma-cli app deploy --app my-app --env DATABASE_URL=postgresql://example",
"prisma-cli app deploy --app my-app --framework nextjs --http-port 3000",
"prisma-cli app deploy --branch feat-login --framework hono",
"pnpm dlx skills@latest add prisma/prisma-cli/skills#cli-v<cli-version> --all",
],
},
{
Expand Down
2 changes: 2 additions & 0 deletions packages/cli/tests/app.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -146,8 +146,10 @@ describe("app commands", () => {

expect(deployHelp.exitCode).toBe(0);
expect(deployHelp.stderr).toContain("Creates a new deployment for the app");
expect(deployHelp.stderr).toContain("Agent skills for guided Next.js deploys");
expect(deployHelp.stderr).toContain("$ prisma-cli app deploy");
expect(deployHelp.stderr).toContain("$ prisma-cli app deploy --app my-app --framework nextjs --http-port 3000");
expect(deployHelp.stderr).toContain("$ pnpm dlx skills@latest add prisma/prisma-cli/skills#cli-v<cli-version> --all");
expect(deployHelp.stderr).toContain("--entry <path>");
expect(deployHelp.stderr).toContain("--framework <name>");
expect(deployHelp.stderr).not.toContain("--build-type <type>");
Expand Down
Loading
Loading