我用cc-switch proxy转gpt给cc会随机中断, 想问问大佬,ccr的稳定性怎么样? 也中断就不折腾了 3 个帖子 - 2 位参与者 阅读完整话题
为什么cherry studio的agent不支持chatgpt 我弄了四个小时了,就是搞不定,对着ccr搞了半天 反正只要不支持message就不能用吗,气死我了 我买了100人民币的api,结果不给用 6 个帖子 - 3 位参与者 阅读完整话题
在用ccr时,有时会想删一些body参数,或者指定一些header。 于是写了个插件: 插件代码 (点击了解更多详细信息) 两个功能: 自定义headers/删除headers 自定义body/删除body 示例用法: 1. 自定义headers: 用法:options.headers配置你想增加的header,如果想要删除某个既有的header,值写成null即可。 如:你要增加一个{“key1”: “val1”}的header,并删除一个名为key2的header,可以在.claude-code-router\config.json中增加配置: { "transformers": [ { "path": "你的插件文件路径", "options": { "headers": { "key1": "val1", "key2": null } } } ] } 2. 自定义body: 参考ccr自带的CustomParamsTransformer,并做了改变:将值设置为null表示删除这个key 用法:options.body中配置要新增的body,只做合并。如果设置为null,表示删除该key。支持多层级。 例如你想设置max_tokens,删除reasoning.enabled的值 { "transformers": [ { "path": "你的插件文件路径", "options": { "body": { "max_tokens": 20000, "reasoning": { "enabled": null } } } } ] } 说明: 配置是在transformers中,而不是在use中 由于配置的内容是对象,不可通过ccr ui配置,只能修改配置文件。ccr ui显示为[object Object]: headers和body可以同时配置 ccr如何新增插件,可参考: ccr(Claude Code Router)配置多apikey的插件 1 个帖子 - 1 位参与者 阅读完整话题
前言 ccr好用,但是一个提供商只能配置一个apikey。 于是想着写一个插件实现可以一次配置多个apikey。 最终效果: 在ccr ui页面api秘钥位置填写多个以英文逗号分割的apikey,就能每次使用不同的apikey。 详细教程 1. 将下面代码放到任意位置: module.exports = class { name = "apikey"; constructor() { this.map = {}; } async transformRequestIn(request, provider) { const apiKeys = provider.apiKey; const arr = apiKeys.split(","); let apiKey = arr[0]; if (arr.length > 1) { // 存在多个api key时 const key = provider.name; const index = this.map[key] || 0; apiKey = arr[index].trim(); this.map[key] = (index + 1) % arr.length; } return { body: request, config: { headers: { Authorization: apiKey.startsWith("Bearer ") ? apiKey : `Bearer ${apiKey}`, }, }, }; } async transformResponseOut(response) { // Pass through response unchanged return response; } }; 2. ccr ui右下角添加自定义转化器(或者直接在配置文件中配置) 路径填刚刚保存文件的路径,建议"/"分割 3. 给需要配置多apikey的提供商选择"apikey"转换器 确定有"apikey"转换器 4. api秘钥填写由英文逗号分割的apikey,如: 5. 效果: postman发请求: 第一次用第一个apikey 第二次用第二个apikey 1 个帖子 - 1 位参与者 阅读完整话题