Install
The binary is viite (alias vt). The npm package is viite-cli — see
below for why those differ.
curl -fsSL https://viite.ai/install | bashInstalls Bun if it’s missing, then the package. This is the route to use if you are not sure which you want.
npm i -g viite-cliNeeds Bun already on your PATH: the installed script’s shebang is #!/usr/bin/env bun, so
without it the install succeeds and the command then fails with
env: bun: No such file or directory.
Standalone binaries
Section titled “Standalone binaries”Every GitHub release also carries compiled, runtime-free binaries — viite-macos-arm64,
viite-macos-x64, viite-linux-x64, viite-linux-arm64, viite-windows-x64.exe — built by
.github/workflows/cli-release.yml from the CLI’s own compile:all script.
Why not npm i -g viite?
Section titled “Why not npm i -g viite?”That package does not exist, and cannot:
npm error code E404npm error 404 Not Found - GET https://registry.npmjs.org/viite - Not foundnpm error 404 The requested resource 'viite@*' could not be found or you do not have permission to access it.npm runs a typosquat filter over new unscoped names and refuses anything too close to an existing
one; viite is rejected against vite, write and vfile. It’s a deterministic rule rather than a
name somebody claimed first — nobody can publish viite, us included. -cli was enough distance, so
the package is viite-cli.
A package’s name and the binaries it installs are independent, which is why what you type stays
viite. Only the one-time install string carries the suffix.
Verify the install
Section titled “Verify the install”viite --versionviite local doctor--version prints the installed package version. local doctor reads your runner config and
reports which of its recipes are actually runnable on this machine. See
Configuration for the environment variables it reads, and
Commands for everything you can run.
