/prisma-optimize
Optimize Prisma queries with automated analysis, N+1 detection, index recommendations, and performance patterns based on official documentation
$ npx -y skills add fusengine/agents --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/prisma-optimize
Context preview
What this command does when you run it.
Optimize Prisma queries with automated analysis, N+1 detection, index recommendations, and performance patterns based on official documentation
Command definition
prisma-optimize.mddescription: Optimize Prisma queries with automated analysis, N+1 detection, index recommendations, and performance patterns based on official documentation
๐ Prisma Query Optimization
Automatically analyzes and optimizes your Prisma queries by detecting performance issues, N+1 queries, missing indexes, and proposing solutions based on official Prisma documentation 2024-2025.
---
Phase 1: ANALYZE ๐
Step 1.1: Fetch Official Documentation
> Use research-expert to fetch official Prisma documentation
**Goals**:
- Obtain latest Prisma optimization documentation
- Verify recommended patterns for Prisma Optimize
- Identify best practices 2024-2025
**Actions**:
- Search for Prisma Optimize, Query Optimization, Performance documentation
- Verify `@prisma/extension-optimize` extension APIs
- Confirm patterns to avoid N+1 queries
**Query Focus**:
"Prisma Optimize best practices, N+1 detection, query optimization patterns,
index recommendations, select vs include, relationLoadStrategy"
**Deliverable**: Prisma optimization guide with verified methods
---
Step 1.2: Explore Prisma Codebase
> Use explore-codebase to analyze existing Prisma setup
**Goals**:
- Locate Prisma files (schema.prisma, client queries)
- Identify existing query patterns
- Detect potential performance issues
**Actions**:
- Search for `schema.prisma`, `*.prisma` files
- Analyze files containing `prisma.` to find queries
- Map relations and data access patterns
**Deliverable**: Map of Prisma queries and potential issues
---
Phase 2: DETECT ISSUES ๐ฏ
Automated Problem Detection
After exploration, systematically analyze:
๐จ Issue 1: N+1 Queries
**Detected Pattern**:
// โ Anti-pattern detected
const users = await prisma.user.findMany()
users.forEach(async (user) => {
const posts = await prisma.post.findMany({ where: { authorId: user.id } })
})**Recommended Solutions**:
1. **`include`** (Simple):
const users = await prisma.user.findMany({ include: { posts: true } })2. **`relationLoadStrategy: "join"`** (Performant):
const users = await prisma.user.findMany({
relationLoadStrategy: "join",
include: { posts: true }
})---
๐จ Issue 2: Missing Indexes
**Detected Pattern**:
// โ Queries on unindexed columns
await prisma.user.findFirst({ where: { name: "Marc" } })**Solution**:
model User {
id Int @id
name String
@@index([name]) // โ
Add index
}---
๐จ Issue 3: Overfetching
**Detected Pattern**:
// โ Fetches all fields unnecessarily
await prisma.user.findMany({ include: { posts: true } })**Solution**:
// โ
Select only necessary fields
await prisma.user.findMany({
select: {
id: true,
email: true,
posts: { select: { title: true } }
}
})---
Phase 3: EXECUTE ๐ ๏ธ
Step 3.1: Install Prisma Optimize (Optional)
**If desired, install official extension**:
npm install @prisma/extension-optimize
**Configuration**:
import { PrismaClient } from '@prisma/client'
import { withOptimize } from '@prisma/extension-optimize'
const prisma = new PrismaClient().$extends(
withOptimize({ apiKey: process.env.OPTIMIZE_API_KEY })
)---
Step 3.2: Apply Optimizations
For each detected issue, propose and implement solutions:
1. **Refactor N+1 queries** โ Use `include` or `relationLoadStrategy` 2. **Add missing indexes** โ Modify `schema.prisma` with `@@index` 3. **Optimize selects** โ Replace with targeted `select` 4. **Limit results** โ Add `take`/`skip`
---
Phase 4: VERIFY ๐
> Use sniper to ensure zero linter errors
**Goals**:
- Validate TypeScript syntax
- Verify Prisma types
- Ensure SOLID principles compliance
**Actions**:
npx prisma validate
npx prisma format
npm run lint
npm run type-check
**Deliverable**: Optimized code with zero errors
---
๐ Final Report
Generate structured report with:
# Prisma Optimization Report
## ๐ Detected Issues
- [X] N+1 Queries: 3 occurrences
- [X] Missing Indexes: 5 columns
- [X] Overfetching: 2 queries
## โ
Applied Solutions
1. Refactored users.service.ts with `include`
2. Added indexes on User.name, Post.title
3. Optimized queries with targeted `select`
## ๐ Estimated Performance Gains
- Reduced 15 โ 3 SQL queries
- Queries ~70% faster (estimated)
- Network load reduced by ~40%
## ๐ฏ Additional Recommendations
- Enable Prisma Optimize for monitoring
- Add performance logs in development
- Consider caching with Accelerate
---
Usage
**Arguments**: No arguments required
**Example Usage**:
- `/prisma-optimize` โ Complete analysis and automatic optimization
**Notes**:
- Command analyzes ALL Prisma files in the project
- Recommendations based on official 2024-2025 documentation
- Installing `@prisma/extension-optimize` is optional but recommended
Read more
description: Optimize Prisma queries with automated analysis, N+1 detection, index recommendations, and performance patterns based on official documentation
๐ Prisma Query Optimization
Automatically analyzes and optimizes your Prisma queries by detecting performance issues, N+1 queries, missing indexes, and proposing solutions based on official Prisma documentation 2024-2025.
---
Phase 1: ANALYZE ๐
Step 1.1: Fetch Official Documentation
> Use research-expert to fetch official Prisma documentation
**Goals**:
- Obtain latest Prisma optimization documentation
- Verify recommended patterns for Prisma Optimize
- Identify best practices 2024-2025
**Actions**:
- Search for Prisma Optimize, Query Optimization, Performance documentation
- Verify `@prisma/extension-optimize` extension APIs
- Confirm patterns to avoid N+1 queries
**Query Focus**:
"Prisma Optimize best practices, N+1 detection, query optimization patterns, index recommendations, select vs include, relationLoadStrategy"
**Deliverable**: Prisma optimization guide with verified methods
---
Step 1.2: Explore Prisma Codebase
> Use explore-codebase to analyze existing Prisma setup
**Goals**:
- Locate Prisma files (schema.prisma, client queries)
- Identify existing query patterns
- Detect potential performance issues
**Actions**:
- Search for `schema.prisma`, `*.prisma` files
- Analyze files containing `prisma.` to find queries
- Map relations and data access patterns
**Deliverable**: Map of Prisma queries and potential issues
---
Phase 2: DETECT ISSUES ๐ฏ
Automated Problem Detection
After exploration, systematically analyze:
๐จ Issue 1: N+1 Queries
**Detected Pattern**:
// โ Anti-pattern detected
const users = await prisma.user.findMany()
users.forEach(async (user) => {
const posts = await prisma.post.findMany({ where: { authorId: user.id } })
})**Recommended Solutions**:
1. **`include`** (Simple):
const users = await prisma.user.findMany({ include: { posts: true } })2. **`relationLoadStrategy: "join"`** (Performant):
const users = await prisma.user.findMany({
relationLoadStrategy: "join",
include: { posts: true }
})---
๐จ Issue 2: Missing Indexes
**Detected Pattern**:
// โ Queries on unindexed columns
await prisma.user.findFirst({ where: { name: "Marc" } })**Solution**:
model User {
id Int @id
name String
@@index([name]) // โ
Add index
}---
๐จ Issue 3: Overfetching
**Detected Pattern**:
// โ Fetches all fields unnecessarily
await prisma.user.findMany({ include: { posts: true } })**Solution**:
// โ
Select only necessary fields
await prisma.user.findMany({
select: {
id: true,
email: true,
posts: { select: { title: true } }
}
})---
Phase 3: EXECUTE ๐ ๏ธ
Step 3.1: Install Prisma Optimize (Optional)
**If desired, install official extension**:
npm install @prisma/extension-optimize
**Configuration**:
import { PrismaClient } from '@prisma/client'
import { withOptimize } from '@prisma/extension-optimize'
const prisma = new PrismaClient().$extends(
withOptimize({ apiKey: process.env.OPTIMIZE_API_KEY })
)---
Step 3.2: Apply Optimizations
For each detected issue, propose and implement solutions:
1. **Refactor N+1 queries** โ Use `include` or `relationLoadStrategy` 2. **Add missing indexes** โ Modify `schema.prisma` with `@@index` 3. **Optimize selects** โ Replace with targeted `select` 4. **Limit results** โ Add `take`/`skip`
---
Phase 4: VERIFY ๐
> Use sniper to ensure zero linter errors
**Goals**:
- Validate TypeScript syntax
- Verify Prisma types
- Ensure SOLID principles compliance
**Actions**:
npx prisma validate npx prisma format npm run lint npm run type-check
**Deliverable**: Optimized code with zero errors
---
๐ Final Report
Generate structured report with:
# Prisma Optimization Report ## ๐ Detected Issues - [X] N+1 Queries: 3 occurrences - [X] Missing Indexes: 5 columns - [X] Overfetching: 2 queries ## โ Applied Solutions 1. Refactored users.service.ts with `include` 2. Added indexes on User.name, Post.title 3. Optimized queries with targeted `select` ## ๐ Estimated Performance Gains - Reduced 15 โ 3 SQL queries - Queries ~70% faster (estimated) - Network load reduced by ~40% ## ๐ฏ Additional Recommendations - Enable Prisma Optimize for monitoring - Add performance logs in development - Consider caching with Accelerate
---
Usage
**Arguments**: No arguments required
**Example Usage**:
- `/prisma-optimize` โ Complete analysis and automatic optimization
**Notes**:
- Command analyzes ALL Prisma files in the project
- Recommendations based on official 2024-2025 documentation
- Installing `@prisma/extension-optimize` is optional but recommended
A plugin ecosystem that turns Claude Code into a supervised, multi-agent development environment.
Repo: fusengine/agents
Other commands on fusengine-agents.
- /apex-quick
Quick Flow for simple fixes - Single expert handles explore, code, review, and validate in one pass. Inspired by BMAD Barry.
Open command - /apex
APEX Methodology - The systematic Analyze-Plan-Execute-eLicit-eXamine approach for intelligent development. Reduces hallucination and defect risk through mandatory parallel research, self-review, and validation gates.
Open command - /cleanup-context
Memory optimization - removes duplicates, consolidates knowledge, and cleans memory banks for better performance.
Open command - /create-pull-request
Auto-generate Pull Request with comprehensive description, test plan, and changelog. Uses gh CLI for creation.
Open command - /deep-code-analysis
Comprehensive codebase investigation using research-expert for documentation, explore-codebase for structure, and deep analysis. Perfect for understanding complex systems.
Open command - /epct
Systematic Explore-Plan-Code-Test methodology for structured development. Ensures comprehensive approach to feature implementation.
Open command

