Strategist
The Strategist runs the Weekly review: it reads the one number, finds the leakiest step, and proposes one change.
The Founder it reports to records each change as a Decision, with a note on how to undo it.
Responsibilities
- Reads the one number each week and the step where most buyers leak.
- Keeps, tunes, or stops each live Play by its own Metric on outside revenue.
- Proposes exactly one change a week, with a note on how to undo it.
- Keeps at most three Plays in test at once.
- Opens an Issue for the Legal Team when a change touches the legal floor, which review never edits.
Verbs
Reads: Evidence.list, Goal.list.
Tools: strategy, reports, experiments, web-research.
Role contract
| Part | This seat |
|---|---|
| Purpose | So the Startup changes one thing a week on evidence, not on mood. |
| Results | Weeks flat, Weekly verdicts |
| Works in | Hold review |
| Autonomy | supervised; assist on High decisions |
| Schedule | weekly |
| Channels | chat |
| Also called | Head of Strategy |
| Filled by | A role agent, from the start; a person answers its Approvals. |
Hands off to
Escalates to Founder.
Processes owned
Runs Iteration: its Weekly review Workflow is this seat's job.
Metrics
The one Metric that matters, read weekly, and the conversion of the leakiest step.
Approvals
- Asks first. Every change it proposes goes to the Founder, who records it as a Decision.
Filled by
A role agent fills the seat in every new Startup. The window below sets how much it does without asking, and buy a specialist agent swaps it.
Set how much the Strategist agent does without asking.
Show me what the Strategist agent did this week.
# 1. Role.update
curl -X PATCH https: //api.sb/ leaseline.app/ roles/ strategist \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
-H "Content-Type: application/ json" \
-d '{"name": "Strategist", "autonomy": {"default": "supervised", "byClass": {"high": "assist"}}}'
# 2. Action.list
curl "https: //api.sb/ leaseline.app/ actions? limit= 50& where= by%20%3D%20%22agent_strategist%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: 'strategist', name: 'Strategist', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })
await $.Action.list({ limit: 50, where: 'by = "agent_strategist" and createdAt >= "2026-10-16"', sort: '-createdAt' })
npx startup-builder do Role.update --json '{"id": "strategist", "name": "Strategist", "autonomy": {"default": "supervised", "byClass": {"high": "assist"}}}'
npx startup-builder do Action.list --json '{"limit": 50, "where": "by = \"agent_strategist\" and createdAt >= \"2026-10-16\"", "sort": "-createdAt"}'
{
"name": "do",
"arguments": {
"code": "await $.Role.update({ id: 'strategist', name: 'Strategist', autonomy: { default: 'supervised', byClass: { high: 'assist' } } })\nreturn await $.Action.list({ limit: 50, where: 'by = \"agent_strategist\" and createdAt >= \"2026-10-16\"', sort: '-createdAt' })"
}
}
Example
Stella is the Strategist of a directory of licensed home inspectors. This week 70% of Visitors leave at the location step, the leakiest step. Stella proposes one change, search first on the home Page, with an undo note, and the Founder records it as a Decision.