CLI Overview
The drzl CLI analyzes Drizzle schemas and runs generators.
Quick help:
bash
pnpm dlx @drzl/cli --helpbash
npx @drzl/cli --helpbash
yarn dlx @drzl/cli --helpbash
bunx @drzl/cli --helpJump to commands:
- Init: set up a starter config → /cli/init
- Analyze: inspect a schema → /cli/analyze
- Generate: run configured generators → /cli/generate
- Generate (oRPC): quick oRPC without config → /cli/generate-orpc
- Watch: watch schema and regenerate → /cli/watch
Commands & Options
analyze
Analyze a Drizzle schema (TypeScript) and output a normalized Analysis.
Usage (by package manager):
bash
pnpm dlx @drzl/cli analyze <schema> [--relations] [--validate] [--out FILE] [--json]bash
npx @drzl/cli analyze <schema> [--relations] [--validate] [--out FILE] [--json]bash
yarn dlx @drzl/cli analyze <schema> [--relations] [--validate] [--out FILE] [--json]bash
bunx @drzl/cli analyze <schema> [--relations] [--validate] [--out FILE] [--json]Options:
--relations(default true): include relation inference--validate(default true): validate constraints--out <file>: write JSON to file--json(default false): print JSON to stdout (overrides--out)
Exits non‑zero when errors are found in issues.
generate
Run configured generators from drzl.config.*.
Usage:
bash
pnpm dlx @drzl/cli generate -c drzl.config.tsbash
npx @drzl/cli generate -c drzl.config.tsbash
yarn dlx @drzl/cli generate -c drzl.config.tsbash
bunx @drzl/cli generate -c drzl.config.tsOptions:
-c, --config <path>: path to config file
Behavior:
- Analyzes your schema
- Runs each generator in
generators[], printing a file summary per kind
generate:orpc
Quickly generate oRPC routers without a config.
Usage:
bash
pnpm dlx @drzl/cli generate:orpc <schema> -o src/api --template standard --includeRelationsbash
npx @drzl/cli generate:orpc <schema> -o src/api --template standard --includeRelationsbash
yarn dlx @drzl/cli generate:orpc <schema> -o src/api --template standard --includeRelationsbash
bunx @drzl/cli generate:orpc <schema> -o src/api --template standard --includeRelationsOptions:
-o, --outDir <dir>(defaultsrc/api)--template <name>(defaultstandard) — can bestandardor a custom path--includeRelations— include relation endpoints
watch
Watch schema (and template paths) and regenerate on changes.
Usage:
bash
pnpm dlx @drzl/cli watch -c drzl.config.ts --pipeline all --debounce 200 [--json]bash
npx @drzl/cli watch -c drzl.config.ts --pipeline all --debounce 200 [--json]bash
yarn dlx @drzl/cli watch -c drzl.config.ts --pipeline all --debounce 200 [--json]bash
bunx @drzl/cli watch -c drzl.config.ts --pipeline all --debounce 200 [--json]Options:
-c, --config <path>--pipeline <name>:all | analyze | generate-orpc(defaultall)--debounce <ms>: debounce milliseconds (default200)--json: emit structured JSON logs
init
Scaffold a minimal drzl.config.ts in the current directory.
bash
pnpm dlx @drzl/cli initbash
npx @drzl/cli initbash
yarn dlx @drzl/cli initbash
bunx @drzl/cli initSee also:
- Config reference: /guide/configuration
- Generators:

