メインコンテンツへスキップ

Bun(実験的)

Bun は Gateway ランタイムには推奨されません(WhatsApp と Telegram で既知の問題があります)。本番環境では Node を使ってください。
Bun は、TypeScript を直接実行するための任意のローカルランタイムです(bun run ...bun --watch ...)。デフォルトのパッケージマネージャーは引き続き pnpm であり、完全にサポートされていて、ドキュメントツールでも使われています。Bun は pnpm-lock.yaml を使用できず、それを無視します。

インストール

1

依存関係をインストール

bun install
bun.lock / bun.lockb は gitignore されているため、リポジトリに変更ノイズは発生しません。lockfile の書き込み自体を完全にスキップするには、次を使います:
bun install --no-save
2

ビルドしてテスト

bun run build
bun run vitest run

Lifecycle Scripts

Bun は、依存関係の lifecycle script を明示的に信頼しない限りブロックします。このリポジトリでは、よくブロックされる script は必須ではありません:
  • @whiskeysockets/baileys preinstall — Node major >= 20 をチェックします(OpenClaw のデフォルトは Node 24 で、現在は Node 22 LTS(22.14+)も引き続きサポートしています)
  • protobufjs postinstall — 互換性のないバージョンスキームに関する警告を出します(ビルド成果物はありません)
これらの script が必要なランタイム問題に遭遇した場合は、明示的に信頼してください:
bun pm trust @whiskeysockets/baileys protobufjs

注意点

一部の script は依然として pnpm をハードコードしています(たとえば docs:buildui:*protocol:check)。現時点では、それらは pnpm 経由で実行してください。