Files
openclaw/docs/cli/update.md

78 lines
2.3 KiB
Markdown
Raw Normal View History

2026-01-10 20:32:19 +01:00
---
summary: "CLI reference for `clawdbot update` (safe-ish source update + optional daemon restart)"
read_when:
- You want to update a source checkout safely
- You need to understand `--update` shorthand behavior
---
# `clawdbot update`
Safely update a **source checkout** (git install) of Clawdbot.
2026-01-13 07:58:47 +00:00
If you installed via **npm/pnpm** (global install, no git metadata), use the package manager flow in [Updating](/install/updating).
2026-01-10 20:32:19 +01:00
## Usage
```bash
clawdbot update
clawdbot update status
2026-01-17 11:40:02 +00:00
clawdbot update --channel beta
2026-01-20 13:33:31 +00:00
clawdbot update --channel dev
2026-01-17 11:40:02 +00:00
clawdbot update --tag beta
2026-01-10 20:32:19 +01:00
clawdbot update --restart
clawdbot update --json
clawdbot --update
```
## Options
- `--restart`: restart the Gateway daemon after a successful update.
2026-01-20 13:33:31 +00:00
- `--channel <stable|beta|dev>`: set the update channel (git + npm; persisted in config).
2026-01-17 11:40:02 +00:00
- `--tag <dist-tag|version>`: override the npm dist-tag or version for this update only.
2026-01-10 20:32:19 +01:00
- `--json`: print machine-readable `UpdateRunResult` JSON.
- `--timeout <seconds>`: per-step timeout (default is 1200s).
2026-01-17 11:40:02 +00:00
Note: downgrades require confirmation because older versions can break configuration.
## `update status`
Show the active update channel + git tag/branch/SHA (for source checkouts), plus update availability.
```bash
clawdbot update status
clawdbot update status --json
clawdbot update status --timeout 10
```
Options:
- `--json`: print machine-readable status JSON.
- `--timeout <seconds>`: timeout for checks (default is 3s).
2026-01-10 20:32:19 +01:00
## What it does (git checkout)
2026-01-20 13:33:31 +00:00
Channels:
- `stable`: checkout the latest non-beta tag, then build + doctor.
- `beta`: checkout the latest `-beta` tag, then build + doctor.
- `dev`: checkout `main`, then fetch + rebase.
2026-01-10 20:32:19 +01:00
High-level:
1. Requires a clean worktree (no uncommitted changes).
2026-01-20 13:33:31 +00:00
2. Switches to the selected channel (tag or branch).
3. Fetches and rebases against `@{upstream}` (dev only).
4. Installs deps (pnpm preferred; npm fallback).
5. Builds + builds the Control UI.
6. Runs `clawdbot doctor` as the final “safe update” check.
2026-01-10 20:32:19 +01:00
## `--update` shorthand
`clawdbot --update` rewrites to `clawdbot update` (useful for shells and launcher scripts).
## See also
2026-01-10 21:14:30 +01:00
- `clawdbot doctor` (offers to run update first on git checkouts)
2026-01-20 13:33:31 +00:00
- [Development channels](/install/development-channels)
2026-01-10 20:32:19 +01:00
- [Updating](/install/updating)
- [CLI reference](/cli)