Skip to content

Getting started

You need:

  • access to your team’s baum URL;
  • a GitHub account that can access the repositories you want to set up;
  • Git and either Claude Code or Codex CLI sessions recorded locally; and
  • a GitHub origin remote on each local repository.

On Linux or macOS, run:

Terminal window
curl -fsSL https://static.usebaum.com/install.sh | sh

The installer writes baum to ~/.local/bin by default. If that directory is not already on your PATH, add it in your shell configuration.

Confirm the installation:

Terminal window
baum --version

Run this from any directory:

Terminal window
baum setup --all --server https://example.usebaum.com/api

Replace example.usebaum.com with the hostname supplied by your operator. Keep the /api suffix.

setup --all guides you through the complete first-run flow:

  1. It displays a browser URL and one-time code for device login.
  2. After you approve the device, it saves a token in your user configuration directory.
  3. It finds local checkouts from supported-agent session metadata and matches them to connected repositories you can access.
  4. It shows one plan and asks once before changing repositories or uploading data.
  5. For each matching checkout, it installs and configures Entire for detected coding agents and Git hooks, requests a GitHub repository sync, and uploads its local sessions.

Detected secrets are redacted locally before the archive is uploaded. Missing checkouts and local repositories that are not connected are reported but skipped; repositories are never cloned. One repository failing does not stop the others. On later runs, setup leaves sync and upload alone unless you pass --sync or --upload. Pass --skip-entire if you do not want setup to install or configure Entire.

This changes files in each matching repository: Entire adds its repository settings, five Git hooks, and hook configuration for each detected coding agent, and setup then points the agent hook commands at baum. Review the complete list of files and hooks before running setup if you need to audit those changes, and commit the settings files setup reports.

Once those files are committed, other collaborators should also install the CLI and run baum setup --all on their machines. In a fresh clone whose tracked configuration has already landed, the first agent session can install the Git hooks and the entire executable automatically, but setup is still the onboarding path that authorizes uploads and covers existing local checkouts.

To set up only one repository instead, run from inside that checkout:

Terminal window
baum setup --server https://example.usebaum.com/api

Run this from the repository whenever you want to upload sessions recorded since your previous upload:

Terminal window
baum upload

If the repository has moved on disk, include its former location so sessions recorded there can also be found:

Terminal window
baum upload --previous-path /old/path/to/repository

See the CLI reference for every available command and option.