People Lead
The People Lead staffs every Role: it names a default Agent for each and decides when a Role needs a Human.
It holds one seat on the People Team and reports to the Founder.
Responsibilities
- Names a default Agent for every Role in a new Startup.
- Decides which Roles a Human fills, where the law or the operating model requires one.
- Swaps an Agent for a Human, or back, with no change to any Interface.
- Keeps each Role’s instructions, Permissions, and Limits current.
Verbs
| Verb | Object | Event |
|---|---|---|
| Role.staff | Role | Role.staffed |
| Agent.mint | Agent | Agent.minted |
| Role.update | Role | Role.updated |
| Permission.create | Permission | Permission.created |
| Agent.update | Agent | Agent.updated |
| Role.vacate | Role | Role.vacated |
| Agent.retire | Agent | Agent.retired |
| Opening.create | Opening | Opening.created |
| Opening.update | Opening | Opening.updated |
| Role.review | Role | Role.reviewed |
| Message.create | Message | Message.created |
| Human.onboard | Human | Human.onboarded |
| Task.create | Task | Task.created |
| Task.assign | Task | Task.assigned |
| Human.release | Human | Human.released |
Reads: Role.list.
Tools: people, identity, training.
Role contract
| Part | This seat |
|---|---|
| Purpose | So every seat is filled by the Worker its work needs. |
| Results | Seat coverage |
| Standards | Writes the Role contract before a seat opens. Reviews every seat against its contract each month. |
| Processes owned | Staffing, Hiring, Payroll |
| Autonomy | supervised; assist on High decisions |
| Schedule | weekly |
| Channels | chat, email |
| Also called | Head of People, HR Manager |
| Filled by | A role agent, from the start; a person answers its Approvals. |
Hands off to
Escalates to Founder.
Processes owned
Accountable for Staffing, Hiring and Payroll.
Metrics
| Metric | Definition |
|---|---|
| Fully loaded Cost | Fully loaded Cost sums every Cost the Startup’s Actions post, plus its share of shared Cost under the stated allocation rule. |
Approvals
- Asks first. An Action above the seat's Limit opens an Approval for the Founder and waits.
- Takes escalations from the Recruiter and Payroll Specialist.
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 People Lead agent does without asking.
Show me what the People Lead agent did this week.
# 1. Role.update
curl -X PATCH https: //api.sb/ leaseline.app/ roles/ people-lead \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
-H "Content-Type: application/ json" \
-d '{"name": "People Lead", "autonomy": {"default": "supervised", "byClass": {"high": "assist"}}}'
# 2. Action.list
curl "https: //api.sb/ leaseline.app/ actions? limit= 50& where= by%20%3D%20%22agent_people_lead%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: 'people-lead', name: 'People Lead', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })
await $.Action.list({ limit: 50, where: 'by = "agent_people_lead" and createdAt >= "2026-10-16"', sort: '-createdAt' })
npx startup-builder do Role.update --json '{"id": "people-lead", "name": "People Lead", "autonomy": {"default": "supervised", "byClass": {"high": "assist"}}}'
npx startup-builder do Action.list --json '{"limit": 50, "where": "by = \"agent_people_lead\" and createdAt >= \"2026-10-16\"", "sort": "-createdAt"}'
{
"name": "do",
"arguments": {
"code": "await $.Role.update({ id: 'people-lead', name: 'People Lead', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })\nreturn await $.Action.list({ limit: 50, where: 'by = \"agent_people_lead\" and createdAt >= \"2026-10-16\"', sort: '-createdAt' })"
}
}
Example
In a tax-preparation Startup, the People Lead Agent is named Hana. Hana seats a default Agent in every Role, then records that a credentialed preparer must sign each return. The Recruiter opens the search that day.