Skip to content

opencode engine rejects deepseek (and google/groq/mistral/xai) providers present in openCodeProviderDomains #37808

Description

@G1Vh

The opencode engine in gh aw v0.77.5 (stable) and v0.78.3 (prerelease) only accepts 4 provider prefixes: copilot, anthropic, openai, codex. However, the openCodeProviderDomains map in pkg/workflow/domains.go on main already includes 5 additional providers:

var openCodeProviderDomains = map[string]string{
    "copilot":   "api.githubcopilot.com",
    "anthropic": "api.anthropic.com",
    "openai":    "api.openai.com",
    "google":    "generativelanguage.googleapis.com",
    "groq":      "api.groq.com",
    "mistral":   "api.mistral.ai",
    "deepseek":  "api.deepseek.com",
    "xai":       "api.x.ai",
}

But attempting to use any of the 5 new providers fails at compile time:

---
engine:
  id: opencode
  model: deepseek/deepseek-v4-flash
---
🔴 CRITICAL: invalid engine.model for engine 'opencode':
  unsupported provider "deepseek" in engine.model;
  supported providers: copilot, anthropic, openai, codex

The same error occurs for google, groq, mistral, and xai.

Steps to reproduce

gh aw --version   # v0.77.5 (stable) and v0.78.3 (prerelease) — both affected
mkdir /tmp/test && cd /tmp/test
cat > test.md << 'EOF'
---
on: workflow_dispatch
engine:
  id: opencode
  model: deepseek/deepseek-v4-flash
---
# test
EOF
gh aw compile --dir /tmp/test

Expected behavior

deepseek/deepseek-v4-flash (and google/..., groq/..., etc.) should compile successfully, since the domain map already knows about them.

Actual behavior

Compiler rejects the model with "unsupported provider" error, listing only copilot, anthropic, openai, codex.

Hypothesis

The compiler has a separate validation list for opencode model providers that hasn't been updated to match openCodeProviderDomains. The domain map includes all 9 providers, but the compiler validates against a shorter list of 4 — affecting both stable (v0.77.5) and prerelease (v0.78.3).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions