- It upgrades the CLI with
uv tool upgrade --reinstall-package piloop piloop, from the source that you installed it from: PyPI (the latest release), the GitHub repo (the latestmain), or a local checkout. It prints the version before and after. - It runs
piloop install-skillsfrom the new code, so the skills of every harness on yourPATHmatch the new CLI. A running harness reads them at its next session. - It restarts a running daemon in place, as
piloop restartdoes. The running agents continue. The new code migrates the database as it starts, and connects to the agents again. When no daemon runs, the upgrade migrates the database itself, and the daemon stays stopped. - It runs
piloop doctor. When a check fails, the upgrade exits with a non-zero status.
piloop --version prints the version and the commit, for example piloop 0.1.0 (a1b2c3d).
Check the install
piloop doctor is read-only. You can run it at any time. It checks that:
- The daemon runs the installed code.
- The database has the current schema.
- The
piloop.tomlof every project loads, and its MCP servers can start. - Every harness on your
PATHhas the skills of this CLI. - The harness CLIs are on your
PATH, and Herdr answers with its hooks installed for them.
The database
Everypiloop command migrates the database to its own schema when it starts. You never recreate it by hand.
piloop migrate does the same and prints what changed, for example schema: 0001 → 0002.
An older piloop refuses to open a database that a newer one migrated, and tells you to run piloop upgrade.
Deprecated configuration keys
When a release renames or removes a key ofpiloop.toml, the old key keeps working for at least one minor release.
Each use shows a PiloopDeprecationWarning with the file, the line, the new key and the release that removes the old
one. The changelog lists every deprecation.
Other install types
- A checkout that you installed with
uv syncis not a uv tool. Upgrade it withgit pull. - Entire has its own installer. Run it again to upgrade Entire:
curl -fsSL https://entire.io/install.sh | bash. - An unexpected error prints one line. Set
PILOOP_DEBUG=1to see the full traceback.