Skip to content

Installation

koda is a single static binary with no runtime dependencies. Install it from a package manager if you have one, or run the installer script, which builds from source and will offer to install Rust first if it is missing.

First run, from the shell100×30 · 0:21
The three commands that tell you the install worked: the version, the models your server reports, and one real answer.
Terminal window
brew tap simpletoolsindia/koda # once, ever
brew install koda

After the tap, the short name is all you need — brew install koda, brew upgrade koda, brew uninstall koda. The formula installs the prebuilt binary for your platform (macOS and Linux, Intel and ARM), so it is a download rather than a build, and it brings ripgrep with it for the fast path in koda’s search.

On Homebrew 6 and newer, a third-party tap has to be trusted once before it can be loaded. If you see Refusing to load formula ... from untrusted tap:

Terminal window
brew trust simpletoolsindia/koda

Then tap and install as above. Older Homebrew does not ask.

Clone and run the script for an interactive menu — install, install system-wide, update, uninstall:

Terminal window
git clone https://github.com/simpletoolsindia/koda.git && cd koda
./install.sh

Or take the one-liner, which clones for you:

Terminal window
curl -fsSL https://raw.githubusercontent.com/simpletoolsindia/koda/master/install.sh | bash

It installs to ~/.local/bin, so no sudo is needed. For a system-wide install:

Terminal window
PREFIX=/usr/local ./install.sh

On macOS the installer re-signs the copied binary so Gatekeeper does not kill it.

At the end of an interactive install you are asked about two programs. koda needs neither of them to run.

Extra What it buys you If you decline
ripgrep Faster search across large projects. koda’s in-process search is used instead.
tesseract Offline OCR, so a screenshot reaches a model with no vision. Set ocr_model to a vision model instead — see Files, images & OCR.

Both are a single [Y/n] prompt. When the installer is piped (curl … | bash) it has no terminal to ask at, so both are skipped without one.

The installers build master. To build something else, either check it out and run the script from the checkout, or name it:

Terminal window
KODA_BRANCH=my-branch ./install.sh
Terminal window
koda --version
koda config # the effective configuration, after every layer is applied

If koda is not found, the bin directory is not on your PATH. The installer prints the exact line to add to your shell profile; on macOS and Linux that is usually:

Terminal window
export PATH="$HOME/.local/bin:$PATH"

Re-run ./install.sh and pick update from the menu — it pulls the branch you are on and rebuilds. Uninstall removes the binary. Your configuration (~/.config/koda/config.toml) and per-project data (<project>/.koda/) are left alone; delete those by hand if you want them gone.