Agent / Delegate

A key the owner authorizes to spend from a vault, bounded by covenant-enforced policy.

An agent (also called a delegate in the covenant and SDK) is a keypair the vault owner authorizes to initiate spends from a vault, strictly bounded by the policy the owner set. An agent can be a person, an automated backend service, a bot, or an AI agent — the covenant treats them identically; there is no separate "AI" code path with different rules.

What an agent can do

What an agent cannot do

Why this holds even against a malicious or careless agent

The limits above are not enforced by the PolicyVault application asking nicely — they are enforced by the Kaspa covenant script itself. An agent that has its own private key and full knowledge of PolicyVault's internals gains nothing by skipping the app and hand-building a transaction: Kaspa consensus evaluates the same covenant rules regardless of how the transaction was constructed, and rejects anything outside policy.

AI agents specifically

An AI agent using PolicyVault (through the Agent API, MCP server, or an SDK) is exactly an agent in the sense above: it can request spends and see what the deterministic core would decide (via simulation), but it never gains any authority beyond what the owner configured, and its output is never trusted as a policy decision — see the authority statement in What is PolicyVault?.

See also: Give an AI agent spending authority, Rotate an agent, Agent rotation.