SilvectorDocs
Silvector docsConceptsUpdated 2026-11-07

Concept

Delegation

The on-behalf-of chain that binds an agent to a principal for a scoped task.

Definition

A delegation says which principal an agent acts for and what it may do. It is written as an on-behalf-of chain, for example seat:ada > agent:meridian, and recorded in the receipt's delegation field. A chain that does not bind the agent to the seat is denied.

Shape
// DecideContext
act?: string;        // "seat:ada > agent:meridian"
actBound?: boolean;  // false when the chain does not bind the agent to the seat

// ReceiptBody
delegation: string | null;

Invariants

InvariantChecked by
An unbound on-behalf-of chain is denied with rule deny.delegation_chain.packages/engine/src/decide.ts (actBound === false)
An unverified delegation claim does not allow.packages/detect/src/session-handoff.test.ts: "an unverified delegation claim does not allow"
A delegated tool call emits one event with its receipt and the delegated user.packages/connectors/src/mcp.test.ts: "allowed call emits one event with a receipt and delegated user"

Out of scope

  • Consent the principal gave somewhere else. Silvector records the chain it was shown.
  • Payment authorization. A delegation to browse is not a delegation to pay.