alfadb
|
ca08825935
|
feat(claude): 自动同步 Claude Code 客户端版本号
出站伪装用的 Claude Code 版本号此前硬编码在 claude.CLICurrentVersion,
只能靠环境变量 SUB2API_CLAUDE_CLI_VERSION 覆盖且需重启;Anthropic 抬高
版本下限时(如 Opus 5.5 要求 >= 2.1.280)必须改代码发版才能跟上。
改为每小时从官方 GitHub Releases 同步最新稳定版,无需重启也无需发版。
- 新增 ClaudeCodeVersionSyncService:1 小时间隔,数据源 anthropics/claude-code
的 releases/latest,失败回退最近 30 条列表;过滤 draft/prerelease;
只向前推进,拉取失败保留上次值不降级;面板可关闭
- 新增三个设置项:claude_code_client_version(管理员手动固定)、
claude_code_client_version_synced(同步服务独占写)、
claude_code_version_auto_sync_enabled(开关,默认开)
- 取值优先级:面板手动值 -> 同步值 -> SUB2API_CLAUDE_CLI_VERSION -> 内置基线,
每层经 IsSupportedCLIVersion 校验,含 60s 缓存与 singleflight
- 版本号运行期化:claude.DefaultHeaders 由包级 var 改为函数,新增
EffectiveCLIVersion/DefaultUserAgent 与 SetCLIVersionResolver(未注入时
与 CLIVersion() 等价);identity 的 defaultFingerprint 不再在包 init 固化,
指纹下限与主版本超前校验改用运行期值
- 守住一致性铁律:buildUpstreamRequest 与 count_tokens 各取一次 UA 字符串,
同时喂给出站 User-Agent 头与请求体 billing 的 cc_version,避免缓存翻转
瞬间头体版本不一致被判非正版客户端
- 管理后台设置页新增配置区块,含中英文案与「当前同步到」只读展示
|
2026-09-23 13:35:44 +08:00 |
|
alfadb
|
57387445f3
|
fix(ollama): select Bearer auth for Anthropic endpoints automatically
|
2026-09-07 21:54:22 +08:00 |
|
alfadb
|
cc91155fe4
|
fix(ollama): clamp DeepSeek output limits across API protocols
|
2026-09-07 21:54:21 +08:00 |
|
cyh
|
994ca26e92
|
fix(claude): align billing fingerprint with outbound user agent
|
2026-09-05 16:34:00 +08:00 |
|
wucm667
|
9c36b75a7d
|
fix(claude): strip cache control from deferred tools
|
2026-08-11 16:57:38 +08:00 |
|
alfadb
|
1f5ee8123f
|
fix(gateway): apply full Claude Code mimicry to Haiku
|
2026-07-16 15:45:22 +08:00 |
|
shaw
|
084d26cbd2
|
refactor(service): 纯移动拆分 gateway_service.go(7294→1289行)
|
2026-07-08 08:49:20 +08:00 |
|