Skip to content
Versionv0.1 ALPHA 2

Companion Agent

The Companion Agent is a lightweight background service that runs on each user's endpoint and acts as the local trust broker for OSDF document access. It is a core zero-trust component - not a convenience utility - comparable in posture to a Tailscale client, Cloudflare WARP, a CrowdStrike Falcon sensor, or Microsoft Entra device identity, but specialized for document-centric access control.

One sentence

The Companion Agent is the local Policy Enforcement Point (PEP) that decides, on the device, whether a document may be opened - binding every decision to user, device, time, and policy.

Core roles

The Agent fills five roles that together make a document's protection travel with the endpoint:

RoleWhat it does
Local Policy Enforcement Point (PEP)Evaluates and enforces access decisions on-device for every request.
Device Identity BrokerProves a hardware-backed, non-exportable device identity to the policy plane.
Secure Authentication BridgeHolds the user's IdP session and brokers it to the viewer and browser.
Hardware Security InterfaceTalks to the TPM, Secure Enclave, smart cards, and PKCS#11 tokens.
Offline Trust Enforcement EngineCaches short-lived policy leases so decisions continue offline, fail-closed.

Why a local agent

Centralized decryption endpoints concentrate risk: a single compromise can expose every document. OSDF takes the opposite approach. Plaintext is only ever released on a trusted device, by the Agent, under a short-lived lease - there is no bulk-decrypt endpoint and no master key.

  • Decisions at the edge keep working when the network does not.
  • Device binding ensures a stolen credential alone cannot open a document.
  • Continuous verification re-checks session, device posture, and lease validity rather than trusting a one-time login.
  • Least privilege is enforced per document, per action, per lease.

Where it fits

text
User ─▶ Companion Agent ─▶ Device Identity ─▶ OSDF Policy Engine ─▶ Protected Document              (local PEP / trust anchor)            └─▶ TPM · Secure Enclave · Smart Card · Browser

The cloud control plane issues policy and wrapped keys; the Agent makes the final release decision locally and emits a signed audit event.

Next steps

Spec status: working draft v0.4 · subject to change before v1.0.