multi-ccp 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +48 -19
- package/README.zh-CN.md +48 -19
- package/dist/cli/program.js +213 -19
- package/dist/cli/program.js.map +1 -1
- package/dist/core/ccr.js +19 -1
- package/dist/core/ccr.js.map +1 -1
- package/dist/core/presets.d.ts +47 -0
- package/dist/core/presets.js +142 -0
- package/dist/core/presets.js.map +1 -0
- package/dist/core/profiles.d.ts +2 -1
- package/dist/core/profiles.js +31 -14
- package/dist/core/profiles.js.map +1 -1
- package/dist/core/types.d.ts +8 -0
- package/dist/web/assets/app.js +69 -0
- package/dist/web/assets/index.html +111 -0
- package/dist/web/assets/styles.css +1 -0
- package/dist/web/server.d.ts +6 -0
- package/dist/web/server.js +403 -0
- package/dist/web/server.js.map +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
# multi-ccp
|
|
2
2
|
|
|
3
|
+
[![NPM Version][npm-version]][npm-url]
|
|
4
|
+
[![NPM Downloads][npm-downloads]][npm-url]
|
|
5
|
+
[![License][license]][license-url]
|
|
6
|
+
|
|
3
7
|
English | [简体中文](README.zh-CN.md)
|
|
4
8
|
|
|
5
9
|
`multi-ccp` is a profile and session manager for Claude Code. It installs the `ccp` command and helps you run multiple Claude Code windows with fully isolated configuration directories, model providers, login state, and history.
|
|
6
10
|
|
|
7
11
|
Use it when you want separate Claude Code sessions for work, personal projects, different API providers, or different model routes without manually switching environment variables or editing config files.
|
|
8
12
|
|
|
13
|
+

|
|
14
|
+
|
|
9
15
|
## Features
|
|
10
16
|
|
|
11
17
|
- Run multiple Claude Code windows with independent profiles.
|
|
@@ -40,25 +46,38 @@ How do I use multi-ccp to manage multiple Claude Code profiles?
|
|
|
40
46
|
|
|
41
47
|
Then continue with the examples below when you want the full command reference.
|
|
42
48
|
|
|
43
|
-
|
|
49
|
+
Open the local Web UI to browse profiles and create configurations visually:
|
|
44
50
|
|
|
45
51
|
```bash
|
|
46
|
-
ccp
|
|
47
|
-
ccp start provider-a
|
|
52
|
+
ccp ui
|
|
48
53
|
```
|
|
49
54
|
|
|
50
|
-
|
|
55
|
+
The Web UI is a local companion for the CLI. It helps you inspect profiles, create preset-based profiles, edit profile settings, and open CCR management shortcuts.
|
|
56
|
+
|
|
57
|
+

