kumo
Getting Started

Installation

Install kumo β€” the CLI, the desktop app, nightly builds, or from source.

The kumo binary is the daemon + TUI + control CLI in one, installed via the cargo-dist installer generated by the release pipeline:

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/marcrdgz/kumo/releases/latest/download/kumo-installer.sh | sh

Desktop app

Installed separately from its Kumo-<arch>.dmg on the release page (macOS). The app manages the whole install: if the kumo CLI is missing or outdated it offers to install/update it, and it can self-update from a newer .dmg β€” all from inside its interface.

Nightly

A rolling build of main (macOS ARM + Linux x86_64; the full target matrix can be built on demand via a manual workflow dispatch):

kumo update --nightly

From source

Install a Rust toolchain (cargo).

Install Zig on PATH β€” build.rs compiles the vendored libghostty-vt library at build time (the vendored build pins Zig 0.16.x).

cargo install --path app/kumo --locked
# or: make install

macOS with Xcode β‰₯ 26.5

Point builds at the CommandLineTools SDK (DEVELOPER_DIR=/Library/Developer/CommandLineTools) β€” the Xcode 26.5 SDK's libSystem.tbd no longer lists the arm64-macos slice, which can make Zig native links fail with undefined libSystem symbols. The Makefile exports the CommandLineTools SDK automatically.

Updating

The desktop app is the "smart" interface for updates: on launch it checks both the kumo CLI and the desktop app against the latest release, installs the CLI automatically when it's missing, and shows a one-click banner when either is outdated.

The TUI keeps its own kumo update for the CLI:

kumo update            # update to the latest stable release
kumo update --nightly  # update to the latest nightly build
kumo update --check    # report availability (exit 0 = up to date, 1 = update)

At startup kumo checks (at most once per day for stable, every 6 h for nightly) for a newer release and, if one exists, shows a banner at the top-right with a red βœ• to dismiss it. Disable the check with update-check = false in the config or by setting KUMO_NO_UPDATE=1.

On this page