让我们的日历助手 Reclaim 在不推倒重来的前提下实现 AI 原生进化

让我们的日历助手 Reclaim 在不推倒重来的前提下实现 AI 原生进化

💡 原文英文,约1600词,阅读约需6分钟。
📝

内容提要

Dropbox 为 AI 日历助手 Reclaim 重建系统,以支持自然语言排程:搭建代理平台连接模型、日历上下文与工具;所有变更经 Schedule Action 校验流程;推出 Preview Mode,让用户预览 AI 建议对日程的影响后再确认应用,在保留原有排程逻辑的同时扩展 AI 能力。

🔎

延伸解读

为何不直接套用现成代理框架

Reclaim 团队最初探索了通用代理框架,但发现其落后于模型提供商的 API,且包含过多 Reclaim 不需要的结构。因此他们选择自建代理循环、工具和上下文收集系统,直接连接模型提供商。这样做能围绕自身排程需求设计,更快采用新能力,并灵活切换模型提供商,但代价是维护更多代码。

统一 Schedule Action 如何避免逻辑分裂

无论请求来自用户、自动排程器还是 AI 代理,所有日历变更都走同一套 Schedule Action 类型,包括相同的验证和提交流程。这避免了为每个来源单独实现规则,否则工程师需在多处同步更新。统一路径确保 Reclaim 在不同界面行为一致,也简化了后续维护。

Preview Mode 的技术实现与用户价值

Preview Mode 提供临时日历视图,让用户预览 AI 建议或聊天请求的变更效果,确认后再应用到真实日历。为保持快速响应,Reclaim 将自动排程器重构为纯函数,可在不保存的情况下计算提议日程,并用 Redis 缓存大量数据。预览中还会更新参会者可用性,使后续计算反映提议日程。

MCP 支持的双向意义

Reclaim 的工具系统以两种方式支持 Model Context Protocol:内部代理循环中,MCP 客户端让代理使用其他服务的兼容工具;同时,Reclaim 的 MCP 服务器将选定工具开放给 Claude、ChatGPT 等 AI 客户端。这些客户端使用自己的模型和代理循环,但能调用 Reclaim 内部相同的工具,扩展了 Reclaim 能力的触达范围。

❓

Q&A

Reclaim 为什么要进行 AI 原生进化?

因为 AI 助手和自然语言界面变得更强大,用户希望用自然语言描述排程目标,即使这些目标不能直接映射到现有设置或命令。Reclaim 需要连接自然语言请求和日历上下文,帮助用户减少查找设置或操作的时间。

Reclaim 的代理平台是如何工作的?

代理平台为模型提供相关日历细节和 Reclaim 功能的访问权限,同时控制模型能看到和做什么。模型解释用户的话并理解意图,代理则管理更大流程,提供 Reclaim 的指令、相关日历上下文和工具。工具返回信息后,代理可将其发回模型以指导下一步,这种反复交换称为代理循环。

什么是 Schedule Action?它有什么作用?

Schedule Action 是 Reclaim 内部对标准操作的称呼,如创建或更新事件、更改 RSVP、查找可用性。无论请求来自用户、自动调度器还是代理,都使用相同的 Schedule Action 类型,包括相同的验证和提交过程。这确保日历变更行为一致,工程师只需在一处修改操作逻辑,而无需维护多个版本。

Preview Mode 是什么?它如何帮助用户?

Preview Mode 给用户一个临时日历版本,让他们在应用到实际日历前,审查 AI 建议和通过聊天请求的变更。用户可以查看事件或设置变更如何影响其余日程,确认变更符合预期,并审查对共享事件的影响,然后再发送日历更新给其他参与者。

Reclaim 如何保证 AI 建议的变更安全可靠?

所有变更都经过 Schedule Action 校验流程,无论来自用户、自动调度器还是代理,都使用相同的验证和提交过程。此外,Preview Mode 让用户在应用到实际日历前预览变更效果,确保变更符合预期并审查对共享事件的影响。

Reclaim 为什么选择自建代理循环和工具,而不是使用现成的代理框架?

因为最初探索的框架落后于他们想使用的提供商 API,并且包含的结构比 Reclaim 需要的更多。自建这些部分让他们能围绕 Reclaim 的排程需求设计,更快采用新的提供商能力,并与不同模型提供商合作而无需重建平台其他部分。代价是需要维护更多代码,但使用代理帮助处理代码可以抵消部分额外工作。

🏷️

标签

➡️

继续阅读