Most teams want to start by writing the agent spec. Do not start there. Start with three decisions, made on paper, in a room with the operator and the approver.
Not what it can do. What it can decide without asking. Be specific. If it can approve invoices up to $5,000 without a human, say so. If it can never change a vendor record, say so. The boundary is the contract, not the prompt.
Not theoretically. Specifically. Which person, in which channel, with what SLA. A workflow that escalates to a generic queue is a workflow that never escalates. Pick a name and a Slack channel before you write a line of agent code.
If the agent does something you wish it had not, what undoes it? Some actions are trivially reversible (a draft email). Some are not (a paid invoice). For each tool the agent calls, write down the rollback. If there is no rollback, the agent does not get that tool until you have one.
We have never seen a successful agent that lacked clear answers to all three. We have seen many promising ones that died on the second one.