Thomas Digital · Internal · Project Plan

The Command Center, in your pocket.

A plan to bring today's desktop chat rebuild to the mobile app — so you can run projects, send chats, and drive the whole system from your phone anywhere, with the same reliability the desktop now has. Grounded in frontier research on how the best 2026 mobile AI apps (and OpenClaw's own new native app) actually work.

2026-07-24 · companion to the chat rebuild recap · built from 4 research lenses + a live audit of the current mobile build

The one big finding

OpenClaw already shipped a native mobile app — copy what works

A month ago (2026-06-29) OpenClaw released official iOS and Android apps. They're built exactly the way ours should be: the phone is a thin client that talks over a secure connection to the brain on your Mac — it doesn't run the AI on the phone. What their app adds is the blueprint for ours:

Sources: OpenClaw iOS/Android launch (2026-06-29), App Store listing "Data Not Collected", Gateway WebSocket + Tailscale pairing docs.

Two things the research made obvious: (1) The single highest-value mobile use case isn't chatting — it's approvals + a kill switch: the agent pauses on something sensitive, your phone buzzes, you tap allow/deny or stop it, and it continues. Build that first. (2) OpenClaw's own app shipped rough ("v0.9 not v1.0," Android at 2.2★, pairing failures) — so a polished Command Center app isn't redundant, it's an edge. Community tools (ClawBridge, ClawSuite, Palmier) already fill the gaps with PWAs over Cloudflare tunnels — which is exactly the tunnel setup we already run.

Where we stand today

A live audit of the current mobile build — more is done than you'd think

Already built

  • It's an installable app (PWA) — add-to-home-screen, standalone, app icon.
  • Mobile navigation: bottom tab bar + a "More" sheet for all sections.
  • Push-notification plumbing (keys, subscribe, test) already wired.
  • iPhone safe-area padding + "cover" viewport already handled.
  • The hard part — today's reliability engine (resume-a-dropped-answer, heartbeats, server-side answer buffer) is done and reusable as-is.

The real gaps

  • The chat screen itself has zero mobile tuning — the composer hides behind the keyboard.
  • Everything uses old 100vh, which breaks under the mobile keyboard (needs dvh).
  • None of today's reliability work handles mobile's harder cases: app backgrounded, screen locked, wifi↔cellular switch.
  • Push exists but isn't wired to say "your answer is ready."
  • The desktop side-by-side artifact panel won't fit a phone.

The one decision to make first

How the app is packaged — my recommendation

Start as the PWA we already have. Graduate to a Capacitor wrapper the moment push reliability matters.

Your Command Center is already an installable app. Shipping the mobile fixes as a better PWA changes nothing about your setup and works this week. Push notifications do work on an installed iPhone app.

The catch, and why Capacitor is the likely endgame: on iPhone, a plain web app can't reliably wake you in the background — which is exactly what a control surface you depend on needs. Capacitor wraps the same Next.js code in a thin native shell, adding real background push, camera access, and a true app feel — without a rewrite. It's the same reason OpenClaw's own app went fully native. Reversible: the PWA keeps working the whole time; Capacitor is an add-on layer, not a fork.

Research verdict: "PWA — ship it today, add Capacitor if you hit a wall." React Native = a rewrite (rejected). Tauri-mobile = not ready in 2026.

The build, phase by phase

Run as a disciplined /d4 build in a worktree · desktop chat stays untouched

1
Make the chat usable by thumb
Foundational · ~1 day

Kill every 100vh100dvh. Add visualViewport handling so the composer floats above the keyboard. Rework the ThreadView layout for one column: conversations become a swipe-in drawer, the artifact panel becomes a full-screen sheet (not a split pane). Primary actions move within thumb reach.

2
Mobile reliability — the hard part, mostly already solved
Core · ~1–2 days

Reuse today's server-side answer buffer + resume-from-cursor. Add the mobile-only triggers: reconnect-and-resume when the app returns to the foreground, when the screen unlocks, and on a wifi↔cellular switch. Wire push-to-wake: when a long answer finishes while the app is closed, a notification brings you back to the finished answer.

Why this is cheap: the desktop rebuild already keeps every answer resumable on the Mac. Mobile just needs to reconnect at the right moments and use the cursor we already built.
3
Adopt the proven mobile chat patterns
UX · ~1–2 days

Long-press the send button for the model picker (per-send, no menus). Paperclip → camera or gallery upload. Conversation drawer with swipe. Action-approval cards for anything sensitive (mirrors OpenClaw's app). Optional: a "Canvas" full-screen artifact view.

4
Test on a real phone, then decide on Capacitor
Proof · ~1 day

Prove on an actual mobile viewport: two chats at once, a long answer while backgrounded + screen-locked + on a network switch, camera upload, keyboard-aware composer. If background push proves flaky as a PWA, wrap it in Capacitor (a scoped 1–2 day add-on). Ship a verified public preview link.

Mobile patterns worth stealing

From ChatGPT, Claude, Perplexity apps + OpenClaw (2026)

Per-send model picker
Long-press the send arrow to pick Fast / Balanced / Best for that one message — no modal, no settings dig (ChatGPT's 2026 pattern).
Conversation drawer
Swipe from the edge to reveal the thread list; it hovers over the chat instead of shoving the layout.
Full-screen artifact sheet
On a phone the design/artifact opens as a full-screen sheet you swipe away — never a cramped split pane.
Keyboard-aware composer
100dvh + visualViewport so the text box always sits just above the keyboard.
Push-to-wake
A notification when a backgrounded answer finishes — the mobile version of "it keeps running even if you look away."
Action-approval cards
Sensitive steps surface as allow/deny cards on the phone before they run (OpenClaw's app model).

The prompt to start it

Paste this into a fresh session when you're ready to build

I've written a complete, self-contained build prompt — current state, the gaps, the frontier reference, the decision to make, and the success criteria — so a new session can run this A→Z without re-deriving anything.

→ Open the ready-to-paste prompt
Prepared by Steve · Dr. Manhattan. Built from a live audit of the current mobile build + frontier research across PWA-vs-native, OpenClaw mobile access, mobile agent-chat UX, and mobile stream reliability. The desktop chat rebuild it builds on is here.