Claude Code Router自定义headers/body插件

在用ccr时,有时会想删一些body参数,或者指定一些header。 于是写了个插件: 插件代码 (点击了解更多详细信息) 两个功能: 自定义headers/删除headers 自定义body/删除body 示例用法: 1. 自定义headers: 用法:options.headers配置你想增加的...
Claude Code Router自定义headers/body插件
Claude Code Router自定义headers/body插件

在用ccr时,有时会想删一些body参数,或者指定一些header。
于是写了个插件:

插件代码 (点击了解更多详细信息)

两个功能:

  1. 自定义headers/删除headers
  2. 自定义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
                    }
                }
            }
        }
    ]
}

说明:

  1. 配置是在transformers中,而不是在use中
  2. 由于配置的内容是对象,不可通过ccr ui配置,只能修改配置文件。ccr ui显示为[object Object]:
    image
  3. headers和body可以同时配置
  4. ccr如何新增插件,可参考:ccr(Claude Code Router)配置多apikey的插件

1 个帖子 - 1 位参与者

阅读完整话题

来源: linux.do查看原文