在 Cloudflare Workers 上运行 OpenClaw AI 助手:分步教程
在 Cloudflare Workers 上部署 OpenClaw(前身为 Moltbot)
OpenClaw 是一个轻量级、可扩展的个人 AI 助手,可为 Telegram、Discord、Slack 等聊天频道以及基于网页的用户界面提供动力。将其运行在 Cloudflare Sandbox 容器中,可以实现一种廉价、始终在线、全球分布的部署,且无需管理 VM 或 Kubernetes 集群。
先决条件 * Cloudflare Workers 的「付费」账号(仅在 Workers 付费计划中支持 Sandbox 功能)。 * 支持的 LLM 提供商的 API 密钥——我们推荐使用 Anthropic 的 Claude 或 Cloudflare 的 AI Gateway。 * 可选:用于管理员 UI 保护的 Cloudflare Access 凭证,以及用于持久化的 R2 桶。
TL;DR – 运行
npm install,设置密钥,部署(npm run deploy),然后打开https://your‑worker.workers.dev/?token=YOUR_TOKEN。
1. 克隆仓库
git clone https://github.com/cloudflare/moltworker
cd moltworker
该仓库自带
Dockerfile、wrangler.js,以及为控制平面 UI 打包的 Vite 构建。
2. 安装依赖
npm install
3. 设置 LLM 密钥
直接 Anthropic 访问
npx wrangler secret put ANTHROPIC_API_KEY
或 Cloudflare AI Gateway(推荐用于成本追踪)
npx wrangler secret put AI_GATEWAY_API_KEY
npx wrangler secret put AI_GATEWAY_BASE_URL
如果同时提供 gateway 和直接 Anthropic 密钥,gateway 将优先使用。
4. 生成网关令牌
控制台 UI 通过一个自定义令牌进行保护,该令牌与 Cloudflare Access 独立。生成 32 字节十六进制字符串并将其设为密钥:
export MOLTBOT_GATEWAY_TOKEN=$(openssl rand -hex 32)
echo "$MOLTBOT_GATEWAY_TOKEN" | npx wrangler secret put MOLTBOT_GATEWAY_TOKEN
请妥善保管此令牌——您将在 URL 中使用它来访问 UI。
5. 可选:配置 Cloudflare Access
管理员 UI(/_admin/)和 WebSocket 握手可以通过 Cloudflare Access 进行额外的安全保护。
- 在 Workers 仪表盘中,点击您的 worker → Settings → Domains & Routes → workers.dev → Enable Cloudflare Access。
- 在 Access 设置中,将您的邮箱添加至 allow‑list,或配置 OAuth 提供商。
- 复制 Access 应用中的 Application Audience (AUD) 标签,并将其设为密钥:
npx wrangler secret put CF_ACCESS_AUD - 设置您的团队域(
myteam.cloudflareaccess.com):npx wrangler secret put CF_ACCESS_TEAM_DOMAIN
设置完这些密钥后,重新部署(npm run deploy)。
6. 可选:使用 R2 的持久化存储
如果不使用 R2,所有设备配对和聊天记录会在 sandbox 重启时消失。要持久化数据:
- 创建一个名为 moltbot-data 的 R2 桶。
- 生成一个具有 Object Read & Write 权限的 API 令牌。
- 设置密钥:
npx wrangler secret put R2_ACCESS_KEY_ID npx wrangler secret put R2_SECRET_ACCESS_KEY npx wrangler secret put CF_ACCOUNT_ID
worker 将每 5 分钟自动同步配置到 R2。
7. 部署 worker
npm run deploy
部署过程中,Wrangler 将上传 Vite 打包、在 Cloudflare 上设置环境变量,并启动 sandbox。首个请求可能需要 1‑2 分钟,因为容器正在启动。
8. 访问控制台 UI
打开浏览器,输入:
https://your‑worker.workers.dev/?token=YOUR_GATEWAY_TOKEN
将 your‑worker 替换为部署后返回的路由,将 YOUR_GATEWAY_TOKEN 替换为第 4 步中存储的令牌。
设备配对
当新的客户端(浏览器或聊天平台)连接时,它会等待批准。使用受 Cloudflare Access 保护的管理员 UI(/_admin/)来批准设备。
9. 可选聊天频道
您可以通过添加相应的令牌来启用 Telegram、Discord 或 Slack 机器人:
# Telegram
npx wrangler secret put TELEGRAM_BOT_TOKEN
# Discord
npx wrangler secret put DISCORD_BOT_TOKEN
# Slack
npx wrangler secret put SLACK_BOT_TOKEN
npx wrangler secret put SLACK_APP_TOKEN
然后重新部署。
10. 可选浏览器自动化(CDP)
OpenClaw 可以通过 Chrome DevTools Protocol (CDP shim) 控制无头 Chrome 实例。按以下方式配置:
npx wrangler secret put CDP_SECRET
npx wrangler secret put WORKER_URL # 例如 https://your‑worker.workers.dev
CDP 端点(/cdp/json/...)需要 CDP_SECRET 请求头。
11. 调试与日志
当 .dev.vars 中设置 DEBUG_ROUTES=true 时,诸如 /debug/processes 与 /debug/logs 等路由会变为可用。它们在本地开发或实时监控时非常有用。
12. 高级配置
- 容器休眠 – 通过设置
SANDBOX_SLEEP_AFTER为一个时长(例如10m)来降低成本。 - 备份 – 如果已配置桶,您可以在
/admin/中触发按需 R2 备份。 - 自定义 AI 提供商 – worker 可接受直接的
OPENAI_API_KEY或任何 SDK 支持的键。
13. 结论
在 Cloudflare Workers 上运行 OpenClaw 可为您提供:
- 零运维 – Cloudflare 负责扩容、网络与安全。
- 全球低延迟 – worker 运行在 Cloudflare 全球边缘节点。
- 可扩展性 – 通过添加技能、新的聊天平台或浏览器自动化,轻松扩展功能。
源代码开源且持续演进。查看 GitHub issue 与 PR 以获取最新更新。祝编码愉快!
下一步
- 探索内置的
cloudflare-browser技能,进行自动网页抓取。 - 通过在
skills/下创建新文件夹并将其添加到moltbot.json来构建自己的技能。 - 与 Cloudflare AI Gateway 集成,实现使用分析与成本控制。
欢迎 fork 项目,进行修改并分享您自己的 OpenClaw 实现。祝你好运!