Skip to content

Install Bifrost

Install the native Bifrost CLI into an isolated environment with uv:

Terminal window
uv tool install brokk-bifrost
bifrost --version

Or install it with pipx:

Terminal window
pipx install brokk-bifrost
bifrost --version

The PyPI package contains the compiled Rust executable; it does not run through Python and does not download another Bifrost binary. Published wheels support macOS on Apple Silicon and Intel, glibc Linux on x86-64 and ARM64, and x64 Windows. Use the install script or Cargo on the other platforms listed below.

Run a released CLI without installing it persistently:

Terminal window
uvx brokk-bifrost --version

Upgrade or remove a uv installation with uv tool upgrade brokk-bifrost or uv tool uninstall brokk-bifrost. For pipx, use pipx upgrade brokk-bifrost or pipx uninstall brokk-bifrost. The distribution name is brokk-bifrost, while the command it installs is bifrost.

Install the native CLI with npm:

Terminal window
npm install -g @brokkai/bifrost
bifrost --version

Run it one time without a persistent install:

Terminal window
npx -y @brokkai/bifrost --version

The root package installs one checksum-verified native package for the current supported operating system and CPU. On Linux it requires glibc; musl platforms are rejected. It does not download or build Bifrost during installation. Upgrade it with npm update -g @brokkai/bifrost. Remove it with npm uninstall -g @brokkai/bifrost.

The CLI package is @brokkai/bifrost. The separate @brokk/bifrost-agent package contains the Pi extension and host MCP integration.

After Bifrost and one or more coding hosts are installed, register a user-level MCP server named brokk:

Terminal window
bifrost --install

The command registers the current Bifrost executable with installed Codex, Claude Code, OpenCode, Kimi Code, Hermes, and Oh My Pi clients. It starts Bifrost with the core toolset. The server starts without a fixed project and uses the workspace root that the client supplies for each session.

The command skips clients that are not installed. It does not install client applications, skills, instruction files, or extensions. Run it again after the Bifrost executable moves to a different path.

Oh My Pi receives a native user MCP entry. It reads Bifrost’s standard MCP instructions and adds them to its model prompt.

Original Pi uses the separate @brokk/bifrost-agent extension described on the Pi page. The command does not install or change that extension.

Install from the BrokkAi Homebrew tap on macOS (Apple Silicon and Intel) or Linux (x86-64 and ARM64 glibc):

Terminal window
brew install brokkai/tap/bifrost
bifrost --version

The formula installs the bifrost CLI from the release archive for your platform and verifies its published SHA-256 checksum. Upgrade with brew upgrade bifrost and uninstall with brew uninstall bifrost. The tap regenerates its formulae from tagged releases on a schedule, so upgrades follow new Bifrost releases automatically. For Windows, musl Linux, or Android, use the methods below.

Install the released binary with the install script:

Terminal window
curl -fsSL https://raw.githubusercontent.com/BrokkAi/bifrost/refs/heads/master/install.sh | bash

The script detects your platform, downloads the matching release archive from GitHub, verifies its published SHA-256 checksum, and installs bifrost into ~/.local/bin. It offers to add that directory to your PATH when it is missing and the terminal is interactive.

PlatformArchitectureInstall scriptRelease target
macOSApple Silicon and IntelYesuniversal-apple-darwin
Linux (glibc 2.28+)x86-64Yesx86_64-unknown-linux-gnu
Linux (musl, such as Alpine)x86-64No, unsupportednone published
Linux (glibc 2.28+)ARM64Yesaarch64-unknown-linux-gnu
Linux (musl, such as Alpine)ARM64No, unsupportednone published
WSL 1 and WSL 2x86-64 and ARM64Yes, as LinuxLinux targets above
Android (Termux)ARM64Yesaarch64-linux-android
Windowsx64 and ARM64No, use Cargo.zip on the release page

On Linux the script installs the GNU archive for your architecture. Both GNU archives require glibc 2.28 or newer. On a musl system the script stops before downloading and explains that no supported prebuilt release is available, rather than installing a glibc binary that cannot run.

WSL is Linux, so run the same command inside your WSL shell. It installs the Linux binary, which runs inside WSL only. Windows-native tools, such as an editor or agent installed on the Windows side, cannot execute it, so install the Windows build separately when something outside WSL needs to spawn bifrost.

The install script does not cover Windows, whose release assets are .zip archives. Use Cargo, which works on Windows and builds the same version from source, or download the archive for your architecture from the release page and place bifrost.exe on your PATH yourself. Running the script from Git Bash, MSYS2, or Cygwin does not work either, and it will say so rather than installing a binary Windows cannot run.

Pipe-to-shell installs run remote code. To read the script before running it, download it first:

Terminal window
curl -fsSL -O https://raw.githubusercontent.com/BrokkAi/bifrost/refs/heads/master/install.sh
less install.sh
bash install.sh

The script accepts these environment variables:

VariablePurpose
INSTALL_DIRInstall directory. Defaults to ~/.local/bin.
BIFROST_INSTALL_DIRSame as INSTALL_DIR, with higher precedence.
BIFROST_VERSIONRelease tag to install, for example v0.8.17. Defaults to the latest release.
BIFROST_GITHUB_OWNERGitHub owner to download from. Defaults to BrokkAi.
GITHUB_TOKENToken used for GitHub API rate limits.
PROFILEShell profile to update when the install directory is not on PATH.

Pin a version and choose the directory like this:

Terminal window
BIFROST_VERSION=v0.8.17 INSTALL_DIR=/usr/local/bin \
bash -c "$(curl -fsSL https://raw.githubusercontent.com/BrokkAi/bifrost/refs/heads/master/install.sh)"

Re-running the script installs over the existing binary, so it also serves as the upgrade path.

Cargo builds the CLI from source and works on supported platforms with a Rust toolchain, including Windows. Musl builds are not tested or supported, but users may attempt the same source installation command:

Terminal window
cargo install brokk-bifrost --locked --force

For local development, build this checkout:

Terminal window
cargo build --bin bifrost

Check that the binary is available, whichever method you used:

Terminal window
bifrost --help

When configuring tools that spawn Bifrost, prefer an absolute binary path unless bifrost is intentionally installed on the host PATH.

The packaged agent plugin uses a separate launcher that can download its pinned, checksum-verified Bifrost release into a user cache. See Data and Trust Boundaries for resolution order, cache locations, and the controls that disable or relocate downloads.

The Python API is a separate distribution from the CLI. Add the native Python client to a uv project with:

Terminal window
uv add brokk-bifrost-searchtools

Or install it with pip:

Terminal window
pip install brokk-bifrost-searchtools

Import it as bifrost_searchtools. See Python Client for the API surface and local development workflow.