Skip to main content
The meow CLI groups its verbs into four families. Run meow with no arguments to see this catalog plus live telemetry about your install and cache.

Command catalog

Run

run · dev · task · test · x · eval — execute files, scripts, and packages.

Packages

install · add · remove · search — manage dependencies.

Quality

check · lint · fmt · bundle — the toolchain.

Insight

why-dep · why-large · why-slow · doctor · sync · ls — observability & lifecycle.

Full command list

CommandAliasesSummary
meow initScaffold a new project (--mode, --force, --no-install).
meow run <target>Run a file or a package.json script.
meow devRun the dev script (meow run dev).
meow task <name>Run a package.json script by name.
meow testRun *.test.* / *.spec.* in deterministic isolates.
meow x <pkg>executeEphemeral package execution (npx/bunx).
meow installiResolve + install + materialize.
meow add <pkg…>Add a dependency, then install.
meow remove <pkg…>rm, del, delete, uninstallRemove a dependency, then install.
meow search <query>s, findSearch the npm registry.
meow check [paths…]Type-check via tsc.
meow lint [paths…]Lint over the shared syntax tree.
meow fmt [paths…]Format (--check for CI).
meow bundle <entries…>Bundle via Rolldown (--out).
meow why-dep <pkg>Trace dependency provenance.
meow why-largeLargest packages by cached size.
meow why-slow [target]Cold-start timing.
meow doctorEnvironment / config / lockfile health.
meow syncRegenerate the shadow tsconfig and types.
meow lsList active dev servers.

Global behaviors

When the first argument isn’t a known command, meow infers intent: a script name or file path becomes meow run …; an unknown name becomes meow x …. It also strips competitor flags (--shell, --silent, --no-warnings) and Deno-style run flags (-A, --allow-all, --unstable-*). Full rules in Running code.
A near-miss command gets a suggestion: Unknown command 'installc'. Did you mean 'install'?
Invoke meow as meowx, mwx, npx, pnpx, or bunx and it auto-routes to meow x. Invoke it as node (or with MEOW_NODE_SHIM=1) and it behaves as the node shim.
meow propagates your program’s exit code (and process.exit(n)) to the shell, taken modulo 256 like any process. Quality commands exit non-zero on findings, so they gate CI directly.
Output is rich in a TTY and plain in pipes/CI. Honors NO_COLOR, FORCE_COLOR, CLICOLOR_FORCE, and CI. See environment variables.
meow <command> --help prints on-brand, colorized help for any command.