跳转到主要内容
不建议将 Bun 用于 Gateway 网关运行时(WhatsApp 和 Telegram 存在已知问题)。生产环境请使用 Node。
Bun 是一个可选的本地运行时,用于直接运行 TypeScript(bun run ...bun --watch ...)。默认包管理器仍然是 pnpm,它受到完全支持,并由文档工具使用。Bun 无法使用 pnpm-lock.yaml,并且会忽略它。

安装

1

Install dependencies

bun install
bun.lock / bun.lockb 已加入 gitignore,因此不会造成仓库变更。要完全跳过 lockfile 写入:
bun install --no-save
2

Build and test

bun run build
bun run vitest run

生命周期脚本

Bun 默认会阻止依赖生命周期脚本,除非显式信任。对于此仓库,常见被阻止的脚本并不是必需的:
  • baileys preinstall:检查 Node 主版本是否 >= 20(OpenClaw 要求 Node 22.19+ 或 23.11+,推荐使用 Node 24)
  • protobufjs postinstall:输出有关不兼容版本方案的警告(无构建产物)
如果你遇到需要这些脚本的运行时问题,请显式信任它们:
bun pm trust baileys protobufjs

注意事项

一些包脚本在内部硬编码了 pnpm(例如 check:docsui:*protocol:check)。通过 bun run 运行它们仍会 shell 调用 pnpm,因此请直接通过 pnpm 运行这些脚本。

相关