|
|
58
|
+
|
|
59
|
+
Create a profile interactively:
|
|
51
60
|
|
|
52
61
|
```bash
|
|
53
|
-
ccp add
|
|
54
|
-
ccp start
|
|
62
|
+
ccp add
|
|
63
|
+
ccp start <profile-name>
|
|
55
64
|
```
|
|
56
65
|
|
|
57
|
-
|
|
66
|
+
`ccp add` lets you choose a built-in preset template or custom configuration, including DeepSeek, AI CodeMirror, Mimo, CCR GPT, Manual CCR, Claude Login, or Custom API.
|
|
67
|
+
|
|
68
|
+
If you want to create directly from a built-in preset, pass `--preset`:
|
|
58
69
|
|
|
59
70
|
```bash
|
|
60
|
-
ccp add
|
|
61
|
-
ccp
|
|
71
|
+
ccp add --preset deepseek
|
|
72
|
+
ccp add --preset deepseek my-ds
|
|
73
|
+
ccp start my-ds
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Create another isolated profile for a different provider, account, or project context:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
ccp add
|
|
80
|
+
ccp start <profile-name>
|
|
62
81
|
```
|
|
63
82
|
|
|
64
83
|
List and inspect profiles:
|
|
@@ -76,19 +95,19 @@ ccp path work
|
|
|
76
95
|
API profiles are for Anthropic-compatible providers. They store API environment variables in the profile's `settings.json`.
|
|
77
96
|
|
|
78
97
|
```bash
|
|
79
|
-
ccp add
|
|
80
|
-
ccp start
|
|
98
|
+
ccp add
|
|
99
|
+
ccp start <profile-name>
|
|
81
100
|
```
|
|
82
101
|
|
|
83
|
-
|
|
102
|
+
When you choose an API preset, the command prompts for a profile name and token. When you choose Custom API, it prompts for:
|
|
84
103
|
|
|
85
104
|
- `ANTHROPIC_BASE_URL`
|
|
86
105
|
- `ANTHROPIC_AUTH_TOKEN`
|
|
87
|
-
- Model name
|
|
106
|
+
- Model name (optional; leave empty to use Claude Code's default model)
|
|
88
107
|
|
|
89
108
|
#### Customizing Provider Models
|
|
90
109
|
|
|
91
|
-
`ccp add` keeps provider setup simple by applying the model you enter to all default Claude Code model slots. For example, a DeepSeek profile may initially look like this:
|
|
110
|
+
`ccp add` keeps provider setup simple by applying the model you enter to all default Claude Code model slots. If you leave the model empty, `multi-ccp` does not write any model environment variables and Claude Code uses its default model. For example, a DeepSeek profile with a model may initially look like this:
|
|
92
111
|
|
|
93
112
|
```json
|
|
94
113
|
{
|
|
@@ -132,8 +151,8 @@ See the [DeepSeek API documentation](https://api-docs.deepseek.com/) for provide
|
|
|
132
151
|
Login profiles are for Claude Code account-based authentication. They do not set `ANTHROPIC_BASE_URL` or `ANTHROPIC_AUTH_TOKEN`.
|
|
133
152
|
|
|
134
153
|
```bash
|
|
135
|
-
ccp add
|
|
136
|
-
ccp start
|
|
154
|
+
ccp add
|
|
155
|
+
ccp start <profile-name>
|
|
137
156
|
```
|
|
138
157
|
|
|
139
158
|
When Claude Code asks you to sign in, the login state is stored under that profile's config directory. Another profile can use a different account or login state:
|
|
@@ -143,6 +162,8 @@ ccp add-login personal
|
|
|
143
162
|
ccp start personal
|
|
144
163
|
```
|
|
145
164
|
|
|
165
|
+
`ccp add-login <profile>` remains available as a direct compatibility entrypoint.
|
|
166
|
+
|
|
146
167
|
### Claude Code Router Profiles
|
|
147
168
|
|
|
148
169
|
CCR profiles are bound to [Claude Code Router](https://github.com/musistudio/claude-code-router) presets. Claude Code Router is a separate open source project that can route Claude Code requests to different model providers. `multi-ccp` integrates with its config and preset system so each profile can use its own provider route.
|
|
@@ -150,8 +171,8 @@ CCR profiles are bound to [Claude Code Router](https://github.com/musistudio/cla
|
|
|
150
171
|
```bash
|
|
151
172
|
ccp ccr status
|
|
152
173
|
ccp ccr model
|
|
153
|
-
ccp add
|
|
154
|
-
ccp start
|
|
174
|
+
ccp add
|
|
175
|
+
ccp start <profile-name>
|
|
155
176
|
```
|
|
156
177
|
|
|
157
178
|
A CCR profile stores its route in `.ccp.json` and points Claude Code at a preset endpoint such as:
|
|
@@ -191,7 +212,9 @@ The sync command tracks hashes in `.ccp-sync`, copies session assets, and prompt
|
|
|
191
212
|
```bash
|
|
192
213
|
ccp help
|
|
193
214
|
ccp list
|
|
194
|
-
ccp
|
|
215
|
+
ccp ui
|
|
216
|
+
ccp add [profile]
|
|
217
|
+
ccp add --preset <preset> [profile]
|
|
195
218
|
ccp add-login <profile>
|
|
196
219
|
ccp add-ccr <profile>
|
|
197
220
|
ccp remove <profile>
|
|
@@ -275,3 +298,9 @@ npm pack --dry-run
|
|
|
275
298
|
## License
|
|
276
299
|
|
|
277
300
|
MIT
|
|
301
|
+
|
|
302
|
+
[npm-version]: https://img.shields.io/npm/v/multi-ccp?style=flat-square
|
|
303
|
+
[npm-downloads]: https://img.shields.io/npm/dm/multi-ccp?style=flat-square
|
|
304
|
+
[npm-url]: https://www.npmjs.com/package/multi-ccp
|
|
305
|
+
[license]: https://img.shields.io/npm/l/multi-ccp?style=flat-square
|
|
306
|
+
[license-url]: LICENSE
|
package/README.zh-CN.md
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
# multi-ccp
|
|
2
2
|
|
|
3
|
+
[![NPM Version][npm-version]][npm-url]
|
|
4
|
+
[![NPM Downloads][npm-downloads]][npm-url]
|
|
5
|
+
[![License][license]][license-url]
|
|
6
|
+
|
|
3
7
|
[English](README.md) | 简体中文
|
|
4
8
|
|
|
5
9
|
`multi-ccp` 是一个 Claude Code profile 和历史会话管理工具。它会安装 `ccp` 命令,帮助你运行多个 Claude Code 会话窗口,并让每个窗口拥有独立隔离的配置目录、模型 provider、登录状态和历史记录。
|
|
6
10
|
|
|
7
11
|
当你希望为工作、个人项目、不同 API provider、不同模型路由分别使用独立 Claude Code 会话时,可以使用 `multi-ccp`,无需手动切换环境变量或反复编辑配置文件。
|
|
8
12
|
|
|
13
|
+

|
|
14
|
+
|
|
9
15
|
## 功能特性
|
|
10
16
|
|
|
11
17
|
- 使用独立 profile 运行多个 Claude Code 会话窗口。
|
|
@@ -40,25 +46,38 @@ How do I use multi-ccp to manage multiple Claude Code profiles?
|
|
|
40
46
|
|
|
41
47
|
如果你想查看完整命令说明,可以继续阅读下面的示例。
|
|
42
48
|
|
|
43
|
-
|
|
49
|
+
打开本地 Web UI,用可视化方式查看 profile 和创建配置:
|
|
44
50
|
|
|
45
51
|
```bash
|
|
46
|
-
ccp
|
|
47
|
-
ccp start provider-a
|
|
52
|
+
ccp ui
|
|
48
53
|
```
|
|
49
54
|
|
|
50
|
-
|
|
55
|
+
Web UI 是 CLI 的本地辅助界面,可用于查看 profile、基于预设创建 profile、编辑 profile 配置,以及打开 CCR 管理入口。
|
|
56
|
+
|
|
57
|
+

|
|
58
|
+
|
|
59
|
+
交互式创建一个 profile:
|
|
51
60
|
|
|
52
61
|
```bash
|
|
53
|
-
ccp add
|
|
54
|
-
ccp start
|
|
62
|
+
ccp add
|
|
63
|
+
ccp start <profile-name>
|
|
55
64
|
```
|
|
56
65
|
|
|
57
|
-
|
|
66
|
+
`ccp add` 会让你选择内置预设模板或自定义配置,例如 DeepSeek、AI CodeMirror、Mimo、CCR GPT、Manual CCR、Claude Login 或 Custom API。
|
|
67
|
+
|
|
68
|
+
如果你想直接使用某个内置预设,也可以指定 `--preset`:
|
|
58
69
|
|
|
59
70
|
```bash
|
|
60
|
-
ccp add
|
|
61
|
-
ccp
|
|
71
|
+
ccp add --preset deepseek
|
|
72
|
+
ccp add --preset deepseek my-ds
|
|
73
|
+
ccp start my-ds
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
为另一个 provider、账号或项目上下文创建独立 profile:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
ccp add
|
|
80
|
+
ccp start <profile-name>
|
|
62
81
|
```
|
|
63
82
|
|
|
64
83
|
列出和查看 profile:
|
|
@@ -76,19 +95,19 @@ ccp path work
|
|
|
76
95
|
API profile 用于兼容 Anthropic API 的 provider。它会将 API 环境变量写入该 profile 的 `settings.json`。
|
|
77
96
|
|
|
78
97
|
```bash
|
|
79
|
-
ccp add
|
|
80
|
-
ccp start
|
|
98
|
+
ccp add
|
|
99
|
+
ccp start <profile-name>
|
|
81
100
|
```
|
|
82
101
|
|
|
83
|
-
|
|
102
|
+
选择 API 预设时,命令会提示你输入 profile 名称和 token。选择 Custom API 时,命令会提示你输入:
|
|
84
103
|
|
|
85
104
|
- `ANTHROPIC_BASE_URL`
|
|
86
105
|
- `ANTHROPIC_AUTH_TOKEN`
|
|
87
|
-
-
|
|
106
|
+
- 模型名称(可选;留空则使用 Claude Code 默认模型)
|
|
88
107
|
|
|
89
108
|
#### 自定义 provider 模型
|
|
90
109
|
|
|
91
|
-
为了简化 provider 配置,`ccp add` 会把你输入的模型名称默认写入所有 Claude Code
|
|
110
|
+
为了简化 provider 配置,`ccp add` 会把你输入的模型名称默认写入所有 Claude Code 默认模型槽位。如果留空,`multi-ccp` 不会写入任何模型环境变量,由 Claude Code 使用默认模型。以填写了模型的 DeepSeek profile 为例,初始配置可能类似:
|
|
92
111
|
|
|
93
112
|
```json
|
|
94
113
|
{
|
|
@@ -132,8 +151,8 @@ ccp edit deepseek
|
|
|
132
151
|
Login profile 用于 Claude Code 的账号登录模式。它不会设置 `ANTHROPIC_BASE_URL` 或 `ANTHROPIC_AUTH_TOKEN`。
|
|
133
152
|
|
|
134
153
|
```bash
|
|
135
|
-
ccp add
|
|
136
|
-
ccp start
|
|
154
|
+
ccp add
|
|
155
|
+
ccp start <profile-name>
|
|
137
156
|
```
|
|
138
157
|
|
|
139
158
|
当 Claude Code 要求你登录时,登录状态会保存在这个 profile 的配置目录下。另一个 profile 可以使用不同账号或不同登录状态:
|
|
@@ -143,6 +162,8 @@ ccp add-login personal
|
|
|
143
162
|
ccp start personal
|
|
144
163
|
```
|
|
145
164
|
|
|
165
|
+
`ccp add-login <profile>` 仍可作为直接创建登录 profile 的兼容入口。
|
|
166
|
+
|
|
146
167
|
### Claude Code Router Profiles
|
|
147
168
|
|
|
148
169
|
CCR profile 绑定到 [Claude Code Router](https://github.com/musistudio/claude-code-router) preset。Claude Code Router 是一个独立的开源项目,可以将 Claude Code 请求路由到不同模型 provider。`multi-ccp` 会集成它的 config 和 preset system,让每个 profile 可以使用自己的 provider route。
|
|
@@ -150,8 +171,8 @@ CCR profile 绑定到 [Claude Code Router](https://github.com/musistudio/claude-
|
|
|
150
171
|
```bash
|
|
151
172
|
ccp ccr status
|
|
152
173
|
ccp ccr model
|
|
153
|
-
ccp add
|
|
154
|
-
ccp start
|
|
174
|
+
ccp add
|
|
175
|
+
ccp start <profile-name>
|
|
155
176
|
```
|
|
156
177
|
|
|
157
178
|
CCR profile 会把 route 写入 `.ccp.json`,并让 Claude Code 指向类似这样的 preset endpoint:
|
|
@@ -191,7 +212,9 @@ ccp sync-session work to main
|
|
|
191
212
|
```bash
|
|
192
213
|
ccp help
|
|
193
214
|
ccp list
|
|
194
|
-
ccp
|
|
215
|
+
ccp ui
|
|
216
|
+
ccp add [profile]
|
|
217
|
+
ccp add --preset <preset> [profile]
|
|
195
218
|
ccp add-login <profile>
|
|
196
219
|
ccp add-ccr <profile>
|
|
197
220
|
ccp remove <profile>
|
|
@@ -275,3 +298,9 @@ npm pack --dry-run
|
|
|
275
298
|
## License
|
|
276
299
|
|
|
277
300
|
MIT
|
|
301
|
+
|
|
302
|
+
[npm-version]: https://img.shields.io/npm/v/multi-ccp?style=flat-square
|
|
303
|
+
[npm-downloads]: https://img.shields.io/npm/dm/multi-ccp?style=flat-square
|
|
304
|
+
[npm-url]: https://www.npmjs.com/package/multi-ccp
|
|
305
|
+
[license]: https://img.shields.io/npm/l/multi-ccp?style=flat-square
|
|
306
|
+
[license-url]: LICENSE
|
package/dist/cli/program.js
CHANGED
|
@@ -7,6 +7,8 @@ import { resolveConfigDir } from "../core/profiles.js";
|
|
|
7
7
|
import { createApiProfile, createCcrProfile, createLoginProfile, listProfiles, profileExists, removeProfile, summarizeProfile } from "../core/profiles.js";
|
|
8
8
|
import { getSettingsPath } from "../core/settings.js";
|
|
9
9
|
import { getCcrRouteChoices, getCcrStatus, installCcr, readCcrConfig, invokeCcrCli, printCcrStatus, restartCcrService, startCcrService, stopCcrService } from "../core/ccr.js";
|
|
10
|
+
import { createApiProfileFromPreset, createCcrProfileFromPreset, getProfilePreset, listProfilePresets } from "../core/presets.js";
|
|
11
|
+
import { startUiServer } from "../web/server.js";
|
|
10
12
|
import { openEditor } from "../platform/editor.js";
|
|
11
13
|
import { parseSelectionText, syncSessions } from "../core/sessions.js";
|
|
12
14
|
function getPackageVersion() {
|
|
@@ -38,6 +40,174 @@ function printProfile(profile) {
|
|
|
38
40
|
console.log(`${profile.name}\t${profile.baseUrl}`);
|
|
39
41
|
}
|
|
40
42
|
}
|
|
43
|
+
function presetChoiceName(preset) {
|
|
44
|
+
const tags = preset.tags?.length ? ` [${preset.tags.join(", ")}]` : "";
|
|
45
|
+
return `${preset.label}${tags}`;
|
|
46
|
+
}
|
|
47
|
+
async function promptProfileName(profile, defaultName, options) {
|
|
48
|
+
if (profile?.trim()) {
|
|
49
|
+
return profile.trim();
|
|
50
|
+
}
|
|
51
|
+
if (!options.promptWhenMissing) {
|
|
52
|
+
return defaultName;
|
|
53
|
+
}
|
|
54
|
+
return (await input({ message: "Profile name", default: defaultName, required: true })).trim();
|
|
55
|
+
}
|
|
56
|
+
async function selectProfilePreset() {
|
|
57
|
+
const presets = listProfilePresets().sort((a, b) => {
|
|
58
|
+
if (a.id === "custom-api")
|
|
59
|
+
return -1;
|
|
60
|
+
if (b.id === "custom-api")
|
|
61
|
+
return 1;
|
|
62
|
+
return (a.sortOrder ?? 0) - (b.sortOrder ?? 0) || a.label.localeCompare(b.label);
|
|
63
|
+
});
|
|
64
|
+
return select({
|
|
65
|
+
message: "Choose a profile template",
|
|
66
|
+
choices: presets.map((preset) => ({ name: presetChoiceName(preset), value: preset }))
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
function printCreatedProfile(created) {
|
|
70
|
+
console.log(`Created profile '${created.name}'.`);
|
|
71
|
+
console.log(`Run: ccp start ${created.name}`);
|
|
72
|
+
}
|
|
73
|
+
async function createApiPresetProfile(profile, preset, options) {
|
|
74
|
+
if (preset.type !== "api") {
|
|
75
|
+
throw new CcpError(`Preset '${preset.id}' is not an API preset.`);
|
|
76
|
+
}
|
|
77
|
+
const profileName = await promptProfileName(profile, preset.defaultProfileName, { promptWhenMissing: options.promptName });
|
|
78
|
+
if (!(await ensureProfileCanBeCreated(profileName)))
|
|
79
|
+
return;
|
|
80
|
+
console.log(`Create Claude API profile: ${profileName}`);
|
|
81
|
+
console.log(`Preset: ${preset.label}`);
|
|
82
|
+
console.log(`Base: ${preset.env.ANTHROPIC_BASE_URL}`);
|
|
83
|
+
if (preset.modelSummary)
|
|
84
|
+
console.log(`Model: ${preset.modelSummary}`);
|
|
85
|
+
const token = await password({ message: "ANTHROPIC_AUTH_TOKEN (hidden, Enter to leave placeholder)", mask: "*" });
|
|
86
|
+
const ok = await confirm({ message: "Create this profile?", default: true });
|
|
87
|
+
if (!ok) {
|
|
88
|
+
console.log("Cancelled.");
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
printCreatedProfile(await createApiProfileFromPreset({ presetId: preset.id, name: profileName, token }));
|
|
92
|
+
}
|
|
93
|
+
async function createCcrPresetProfile(profile, preset, options) {
|
|
94
|
+
if (preset.type !== "ccr") {
|
|
95
|
+
throw new CcpError(`Preset '${preset.id}' is not a CCR preset.`);
|
|
96
|
+
}
|
|
97
|
+
const profileName = await promptProfileName(profile, preset.defaultProfileName, { promptWhenMissing: options.promptName });
|
|
98
|
+
if (!(await ensureProfileCanBeCreated(profileName)))
|
|
99
|
+
return;
|
|
100
|
+
console.log(`Create CCR profile: ${profileName}`);
|
|
101
|
+
console.log(`Preset: ${preset.label}`);
|
|
102
|
+
console.log(`CCR Preset: ${preset.ccrPreset}`);
|
|
103
|
+
console.log(`Route: ${preset.ccrRoute}`);
|
|
104
|
+
const token = await password({ message: "ANTHROPIC_AUTH_TOKEN for CCR (hidden, Enter to use preset default)", mask: "*" });
|
|
105
|
+
const ok = await confirm({ message: "Create this CCR profile?", default: true });
|
|
106
|
+
if (!ok) {
|
|
107
|
+
console.log("Cancelled.");
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
printCreatedProfile(await createCcrProfileFromPreset({ presetId: preset.id, name: profileName, token }));
|
|
111
|
+
}
|
|
112
|
+
async function createCustomApiProfile(profile, preset, options) {
|
|
113
|
+
const profileName = await promptProfileName(profile, preset.defaultProfileName, { promptWhenMissing: options.promptName });
|
|
114
|
+
if (!(await ensureProfileCanBeCreated(profileName)))
|
|
115
|
+
return;
|
|
116
|
+
console.log(`Create Claude API profile: ${profileName}`);
|
|
117
|
+
const baseUrl = await input({ message: "ANTHROPIC_BASE_URL", required: true });
|
|
118
|
+
const token = await password({ message: "ANTHROPIC_AUTH_TOKEN (hidden, Enter to leave placeholder)", mask: "*" });
|
|
119
|
+
const model = await input({ message: "Model (optional, Enter for Claude Code default)" });
|
|
120
|
+
const ok = await confirm({ message: "Create this profile?", default: true });
|
|
121
|
+
if (!ok) {
|
|
122
|
+
console.log("Cancelled.");
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
printCreatedProfile(await createApiProfile({ name: profileName, baseUrl, token, model }));
|
|
126
|
+
}
|
|
127
|
+
async function selectManualCcrRoute(config) {
|
|
128
|
+
const routes = getCcrRouteChoices(config);
|
|
129
|
+
if (!config) {
|
|
130
|
+
throw new CcpError("CCR config not found. Run 'ccp ccr model' first.");
|
|
131
|
+
}
|
|
132
|
+
if (routes.length === 0) {
|
|
133
|
+
console.log("No CCR routes found. Type a route as provider,model.");
|
|
134
|
+
return input({ message: "CCR route", required: true });
|
|
135
|
+
}
|
|
136
|
+
const selected = await select({
|
|
137
|
+
message: "Bind this profile to a CCR route",
|
|
138
|
+
choices: [
|
|
139
|
+
...routes.map((value) => ({ name: value, value })),
|
|
140
|
+
{ name: "Type route manually", value: "__manual__" }
|
|
141
|
+
]
|
|
142
|
+
});
|
|
143
|
+
if (selected !== "__manual__") {
|
|
144
|
+
return selected;
|
|
145
|
+
}
|
|
146
|
+
return input({ message: "CCR route", required: true });
|
|
147
|
+
}
|
|
148
|
+
async function promptManualCcrToken(config) {
|
|
149
|
+
if (config?.APIKEY) {
|
|
150
|
+
const useExisting = await confirm({ message: "Use APIKEY from CCR config as ANTHROPIC_AUTH_TOKEN?", default: true });
|
|
151
|
+
if (useExisting) {
|
|
152
|
+
return String(config.APIKEY);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
return password({ message: "ANTHROPIC_AUTH_TOKEN for CCR (hidden, Enter to use ccr-local-secret)", mask: "*" });
|
|
156
|
+
}
|
|
157
|
+
async function createManualCcrProfile(profile, preset, options) {
|
|
158
|
+
const profileName = await promptProfileName(profile, preset.defaultProfileName, { promptWhenMissing: options.promptName });
|
|
159
|
+
if (!(await ensureProfileCanBeCreated(profileName)))
|
|
160
|
+
return;
|
|
161
|
+
const config = await readCcrConfig();
|
|
162
|
+
const route = await selectManualCcrRoute(config);
|
|
163
|
+
const token = await promptManualCcrToken(config);
|
|
164
|
+
console.log("");
|
|
165
|
+
console.log("Profile: " + profileName);
|
|
166
|
+
console.log("Type: ccr");
|
|
167
|
+
console.log("Route: " + route);
|
|
168
|
+
console.log("Token: set");
|
|
169
|
+
const ok = await confirm({ message: "Create this CCR profile?", default: true });
|
|
170
|
+
if (!ok) {
|
|
171
|
+
console.log("Cancelled.");
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
printCreatedProfile(await createCcrProfile({ name: profileName, route, token }));
|
|
175
|
+
}
|
|
176
|
+
async function createLoginPresetProfile(profile, preset, options) {
|
|
177
|
+
const profileName = await promptProfileName(profile, preset.defaultProfileName, { promptWhenMissing: options.promptName });
|
|
178
|
+
if (!(await ensureProfileCanBeCreated(profileName)))
|
|
179
|
+
return;
|
|
180
|
+
console.log(`Create Claude login profile: ${profileName}`);
|
|
181
|
+
console.log("This profile will not set ANTHROPIC_BASE_URL or ANTHROPIC_AUTH_TOKEN.");
|
|
182
|
+
const ok = await confirm({ message: "Create this login profile?", default: true });
|
|
183
|
+
if (!ok) {
|
|
184
|
+
console.log("Cancelled.");
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
const created = await createLoginProfile({ name: profileName });
|
|
188
|
+
console.log(`Created Claude login profile '${created.name}'.`);
|
|
189
|
+
console.log(`Run: ccp start ${created.name}`);
|
|
190
|
+
console.log("Then complete the Claude Code login flow for this account.");
|
|
191
|
+
}
|
|
192
|
+
async function createProfileFromPreset(profile, preset, options) {
|
|
193
|
+
switch (preset.type) {
|
|
194
|
+
case "api":
|
|
195
|
+
await createApiPresetProfile(profile, preset, options);
|
|
196
|
+
break;
|
|
197
|
+
case "ccr":
|
|
198
|
+
await createCcrPresetProfile(profile, preset, options);
|
|
199
|
+
break;
|
|
200
|
+
case "custom-api":
|
|
201
|
+
await createCustomApiProfile(profile, preset, options);
|
|
202
|
+
break;
|
|
203
|
+
case "manual-ccr":
|
|
204
|
+
await createManualCcrProfile(profile, preset, options);
|
|
205
|
+
break;
|
|
206
|
+
case "login":
|
|
207
|
+
await createLoginPresetProfile(profile, preset, options);
|
|
208
|
+
break;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
41
211
|
async function selectSessionFiles(sessions) {
|
|
42
212
|
if (sessions.length === 0)
|
|
43
213
|
return [];
|
|
@@ -126,23 +296,17 @@ export function createProgram() {
|
|
|
126
296
|
});
|
|
127
297
|
program
|
|
128
298
|
.command("add")
|
|
129
|
-
.argument("
|
|
130
|
-
.
|
|
131
|
-
.
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
const token = await password({ message: "ANTHROPIC_AUTH_TOKEN (hidden, Enter to leave placeholder)", mask: "*" });
|
|
137
|
-
const model = await input({ message: "Model", required: true });
|
|
138
|
-
const ok = await confirm({ message: "Create this profile?", default: true });
|
|
139
|
-
if (!ok) {
|
|
140
|
-
console.log("Cancelled.");
|
|
299
|
+
.argument("[profile]")
|
|
300
|
+
.option("--preset <preset>", "Create from a built-in preset")
|
|
301
|
+
.description("Create a profile from an interactive template or custom configuration")
|
|
302
|
+
.action(async (profile, options) => {
|
|
303
|
+
if (options.preset) {
|
|
304
|
+
const preset = getProfilePreset(options.preset);
|
|
305
|
+
await createProfileFromPreset(profile, preset, { promptName: false });
|
|
141
306
|
return;
|
|
142
307
|
}
|
|
143
|
-
const
|
|
144
|
-
|
|
145
|
-
console.log(`Run: ccp start ${created.name}`);
|
|
308
|
+
const preset = await selectProfilePreset();
|
|
309
|
+
await createProfileFromPreset(profile, preset, { promptName: true });
|
|
146
310
|
});
|
|
147
311
|
program
|
|
148
312
|
.command("add-login")
|
|
@@ -165,9 +329,36 @@ export function createProgram() {
|
|
|
165
329
|
});
|
|
166
330
|
program
|
|
167
331
|
.command("add-ccr")
|
|
168
|
-
.argument("
|
|
332
|
+
.argument("[profile]")
|
|
333
|
+
.option("--preset <preset>", "Create from a built-in CCR preset")
|
|
169
334
|
.description("Create a CCR preset-bound profile")
|
|
170
|
-
.action(async (profile) => {
|
|
335
|
+
.action(async (profile, options) => {
|
|
336
|
+
if (options.preset) {
|
|
337
|
+
const preset = getProfilePreset(options.preset);
|
|
338
|
+
if (preset.type !== "ccr") {
|
|
339
|
+
throw new CcpError(`Preset '${options.preset}' is not a CCR preset.`);
|
|
340
|
+
}
|
|
341
|
+
const profileName = profile || preset.defaultProfileName;
|
|
342
|
+
if (!(await ensureProfileCanBeCreated(profileName)))
|
|
343
|
+
return;
|
|
344
|
+
console.log(`Create CCR profile: ${profileName}`);
|
|
345
|
+
console.log(`Preset: ${preset.label}`);
|
|
346
|
+
console.log(`CCR Preset: ${preset.ccrPreset}`);
|
|
347
|
+
console.log(`Route: ${preset.ccrRoute}`);
|
|
348
|
+
const token = await password({ message: "ANTHROPIC_AUTH_TOKEN for CCR (hidden, Enter to use preset default)", mask: "*" });
|
|
349
|
+
const ok = await confirm({ message: "Create this CCR profile?", default: true });
|
|
350
|
+
if (!ok) {
|
|
351
|
+
console.log("Cancelled.");
|
|
352
|
+
return;
|
|
353
|
+
}
|
|
354
|
+
const created = await createCcrProfileFromPreset({ presetId: preset.id, name: profileName, token });
|
|
355
|
+
console.log("Created CCR profile '" + created.name + "'.");
|
|
356
|
+
console.log("Run: ccp start " + created.name);
|
|
357
|
+
return;
|
|
358
|
+
}
|
|
359
|
+
if (!profile) {
|
|
360
|
+
throw new CcpError("Missing profile name. Use 'ccp add-ccr <profile>' or 'ccp add-ccr --preset <preset> [profile]'.");
|
|
361
|
+
}
|
|
171
362
|
if (!(await ensureProfileCanBeCreated(profile)))
|
|
172
363
|
return;
|
|
173
364
|
const config = await readCcrConfig();
|
|
@@ -336,8 +527,11 @@ export function createProgram() {
|
|
|
336
527
|
program
|
|
337
528
|
.command("ui")
|
|
338
529
|
.description("Start the local web UI")
|
|
339
|
-
.
|
|
340
|
-
|
|
530
|
+
.option("--host <host>", "Host to bind", "127.0.0.1")
|
|
531
|
+
.option("--port <port>", "Port to listen on", (value) => Number(value), 7821)
|
|
532
|
+
.option("--no-open", "Do not open the UI in the default browser")
|
|
533
|
+
.action(async (options) => {
|
|
534
|
+
await startUiServer({ host: options.host, port: options.port, open: options.open });
|
|
341
535
|
});
|
|
342
536
|
return program;
|
|
343
537
|
}
|
package/dist/cli/program.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"program.js","sourceRoot":"","sources":["../../src/cli/program.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"program.js","sourceRoot":"","sources":["../../src/cli/program.ts"],"names":[],"mappings":"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"}
|