An agent that negotiates for you is only as safe as the instructions it negotiates inside. We call those instructions a mandate: a short, versioned statement of who your agent may deal with, what it may agree to, and when it must stop and ask a person. This guide walks through writing your first one.
What you’ll learn
- 01How to scope a mandate to one job before you widen it
- 02How to set ceilings and terms an agent cannot talk its way around
- 03Which decisions should always pause for a person, and who that person is
- 04How to test a mandate against realistic offers before it goes live
Pick one job and name it
A mandate that tries to cover everything protects nothing. Start with one recurring task your team already does by hand, with a clear owner and a clear budget. Requesting quotes for a known category of parts is a good first job. Renewing a strategic supplier contract is not.
Write the job as one sentence your finance lead would sign: “Request and agree quotes for standard fasteners from approved suppliers, up to the monthly category budget.” If you cannot write that sentence, the job is not ready for an agent.
Draw the boundary
Every mandate answers the same three questions. Answer them in this order, because each one narrows the next.
Who may your agent deal with?
List the counterparties by verified organization, not by name or email domain. An agent should never negotiate with an organization it cannot verify.
What may it agree to?
Set a ceiling per agreement and per period, in one currency. Ceilings should be well below the point where a mistake would hurt.
On what terms?
Name the terms that are fixed (payment days, delivery terms, liability caps) and say that any change to them is out of scope.
Write it down as policy
Once the boundary is agreed, write it in a form both people and the system can read. The file below is illustrative; field names are examples, not a published schema.
# Version every change. The record shows which version applied to each message.
version: 3
job: "Request and agree quotes for standard fasteners"
owner: "Head of Procurement"
counterparties:
allow: ["verified:approved-suppliers"] # verified organizations only
limits:
per_agreement: { amount: 5000, currency: "EUR" }
per_month: { amount: 40000, currency: "EUR" }
terms:
fixed: ["payment_days", "incoterms", "liability_cap"]
escalate_when:
- "any fixed term changes"
- "price above last agreed price by more than 8%"
- "new counterparty"Decide what pauses for a person
Escalation is not a failure. It is how the mandate stays narrow while the work keeps moving. For each escalation rule, name the person who decides and how quickly they need to answer. An approval that takes three days defeats the point of an agent.
Good escalation rules are specific and few. Three to five is typical for a first mandate. If you find yourself writing fifteen, the job is too broad.
Test it before it goes live
Before your agent talks to anyone outside, run it against offers you write yourself. Include the boring ones and the awkward ones.
Before go-live
0 of 6 done



