Skip to content
Cloudflare Docs
非官方翻译 - 此文档为非官方中文翻译版本,仅供参考。如有疑问请以 英文官方文档 为准。

配置

Agent 的配置与任何其他 Cloudflare Workers 项目相同,使用wrangler 配置文件来定义您的代码位置以及它将使用的服务(绑定)。

项目结构

npm create cloudflare@latest agents-starter -- --template cloudflare/agents-starter 创建的 Agent 项目的典型文件结构如下:

Terminal window
.
|-- package-lock.json
|-- package.json
|-- public
| `-- index.html
|-- src
| `-- index.ts // 您的 Agent 定义
|-- test
| |-- index.spec.ts // 您的测试
| `-- tsconfig.json
|-- tsconfig.json
|-- vitest.config.mts
|-- worker-configuration.d.ts
`-- wrangler.jsonc // 您的 Workers Agent 配置

示例配置

下面是一个最小的 wrangler.jsonc 文件,定义了 Agent 的配置,包括入口点、durable_object 命名空间和代码 migrations

{
"$schema": "node_modules/wrangler/config-schema.json",
"name": "agents-example",
"main": "src/index.ts",
"compatibility_date": "2025-02-23",
"compatibility_flags": ["nodejs_compat"],
"durable_objects": {
"bindings": [
{
// 必需的:
"name": "MyAgent", // 您的 Agent 从 Worker 中的调用方式
"class_name": "MyAgent", // 必须与代码中 Agent 的类名匹配
// 可选:如果 Agent 在另一个 Worker 脚本中定义,请设置此项
"script_name": "the-other-worker",
},
],
},
"migrations": [
{
"tag": "v1",
// Agent 存储状态的必要配置
"new_sqlite_classes": ["MyAgent"],
},
],
"observability": {
"enabled": true,
},
}

配置包括:

  • 一个 main 字段,指向您的 Agent 的入口点,通常是 TypeScript(或 JavaScript)文件。
  • 一个 durable_objects 字段,定义您的 Agents 将在其中运行的 Durable Object 命名空间
  • 一个 migrations 字段,定义您的 Agent 将使用的代码迁移。此字段是必需的,必须至少包含一次迁移。new_sqlite_classes 字段是 Agent 存储状态的必要配置。

Agents 必须在其 wrangler.jsonc(或 wrangler.toml)配置文件中定义这些字段。