Upgrade
brew upgrade, plist-rename caveat, and recent release notes (v0.14.21 / v0.14.22).
Upgrading rensei is a single command for Homebrew users. This page also covers the launchd plist rename that affects machines running the local daemon.
Upgrade via Homebrew
brew upgrade renseiGoReleaser publishes a new cask on every tagged release. Homebrew's formula auto-update picks it up within minutes of a release. You can check what version you are on at any time:
rensei --versionUpgrade via direct download
If you installed via a binary download, replace the binary in place:
# macOS arm64 - adjust for your platform
curl -fsSL https://github.com/RenseiAI/releases/releases/latest/download/rensei_darwin_arm64.tar.gz \
| tar -xz -C /usr/local/bin rensei
chmod +x /usr/local/bin/rensei
rensei --versionLaunchd plist rename caveat
Affects daemon operators upgrading from v0.7.2 or earlier. The launchd service label was renamed from dev.rensei.daemon to dev.donmai.daemon between v0.7.2 and v0.7.3. Upgrading without cleaning up the old plist leaves a zombie v0.7.2 service. rensei host status continues to report the old version, and the new service fails to start.
How to tell if you are affected
Run:
launchctl list | grep renseiIf you see dev.rensei.daemon listed, you have the legacy plist installed. If only dev.donmai.daemon is present, you are clean.
Recovery steps
Unload the legacy service:
launchctl bootout gui/$(id -u) ~/Library/LaunchAgents/dev.rensei.daemon.plistRemove the legacy plist:
rm ~/Library/LaunchAgents/dev.rensei.daemon.plistReinstall the daemon with the current version:
rensei host uninstall
rensei host installVerify the new service is running under the correct label:
launchctl list | grep donmai
rensei host statusSystem-wide install
If you installed the daemon with --system (under /Library/LaunchDaemons/), substitute system/ for gui/$(id -u)/ in the launchctl bootout command and use sudo:
sudo launchctl bootout system /Library/LaunchDaemons/dev.rensei.daemon.plist
sudo rm /Library/LaunchDaemons/dev.rensei.daemon.plist
sudo rensei host uninstall --system
sudo rensei host install --systemAfter upgrading
After upgrading the binary, reinstall the daemon service so it picks up the new version:
rensei host uninstall && rensei host install
rensei host statusThe daemon JWT at ~/.rensei/daemon.jwt is automatically wiped and re-provisioned on host install and host uninstall. It is not wiped by a bare binary upgrade - the running daemon continues to use its existing JWT until you reinstall.
Check for breaking changes
The Releases page includes a changelog for every tagged version. Breaking changes are called out explicitly. As of v0.9.0, the overdue worker, machine, execution, top-level workarea/provider/kit, and duplicate daemon aliases were deleted outright (see Host, Host Kit, Host Provider, and Host Workarea), and fleet became a hidden deprecated alias for capacity, then was removed in v0.10.0 (see Fleet (removed)). Platform-specific deprecation notices for renamed commands appear on the Releases page.
Recent releases
v0.14.22 - 2026-08-30 - Donmai v0.72.8
Rebuild against Donmai v0.72.8 (see the Donmai v0.72.8 notes). The platform API is unchanged.
Features. Canonical session names now reach native harness startup: Claude and Pi launches carry the session displayName through --name, and Codex app-server threads are created with that same name instead of an anonymous thread. The binary pins Donmai v0.72.8, which also gives rensei agent chat / rensei session prompt an --idempotency-key flag and typed durable prompt receipt client fields - see Interactive Chat and Interactive Chat - durable prompt receipt fields. The new flags are additive; --json now emits deliveryTier, disposition, idempotencyKey, code, error, recoveryAction, and missingProjectionFields when the server provides them. Do not invent additional prompt flags.
Fix. Interactive receipt-bearing sessions no longer fail with a prepared-harness authority-digest mismatch. Preflight and spawn now reconcile the resolved model profile identically via one shared helper; a drift error names the drifting projection fields (digests only, never raw credential material). The digest algorithm itself is unchanged, so receipts persisted by earlier daemons stay valid.
v0.14.21 - 2026-08-30 - receipt forwarding (per-pool opt-in)
Feature. rensei capacity pool update <pool> --receipt-forwarding on|off (see Capacity - capacity pool update and Capacity Pools - receipt forwarding). The flag accepts exactly on or off and the positional <pool> may be an exact pool id (expool_…) or an unambiguous pool name scoped to the selected organization - unknown and ambiguous names are refused before any update. Human output reports the effective state; --json emits a secret-free receipt with requestedReceiptForwarding and effectiveReceiptForwarding. When on, admission and claim receipts reach the daemon; adaptation receipts are persisted under the state home (adaptation-receipts). Forwarding stays off unless explicitly enabled.
For the full changelog, see the Releases page and the rensei-tui / donmai changelogs.
Next steps
- Install - install paths and shell completions
- Host daemon - daemon lifecycle, logs, and diagnostics