Delivery Manager
The Delivery Manager runs each Order a Customer places, gets it confirmed, redoes it once on a miss, and bills only when done.
It holds one seat on the Operations Team and reports to the Operations Lead.
Responsibilities
- Extracts each Order’s fields and asks once for anything missing.
- Assigns the work to an Agent or a Supplier by Credential, state, and load.
- Holds a Reserved Act until a licensed Human attests it.
- Requests confirmation and redoes the work once on rejection.
- Triggers billing on confirmation, never before.
Verbs
| Verb | Object | Event |
|---|---|---|
| Order.fulfill | Order | Order.fulfilled |
| Order.deliver | Order | Order.delivered |
| Task.assign | Task | Task.assigned |
| Order.update | Order | Order.updated |
| Message.create | Message | Message.created |
| Order.revise | Order | Order.revised |
Tools: task-inbox, documents, messaging, billing.
Role contract
| Part | This seat |
|---|---|
| Purpose | So every Order a Customer places is done, confirmed and billed once. |
| Results | Accepted outcomes |
| Autonomy | supervised; assist on High decisions |
| Schedule | daily |
| Channels | email, chat |
| Also called | Project Manager, Fulfillment Manager |
| Filled by | A role agent, from the start; a person answers its Approvals. |
Hands off to
Escalates to Operations Lead.
Processes owned
Runs Delivery: its Deliver an outcome Workflow is this seat's job.
Metrics
| Metric | Definition |
|---|---|
| Accepted outcomes | Accepted outcomes is the number of Orders Customers confirm as delivered, divided by the Customers with an Order in the window. |
Approvals
- Asks first. An Action above the seat's Limit opens an Approval for the Operations Lead and waits.
Filled by
A role agent fills the seat in every new Startup. Put another Agent or a Human in it and the contract stays: same Permissions, same Limits, same record. Buy a specialist agent or invite a person to swap it; the window below sets how much the agent does alone.
Set how much the Delivery Manager agent does without asking.
Show me what the Delivery Manager agent did this week.
# 1. Role.update
curl -X PATCH https: //api.sb/ leaseline.app/ roles/ delivery-manager \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
-H "Content-Type: application/ json" \
-d '{"name": "Delivery Manager", "autonomy": {"default": "supervised", "byClass": {"high": "assist"}}}'
# 2. Action.list
curl "https: //api.sb/ leaseline.app/ actions? limit= 50& where= by%20%3D%20%22agent_delivery_manager%22%20and%20createdAt%20%3E%3D%20%222026-10-16%22& sort= -createdAt" \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
import { $ } from 'startup-builder'
await $.Role.update({ id: 'delivery-manager', name: 'Delivery Manager', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })
await $.Action.list({ limit: 50, where: 'by = "agent_delivery_manager" and createdAt >= "2026-10-16"', sort: '-createdAt' })
npx startup-builder do Role.update --json '{"id": "delivery-manager", "name": "Delivery Manager", "autonomy": {"default": "supervised", "byClass": {"high": "assist"}}}'
npx startup-builder do Action.list --json '{"limit": 50, "where": "by = \"agent_delivery_manager\" and createdAt >= \"2026-10-16\"", "sort": "-createdAt"}'
{
"name": "do",
"arguments": {
"code": "await $.Role.update({ id: 'delivery-manager', name: 'Delivery Manager', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })\nreturn await $.Action.list({ limit: 50, where: 'by = \"agent_delivery_manager\" and createdAt >= \"2026-10-16\"', sort: '-createdAt' })"
}
}
Example
In a patent-drafting Startup, the Delivery Manager Agent is named Dex. An Order arrives without the inventor’s address, so Dex asks for it once and assigns the draft. The filing then waits for a registered patent practitioner’s Attestation.