Remote UI
Remote UI is Tycho’s browser control surface. It serves the Plus Jakarta Sans font locally, with a system fallback; no external font service is required. It uses the same local project registry, agent store, schedules, logs, and lifecycle rules as the TUI and CLI. The browser does not become the owner of that state.
Start Locally
Section titled “Start Locally”Bind explicitly to localhost for the safest first run:
tycho serve --host 127.0.0.1 --port 7373Open http://127.0.0.1:7373. Use tycho serve daemon when you want the server to continue in the background; its request and lifecycle output continues in ~/.tycho/logs/remote_server_daemon.log and ~/.tycho/logs/hq.log.
Remote UI can create the Welcome Sandbox on an empty installation. It cannot register an arbitrary host directory. Register real project paths from the TUI or CLI, or ask a Welcome Sandbox agent to run an exact tycho project create command.
Supervise a Session
Section titled “Supervise a Session”The Agents view combines projects and sessions. Open a conversation to:
- watch sequenced assistant messages, tool activity, and results while the harness runs;
- queue ordered follow-ups without waiting for the current run to stop;
- answer, dismiss, or restore a structured inquiry;
- inspect concise previews and ordered rich summary sections;
- open run attachments, including scrollable attachment detail and direct file downloads, usage details, saved pull-request diffs, and durable history;
- run, stop, clone, archive, schedule, or delegate work when that action is valid.
The Now view keeps attention work and schedules compact. no_action_needed runs stay quiet; input-required, blocked, failed, stopped, partial, and normal successful outcomes keep their distinct lifecycle meaning. See Agent Session Lifecycle.
Inquiry values save locally while you type and survive refresh and reload. Conversation opens at its latest message. The working/completion marker follows matching run evidence and respects reduced motion.
The agent switcher follows the same ordering and status cues as the Agents view. While a session is running, you can queue follow-up prompts and load newer conversation messages on demand without losing the focused conversation.
Browse a Project Safely
Section titled “Browse a Project Safely”Each registered project has a Files view. Search files, preview Markdown and images, and use guarded plain-text editing on desktop where available; existing workspaces remain read-only on mobile. The server accepts relative paths inside that project and rejects traversal, unsafe symlinks, VCS and generated directories, secret-shaped names or content, binary files, and oversized previews. This boundary protects browsing and editing; it does not restrict what a launched harness can access. Review Harnesses before running an agent.
Recover Queued Work
Section titled “Recover Queued Work”Open a session’s queue controls when automatic dispatch is blocked. Process selected stable-ID entries or all pending entries, or remove eligible entries with a recorded reason. Tycho checks the exact queue snapshot and preserves FIFO order. Queue discard/removal cannot discard protected delegation reports. Manual archive instead records a reason and retains read-only history; it does not run the queued work. A failed claimed batch stays visible for retry; discard is available only when its sources allow it.
Context-pressure warnings use active harness evidence. Tycho shows a measured percentage only when the harness provides a valid limit. You can dismiss the warning for the current evidence, keep going, start a replacement, or archive. Replacement and manual archive have different guards and queue outcomes. See Agent Session Lifecycle.
Protect Non-Local Access
Section titled “Protect Non-Local Access”Without TYCHO_REMOTE_TOKEN, Remote UI and its API are appropriate only on localhost. Set a bearer token before binding to Tailscale or another non-loopback address:
TYCHO_REMOTE_TOKEN_VALUE="$(ruby -rsecurerandom -e 'puts SecureRandom.hex(24)')"export TYCHO_REMOTE_TOKEN="$TYCHO_REMOTE_TOKEN_VALUE"printf %s "$TYCHO_REMOTE_TOKEN_VALUE" | pbcopytycho serveThis keeps the generated value in the named shell variable and copies it to the macOS clipboard without printing it. When Remote UI asks for authentication, paste that same value into Remote token and save it. On WSL, replace pbcopy with clip.exe; on Linux with Wayland, use wl-copy. Do not print the token, put its literal value in shell history, or paste it anywhere else. Run unset TYCHO_REMOTE_TOKEN_VALUE TYCHO_REMOTE_TOKEN after the server stops.
When Tailscale is available, tycho serve can auto-bind to its IPv4 address and print a MagicDNS URL and QR code. Prefer Tailscale Serve HTTPS when you need service workers or push notifications. Passing --host disables Tailscale auto-binding.
Notification Evidence
Section titled “Notification Evidence”Settings includes redacted click tracing, export, and an explicit test sender for the current browser subscription. The sender shares the normal retained-record and send path, resolves Tycho and native session IDs, and reports missing or ambiguous targets without changing the selected agent.
A provider accepting a send does not prove native display or activation. Synthetic Chrome checks do not establish native Edge notification activation, installed-PWA focus, or cold-window behavior. Use the redacted trace to collect evidence when a native click fails. These diagnostics do not require a credential reset.
Combine Tycho Servers
Section titled “Combine Tycho Servers”Configure peers under remote_servers in ~/.tycho/config/hq.yml, then enroll each bearer token with tycho server login <key>. The UI-serving Tycho instance brokers requests and keeps one server-qualified catalog; the browser does not send one peer’s credential to another.
Projects, agent sessions, and delegation graphs remain owned by one server. Schedule editing, setup, push notifications, skills, and the Settings restart action apply to the Tycho server serving the UI. Configured online peers with a supported Homebrew install can expose an Update action in Settings. Its confirmation names the peer and its service restarts. Resource health remains visible when a peer is offline, stale, or needs a token.
See Projects and Agents for peer configuration and the CLI Reference for direct --server commands.