What it actually is
Cloudflare Agents builds on its edge primitives — Workers (compute), Durable Objects (stateful, single-instance compute with storage), Workflows (durable, checkpointed execution) — and packages them into an agent runtime. The pitch of Project Think is that the runtime, not any one framework, is the hard part, so it ships that as a foundation others build on.
- Durable execution with fibers — crash recovery, checkpointing, automatic keep-alive. An agent survives a deploy or a crash mid-task and resumes, instead of starting over.
- The Agent class — state, sessions, routing, WebSockets, scheduling and observability bundled into one stateful object per agent.
- Sub-agents — isolated child agents, each with their own SQLite database and typed RPC, for delegation.
- Persistent sessions — tree-structured messages with forking, compaction and full-text search built in.
- Tools — browser automation, sandboxed code execution, AI Search, remote MCP, and payments.
How it maps to what we run
We run a hand-built agent runtime for the DLR chatbot — the bridge, the skills, the approval gate, the channels. Reading Cloudflare’s list is a useful mirror: most of our plumbing now has an off-the-shelf equivalent.
The last row is the point. Cloudflare gives you a superb runtime and leaves the model choice to you — same as every framework in our agent-frameworks scan. The complementary fit is obvious: a commodity runtime executes the call; our measured routing decides which model the call goes to.
The honest weighing — for a client, and for us
- +Durable execution and state are genuinely hard to build well — this is a real shortcut.
- +Runs at the edge, globally, on infrastructure many teams already pay for.
- +Positioned as a substrate, so it doesn’t force a framework choice.
- +Strong observability and session tooling out of the box.
- −No model-selection intelligence — the quality layer is still on you.
- −Project Think is preview; production maturity is unproven.
- −Ties an agent’s runtime to Cloudflare’s platform — a portability tradeoff.
- −Secrets, data residency and egress need the same scrutiny as any new platform.
Our read. This is the strongest case in the whole scan for adoptingrather than building — the heartbeat test run in reverse. We built heartbeat because nothing good existed; here something good does exist, and the runtime plumbing isn’t our edge. The differentiated work stays the measured model-selection layer that sits on top of whatever runtime executes the call. We think Cloudflare Agents is worth a hands-on test as a candidate substrate for future client agents — with our routing wired in as the model brain.
Where this leaves the build-vs-buy call
Whenever we find a vendor product this good, the question isn’t “is it a threat” — it’s “does it do something we’d be better off owning, or something we should just use?” For runtime plumbing, use it. For the answer to “which model is right, and can you prove it,” that’s ours to own, because no platform that sells its own models can answer it without conflict.