Skip to content

Bug: OpenRouter stable Grok 4.20 Multi-Agent alias missing and multi-agent metadata reports no tool calling #21669

@specialfortificationgoods-cpu

Description

Summary

After refreshing the OpenCode model catalog, the OpenRouter stable model alias for Grok 4.20 Multi-Agent is still missing locally even though OpenRouter publishes a stable page/API ID for it. In the same refreshed catalog, the multi-agent entries are marked as not supporting tool calling, which appears inconsistent with the provider docs and breaks tool-dependent agent selection.

Agent-generated report: yes

Related issue

This looks related to, but distinct from, #18179 (xAI provider is using completions API instead of responses API, multi agent model is listed but does not work).

That issue is about the xAI provider / Responses API path. This report is specifically about:

  1. the OpenRouter stable alias not appearing in the refreshed model catalog
  2. multi-agent model metadata being marked as non-tool-calling

External evidence

OpenRouter currently has a live stable page for:

xAI docs also describe Grok 4.20 multi-agent as supporting function calling / tool-like capabilities.

Local reproduction

Environment:

  • OpenCode 1.4.1
  • macOS

Commands:

opencode models --refresh
opencode models openrouter | grep 'x-ai/grok-4.20'

Observed output after refresh:

openrouter/x-ai/grok-4.20-beta
openrouter/x-ai/grok-4.20-multi-agent-beta

Notably missing after refresh:

openrouter/x-ai/grok-4.20-multi-agent

I also inspected the refreshed local model cache and capability metadata.

Observed locally:

  • OpenRouter catalog includes only beta for multi-agent
  • local metadata marks the multi-agent entry as non-tool-calling

Examples from the local refreshed cache/runtime metadata:

openrouter/x-ai/grok-4.20-multi-agent-beta tool_call=false
xai/grok-4.20-multi-agent-0309 tool_call=false

Why this matters

This causes higher-level tooling to treat Grok 4.20 multi-agent as unsuitable for tool-driven agents even when the provider exposes the model. In practice, that blocks or misroutes configurations for tool-using subagents because the local metadata says the model cannot call tools.

Expected behavior

At least one of these should happen:

  1. opencode models --refresh should surface the stable OpenRouter alias:
    • openrouter/x-ai/grok-4.20-multi-agent
  2. if only beta is intentionally supported for OpenRouter, the catalog/docs should make that explicit
  3. the multi-agent metadata should accurately reflect tool/function calling support
  4. if multi-agent tool use is still unsupported in OpenCode despite provider support, the metadata and/or docs should clearly explain that this is a harness limitation rather than provider capability

Actual behavior

  • stable OpenRouter alias does not appear after refresh
  • multi-agent entries are marked non-tool-calling in local metadata
  • tool-dependent selection logic may reject or avoid the model because of that metadata

Question

Is this a models.dev/catalog ingestion issue, an OpenCode normalization issue, or an intentional compatibility restriction that is currently encoded as missing alias + tool_call=false?

Metadata

Metadata

Assignees

Labels

coreAnything pertaining to core functionality of the application (opencode server stuff)

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions