ccman 0.1.2 → 2.0.0
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/.github/workflows/release.yml +5 -5
- package/CLAUDE.md +246 -185
- package/README.md +282 -249
- package/README_zh.md +283 -250
- package/dev-test.sh +40 -0
- package/dist/cli.js +421 -369
- package/dist/cli.js.map +1 -1
- package/dist/commands/lang.d.ts +3 -0
- package/dist/commands/lang.d.ts.map +1 -0
- package/dist/commands/lang.js +99 -0
- package/dist/commands/lang.js.map +1 -0
- package/dist/core/CCMConfigManager.d.ts +52 -0
- package/dist/core/CCMConfigManager.d.ts.map +1 -0
- package/dist/core/CCMConfigManager.js +203 -0
- package/dist/core/CCMConfigManager.js.map +1 -0
- package/dist/core/ClaudeConfigManager.d.ts +35 -0
- package/dist/core/ClaudeConfigManager.d.ts.map +1 -0
- package/dist/core/ClaudeConfigManager.js +151 -0
- package/dist/core/ClaudeConfigManager.js.map +1 -0
- package/dist/i18n/LanguageManager.d.ts +43 -0
- package/dist/i18n/LanguageManager.d.ts.map +1 -0
- package/dist/i18n/LanguageManager.js +157 -0
- package/dist/i18n/LanguageManager.js.map +1 -0
- package/dist/i18n/messages.d.ts +65 -0
- package/dist/i18n/messages.d.ts.map +1 -0
- package/dist/i18n/messages.js +144 -0
- package/dist/i18n/messages.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -8
- package/dist/index.js.map +1 -1
- package/dist/providers/ProviderManager.d.ts +55 -0
- package/dist/providers/ProviderManager.d.ts.map +1 -0
- package/dist/providers/ProviderManager.js +326 -0
- package/dist/providers/ProviderManager.js.map +1 -0
- package/dist/types/index.d.ts +78 -38
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/dist/utils/version.d.ts +2 -64
- package/dist/utils/version.d.ts.map +1 -1
- package/dist/utils/version.js +12 -158
- package/dist/utils/version.js.map +1 -1
- package/package.json +2 -2
- package/release-temp/README.md +282 -249
- package/release-temp/package.json +2 -2
- package/scripts/modules/version-bump.sh +2 -2
- package/scripts/smart-release-v3.sh +20 -26
- package/src/cli.ts +458 -394
- package/src/commands/lang.ts +105 -0
- package/src/core/CCMConfigManager.ts +185 -0
- package/src/core/ClaudeConfigManager.ts +127 -0
- package/src/i18n/LanguageManager.ts +169 -0
- package/src/i18n/messages.ts +233 -0
- package/src/index.ts +4 -5
- package/src/providers/ProviderManager.ts +380 -0
- package/src/types/index.ts +80 -39
- package/src/utils/version.ts +11 -184
- package/dist/config/ConfigManager.d.ts +0 -67
- package/dist/config/ConfigManager.d.ts.map +0 -1
- package/dist/config/ConfigManager.js +0 -226
- package/dist/config/ConfigManager.js.map +0 -1
- package/dist/config/EnvironmentManager.d.ts +0 -83
- package/dist/config/EnvironmentManager.d.ts.map +0 -1
- package/dist/config/EnvironmentManager.js +0 -280
- package/dist/config/EnvironmentManager.js.map +0 -1
- package/dist/config/constants.d.ts +0 -40
- package/dist/config/constants.d.ts.map +0 -1
- package/dist/config/constants.js +0 -97
- package/dist/config/constants.js.map +0 -1
- package/dist/shell/ShellManager.d.ts +0 -81
- package/dist/shell/ShellManager.d.ts.map +0 -1
- package/dist/shell/ShellManager.js +0 -490
- package/dist/shell/ShellManager.js.map +0 -1
- package/src/config/ConfigManager.ts +0 -227
- package/src/config/EnvironmentManager.ts +0 -327
- package/src/config/constants.ts +0 -64
- package/src/shell/ShellManager.ts +0 -526
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { ShellManager } from '../shell/ShellManager';
|
|
2
|
-
import { ClaudeEnv, AddEnvOptions, EnvironmentListItem } from '../types';
|
|
3
|
-
export declare class EnvironmentManager {
|
|
4
|
-
private configManager;
|
|
5
|
-
private shellManager;
|
|
6
|
-
constructor();
|
|
7
|
-
/**
|
|
8
|
-
* 添加环境变量组
|
|
9
|
-
*/
|
|
10
|
-
addEnvironment(options: AddEnvOptions): Promise<ClaudeEnv>;
|
|
11
|
-
/**
|
|
12
|
-
* 删除环境变量组
|
|
13
|
-
*/
|
|
14
|
-
removeEnvironment(name: string): Promise<void>;
|
|
15
|
-
/**
|
|
16
|
-
* 设置使用的环境变量组
|
|
17
|
-
*/
|
|
18
|
-
useEnvironment(name: string, options?: {
|
|
19
|
-
autoWriteShell?: boolean;
|
|
20
|
-
autoSource?: boolean;
|
|
21
|
-
}): Promise<{
|
|
22
|
-
env: ClaudeEnv;
|
|
23
|
-
shellWriteResult?: any;
|
|
24
|
-
sourceResult?: any;
|
|
25
|
-
}>;
|
|
26
|
-
/**
|
|
27
|
-
* 获取所有环境变量组
|
|
28
|
-
*/
|
|
29
|
-
listEnvironments(): EnvironmentListItem[];
|
|
30
|
-
/**
|
|
31
|
-
* 获取当前使用的环境变量组
|
|
32
|
-
*/
|
|
33
|
-
getCurrentEnvironment(): ClaudeEnv | null;
|
|
34
|
-
/**
|
|
35
|
-
* 获取指定环境
|
|
36
|
-
*/
|
|
37
|
-
getEnvironment(name: string): ClaudeEnv | null;
|
|
38
|
-
/**
|
|
39
|
-
* 更新环境
|
|
40
|
-
*/
|
|
41
|
-
updateEnvironment(name: string, updates: {
|
|
42
|
-
baseUrl?: string;
|
|
43
|
-
apiKey?: string;
|
|
44
|
-
}, autoWriteShell?: boolean): Promise<ClaudeEnv>;
|
|
45
|
-
/**
|
|
46
|
-
* 生成环境变量脚本
|
|
47
|
-
*/
|
|
48
|
-
generateEnvScript(): string;
|
|
49
|
-
/**
|
|
50
|
-
* 测试环境连接
|
|
51
|
-
*/
|
|
52
|
-
testEnvironment(name?: string): Promise<{
|
|
53
|
-
success: boolean;
|
|
54
|
-
message: string;
|
|
55
|
-
error?: string;
|
|
56
|
-
}>;
|
|
57
|
-
/**
|
|
58
|
-
* 获取环境统计信息
|
|
59
|
-
*/
|
|
60
|
-
getStats(): {
|
|
61
|
-
totalEnvironments: number;
|
|
62
|
-
currentEnvironment: string | null;
|
|
63
|
-
hasShellIntegration: boolean;
|
|
64
|
-
};
|
|
65
|
-
/**
|
|
66
|
-
* 将 ClaudeEnv 转换为 shell 环境变量格式
|
|
67
|
-
*/
|
|
68
|
-
private getEnvVars;
|
|
69
|
-
/**
|
|
70
|
-
* 获取 Shell Manager 实例(用于高级操作)
|
|
71
|
-
*/
|
|
72
|
-
getShellManager(): ShellManager;
|
|
73
|
-
/**
|
|
74
|
-
* 清除所有环境和配置
|
|
75
|
-
*/
|
|
76
|
-
clearAll(): Promise<{
|
|
77
|
-
success: boolean;
|
|
78
|
-
message: string;
|
|
79
|
-
details: string[];
|
|
80
|
-
}>;
|
|
81
|
-
private validateEnvironmentInput;
|
|
82
|
-
}
|
|
83
|
-
//# sourceMappingURL=EnvironmentManager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentManager.d.ts","sourceRoot":"","sources":["../../src/config/EnvironmentManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAgB,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGvF,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAe;;IAOnC;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC;IAqBhE;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBpD;;OAEG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC;QACxG,GAAG,EAAE,SAAS,CAAC;QACf,gBAAgB,CAAC,EAAE,GAAG,CAAC;QACvB,YAAY,CAAC,EAAE,GAAG,CAAC;KACpB,CAAC;IA+BF;;OAEG;IACH,gBAAgB,IAAI,mBAAmB,EAAE;IAIzC;;OAEG;IACH,qBAAqB,IAAI,SAAS,GAAG,IAAI;IAIzC;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAI9C;;OAEG;IACG,iBAAiB,CACrB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,EAC9C,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC,SAAS,CAAC;IAsBrB;;OAEG;IACH,iBAAiB,IAAI,MAAM;IA8B3B;;OAEG;IACG,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAkCpG;;OAEG;IACH,QAAQ,IAAI;QACV,iBAAiB,EAAE,MAAM,CAAC;QAC1B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,mBAAmB,EAAE,OAAO,CAAC;KAC9B;IAWD;;OAEG;IACH,OAAO,CAAC,UAAU;IAOlB;;OAEG;IACH,eAAe,IAAI,YAAY;IAI/B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IA8CnF,OAAO,CAAC,wBAAwB;CAyBjC"}
|
|
@@ -1,280 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EnvironmentManager = void 0;
|
|
4
|
-
const ConfigManager_1 = require("../config/ConfigManager");
|
|
5
|
-
const ShellManager_1 = require("../shell/ShellManager");
|
|
6
|
-
const constants_1 = require("./constants");
|
|
7
|
-
class EnvironmentManager {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.configManager = new ConfigManager_1.ConfigManager();
|
|
10
|
-
this.shellManager = new ShellManager_1.ShellManager();
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* 添加环境变量组
|
|
14
|
-
*/
|
|
15
|
-
async addEnvironment(options) {
|
|
16
|
-
// 验证输入
|
|
17
|
-
this.validateEnvironmentInput(options);
|
|
18
|
-
// 添加环境到配置
|
|
19
|
-
const newEnv = this.configManager.addEnvironment(options);
|
|
20
|
-
// 如果启用自动写入 shell,则写入
|
|
21
|
-
const settings = this.configManager.getSettings();
|
|
22
|
-
if (options.autoWriteShell ?? settings.autoWriteShell) {
|
|
23
|
-
try {
|
|
24
|
-
await this.shellManager.writeToShell(this.getEnvVars(newEnv), newEnv.name);
|
|
25
|
-
}
|
|
26
|
-
catch (error) {
|
|
27
|
-
// 写入失败不应该影响添加环境,只记录错误
|
|
28
|
-
console.warn(`Warning: Failed to write to shell config: ${error}`);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return newEnv;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* 删除环境变量组
|
|
35
|
-
*/
|
|
36
|
-
async removeEnvironment(name) {
|
|
37
|
-
if (!this.configManager.hasEnvironment(name)) {
|
|
38
|
-
throw new Error(`Environment "${name}" not found`);
|
|
39
|
-
}
|
|
40
|
-
this.configManager.removeEnvironment(name);
|
|
41
|
-
// 如果删除的是当前环境,尝试清理 shell 配置
|
|
42
|
-
const currentEnv = this.configManager.getCurrentEnvironment();
|
|
43
|
-
if (!currentEnv) {
|
|
44
|
-
try {
|
|
45
|
-
await this.shellManager.clearFromShell();
|
|
46
|
-
}
|
|
47
|
-
catch (error) {
|
|
48
|
-
console.warn(`Warning: Failed to clear shell config: ${error}`);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* 设置使用的环境变量组
|
|
54
|
-
*/
|
|
55
|
-
async useEnvironment(name, options) {
|
|
56
|
-
const env = this.configManager.setCurrentEnvironment(name);
|
|
57
|
-
// 根据参数或全局设置决定是否写入 shell
|
|
58
|
-
const settings = this.configManager.getSettings();
|
|
59
|
-
const shouldWriteShell = options?.autoWriteShell ?? settings.autoWriteShell;
|
|
60
|
-
let shellWriteResult;
|
|
61
|
-
let sourceResult;
|
|
62
|
-
if (shouldWriteShell) {
|
|
63
|
-
try {
|
|
64
|
-
const envVars = this.getEnvVars(env);
|
|
65
|
-
shellWriteResult = await this.shellManager.writeToShell(envVars, env.name);
|
|
66
|
-
// 如果指定了自动 source,则执行自动 source
|
|
67
|
-
if (options?.autoSource) {
|
|
68
|
-
sourceResult = await this.shellManager.autoSourceShell();
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
catch (error) {
|
|
72
|
-
throw new Error(`Failed to write environment variables to shell: ${error}`);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
return {
|
|
76
|
-
env,
|
|
77
|
-
shellWriteResult,
|
|
78
|
-
sourceResult
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* 获取所有环境变量组
|
|
83
|
-
*/
|
|
84
|
-
listEnvironments() {
|
|
85
|
-
return this.configManager.listEnvironments();
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* 获取当前使用的环境变量组
|
|
89
|
-
*/
|
|
90
|
-
getCurrentEnvironment() {
|
|
91
|
-
return this.configManager.getCurrentEnvironment();
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* 获取指定环境
|
|
95
|
-
*/
|
|
96
|
-
getEnvironment(name) {
|
|
97
|
-
return this.configManager.getEnvironment(name);
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* 更新环境
|
|
101
|
-
*/
|
|
102
|
-
async updateEnvironment(name, updates, autoWriteShell) {
|
|
103
|
-
const updatedEnv = this.configManager.updateEnvironment(name, updates);
|
|
104
|
-
// 如果更新的是当前环境,且启用自动写入,则更新 shell 配置
|
|
105
|
-
const currentEnv = this.configManager.getCurrentEnvironment();
|
|
106
|
-
if (currentEnv?.name === name) {
|
|
107
|
-
const settings = this.configManager.getSettings();
|
|
108
|
-
const shouldWriteShell = autoWriteShell ?? settings.autoWriteShell;
|
|
109
|
-
if (shouldWriteShell) {
|
|
110
|
-
try {
|
|
111
|
-
const envVars = this.getEnvVars(updatedEnv);
|
|
112
|
-
await this.shellManager.writeToShell(envVars, updatedEnv.name);
|
|
113
|
-
}
|
|
114
|
-
catch (error) {
|
|
115
|
-
console.warn(`Warning: Failed to update shell config: ${error}`);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
return updatedEnv;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* 生成环境变量脚本
|
|
123
|
-
*/
|
|
124
|
-
generateEnvScript() {
|
|
125
|
-
const currentEnv = this.configManager.getCurrentEnvironment();
|
|
126
|
-
if (!currentEnv) {
|
|
127
|
-
throw new Error('No environment is currently active');
|
|
128
|
-
}
|
|
129
|
-
const envVars = this.getEnvVars(currentEnv);
|
|
130
|
-
const now = new Date();
|
|
131
|
-
const timestamp = now.getFullYear() + '-' +
|
|
132
|
-
String(now.getMonth() + 1).padStart(2, '0') + '-' +
|
|
133
|
-
String(now.getDate()).padStart(2, '0') + ' ' +
|
|
134
|
-
String(now.getHours()).padStart(2, '0') + ':' +
|
|
135
|
-
String(now.getMinutes()).padStart(2, '0') + ':' +
|
|
136
|
-
String(now.getSeconds()).padStart(2, '0');
|
|
137
|
-
const script = `#!/bin/bash
|
|
138
|
-
# CCM Environment Variables for: ${currentEnv.name}
|
|
139
|
-
# Generated at: ${timestamp}
|
|
140
|
-
|
|
141
|
-
export ${constants_1.CONFIG.ENV_VARS.BASE_URL}="${envVars.ANTHROPIC_BASE_URL}"
|
|
142
|
-
export ${constants_1.CONFIG.ENV_VARS.AUTH_TOKEN}="${envVars.ANTHROPIC_AUTH_TOKEN}"
|
|
143
|
-
|
|
144
|
-
echo "Environment variables set for: ${currentEnv.name}"
|
|
145
|
-
`;
|
|
146
|
-
return script;
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* 测试环境连接
|
|
150
|
-
*/
|
|
151
|
-
async testEnvironment(name) {
|
|
152
|
-
const env = name ? this.getEnvironment(name) : this.getCurrentEnvironment();
|
|
153
|
-
if (!env) {
|
|
154
|
-
return {
|
|
155
|
-
success: false,
|
|
156
|
-
message: `Environment ${name ? `"${name}"` : 'current'} not found`
|
|
157
|
-
};
|
|
158
|
-
}
|
|
159
|
-
// 简单验证 URL 格式和 API Key 存在
|
|
160
|
-
try {
|
|
161
|
-
new URL(env.baseUrl);
|
|
162
|
-
if (!env.apiKey || env.apiKey.trim().length === 0) {
|
|
163
|
-
return {
|
|
164
|
-
success: false,
|
|
165
|
-
message: `Environment "${env.name}" has empty API key`
|
|
166
|
-
};
|
|
167
|
-
}
|
|
168
|
-
return {
|
|
169
|
-
success: true,
|
|
170
|
-
message: `Environment "${env.name}" configuration is valid`
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
catch (error) {
|
|
174
|
-
return {
|
|
175
|
-
success: false,
|
|
176
|
-
message: `Environment "${env.name}" has invalid base URL`,
|
|
177
|
-
error: String(error)
|
|
178
|
-
};
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* 获取环境统计信息
|
|
183
|
-
*/
|
|
184
|
-
getStats() {
|
|
185
|
-
const currentEnv = this.configManager.getCurrentEnvironment();
|
|
186
|
-
const settings = this.configManager.getSettings();
|
|
187
|
-
return {
|
|
188
|
-
totalEnvironments: this.configManager.getEnvironmentCount(),
|
|
189
|
-
currentEnvironment: currentEnv?.name || null,
|
|
190
|
-
hasShellIntegration: settings.autoWriteShell
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
|
-
/**
|
|
194
|
-
* 将 ClaudeEnv 转换为 shell 环境变量格式
|
|
195
|
-
*/
|
|
196
|
-
getEnvVars(env) {
|
|
197
|
-
return {
|
|
198
|
-
[constants_1.CONFIG.ENV_VARS.BASE_URL]: env.baseUrl,
|
|
199
|
-
[constants_1.CONFIG.ENV_VARS.AUTH_TOKEN]: env.apiKey
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* 获取 Shell Manager 实例(用于高级操作)
|
|
204
|
-
*/
|
|
205
|
-
getShellManager() {
|
|
206
|
-
return this.shellManager;
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* 清除所有环境和配置
|
|
210
|
-
*/
|
|
211
|
-
async clearAll() {
|
|
212
|
-
const details = [];
|
|
213
|
-
let hasErrors = false;
|
|
214
|
-
try {
|
|
215
|
-
// 1. 清除 shell 配置
|
|
216
|
-
try {
|
|
217
|
-
const shellResult = await this.shellManager.clearFromShell();
|
|
218
|
-
if (shellResult.success) {
|
|
219
|
-
details.push('✓ Shell configuration cleared');
|
|
220
|
-
}
|
|
221
|
-
else {
|
|
222
|
-
details.push(`⚠ Shell cleanup warning: ${shellResult.message}`);
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
catch (error) {
|
|
226
|
-
details.push(`✗ Shell cleanup failed: ${error}`);
|
|
227
|
-
hasErrors = true;
|
|
228
|
-
}
|
|
229
|
-
// 2. 清除所有环境配置
|
|
230
|
-
try {
|
|
231
|
-
this.configManager.clearAll();
|
|
232
|
-
details.push('✓ All environments removed');
|
|
233
|
-
details.push('✓ Configuration reset');
|
|
234
|
-
}
|
|
235
|
-
catch (error) {
|
|
236
|
-
details.push(`✗ Configuration cleanup failed: ${error}`);
|
|
237
|
-
hasErrors = true;
|
|
238
|
-
}
|
|
239
|
-
const message = hasErrors
|
|
240
|
-
? 'CCM cleared with some warnings (see details)'
|
|
241
|
-
: 'CCM completely cleared - all environments and shell integration removed';
|
|
242
|
-
return {
|
|
243
|
-
success: !hasErrors,
|
|
244
|
-
message,
|
|
245
|
-
details
|
|
246
|
-
};
|
|
247
|
-
}
|
|
248
|
-
catch (error) {
|
|
249
|
-
return {
|
|
250
|
-
success: false,
|
|
251
|
-
message: `Failed to clear CCM: ${error}`,
|
|
252
|
-
details: ['✗ Unexpected error during cleanup']
|
|
253
|
-
};
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
validateEnvironmentInput(options) {
|
|
257
|
-
if (!options.name || options.name.trim().length === 0) {
|
|
258
|
-
throw new Error('Environment name is required');
|
|
259
|
-
}
|
|
260
|
-
if (!options.baseUrl || options.baseUrl.trim().length === 0) {
|
|
261
|
-
throw new Error('Base URL is required');
|
|
262
|
-
}
|
|
263
|
-
if (!options.apiKey || options.apiKey.trim().length === 0) {
|
|
264
|
-
throw new Error('API key is required');
|
|
265
|
-
}
|
|
266
|
-
// 验证 URL 格式
|
|
267
|
-
try {
|
|
268
|
-
new URL(options.baseUrl);
|
|
269
|
-
}
|
|
270
|
-
catch (error) {
|
|
271
|
-
throw new Error('Invalid base URL format');
|
|
272
|
-
}
|
|
273
|
-
// 验证环境名称格式(只允许字母、数字、下划线、连字符)
|
|
274
|
-
if (!/^[a-zA-Z0-9_-]+$/.test(options.name)) {
|
|
275
|
-
throw new Error('Environment name can only contain letters, numbers, underscores, and hyphens');
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
exports.EnvironmentManager = EnvironmentManager;
|
|
280
|
-
//# sourceMappingURL=EnvironmentManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentManager.js","sourceRoot":"","sources":["../../src/config/EnvironmentManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CCMan (Claude Code Manager) 配置常量
|
|
3
|
-
* 简化版本 - 只保留实际需要的常量
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* 应用配置常量
|
|
7
|
-
*/
|
|
8
|
-
export declare const CONFIG: {
|
|
9
|
-
/**
|
|
10
|
-
* 路径配置
|
|
11
|
-
*/
|
|
12
|
-
readonly PATHS: {
|
|
13
|
-
readonly DIR: ".ccman";
|
|
14
|
-
readonly CONFIG_FILE: "config.json";
|
|
15
|
-
readonly SHELL_RC: ".ccmanrc";
|
|
16
|
-
};
|
|
17
|
-
/**
|
|
18
|
-
* 环境变量名称
|
|
19
|
-
*/
|
|
20
|
-
readonly ENV_VARS: {
|
|
21
|
-
readonly BASE_URL: "ANTHROPIC_BASE_URL";
|
|
22
|
-
readonly AUTH_TOKEN: "ANTHROPIC_AUTH_TOKEN";
|
|
23
|
-
};
|
|
24
|
-
/**
|
|
25
|
-
* 应用元信息
|
|
26
|
-
*/
|
|
27
|
-
readonly APP_NAME: "CCMan";
|
|
28
|
-
readonly APP_FULL_NAME: "Claude Code Manager";
|
|
29
|
-
};
|
|
30
|
-
/**
|
|
31
|
-
* 获取完整路径的辅助函数
|
|
32
|
-
*/
|
|
33
|
-
export declare function getConfigDir(): string;
|
|
34
|
-
export declare function getConfigFile(): string;
|
|
35
|
-
export declare function getShellRCFile(): string;
|
|
36
|
-
/**
|
|
37
|
-
* 获取显示用的路径字符串
|
|
38
|
-
*/
|
|
39
|
-
export declare function getDisplayPath(type: 'config' | 'shellrc'): string;
|
|
40
|
-
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,eAAO,MAAM,MAAM;IACjB;;OAEG;;;;;;IAOH;;OAEG;;;;;IAMH;;OAEG;;;CAGK,CAAC;AAEX;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CASjE"}
|
package/dist/config/constants.js
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* CCMan (Claude Code Manager) 配置常量
|
|
4
|
-
* 简化版本 - 只保留实际需要的常量
|
|
5
|
-
*/
|
|
6
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
-
if (k2 === undefined) k2 = k;
|
|
8
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
-
}
|
|
12
|
-
Object.defineProperty(o, k2, desc);
|
|
13
|
-
}) : (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
o[k2] = m[k];
|
|
16
|
-
}));
|
|
17
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
-
}) : function(o, v) {
|
|
20
|
-
o["default"] = v;
|
|
21
|
-
});
|
|
22
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
-
var ownKeys = function(o) {
|
|
24
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
-
var ar = [];
|
|
26
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
-
return ar;
|
|
28
|
-
};
|
|
29
|
-
return ownKeys(o);
|
|
30
|
-
};
|
|
31
|
-
return function (mod) {
|
|
32
|
-
if (mod && mod.__esModule) return mod;
|
|
33
|
-
var result = {};
|
|
34
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
-
__setModuleDefault(result, mod);
|
|
36
|
-
return result;
|
|
37
|
-
};
|
|
38
|
-
})();
|
|
39
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
-
exports.CONFIG = void 0;
|
|
41
|
-
exports.getConfigDir = getConfigDir;
|
|
42
|
-
exports.getConfigFile = getConfigFile;
|
|
43
|
-
exports.getShellRCFile = getShellRCFile;
|
|
44
|
-
exports.getDisplayPath = getDisplayPath;
|
|
45
|
-
const path = __importStar(require("path"));
|
|
46
|
-
const os = __importStar(require("os"));
|
|
47
|
-
/**
|
|
48
|
-
* 应用配置常量
|
|
49
|
-
*/
|
|
50
|
-
exports.CONFIG = {
|
|
51
|
-
/**
|
|
52
|
-
* 路径配置
|
|
53
|
-
*/
|
|
54
|
-
PATHS: {
|
|
55
|
-
DIR: '.ccman',
|
|
56
|
-
CONFIG_FILE: 'config.json',
|
|
57
|
-
SHELL_RC: '.ccmanrc'
|
|
58
|
-
},
|
|
59
|
-
/**
|
|
60
|
-
* 环境变量名称
|
|
61
|
-
*/
|
|
62
|
-
ENV_VARS: {
|
|
63
|
-
BASE_URL: 'ANTHROPIC_BASE_URL',
|
|
64
|
-
AUTH_TOKEN: 'ANTHROPIC_AUTH_TOKEN'
|
|
65
|
-
},
|
|
66
|
-
/**
|
|
67
|
-
* 应用元信息
|
|
68
|
-
*/
|
|
69
|
-
APP_NAME: 'CCMan',
|
|
70
|
-
APP_FULL_NAME: 'Claude Code Manager'
|
|
71
|
-
};
|
|
72
|
-
/**
|
|
73
|
-
* 获取完整路径的辅助函数
|
|
74
|
-
*/
|
|
75
|
-
function getConfigDir() {
|
|
76
|
-
return path.join(os.homedir(), exports.CONFIG.PATHS.DIR);
|
|
77
|
-
}
|
|
78
|
-
function getConfigFile() {
|
|
79
|
-
return path.join(getConfigDir(), exports.CONFIG.PATHS.CONFIG_FILE);
|
|
80
|
-
}
|
|
81
|
-
function getShellRCFile() {
|
|
82
|
-
return path.join(getConfigDir(), exports.CONFIG.PATHS.SHELL_RC);
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* 获取显示用的路径字符串
|
|
86
|
-
*/
|
|
87
|
-
function getDisplayPath(type) {
|
|
88
|
-
switch (type) {
|
|
89
|
-
case 'config':
|
|
90
|
-
return `~/${exports.CONFIG.PATHS.DIR}/${exports.CONFIG.PATHS.CONFIG_FILE}`;
|
|
91
|
-
case 'shellrc':
|
|
92
|
-
return `~/${exports.CONFIG.PATHS.DIR}/${exports.CONFIG.PATHS.SHELL_RC}`;
|
|
93
|
-
default:
|
|
94
|
-
return `~/${exports.CONFIG.PATHS.DIR}`;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCH,oCAEC;AAED,sCAEC;AAED,wCAEC;AAKD,wCASC;AA1DD,2CAA6B;AAC7B,uCAAyB;AAEzB;;GAEG;AACU,QAAA,MAAM,GAAG;IACpB;;OAEG;IACH,KAAK,EAAE;QACL,GAAG,EAAE,QAAQ;QACb,WAAW,EAAE,aAAa;QAC1B,QAAQ,EAAE,UAAU;KACrB;IAED;;OAEG;IACH,QAAQ,EAAE;QACR,QAAQ,EAAE,oBAAoB;QAC9B,UAAU,EAAE,sBAAsB;KACnC;IAED;;OAEG;IACH,QAAQ,EAAE,OAAO;IACjB,aAAa,EAAE,qBAAqB;CAC5B,CAAC;AAEX;;GAEG;AACH,SAAgB,YAAY;IAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,cAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,SAAgB,aAAa;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,cAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAC7D,CAAC;AAED,SAAgB,cAAc;IAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,cAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,IAA0B;IACvD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,KAAK,cAAM,CAAC,KAAK,CAAC,GAAG,IAAI,cAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7D,KAAK,SAAS;YACZ,OAAO,KAAK,cAAM,CAAC,KAAK,CAAC,GAAG,IAAI,cAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC1D;YACE,OAAO,KAAK,cAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IACnC,CAAC;AACH,CAAC"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { ShellEnvVars, ShellWriteResult, ShellType } from '../types';
|
|
2
|
-
export declare class ShellManager {
|
|
3
|
-
private readonly homeDir;
|
|
4
|
-
private readonly ccmanDir;
|
|
5
|
-
private readonly ccmanrcPath;
|
|
6
|
-
constructor();
|
|
7
|
-
/**
|
|
8
|
-
* 写入环境变量到 CCMan 配置文件并更新 shell 引用
|
|
9
|
-
*/
|
|
10
|
-
writeToShell(envVars: ShellEnvVars, envName?: string): Promise<ShellWriteResult>;
|
|
11
|
-
/**
|
|
12
|
-
* 创建手动配置结果
|
|
13
|
-
*/
|
|
14
|
-
private createManualConfigResult;
|
|
15
|
-
/**
|
|
16
|
-
* 检查shell配置文件写入权限
|
|
17
|
-
*/
|
|
18
|
-
private checkShellWritePermissions;
|
|
19
|
-
/**
|
|
20
|
-
* 写入 ccmanrc 文件
|
|
21
|
-
*/
|
|
22
|
-
private writeCCMANRC;
|
|
23
|
-
/**
|
|
24
|
-
* 确保 shell 配置文件中有对 ccmanrc 的引用
|
|
25
|
-
*/
|
|
26
|
-
private ensureShellReference;
|
|
27
|
-
/**
|
|
28
|
-
* 添加 shell 引用到配置文件
|
|
29
|
-
*/
|
|
30
|
-
private addShellReference;
|
|
31
|
-
/**
|
|
32
|
-
* 生成 shell 引用代码
|
|
33
|
-
*/
|
|
34
|
-
private generateShellReference;
|
|
35
|
-
/**
|
|
36
|
-
* 检查是否已经有 shell 引用
|
|
37
|
-
*/
|
|
38
|
-
private hasShellReference;
|
|
39
|
-
/**
|
|
40
|
-
* 从 shell 配置文件中清除 ccmanrc 引用和 ccmanrc 文件
|
|
41
|
-
*/
|
|
42
|
-
clearFromShell(): Promise<ShellWriteResult>;
|
|
43
|
-
/**
|
|
44
|
-
* 从配置文件中移除 shell 引用
|
|
45
|
-
*/
|
|
46
|
-
private removeShellReference;
|
|
47
|
-
/**
|
|
48
|
-
* 从内容中移除 shell 引用部分
|
|
49
|
-
*/
|
|
50
|
-
private removeShellReferenceFromContent;
|
|
51
|
-
/**
|
|
52
|
-
* 检测当前使用的 shell 类型
|
|
53
|
-
*/
|
|
54
|
-
detectShell(): ShellType;
|
|
55
|
-
/**
|
|
56
|
-
* 获取 shell 配置文件路径列表
|
|
57
|
-
*/
|
|
58
|
-
getShellConfigFiles(shellType: ShellType): string[];
|
|
59
|
-
/**
|
|
60
|
-
* 生成环境变量导出语句
|
|
61
|
-
*/
|
|
62
|
-
generateExportStatements(envVars: ShellEnvVars, envName?: string): string;
|
|
63
|
-
/**
|
|
64
|
-
* 检查是否已经写入了环境变量
|
|
65
|
-
*/
|
|
66
|
-
hasEnvVarsInShell(): boolean;
|
|
67
|
-
/**
|
|
68
|
-
* 自动 source shell 配置文件
|
|
69
|
-
*/
|
|
70
|
-
autoSourceShell(): Promise<ShellWriteResult>;
|
|
71
|
-
/**
|
|
72
|
-
* 获取当前 shell 信息
|
|
73
|
-
*/
|
|
74
|
-
getShellInfo(): {
|
|
75
|
-
shellType: ShellType;
|
|
76
|
-
shellPath: string;
|
|
77
|
-
configFiles: string[];
|
|
78
|
-
activeConfigFile?: string;
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=ShellManager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ShellManager.d.ts","sourceRoot":"","sources":["../../src/shell/ShellManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrE,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;;IAQrC;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmCtF;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAwChC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA0ClC;;OAEG;YACW,YAAY;IAQ1B;;OAEG;YACW,oBAAoB;IAyClC;;OAEG;YACW,iBAAiB;IA+B/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAS9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAKzB;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,gBAAgB,CAAC;IA6CjD;;OAEG;YACW,oBAAoB;IAWlC;;OAEG;IACH,OAAO,CAAC,+BAA+B;IA2BvC;;OAEG;IACH,WAAW,IAAI,SAAS;IAcxB;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,EAAE;IAkCnD;;OAEG;IACH,wBAAwB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAmBzE;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAsB5B;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAuDlD;;OAEG;IACH,YAAY,IAAI;QACd,SAAS,EAAE,SAAS,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B;CAcF"}
|