A) Root cause
v5.7’s Discord picker still reads the legacy whole-agent runtime key (agents.defaults.agentRuntime / session agentRuntimeOverride) when rendering/applying selections, even though v5 runtime selection ignores whole-agent runtime pins and expects provider/model runtime policy. With agents.defaults.agentRuntime.id = "claude-cli", the picker carries --runtime claude-cli only for anthropic/*, which puts the interaction path on the stale runtime-override branch instead of the normal provider/model policy path.
B) Fix
Move Claude CLI to provider/model runtime policy and remove the legacy whole-agent runtime pin:
cat >/tmp/openclaw-claude-cli-runtime.patch.json5 <<'EOF'
{
agents: {
defaults: {
agentRuntime: null,
},
},
models: {
providers: {