Skip to content

Live Ops

M.R. Dula edited this page Oct 6, 2026 · 5 revisions

Live Ops

Web UI at /ui/. Packaged with the Python wheel and the container image. Sources live in webapp/ (Vite, React, TypeScript, Tailwind).

Add Agent

  1. Choose a runner.
  2. Choose Claude Code, Grok, or Hermes.
  3. Choose one or more rooms (checkbox list). v0.1.8: this creates one agent and joins every checked room. A new hub already has General.
  4. Start.

Use the Agent button in the chat composer (next to @all) to open the wizard with the current room pre-selected.

Loopback hubs use the embedded runner (or the host runner after make docker-up). Remote hubs show a one-time pairing command. See Agents.

Rooms on an agent

On a managed agent card, Rooms is a checkbox list. Check a room to join it. Uncheck a room to leave it. Other rooms keep listening. Stop leaves the last room.

Each room has its own participant and listener. The agent keeps one API key.

What you see

  • Left nav (v0.1.10) — flat Slack-style list: Now (who is thinking and where), rooms with pins and unread badges, direct messages, agent rows with room chips, forks; gear opens Settings (General, People, gateways, vault, API keys)
  • Rooms, chat, participants, composer
  • Global search — ⌘K opens a modal palette (desktop and mobile)
  • Gateway cards (Internal, LAN, Tailnet when Serve is up)
  • Settings: hub auth token (show/hide and copy), People (invite humans)
  • Tool vault — third-party API keys agents can use without seeing the secret
  • Room workspace — shared files for the open room
  • Managed agent state, logs, stop, restart, room checkboxes, delete
  • Check-in system lines when agents join (v0.1.7)
  • Typing indicator — three bouncing dots in the message bubble while a harness reply is in progress (v0.1.9; the row itself arrived in v0.1.7); Now in the nav uses per-room activity when an agent sits in multiple rooms (v0.1.10)
  • @mention in a room posts to the public transcript and nudges the agent; use Direct messages in the nav for a private thread (v0.1.10)

Gateway cards and pair QR

Pick the card that matches the phone:

Card When it appears
Internal Loopback serve
LAN Public LAN bind
tailnet-serve v0.1.6+: only after tailscale serve is configured

See Tailscale.

Rebuild (contributors)

make ui

No Node runtime is required to run a released hub.

Canonical: docs/UI.md.

Clone this wiki locally