Skip to main content
The failures above come from using credentials that were not designed for delegated, autonomous execution. The fix is an identity model for agents: scoped, auditable, and revocable.

Agents get their own identity

Each agent is a distinct principal, not a shared bot account.
With per-agent identity, you can apply policy, audit behavior, and revoke access at the right granularity.

Users delegate explicitly

Users approve what an agent can do through OAuth 2.0 consent. The agent receives delegated access, not the user’s full session. From the user’s perspective, this is what happens:
1

Agent requests access

Your agent starts a task that needs GitHub access. It initiates an OAuth flow through Kontext.
2

User sees a consent screen

The consent screen shows exactly what is being requested — which integrations, what scopes, how long:
3

User approves once

One approval per session. The agent receives a scoped token. The user can revoke it at any time from the Kontext dashboard.
Under the hood, agents use PKCE (public-client safe OAuth):
Only the party that initiated the flow can complete it.

Credentials are scoped and short-lived

Compare static tokens with per-request delegated credentials:
The agent does not carry one broad secret forever. It receives a short-lived delegated credential at request time, and Kontext enforces policy and lifetime centrally during exchange.
Fresh credentials, every time. The agent does not store a token and reuse it across tasks. Each call to kontext.require() returns a credential scoped to the current request with its own TTL. When it expires, the agent requests a new one. There is no single long-lived secret that grants access to everything.

Policy enforcement is centralized

A control plane evaluates each request across layered policy.
All layers must pass before any credential is issued.

Every action is audited

Each credential issuance and API call is logged with actor, delegation context, scope, and outcome.

Revocation is surgical

If one agent misbehaves, revoke that agent only.
Incident response is proportional to the blast radius.

Fits your existing stack

This layer augments existing IAM, IdP, and secrets systems.
You keep existing infrastructure and add agent-aware delegation where current systems are missing primitives.
This is the architecture Kontext implements. Start with the quickstart.