Skip to content

Change what a role does

Add or drop a duty in one sentence; it lands as one reviewed Change to the Role contract, and the agent works to it from its next Task.

For developers

Say the new duty, and it lands as one Change to the Role contract. The Agent in the seat works to it from its next Task, and the old Version stays one call away.

For developers

What you get

  • 1change to the Billing Specialist’s duties, showing before and afterChange
  • 1new duty the agent follows from its next piece of workAgent
  • 1saved version of the seat you can roll back toVersion

Your agent does

Role.update
You, to your agent

Have the billing agent call anyone whose payment fails twice.

Give the billing seat one more duty.

Change what the Billing Specialist does.

# Role.update
curl -X PATCH https://api.sb/leaseline.app/roles/billing-specialist \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Billing Specialist","responsibilities":"Retries failed payments on the dunning schedule. Calls every Customer whose payment fails twice."}'
import { $ } from 'startup-builder'

await $.Role.update({ id: 'billing-specialist', name: 'Billing Specialist', responsibilities: 'Retries failed payments on the dunning schedule. Calls every Customer whose payment fails twice.' })
npx startup-builder do Role.update --json '{"id":"billing-specialist","name":"Billing Specialist","responsibilities":"Retries failed payments on the dunning schedule. Calls every Customer whose payment fails twice."}'
{
  "name": "do",
  "arguments": {
    "code": "return await $.Role.update({ id: 'billing-specialist', name: 'Billing Specialist', responsibilities: 'Retries failed payments on the dunning schedule. Calls every Customer whose payment fails twice.' })"
  }
}

Change it

  • Show me the change before it goes live.
  • Undo that change.
  • Give the calls to a person instead.

Under the hood

Systems
Workforce, Billing
Nouns
Role, Change, Version, Agent
Events
Role.updated

The duty belongs to the seat, not the agent, so it outlasts whoever fills it. In your repository the same edit is one line in agents/finance/billing-specialist.mdx, as Role contracts shows.