Skip to content

Dashboard

The dashboard is the primary cross-platform interface for Usejarvis. It is served directly by the daemon and updates in real time over WebSocket.

By default, it lives at:

http://localhost:3142

Since 0.9 the dashboard is JWT-only. Run jarvis enroll "my-desktop", paste the enrollment token into the sidecar app, and open the dashboard through it. For first-time setup only, you can set auth.insecure_open_access: true in config.yaml; the daemon logs a loud warning while it is on.

On Windows, the ambient Pebble is the default surface after onboarding; the dashboard remains the full control plane everywhere.

The dashboard is where you:

  • Talk to Usejarvis and watch tasks and delegated agent activity
  • Inspect memory and stored entities
  • Approve or deny governed actions
  • Build and run workflows
  • Track goals
  • Manage sidecars, channels, LLM providers, and integrations

The sidebar (the Index) has a Now home row plus four clusters, with Settings pinned at the bottom. Rooms open with ⌘1 through ⌘9.

The home surface you compose: a grid of draggable, resizable widgets, each showing a room’s headline. Your layout persists. The “waiting on you” widget surfaces pending approvals and cannot be removed while it is active.

  • Workflows (⌘2): build and monitor automations
  • Agents (⌘3): delegated agents and their activity
  • Tasks (⌘4): task list and history
  • Memory (⌘5): the vault, entities, and stored knowledge
  • Goals (⌘6): goal tracking and check-ins
  • Calendar (⌘7): schedule view
  • Content (⌘8): the content pipeline
  • Authority: pending approvals, authority levels, audit. Shows an amber badge on the rail when approvals are waiting.
  • Logs: events, awareness feed, and audit trail. Shows a red badge on system failures.
  • Usage: token and cost telemetry, including prompt cache hit rates.
  • Workspaces: dev projects, git, dev servers (the former Sites area)
  • Tools: the tool catalog and capability flags

Eight tabs: General, Profile, LLM, Channels, Voice, Integrations, Billing, Sidecar.

There is also an ambient Agent Strip room (a live task ticker) reachable from the command palette, and a command palette for jumping anywhere.

The header shows a connection indicator (live / offline) for the WebSocket link to the daemon. If it shows offline, check that the daemon is running and reachable.

If you expose the dashboard beyond localhost:

  • Set daemon.brain_domain to the externally reachable origin, with an explicit scheme
  • Forward WebSocket upgrades for /ws and /sidecar/connect
  • Keep /health, /sidecar/connect, and /api/sidecars/.well-known/jwks.json publicly reachable; everything else is token-gated
  • Preserve cookies and the x-forwarded-proto header

See WebSocket API for the full authentication model.