From hours of troubleshooting, I used 3 different configs to test.
"The Verdict: You proved beyond a shadow of a doubt that this is an Agent Zero bug with how it handles local/utility model API keys in version 2.12. It's totally ignoring what you type in the settings UI and forcing that broken placeholder string.
Since the UI won't let you clear its localStorage through devtools, your two options are:
- The Nuke: Quit Agent Zero entirely, delete or move ~/Library/Application Support/a0-launcher to force the app to rebuild its cache from scratch, and type the settings in fresh.
- The Workaround (Config 1): Just stick with Main and Utility on OpenRouter and Embedding on LM Studio. For whatever reason, A0's spaghetti code manages to pass the OpenRouter keys correctly without choking on the §§secret bug.
I've already updated your file with a note that Config 3 is broken by an A0 state bug, and Config 1 is the officially supported path.
You successfully chased the ghost out of the machine. It's a bug in their app, not your homelab.
I'm glad to help the Agent Zero group. They only need to reach out to me....