Install Excellent
Excellent runs beside your AI agent and checks its work. Install it in a repository you already use with that agent.
The install command
The script is plain POSIX shell. Read it before you pipe it to a shell — that is the point of publishing it.
Works with the agent you already use
Before you start
- macOS. The platform we develop and test on.
- Node.js 22.3 or newer. The installer checks your Node version and refuses to continue below
22.3.0. The published package’s ownenginesfield is looser than that, sonpm install -gwill not stop you on an older Node — the CLI just needs 22.3. - Permission to install a global npm package. Excellent installs as
@excellent-so/cliwithnpm install -g. If your global npm prefix needssudo, fix the prefix rather than running the installer as root.
What the installer does
- Checks your Node version and stops if it is too old.
- Picks an install source: a local monorepo checkout if you are in one, otherwise the published npm package, otherwise the release tarball on our CDN.
- Verifies any downloaded tarball against the
SHA256SUMSfile published beside it. This fails closed: a mismatch, a missing checksum file, or a missing entry for the artifact aborts the install with a non-zero exit. - Registers the Excellent MCP server in every MCP-capable coding agent it detects — Claude Code, Cursor, Codex and others — by writing an
excellententry into each one’s own config file. It adds that entry and leaves the rest of the file alone. See Claude Code and Cursor for the exact files and how to undo it. - Tells you if
~/.local/binis missing from yourPATH.
It is idempotent — re-running it is safe. Add --dry-run to print what it would do and change nothing.
Verify the install
excellent --versionThat prints excellent and the version you installed. From npm today that is 0.1.0, checked September 23, 2026. If the command is not found, open a new terminal so your shell picks up ~/.local/bin, then try again.
Next, run excellent doctor, which reports the runtime it resolved, the local database, detected model providers and coding CLIs, your PATH, and the keystore. The quickstart shows its output on a real machine.
Where the files live
| Path | What it holds |
|---|---|
~/.excellent/data.db | Local database |
~/.excellent/cli.toml | CLI preferences |
~/.excellent/chat-sessions/ | Saved chat sessions |
./.excellent/context.md | Per-repository context, written by `excellent init` |
./.excellent/cli.toml | Per-repository preference overrides |
./AGENTS.md | Agent instructions, written by `excellent init` |
Set EXCELLENT_DATA_DIR to move the local database and sessions somewhere else.
Uninstall
excellent-mcp uninstall-skills # remove the MCP registrations and shims
npm uninstall -g @excellent-so/cli
rm -rf ~/.excellent # deletes the local database and all local recordsThe last step is irreversible. Everything Excellent recorded is in that directory.
Windows and Linux
Windows. There is a PowerShell installer at excellent.so/install.ps1, run with irm https://excellent.so/install.ps1 | iex. It mirrors the shell installer and installs the same package. Windows is not a platform we test on, and it has no CI coverage, so treat it as unsupported for now.
Linux and WSL. The installer is POSIX shell and the CLI is plain Node, so it generally works. It is also untested. If you run Excellent on either, tell us what broke: hello@excellent.so.
Mac app
A macOS desktop app is in progress. We will not offer a download until there is a signed, notarized build, so today the CLI is the product.
First run
The copied command installs the CLI, moves into your repository and runs excellent init. That scaffolds AGENTS.md and .excellent/ in the repository. The quickstart takes it from there, through a first checked task.
Using AI agents across a team? Email Matt.