feat: auth_token support
This commit is contained in:
@@ -3,9 +3,9 @@
|
||||
# 轻量版 Claude Code 环境变量部署脚本(基于 profiles.json)
|
||||
# 要求:
|
||||
# 1) 读取 profiles.json 展示可选列表
|
||||
# 2) 选择后按照 env-deploy.sh 的参数写入:ANTHROPIC_BASE_URL、ANTHROPIC_API_KEY、ANTHROPIC_AUTH_TOKEN(空)
|
||||
# 3) 略去不必要的环境检查,假定环境完备(含 jq、node 可用)
|
||||
# 4) 使用 Node 调用 /Users/kid/.claude/cc-aicodemirror-statusline-plus/save-cookie.js 传入所选 profile 的 cookie
|
||||
# 2) 选择后按照 env-deploy.sh 的参数写入:ANTHROPIC_BASE_URL、ANTHROPIC_API_KEY、ANTHROPIC_AUTH_TOKEN
|
||||
# 3) 略去不必要的环境检查,假定环境完备(含 jq 可用)
|
||||
# 4) 禁用 save-cookie 的使用
|
||||
|
||||
set -e
|
||||
|
||||
@@ -55,8 +55,20 @@ if [ "$INDEX" -lt 0 ] || [ "$INDEX" -ge "$COUNT" ]; then
|
||||
fi
|
||||
|
||||
SELECTED_NAME=$(jq -r ".profiles[$INDEX].name" "$PROFILES_JSON")
|
||||
API_KEY=$(jq -r ".profiles[$INDEX].api_key" "$PROFILES_JSON")
|
||||
COOKIE=$(jq -r ".profiles[$INDEX].cookie" "$PROFILES_JSON")
|
||||
API_KEY=$(jq -r ".profiles[$INDEX].api_key // empty" "$PROFILES_JSON")
|
||||
AUTH_TOKEN=$(jq -r ".profiles[$INDEX].AuthToken // .profiles[$INDEX].auth_token // empty" "$PROFILES_JSON")
|
||||
PROFILE_BASE_URL=$(jq -r ".profiles[$INDEX].baseUrl // .profiles[$INDEX].base_url // empty" "$PROFILES_JSON")
|
||||
|
||||
# AuthToken 与 API Key 互斥:AuthToken 优先
|
||||
if [ -n "$AUTH_TOKEN" ]; then
|
||||
API_KEY=""
|
||||
elif [ -n "$API_KEY" ]; then
|
||||
AUTH_TOKEN=""
|
||||
fi
|
||||
|
||||
if [ -n "$PROFILE_BASE_URL" ]; then
|
||||
ANTHROPIC_BASE_URL="$PROFILE_BASE_URL"
|
||||
fi
|
||||
|
||||
echo -e "\n选择的 Profile:${GREEN}$SELECTED_NAME${NC}"
|
||||
|
||||
@@ -99,7 +111,7 @@ if [[ "$CURRENT_SHELL" == "fish" ]]; then
|
||||
# Claude Code Environment Variables (auto from profiles)
|
||||
set -x ANTHROPIC_BASE_URL "$ANTHROPIC_BASE_URL"
|
||||
set -x ANTHROPIC_API_KEY "$API_KEY"
|
||||
set -x ANTHROPIC_AUTH_TOKEN ""
|
||||
set -x ANTHROPIC_AUTH_TOKEN "$AUTH_TOKEN"
|
||||
# End Claude Code Environment Variables
|
||||
EOF
|
||||
else
|
||||
@@ -108,7 +120,7 @@ else
|
||||
# Claude Code Environment Variables (auto from profiles)
|
||||
export ANTHROPIC_BASE_URL="$ANTHROPIC_BASE_URL"
|
||||
export ANTHROPIC_API_KEY="$API_KEY"
|
||||
export ANTHROPIC_AUTH_TOKEN=""
|
||||
export ANTHROPIC_AUTH_TOKEN="$AUTH_TOKEN"
|
||||
# End Claude Code Environment Variables
|
||||
EOF
|
||||
fi
|
||||
@@ -116,20 +128,20 @@ fi
|
||||
# 立刻在当前会话导出
|
||||
export ANTHROPIC_BASE_URL="$ANTHROPIC_BASE_URL"
|
||||
export ANTHROPIC_API_KEY="$API_KEY"
|
||||
export ANTHROPIC_AUTH_TOKEN=""
|
||||
export ANTHROPIC_AUTH_TOKEN="$AUTH_TOKEN"
|
||||
|
||||
echo -e "${GREEN}[OK]${NC} 已写入并激活环境变量:"
|
||||
echo "ANTHROPIC_BASE_URL=$ANTHROPIC_BASE_URL"
|
||||
echo "ANTHROPIC_API_KEY=****${API_KEY: -4}"
|
||||
echo "ANTHROPIC_AUTH_TOKEN=\"\""
|
||||
|
||||
# 调用 Node 脚本保存 cookie
|
||||
NODE_SCRIPT="/Users/kid/.claude/cc-aicodemirror-statusline-plus/save-cookie.js"
|
||||
if [ -f "$NODE_SCRIPT" ]; then
|
||||
node "$NODE_SCRIPT" "$COOKIE"
|
||||
echo -e "${GREEN}[OK]${NC} 已调用 Node 保存 cookie"
|
||||
if [ -n "$API_KEY" ]; then
|
||||
echo "ANTHROPIC_API_KEY=****${API_KEY: -4}"
|
||||
else
|
||||
echo -e "${RED}[WARN]${NC} 未找到 Node 脚本:$NODE_SCRIPT,跳过保存 cookie"
|
||||
echo "ANTHROPIC_API_KEY="
|
||||
fi
|
||||
|
||||
if [ -n "$AUTH_TOKEN" ]; then
|
||||
echo "ANTHROPIC_AUTH_TOKEN=****${AUTH_TOKEN: -4}"
|
||||
else
|
||||
echo "ANTHROPIC_AUTH_TOKEN="
|
||||
fi
|
||||
|
||||
echo -e "\n${GREEN}完成!${NC} 新开终端会话即生效,或运行:source \"$CONFIG_FILE\""
|
||||
|
||||
Reference in New Issue
Block a user