Use case · learned routing
Stop typing “continue”.
Workers end turns early: “Next, I’ll run the tests.” “Waiting on CI; I’ll merge on green.” And you pick a bigger model for the hard tasks. xcb learns both from what you already do, and shows its evidence.
Learning is local, stores numeric features rather than text, and never widens what a route or a continuation is allowed to do.
Two small decisions, made many times a day.
Each is a reflex: a small ALGAL program over deterministic features and learned weights. The program has no effects and makes no model calls, so every decision is a receipt you can replay.
Which tier this task deserves
The route reflex reads the shape of your request (an imperative opening, resume language, how many different actions it asks for) and, if configured, a judge's assessment. It chooses frontier or standard among routes that are already eligible. Large prompts always get the highest tier.
Whether the worker actually finished
The settle reflex categorizes how each turn ended: done, stopped short, asked a question, needs approval, blocked, interrupted. A promised next step, a worker waiting on an external event, or an open checklist count against “done”.
What you do next is the label
Reply “continue” after a completed task and xcb learns the turn stopped short; with continuation on, it reopens that task in its session. Ask for “opus” after a task and the route learns you wanted more. Move on, and the turn counts as finished.
Gets better as you use it. Only when it can prove it.
Every 16 labels, xcb fits a candidate anchored on the shipped defaults and compares it with the active generation on a holdout it never trains on.
A candidate is promoted only with at least five held-out examples of each outcome, lower log loss, and no loss of accuracy or ranking quality. Each generation records its parent and the evidence that promoted it. xcb reflex rollback route 0 returns to the defaults.
On one operator's history of 320 first prompts, the keyword fallback had no signal for the tier they picked (holdout AUC 0.44). After one training pass, the learned head reached 0.65 on the same holdout without a judge call. The judged head, already fitted to that operator, was not promoted because the holdout showed no gain.
Full measurements ↗Change the logic, not just the weights.
Parameters are data and programs are replaceable, so the learned part and the decision logic are separate seams.
Replace a program
Drop an organism at reflexes/route.algal.json in the state directory to add a gate or combine heads differently. xcb admits it only if it has no effects and no agent calls. Every observation records the digest of the program that made it.
Bootstrap from history
xcb reflex import reads your own labeled prompts and keeps only the derived features, so you can start from months of history instead of from zero.
Turn it up gradually
Each reflex is off, observing, or active. Continuation ships observing: it categorizes and learns, but does not act until you turn it on. The deterministic safety gates and a configured judge's veto still apply.