Agent autonomy is how much work an agent does before it checks back with you. At the low end of the dial, every single action waits for your approval. At the high end, the task starts the second it is reported and the agent runs until the work is finished.
The levels of agent autonomy
Using ChatGPT puts you at the low end. Every use of your Gmail, your calendar, every connector you have wired up gets approved before it happens. You are in the loop for each step, which stops being practical the moment a job has more than a handful of steps.
At the high end the agent takes a task and does everything it decides to do without coming back to you. Claude Code sits at that end. Give it a brief and it builds a working app.
What moved agents up the dial over the past year is the harness. The harness is the code wrapped around the model, and it decides which tools the agent can reach, whether its access to each one is write or read only, and what happens when it reaches for something outside those bounds. Same model, two harnesses, two different levels of autonomy.
Read only is the cheapest checkpoint there is, because it removes the need for one. An agent with read access to your CRM can pull the pipeline, work out which jobs have gone quiet and write you the list. It cannot move a stage or email a customer, so there is nothing to approve. Give that same agent write access and every action it takes is one you have to have thought about in advance, because it will not ask.
How agents get triggered: events vs schedules
There are two ways to wake an agent. A trigger fires on an event whereas a schedule fires at a time.
A trigger is something like a new email landing in the inbox. Nobody prompts the agent. The email arrives, the agent wakes up, cleans it up or drafts the reply, then goes back to sleep.
A schedule is a fixed time. Four of them run daily at Nairon: one watches competitors, one watches the content going live, and two performance agents track how the week and the pipeline are doing. The pipeline one wakes at 6am on a Sunday.
Where to put a human in the loop
The loop underneath is the same whichever way it starts:
- Wake up, on a trigger or a schedule.
- Decide what needs to happen.
- Take the action.
- Observe the result, then go round again until the work is done.
Run that with nobody in it and you have a highly autonomous agent. You lower the autonomy by putting a human in the loop at a named step, and which step you pick changes what you get back.
| Setup | Human checkpoint | Where it fits |
|---|---|---|
| High autonomy | None. The loop runs to completion. | Low stakes, high volume |
| Decision approval | A person qualifies the decision, and can change it, before the agent acts | High-stakes actions |
| Work review | A person checks the output after the task is finished | A new agent you have not learned to trust yet |
Every checkpoint you add costs throughput and buys control. Sorting inbound HVAC service emails all day is low stakes and high volume, so it wants autonomy. Revising the price on a commercial solar install wants an approval at step 2, before the number leaves the building.
How to set the dial
Start low. We build every agent at low autonomy first, then turn the dial up one checkpoint at a time. Somewhere on the way up the agent starts to struggle, and that is your cap for that job.
Struggling looks like a tool that does not fit the step it is on. Or the right kind of record and the wrong record, the invoice chased on the job that already paid. Or a loop that observes the work is not done and goes round again without getting closer, burning tokens and producing nothing. None of that shows up while the agent is read only and waiting on your approval, which is why the cap is something you find by raising the dial rather than something you can plan.
The cap sits between two failures. Past it the work breaks. Below it you are paying a person to approve things that never needed approving.
Business owners miss it from both sides. Some expect the whole job on day one, which is typically not the case. Others never find out what their agent can handle alone, so they never give it the tools and access it would need to do more.
The direction of travel is more autonomy and longer loops. Pick the highest-volume, lowest-stakes job you have, run it on a trigger with a review checkpoint at the end, and take the checkpoint out when the reviews stop catching anything.