Agency (Agent Concept)
Two systems can be built on the same language model with the same set of tools, and still only one of them decides anything. Agency names that difference: how much of the next step a system chooses for itself rather than executing a path someone laid out in advance.
What agency is made of
It is not one switch but a handful of decisions handed over to the system:
- Which tool to call next, and with what arguments.
- Whether the goal has been met, or another pass round the loop is needed.
- How to recover when a step fails — retry, take another route, or stop and ask.
A fixed pipeline that always retrieves, then summarises, then emails holds none of these. An agent handed only a goal holds all three.
A dial, not a label
The useful systems sit deliberately between the extremes. An agentic workflow fixes the overall route and grants agency only inside each step; a computer-use agent given a browser and an objective holds almost all of it. More agency buys adaptability to situations the designer never enumerated, and costs predictability — the same request takes different paths, consumes different budgets, and fails in ways no test anticipated.
Why it matters
Agency is the quantity every other agent concern is calibrated against. Guardrails, approval gates, step budgets and tracing all exist to keep delegated decision-making inside bounds, so how much agency a system gets is the first design decision, not an implementation detail discovered later.
Agency is the capacity to choose one's own actions in pursuit of a goal rather than execute a fixed script. In an LLM-driven system it is a matter of degree: how much of the control flow — which step comes next, which tool to call, when to stop — is decided by the model instead of the surrounding code. The amount of agency granted sets both the system's usefulness and its risk.
Imagine two assistants. You hand the first a checklist and they tick it off exactly as written. You tell the second “sort out my trip to Delhi next week” and leave them to it. The second one has agency — they work out what to do next themselves.
For software, agency means the program makes its own choices about how to reach a goal, instead of following steps a programmer wrote out beforehand. It picks which tool to reach for, notices when something has gone wrong, and tries another way.
More agency means more genuine help with vague, messy jobs. It also means less predictability, which is exactly why people put limits around what such software is allowed to touch.