From 27e5d49fe5871e46633e2a113dd49004e1bdec87 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Wed, 13 May 2026 11:19:18 +0100 Subject: [PATCH] build(whatsapp): keep audio deps external --- CHANGELOG.md | 1 + config/knip.config.ts | 1 - docs/channels/whatsapp.md | 4 ++-- extensions/whatsapp/package.json | 1 + package.json | 1 - pnpm-lock.yaml | 6 +++--- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 988595ec037..95cbaf2bfba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,6 +54,7 @@ Docs: https://docs.openclaw.ai - fix(memory-wiki): require admin scope for ingest [AI]. (#80897) Thanks @pgondhi987. - memory-wiki: require write scope for Obsidian search [AI]. (#80904) Thanks @pgondhi987. - WhatsApp: externalize the channel as a ClawHub/npm plugin outside the core npm runtime bundle, and bump Baileys to `7.0.0-rc11` so libsignal resolves from the registry instead of a GitHub tarball. +- WhatsApp: keep optional audio decoding dependencies local to the external plugin so the core npm install no longer pulls WhatsApp-only media helpers. - Build: skip copied metadata for bundled plugins that are excluded from build entries, preventing update/status rebuilds from advertising missing QQ Bot runtime files. (#80925) - Control UI/sessions: nest subagent sessions under their parent session in the session picker dropdown using a visual `└─ ` prefix, making the parent-child relationship clear. Fixes #77628. (#78623) Thanks @chinar-amrutkar. - fix(config): reject auto-managed meta.lastTouched\* paths in config set/unset (#80856). Thanks @ai-hpc diff --git a/config/knip.config.ts b/config/knip.config.ts index a1217c37391..59211669c1f 100644 --- a/config/knip.config.ts +++ b/config/knip.config.ts @@ -66,7 +66,6 @@ const rootBundledPluginRuntimeDependencies = [ "@slack/bolt", "@slack/types", "@slack/web-api", - "audio-decode", "grammy", "linkedom", "minimatch", diff --git a/docs/channels/whatsapp.md b/docs/channels/whatsapp.md index 4302083907d..b315ae195c2 100644 --- a/docs/channels/whatsapp.md +++ b/docs/channels/whatsapp.md @@ -16,8 +16,8 @@ Status: production-ready via WhatsApp Web (Baileys). Gateway owns linked session - Dev channel + git checkout: defaults to the local plugin path. - Stable/Beta: installs the official `@openclaw/whatsapp` plugin from ClawHub first, with npm as the fallback. -- The WhatsApp runtime is distributed outside the core OpenClaw npm package - because its Baileys dependency chain uses GPL-licensed `libsignal`. +- The WhatsApp runtime is distributed outside the core OpenClaw npm package so + WhatsApp-specific runtime dependencies stay with the external plugin. Manual install stays available: diff --git a/extensions/whatsapp/package.json b/extensions/whatsapp/package.json index d0029f328cc..baa2854bab8 100644 --- a/extensions/whatsapp/package.json +++ b/extensions/whatsapp/package.json @@ -8,6 +8,7 @@ }, "type": "module", "dependencies": { + "audio-decode": "2.2.3", "baileys": "7.0.0-rc11", "https-proxy-agent": "9.0.0", "jimp": "1.6.1", diff --git a/package.json b/package.json index 2d461b53326..3e1c3318607 100644 --- a/package.json +++ b/package.json @@ -1742,7 +1742,6 @@ "@slack/types": "2.21.1", "@slack/web-api": "7.15.2", "ajv": "8.20.0", - "audio-decode": "2.2.3", "chalk": "5.6.2", "chokidar": "5.0.0", "commander": "14.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 20393eb4df5..67b1dbc04e1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -116,9 +116,6 @@ importers: ajv: specifier: 8.20.0 version: 8.20.0 - audio-decode: - specifier: 2.2.3 - version: 2.2.3 chalk: specifier: 5.6.2 version: 5.6.2 @@ -1655,6 +1652,9 @@ importers: extensions/whatsapp: dependencies: + audio-decode: + specifier: 2.2.3 + version: 2.2.3 baileys: specifier: 7.0.0-rc11 version: 7.0.0-rc11(patch_hash=a9aea1790d2c65b1ae543c77faca4119bbfb91ee3b6ca6c38d1cad4f5702ada2)(audio-decode@2.2.3)(jimp@1.6.1)(sharp@0.34.5)