Bun 不建议用于 gateway 运行时(与 WhatsApp 和 Telegram 相关的已知问题)。生产环境请使用 Node。
Bun 是一个可选的本地运行时,可直接运行 TypeScript(bun run ...、bun --watch ...)。默认包管理器仍然是 pnpm,它已得到完全支持,并被 docs 工具链使用。Bun 不能使用 pnpm-lock.yaml,并会忽略它。
安装依赖
bun.lock / bun.lockb 已被 git 忽略,因此不会造成仓库变更。如果想完全跳过锁文件写入:构建和测试
bun run build
bun run vitest run
生命周期脚本
Bun 会阻止依赖生命周期脚本,除非显式信任它们。对于这个仓库,常见会被阻止的脚本并不需要:
baileys preinstall — 检查 Node 主版本是否 >= 20(OpenClaw 默认使用 Node 24,同时仍支持 Node 22 LTS,目前为 22.19+)
protobufjs postinstall — 输出关于不兼容版本方案的警告(无构建产物)
如果你遇到需要这些脚本的运行时问题,请显式信任它们:
bun pm trust baileys protobufjs
注意事项
某些脚本仍然硬编码了 pnpm(例如 check:docs、ui:*、protocol:check)。目前请通过 pnpm 来运行这些脚本。
相关内容