Drizzle Orm Expert
davila7/claude-code-templates
Expert in Drizzle ORM for TypeScript — schema design, relational queries, migrations, and serverless database integration.
Prisma ORM for type-safe database access - schema design, migrations, queries, relations, and connection management When user works with Prisma, database schemas, migrations, Prisma Client queries…
$ npx skills add shepherdjerred/monorepo --skill prisma-helper -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install shepherdjerred/monorepo prisma-helper --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/shepherdjerred/monorepo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/dotfiles/dot_agents/skills/prisma-helper .claude/skills/prisma-helper && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "prisma-helper" agent skill from https://github.com/shepherdjerred/monorepo/tree/main/packages/dotfiles/dot_agents/skills/prisma-helper into .claude/skills/prisma-helper/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prisma-helper", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/shepherdjerred/monorepo/tree/main/packages/dotfiles/dot_agents/skills/prisma-helperType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add shepherdjerred/monorepo --skill prisma-helper -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install shepherdjerred/monorepo prisma-helper --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shepherdjerred/monorepo.git skills-src && mkdir -p .agents/skills && cp -r skills-src/packages/dotfiles/dot_agents/skills/prisma-helper .agents/skills/prisma-helper && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "prisma-helper" agent skill from https://github.com/shepherdjerred/monorepo/tree/main/packages/dotfiles/dot_agents/skills/prisma-helper into .agents/skills/prisma-helper/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prisma-helper", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add shepherdjerred/monorepo --skill prisma-helper -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install shepherdjerred/monorepo prisma-helper --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shepherdjerred/monorepo.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/packages/dotfiles/dot_agents/skills/prisma-helper .cursor/skills/prisma-helper && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "prisma-helper" agent skill from https://github.com/shepherdjerred/monorepo/tree/main/packages/dotfiles/dot_agents/skills/prisma-helper into .cursor/skills/prisma-helper/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prisma-helper", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/shepherdjerred/monorepo.git --path packages/dotfiles/dot_agents/skills/prisma-helper--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add shepherdjerred/monorepo --skill prisma-helper -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install shepherdjerred/monorepo prisma-helper --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shepherdjerred/monorepo.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/packages/dotfiles/dot_agents/skills/prisma-helper .gemini/skills/prisma-helper && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "prisma-helper" agent skill from https://github.com/shepherdjerred/monorepo/tree/main/packages/dotfiles/dot_agents/skills/prisma-helper into .gemini/skills/prisma-helper/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prisma-helper", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install shepherdjerred/monorepo prisma-helperInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add shepherdjerred/monorepo --skill prisma-helper -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/shepherdjerred/monorepo.git skills-src && mkdir -p .github/skills && cp -r skills-src/packages/dotfiles/dot_agents/skills/prisma-helper .github/skills/prisma-helper && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "prisma-helper" agent skill from https://github.com/shepherdjerred/monorepo/tree/main/packages/dotfiles/dot_agents/skills/prisma-helper into .github/skills/prisma-helper/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prisma-helper", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add shepherdjerred/monorepo --skill prisma-helper -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install shepherdjerred/monorepo prisma-helper --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/shepherdjerred/monorepo.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/packages/dotfiles/dot_agents/skills/prisma-helper .opencode/skills/prisma-helper && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "prisma-helper" agent skill from https://github.com/shepherdjerred/monorepo/tree/main/packages/dotfiles/dot_agents/skills/prisma-helper into .opencode/skills/prisma-helper/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prisma-helper", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
prisma-helperPrisma ORM for type-safe database access - schema design, migrations, queries, relations, and connection management When user works with Prisma, database schemas, migrations, Prisma Client queries…
Prisma Helper is an agent skill from shepherdjerred/monorepo. Prisma ORM for type-safe database access - schema design, migrations, queries, relations, and connection management When user works with Prisma, database schemas, migrations, Prisma Client queries, or mentions prisma commands
Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Databases, covering ORMs and data access, Database schema design and Type safety. It works with Prisma. The repository describes itself as: Monorepo for all of my projects. The licence is GPL-3.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit bc57ca5. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are typescript, prisma and sql).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Prisma Helper loads about 3.6k tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 489 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from shepherdjerred/monorepo at commit bc57ca5, republished under its GPL-3.0 licence (© shepherdjerred). 489 words, ~3,598 tokens.
.claude/skills/prisma-helper/SKILL.md (or your agent's skills folder).prisma-client generator: Replaces deprecated prisma-client-js with better ESM/Bun/Deno support.sql files with full type safety (v5.19.0+)createManyAndReturn() and updateManyAndReturn(): Bulk operations returning resultsomit: Exclude fields from queries (opposite of select)join or query loadingPrisma consists of three main components:
| Command | Purpose |
|---|---|
prisma init | Initialize Prisma in project |
prisma generate | Generate Prisma Client from schema |
prisma migrate dev --name <name> | Create and apply migration (development) |
prisma migrate deploy | Apply pending migrations (production) |
prisma db push | Push schema to database without migration |
prisma db pull | Introspect database and update schema |
prisma studio | Open visual database editor |
prisma format | Format schema file |
Prisma 5.x/6.x (current stable):
generator client {
provider = "prisma-client-js"
}Prisma 7+ (new format with runtime options):
generator client {
provider = "prisma-client" // replaces "prisma-client-js"
output = "./generated/client"
runtime = "bun" // nodejs, deno, bun, workerd
moduleFormat = "esm" // esm or cjs
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}model User {
id Int @id @default(autoincrement())
email String @unique
name String?
posts Post[]
profile Profile?
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@index([email])
@@map("users")
}
model Post {
id Int @id @default(autoincrement())
title String
content String?
published Boolean @default(false)
authorId Int
author User @relation(fields: [authorId], references: [id], onDelete: Cascade)
@@index([authorId])
}| Attribute | Purpose | Example |
|---|---|---|
@id | Primary key | id Int @id |
@@id | Composite primary key | @@id([a, b]) |
@unique | Unique constraint | email String @unique |
@@unique | Compound unique | @@unique([firstName, lastName]) |
@default | Default value | @default(now()), @default(uuid()) |
@updatedAt | Auto-update timestamp | updatedAt DateTime @updatedAt |
@relation | Define relationship | See relations section |
@map | Map to database column | @map("user_name") |
@@map | Map to database table | @@map("users") |
@@index | Database index | @@index([title, content]) |
@ignore | Exclude from Prisma Client | legacyField String @ignore |
| Function | Purpose |
|---|---|
autoincrement() | Auto-incrementing integer |
uuid() / uuid(7) | UUID generation |
cuid() / cuid(2) | CUID generation |
ulid() | ULID generation |
nanoid(length) | Nano ID generation |
now() | Current timestamp |
dbgenerated(expr) | Database-level default |
model User {
id Int @id @default(autoincrement())
profile Profile?
}
model Profile {
id Int @id @default(autoincrement())
userId Int @unique
user User @relation(fields: [userId], references: [id])
}model User {
id Int @id @default(autoincrement())
posts Post[]
}
model Post {
id Int @id @default(autoincrement())
authorId Int
author User @relation(fields: [authorId], references: [id])
}model Post {
id Int @id @default(autoincrement())
categories Category[]
}
model Category {
id Int @id @default(autoincrement())
posts Post[]
}@relation(fields: [authorId], references: [id], onDelete: Cascade, onUpdate: Cascade)Options: Cascade, Restrict, NoAction, SetNull, SetDefault
// Create
const user = await prisma.user.create({
data: { email: 'user@example.com', name: 'User' }
})
// Create with relation
const userWithPosts = await prisma.user.create({
data: {
email: 'user@example.com',
posts: {
create: [{ title: 'Post 1' }, { title: 'Post 2' }]
}
},
include: { posts: true }
})
// Read
const user = await prisma.user.findUnique({ where: { id: 1 } })
const user = await prisma.user.findUniqueOrThrow({ where: { id: 1 } })
const users = await prisma.user.findMany({ where: { published: true } })
const first = await prisma.user.findFirst({ where: { name: { contains: 'John' } } })
// Update
const user = await prisma.user.update({
where: { id: 1 },
data: { name: 'Updated Name' }
})
// Upsert
const user = await prisma.user.upsert({
where: { email: 'user@example.com' },
update: { name: 'Updated' },
create: { email: 'user@example.com', name: 'New' }
})
// Delete
await prisma.user.delete({ where: { id: 1 } })
// Bulk operations
await prisma.user.createMany({ data: [...], skipDuplicates: true })
await prisma.user.updateMany({ where: {...}, data: {...} })
await prisma.user.deleteMany({ where: {...} })// Comparison operators
where: { age: { gt: 18, lte: 65 } }
where: { name: { contains: 'john', mode: 'insensitive' } }
where: { email: { startsWith: 'admin', endsWith: '.com' } }
where: { id: { in: [1, 2, 3] } }
where: { id: { notIn: [4, 5, 6] } }
// Logical operators
where: { OR: [{ email: { contains: 'a' } }, { name: { contains: 'b' } }] }
where: { AND: [{ published: true }, { authorId: 1 }] }
where: { NOT: { email: { contains: 'test' } } }
// Relation filters
where: { posts: { some: { published: true } } }
where: { posts: { every: { published: true } } }
where: { posts: { none: { published: true } } }
// Null filtering
where: { profile: null }
where: { profile: { isNot: null } }// Select specific fields
const user = await prisma.user.findUnique({
where: { id: 1 },
select: { id: true, email: true, posts: { select: { title: true } } },
});
// Include relations
const user = await prisma.user.findUnique({
where: { id: 1 },
include: { posts: true, profile: true },
});
// Omit fields (exclude sensitive data)
const user = await prisma.user.findUnique({
where: { id: 1 },
omit: { password: true },
});// Pagination
const users = await prisma.user.findMany({
skip: 10,
take: 20,
orderBy: { createdAt: 'desc' }
})
// Cursor-based pagination
const users = await prisma.user.findMany({
take: 10,
cursor: { id: lastUserId },
orderBy: { id: 'asc' }
})
// Multiple sort fields
orderBy: [{ lastName: 'asc' }, { firstName: 'asc' }]
// Sort by relation count
orderBy: { posts: { _count: 'desc' } }
// Null handling
orderBy: { name: { sort: 'asc', nulls: 'last' } }// Aggregate
const result = await prisma.user.aggregate({
_count: { _all: true },
_avg: { age: true },
_sum: { age: true },
_min: { age: true },
_max: { age: true },
});
// Group by
const grouped = await prisma.user.groupBy({
by: ["country"],
_count: { id: true },
_avg: { age: true },
having: { age: { _avg: { gt: 25 } } },
});
// Count relations
const user = await prisma.user.findUnique({
where: { id: 1 },
include: { _count: { select: { posts: true } } },
});const [user, post] = await prisma.$transaction([
prisma.user.create({ data: { email: "user@example.com" } }),
prisma.post.create({ data: { title: "Post", authorId: 1 } }),
]);const result = await prisma.$transaction(
async (tx) => {
const user = await tx.user.findUnique({ where: { id: 1 } });
if (!user) throw new Error("User not found");
return tx.user.update({
where: { id: 1 },
data: { balance: { decrement: 100 } },
});
},
{
maxWait: 5000,
timeout: 10000,
isolationLevel: Prisma.TransactionIsolationLevel.Serializable,
},
);// Increment/decrement
await prisma.user.update({
where: { id: 1 },
data: { balance: { increment: 100 } },
});
// Multiply/divide
await prisma.product.update({
where: { id: 1 },
data: { price: { multiply: 1.1 } },
});Create a .sql file in prisma/sql/:
-- prisma/sql/findUsers.sql
SELECT id, email, name FROM users WHERE email LIKE $1Run prisma generate --sql then use:
import { findUsers } from "@prisma/client/sql";
const users = await prisma.$queryRawTyped(findUsers("%@example.com"));// Parameterized query (safe)
const users = await prisma.$queryRaw`
SELECT * FROM users WHERE email = ${email}
`;
// Execute without return
await prisma.$executeRaw`
UPDATE users SET name = ${name} WHERE id = ${id}
`;❌ Avoid: Creating new clients per request
app.get("/users", async (req, res) => {
const prisma = new PrismaClient(); // Bad!
const users = await prisma.user.findMany();
await prisma.$disconnect();
res.json(users);
});✅ Prefer: Single shared instance
// lib/prisma.ts
import { PrismaClient } from "@prisma/client";
const globalForPrisma = globalThis as unknown as { prisma: PrismaClient };
export const prisma = globalForPrisma.prisma || new PrismaClient();
if (process.env.NODE_ENV !== "production") globalForPrisma.prisma = prisma;// For scripts and one-off operations
const prisma = new PrismaClient();
try {
await prisma.$connect();
// ... operations
} finally {
await prisma.$disconnect();
}import { Prisma } from "@prisma/client";
try {
await prisma.user.create({ data: { email: "existing@email.com" } });
} catch (e) {
if (e instanceof Prisma.PrismaClientKnownRequestError) {
if (e.code === "P2002") {
console.log("Unique constraint violation on:", e.meta?.target);
}
}
throw e;
}Common error codes:
P2002: Unique constraint violationP2003: Foreign key constraint violationP2025: Record not foundimport { mockDeep, DeepMockProxy } from "jest-mock-extended";
import { PrismaClient } from "@prisma/client";
const prismaMock = mockDeep<PrismaClient>();
prismaMock.user.findUnique.mockResolvedValue({
id: 1,
email: "test@example.com",
name: "Test User",
});import { PrismaClient } from "@prisma/client";
const prisma = new PrismaClient();
beforeAll(async () => {
await prisma.$connect();
});
afterAll(async () => {
await prisma.$disconnect();
});
afterEach(async () => {
// Clean up in correct order (respect foreign keys)
await prisma.$transaction([
prisma.post.deleteMany(),
prisma.user.deleteMany(),
]);
});const prisma = new PrismaClient({
log: [
{ level: "query", emit: "event" },
{ level: "error", emit: "stdout" },
{ level: "warn", emit: "stdout" },
],
});
prisma.$on("query", (e) => {
console.log("Query:", e.query);
console.log("Duration:", e.duration, "ms");
});model Post {
id Int @id
title String
content String
// Standard index
@@index([title])
// Composite index
@@index([title, content])
// PostgreSQL GIN index for full-text search
@@index([content], type: Gin)
// Full-text index (MySQL, MongoDB)
@@fulltext([title, content])
}select to fetch only needed fields for performanceinclude sparingly; prefer select with nested relations© shepherdjerred, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in packages/dotfiles/dot_agents/skills/prisma-helper of shepherdjerred/monorepo.
Open the folder on GitHubat commit bc57ca5
Prisma Helper next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Prisma Helper this skillshepherdjerred/monorepo | 112 | — | ~3.6k | Automated safety check: Pass | GPL-3.0 | |
| Drizzle Orm Expertdavila7/claude-code-templates | 32k | 3 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Prisma Expertdavila7/claude-code-templates | 32k | 7 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Database FundamentalsDanielPodolsky/ownyourcode | 290 | 1 repos | ~1.6k | Automated safety check: Pass | MIT | |
| Database Expertcin12211/orca-q | 224 | — | ~2.8k | Automated safety check: Pass | MIT | |
| DB SculptorEliasOulkadi/shokunin | 114 | — | ~3.1k | Automated safety check: Notes | MIT |
davila7/claude-code-templates
Expert in Drizzle ORM for TypeScript — schema design, relational queries, migrations, and serverless database integration.
davila7/claude-code-templates
Prisma ORM expert for schema design, migrations, query optimization, relations modeling, and database operations.
DanielPodolsky/ownyourcode
Reviews schema design, SQL queries, ORM patterns. An agent skill from DanielPodolsky/ownyourcode.
cin12211/orca-q
Database performance optimization, schema design, query analysis, and connection management across PostgreSQL, MySQL, MongoDB, and SQLite with ORM integration.
EliasOulkadi/shokunin
Design database schemas with Prisma/Drizzle, PostgreSQL index strategy (B-tree, GIN, GiST, BRIN, Hash), query optimization (EXPLAIN ANALYZE), migration safety (expand/contract, zero-downtime), and…
openathleteorg/openathlete
Change the OpenAthlete database schema safely with Prisma, covering the migration SQL, production safety, account deletion coverage and tests.
shepherdjerred/monorepo
Bun runtime APIs and current operational patterns for files, processes, modules, networking, databases, tests, and deployment.
shepherdjerred/monorepo
Current Bun test runner guidance for discovery, isolation, parallelism, sharding, changed tests, mocks, timers, snapshots, coverage, DOM Testing Library, and integration teardown.
shepherdjerred/monorepo
Current Bun workspace guidance for isolated and hoisted linkers, catalogs, filters, scripts, dependency classes, lockfiles, lifecycle trust, caches, publishing, TypeScript package exports, and…
shepherdjerred/monorepo
This skill should be used when the user asks to "deep research", "research this topic", "investigate thoroughly", "do a deep dive on", "comprehensive research on", "find everything about", "survey…
shepherdjerred/monorepo
This skill should be used when the user asks to "create a Figma design", "design in Figma", "make a Figma mockup", "create an app icon", "design UI", "render JSX to Figma", "export from Figma"…
shepherdjerred/monorepo
Current Fish shell scripting, functions, abbreviations, completions, variables, events, configuration, plugins, testing, and safety guidance.
Works with
Categories
Prisma ORM for type-safe database access - schema design, migrations, queries, relations, and connection management When user works with Prisma, database schemas, migrations, Prisma Client queries…. Prisma Helper is an agent skill from shepherdjerred/monorepo.
Prisma Helper fits situations like: works with Prisma; database schemas; prisma Client queries; mentions prisma commands.
Run `npx skills add shepherdjerred/monorepo --skill prisma-helper -a claude-code`. Or copy the skill folder (packages/dotfiles/dot_agents/skills/prisma-helper in shepherdjerred/monorepo) into .claude/skills/prisma-helper in your project. Claude Code loads it when a task matches its description.
Run `npx skills add shepherdjerred/monorepo --skill prisma-helper -a codex`. Or copy the skill folder (packages/dotfiles/dot_agents/skills/prisma-helper in shepherdjerred/monorepo) into .agents/skills/prisma-helper in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add shepherdjerred/monorepo --skill prisma-helper -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/prisma-helper, .gemini/skills/prisma-helper, .github/skills/prisma-helper and .opencode/skills/prisma-helper in your project.
SKILL.md names no scripts, command-line tools or credentials: Prisma Helper is instructions for the agent only. Our summary lists: Node.js.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Prisma Helper is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Prisma Helper: Drizzle Orm Expert (davila7/claude-code-templates, 32k stars), Prisma Expert (davila7/claude-code-templates, 32k stars), Database Fundamentals (DanielPodolsky/ownyourcode, 290 stars) and Database Expert (cin12211/orca-q, 224 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
shepherdjerred (a GitHub user) maintains it in shepherdjerred/monorepo, which has 112 GitHub stars. The repository holds 63 skills in this directory. The repository was last updated on October 9, 2026.
Source: shepherdjerred/monorepo on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.