Cloudflare Agents SDK
Agentby davila7 · Added 5mo ago
Claude
Install
npx claude-code-templates@latest --agent=cli-tool/components/skills/development/cloudflare-deploy/references/agents-sdk --yesAdd to Claude
claude mcp add cloudflare-agents-sdkAbout
Cloudflare Agents SDK
Cloudflare Agents SDK enables building AI-powered agents on Durable Objects with state, WebSockets, SQL, scheduling, and AI integration.
Core Value
Build stateful, globally distributed AI agents with persistent memory, real-time connections, scheduled tasks, and async workflows.
When to Use
- Persistent state + memory required
- Real-time WebSocket connections
- Long-running workflows (minutes/hours)
- Chat interfaces with AI models
- Scheduled/recurring tasks with state
- DB queries with agent state
What Type of Agent?
| Use Case | Class | Key Features |
|---|---|---|
| AI chat interface | AIChatAgent | Auto-streaming, tools, message history, resumable |
| MCP tool provider | Agent + MCP | Expose tools to AI systems |
| Custom logic/routing | Agent | Full control, WebSockets, email, SQL |
| Real-time collaboration | Agent | WebSocket state, broadcasts |
| Email processing | Agent | onEmail() handler |
Quick Start
AI Chat Agent:
import { AIChatAgent } from "agents";
import { openai } from "@ai-sdk/openai";
export class ChatAgent extends AIChatAgent<Env> {
async onChatMessage(onFinish) {
return this.streamText({
model: openai("gpt-4"),
messages: this.messages,
onFinish,
});
}
}
Base Agent:
import { Agent } from "agents";
export class MyAgent extends Agent<Env> {
onStart() {
this.sql`CREATE TABLE IF NOT EXISTS users (id TEXT PRIMARY KEY)`;
}
async onRequest(request: Request) {
return Response.json({ state: this.state });
}
}
Reading Order
| Task | Files to Read |
|---|---|
| Quick start | README only |
| Build chat agent | README → api.md (AIChatAgent) → patterns.md |
| Setup project | README → configuration.md |
| Add React frontend | README → api.md (Client Hooks) → patterns.md |
| Build MCP server | api.md (MCP) → patterns.md |
| Background tasks | api.md (Scheduling, Task Qu |
Tags
FullStackaitmplclaude-code-templates