VIRGO

HUB & DASHBOARD

The deterministic center of the team.

The current hub runtime operates the pinned FalkorDB/Redis store. The dashboard and complete hub surface for messages, fences, channel adapters, status, and guided setup are approved designs being implemented in stages. The hub is infrastructure used by AI sessions, not an AI session itself.

CURRENT RUNTIME

Private, pinned, persistent.

The first hub runtime is a release-labeled FalkorDB/Redis container with Redis Streams, graph storage, AOF, and RDB persistence. It binds to loopback and keeps generated ACL, password, and data under one private state directory.

virgo hub start  --config /absolute/path/to/hub.json
virgo hub status --config /absolute/path/to/hub.json
virgo hub stop   --config /absolute/path/to/hub.json

Status reports unhealthy, stopped, absent, and specification mismatch instead of calling them running. Stop preserves the container and data.

TOPOLOGY

A hub on every machine. One root holds the store.

Every machine in an installation runs a hub. One of them is the root hub, and it is the only place the FalkorDB graph and the streams live; every other machine runs a satellite hub that relays and caches without deciding authority.

Every seat — CLI, persona, adapter, and the dashboard — talks only to its own machine's hub over loopback. Machines reach each other through exactly one authenticated hub-link between satellite and root. No seat ever dials a remote machine, and there are no per-seat tunnels.

Liveness is judged where it is local: a seat's liveness is its own hub's judgment about a process on the same machine, and a machine's liveness is its hub-link heartbeat at the root. A hub never judges a remote process. When a link drops, outbound work queues locally and replays under envelope idempotency digests, so a reconnect cannot deliver the same message twice.

DESIGNED DASHBOARD

See the system. Finish setup progressively.

Status

Machines, advertisement freshness, persona fence/host/model/health, streams, lifecycle events.

Preferences

Non-secret display, notification, and pacing settings through mechanized paths.

Setup checklist

Channel credentials, bindings, integrations, and persona settings deferred from onboarding.

Personas

Character, voice, path, repository, channel binding, records, and retirement.

Knowledge Explorer

Search typed records, inspect provenance, and follow graph edges.

Skills

Personal edits and receipt-bound proposals for shared class/workspace behavior.

BOUNDARIES

The dashboard is not a bypass.

  • Authenticated tailnet or loopback only; never public.
  • Credential values are neither displayed nor edited.
  • Status is read-only; mutations use the same gated CLI/API mechanisms.
  • UI assets ship in the same release SHA.
  • One dashboard uses workspace filters; stamps and transport enforce isolation.

RECORDS

One graph, many verified views.

Records are typed content-addressed nodes with provenance and directed edges. Markdown is a verified materialization, while one reusable viewer powers Explorer, Persona records, and Status detail.

See persona graph lineage →