CLI Installation
The CLI-only install gives you the server and the codebolt command without the Electron desktop shell. Good for:
- Headless servers, CI runners, containers.
- Machines you access via SSH.
- Users who prefer the TUI over a GUI.
- Pairing with an already-running desktop instance elsewhere.
If you have the desktop app installed, you already have the CLI — skip this page and use the codebolt binary that came with it.
Installation methods
npm (cross-platform)
npm install -g codebolt
Works anywhere with Node.js 18+. Puts codebolt on PATH. Auto-detects whether to use the local install's server binary or connect to a running desktop app.
Homebrew (macOS, Linux)
brew install codebolt/tap/cli
Scoop / Winget (Windows)
scoop install codebolt-cli
# or
winget install Codebolt.CLI
Linux package managers
# Debian/Ubuntu
sudo apt install codebolt-cli
# Fedora/RHEL
sudo dnf install codebolt-cli
# Arch
yay -S codebolt-cli
Direct binary download
Binaries for every platform on the releases page. Download, extract, put on PATH.
curl -L https://<download-url>/codebolt-cli-linux-x64.tar.gz | tar xz -C /usr/local/bin
First run
codebolt --version
If the command prints a version, the CLI is installed. To start the server:
codebolt
This spawns the local Codebolt server and opens the TUI. The server stays running until you close it (Ctrl+C).
For server-only mode (no TUI, suitable for background/SSH use):
codebolt --server
The server runs in the foreground. Use a process manager or terminal multiplexer to keep it running.
CLI without a local server
If you're connecting to a remote Codebolt server (self-hosted for your team), you don't need a local server at all:
codebolt --connect <port> --provider <name> --api-key <key>
The CLI talks directly to the remote server. No local resources used except for the CLI process.
CLI alongside the desktop app
You can have both installed. They share the same server — if the desktop app is running, codebolt --version from a terminal confirms the CLI can see the install, and commands affect the same workspace.
By default, the CLI auto-detects a running desktop server and connects to it. If you have both the desktop app running AND a separate local server started via codebolt --server, there will be a port conflict. Pick one.
Headless setup
For a server that will only be accessed via CLI (no display, no TUI):
# Install CLI
npm install -g codebolt
# Start the server in server-only mode
codebolt --server &
# Verify
codebolt --version
# Configure a provider
codebolt --provider openai --api-key "$OPENAI_API_KEY"
# Open a project
codebolt --project /path/to/project
From here, all agent/flow/tool commands work. See CLI overview.
Running in CI
For CI environments (GitHub Actions, GitLab, etc.), the pattern is:
- Install the CLI.
- Start the server in daemon mode.
- Configure providers from CI secrets.
- Run agents or flows.
- Stop the server.
Example GitHub Actions step:
- name: Install Codebolt CLI
run: npm install -g codebolt
- name: Start Codebolt server
run: codebolt --server &
- name: Run reviewer agent
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
run: |
codebolt --prompt "review the PR diff" --agent reviewer --project "$GITHUB_WORKSPACE" --provider anthropic --api-key "$ANTHROPIC_API_KEY"
- name: Stop Codebolt server
if: always()
run: kill %1
Docker
Docker images are not currently available. Use the npm or binary install methods for CI and containerized environments.
Systemd (Linux)
To run the Codebolt server as a system service:
# /etc/systemd/system/codebolt.service
[Unit]
Description=Codebolt Server
After=network.target
[Service]
Type=simple
User=codebolt
Environment="CODEBOLT_DATA_DIR=/var/lib/codebolt"
ExecStart=/usr/local/bin/codebolt --server
Restart=on-failure
[Install]
WantedBy=multi-user.target
sudo systemctl enable --now codebolt
sudo systemctl status codebolt
This is the pattern for team self-hosted instances. See Self-hosting for the full guide.
Upgrading the CLI
npm
npm update -g codebolt
Homebrew
brew upgrade codebolt-cli
Direct binary
Download and replace the binary from the releases page.
Server and CLI versions should match. Mixing versions works but you may see warnings if the protocol changed. For production, pin both.
Uninstalling
npm
npm uninstall -g codebolt
Homebrew
brew uninstall codebolt-cli
Data (databases, projects, keys) is not removed. To purge everything:
rm -rf ~/.config/codebolt # Linux CLI
rm -rf ~/Library/Application\ Support/codebolt # macOS CLI
rmdir /s %APPDATA%\codebolt # Windows