OpenClaw 白皮书
Bun(实验性)
目标:使用 Bun 运行此仓库(可选,不推荐用于 WhatsApp/Telegram),同时不偏离 pnpm 工作流。
⚠️ 不推荐用于 Gateway 网关运行时(WhatsApp/Telegram 存在 bug)。生产环境请使用 Node。
状态
- ✦Bun 是一个可选的本地运行时,用于直接运行 TypeScript(
bun run …、bun --watch …)。 - ✦
pnpm是构建的默认工具,仍然完全支持(并被一些文档工具使用)。 - ✦Bun 无法使用
pnpm-lock.yaml并会忽略它。
安装
默认:
shbun install
注意:
bun.lock/bun.lockb 被 gitignore,所以无论哪种方式都不会有仓库变动。如果你想不写入锁文件:shbun install --no-save
构建/测试(Bun)
shbun run build bun run vitest run
Bun 生命周期脚本(默认被阻止)
除非明确信任(
bun pm untrusted / bun pm trust),Bun 可能会阻止依赖的生命周期脚本。
对于此仓库,通常被阻止的脚本不是必需的:- ✦
@whiskeysockets/baileyspreinstall:检查 Node 主版本 >= 20(我们运行 Node 22+)。 - ✦
protobufjspostinstall:发出关于不兼容版本方案的警告(无构建产物)。
如果你遇到真正需要这些脚本的运行时问题,请明确信任它们:
shbun pm trust @whiskeysockets/baileys protobufjs
注意事项
- ✦一些脚本仍然硬编码 pnpm(例如
docs:build、ui:*、protocol:check)。目前请通过 pnpm 运行这些脚本。