From d54f816363ff1c244b3acc86c8d13fd1d14d866e Mon Sep 17 00:00:00 2001 From: Luis Pater Date: Thu, 9 Apr 2026 01:45:52 +0800 Subject: [PATCH] fix(executor): update Qwen user agent and enhance header configuration --- internal/runtime/executor/qwen_executor.go | 24 +++++++++++++--------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/internal/runtime/executor/qwen_executor.go b/internal/runtime/executor/qwen_executor.go index d8eec537..60f8f3a4 100644 --- a/internal/runtime/executor/qwen_executor.go +++ b/internal/runtime/executor/qwen_executor.go @@ -25,7 +25,7 @@ import ( ) const ( - qwenUserAgent = "QwenCode/0.13.2 (darwin; arm64)" + qwenUserAgent = "QwenCode/0.14.2 (darwin; arm64)" qwenRateLimitPerMin = 60 // 60 requests per minute per credential qwenRateLimitWindow = time.Minute // sliding window duration ) @@ -626,19 +626,23 @@ func (e *QwenExecutor) Refresh(ctx context.Context, auth *cliproxyauth.Auth) (*c } func applyQwenHeaders(r *http.Request, token string, stream bool) { - r.Header.Set("Content-Type", "application/json") - r.Header.Set("Authorization", "Bearer "+token) - r.Header.Set("User-Agent", qwenUserAgent) - r.Header["X-DashScope-UserAgent"] = []string{qwenUserAgent} r.Header.Set("X-Stainless-Runtime-Version", "v22.17.0") + r.Header.Set("User-Agent", qwenUserAgent) r.Header.Set("X-Stainless-Lang", "js") - r.Header.Set("X-Stainless-Arch", "arm64") - r.Header.Set("X-Stainless-Package-Version", "5.11.0") - r.Header["X-DashScope-CacheControl"] = []string{"enable"} - r.Header.Set("X-Stainless-Retry-Count", "0") + r.Header.Set("Accept-Language", "*") + r.Header.Set("X-Dashscope-Cachecontrol", "enable") r.Header.Set("X-Stainless-Os", "MacOS") - r.Header["X-DashScope-AuthType"] = []string{"qwen-oauth"} + r.Header.Set("X-Dashscope-Authtype", "qwen-oauth") + r.Header.Set("X-Stainless-Arch", "arm64") r.Header.Set("X-Stainless-Runtime", "node") + r.Header.Set("X-Stainless-Retry-Count", "0") + r.Header.Set("Accept-Encoding", "gzip, deflate") + r.Header.Set("Authorization", "Bearer "+token) + r.Header.Set("X-Stainless-Package-Version", "5.11.0") + r.Header.Set("Sec-Fetch-Mode", "cors") + r.Header.Set("Content-Type", "application/json") + r.Header.Set("Connection", "keep-alive") + r.Header.Set("X-Dashscope-Useragent", qwenUserAgent) if stream { r.Header.Set("Accept", "text/event-stream")