What is a shared limit (impact limit) for AI agents?
A shared limit is one allowance every agent, session and key draws from, reserved before an action is sent. How it differs from a token budget or a per-key quota, with an example of two agents racing for the last $100.
A shared limit, called an impact limit in Anlyon, is one allowance for what AI agents' actions change, such as money refunded or emails sent, that every agent, session and key in an environment draws from and that is reserved before each action is sent. A credit limit for all your agents. A new session cannot reset it.
Why does the limit have to be shared?
A limit that lives in the agent's prompt, its session or its key has a way around it: start another one. Ten sessions with a $100 allowance each can refund $1,000. A shared limit is counted where the call is made, so adding agents or sessions never adds a way around the limit.
How is it different from a budget or a rate limit?
| Control | What it counts | What it does not stop |
|---|---|---|
| Model token budget | Tokens the model spends | A cheap prompt that issues an expensive refund |
| Rate limit | Requests per minute | A slow agent that refunds all day |
| Anlyon budget | Anlyon operations per key, such as action invocations | The money a refund moves |
| Impact limit | Money, resource mutations or a unit you declare, across every key | Calls made outside Anlyon |
How is it enforced?
The allowance is reserved immediately before dispatch, after any approval. Every applicable limit is reserved in one transaction. If one has no room, none is reserved and nothing is sent, and the receipt grades refused. When a provider's response is lost, the reserved amount stays held as unknown exposure until the outcome is settled.
import { Client } from '@anlyonhq/sdk';
const ops = new Client({ apiKey: process.env.ANLYON_OPERATOR_KEY! });
// $100.00 a day of refunds, in minor units, for every agent in this environment.
await ops.impactLimits.create({
name: 'Daily refunds',
dimension: 'money',
currency: 'usd',
period: 'day',
amount: 10000,
});
Example
Two agents raced for the last $100 of a shared limit. Each asked for an $80 Stripe refund through a different key. One refund ran. The other was refused before dispatch with impact_limit_exceeded, and nothing was sent to Stripe for it.
What a shared limit does not cover
- Governed actions routed through Anlyon only. An action with no adapter and no declaration is not bounded, and neither is a call your own code makes directly.
- One environment and scope. A limit is not a cap across environments.
- A declared amount is the one you wrote. For an API you declare, you write what the action counts, and Anlyon enforces it before dispatch.
- Stripe refunds run against your own Stripe account, with a live or a test key.
Related terms
Read next
Frequently asked questions
What is an impact limit for AI agents?
An impact limit caps what your agents' governed actions change, in money or a unit you declare such as emails. Every agent, session and key in the environment draws from the same limit, reserved before dispatch. A new session or key does not get a new allowance. It is shared within one environment, not across environments.
Is an impact limit the same as a budget?
No. An Anlyon budget caps the Anlyon operations a key can perform, such as action invocations. It does not cap model tokens or the money an approved refund moves. An impact limit counts what a governed action changes.
