Install OpenClaw on a Mac
The menu bar app, the CLI path, and which Gateway mode to pick
The easy install of OpenClaw on a Mac is the menu bar app: download it, launch it, and it installs its own Gateway and walks you through the rest in one conversation. The other path is the Node CLI, which is the same install as on Linux and is what you want if you never plan to open a window. The two have different requirements and the docs are precise about them. Here is where the builds come from, what first run does, the choice between a local and a remote Gateway, and how the app updates itself.
Requirements
- The app needs macOS 15.0 (Sequoia) or later, and so does its native helper; Voice Wake and push-to-talk need macOS 26.
- The CLI and Gateway need a supported Node: the official Node 24 and Node 26 builds want macOS 13.5 or later, and running the CLI on an older Mac does not make the app compatible with it.
- Builds come from the GitHub releases page, as a dmg, preferred, or a zip; some releases ship only CLI or Windows assets, so take the newest release that has a macOS one, or build from source.
First run
Install and launch, then choose: This Mac for a local Gateway, or Connect to an existing Gateway with its address and a sign-in. For a new local Gateway the app installs its external CLI runtime and starts the Gateway; connecting to a remote one installs nothing on the Mac. Then pick the AI connection: detection only offers the ones it can find, and selecting one starts a live model check. The app then opens the dashboard, where the rest of setup, memory import, channels and permissions, runs as one conversation, and macOS permissions can be granted any time from the settings page for this Mac. Quick Chat, a Spotlight-style composer, sits on Option-Space.
OpenClaw.app requires macOS 15.0 (Sequoia) or later.
Local or Remote
- Local: this Mac runs the Gateway and keeps it alive with launchd. Only this mode needs the separate CLI install, for setup and management of the app-owned Gateway.
- Remote: another host runs the Gateway and the Mac controls it over SSH, the LAN or a tailnet. The app’s Mac node uses its bundled private runtime in both modes.
- The Connection window opens even when the Gateway is unreachable, and offers Install, Update or Repair Gateway when the app-managed one is missing, outdated or broken.
If you only want the CLI, How to install OpenClaw lists every method, the installer script first, and OpenClaw system requirements has the machine side of the question.
Updates
The update card says what it will touch. Update Mac app + Gateway means the signed app owns the local launchd Gateway: Sparkle updates the app first, and after relaunch the app updates and restarts its Gateway at the matching version. Update Gateway means the app is connected to a Gateway it does not own, remote or manually managed, and runs that Gateway’s normal update flow instead. Either button asks for confirmation. Sparkle follows the Gateway’s update channel: beta and dev opt in to beta app builds, extended-stable accepts only matching releases and stays quiet otherwise. Updating OpenClaw covers the Gateway side, rollbacks included.
On Diali
Diali is the Remote row without the Mac in the loop: the Gateway runs on an isolated instance in the EU, updates are tested on our own assistants first, and your Mac joins, if you want it to, as a paired node for the screen, files and local commands. Hosted OpenClaw on Diali is the assistant; OpenClaw nodes and remote hands explains what a paired Mac can do.
- The app wants macOS 15; the CLI wants macOS 13.5 and a supported Node.
- First run installs the Gateway for you, or connects to one you already have.
- The update card tells you whether it owns the Gateway or only asks it to update.
Stop reading about it, build one
Set up an agent, pick a channel, and have it working inside the app you already keep open.
