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.

소스 정보

저장소
vendurehq/vendure
최근 소스 활동
2026년 10월 8일 06:44
감지된 SKILL.md 언어
영어
스타
8,521
포크
1,521

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
10 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
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`).
GitHub에서 보기