← all simulations
jev-playground · agentic systems The Python cookbooks/11–16

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.

LLM agents do the workRead, plan, write, code, call tools. Nothing about them changes.
Jev makes the decisions between themOne call per decision point, typed answers, a probability on every one.
Your code holds the thresholdsBranches, budgets, arithmetic, and every bar that controls risk.

Six architectures

6 simulations · 6 cookbooks

In each small diagram the pink diamonds are Jev, blue boxes are LLM agents, green is code or done, and orange is a person.

11 · Sequential

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.

agent → Jev → agent → Jev → agent → Jev
12 · Parallel

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.

Jev plan → specialists in parallel → Jev merge
13 · Orchestrator–workers

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.

Jev ⇄ researcher · coder · tester · reviewer
14 · Router / handoff

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.

turn → Jev → stay · hand off · person
15 · Evaluator–optimizer

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.

writer → Jev rubric → publish · rewrite · person
16 · Tool-calling agent

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.

agent → Jev → run · confirm · block · nudge · stop

Where the decision lives

ArchitectureWho decides todayWhat Jev decides insteadWhat stays in code
SequentialNobody; the next stage trusts the last one. Or an LLM judge per stage.grounded, complete, stage-specific checks, at every handoffRetry once with named feedback; stop the line
ParallelRun every branch; an LLM summarises the resultsWhich branches to run; the severity and evidence of each resultValue thresholds; the merge rule
Orchestrator–workersA supervisor LLM re-reads the transcript every turnnext_agent, last_output_ok, stuck, needs_external_actionConfidence floor, step budget
Router / handoffAn LLM names the next agent; no probability attachedTopic probabilities, mid_task, wants_human, frustrationThe handoff margin: switch only on a clear win
Evaluator–optimizerA critic LLM writes paragraphs; "done" is undefinedA five-part rubric, each part its own question"Done" = every check past its bar; the feedback text; the round budget
Tool-calling agentThe agent itself, or a slow gate on every callHazards of the call, plus repeats and resolved about the loopPer-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.