Skip to content

Image Tool Fails with 'Unknown model' on v2026.4.11 (worked on v2026.4.8) #65450

Description

@panexxt

Image Tool Fails with "Unknown model" on v2026.4.11 (worked on v2026.4.8)

Summary

The image tool (vision/image understanding) fails on OpenClaw v2026.4.11 when using a custom provider name for a Qwen/DashScope endpoint. The exact same configuration works on v2026.4.8.

Error

All image models failed (3): 
bailian/kimi-k2.5: Unknown model: bailian/kimi-k2.5 | Unknown model: bailian/kimi-k2.5 | 
bailian/qwen3.6-plus: Unknown model: bailian/qwen3.6-plus | Unknown model: bailian/qwen3.6-plus | 
minimax/MiniMax-M2.7: Model does not support images: minimax/MiniMax-M2.7

Configuration

{
  "agents": {
    "defaults": {
      "model": "bailian/kimi-k2.5",
      "imageModel": {
        "primary": "bailian/kimi-k2.5",
        "fallbacks": ["bailian/qwen3.6-plus", "minimax/MiniMax-M2.7"]
      }
    }
  },
  "models": {
    "providers": {
      "bailian": {
        "baseUrl": "https://coding.dashscope.aliyuncs.com/v1",
        "apiKey": "sk-...",
        "api": "openai-completions",
        "models": [
          {
            "id": "qwen3.6-plus",
            "name": "qwen3.6-plus",
            "reasoning": false,
            "input": ["text", "image"],
            "cost": {"input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0},
            "contextWindow": 1000000,
            "maxTokens": 65536,
            "compat": {
              "supportsDeveloperRole": false,
              "supportsUsageInStreaming": true,
              "supportsStrictMode": false,
              "thinkingFormat": "qwen"
            }
          },
          {
            "id": "kimi-k2.5",
            "name": "kimi-k2.5",
            "reasoning": false,
            "input": ["text", "image"],
            "cost": {"input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0},
            "contextWindow": 262144,
            "maxTokens": 32768,
            "compat": {
              "supportsDeveloperRole": false,
              "supportsUsageInStreaming": true,
              "supportsStrictMode": false,
              "thinkingFormat": "qwen"
            }
          }
        ]
      }
    }
  }
}

Reproduction

  1. Configure a custom provider (e.g., "bailian") pointing to https://coding.dashscope.aliyuncs.com/v1
  2. Set imageModel.primary to a model under this provider (e.g., bailian/kimi-k2.5)
  3. Try to use the image tool to analyze an image
  4. On v2026.4.11: ❌ fails with "Unknown model"
  5. On v2026.4.8: ✅ works correctly

Root Cause Analysis

After analyzing the source code of v2026.4.11:

  1. The modelRegistry.find(provider, modelId) in @mariozechner/pi-coding-agent returns undefined
  2. The issue appears to be in how models.json is generated/synchronized between v2026.4.8 and v2026.4.11
  3. Specifically, models defined under custom provider names (not the official qwen/modelstudio/qwencloud names) may be handled differently in newer versions
  4. The models.json generated on v2026.4.11 is missing qwen3.6-plus from the bailian provider, even though it's defined in openclaw.json

Environment

  • Working: OpenClaw v2026.4.8, macOS
  • Broken: OpenClaw v2026.4.11, macOS
  • Node.js: v22.22.1
  • Same openclaw.json config on both machines

Expected Behavior

Custom provider names should be fully supported, and models defined under them should be discoverable by the image tool, just like in v2026.4.8.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions