From 9d42e4b239e73b8be9494001eac577f728f19c52 Mon Sep 17 00:00:00 2001 From: Luis Pater Date: Wed, 29 Oct 2025 12:57:37 +0800 Subject: [PATCH] feat(runtime): add User-Agent headers to codex and claude executors - Standardized User-Agent strings for Codex and Claude executors to improve request tracing and compatibility. - Updated header insertion logic in both executors for consistency. --- internal/runtime/executor/claude_executor.go | 2 +- internal/runtime/executor/codex_executor.go | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/runtime/executor/claude_executor.go b/internal/runtime/executor/claude_executor.go index ee0dfd80..fb20526b 100644 --- a/internal/runtime/executor/claude_executor.go +++ b/internal/runtime/executor/claude_executor.go @@ -551,8 +551,8 @@ func applyClaudeHeaders(r *http.Request, apiKey string, stream bool) { misc.EnsureHeader(r.Header, ginHeaders, "X-Stainless-Arch", "arm64") misc.EnsureHeader(r.Header, ginHeaders, "X-Stainless-Os", "MacOS") misc.EnsureHeader(r.Header, ginHeaders, "X-Stainless-Timeout", "60") + misc.EnsureHeader(r.Header, ginHeaders, "User-Agent", "claude-cli/1.0.83 (external, cli)") r.Header.Set("Connection", "keep-alive") - r.Header.Set("User-Agent", "claude-cli/1.0.83 (external, cli)") r.Header.Set("Accept-Encoding", "gzip, deflate, br, zstd") if stream { r.Header.Set("Accept", "text/event-stream") diff --git a/internal/runtime/executor/codex_executor.go b/internal/runtime/executor/codex_executor.go index 30562c51..e0e04598 100644 --- a/internal/runtime/executor/codex_executor.go +++ b/internal/runtime/executor/codex_executor.go @@ -532,6 +532,7 @@ func applyCodexHeaders(r *http.Request, auth *cliproxyauth.Auth, token string) { misc.EnsureHeader(r.Header, ginHeaders, "Version", "0.21.0") misc.EnsureHeader(r.Header, ginHeaders, "Openai-Beta", "responses=experimental") misc.EnsureHeader(r.Header, ginHeaders, "Session_id", uuid.NewString()) + misc.EnsureHeader(r.Header, ginHeaders, "User-Agent", "codex_cli_rs/0.50.0 (Mac OS 26.0.1; arm64) Apple_Terminal/464") r.Header.Set("Accept", "text/event-stream") r.Header.Set("Connection", "Keep-Alive")