cc-switch新增代理模式功能
在cc-switch项目中,我增加了一个新的功能——代理模式。这个功能主要是为了解决在编程过程中需要频繁切换供应商的问题。由于切换供应商后需要中断会话再重新开始,这个过程非常繁琐。因此,我决定实现一个本地的透传代理,以便在切换供应商时无需中断会话。这个功能是基于cc-switch项目开发的,因为该项目的代码清晰,功能和结构都非常完善,只需要进行简单的增量开发即可实现这一功能。目前,代理模式已经新增到设置中,可以选择启用多个供应商进行代理,并以排序功能作为代理请求失败后的权重顺序参考。此外,代理模式下,cc switch会启动一个本地端口为12857的透传服务,并覆写claude和codex的相关配置指向该透传服务。同时,考虑到除了url和token之外,还需要额外对一些配置进行修改,因此在代理模式构建代理配置时,会将URL/Token+通用配置结合,构建一个完整的配置文件并覆写。目前还存在一个小bug,即当应用重启且处于代理模式下时,可能会由于前端传输通用配置的异步问题导致代理配置没有带上通用配置内容,但可以通过切换写入模式再切换回来解决。我希望这个功能能够为cc-switch的大规模重构提供一些思路,并在重构后如果需要,我也会提交一份适用于重构后版本的功能。此外,对于有能力自行编译打包的用户,这个工具应该会是一个更趁手的工具。
评论已关闭