Updates
Auto-updates, stable and nightly release channels, manual update checks, and agent CLI updates.
App Updates
Canopy uses electron-updater to check for and install app updates automatically. Updates are delivered through two release channels, and the same update flow applies to both.
Update Flow
- Check — Canopy checks for updates on startup and every 4 hours thereafter
- Download — when an update is found, it downloads automatically in the background
- Notify — an in-app notification shows download progress and completion
- Install — the update installs automatically when you quit Canopy
Update Channels
Canopy ships two release channels. Stable is the default and receives fully tested builds. Nightly gives you early access to features that haven't gone through manual QA yet.
| Channel | Feed URL | QA Level |
|---|---|---|
| Stable | https://updates.canopyide.com/releases/ | Full QA |
| Nightly | https://updates.canopyide.com/nightly/ | Pre-release (skips manual QA) |
Nightly builds use a pre-release version format like 0.5.x-nightly.20260403 and are retained for 14 days before being automatically cleaned up.
Switching Channels
Open Settings and go to the General tab. The Update Channel section has two buttons: Stable and Nightly.
Switching takes effect immediately. There's no need to restart Canopy. The next automatic update check (or a manual check) will pull from whichever channel you selected. Your existing settings and data are unaffected by the switch.
If you switch from nightly back to stable, Canopy handles the version difference automatically and installs the latest stable release, even if it has a lower version number than the nightly you were running.
Checking for Updates Manually
You can trigger an update check at any time from the application menu. This menu item is only available in packaged builds and won't appear when running Canopy from source.
Open the Canopy menu (top-left of the screen) and click Check for Updates...
Open the Help menu and click Check for Updates...
Open the Help menu and click Check for Updates...
If you're already on the latest version, a toast notification confirms it: "No Updates Available — Canopy vX.Y.Z is the latest version." If the check fails, you'll see an error toast with a Retry button.
When Auto-Update Is Disabled
Auto-update is automatically disabled in these cases:
- Development builds — when running from source (the app is not packaged)
- Windows portable — the portable Windows build doesn't support auto-update
- Linux without AppImage or package marker — on Linux, auto-update requires either the
APPIMAGEenvironment variable (set automatically for AppImage builds) or apackage-typemarker file (present in .deb packages). Without one of these, auto-update is disabled.
Linux AppImage and .deb packages both support auto-update. If you installed via .deb and updates aren't working, verify that the package-type marker file exists in your installation directory.
Agent CLI Updates
Agent CLI updates are separate from Canopy app updates. Each agent gets updated through its own package manager:
| Agent | npm | Other |
|---|---|---|
| Claude Code | npm install -g @anthropic-ai/claude-code | — |
| Gemini CLI | npm install -g @google/gemini-cli | — |
| Codex CLI | npm install -g @openai/codex | — |
| OpenCode | npm install -g opencode-ai@latest | brew upgrade opencode |
Version Checking
Canopy reads the installed version of each agent CLI and notifies you when updates are available. Current versions show up in agent settings.
Update Methods
Agent updates can be triggered three ways:
- npm —
npm install -g <package> - Homebrew —
brew upgrade <package> - Custom command — per-agent update commands defined in the agent registry