> ## Documentation Index
> Fetch the complete documentation index at: https://docs.braintrust.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# bt update

> Update the bt CLI binary in place.

`bt update` updates the CLI binary in place and updates installed tracing plugins. It works for installs made with the standalone shell or PowerShell installer.

```bash theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
bt update
bt update --check
bt update --channel canary
```

`bt update` works as follows:

* **Background tracing process:** Before checking for or installing an update, `bt update` stops the background tracing process with `bt trace stop`. If that fails, `bt update` exits before installing anything. Run `bt trace stop` and retry. A tracing process that is not running is not an error, and the process starts again on the next traced agent event.
* **Tracing plugins:** After `bt` is up to date, `bt update` runs [`bt trace update`](https://docs.braintrust.dev/reference/cli/trace#bt-trace-update) for each agent that has a tracing settings file from [`bt trace enable`](https://docs.braintrust.dev/reference/cli/trace#bt-trace-enable). This happens even when the stable release is already current. Saved tracing settings are preserved, and agents without a settings file are not changed. If the CLI update fails, plugins are not updated.
* **Failed plugin updates:** If a plugin update fails, `bt update` still attempts the remaining plugins, then exits with an error that includes a `bt trace update <agent>` command to retry. A successfully updated CLI is not rolled back.

Restart your coding agents after `bt update` to load the updated plugins.

> [!NOTE]
>
> When `BRAINTRUST_DAEMON_CONFIG` (`BT_DAEMON_CONFIG` in `bt` v0.25.0 and earlier) is set, every agent shares one tracing settings file, so `bt update` skips plugin updates and prints a warning. Run `bt trace update <agent>` for each agent you trace instead.

> [!NOTE]
>
> If your installed version does not recognize `bt update`, run `bt self update` once. Versions before v0.16.0 used the older command. After the upgrade, use `bt update`.

If `bt` came from the [`braintrust` npm package](https://docs.braintrust.dev/reference/cli/quickstart#install), update that package:

```bash npm theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
npm install braintrust@latest
```

```bash pnpm theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
pnpm add braintrust@latest
```

If you installed `bt` with [mise](https://docs.braintrust.dev/reference/cli/quickstart.md#install), upgrade the configured tool:

```bash theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
mise upgrade "github:braintrustdata/bt" --bump
```

npm and mise installations don't update tracing plugins automatically. After upgrading, run [`bt trace update <agent>`](https://docs.braintrust.dev/reference/cli/trace#bt-trace-update) for each agent you trace.

If your Windows installation is running `bt` v0.16.x or earlier, update it by rerunning the [PowerShell installer](https://docs.braintrust.dev/reference/cli/quickstart.md#install). After v0.17.0 is installed, use `bt update` for later updates.

## Flags

| Flag | Description |
| - | - |
| `--check` | Check for updates without installing. Does not stop the background tracing process or update plugins. |
| `--channel stable` or `--channel canary` | Update channel. Defaults to the build channel |

If GitHub rate-limits an update check, set `GITHUB_TOKEN` in the environment.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.