Bun (Experimental)
Bun (Experimental)
Section titled “Bun (Experimental)”Bun is an optional local runtime for running TypeScript directly (bun run ..., bun --watch ...). The default package manager remains pnpm, which is fully supported and used by docs tooling. Bun cannot use pnpm-lock.yaml and will ignore it.
Install
Section titled “Install”Install dependencies
Terminal window bun installbun.lock/bun.lockbare gitignored, so there is no repo churn. To skip lockfile writes entirely:Terminal window bun install --no-saveBuild and test
Terminal window bun run buildbun run vitest run
Lifecycle Scripts
Section titled “Lifecycle Scripts”Bun blocks dependency lifecycle scripts unless explicitly trusted. For this repo, the commonly blocked scripts are not required:
@whiskeysockets/baileyspreinstall— checks Node major >= 20 (OpenClaw defaults to Node 24 and still supports Node 22 LTS, currently22.14+)protobufjspostinstall— emits warnings about incompatible version schemes (no build artifacts)
If you hit a runtime issue that requires these scripts, trust them explicitly:
bun pm trust @whiskeysockets/baileys protobufjsCaveats
Section titled “Caveats”Some scripts still hardcode pnpm (for example docs:build, ui:*, protocol:check). Run those via pnpm for now.