GuidesRunning & maintaining

How to turn off OpenClaw's update banner (and why Update now does nothing)

The real key is update.checkOnStart: false. The widely-cited updates.notify never shipped and crash-loops pinned gateways. Plus the not-git-install button, explained.

July 31, 2026The Everpod team
The short answer

To turn off OpenClaw’s “update available” banner, set update.checkOnStart: false in your gateway config and restart. That is the real, shipped key. Guides citing updates.notify are describing a setting that never shipped, and on pinned installs an unknown config key doesn’t get ignored, it crash-loops the gateway at boot.

What the banner is (and isn’t)

On startup, the gateway checks for a newer release and logs an update hint, which the dashboard surfaces as the banner. It is informational only: it never installs anything, and it keys off npm’s release channels, which is why it can nag a Docker install about a version that has no container image yet. Whether to silence it is an operator judgment: on a laptop install it’s a useful nudge; on a pinned, deliberately managed setup it’s noise advertising an update the machine can’t take that way.

Turning it off, and the trap to avoid

The shipped setting is update.checkOnStart (default true). Set it to false, restart the gateway, and both the startup hint and the banner go quiet.

Now the trap. Several widely-shared guides tell you to set updates.notify: false. That key was a feature request that never shipped. It does not exist in current docs or code. Worse than being useless, it’s harmful: OpenClaw gateways hard-reject config containing unknown keys at boot, so on a pinned release that edit produces a crash-looping gateway, not a hidden banner. We’ve watched it happen. The safe pattern for any config edit on a running agent: back up the config, apply the change, verify healthy, and if the gateway doesn’t come back, restore the backup rather than editing forward in the dark.

Why the “Update now” button may do nothing

The banner’s companion confusion is the update button that shrugs. The Control UI’s updater drives the openclaw update flow, which manages package installs (npm, pnpm, bun). Installs it can’t manage get skipped with a status like not-git-install: the button taps, reports, and changes nothing. That’s the expected shape on container/prebuilt-image setups: both the button and the in-container CLI path are dead ends there (the container filesystem isn’t the updater’s to rewrite; the CLI attempt fails on permissions in milliseconds). Containers update by replacing the image tag and re-upping, which is safer anyway: the new image runs its startup migrations against your mounted state, and a failed migration exits unhealthy instead of half-updating; the full update ritual is here.

The five-second version

Your own cloud agent, set up for you.

Everpod runs OpenClaw on a private, always-on computer of its own: set up, secured and backed up, with model usage included. You name your agent, and say hello about fifteen minutes later.

Create your agent

First month half price, then $29/mo · model usage included · cancel anytime

Wondering what you’d do with one? See what a cloud agent can do