Orb XR for Android XRBeta

Supervise a fleet of coding agentsacross your whole field of view

Floating SSH terminals in 3D space — one seat per agent. Your Mac does the work. Scan a QR and you're in.

Native terminal renderingReal SSH to your Mac6 agents in view at oncePassthrough or focus mode
Orb XR: six terminal panes floating in XR — six agents, one field of view

Your Mac does the work

Every shell, agent, toolchain, and repo stays on the machine that already has them. The headset is a thin client over your LAN.

Orb XR — 6 sessionsmacbook.local
claude — ~/repos/gemdex
> tighten the reconnect loop
✓ typecheck clean · 48 tests passing
codex — ~/code/orb-xr
▸ run the auth suite before commit
· 12 of 14 passing — fixing tab-stop
gemini — zsh — 100×32
✦ drafting the migration note
✓ WriteFile docs/migrations/token.md
aider — feat/auth
+ applied 3 edits to auth/session.ts
commit? (y/n)
gradlew — assembleRelease
> Task :app:assembleRelease
BUILD SUCCESSFUL in 3m 41s
zsh — ~/dotfiles
$ git push origin main
main → main · done
esc
F1
F2
F3
F4
F5
F6
F7
F8
F8
F10
F11
F12
~`
!1
@2
#3
$4
%5
^6
&7
*8
(9
)0
_
+ =
delete
tab
Q
W
E
R
T
Y
U
I
O
P
{[
}]
|\
caps lock
A
S
D
F
G
H
J
K
L
:;
"'
return
shift
Z
X
C
V
B
N
M
<,
>.
?/
shift
fn
control
option
command
command
option

The room becomes the monitor

Panes lift off the laptop and settle into a curved arc at reading distance — one seat per agent, every one a real PTY.

claude — ~/repos/gemdex
> tighten the reconnect loop
✓ typecheck clean · 48 tests passing
codex — ~/code/orb-xr
▸ run the auth suite before commit
· 12 of 14 passing — fixing tab-stop
gemini — zsh — 100×32
✦ drafting the migration note
✓ WriteFile docs/migrations/token.md

Put the room on

Galaxy XR turns your whole field of view into terminal real estate. Six agents, glanceable at once, rendered natively on the headset.

Samsung Galaxy XR headset

Palm up. That's the interface.

Hold a palm up and the orb floats in, listening. Speak, flip your palm down, and your voice steers the focused terminal.

Open palm held up to summon the voice pet

A seat for every agent

Spawn a pane, seat an agent — claude, codex, gemini, aider, a build, a plain shell. Arrange them in a curved arc at reading distance.

  • Six panes glanceable at once, arranged around you.
  • Each pane is a first-class terminal with its own PTY.
  • Pinch, drag, release — a new pane inherits from the one you're looking at.
claude
codex
gemini
Refactor’s done typecheck is clean across all 14 call sites.
12 of 14 tests passing. Fixing the tab-stop edge case now.
Build succeeded in 3m 41s installing on the headset…

Steer, don’t alt-tab

Supervising agents is a peripheral-vision problem. Look at the one that needs you, type a one-line steer, look away again.

  • Catch “waiting for your input” out of the corner of your eye.
  • Keyboard, controller, and accessory keys all route to the focused pane.

claude is idle, gemini is still working, and codex is the one waiting on you — type "commit it" and look away again.

Refactor Session
Claude Code
Fable 5 · Claude Enterprise
~/repos/orb-xr
>extract token logic into TokenService
Typecheck clean — 48 tests passing
demo (refactor)
ghosttyxr — codex — 119x30needs input
OpenAI Codex (v0.0.0)
model:gpt-5.6-sol medium/model to change
directory:~/code/orb-xr
Tip: Use /feedback to send logs to the maintainers when something looks off.
>Run the auth tests before you commit.
Two call sites used the old refresh flow, I adapted them and left a note.
Updated Plan
Extract TokenService from the auth module
Update 14 call sites
Run type checker + auth suite
commit it
gemini — zsh — 100×32
> @auth Write a migration note for the TokenService extraction
Responding with gemini-3.6-flash
Drafted a short migration note and linked it in the PR description.
WriteFileWriting to docs/migrations/token-service.md
"Public API unchanged."
Awaiting your next command or request.
> Type your message or @path/to/file
~/orb-xrno sandbox (see /docs)

More agents than a monitor allows

Tabs hide state, and tmux shrinks past useful around four splits. XR gives you your whole field of view back.

  • The canvas is the space around you, not a 27-inch rectangle.
  • Six full-size panes at reading distance — not six postage stamps.
  • One developer, more concurrent workstreams — comfortably.
The same six agents, three ways
What your setup actually lets you see at once
Monitor + tabs1 in view

One pane in focus. Every other agent lives behind a tab you have to remember to check.

tmux splits4 splits, shrinking

Four splits in, every terminal is a postage stamp — and TUIs start to wrap and break.

Orb XR (XR)6 in view, full size

Six full-size panes in a curved arc at reading distance. All of them glanceable at once.

Your whole toolchain, one room

The headset is a thin client. Your Mac runs the shells, the agents, the toolchains, and the files — nothing about your setup changes.

  • SSH over your LAN into macOS’s built-in server.
  • Your dotfiles, your claude, your git — exactly where they already live.
  • Take the headset off and your agents keep running on the host.
Aider
$

The terminal is sacred

Every pane renders natively on the headset. No web views, no VNC, no screen-scraping a Mac display.

  • Real ANSI, Kitty keyboard protocol, true color.
  • Spinners, TUIs, and progress bars render exactly as they should.
  • If it runs in a terminal on your Mac, it renders right here in XR.
Real ANSI + true color
Kitty keyboard protocol
QR pairing in seconds

Everything you need to run the room

From the first QR scan to a locked room full of working agents — every piece is native, local, and already yours. No cloud relay, no account, no environment drift.

Scan and you’re in

Open the companion app on your Mac, scan the QR from the headset, and your room of agents assembles itself.

SessionPaired
## Pair
Scan the QR from your Mac's menu bar.
## Fly
Six panes spawn right where you left them.

Your Mac is the source of truth

We never fork your environment. Dotfiles, toolchains, repos — everything stays on the host.

Your Mac stays the source of truthdotfiles · toolchains · repos
~/.claude/CLAUDE.md
Reattaching panes72%

Glance, steer, look away

Agents mostly need a word, not a session. Answer in one line and get back to the rest of the room.

pane 3 · claude Live
All 48 tests pass. Ship it?
Ship it.

Six panes and counting

Spawn a seat for every agent, arranged in a curved arc at reading distance. Spatial layout is the feature.

6+
panes in view · one seat per agent
claude
codexidle
geminiidle
Spawn a paneone gesture, one PTY

Session persistence

Take the headset off and the agents keep running on your Mac. Put it back on and the room is as you left it.

headset detached · 4:12
Your agents kept running the whole time.4:12 / 6:03

Every CLI you already run

If it runs in a terminal on your Mac, it runs here — agents, builds, TUIs, plain shells.

claude · feat/auth
gradlew assemble
ZGS

Focus mode

Swap passthrough for a dark skybox and the agents become the only thing in the world. A toggle, not a tax.

Too much going on in the room?
Dark skybox on — just you and the agents.
Passthrough off

Pair with your Mac

libssh2 into macOS’s built-in SSH server over your LAN. No cloud relay, no account, nothing leaves your network.

Your host
MacBook Pro · LAN
ssh you@macbook.local

Pinch to spawn a pane

A new pane inherits from the one you’re looking at. Pinch, drag, release — then seat an agent in it.

Hand pinching to spawn a new terminal pane

Prayer hold to lock the room

Palms together freezes every pane exactly where you parked it. Same gesture to unlock.

Hands held together to lock the pane layout

Palm up for the voice pet

Hold a palm up and the orb floats in, listening. Flip it down to send the command to the focused pane.

Orb voice pet hovering over an open palm
Shipping now

Runs on Samsung Galaxy XR

A native arm64 Android XR build — terminal rendering and SSH transport in a single Zig JNI core. Install it from Google Play, scan the QR from your Mac, and you're flying.

Samsung Galaxy XR headset
Built on Android XR

Aimed at lighter glass

Android XR is the same platform Samsung and Google are pushing toward lighter, glasses-class hardware. Orb XR is a native citizen of that platform — no forks, no wrappers — so it moves where the hardware goes.

Lightweight XR glasses
Put the headset on. Your agents are already working.
What do you want to orchestrate?

ExploretheOrbXRstack

Five honest pieces of engineering — no web views, no VNC, no cloud in the middle.

libghostty

The terminal core behind Ghostty, rendering every pane natively on the headset.

Real ANSI · Kitty protocol · true color

libssh2

Your Mac's shells, carried to the headset over your LAN.

macOS built-in SSH server · no cloud relay

Compose for XR

Spatial panes arranged in a curved arc at reading distance.

Jetpack XR · Kotlin + Compose

Zig native core

libghostty and libssh2 compiled into a single JNI library.

arm64-v8a · one ~28 MB .so

Mac companion

Menu-bar app that shows the QR code the headset pairs with.

SwiftUI · optional