drizzle-push

Apply Drizzle schema changes directly to a live database without migration files.

Updated Jul 24, 2026
One-click install
npx skills add https://github.com/saad-tayyab/lumora --skill drizzle-push-saad-tayyab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: drizzle-push
Source: https://github.com/saad-tayyab/lumora/tree/main/.agents/skills/drizzle-push
Command: npx skills add https://github.com/saad-tayyab/lumora --skill drizzle-push-saad-tayyab

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires drizzle-kit.

What problem does it solve? Applying schema changes during prototyping or development often requires writing migration files even when you just want to sync a Drizzle schema to a live database quickly. This Skill guides the correct use of drizzle-kit push and the push(...) SDK so schema diffs are executed directly against the database with structured, machine-readable results. ## Core Features & Use Cases - Direct schema sync: Push a Drizzle schema to a live PostgreSQL, MySQL, SQLite, MSSQL, CockroachDB, SingleStore, or Turso database without generating migration files. - Structured JSON envelope: Decode the discriminated-union response (ok, no_changes, missing_hints, error) from both the CLI (--output json) and the SDK, with matching exit codes. - Destructive-change safety: Detect confirm_data_loss situations (dropping non-empty tables or columns, SQLite table recreation) and resolve them through the hints loop before re-invoking. - Use Case: While prototyping a new feature, you add a users.legacy_id column and run drizzle-kit push --output json; the envelope reports missing_hints for a destructive change, you supply the confirmation hints, and the schema is applied. ## Quick Start Ask the AI to push your Drizzle schema to the development database using drizzle-kit push with JSON output and interpret the response envelope.

Frequently Asked Questions about drizzle-push

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I push a Drizzle schema to a database without migrations?

Run drizzle-kit push with your drizzle.config.ts, or call the push(...) function from drizzle-kit in SDK form. Push connects to the live database and executes the schema diff directly, unlike generate which writes a migration SQL file to disk.

What is the difference between drizzle-kit push and generate?

Generate is offline and writes a migration SQL file to disk, while push connects to the live database and executes the diff against it. Push suits prototyping and dev resets; generate fits migration-based deployment workflows.

Why does drizzle-kit push return missing_hints?

Push returns missing_hints when the diff is ambiguous or destructive, such as dropping a non-empty table or column, dropping a primary key, changing a column type, or recreating a SQLite table. Resolve each unresolved item with a matching hint and re-invoke.

Does drizzle-kit push work in CI or non-interactive environments?

Yes. Pass --output json to get a machine-readable envelope that is always non-interactive. Under the default text output in a non-TTY, the CLI prints the missing-decisions report and exits with code 2 instead of hanging on a prompt.

How do I provide database credentials to drizzle-kit push?

In CLI form, credentials nest under dbCredentials in drizzle.config.ts, typically reading from environment variables like process.env.DATABASE_URL. In SDK form, pass fields like url or host, port, user, password, and database flat on the push(...) call.