Skip to main content
The runtime (server/index.js) is a plain HTTP server. The presence, the classic shell, surfaces, and the v2 host all talk to it over these endpoints. Every filesystem path is validated server-side.

Chat

Config & providers

Surfaces

(widget-* are the legacy names of the surface-* bridge endpoints.) See The bridge.

Files (BOR Home)

MCP

See MCP.

Scheduling & notifications

System & browser

Conversations

Notes

  • All responses are JSON unless noted (/api/chat is SSE; /api/files/raw and /api/images serve bytes).
  • The v2 host generally proxies these through the Electron main process (so file:// renderers don’t hit CORS).
  • Adding a route? Keep the validateSurfaceId / JSON-pointer guards — see The runtime.