Core Concepts
Understand how Agent Flywheel captures runtime evidence, generates tasks, grades outcomes, trains candidates, and promotes approved agent behavior.
Agent Flywheel architecture
Agent or runtime SDK/plugin
|
| outbound runtime evidence and workflow state
v
Mission Control [server-side work]
|
+--> Generate tasks
+--> Grade outcomes
+--> Train candidate
+--> Compare current versus candidate
+--> Approve promotion
Mission Control handles task generation, grading, training, promotion, and candidate-versus-current evaluation on the server. The local SDK or plugin connects outbound to Mission Control and does not reproduce those server-side operations.
Agent Flywheel lifecycle
Capture runtime evidence
The runtime SDK or plugin captures agent activity and tool evidence. Python integrations can provide explicit ground truth with record_tool_call().
Generate tasks
Mission Control uses captured data to generate tasks for the flywheel.
Grade outcomes
Mission Control grades task results from the available evidence. Outcomes are ok, failed, or unknown.
Train a candidate
Mission Control trains a candidate from eligible data.
Evaluate and approve
Mission Control compares candidate behavior with the current version. Promotion requires approval after the comparison meets your requirements.
Runtime and operator responsibilities
| Responsibility | Runtime integration | Operator skill |
|---|---|---|
| Primary role | Produces runtime evidence. | Manages the Mission Control workflow. |
| Data source | Uses the runtime SDK or plugin to capture activity and tool evidence. | Uses eligible OTEL trace exports or data produced by the SDK. |
| Training and promotion | Does not reproduce server-side workflow operations. | Manages server-side training, grading, promotion, and related workflow operations. |
| Local training | Depends on the runtime integration mode. | Does not perform local training. |
Runtime method reference
| API or mode | Behavior | Boundary |
|---|---|---|
serve() | Runs training rollouts and supports the rollout process used to produce training data and candidate behavior. | Claims rollouts for the training workflow. |
attach() | Captures an existing production process without claiming rollouts. | Captures production activity but does not provide training rollouts. |
record_tool_call() | Supplies explicit ground truth when the application knows the actual result of a tool operation. | Records the application's known verdict for a tool operation. |
Capture capabilities depend on the runtime SDK or plugin you use.
Outcome statuses
| Status | Meaning |
|---|---|
ok | Observed success |
failed | Observed failure |
unknown | No trustworthy verdict |
An unknown outcome is never a success. Preserve it when the available evidence does not support a trustworthy success or failure verdict.