Agentic systems: where Jev sits
Every multi-agent system, however it is wired, is full of small decisions between the agents. Is this output good enough to pass on? Who should go next? Does this conversation belong to a different agent now? Is the agent going round in circles? Is it done? Those decisions are usually made by another large model writing a string. Each of them is a typed, calibrated question Jev can answer in a quarter of a second, and that holds whether the agents are arranged in a line, side by side, or around a coordinator.
Six architectures
6 simulations · 6 cookbooksIn each small diagram the pink diamonds are Jev, blue boxes are LLM agents, green is code or done, and orange is a person.
Three desks, one claim
Intake, assessor and letter agents in a line. A gate at every handoff passes the work on, sends it back once with a reason, or stops for a person.
Four specialists, one verdict
Jev picks which of four specialist agents this supplier needs. They run at the same time, and a second call merges their findings into one decision.
The foreman
Jev is the supervisor. Every step it picks the next worker, checks the last output, and notices when the team is going round in circles.
Passing the customer on
On every customer message, stay with the current agent or hand over. A margin in code stops agents passing the customer back and forth.
Write, judge, rewrite
A writer agent drafts and Jev scores the draft on a five-part rubric. "Done" is a line of code, feedback names the failing checks, and the loop knows when to stop.
The agent on call
An incident agent proposes commands. Jev checks each one for hazards, and also asks whether the agent is repeating itself and whether the incident has already cleared.
Where the decision lives
| Architecture | Who decides today | What Jev decides instead | What stays in code |
|---|---|---|---|
| Sequential | Nobody; the next stage trusts the last one. Or an LLM judge per stage. | grounded, complete, stage-specific checks, at every handoff | Retry once with named feedback; stop the line |
| Parallel | Run every branch; an LLM summarises the results | Which branches to run; the severity and evidence of each result | Value thresholds; the merge rule |
| Orchestrator–workers | A supervisor LLM re-reads the transcript every turn | next_agent, last_output_ok, stuck, needs_external_action | Confidence floor, step budget |
| Router / handoff | An LLM names the next agent; no probability attached | Topic probabilities, mid_task, wants_human, frustration | The handoff margin: switch only on a clear win |
| Evaluator–optimizer | A critic LLM writes paragraphs; "done" is undefined | A five-part rubric, each part its own question | "Done" = every check past its bar; the feedback text; the round budget |
| Tool-calling agent | The agent itself, or a slow gate on every call | Hazards of the call, plus repeats and resolved about the loop | Per-hazard bars; nudge, then stop |
The shape, in any architecture
Where to be careful
- Send a compact state. Accuracy drops as the state fills with material the question does not need, and agent transcripts grow fast. Send the task, the last output and a step count, not the history.
- One judgement per question. "Who's next, and is it safe?" is two questions. Ask both in the same call and combine them in code.
- Agent output is untrusted input. A worker that read a hostile web page can pass along text written to steer the router. Treat Jev as one layer of defence, not the only one.
- Calibrate on your own runs. Calibration is a property of many answers taken together. Log answers next to outcomes, and set each bar from that log.
- Jev doesn't plan or write. It chooses between options you name. Breaking a goal into steps and producing the text stay with the LLM agents.
- Pin the version (
jev-1.13.0) so a new release cannot quietly move your thresholds.
Each simulation matches the runnable Python in cookbooks/11–16. In the
cookbooks the LLM agents use whichever provider key you have set, and fall back to scripted sample output
when none is set, so the Jev half runs with only TYPESAFE_API_KEY. The numbers in the
simulations are illustrative, not measured.