Upgrade Reboot
Reboot ships as a set of artifacts that all share a single version
number: the reboot Python package on PyPI, the @reboot-dev/reboot
npm package, the rbt CLI (part of the Python package), and the
Reboot coding-agent plugin
for Claude Code and Codex. An application, the rbt CLI that runs
it, and (if you use one) the agent plugin must all be on the same
version.
How you'll know an upgrade is available
-
rbtchecks PyPI (at most once per day) and prints a notice when a newer Reboot release exists:A newer Reboot (X.Y.Z) is available; this `rbt` is A.B.C. Codingagents: run the Reboot `upgrade` skill to upgrade this application.Humans: see https://docs.reboot.dev/upgrade.Set
REBOOT_NO_VERSION_CHECK=trueto disable this check; it is also disabled automatically when theCIenvironment variable is set. -
If your
rbtCLI and your application'srebootdependency ever diverge (for example, a teammate upgraded the app but you still have an older plugin or CLI), the application refuses to start and the error tells you which side is behind.
Upgrading with a coding agent (recommended)
If you build with the Reboot plugin for Claude Code or Codex:
-
Update the plugin, so that its skills and migration notes match the new release. Re-run the installer:
curl -fsSL https://reboot.dev/install.sh | bash(For Claude Code,
claude plugin update reboot@reboot-pluginis equivalent.) Then restart your agent session so the updated plugin loads. -
Ask the agent to upgrade the application — for example, "upgrade this app to the latest Reboot". The plugin's
upgradeskill applies any migration steps the new release needs, bumps your dependency pins, regenerates code, and runs your tests.
Upgrading by hand
-
Read the migration notes for every version newer than the one your application currently pins, up to and including the one you are upgrading to: reboot-plugin/skills/upgrade/migrations. Apply the code changes they describe, in version order. Many releases need no code changes at all.
-
Bump your dependency pins to the new version — all of them:
pyproject.toml:reboot==X.Y.Zand, in your development dependencies,reboot[dev]==X.Y.Zpackage.json:@reboot-dev/reboot(and any other@reboot-dev/*packages)Dockerfile:FROM ghcr.io/reboot-dev/reboot-base:X.Y.Z
-
Reinstall dependencies (e.g.
uv syncornpm install), then regenerate code:rbt generate -
Run your tests.