Skip to content

Conversation

@JoeChen2me
Copy link
Contributor

@JoeChen2me JoeChen2me commented Sep 3, 2025

  • 在 auth 方法中添加 user-agent 设置逻辑
  • 支持通过 可选参数options.userAgent 自定义 user-agent
  • 同时兼容 user-agent 和 User-Agent 两种格式

更好地实现了用户可选的流量伪装

- 在 auth 方法中添加 user-agent 设置逻辑
- 支持通过 options.userAgent 自定义 user-agent
- 保留原始请求中的 user-agent(如果存在)
- 默认使用 "claude-cli/1.0.98 (external, cli)"
- 同时兼容 user-agent 和 User-Agent 两种格式
添加静态 TransformerName 属性,使 AnthropicTransformer 支持带参数的配置格式,
解决了只能使用字符串格式而不能使用数组格式的问题。
@JoeChen2me
Copy link
Contributor Author

修复了参数化配置的文件,不再出现 Provider Not Found 的错误。

@musistudio
Copy link
Owner

现在的透传模式会直接透传客户端实际请求的header,如果使用claude code的话headers默认就已经是cc的ua了,是否没必要做这步?

@JoeChen2me
Copy link
Contributor Author

现在的透传模式会直接透传客户端实际请求的header,如果使用claude code的话headers默认就已经是cc的ua了,是否没必要做这步?

那我改掉,改成无默认值模式。

因为我当前有一个需求,其是从 newapi 请求向 ccr 再由 ccr 请求到具体的提供商。

@musistudio
Copy link
Owner

现在的透传模式会直接透传客户端实际请求的header,如果使用claude code的话headers默认就已经是cc的ua了,是否没必要做这步?

那我改掉,改成无默认值模式。

因为我当前有一个需求,其是从 newapi 请求向 ccr 再由 ccr 请求到具体的提供商。

newapi不能设置透传客户端的请求头吗?

@JoeChen2me
Copy link
Contributor Author

newapi不能设置透传客户端的请求头吗?

并不能,newapi 目前不支持对请求头的设置。

@aceHubert
Copy link

aceHubert commented Oct 16, 2025

现在的透传模式会直接透传客户端实际请求的header,如果使用claude code的话headers默认就已经是cc的ua了,是否没必要做这步?

那我改掉,改成无默认值模式。
因为我当前有一个需求,其是从 newapi 请求向 ccr 再由 ccr 请求到具体的提供商。

newapi不能设置透传客户端的请求头吗?

其实不是 newapi 设置头的问题,是一些中转站添加了特殊条件限制cc cli 的调用
例如:
anyrouter 限制了请求中的 system 的一段文本必须是固定的,这段文字来自cli, 但vscode 插件更新提示说词不一样了。
agentrouter 限制了 header 的user-agent 必须是 cli 的,vscode 插件中现在是 vscode。

我是想加个自定义的Transformer来处理,但完全行不通,Tramsformer 的逻辑很奇怪,transformer 的数量设置影响执行逻辑。看我提了一个 issure #47 ,现在只能通过改源代码的方式修改 https://linux.do/t/topic/1047550/18

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants