Skill: dev-prisma
Development with Prisma ORM (schema, migrations, type-safe queries, Accelerate, transactions). Trigger when the user wants to add a model, create a migration, optimize Prisma queries, or when schema.prisma is detected in the project.
Configuration
| Property | Value |
|---|---|
| Context | fork |
| Allowed tools | Read, Write, Edit, Bash, Glob, Grep |
| Keywords | dev, prisma, prisma — |
Detailed description
Prisma ORM (pointer)
Prisma publishes the canonical agent skill at prisma/skills — maintained by the Prisma team, in sync with v7 (ESM-only, driver adapters, prisma.config.ts). The vendor reference stays current with every release; the prior foundation skill (418 lines) drifted on each Prisma version bump.
Delegate to the vendor skill
# Prisma's preferred path (verify on their README):
npx skills add prisma/skills
# Fallback — clone and copy:
git clone --depth 1 https://github.com/prisma/skills ~/dev/vendor-skills/prisma
# Skill content lives in CLAUDE.md / AGENTS.md per their convention.
Recipe entry: docs/recipes/recommended-vendor-skills.md §"Prisma — prisma/skills". Reduction rationale: specs/foundation-positioning-review/spec.md Wave 1.
Foundation-unique angle preserved: cross-cutting discipline
The vendor covers the Prisma API surface. The foundation enforces version-agnostic conventions that survive across releases:
- Security: never
select: { passwordHash: true }or any sensitive column without explicit need; default toselectoverincludefor security + perf — cross-ref.claude/rules/security.md. - TDD with a real DB: integration tests hit a real test database (Docker Compose pattern), never a Prisma mock — cross-ref the
dev-tddskill. - Postgres interop: if the stack uses Supabase, Prisma operates against the same Postgres — cross-ref the
dev-supabaseskill (Supabase RLS coexists with Prisma queries).
Foundation rules preserved
- NEVER use
prisma migrate devin production. Alwaysprisma migrate deploy. prisma generateMUST run after every schema change. Add it to the CI build step.- Singleton PrismaClient (HMR-safe
globalThispattern in dev) — avoid connection leaks. - YOU MUST add an index on every foreign key and on every column in frequent WHERE clauses.
- YOU MUST use
selectinstead ofincludewhen you know the fields (security + perf). - NEVER commit
.envwithDATABASE_URL. Always.env.examplewith placeholders. - NEVER rename a field in one migration. Two steps: add new column → backfill → remove old column (avoids prod downtime).
Automatic triggering
This skill is automatically activated when:
- The matching keywords are detected in the conversation
- The task context matches the skill's domain
Triggering examples
- "I want to dev..."
- "I want to prisma..."
- "I want to prisma — ..."
Context fork
Fork means the skill runs in an isolated context:
- Does not pollute the main conversation
- Results are returned cleanly
- Ideal for autonomous tasks