Technical paper · Agent governance
Nobody governs the action
The whole industry has solved where a company's data travels. None of those diagrams has anyone deciding whether the agent may execute what it is about to execute.
An AI agent with tools is not a chat. It is a process that opens files, runs commands, calls third-party services and, increasingly, hands work to other agents. The moment it has effects, it stops being a question of text quality and becomes a question of permissions.
This paper describes where the gap is, what we found auditing our own multi-agent platform, and four patterns that close it. There is no product to buy in any of these pages: all four patterns can be implemented in any system, and on the last page we say what we do, in case someone would rather not implement them alone.
1 · The gap
Take any reference architecture for multi-agent systems published by an infrastructure vendor. They all have the same shape: data sources on the left, a bus in the middle, agents on the right. And they all include a governance section that talks about data lineage, field-level encryption and retention policies.
All of that is data governance, and it is well solved. The problem is that the diagram ends at the agent. What the agent does next — open the file, run the command, write into the client's system, call a tool that in turn calls another — falls outside the drawing, and therefore outside the control.
This is not one vendor's oversight. It is a category gap: data governance and action governance are different problems, solved by different layers, and today only one of the two is on the market.
2 · What an agent can actually do
Before governing anything it is worth enumerating the surface. An agent with tools has five classes of effect, and each fails differently:
Execution
Commands on the system where it runs. The most dangerous and the most underestimated, because it usually arrives as “a tool that runs a script”.
Files
Reading and writing on the client's disk. The scope is rarely bounded: if the agent can read a directory, it can usually read its parent.
Network
Outbound internet. This is the default exfiltration channel: any data the agent has seen can leave inside a perfectly legitimate request.
External tools
Tool servers, today usually over MCP. The agent runs code you did not write, with whatever permissions the launching process holds.
Other agents
Delegation. Permission travels with the task, and the moment there are two levels nobody knows under whose authority the last step ran.
Across those five surfaces, three failure modes appear again and again: excessive permissions granted “to make it work” and never withdrawn; prompt injection, where content the agent reads turns into commands it obeys; and exfiltration through a tool, where data leaves down a channel that was authorised for something else.
3 · What we found auditing our own system
We built Lideria: a multi-agent platform with eleven specialised agents, an orchestrator that decides and delegates, and an MCP client written from scratch to connect external tool servers. Fifty-two endpoints, seventy-five green tests, five thousand load requests without a single error.
Auditing it with the same script we use on a client, the top finding was this: the endpoint that connects a tool server accepted an executable and its arguments, and launched it as a subprocess of the backend. Any authenticated user, not only an administrator. Every test green, every feature correct, and a remote code execution waiting for there to be a second user.
We tell it for three reasons. First, we found it ourselves, before the platform saw a single external user, and it is closed before anyone touches it. Second, it is not an exotic bug: it is the most common failure in this category, and it appears identically in systems built on any agent framework. Third, no test suite would have caught it, because the system was doing exactly what it was asked.
4 · Four patterns of action governance
None of the four requires any particular technology. They can be implemented on any agent runtime, and they are best implemented in this order.
Deny-by-default gate
Every action with effects passes through a single point that starts by saying no. It is not a list of forbidden things — that list is never complete — but a list of permitted ones, and anything absent is refused. You verify it like this: write an action nobody anticipated, and check that it is denied without anyone having had to anticipate it.
Role-scoped approval
Who may approve what, declared as rules rather than as the judgement of whoever happens to be watching the console. The operator who approves reading a directory is not necessarily the one who may approve a write to production. You verify it like this: take a high-impact action and try to approve it with the lowest role that exists.
Sealed chain
Every action is recorded chained to the previous one by a signature, so deleting or editing an entry breaks the chain and the verifier flags it. That is precisely the difference from an ordinary log: you do not have to trust the record, you check it. You verify it like this: hand-edit an intermediate entry and check the system detects it and says which.
Fail-closed to zero
When the permission system cannot be resolved — it is down, a rule is ambiguous, a field is missing — the agent closes down to zero tools instead of pressing on with whatever it has. It is the most frequently omitted pattern, because it contradicts the instinct that the system should keep working. You verify it like this: kill the permission service with an agent mid-task.
5 · What the regulation requires, and from when
The European AI Act's timetable changed with the Digital Omnibus (Regulation EU 2026/1744, in force since 27 July 2026). It is worth being clear about what is enforceable today and what is not:
- Prohibited practices · AI literacy
- In force since Feb 2025
- General-purpose models
- In force since Aug 2025
- Transparency — Art. 50
- In force since Aug 2026
- High risk — Annex III
- 2 Dec 2027
- High risk — Annex I
- 2 Aug 2028
Two practical consequences. First: Article 50 is already enforceable and affects anyone with an assistant on their website, not only high-risk systems. Second: there are fourteen months until the high-risk block, which is exactly how long it takes to put the four patterns in place and arrive with the record built rather than with a statement of intent.
If you would like to discuss it
All four patterns can be implemented by any team with enough time. If you would like to discuss this paper or any of its patterns, write to us.
Write to us at