按照方式同样适用于桌面环境。
1. 准备 node.js 环境
1
| curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
|
1
2
| echo 'export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"' >> ~/.bashrc
echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> ~/.bashrc
|
2. 安装 claude-code
1
| npm install -g @anthropic-ai/claude-code
|
3. 安装 claude-code-router
claude-code 目前仅能调用 Claude 的 API。使用 claude-code-router
启动 claude-code 能够对接第三方 API。
1
| npm install -g @musistudio/claude-code-router
|
1
2
| export API_BASE_URL=https://xxx.com/v1/chat/completions
export API_KEY=sk-xxx
|
1
| mkdir -p ~/.claude-code-router
|
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
| cat > ~/.claude-code-router/config.json <<EOF
{
"LOG": true,
"LOG_LEVEL": "trace",
"HOST": "127.0.0.1",
"PORT": 3456,
"API_TIMEOUT_MS": "600000",
"Providers": [
{
"name": "oneapi",
"api_base_url": "${API_BASE_URL}",
"api_key": "${API_KEY}",
"models": [
"deepseek-v3",
"deepseek-r1"
],
"transformer": {
"use": [
[
"maxtoken",
{
"max_tokens": 16384
}
]
]
}
}
],
"Router": {
"default": "oneapi,deepseek-v3",
"think": "oneapi,deepseek-r1"
}
}
EOF
|
重启生效
其他配置可以参考 https://github.com/musistudio/claude-code-router/blob/main/README_zh.md
4. 使用 claude code
claude-code-router 提供的 ccr code
命令与 claude-code 提供的 claude
命令是一样的使用方式。
4.1 交互式
输出:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| Enter to confirm · Esc to exit
╭───────────────────────────────────────────────────╮
│ ✻ Welcome to Claude Code! │
│ │
│ /help for help, /status for your current setup │
│ │
│ cwd: /root │
│ │
│ ─────────────────────────────────────────────── │
│ │
│ Overrides (via env): │
│ │
│ • API timeout: 600000ms │
│ • API Base URL: http://127.0.0.1:3456 │
╰───────────────────────────────────────────────────╯
╭────────────────────────────────────────────────────────────────────────────────────────╮
│ >帮我检查当前节点上 GPU 卡的状态 │
╰────────────────────────────────────────────────────────────────────────────────────────╯
|
4.2 无交互
1
| ccr code -p "怎么样给k8s集群续证书"
|
输出
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
| Service not running, starting service...
给Kubernetes集群续证书主要涉及以下几个步骤:
1. 检查当前证书有效期:
```bash
kubeadm alpha certs check-expiration
````
2. 续订所有证书(控制平面):
```bash
kubeadm alpha certs renew all
```
3. 重启控制平面组件:
```bash
docker restart $(docker ps | grep kube-apiserver | awk '{print $1}')
docker restart $(docker ps | grep kube-controller-manager | awk '{print $1}')
docker restart $(docker ps | grep kube-scheduler | awk '{print $1}')
```
4. 更新 kubeconfig 文件:
```bash
kubeadm alpha kubeconfig user --org system:masters --client-name kubernetes-admin
```
5. 验证新证书:
```bash
openssl x509 -noout -text -in /etc/kubernetes/pki/apiserver.crt | grep Not
```
注意:
- 这些操作需要在 master 节点上执行
- 如果是高可用集群,需要在所有 master 节点上执行
- 续订操作不会影响正在运行的 pod 和服务
claude code router service has been successfully stopped.
|
如果需要在主机上执行命令,这种方式不太好使,因为需要人工确认而终止。如果是非 root 用户,可以加上 --permission-mode bypassPermissions
跳过权限检查。