Skip to Content
GuidesDeploymentUpdate Cmdop

Automatic updates

Cmdop keeps itself current without being asked: the agent checks hourly and installs a newer version on its own. You can keep that, downgrade it to notifications with cmdop update schedule --notify-only, stop checking entirely, or pin an exact version. Every automatic update is checksum-verified and health-checked first, so a bad download aborts rather than installs.

Cmdop updates itself by default. The background agent checks for a newer version about once an hour and, when it finds one, downloads and applies it, then restarts into the new binary. If you are planning a change window, decide what you want this machine to do before the window — see Restrict or disable automatic updates.

An automatic update is not a blind swap. The download is checked against the publisher’s checksum, and a mismatch aborts the update rather than applying it. The new binary is then run once as a health check before it replaces the running one; if it cannot start, the update is skipped and your working binary is left untouched.

Two cases opt out on their own, without any configuration from you:

  • CI environments are detected and skipped, so a build agent will not replace its own binary mid-pipeline.
  • A system-path install that would need elevation falls back to notifying instead of applying, because it cannot complete the swap unattended. On those machines the manual path below is the real one.

See what is running and what is available

cmdop update check cmdop status

update check reports whether a newer version exists without installing it.

Update on demand

cmdop update # check, download, and prompt to install cmdop update apply # install a version already downloaded in the background cmdop status

Do not run sudo cmdop update. The download lands in root’s cache while the apply step looks in yours, which produces a “no pending update to apply” loop. When the binary lives under a system path, download as your normal user and elevate only the install:

cmdop update # downloads as you sudo -E cmdop update apply # installs, preserving your environment

After any update, verify that the service and agent returned to the expected state. If the new version is installed but the old one still answers, restart:

cmdop restart cmdop status

If the machine is remote-only, keep a separate recovery path before you update it.

Restrict or disable automatic updates

Inspect the current schedule first:

cmdop update schedule

For a server where an operator approves every maintenance action, keep the checks but stop the automatic install:

cmdop update schedule --enable --notify-only --interval 24h

To stop background checking entirely on this machine:

cmdop update schedule --disable

--auto-apply turns automatic installation back on. Use it when your rollout, health checks, and recovery path can handle an unattended binary replacement — which is the default posture, and the right one for most machines.

The web console’s Settings → Auto-update toggle is the same control for operators who do not want to use the CLI: turning it off leaves updates as notify-only on that machine.

Pin a version

Two environment variables give a one-shot or process-scoped override, which is what you want inside a CI job or a locked-down image:

CMDOP_NO_AUTO_UPDATE=1 cmdop ... # do not check for updates at all CMDOP_PIN_VERSION=1.4.2 cmdop ... # refuse anything but this version

CMDOP_PIN_VERSION is a hard lock: the updater refuses to move off the named version. Use cmdop update schedule --disable when you want the same effect persisted on the machine rather than per invocation.

What is not a contract

Cmdop does not promise a particular staging path or restart sequence as a public contract. Operate through the commands above rather than editing updater files directly.

Common questions

Does Cmdop update automatically?

Yes. The background agent checks for updates by default and can apply a newer verified binary automatically. CI environments and system-path installs that need elevation fall back instead of replacing themselves unsafely.

How do I stop automatic Cmdop updates?

Use cmdop update schedule --disable to stop background checks on the machine, or cmdop update schedule --enable --notify-only --interval 24h to keep checks while requiring an operator to approve the install.

How do I pin Cmdop to one version?

Use CMDOP_PIN_VERSION=<version> for a process-scoped hard lock, or disable the update schedule when you want the machine to stay on its installed version until an operator changes it.

Last updated on