Web app & dashboard
Andromeda has two browser interfaces: the authenticated web app for conversations and workspace work, and the usage dashboard for building, observing, and improving agent runs.
Start the interfaces
For development, start the API and the Vite client separately, or use the combined development command:
bun run start # API, web app and TUI with reloads
bun run start -- --no-tui # API and web app only
bun run main.ts:web # web dev server at http://127.0.0.1:5173
bun run main.ts:api # API at http://127.0.0.1:8791; also starts the dashboard
bun run main.ts:dashboard # dashboard alone at http://127.0.0.1:8790
The web client needs the API to perform work. For a built deployment, run bun run build:web once, then bun run main.ts:api; the API serves the built web app at its own address. Pass --no-dashboard to api serve if you do not want it to start the dashboard too.
Web app
Sign in to chat with the configured agent, continue conversations, attach files, use voice, approve actions when the active permission mode requires it, and follow streamed tool and model activity. A dropped browser connection can reconnect to an owned running turn without executing the work again.
The navigation groups work into three areas:
| Area | Pages | Use it for |
|---|---|---|
| Work | Overview, Command Center, Agent History, Model Performance, Work, Automation | Check system status, observe or steer live work, inspect prior agent turns, review performance, track work, and manage recurring runs. |
| Knowledge | Memory, Library, Model Hub | Search and manage remembered information, browse saved and generated material, and find, download, switch, or remove supported models. |
| Tools | Generation, Trash, Customize, Remote Environments, Training, Data Recipes, Users & Access, Settings | Create media, restore or remove generated media, manage skills and chat UI recipes, connect remote workspaces, prepare training data, and configure access and runtime preferences. |
Availability is account- and feature-policy-aware: a page or agent capability that an account is not allowed to use is not an authorization shortcut through the browser. Administrators manage accounts, roles, groups, policies, device sign-ins, and the audit log from Users & Access.
Usage dashboard
The dashboard reads Andromeda's usage ledger and running-process state. It is intentionally separate from the web app: use it to inspect how the system is behaving, while the web app is where you operate on conversations, workspace content, and account-scoped resources.
| Area | What it shows or does |
|---|---|
| Build | Use Playground to try a prompt and a safe tool-call loop before adding it to an agent. Use Flows to wire inputs, prompts, agents, checks, speech, and an LLM judge into a repeatable visual test. |
| Run | Inspect the configured agents and tools, background tasks, and live sessions across the terminal, WhatsApp, and workers. A cancellable local run can be stopped from its session view. |
| Observe | Review metrics, model and tool activity, traces, logs, generated media, connected devices, memory health and relationships, and SQLite performance. Drill into individual runs to see timings, model calls, and tool activity. |
| Improve | Use the review queue to inspect feedback and follow up on quality issues. |
The Database page records query shape and timing, not parameter values. It highlights costly queries and slow queries, and shows database files, WAL information, tables, and indexes. Set logging.database.slow_ms to adjust the slow-query threshold, or disable this profiling with logging.database.enabled: false.
Remote access
Both services bind to loopback by default. Do not expose them on a network interface without authentication. A dashboard listener outside loopback requires a token:
USAGE_HOST=0.0.0.0 USAGE_TOKEN=<long-random-token> \
bun run main.ts usage serve
# Or run a local forwarding dashboard on another computer
bun run main.ts usage serve \
--remote http://ai-machine:8790 --remote-token <token>
Use API_HOST, API_PORT, and API_TOKEN (or the matching api.* settings) when exposing the API intentionally. The API also supports web-account sign-in; its authorization policies remain in force for page routes and agent tools.