the headline in openclaw 3.24 for me: Open WebUI finally works like a real frontend.
before this, the OpenAI-compatible layer was the weak link. tool_call_id duplicates, strict field errors on non-native providers, prompt_cache breakage - you'd debug the bridge instead of the agent.
3.22 started fixing it. 3.24 finishes it. the gateway now runs the same agent codepath, so routing, tools, and sub-agents all fire normally behind the HTTP surface.
setup in docker:
# openclaw gateway config
gateway.http.endpoints.chatCompletions.enabled=true
# docker-compose.yml (Open WebUI)
services:
open-webui:
environment:
- OPENAI_API_BASE_URL=http://host.docker.internal:18789/v1
- OPENAI_API_KEY=your-openclaw-key
if Open WebUI has a persistent volume from a previous run, env changes might not apply - update via Admin Panel instead.
Open WebUI picks up your top-level agent targets: openclaw/default, openclaw/scout, etc. select one, chat. tools and sub-agents fire on the backend. you just get a UI for it now.
the best agent runtime isn't the one with the most features. it's the one that lets you choose how you talk to it.