Skip to content
Backend
Command

/migrate

Migrate schema + backfill data on a deployed Convex app using @convex-dev/migrations.

From plugin
convex-agent-plugins
11729 skills29 commands

How 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/migrate

Context preview

What this command does when you run it.

Migrate schema + backfill data on a deployed Convex app using @convex-dev/migrations.

Command definition

migrate.md
description: "Migrate schema + backfill data on a deployed Convex app using @convex-dev/migrations."

Migrate the schema / data on a live app

Change a deployed schema without breaking existing data: stage the schema change, install @convex-dev/migrations, write a backfill that makes old rows valid, run it, and verify before tightening the validator.

Steps

1. Make the new field optional first (so deploy doesn't reject existing rows). 2. Install @convex-dev/migrations; write a migration that backfills/transforms existing rows. 3. Run the migration; verify all rows are valid. 4. Tighten the validator (make the field required) once the backfill is complete.

Rules

  • Never tighten a validator before the backfill completes — it rejects existing rows and breaks the live app.
  • Add new fields as optional first, migrate, then require.
  • Verify row counts before and after.
Ships withconvex-agent-plugins

Official Convex plugins for AI coding agents, providing comprehensive development tools for building reactive backends with TypeScript. Supported Agents: Cursor, Claude Code (more coming soon)

Get the whole plugin

Other commands on convex-agent-plugins.