What an AI Recruiting Agent Should Ask Permission For
Agent permissions done properly: four classes rather than an on-off switch, why the default must fail closed, and the one class autonomous mode should never relax.
Instalent's agent asks before it does anything you cannot undo.

Every agent demo shows the same thing: a request in plain language, a flurry of work, a finished result. What the demo never shows is the moment the agent is about to do something you cannot undo, because in a demo that moment does not exist. On a real desk it exists several times a day, and how a product handles it is the difference between an agent you let near a client account and one you watch like a new starter.
The question nobody asks at the demo
The useful question is not "what can it do". It is "what will it do without asking me, and what happens when it is not sure?"
That question is rarely answered, partly because the honest answer is a design decision rather than a feature. Most products answer it with a single switch: supervised or autonomous. That switch is the problem, because it treats "search for candidates" and "delete a project" as the same kind of act.
Four classes, not a toggle
The model we settled on has four permission classes rather than two modes. Every action a recruiting agent can take belongs to exactly one:
- Read. Looking at a search, a shortlist, an inbox thread. Never gates. If an agent has to ask before it can look something up, it is not an agent, it is a form.
- Mutating. Changing something that can be changed back: renaming a project, editing a draft, updating a task. Confirms by default, and this is the class an autonomous setting is allowed to relax for someone who has decided they want that.
- Chargeable. Spends credit without being destructive, such as enriching a batch of contacts. Gated the same as mutating, for a different reason. The risk is not damage, it is spending your money on something you did not intend.
- Destructive. Irreversible. Deleting a project, deleting a campaign. Always confirms, and autonomous mode is not permitted to relax it.
The reason to separate chargeable from mutating, even though they gate identically, is that they fail differently. A wrong rename is an annoyance. A wrong enrichment run is an invoice.
A single tool can span classes, so the class has to be per action
Our project tool handles both list and delete. One permission label for the whole tool would be
dishonest in one direction or the other: either listing nags you, or deleting does not ask. The class
is resolved per call, from the action in the request, not from the tool's name.
Fail closed when you are not sure
The interesting case is not the one you classified. It is the one you did not.
If an agent calls an action the permission map does not recognise, there are two possible defaults. Let it through, or stop and ask. We fail closed: an unrecognised action inherits the stricter class, so a gap in the map produces an unnecessary confirmation rather than an unapproved deletion.
That choice costs a little friction on a path nobody anticipated. The alternative costs a client's campaign. It is not a close call, but it is one a product has to make deliberately, because the comfortable default is the other one.

Autonomous mode should not be able to relax everything
Plenty of products offer an autonomous setting, and there is a real case for one. A recruiter who runs the same enrichment every morning should not confirm it every morning.
The mistake is making that setting global. If switching on autonomy also switches off the confirmation on deletion, the setting is not "work faster", it is "accept an outcome you have not thought about". Destructive stays gated regardless, and that is a deliberate limit on what the user is allowed to turn off about their own product.
This is the same reasoning behind a confirmation that asks you to type the name of the thing being deleted rather than click Yes. The friction is the feature.
What this looks like on a recruiting desk
Concretely, on a normal day:
- "Find me senior payments people in the Nordics" runs without asking. Read.
- "Rename this project" asks once, unless you have turned that class off. Mutating.
- "Enrich the top forty" asks, because it spends credit. Chargeable.
- "Delete the campaign" asks, with the name typed back, every time, regardless of your settings. Destructive.
The result is an agent that is quiet during the work and loud at exactly the moments that deserve it. That balance is what makes it usable on live client work rather than on a sandbox. It is the same agent described on AI recruiting agent, and the agency view of running it on a live desk sits on solutions for recruitment agencies.
If you want the wider picture of what the agent does rather than what it asks, AI agents for recruiting covers the landscape, and AI recruiting agents: capabilities, workflows and risks covers where a human stays in the loop across the stages of a search. This post is narrower on purpose: not which stages you supervise, but how the permission boundary itself should be built.
Where this is harder than it looks
Two honest caveats.
A permission model does not make an agent correct. It controls what happens when the agent is wrong, which is a different and smaller promise. An agent can be perfectly well-gated and still build you a bad shortlist, which is why the scoring has to be inspectable too. Scoring a shortlist covers that half.
Gating everything is its own failure. A product that confirms every action trains people to click through confirmations without reading them, which is worse than not asking, because now the clicks look like consent. The value is in asking rarely and meaning it.
Want an agent that asks at the right moments? Get started
Common questions
What should an AI recruiting agent never do without asking?
Anything irreversible. Deleting a project or a campaign should always confirm, and an autonomous setting should not be able to relax that. Actions that spend credit should also confirm by default, because the risk there is spending money you did not intend to spend.
Is an autonomous mode a bad idea?
No, but a global one is. Letting a recruiter switch off confirmations for reversible actions they repeat daily is reasonable. Letting the same switch disable the confirmation on deletion turns a speed setting into an acceptance of outcomes nobody thought about.
What happens when the agent tries something the permission model does not recognise?
It should fail closed, inheriting the stricter class, so an unmapped action produces an unnecessary confirmation rather than an unapproved deletion. The comfortable default is the opposite one, which is why it has to be a deliberate decision.
Does a permission model make the agent more accurate?
No. It controls what happens when the agent is wrong, which is a smaller and different promise. An agent can be perfectly gated and still produce a poor shortlist, which is why the scoring has to be inspectable as well.
Sources
- Bullhorn GRID report: Staffing firms using AI see stronger growth, faster placements - Bullhorn, 25 February 2026 (nearly 2,300 recruitment professionals, fielded November to December 2025; only about 10% of firms have implemented agentic AI across a full workflow, and barriers cited include data readiness, security and unclear implementation strategies).
- The State of Agency Recruitment: 2026 Benchmark Report - ATLAS, 16 March 2026 (survey of 1,000+ agency recruiters; 50.68% use AI regularly for specific tasks and 80.82% use it for admin and data entry, which is the low-risk end of the range this post is about).
Find better candidates, faster
Source, verify and reach candidates on one engine. Get 25% off for life.
Keep reading


