- name
- openclaw-model-optimizer
- description
- Optimize OpenClaw model configuration by declaring missing model capabilities (vision/multimodal input, context window, max output tokens, reasoning). Use when user mentions OpenClaw model optimization, model capabilities not working, image/vision not recognized, context window too small, output truncated, or after adding a new model provider to openclaw.json. Also triggers on "优化openclaw模型配置" or similar requests.
OpenClaw Model Optimizer
Optimize openclaw.json model configurations by declaring model capabilities that OpenClaw cannot auto-detect.
Problem
OpenClaw does not auto-detect model capabilities from providers. Without explicit declarations, features like vision input, large context windows, extended output, and reasoning mode remain disabled — even when the underlying model and API fully support them.
Workflow
- Read
~/.openclaw/openclaw.json - Back up the config — copy
~/.openclaw/openclaw.jsonto~/.openclaw/openclaw.json.bakbefore making any changes - Identify all configured models under
models.providers - Check if
agents.defaults.modelsexists with capability declarations for each model - For missing or incomplete declarations, ask the user to confirm each model's capabilities
- Add the
agents.defaults.modelsblock with proper declarations - Remind user to restart OpenClaw for changes to take effect
Capability Fields
Declare capabilities in agents.defaults.models using the provider-id/model-id key format:
{
"agents": {
"defaults": {
"models": {
"provider-id/model-id": {
"input": ["text", "image"],
"contextWindow": 256000,
"maxTokens": 16384,
"reasoning": true
}
}
}
}
}Field Reference
| Field | Type | Description |
|---|---|---|
input | string[] | Supported input modalities: "text", "image". Default if omitted: ["text"] only — vision disabled |
contextWindow | number | Max input context in tokens. Default if omitted: conservative fallback — may truncate long conversations |
maxTokens | number | Max output tokens per response. Default if omitted: conservative fallback — long responses get cut off |
reasoning | boolean | Whether model supports extended thinking/CoT. Default if omitted: false |
Common Model Capabilities
Reference for popular models (always verify with user before applying):
See references/model-capabilities.md for known model defaults.
Important Notes
- Always back up
openclaw.jsontoopenclaw.json.bakbefore modifying — never edit the config without a backup - Always confirm capabilities with the user — API endpoints may differ from model defaults
- The
provider-id/model-idkey must match exactly what appears inmodels.providersandagents.defaults.model.primary - Do not overwrite existing capability declarations without user consent