-
-
Save blacksheepaul/96ab9556b15480f0269ad02e2a223fb5 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| function claude() { | |
| # 定义不同服务的配置 | |
| local base_url="" | |
| local auth_token="" | |
| local api_key="" | |
| local model="" | |
| local small_fast_model="" | |
| local use_logged_in_claude=false | |
| case "$1" in | |
| "kimi") | |
| base_url="https://api.moonshot.cn/anthropic" | |
| auth_token="YOUR_AUTH_TOKEN" | |
| model="kimi-k2-turbo-preview" | |
| small_fast_model="kimi-k2-turbo-preview" | |
| shift | |
| ;; | |
| "claude"|"") | |
| # 默认使用已登录的claude(不使用API) | |
| use_logged_in_claude=true | |
| if [[ "$1" == "claude" ]]; then | |
| shift | |
| fi | |
| ;; | |
| *) | |
| # 如果第一个参数不在case里,那就是它原本的参数,使用默认claude | |
| use_logged_in_claude=true | |
| ;; | |
| esac | |
| # 构建环境变量字符串 | |
| local env_vars="" | |
| # 设置基础URL | |
| if [[ -n "$base_url" ]]; then | |
| env_vars="$env_vars ANTHROPIC_BASE_URL=\"$base_url\"" | |
| fi | |
| # 设置认证token | |
| if [[ -n "$auth_token" ]]; then | |
| env_vars="$env_vars ANTHROPIC_AUTH_TOKEN=\"$auth_token\"" | |
| fi | |
| # 设置API key | |
| if [[ -n "$api_key" ]]; then | |
| env_vars="$env_vars ANTHROPIC_API_KEY=\"$api_key\"" | |
| fi | |
| # 设置model环境变量 | |
| if [[ -n "$model" ]]; then | |
| env_vars="$env_vars ANTHROPIC_MODEL=\"$model\"" | |
| fi | |
| # 设置small_fast_model环境变量 | |
| if [[ -n "$small_fast_model" ]]; then | |
| env_vars="$env_vars ANTHROPIC_SMALL_FAST_MODEL=\"$small_fast_model\"" | |
| fi | |
| # 根据选择调用相应的服务 | |
| if [[ "$use_logged_in_claude" == true ]]; then | |
| # 使用已登录的claude(不使用API配置) | |
| command claude "$@" | |
| elif [[ -n "$env_vars" ]]; then | |
| # 使用API服务(Kimi或AIHubMix) | |
| eval "$env_vars command claude \"\$@\"" | |
| else | |
| command claude "$@" | |
| fi | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment