Skip to content

Concept

Draft

Controlled delegation is the real engineering problem behind AI agents

Agent engineering is controlled delegation of authority under uncertainty, with intent, discretion, constraints, and verification kept explicit.

For
Engineers designing agent systems that can affect repositories, services, or other consequential infrastructure
You will finish with
Distinguish model capability from delegated authority and identify where each boundary should be enforced

Before you start

  • Familiarity with agent tool use and operational permissions

AI agents are often introduced as models with access to tools. That definition is useful in the same way that describing a database as software that stores information is useful: correct, but too shallow to explain the engineering problems that matter once the system becomes consequential.

The transition happens when a model is no longer asked merely to produce an answer. It is given responsibility for producing a result. That result may require reading systems, choosing a strategy, writing code, calling APIs, using credentials, spending resources, changing infrastructure, delegating subtasks, evaluating intermediate outcomes, and continuing long after the original request has disappeared from the context window.

The question is no longer simply Can the model figure out what to do? It is:

What responsibility have we delegated, what authority accompanies that responsibility, and what evidence is sufficient to let the resulting work continue?

The useful description is controlled delegation of authority under uncertainty.

Intent is larger than the prompt

A prompt is a piece of language. Intent is the state the operator actually wants to create. “Fix checkout” may begin a conversation, but it is a poor durable contract for autonomous work. A more operational version could be:

Reduce checkout failures below 0.1%, preserve current payment-provider behaviour, keep p95 latency below 800 ms, and make no irreversible schema changes.

Now the system has an objective, success conditions, constraints, invariants, and a boundary around acceptable solutions. A request becomes a plan, the plan becomes tasks, tasks are delegated, agents call tools, and tools change systems. At each transformation, intent can drift. Long-horizon autonomy therefore requires intent to become durable state rather than remain implicit in a transcript.

Delegation includes discretion

Giving somebody a task is not giving them unlimited freedom. Consider:

Investigate the production issue. You can read production telemetry and change staging. Do not touch the production database. Come back when you have reproduced the failure.

This contains responsibility for the investigation, freedom to decide how to investigate, access to specific resources, an explicit restriction, a stopping condition, and a requirement to return evidence. Agent delegation needs the same structure:

objective + authority + discretion + resources + constraints + verification obligations

Autonomy is delegated discretion, not a binary property. An agent may be fully autonomous when searching logs, moderately autonomous when changing staging, and unable to deploy production without approval. The meaningful question is not “Is this agent autonomous?” but “Which decisions has this system been entrusted to make?”

Capability is not authority

A model may technically be capable of deleting a database because it can operate a shell. That does not mean the task authorized it to do so. Capability asks what the system can physically do. Authority asks what it may do in this situation. They should not use the same mechanism.

The reasoning model can propose:

Restart the checkout cache.

A runtime should independently determine whether checkout is inside the delegation, whether this agent has restart authority, whether the resource is production, whether the operation is reversible, whether a change freeze is active, whether enough evidence supports the action, and whether approval is required. The model proposes. The infrastructure authorizes.

Strong boundaries exist outside the prompt

Prompts are useful behavioural controls but weak security boundaries. If customer records must never be deleted, a sentence saying “never delete customer records” is not enough. Make deletion unavailable through the tool; make the credentials unable to delete; route production requests through a policy enforcement point.

The greater the consequence of violating a boundary, the lower in the stack it should be enforced:

  • prompts describe expected behaviour;
  • tool schemas constrain actions;
  • runtimes enforce policy;
  • credentials constrain actual permissions;
  • networks constrain reachability;
  • sandboxes constrain blast radius;
  • infrastructure rejects invalid transitions;
  • verification detects undesirable outcomes;
  • recovery contains failures that still escape.

This is defence in depth for autonomous work.

Verification closes the delegation loop

Delegation without verification eventually becomes trust. An agent saying “Done” is making a claim. A deployment API returning success proves that a request was accepted; it does not prove that the application is healthy. A passing test proves that encoded tests passed; it does not automatically prove that the user-visible problem is resolved.

Verification asks: What observation of reality would justify accepting this claim? The verifier may be a compiler, protected test, metric, another model applying a rubric, or a human. Strong systems combine them. The important property is independence: the mechanism proposing the change should not be the sole authority deciding whether it was good.

Long-horizon autonomy changes the boundary over time

An investigation may begin with read-only access. The agent reproduces the problem; evidence supports a hypothesis; the runtime creates an isolated environment; a fix succeeds there; that evidence unlocks staging authority; a staging soak succeeds; a person approves production deployment; and the runtime grants a ten-minute, single-use production capability. After deployment, that capability disappears and the system returns to observation mode.

This is not static RBAC around an LLM. It is evidence-conditioned authority: authority expands when justified and contracts when verification fails, risk rises, or evidence becomes stale.

Two loops

The work loop is:

observe → reason → propose → act → verify → adapt

The governance loop observes task state, evaluates policy, evidence, and risk, exposes or revokes capabilities, determines assurance requirements, and authorizes the next transition. The work loop tries to accomplish the objective. The governance loop determines what kind of work is admissible.

Evidence generated by the first changes the state of the second. A better model makes better proposals; it does not remove the need to decide which proposals may affect reality.

The runtime is more than a tool router

A serious agent runtime resembles a small operating environment around a probabilistic worker. It contains identity, task state, policy, authorization, capability discovery, credentials, execution isolation, budgets, evidence, verification, observability, recovery, and escalation.

The model remains important, but it is no longer the whole system. The runtime determines what agents are allowed to do next, why, and on whose authority.

Draft boundary

This is a publishable architectural draft. It does not describe a released ReactorJet runtime, SDK, capability broker, or completed implementation.

Updated 2026-09-06by Tim
  • agent-systems
  • trust-boundary
  • evals

Keep exploring

Keep building the workflow