Oracle
Intend — what’s worth doing. Owns the problem worth solving and what success means, including the authority to decide not to build. Signature output: a kill decision.
An actor is a human holding one of four base motives. The four are chosen to be MECE — mutually exclusive (the motives don’t overlap) and collectively exhaustive (nothing essential falls outside). Around abundant generation they form a control loop: someone decides what’s worth making, someone makes candidates, someone keeps the whole coherent, someone makes the learning compound.
Oracle
Intend — what’s worth doing. Owns the problem worth solving and what success means, including the authority to decide not to build. Signature output: a kill decision.
Builder
Generate — make the thing. Owns a working contribution from one angle of expertise. Signature output: a working artifact + its contract.
Architect
Structure — keep the whole legible and evolvable. Owns the boundaries and conventions that keep the product comprehensible as it grows. Signature output: a boundary or convention.
Strategist
Accumulate — make knowledge compound. Owns the durable, reusable knowledge every other role draws on. Signature output: reuse.
The motive is what makes each a real actor: each one generates work the others don’t. Distinct motives, distinct work, distinct hand-offs.
Three of the actors are most often confused, so state the difference up front. Generalization is just abstraction; what differs is the scope of reuse and where the result lives.
flowchart TB B["<b>Builder</b> · design<br/>generalize within a feature<br/><i>lives in: the feature</i>"] AR["<b>Architect</b> · architecture<br/>generalize across features<br/><i>lives in: the product</i>"] C["<b>Strategist</b> · curation<br/>generalize across products<br/><i>lives in: the corpus — outlives the product</i>"] B -->|scope of reuse widens| AR -->|scope of reuse widens| C class B,AR,C actor classDef actor stroke-width:2px
| Generalize across… | Result lives in… | Actor | Concern |
|---|---|---|---|
| parts within one feature | the feature | Builder | design — how it works |
| features within one product | the product (a shared abstraction) | Architect | architecture — how it’s organized |
| products, over time | the corpus (template, skill, plugin) | Strategist | curation — knowledge that outlives the product |
What keeps the rungs apart is the mechanism each uses to add value:
An app crammed into a single file works — design is satisfied — yet is unmaintainable, because the behavior was bought directly, without the structural leverage that lets the rest of the system inherit the quality. That gap is the Architect’s reason to exist.
The three roles above operate on the product. The Strategist does not — its object is knowledge designed to outlive any single product. That raises the question that recurs every time: isn’t keeping the corpus organized just architecture at another tier?
Partly — and worth saying plainly. Organizing the corpus is architecture-of-the-corpus, and a Strategist does it constantly. But the role is named for the part architecture does not contain. Three acts are Strategist-only, and none is “organize”:
These are accumulate — grow a compounding, reusable asset — not structure. That is the motive architecture lacks.
The objection above has a sibling that catches more people: isn’t any reusable artifact Strategist work? A prose style guide with no project specifics, a lint rule, a scaffold — each generalizes across products, so the ladder appears to hand it to the Strategist.
It doesn’t, and the thing that settles it is when the act fires, not how far its result travels:
The test runs harder in one direction than the other, and it is worth being precise about which:
Firing inside the delivery loop rules the Strategist out — whatever the reach of the result. Firing between deliveries is necessary but not sufficient: the result must also be lifted out to outlive the product, which is the Architect|Strategist boundary above.
So the style guide written to ship this documentation set is Builder work, however portable it reads. Ask the counterfactual: would this artifact still have been built if the thing in hand hadn’t needed it? No means it kept its delivery actor. It becomes Strategist work the day someone lifts it out, between deliveries, as a lesson for products that don’t exist yet.
This is also why a skill or a plugin is not Strategist-by-kind. Authored to deliver a product, it is that product’s Builder or Architect work — the artifact kind never names the actor on its own.
The Strategist’s output feels like a layer because every other actor’s delegate reads from it — exactly the position of a platform team, whose product is a layer made available for others to consume. So the model has two tiers:
flowchart TB
subgraph delivery [Delivery actors — operate on the product]
direction LR
F[Oracle] ~~~ B[Builder] ~~~ A[Architect]
end
subgraph foundation [Foundation actor — operates on capacity to deliver]
CU[Strategist · the corpus]
end
CU -. "every delegate reads from the corpus" .-> delivery
class F,B,A,CU actor
classDef actor stroke-width:2px Next: Two faces and the gate →