Skip to content

Supply Manager

The Supply Manager recruits, verifies, calibrates, and pays the Suppliers a Startup’s human supply depends on.

It holds one seat on the Operations Team and reports to the Operations Lead.

Responsibilities

  • Forecasts booked capacity two weeks ahead.
  • Recruits credentialed Suppliers when open capacity falls below target.
  • Verifies every Credential at its source and checks it again daily.
  • Suspends a Supplier the same day a Credential lapses.
  • Pays each Supplier when the Customer confirms their work.

Verbs

Tools: supplier-onboarding, credentialing, task-inbox, payouts.

Role contract

PartThis seat
PurposeSo the Startup always has verified Suppliers ready for the work it sells.
ResultsFill rate
Autonomysupervised; assist on High decisions
Scheduleweekly
Channelsemail
Also calledVendor Manager, Supplier Manager
Filled byA role agent, from the start; a person answers its Approvals.

Hands off to

Escalates to Operations Lead.

Processes owned

Runs Supply: its Recruit supply Workflow is this seat's job.

Metrics

MetricDefinition
Fill rateFill rate is the share of requested Orders a Supplier accepts and starts within the promised time.

Approvals

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.

The agent in this seat
You, to your agent

Set how much the Supply Manager agent does without asking.

Show me what the Supply Manager agent did this week.

# 1. Role.update
curl -X PATCH https://api.sb/leaseline.app/roles/supply-manager \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Supply 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_supply_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: 'supply-manager', name: 'Supply Manager', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })
await $.Action.list({ limit: 50, where: 'by = "agent_supply_manager" and createdAt >= "2026-10-16"', sort: '-createdAt' })
npx startup-builder do Role.update --json '{"id":"supply-manager","name":"Supply Manager","autonomy":{"default":"supervised","byClass":{"high":"assist"}}}'
npx startup-builder do Action.list --json '{"limit":50,"where":"by = \"agent_supply_manager\" and createdAt >= \"2026-10-16\"","sort":"-createdAt"}'
{
  "name": "do",
  "arguments": {
    "code": "await $.Role.update({ id: 'supply-manager', name: 'Supply Manager', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })\nreturn await $.Action.list({ limit: 50, where: 'by = \"agent_supply_manager\" and createdAt >= \"2026-10-16\"', sort: '-createdAt' })"
  }
}

Example

In a patent-drafting Startup, the Supply Manager Agent is named Suki. The 14-day forecast shows 40 open Supplier hours against a target of 120. Suki recruits registered patent practitioners and calibrates each on a graded sample draft.