Architecture · AgentSight v1.0.15

Keep runtime data on Nodes. Add coordination without making the cloud the data plane.

AgentSight separates the machine that owns detailed runtime data from the service that coordinates people, organizations, discovery, connectivity, and authorization. Direct Node access and Controller Relay are transports to the same Node protocol, not separate telemetry stores.

The boundary

Three planes, with the Node authoritative for detailed runtime data.

This page describes the released v1.0.15 implementation, reviewed against product commit ba14044491d2. It intentionally separates shipped behavior from design ideas that may exist elsewhere in the repository.

01

Node data plane

The AgentSight Node captures, stores, and serves detailed runtime data. Session databases, snapshots, prompts, process activity, and other detailed records remain authoritative on the Node.

02

Controller coordination plane

Controller handles identity, organizations, memberships, plan and entitlement metadata, Node discovery, relay presence, and authorization decisions. It is not the authoritative telemetry store.

03

Client and presentation plane

The hosted app, local UI, and CLI reach a Node through a local or Direct connection, or through Controller relay when that transport is available and authorized.

Current deployment paths

Local, Direct, and Controller-managed access share one Node protocol.

Direct is not merely a fallback for Controller Relay. Since the v1.0.13 Direct transport change, a browser-reachable Node can be used by IP or URL even when Relay is unavailable or not deployed. Controller adds coordination rather than replacing that path.

  • 01
    Local

    Run and query AgentSight on one machine. No Controller account or relay is required for local capture and saved-session analysis.

  • 02
    Direct

    A browser reaches a Node by an explicit HTTP(S) endpoint. Direct remains usable without Controller Relay and is preferred when a saved Direct path is available.

  • 03
    Controller-managed

    Controller adds OAuth identity, organization-scoped Node discovery, plan gates, relay connectivity, roles, and authorization before remote operations.

Direct pairing

The bootstrap credential is not the normal browser credential.

In v1.0.15, a Direct binding link carries a bootstrap key long enough to identify the Node and mint a scoped capability. The browser then stores the returned capability for normal Node requests. The default Direct capability covers node.info,evidence.read, session.read, and session.message for up to twelve hours; the persistent bootstrap authority is not stored as the normal Direct access token.

Long-lived Direct capabilities are persisted locally by the Node with expiry, so a Node restart does not necessarily force immediate re-pairing. The Node still validates the capability action and optional session scope on each protected protocol operation.

Transport order

1. Saved Direct path

Use the browser-reachable Node endpoint when one has been paired.

2. Controller Relay

Use Relay only when Controller reports that transport online and the operation is authorized.

Controller data boundary

Controller coordinates access; it does not persist the detailed Node payload.

The released Controller stores OAuth identity, organizations and memberships, organization configuration, plan and entitlement metadata, Node registration, relay credentials and presence, and the authorization decision used before a relayed operation.

Stored centrally

Identity and coordination state

Users, organization membership, roles, plan state, Node discovery, relay state, and organization configuration live in Controller.

Authoritative on Node

Detailed runtime data

Snapshots, session transcripts, prompts, process data, and detailed runtime evidence remain authoritative on Nodes.

Relay behavior

Payloads pass through memory

Controller does not persist relay response bodies; relay traffic exists in Controller runtime memory only while the request is active.

Authorization

Human roles become semantic actions, then Node-local capabilities.

OAuth authenticates a human. Controller resolves organization membership and the requested semantic action. The Node does not need to understand users, billing, or organization RBAC; it enforces the scoped capability presented to its protocol surface.

Node capability

node.info

Read Node identity and protocol information.

Node capability

evidence.read

Read the Node snapshot/runtime evidence surface.

Node capability

session.read

Read a session, optionally restricted to one session identifier.

Node capability

session.message

Send a message to a session, optionally restricted to one session identifier.

Organization roles

Four built-in roles keep fleet authorization small and inspectable.

Nodes are registered into an organization namespace rather than being owned directly by a user. Every account receives a personal organization; Team organizations use the same membership model and add multiple members.

Role

Viewer

Inspect organization metadata, Nodes, runtime evidence, sessions, configuration, and billing state.

Role

Operator

Viewer permissions plus the ability to send session messages.

Role

Admin

Operator permissions plus Node, member, and organization-configuration management.

Role

Owner

Admin permissions plus organization and billing management.

Failure and trust boundaries

Cloud coordination can disappear without deleting the Node-local record.

Local capture and saved-session data do not depend on Controller persistence. A saved Direct path can continue to be the browser transport without Relay. Conversely, an organization-listed Node with neither a reachable Direct path nor an online Relay has no usable remote transport until one of those paths is restored.

  • 01
    Do not infer intent from transport

    Direct and Relay change how a request reaches the Node, not what the underlying runtime data means.

  • 02
    Do not treat Controller as a backup telemetry database

    Its coordination records are intentionally not a second copy of full session data.

  • 03
    Scope remote authority

    Use organization actions and Node capabilities rather than handing normal clients the persistent bootstrap credential.

Choosing a mode

Add only the coordination layer the deployment needs.

Use Local when one machine and local artifacts are enough. Use Direct when the browser can reach the Node through loopback, LAN, VPN, or an HTTPS endpoint and you do not need Relay. Use Controller-managed access when identity, organization membership, managed discovery, plan gates, roles, and Relay connectivity are part of the operating model.

Team and Enterprise plans extend the organization and governance boundary; they do not change the basic rule that detailed runtime data is authoritative on the Node. See Pricing for the currently published plan catalog rather than inferring a deployment feature from a design document.

Primary sources

Architecture claims are pinned to the released implementation.

Reviewed on 12 August 2026 against AgentSight v1.0.15 at ba14044491d2fdb52e8b9d0f3e9a94c5d3a12dd1. Product behavior changes quickly, so use the tagged release and exact source links below when a deployment or security decision depends on a specific version.