Skip to content

[Bug]: Redaction sentinel __OPENCLAW_REDACTED__ showing up in POST request to Elevenlabs instead of API key (for MacOS app talk mode) #14586

@zaengerlein

Description

@zaengerlein

Summary

I wanted to use the talk mode again yesterday on MacOS and noticed that it was not using my Elevenlabs voice. Investigation shows that instead of the actually configured Elevenlabs API key, the POST request to Elevenlabs contains the __OPENCLAW_REDACTED__ redaction sentinel eventhough the configuration contains the actual API key.

Steps to reproduce

  1. Configure talk with elevenlabs credentials and a distinct voice
  2. Start talk mode from MacOS app
  3. Talk and wait for a reply.
  4. Talk mode falls back to fallback voice

Expected behavior

Normally the selected Elevenlabs voice should be used.

Actual behavior

The voice I hear is some fallback voice.

Environment

  • Clawdbot version: 2026.2.9
  • OS: Mac OS Tahoe 26.2
  • Install method (pnpm/npx/docker/etc): Install script (did a fresh install yesterday to exclude any other issues)

Logs or screenshots

openclaw --version
2026.2.9
openclaw gateway status
🦞 OpenClaw 2026.2.9 (33c75cb) — Chat automation for people who peaked at IRC.

│
◇  
Service: LaunchAgent (loaded)
File logs: /tmp/openclaw/openclaw-2026-02-12.log
Command: /opt/homebrew/bin/node /opt/homebrew/lib/node_modules/openclaw/dist/index.js gateway --port 18789
Service file: ~/Library/LaunchAgents/ai.openclaw.gateway.plist
Service env: OPENCLAW_GATEWAY_PORT=18789

Config (cli): ~/.openclaw/openclaw.json
Config (service): ~/.openclaw/openclaw.json

Gateway: bind=loopback (127.0.0.1), port=18789 (service args)
Probe target: ws://127.0.0.1:18789
Dashboard: http://127.0.0.1:18789/
Probe note: Loopback-only gateway; only local clients can connect.

Runtime: running (pid 20661, state active)
RPC probe: ok

Listening: 127.0.0.1:18789

I intercepted the POST request to Elevenlabs via proxyman. This is the acutal request - it contains the sentinel and not the API key for Elevenlabs:

POST /v1/text-to-speech/gGjaVIGkCSfKUIBYtNT2/stream?output_format=mp3_44100 HTTP/1.1
Host: api.elevenlabs.io
Content-Type: application/json
Connection: keep-alive
Accept: audio/mpeg
xi-api-key: __OPENCLAW_REDACTED__
Accept-Language: de-DE,de;q=0.9
Content-Length: 123
Accept-Encoding: gzip, deflate, br
User-Agent: OpenClaw/9194 CFNetwork/3860.300.31 Darwin/25.2.0

{"model_id":"eleven_v3","text":"Alles klar, Test läuft durch! Was möchtest du ausprobieren?","output_format":"mp3_44100"}

My ~/.openclaw/openclaw.json contains the following section for the configuration of talk mode:

...
  "talk": {
    "voiceId": "JiW03c2Gt43XNUQAumRP",
    "voiceAliases": {
      "Helmut": "JiW03c2Gt43XNUQAumRP",
      "Jaro": "mm6KzSKUbzZOVvgW18zR",
      "Marc": "gGjaVIGkCSfKUIBYtNT2",
      "Stephan": "dnSxHmjp9jQffMRfRzwo"
    },
    "modelId": "eleven_v3",
    "apiKey": "sk_AND_HERE_IS_MY_ACTUAL_API_KEY",
    "interruptOnSpeech": true
  },
...
  1. Running rg "__OPENCLAW_REDACTED__" ~/.openclaw*/openclaw.json locally results in no output.

  2. Running openclaw config get talk.apiKey on my gateway host results in the acutal Elevenlabs API key being printed to the terminal. No sentinel there.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions