You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[bug] vision describe: default base URL is the Coding Plan endpoint → HTTP 404 for all VL/OCR models #241
bl vision describe without an explicit --base-url posts to https://coding.dashscope.aliyuncs.com/compatible-mode/v1/chat/completions,
which does not serve VL/OCR models, so the request always 404s.
bl vision describe should resolve its endpoint the same way other API-key
commands do (--base-url → DASHSCOPE_BASE_URL → selected profile base_url),
or fall back to a public DashScope endpoint that actually serves VL models.
Actual
Every call without --base-url fails with HTTP 404, for every model tried
(qwen3.5-ocr, qwen-vl-ocr, qwen3-vl-plus). The same command with --base-url https://dashscope.aliyuncs.com exits 0 and returns correct OCR text.
The configured profile's base_url is a private workspace endpoint
([REDACTED_URL]), and vision does not use that either — so neither the
profile setting nor a working default is applied.
Full output
> POST https://coding.dashscope.aliyuncs.com/compatible-mode/v1/chat/completions
> x-dashscope-source-config: {"channel":"bailian-cli","tags":{"t1":"public","t2":"bl","t3":"2.1.0"}}
< 404 Not Found
Error: HTTP 404
Status: HTTP 404
Exit code: 1
bl update to 2.1.0; skill version aligned with the CLI
bl auth status healthy (API key + console gateway configured)
Reproduces on every call (100%), on several models, and also on a plain
320×90 test image with no document content
--base-url https://dashscope.aliyuncs.com works every time
Notes
Frequency: always
Invoked via: terminal and agent (DeepSeek Harness)
Impact: the error carries no hint about the endpoint, so it reads like a model
or auth problem. Users cannot self-diagnose without --verbose, and the
documented bl model search catalog lists these models as available. This
breaks the entire VL/OCR surface of the CLI for anyone who does not pass --base-url explicitly.
Thanks for the report. bl vision describe uses the same base URL resolution as other API-key commands:
--base-url → DASHSCOPE_BASE_URL → the selected profile's base_url → https://dashscope.aliyuncs.com
There is no separate default for this command. The host in your --verbose log is the base URL this invocation actually resolved. A profile base_url is not used when DASHSCOPE_BASE_URL is set, because the environment variable has higher priority. Passing --base-url overrides both, which is why that form of the command succeeds.
Please check the resolved value:
echo"$DASHSCOPE_BASE_URL"
bl config show
bl auth status
If DASHSCOPE_BASE_URL is set, unset it or point it at the endpoint you want this command to call. Otherwise, confirm that the active profile's base_url is the workspace endpoint you expect.
Activity
hopelynd commentedon Oct 12, 2026
Thanks for the report.
bl vision describeuses the same base URL resolution as other API-key commands:--base-url→DASHSCOPE_BASE_URL→ the selected profile'sbase_url→https://dashscope.aliyuncs.comThere is no separate default for this command. The host in your
--verboselog is the base URL this invocation actually resolved. A profilebase_urlis not used whenDASHSCOPE_BASE_URLis set, because the environment variable has higher priority. Passing--base-urloverrides both, which is why that form of the command succeeds.Please check the resolved value:
If
DASHSCOPE_BASE_URLis set, unset it or point it at the endpoint you want this command to call. Otherwise, confirm that the active profile'sbase_urlis the workspace endpoint you expect.