Command Center
OptimalOS v4.0.0 is a personal command center at optimal.miami that runs on a Raspberry Pi 5. It replaces SSH clients with a browser-based interface that works from any device.
Core Features
| Feature | Description |
|---|---|
| Dashboard | Services, sites health check, tmux sessions, system info, research pipeline, active tasks, the TODAY widget, Loom status. |
| Terminal | Multiple shell tabs with direct PTY access via pty-host.py. |
| Orchestration Board | Epic/story/task kanban with agent launcher, session state machine, and dependency chains. |
| Loom | Visual workflow strands, manual triggers, run history. See Loom. |
| Morning Ritual | AI-driven task reprioritization. See Morning Ritual. |
| Settings | Secrets management and SSH key management. See Settings. |
| Hook System | REST endpoint for agent lifecycle events (Claude Code hooks, OpenClaw callbacks). |
| WebSocket State Hub | Real-time session state broadcast (snapshot + delta protocol), plus /ws/loom for strand events. |
| tmux Attach | Connect to existing tmux sessions (Claude Code, OpenClaw, etc.). |
| File Transfer | Upload and download files with chunked transfer support (5 GB max). |
| Touch Helpers | Mobile-friendly modifier keys and shortcuts for terminal use. |
Architecture
The command center runs as a Bun + Hono server on the Pi. The client is vanilla TypeScript built with Vite and uses xterm.js with WebGL rendering for terminals. When you open a terminal tab, it spawns a real bash process via pty-host.py (Python os.forkpty()) -- you are directly on the machine. Cloudflare Tunnel handles the secure connection from your browser to the Pi.
There is no Docker, no SSH, and no container isolation. This is a single-user tool designed for the person who owns the Pi.
The orchestration layer provides an agent launcher that creates tmux sessions, a session state machine with real-time WebSocket broadcast, and an epic/story/task kanban board backed by Supabase.
Authentication
Login uses a simple passphrase stored in the server's .env file. Sessions last 24 hours. Tokens are stored in the browser's localStorage and passed as Bearer tokens or WebSocket query parameters.
Pages
- Dashboard -- System overview, sites, research pipeline, and quick actions.
- Terminal -- Shell access, keyboard shortcuts, and tmux integration.
- Orchestration Board -- Epic swimlane kanban with agent launcher and dependency chains.
- Hook System -- REST API for agent lifecycle events.
- WebSocket State Hub -- Real-time session state via WebSocket plus the
/ws/loomstrand stream. - File Transfer -- Upload and download files (5 GB max, chunked).
- Settings -- Secrets and SSH key management.