Download on the App Store Get it on Google Play

Use case: OpenCode TUI in a native terminal

anomalyco/opencode is an unaffiliated coding-agent TUI. Run opencode in a native terminal (iTerm, Windows Terminal, gnome-terminal, conhost). Pair checksummed gbr-agent. That TTY is on the phone roster. Headless opencode serve is not. Protocol gbr/1. Independent product by Linespotting AB — not affiliated with Anomaly, SST, or OpenCode.

integrations index · pinned install · what the phone sees · related: CodeNomad + Grok Build CLI

Shape of the desk

Phone  (Build Remote Agent)
  │  HTTPS mailbox
  ▼
gbr-agent pair + run
  │  inject → discovered TTY
  ▼
Native terminal:  opencode     ← roster item on the phone
opencode serve                 ← headless HTTP, not on the phone

The phone lists iTerm / Windows Terminal / gnome-terminal / conhost. It does not list opencode serve, the OpenCode desktop/web app, or a sidecar pointed at port 8788.

Walkthrough

  1. Install checksummed gbr-agent v0.6.0PINNED-INSTALL.md (verify the installer SHA-256, then the binary). Do not paste live curl | bash into OpenCode’s docs.
  2. PC: gbr-agent pair then gbr-agent run. Scan the QR with Build Remote Agent. Optional: match binary sha256 / pair-key fingerprint on the pair page to #download.
  3. Open a real terminal window on that PC — not a browser tab, not opencode serve.
  4. Run OpenCode TUI in that window:
    opencode
    # optional, so the phone title is obvious:
    # rename the session in the TUI if it supports it
    
  5. Phone: that OpenCode window is on the roster. Inject types into it.
  6. Optional desktop MCP: user mcp.servers fragment from plugins/ so OpenCode on the desk can call gbr-mcp. That does not put a headless serve process on the phone.

Loopback inject is unauthenticated unless GBR_BOT_REQUIRE_KEY=1.

What fails (and why)

If you…Phone sees
Run opencode serve (headless HTTP) Nothing — not a TTY. The phone never lists that process.
Use the OpenCode desktop / web / Electron UI only Nothing — gbr-agent does not scrape those windows.
Point a sidecar or browser at http://127.0.0.1:8788 Bot API JSON. Not an OpenCode transcript.
Add mcp.servers but never open a terminal TUI Desktop agent can call Bot API; the phone roster is still empty of OpenCode.
Native terminal TUI = roster. Headless serve = not on the roster. MCP on the desktop is a separate attach for the host, not a phone transcript.

Why a native terminal

Build Remote Agent’s native attach is inject into a terminal. OpenCode’s TUI is a window with a title, so it shows up on the roster. opencode serve is an HTTP server with no OS terminal window. This page is a use case, not an OpenCode adapter and not an endorsement.