GitHub Docs

Alibaba Cloud Model Studio serves Qwen models through DashScope’s OpenAI-compatible mode. VibeCody defaults to the international endpoint, https://dashscope-intl.aliyuncs.com/compatible-mode/v1.

Get an API Key

  1. Open Model Studio in the Alibaba Cloud console
  2. Create an API key in the region you will call
  3. Copy it

Configure VibeCody

Option 1: Encrypted store (recommended)

vibecli set-key qwen "..."
vibecli --provider qwen

The key is stored encrypted in ~/.vibecli/profile_settings.db, not in any plaintext file. See Secure settings storage.

Option 2: Environment variable

export DASHSCOPE_API_KEY="..."
vibecli --provider qwen

Option 3: Config file (~/.vibecli/config.toml)

[qwen]
enabled = true
model = "qwen3.8-max"
api_url = "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"   # optional, default shown

Prefer option 1 or 2 for the key itself. In VibeCoder, the key field is under Settings → Configuration → Keys, and Alibaba Qwen appears in the toolbar model dropdown once a key is set.

Model Selection

Model Notes
qwen3.8-max Flagship. Default
qwen3.7-plus Mid tier
qwen-plus Named in Alibaba’s examples

Default: qwen3.8-max

These three are the ids Alibaba’s compatibility page names (checked 2026-10-15). That page links to a separate models page for the full set and lists no deprecations, so treat this as a starting point; the picker accepts a typed id.

Keys are region-bound. A key from the Beijing console returns HTTP 401 invalid_api_key against the international endpoint. Set api_url to the endpoint of the key’s region: Beijing https://dashscope.aliyuncs.com/compatible-mode/v1, or the workspace-specific https://{WorkspaceId}.<region>.maas.aliyuncs.com/compatible-mode/v1 domains Alibaba now recommends (the older domains still work).

The Settings Test button always checks the international endpoint, so it can report a valid non-international key as invalid.

Verify Connection

vibecli --provider qwen -c "Write a Python async web scraper"

Troubleshooting

401 invalid_api_key

Almost always a region mismatch — see the note above.

current user api does not support http call (400)

That model is not available through the OpenAI-compatible interface.