v3.39.3 β agentbbs CLI detection + probe shell hardening
Patch release shipping #3250.
Fixed
federation_bbs_*tools were unconditionally degraded. All four tools (register/publish/watch/human_join) gated onawait import('agentbbs'). The publishedagentbbspackage is a CLI-only launcher β its tarball contains onlybin/agentbbs.js,package.jsonandREADME.md, with nomain, noexports, and no rootindex.jsfor Node to fall back to. That import could never resolve, so the tools reporteddegraded: trueno matter whether agentbbs was installed and working. Replaced with a subprocess presence probe.- Probe shell gated to win32. The follow-up hardening:
shell: truewas unconditional while the probed binary comes fromAGENTBBS_BIN, and under a shell that argument is command-interpreted β a crafted value ran a trailing command (verified locally). POSIX now spawns without a shell; Windows keeps cmd.exe so theagentbbs.cmdshim still resolves via PATHEXT. Matches the existing convention inbrowser-tools.ts,commands/init.tsandinit/helpers-generator.ts. @noble/ed25519no longer externalized in tests. It is a hard dependency of@claude-flow/cli, not an optional one, and externalizing it broke dynamic-import resolution under Vite's SSR transform.
Scope
This makes the Phase 1 local room/envelope surface functional when agentbbs is genuinely installed. It does not implement cross-host federation β that remains Phase 2+.
Install
npx ruflo@latest
All three packages (@claude-flow/cli, claude-flow, ruflo) are at 3.39.3 on latest, alpha, and v3alpha.
π€ Generated with RuFlo