#Custom image model
1 messages · Page 1 of 1 (latest)
Yep — keep Claude as your main model, and set the separate image/vision model config.
- Make sure the Gateway can see a Gemini API key:
export GEMINI_API_KEY="..."
If you run OpenClaw as a service, put that env var wherever the gateway service loads env from, then restart the gateway.
- Set the image model:
openclaw config set agents.defaults.imageModel.primary "google/gemini-3-flash-preview"
openclaw config validate
openclaw gateway restart
Equivalent openclaw.json shape:
{
agents: {
defaults: {
model: {
primary: "anthropic/claude-sonnet-4-6"
},
imageModel: {
primary: "google/gemini-3-flash-preview"
}
}
}
}
Small caveat: agents.defaults.imageModel is the image-understanding / fallback vision model. If your active Claude model already accepts images, some direct chat image turns may still go straight to Claude; the configured image model is definitely used by the image/media-understanding path and when the active model can’t handle image input.