First run
Start the server
npm run dev
The dev script first kills anything bound to port 8081, then runs nodemon watching src/**/* and .env, executing ts-node src/server.ts. You should see something like:
[mcpClient] Initializing MCP client
Server running on http://localhost:8081
[mcpAdapter] MCP discovery complete. 5 tool(s) registered.
[startup] Tools registry initialized
For a production-style run, build first then start:
npm run build
npm start
Sign in
Open http://localhost:8081. If this is the first launch, you’ll be sent through /install to set an admin password. After that, every visit hits the sign-in page:

The password you set (or ADMIN_PASSWORD from .env) gets you in.
Returning to an existing timeline
Delegate 1 automatically resumes the most recently active open technical conversation after a server restart. Recent user and assistant turns are reconstructed from the event ledger, and the latest durable continuity capsule is restored independently. You do not need to choose a chat before carrying on.
Idle time closes the current activity span and creates an incremental memory checkpoint; it does not end the relationship timeline. A later text, call, SMS, email, or autonomous activation appears as another collapsible span in chronological order. Use End conversation only when you want an explicit technical boundary.
The browser hydrates a configurable page of globally ordered ledger events, while SQLite remains the authoritative history. Older pages load by cursor without resending the current page. Model compaction or voice truncation can reduce working context without deleting that durable history.
The UI tour
Chat (home)
The default landing page is a chat console wired to the /chat WebSocket. Send a message and it goes straight to the base agent.

Voice
/voice.html is the browser voice channel — PCM16 24 kHz audio over the /browser-call WebSocket, with real-time streaming and barge-in.

There’s also /voice-direct.html for a more bare-bones direct test of the voice pipeline:

Settings
/settings.html edits every config key (API keys, Twilio, email, feature toggles). Values flagged sensitive are encrypted at rest and masked when read back.

Logs
/logs.html streams the in-process log buffer — handy when you’re debugging an agent turn or a tool call.

MCP servers
/mcp-servers.html manages remote MCP servers. The list reflects runtime-data/mcp-servers.json, and the discovered tools show up in the registry.

Notes
/notes-list.html is the simple note-store browser. Notes are also surfaced as tools to the agents.

Thoughtflow
/thoughtflow/viewer renders D2 diagrams of recent agent runs (artifacts in runtime-data/thoughtflow/).

Adaptations
/adaptations.html exposes runtime “edits” you can apply to agent behavior without a redeploy. Edits are stored in runtime-data/adaptations.edits.json.

What now?
Head to Features for one-page-per-capability deep dives, or jump straight to: