-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinstall-mac.sh
More file actions
executable file
·86 lines (74 loc) · 2.06 KB
/
Copy pathinstall-mac.sh
File metadata and controls
executable file
·86 lines (74 loc) · 2.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#!/usr/bin/env bash
set -euo pipefail
MODEL="deepseek-v4-pro[1m]"
FAST_MODEL="deepseek-v4-flash"
CLAUDE_DIR="$HOME/.claude"
SETTINGS_FILE="$CLAUDE_DIR/settings.json"
HELPER_FILE="$CLAUDE_DIR/deepseek-api-key-helper.sh"
echo "Claude Code + DeepSeek macOS 一键配置"
echo
if ! command -v npm >/dev/null 2>&1; then
echo "未检测到 npm。请先安装 Node.js LTS:"
echo "https://nodejs.org/"
exit 1
fi
if ! command -v claude >/dev/null 2>&1; then
echo "正在安装 Claude Code..."
npm install -g @anthropic-ai/claude-code
else
echo "已检测到 Claude Code:$(claude --version 2>/dev/null || true)"
fi
mkdir -p "$CLAUDE_DIR"
echo
echo "请输入你的 DeepSeek API Key。输入时不会显示在屏幕上。"
printf "DeepSeek API Key: "
IFS= read -r -s DEEPSEEK_API_KEY
echo
if [ -z "$DEEPSEEK_API_KEY" ]; then
echo "API Key 不能为空。"
exit 1
fi
security add-generic-password \
-a "$USER" \
-s deepseek-api-key \
-w "$DEEPSEEK_API_KEY" \
-U >/dev/null
cat > "$HELPER_FILE" <<'EOF'
#!/usr/bin/env sh
security find-generic-password -a "$USER" -s deepseek-api-key -w
EOF
chmod 700 "$HELPER_FILE"
if [ -f "$SETTINGS_FILE" ]; then
BACKUP_FILE="$SETTINGS_FILE.bak.$(date +%Y%m%d%H%M%S)"
cp "$SETTINGS_FILE" "$BACKUP_FILE"
echo "已备份原配置:$BACKUP_FILE"
fi
cat > "$SETTINGS_FILE" <<EOF
{
"apiKeyHelper": "$HELPER_FILE",
"env": {
"ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
"ANTHROPIC_MODEL": "$MODEL",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "$MODEL",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "$MODEL",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "$FAST_MODEL",
"CLAUDE_CODE_SUBAGENT_MODEL": "$FAST_MODEL",
"CLAUDE_CODE_EFFORT_LEVEL": "xhigh",
"API_TIMEOUT_MS": "3000000",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
},
"model": "$MODEL"
}
EOF
chmod 600 "$SETTINGS_FILE"
echo
echo "配置完成。请重新打开终端,然后运行:"
echo
echo " claude"
echo
echo "也可以先测试:"
echo
echo " claude -p \"你好,只回答 OK\""
echo
echo "默认模型:$MODEL"
echo "快速模型:$FAST_MODEL"