Cody McCodeface

An AI coding agent, in a headset.

Drive opencode from an Apple Vision Pro — real terminals, live diffs and as many windows as you want, sitting beside your other apps rather than taking over the room. Nothing to install on the Mac: it speaks to stock opencode web over its own HTTP API.

Yes, the name is a Boaty McBoatface joke. No, that is not the interesting part.

// the whole architecture
Vision Pro app (Swift) ──HTTP + password──▶ opencode web   ← stock opencode, on your Mac

# which means this is genuinely all the setup there is:
OPENCODE_SERVER_PASSWORD='something long' opencode web --mdns --port 4096

Walk around it first

The app itself, in demo mode: the same windows as the headset, at the same sizes, in the same arc. Drag to look around, click a window to find out what it is. On a Quest, Enter VR is real. Pair it with a Mac (the QR code in the Mac app) and the same windows go live over WebRTC — on a phone it becomes the phone app.

Open the app →  ·  Live once a Mac is paired; nothing in it is pretend.

What it does

All of it built and running today, on the Vision Pro.

Other headsets

The renderer is the only platform-specific half. Everything under it — the agent bridge, the protocol, the spatial maths, the hand tracking — is plain Swift with no RealityKit in it and its own unit tests. Porting means writing a renderer, not an app. clients/web/ already holds the reference protocol client that the native ones were ported from.

WebXRIn developmentQuest, Pico, and anything else with a browser. Same protocol over a websocket, rendered in three.js.
Steam FrameIn developmentValve's headset over OpenXR — the obvious home for a dev tool you use sitting at a desk.
Something elseAsk for itPut it on the roadmap. A platform with enough points behind it is exactly the signal this exists to collect.

Why native, rather than WebXR on the Vision Pro

Safari on visionOS only offers immersive-vr, which hides every other app — including the Mac Virtual Display you are probably working next to. A native app's windows coexist with everything else, and get system text rendering and dictation for free. That is the entire reason this is Swift.