Skip to content

Practical ways to work with agents

Dynamic workflows that verify themselves.

Build checks into the workflow, so every result is tested against what you asked for.

ReactorJet shares practical guides, reusable components, and tools for people building and working with agents.

One task, from request to result

Fix the bug. Check the result. Decide what ships.

A form submits twice when someone clicks quickly. Follow an agent fixing it, then see how a separate check decides whether the change can move forward. Select any step or switch the outcome to explore this example.

Running brief stage
Control plane
Work plane
01Brief
Bound the taskOne action, one submission
02State
Read the systemDuplicate request reproduced
03Worker
Propose one changeSubmission guard patch
04Evaluator
Check independentlyBrowser check report
05Policy
Apply the boundaryGate decision
06Record
Keep the proofBefore-and-after evidence
07Controller
Choose the next moveNext action
01Brief

Bound the task

Fix the form that submits twice on a quick double-click. One user action must create one submission. Keep the existing validation and keyboard behavior, and leave billing and authentication untouched.

ProducesOne action, one submission
Build this kind of workflow

The component library

Start with a clear task, add a separate check, and keep the evidence. Explore each part below for a guide to using it in your own workflow.

Browse the component library

Put it into practice

Take one task from intent to a checked result.

Try the example below, then follow the guide to build a workflow in your own tools.

Interactive example

Ready

Describe the outcome

Start with the result you want.

Edit the request and press send to play an example of the workflow. This demonstration runs in your browser; it does not send the request to an agent or change any files.

Build your first workflow

Give the agent room to work. Keep the result checkable.

Start with one task and a clear success condition. Let the agent choose its steps, then use an independent check to decide whether the result is ready. The tutorial shows how to put those parts together.

Find out how
See how the pattern fits your stack

The same responsibilities can live in TypeScript, Python, shell scripts, or a workflow engine. These architecture sketches illustrate the pattern; package names and commands are examples, not installable ReactorJet APIs.

import { closeLoop } from "@reactorjet/core";

await closeLoop({
  observe: repositoryState,
  propose: boundedCandidate,
  verify: heldOutEvaluator,
  adapt: nextBestAction,
});

What we are building toward · Biro

A practical operating model for agent-driven work.

Biro is where this model is taking shape: one environment for expressing intent, directing agents, checking evidence, applying policy, and deciding what moves forward.

ReactorJet documents that work as it develops. As models improve and tooling matures, we are building and testing the controls, components, and workflows that make the model practical, then bringing them together in Biro.

FAQ

Questions, answered.

What ReactorJet is, what you can use now, and how to start building with the ideas.

What is ReactorJet?

ReactorJet is a public library for designing more reliable agent workflows. It brings together tutorials, reusable components, field notes, and working examples that connect intent, action, evaluation, policy, and deployment.

Can I use these components?

Yes. Use them as implementation patterns and adapt the interfaces to your stack. Each component explains the responsibility it owns, the evidence it expects, and the boundary it should not cross.

What makes a workflow dynamic?

It can observe the result of its own action, compare that result with an explicit target, and use the verdict to choose the next move. A fixed automation sequence cannot do that.

Does ReactorJet replace human review?

No. It makes the decision boundary explicit. People set goals, define trust boundaries, and decide which verdicts may advance automatically. The system keeps evidence attached to every consequential change.

Where do the evaluators run?

Outside the proposer whenever possible. Separating proposal from judgment reduces self-grading and makes failures easier to reproduce, audit, and contain.

Where should I start?

Start with one bounded task, one measurable target, and one independent check. Add policy, approval, and recovery only where the consequences require them.

Start with something useful

Make your next agent task one you can trust.

Follow a practical tutorial, give the agent a clear task, and add an independent check you can use again.