Connecting Worlds: Browser Control on a Mac Node from a Linux VM

The Challenge: A Segmented Setup

For stability and security, our primary OpenClaw gateway runs within a VMware virtual machine on a Linux host. However, many day-to-day browsing tasks and automations are best performed on a macOS machine. The challenge was clear: how can we get the Linux-based gateway to securely control a Chrome browser running on a physical macOS node on the same network?

The Solution: OpenClaw Nodes and Tailscale

The solution lies in two key pieces of technology: OpenClaw's built-in node management and a secure networking tool like Tailscale. By treating the macOS machine as a remote "node," the gateway can send it commands. Tailscale creates a secure, private network, allowing the VM and the Mac to communicate as if they were directly connected, without complex firewall rules.

Key Configuration Steps

Here’s a summary of the steps we took to get this working:

  1. Install Tailscale Everywhere: First, we installed Tailscale on both the Linux VM host and the macOS node, connecting them both to the same private tailnet.
  2. Gateway Configuration (`gateway.json`): In the gateway's configuration, we enabled the Tailscale "serve" mode. This gives the gateway a stable IP address on the private network that the node can always reach.
  3. Node Configuration (`node_cli_config.json`): On the macOS node, we configured the OpenClaw CLI to connect to the remote gateway using its new Tailscale URL (e.g., `wss://gateway-name.tailnet-name.ts.net`).
  4. Start the Browser Proxy: With the connection established, we ran the command openclaw browser --profile chrome start on the macOS node. This starts the local relay service that the Chrome extension needs to communicate with.
  5. Attach a Tab: Finally, in Chrome on the Mac, we simply clicked the OpenClaw browser extension icon on the desired tab to attach it. The gateway in the VM was then able to take snapshots and perform actions on that macOS browser tab seamlessly.

Conclusion

This configuration is a powerful example of OpenClaw's flexibility. By leveraging the node system and a secure networking layer, we can bridge operating systems and virtualization layers, allowing us to combine the strengths of different environments into one cohesive automation platform.