阿猫的博客

阿猫的博客

Clauce Code 使用第三方 API 并优雅地完成多个供应商切换(如 Kimi K2等)

2025-07-17

Claude Code 除了登录 Claude 账号使用,还可以通过设定 ANTHROPIC_BASE_URLANTHROPIC_AUTH_TOKEN / ANTHROPIC_API_KEY 来使用第三方的 API 或者其他兼容 Anthropic 接口格式的模型。

一般的使用方式:

ANTHROPIC_BASE_URL=<YOUR_URL> ANTHROPIC_AUTH_TOKEN=<YOUR_TOKEN> claude

也有用以下这种的,不建议,会把环境变量留在当前会话里:

export ANTHROPIC_BASE_URL=<YOUR_URL>; export ANTHROPIC_AUTH_TOKEN=<YOUR_TOKEN>; claude

于是我们可以写一个简单的 zsh 脚本来实现切换多个供应商的功能。

function claude() {
    # 定义不同服务的配置
    local base_url=""
    local auth_token=""
    local api_key=""

    case "$1" in
        "kimi")
            base_url="https://api.moonshot.cn/anthropic"
            auth_token="YOUR_MOONSHOT_KEY"
            shift  # 移除第一个参数
            ;;
        "aihubmix")
            base_url="https://aihubmix.com"
            api_key="YOUR_AIHUBMIX_KEY"
            shift  # 移除第一个参数
            ;;
        "anthropic"|"")
            # 默认或显式指定 anthropic
            base_url="https://api.anthropic.com"
            auth_token="YOUR_ANTHROPIC_API_TOKEN"
            if [[ "$1" == "anthropic" ]]; then
                shift  # 移除第一个参数
            fi
            ;;
        *)
            echo "未知的服务: $1"
            return 1
            ;;
    esac

    # 设置环境变量并调用实际的 claude 命令
    if [[ -n "$auth_token" ]]; then
        ANTHROPIC_BASE_URL="$base_url" ANTHROPIC_AUTH_TOKEN="$auth_token" command claude "$@"
    elif [[ -n "$api_key" ]]; then
        ANTHROPIC_BASE_URL="$base_url" ANTHROPIC_API_KEY="$api_key" command claude "$@"
    else
        ANTHROPIC_BASE_URL="$base_url" command claude "$@"
    fi
}

使用时,只需要输入 claude kimi 或者 claude aihubmix 就可以切换不同的供应商,同时还能支持 claude 原来的各种命令参数。

其他方式

这种方式只能支持 Anthropic 接口格式的 API,如果你的供应商是 OpenAI 格式的,可以使用 musistudio/claude-code-router这个项目,同时还支持指定不同情况下使用的模型。但是毕竟这个方式是通过逆向接口、本地起代理来实现的,用起来并非 Claude Code 正宗的体验,也不是很优雅。

通过我这种方法,如果使用 aihubmix 或者 anyrouter 这种支持 Anthropic 接口格式的服务,就可以获得正宗的 Claude Code 体验啦。需要注意他们对应的接口不一定跟 OpenAI 格式的相同,具体可以参考使用文档。另外,aihubmix 使用 ANTHROPIC_API_KEY 而不是 ANTHROPIC_AUTH_TOKEN,脚本里已经做了兼容。

References

Claude Code settings - Anthropic
Kimi K2 详测|超强代码和 Agent 能力!内附 Claude Code 邪修教程
AiHubMix Documentation Hub