#Unknown target "shell" for WhatsApp
1 messages · Page 1 of 1 (latest)
No — that error is about messaging, not shell execution.
[tools] message failed: Unknown target "shell" for WhatsApp. Hint: <E.164|group JID> means the agent tried to use the message tool on the WhatsApp channel and send to a recipient called "shell", but WhatsApp targets must be a phone number in E.164 (like +15551234567) or a group JID (something like ...@g.us). "shell" isn’t a valid WhatsApp recipient identifier, so the send fails.
If you’re also seeing “can’t execute shell”, that’ll be a different error (usually around the exec tool / tool allowlist / host permissions). Paste the exact error you get when it tries to run a command (and openclaw --version), and I can point to the real cause.
okay, so apparently, the tool access is set to messaging only, and I tried to change it, it doesn't changed on webui, how can I change it?
Tool access comes from your gateway config (~/.openclaw/openclaw.json unless you’re using a profile / OPENCLAW_CONFIG_PATH), specifically:
tools.profile(common cause of “messaging only”)- and/or
tools.allow/tools.deny
If you’re on tools.profile: "messaging", the agent will never get exec no matter what you click in the UI — you need to change the config.
Fix (CLI, most reliable)
On the gateway host:
openclaw config get tools.profile
openclaw config set tools.profile "coding" # enables fs + exec + sessions + memory
# or:
openclaw config set tools.profile "full" # no restriction (use with care)
openclaw gateway restart
Docs: https://docs.openclaw.ai/tools (tool profiles) and https://docs.openclaw.ai/cli/config
If the WebUI “doesn’t stick”
That’s usually one of these:
- You’re editing a different config than the service uses
Check:
openclaw config file
openclaw gateway status
If gateway status shows a different “Config (service)” than config file, you’re editing the wrong one (often a --profile mismatch).
- You changed the config but the current chat/session still shows old tool availability
After restart, try a fresh message or/new, and hard refresh the Control UI tab.