Skip to main content
Kordio Control answers one question, the same way for a payment, a paid tool call, or anything else an agent asks for: may this agent take this action, right now? The answer comes back in the same request, naming the rule that decided, and an allowed answer comes back signed. This is Kordio Control, and it is in early access.

Authorize an agent action

Gate your first action in test mode, in about five minutes.

How a decision is reached

Evaluation order, states, outcomes, and headroom.

The vocabulary

These are the words in the wire format, not a conceptual model laid over it, so they are worth learning exactly.

Agent

A scoped identity for one agent workload. Holds a hashed krt_ API key, a mode (test or live), and a list of action types the key may even ask about. Use one per workload, so you can revoke one without stopping the rest.

Budget

An envelope for one run. Spend is committed against it, and it is the unit that stops a loop rather than a single mistake. How large a budget an agent may open is capped by the agent’s max_budget_cents, which is set from the dashboard and cannot be raised with an agent key. Budgets delegate to child budgets, and a child reserves from its parent when it opens, so children cannot sum past what the parent has left. A budget has no expiry and no close endpoint; it ends by running out.

Policy

The rules attached to an agent. Caps, windows, rate limits, allowlists, approval thresholds, and a condition language for everything they do not cover. The rule kinds are a closed set; condition is the extension point. Policy is data, not code, so it validates when you write it, not when an agent is waiting.

Action

One request for authorization, and the record it leaves. An action carries an action_type, an optional resource, and a cost_cents. Payments are a separate resource, payment_intent, evaluated under the same policy.

Decision

What came back: an outcome of allowed, requires_approval or denied, the rule that produced it, the headroom each limit had left, and a policy_snapshot of the rules as they read at that instant.

Cosignature

A short-lived ES256 signature over an allowed decision, so whoever executes the action can verify the authority without calling us, and without trusting the agent that carried it.

What Kordio never does

Kordio holds no funds, no accounts, and none of your credentials. It decides and it signs; your own rails and your own keys execute. That is a deliberate limit with a consequence worth stating plainly: an executor that never checks with Kordio and never verifies a cosignature is not governed by it. The control layer binds the paths you route through it.

Next steps

Writing a policy

Every rule kind, the typed shorthands, and the condition language.

What Kordio guarantees

Ordering, reservations, replay, and the failure modes.

Verifying an authorization

Check a cosignature offline, without calling us.

API reference

Every endpoint, generated from the OpenAPI spec.