Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
prisma avatar

Prisma Upgrade V7 Removed Features

  • 13 installs
  • 8 repo stars
  • Updated February 9, 2026
  • prisma/cursor-plugin

prisma-upgrade-v7-removed-features migrates off Prisma v7 removed APIs.

About

The prisma-upgrade-v7-removed-features skill maps v7 removals to replacements. Client $use middleware becomes $extends query interceptors for logging, soft delete, and timing. Automatic .env loading requires explicit dotenv in prisma.config.ts. prisma-client-js in node_modules shifts to prisma-client generator with mandatory output path and driver adapters. Removed preview flags and deprecated APIs list migration snippets. Covers accelerate versus adapter confusion and points to companion upgrade skills for schema and config changes. Replaces $use middleware with $extends query hooks. Documents removed auto env loading behavior. Migrates prisma-client-js to prisma-client output path. Soft delete and logging patterns via extensions. Links related v7 upgrade companion skills. Updated patterns using extensions, config, and generators. User hits removed middleware, env, or generator behavior in v7. Teams upgrading large Prisma codebases to v7. Build-phase integrations work replacing removed Prisma v6 APIs.

  • Replaces $use middleware with $extends query hooks.
  • Documents removed auto env loading behavior.
  • Migrates prisma-client-js to prisma-client output path.
  • Soft delete and logging patterns via extensions.
  • Links related v7 upgrade companion skills.

Prisma Upgrade V7 Removed Features by the numbers

  • 13 all-time installs (skills.sh)
  • Ranked #627 of 911 Databases skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
At a glance

prisma-upgrade-v7-removed-features capabilities & compatibility

Capabilities
client middleware removed section · common middleware patterns replacements
Use cases
database · refactoring
From the docs

What prisma-upgrade-v7-removed-features says it does

No longer works in v7
SKILL.md
Use Client Extensions Instead
SKILL.md
npx skills add https://github.com/prisma/cursor-plugin --skill prisma-upgrade-v7-removed-features

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs13
repo stars8
Last updatedFebruary 9, 2026
Repositoryprisma/cursor-plugin

What Prisma features were removed in v7?

Migrate away from Prisma v7 removed features including middleware, env auto-load, and node_modules client.

Who is it for?

Teams upgrading large Prisma codebases to v7.

Skip if: Skip for new projects already on v7 defaults.

When should I use this skill?

User hits removed middleware, env, or generator behavior in v7.

What you get

Updated patterns using extensions, config, and generators.

Files

SKILL.mdMarkdownGitHub ↗

Removed Features

Several features have been removed in Prisma v7. Here's how to migrate.

Client Middleware

Removed

// ❌ No longer works in v7
prisma.$use(async (params, next) => {
  const before = Date.now()
  const result = await next(params)
  const after = Date.now()
  console.log(`Query took ${after - before}ms`)
  return result
})

Use Client Extensions Instead

// ✅ v7 approach
const prisma = new PrismaClient({ adapter }).$extends({
  query: {
    $allModels: {
      async $allOperations({ operation, model, args, query }) {
        const before = Date.now()
        const result = await query(args)
        const after = Date.now()
        console.log(`${model}.${operation} took ${after - before}ms`)
        return result
      },
    },
  },
})

Common Middleware Patterns

Soft delete
const prisma = new PrismaClient({ adapter }).$extends({
  query: {
    user: {
      async delete({ args, query }) {
        // Convert delete to soft delete
        return prisma.user.update({
          where: args.where,
          data: { deletedAt: new Date() },
        })
      },
      async findMany({ args, query }) {
        // Filter out soft-deleted records
        args.where = { ...args.where, deletedAt: null }
        return query(args)
      },
    },
  },
})
Logging
const prisma = new PrismaClient({ adapter }).$extends({
  query: {
    $allModels: {
      async $allOperations({ operation, model, args, query }) {
        console.log(`${model}.${operation}`, JSON.stringify(args))
        return query(args)
      },
    },
  },
})

Metrics

Removed

The Metrics preview feature has been removed.

// ❌ No longer works
const metrics = await prisma.$metrics.json()

Alternatives

Custom counter with extensions
let totalQueries = 0

const prisma = new PrismaClient({ adapter }).$extends({
  client: {
    async $totalQueries() {
      return totalQueries
    },
  },
  query: {
    $allModels: {
      async $allOperations({ query, args }) {
        totalQueries += 1
        return query(args)
      },
    },
  },
})

// Usage
const count = await prisma.$totalQueries()
Use driver-level metrics

Access metrics from the underlying driver adapter.

CLI Flags Removed

--skip-generate

Removed from migrate dev and db push.

# v6
prisma migrate dev --skip-generate

# v7 - generate is not run automatically
prisma migrate dev
prisma generate  # Run explicitly if needed

--skip-seed

Removed from migrate dev and migrate reset.

# v6
prisma migrate dev --skip-seed

# v7 - seed is not run automatically
prisma migrate dev
prisma db seed  # Run explicitly if needed

--schema and --url from db execute

# v6
prisma db execute --file ./script.sql --url "$DATABASE_URL"

# v7 - configure in prisma.config.ts
prisma db execute --file ./script.sql

migrate diff Options

RemovedReplacement
--from-url--from-config-datasource
--to-url--to-config-datasource
--from-schema-datasource--from-config-datasource
--to-schema-datasource--to-config-datasource
--shadow-database-urlConfigure in prisma.config.ts

Example

# v6
prisma migrate diff --from-url "$DATABASE_URL" --to-schema schema.prisma

# v7
prisma migrate diff --from-config-datasource --to-schema schema.prisma

Automatic Behaviors Removed

Auto-generate after migrate

# v7 workflow
prisma migrate dev --name add_field
prisma generate  # Must run explicitly

Auto-seed after migrate

# v7 workflow
prisma migrate reset --force
prisma db seed  # Must run explicitly

rejectOnNotFound

Removed in v5.0.0 (already deprecated).

// ❌ Removed
const prisma = new PrismaClient({
  rejectOnNotFound: true,
})

// ✅ Use OrThrow methods
const user = await prisma.user.findUniqueOrThrow({
  where: { id: 1 },
})

const user = await prisma.user.findFirstOrThrow({
  where: { email: 'test@example.com' },
})

Related skills

FAQ

What does prisma-upgrade-v7-removed-features do?

prisma-upgrade-v7-removed-features migrates off Prisma v7 removed APIs.

When should I use prisma-upgrade-v7-removed-features?

User hits removed middleware, env, or generator behavior in v7.

Is this skill safe to install?

Review the Security Audits panel on this page before installing in production.

Databasesdatabases

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.