Containers

Bun(實驗性)

Bun 是選用的本機執行階段,可直接執行 TypeScript(bun run ...bun --watch ...)。預設套件管理器仍是 pnpm,它受到完整支援,並由文件工具使用。Bun 無法使用 pnpm-lock.yaml,並會忽略它。

安裝

  • 安裝相依套件

    bun install
    

    bun.lock / bun.lockb 已加入 gitignore,因此不會造成 repo 變動。若要完全略過 lockfile 寫入:

    bun install --no-save
    
  • 建置與測試

    bun run build
    bun run vitest run
    
  • 生命週期指令碼

    Bun 會封鎖相依套件生命週期指令碼,除非明確信任。對於此 repo,常見被封鎖的指令碼不是必要的:

    • @whiskeysockets/baileys preinstall -- 檢查 Node 主要版本 >= 20(OpenClaw 預設使用 Node 24,且仍支援 Node 22 LTS,目前為 22.16+
    • protobufjs postinstall -- 發出關於不相容版本配置的警告(沒有建置成品)

    如果遇到需要這些指令碼的執行階段問題,請明確信任它們:

    bun pm trust @whiskeysockets/baileys protobufjs
    

    注意事項

    部分指令碼目前仍硬編碼 pnpm(例如 docs:buildui:*protocol:check)。暫時請透過 pnpm 執行這些指令碼。

    相關內容