---
canonical: "https://agi-labo.com/en/tools/cockpit/docs/cockpit-cli/reference/update"
title: "cockpit update"
description: "Generated reference for cockpit update, including its syntax, options, results, and constraints from the canonical cockpit CLI source."
section: "Reference"
order: 117
pageType: reference
lastVerifiedVersion: 4.61.0
lastVerifiedAt: "2026-08-27"
draft: false
surfaces:
  - cli
operatingSystems:
  - windows
  - macos
  - linux
plans:
  - guest
  - member
navigation: false
---

This reference is generated from the same canonical source distributed as cockpit CLI help. See [Cockpit CLI](/en/tools/cockpit/docs/cockpit-cli) for concepts and safe operating guidance.

Inspect, check, or install AGI Cockpit updates.

```bash
cockpit update status
cockpit update check [--wait-download] [--timeout <1-300 seconds>]
cockpit update install --confirm
cockpit update download-page
```

`status` always answers and reports `capability`: `automatic` on packaged macOS (download and installation), `manual` on packaged Linux (check here, install by hand), `store` on Windows appx builds, and `unavailable` on development and unsupported builds. `check` only runs where `canCheck` is true — that is `automatic` and `manual`. On a `store` or `unavailable` build it returns HTTP 409 `update_check_unavailable` with the resolved `downloadPageUrl` instead of silently reporting no update. `download-page` works everywhere and opens the resolved download or Microsoft Store page.
`install --confirm` installs a downloaded update on automatic-update builds, then restarts AGI Cockpit and terminates every running task. It returns `update_not_ready` until `check --wait-download` has downloaded an update, and `update_install_unavailable` with a download URL on manual, Store, development, and unsupported builds. The confirmation flag is mandatory because a successful request ends the calling task.

`status` also returns `updaterLog`, a summary of the persistent updater log: `lastCheck`, `lastDownload`, `lastError`, the last install attempt (`requestedAt`, `version`, `retryCount`, and `outcome` of `pending`, `quit_reached`, `stalled`, `abandoned`, `unavailable`, `completed`, or `failed`), and the last few log entries. AGI Cockpit records every update check, download, verification, install request, and restart to `~/.agi-tools/data/cockpit/logs/updater.jsonl`, including electron-updater's own messages, and rotates the file at 2 MB with two archives (`updater.jsonl.1`, `updater.jsonl.2`). Quitting with a downloaded update — the automatic install on app quit — is logged the same way as an explicit `install`.

When an install request hands off to the macOS installer but the app does not quit within five minutes, the log records the stall and re-requests the install from Squirrel once; a second stall is logged as `abandoned`, and a quit that still arrives afterwards is recorded. On the next start AGI Cockpit compares the running version with the version of the last install attempt and appends `install_completed` or `install_failed`, so an installer that failed after the app quit is visible in `outcome` instead of being reported as a successful quit. A `failed` verdict is not final: launching the old bundle while the installer is still running records the failure once, and the outcome corrects itself to `completed` as soon as the requested version actually runs. File contents, prompts, credentials, tokens, e-mail addresses, file paths, and URL paths are never written to that log, and the same summary is included in the diagnostic export.
