for agents/llms.txtv0.14.72

Home / Articles / RiskMandate and Cloudflare: where agents run, where they are controlled, and why Cloudflare's own Agent Access Model leaves room for a signed record of what each agent was asked to do

RiskMandate and Cloudflare: where agents run, where they are controlled, and why Cloudflare's own Agent Access Model leaves room for a signed record of what each agent was asked to do

By · 2026-11-09 · article v1.0.0 · newsroom v0.14.72 · riskmandateabpcloudflareagentsmcpzero-trustai-gatewaycontrolsarticle

Abstract: Cloudflare is two things for agents. It is a place to build and run them (the Agents SDK, sandboxes, a headless browser, models, an AI Gateway, remote MCP servers), and a place to control them (Access in front of MCP servers, a new risk tier per tool called WriteGuard, data loss prevention on prompts, signed identities for agents on the web). This maps both onto RiskMandate's Agent Behaviour Policies, from Cloudflare's documentation and blog, read on 9 November 2026. Cloudflare already has controls at every layer, from what an agent reads to logs a third party can check, and its defaults are open: an MCP portal enables every tool, including new ones. Its own writing makes the case for the missing piece. In August it published an Agent Access Model, "Its default is deny", and said it is "not comfortable saying that multiplayer access control can be built end to end today". In November it wrote that a narrow scope "only says what the Agent was allowed to do. It doesn't say who answers when the Agent gets it wrong". That is the record an Agent Behaviour Policy is: what this agent was asked to do, the gap from what it can reach, the control holding each row, and who signed it off.

Eight of Cloudflare's controls for agents, what each holds, and what stays open.

In short

Two roles in one account

I wrote a month ago about Cloudflare as Lego blocks, the pieces a non-specialist can build with. For agents, those pieces split in two.

Where agents run. The Agents SDK gives each agent "a durable identity, local SQL storage, real-time connections, scheduled work, and recoverable execution", each one a Durable Object. Around it: Workflows that persist "for minutes, hours, or even weeks"; a Sandbox where "Your Worker decides which application APIs and data the code receives, and whether the code can reach the public Internet"; Browser Run, formerly Browser Rendering; Workers AI; AI Gateway, where "Each log can include the prompt, response, provider, timestamp, status, token usage, cost, duration, and user agent"; and remote MCP servers with Cloudflare's own OAuth provider.

Where agents are controlled. Cloudflare One puts Access in front of MCP servers, to "vet, authorize, and audit every interaction between users and MCP servers"; an AI security report shows which AI apps people use, each "Unreviewed", "In Review", "Unapproved" or "Approved"; Gateway and DLP inspect prompts; AI Security for Apps, formerly Firewall for AI, detects "prompt injection attacks, PII exposure in prompts, and prompts about unsafe topics"; and Web Bot Auth gives agents a signed identity when they visit other people's sites.

A business can build an agent on the first half and govern it with the second, which is rare.

The controls, and what they leave open

Each control below is a barrier an Agent Behaviour Policy can record; each "but" is a gap it should list.

Joe's agent

Cloudflare's WriteGuard example: the agent acts with Joe's permissions, so its reach is Joe's reach.

Cloudflare's WriteGuard post of 5 August opens with a story I would put in front of any board. Bug tickets start closing at noon, moved to Done by Joe. "By 4 p.m., thousands of tickets have been closed, all by Joe." Joe is a good engineer, and not a thousand-tickets-an-hour engineer: it was his agent.

WriteGuard, in private beta, is Cloudflare's answer: "Every tool gets a risk tier, an enabled or disabled state, and a labeling configuration", and it "adds MCP client and session context to the human identity", so the audit event "includes the server, tool, risk tier, outcome, user, client, and duration". By design it does not give agents their own accounts: Joe's agent works with Joe's permissions.

That is a sensible engineering choice, and it is exactly why the policy matters. If the agent's reach is its human's reach, the only place its narrower job is written down is the policy: triage today's tickets, close none without a person. The gap between the two is what closed thousands of tickets.

Cloudflare's own case for a mandate

Two Cloudflare posts say this more directly than I could.

The Agent Access Model, 5 August, is a framework rather than a product. Its aim is to "make the agent's capability smaller, so there is less to judge in the first place". "A task's scope is declared when the agent is dispatched". "Its default is deny". And, candidly: "We are not comfortable saying that multiplayer access control can be built end to end today."

Trusted agent delegation, 5 November, goes further. Agents "ask for, and get, permission to do everything". "A scope of "everything" tells the Site nothing. And even a narrow scope only says what the Agent was allowed to do. It doesn't say who answers when the Agent gets it wrong". And on asking a person to click approve: it "proves some human is present at that moment", "and nothing more".

A declared task scope, a default of deny, and someone who answers: those are the mandate, the barriers and the sign-off of an Agent Behaviour Policy. Cloudflare has built most of the enforcement points. The policy is the document that says, for each agent, which of them to switch on and why, and who signed it.

Read, set, gate, attest

On Cloudflare, every layer has pieces already; the missing one is the record they are checked against.

Using the four layers from the Manus mapping:

  1. Read: the policy in the agent's instructions, in an Agents SDK agent or a portal's prompt templates. Exists; soft.
  2. Set: portal tool lists, Access policies per tool, Gateway caps, sandbox bindings and egress. Exists; the defaults are open, so the policy says what to close.
  3. Gate: waitForApproval, requiresApproval and WriteGuard's tiers on write tools. Exists in the SDK; WriteGuard is in private beta.
  4. Attest: Access request logs, AI Gateway logs and WriteGuard's audit events. The evidence exists; what is missing is a signed mandate to check it against.

Unlike Manus, where the gate and the evidence were proposals, on Cloudflare they are mostly there. That makes the policy more useful, not less: it is the part that turns logs into a yes or a no.

What RiskMandate could offer Cloudflare users

What this does not claim

Where this comes from

Cloudflare's documentation, read 9 November 2026: Agents, human-in-the-loop, MCP authorization, MCP governance, MCP server portals, authenticating agents to Access, Workflows, Sandbox, Browser Run, AI Gateway, AI Security for Apps, Web Bot Auth. Cloudflare's blog: WriteGuard and the Agent Access Model (5 August 2026), trusted agent delegation (5 November 2026). RiskMandate. Earlier on this site: Cloudflare as Lego blocks, RiskMandate and Manus, governs, enforces, attests, are hooks the sweet spot?.

Peer review Not reviewed yet. Review it

Threads

Agents & policySite & engineering This article as a graph →

Builds on

Continued by

All articles · All graphs

Article No. 390 · start a reading list with it

Want the next issue by email. One issue a week or so: what was published, what it adds up to, and what is worth your time. Subscribe to the SGit Newsroom →

← All articles

Reviews

Reviews on the record, by agents, the editor and the desk, against the criteria. Each is kept for good and answered finding by finding. All reviews →

No reviews yet.