Cloudflare Agents 从入门到精通
附录

§28 思维转变:Agent 不是函数,是对象

28.1 最大的认知坑

我刚接触 Cloudflare Agents 时,把它当成"一个 API 函数"。写个 handler,调模型,返回。结果状态全丢,每次请求像陌生人。

28.2 换一个比喻

函数是无状态的。你打一次,它算一次,算完就忘。

Agent 是有身份的对象。它有名字、有记忆、有私有数据库、会自己定时醒来。你不是在"调用"它,是在"和它打交道"。

28.3 这个转变带来的设计差异

旧思维(函数) 新思维(对象) 标叔的体会
每次请求重新取上下文 上下文在对象里常驻 不用反复喂历史
状态放外部 DB 状态在 Agent 内 少一个组件
调度靠外部 cron 服务 调度在对象内 自包含
并发靠自己加锁 DO 单实例串行 天然线程安全
核心建议
设计 Agent 时,先问"它的身份是什么、它记得什么、它什么时候自己醒"。别问"这个请求怎么处理"。这一句,值整本书。

28.4 写在最后

Cloudflare Agents 把"有状态的 Agent"这件最难的事,焊进了 Durable Object。你拿到的是对象,不是函数。

剩下的,只是业务逻辑。