Skip to main content

vendure-cli

Use the Vendure CLI (`vendure`) to scaffold, run, build, migrate and maintain a Vendure ecommerce project. Use whenever working inside a Vendure project that needs a dev server, a production build, database migrations, plugin/entity/service scaffolding, GraphQL schema generation, diagnostic checks, or codemods.

Quellinformationen

Repository
vendurehq/vendure
Letzte Quellaktivität
8. Oktober 2026 um 06:44
Erkannte Sprache von SKILL.md
Englisch
Sterne
8.521
Forks
1.521

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
10 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
vendure-cli
description
Use the Vendure CLI (`vendure`) to scaffold, run, build, migrate and maintain a Vendure ecommerce project. Use whenever working inside a Vendure project that needs a dev server, a production build, database migrations, plugin/entity/service scaffolding, GraphQL schema generation, diagnostic checks, or codemods.
allowed-tools
Bash, Read, Edit, Glob, Grep
# Vendure CLI The Vendure CLI (`@vendure/cli`, binary `vendure`) drives the full lifecycle of a Vendure project. Use it instead of hand-writing boilerplate or guessing build and migration commands. ## Detecting a Vendure project Run CLI commands from a Vendure server package root, or from a monorepo root that contains a Vendure package under `packages/`, `apps/`, `libs/`, `services/`, or `modules/`. `dev`, `build`, and `start` resolve the project directory from the current working directory if it contains `@vendure/core`, or by scanning those monorepo package directories. `add`, `migrate`, `schema`, and config-dependent `doctor` checks analyze the TypeScript project from `process.cwd()` and require a `tsconfig*.json` there, so do not assume they work from arbitrary nested subdirectories. ## Running the CLI `@vendure/cli` is normally a project dependency, so run it through the project's package manager — do **not** assume `npx`. Detect the package manager from the lockfile in the project root or workspace root and use the matching runner: | Lockfile in project root | Package manager | Run the CLI with | | ------------------------ | --------------- | ----------------------------- | | `bun.lock` / `bun.lockb` | bun | `bunx vendure <command>` | | `pnpm-lock.yaml` | pnpm | `pnpm exec vendure <command>` | | `yarn.lock` | yarn | `yarn vendure <command>` | | `package-lock.json` | npm | `npx vendure <command>` | | none found | npm (fallback) | `npx vendure <command>` | If `@vendure/cli` is installed globally, call `vendure <command>` directly. List all commands with `vendure --help`. The `commands/*.md` reference files write examples with a bare `vendure …` — prefix each one with the runner for the detected package manager. Note: CLI scaffolding that installs packages currently detects `yarn.lock`, `package-lock.json`, and `pnpm-lock.yaml` internally, then falls back to npm. It does not use Bun for those generated dependency installs. ## Commands | Command | Use it to… | Reference | | --------- | --------------------------------------------------------- | --------------------- | | `dev` | Run server + worker + dashboard in development mode | `commands/dev.md` | | `build` | Compile the project for production | `commands/build.md` | | `start` | Run an already-built project | `commands/start.md` | | `add` | Scaffold a plugin, entity, service, API extension, etc. | `commands/add.md` | | `migrate` | Generate, run or revert database migrations | `commands/migrate.md` | | `schema` | Generate a GraphQL schema file from the Admin/Shop API | `commands/schema.md` | | `doctor` | Diagnose project, dependency, config, schema and DB health | `commands/doctor.md` | | `codemod` | Run automated code transforms (e.g. UI migrations) | `commands/codemod.md` | | `plugins` | List / enable / disable CLI plugins for the project | `commands/plugins.md` | To diagnose a broken project, use the `vendure-troubleshooting` skill (`skills/vendure-troubleshooting/`). Installed **CLI plugins** (packages that declare `vendure.cliPlugin`) may add commands or replace built-ins such as `dev`. Prefer `vendure --help` in the project to see the effective command set. See the developer CLI guide section “Extending the CLI”. ## Critical rules for agents 1. **Never hardcode `npx`.** Resolve the runner from the project's lockfile — see "Running the CLI" above (`bunx`, `pnpm exec`, `yarn`, `npx`). 2. **Prompt-capable commands (`add`, `migrate`, `schema`, `codemod`, `plugins`) need explicit flags/arguments from agents.** Run them with explicit inputs so they take the non-interactive path; otherwise the process rejects prompt-only invocations in non-interactive environments. Set `VENDURE_CLI_NON_INTERACTIVE=true` when calling the CLI from an agent so prompt-only invocations fail fast with examples instead of waiting on a terminal prompt. The exact non-interactive flags are in each command's reference file. For CLI plugins use `vendure plugins --json` / `vendure plugins add <pkg>` / `vendure plugins remove <pkg>` — there is no blanket-approve flag. 3. **`dev`, `start`, and `build --watch` are long-running processes.** Do not run them just to "check" something. Run them only when the user asks, and prefer running them in the background. 4. **Production-only installs may not include `@vendure/cli`.** Generated apps keep the CLI as a dev dependency, so after pruning dev dependencies, start compiled server/worker entrypoints with `node ./dist/...` or make the CLI a production dependency explicitly. 5. **Read the relevant `commands/*.md` file before building a command.** Valid targets and flags differ per command (e.g. `start` has no `dashboard` target; `--inspect` only applies to `dev`).
Auf GitHub ansehen