Principle
Work should flow from people to AI to machines
Engine does not treat the three kinds of executor as equals. They are ranked by cost and latency, and that ranking sets what Engine is for.
- Machine Agent
- Fastest and cheapest. A service answers in milliseconds, the cost is close to infrastructure alone, and repeated runs give the same result. In exchange it only handles work already described completely as rules.
- AI Agent
- Orders of magnitude slower than a machine and billed per call, but it takes on work with no clear rules yet — the work that previously required a person.
- Human Agent
- Slowest and most expensive, measured in hours or days, and it does not scale on demand. In exchange it is the only place with judgement for work nobody has managed to write down as rules.
That ranking has a blunt consequence: a process that leaves work with people forever pays the highest price forever. Engine’s job is therefore not only to orchestrate three kinds of executor smoothly, but to push each piece of work down to a cheaper tier once it is ready.
The mechanism is apprenticeship. While a person still holds a Skill, every execution already produces a clean input–output pair: Task.input is schema-validated and materialized exactly once, and the result returns through an independent Outcome. No extra collection tooling is needed — the training data for the successor is the incumbent’s own execution history.
And because a Skill is described by schema rather than by kind of executor, the handover never touches the process definition. A Step that points at a specialist today points at a model six months later and at a service a year after that — all three times it is the same Task requiring the same Skill. This is where the one-Agent-concept decision pays off.
Meta Agent goes one level further. It is an executor that performs no step in the process but adjusts the process itself: tuning a Step’s schema and prompt against observed results, and proposing Flow changes when the data shows a branch no longer holds. It is the one executor whose Skill is changing another executor’s Skill.
What makes that acceptable inside an audited process is the versioning decision. A Meta Agent editing a Flow does not overwrite the running definition: it produces a new Flow version, while every Process already started stays pinned to the old one. A case already handled is never retroactively handled differently because the system tuned itself. Without that constraint, letting a system rewrite its own process is not something you can put in front of a compliance function.
To be clear about status: apprenticeship and Meta Agent are in the design, not in V1. The V1 specification goes only as far as making them possible — a single Agent concept, Skills described by schema, and immutable Flow version identity.