@kaitranntt/ccs 5.3.0-beta.2 → 5.3.0-beta.3
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/VERSION +1 -1
- package/dist/ccs.js +6 -0
- package/dist/ccs.js.map +1 -1
- package/dist/commands/help-command.d.ts.map +1 -1
- package/dist/commands/help-command.js +6 -3
- package/dist/commands/help-command.js.map +1 -1
- package/dist/commands/profile-command.d.ts +11 -0
- package/dist/commands/profile-command.d.ts.map +1 -0
- package/dist/commands/profile-command.js +407 -0
- package/dist/commands/profile-command.js.map +1 -0
- package/dist/commands/shell-completion-command.d.ts.map +1 -1
- package/dist/commands/shell-completion-command.js +6 -2
- package/dist/commands/shell-completion-command.js.map +1 -1
- package/dist/utils/prompt.d.ts +7 -0
- package/dist/utils/prompt.d.ts.map +1 -1
- package/dist/utils/prompt.js +61 -0
- package/dist/utils/prompt.js.map +1 -1
- package/dist/utils/shell-completion.d.ts +3 -1
- package/dist/utils/shell-completion.d.ts.map +1 -1
- package/dist/utils/shell-completion.js +43 -14
- package/dist/utils/shell-completion.js.map +1 -1
- package/package.json +1 -1
- package/scripts/completion/ccs.bash +31 -1
- package/scripts/completion/ccs.fish +43 -10
- package/scripts/completion/ccs.ps1 +57 -1
- package/scripts/completion/ccs.zsh +57 -1
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
5.3.0-beta.
|
|
1
|
+
5.3.0-beta.3
|
package/dist/ccs.js
CHANGED
|
@@ -231,6 +231,12 @@ async function main() {
|
|
|
231
231
|
await authCommands.route(args.slice(1));
|
|
232
232
|
return;
|
|
233
233
|
}
|
|
234
|
+
// Special case: profile command
|
|
235
|
+
if (firstArg === 'profile') {
|
|
236
|
+
const { handleProfileCommand } = await Promise.resolve().then(() => __importStar(require('./commands/profile-command')));
|
|
237
|
+
await handleProfileCommand(args.slice(1));
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
234
240
|
// Special case: headless delegation (-p flag)
|
|
235
241
|
if (args.includes('-p') || args.includes('--prompt')) {
|
|
236
242
|
const { DelegationHandler } = await Promise.resolve().then(() => __importStar(require('./delegation/delegation-handler')));
|
package/dist/ccs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ccs.js","sourceRoot":"","sources":["../src/ccs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ccs.js","sourceRoot":"","sources":["../src/ccs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-command.d.ts","sourceRoot":"","sources":["../../src/commands/help-command.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"help-command.d.ts","sourceRoot":"","sources":["../../src/commands/help-command.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAwIxC"}
|
|
@@ -13,15 +13,18 @@ function handleHelpCommand() {
|
|
|
13
13
|
console.log(` ${(0, helpers_1.colored)('ccs', 'yellow')} [flags]`);
|
|
14
14
|
console.log('');
|
|
15
15
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
16
|
-
// SECTION 1: API KEY MODELS
|
|
16
|
+
// SECTION 1: API KEY MODELS + PROFILE MANAGEMENT
|
|
17
17
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
18
|
-
console.log((0, helpers_1.colored)('═══ API Key
|
|
19
|
-
console.log(' Configure
|
|
18
|
+
console.log((0, helpers_1.colored)('═══ API Key Profiles ═══', 'cyanBold'));
|
|
19
|
+
console.log(' Configure in ~/.ccs/*.settings.json');
|
|
20
20
|
console.log('');
|
|
21
21
|
console.log(` ${(0, helpers_1.colored)('ccs', 'yellow')} Use default Claude account`);
|
|
22
22
|
console.log(` ${(0, helpers_1.colored)('ccs glm', 'yellow')} GLM 4.6 (API key required)`);
|
|
23
23
|
console.log(` ${(0, helpers_1.colored)('ccs glmt', 'yellow')} GLM with thinking mode`);
|
|
24
24
|
console.log(` ${(0, helpers_1.colored)('ccs kimi', 'yellow')} Kimi for Coding (API key)`);
|
|
25
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile create', 'yellow')} Create custom API profile`);
|
|
26
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile remove', 'yellow')} Remove a profile`);
|
|
27
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile list', 'yellow')} List all profiles`);
|
|
25
28
|
console.log('');
|
|
26
29
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
27
30
|
// SECTION 2: ACCOUNT MANAGEMENT
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-command.js","sourceRoot":"","sources":["../../src/commands/help-command.ts"],"names":[],"mappings":";;;AAAA,8CAA2C;AAE3C;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,CAAC,GAAG,CAAC,IAAA,iBAAO,EAAC,6DAA6D,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,OAAO,CAAC,GAAG,CAAC,IAAA,iBAAO,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAA,iBAAO,EAAC,KAAK,EAAE,QAAQ,CAAC,6BAA6B,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,KAAK,IAAA,iBAAO,EAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,8EAA8E;IAC9E,
|
|
1
|
+
{"version":3,"file":"help-command.js","sourceRoot":"","sources":["../../src/commands/help-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Profile Command Handler
|
|
3
|
+
*
|
|
4
|
+
* Manages CCS profiles for custom API providers.
|
|
5
|
+
* Commands: create, list
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Main profile command router
|
|
9
|
+
*/
|
|
10
|
+
export declare function handleProfileCommand(args: string[]): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=profile-command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile-command.d.ts","sourceRoot":"","sources":["../../src/commands/profile-command.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmYH;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BxE"}
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Profile Command Handler
|
|
4
|
+
*
|
|
5
|
+
* Manages CCS profiles for custom API providers.
|
|
6
|
+
* Commands: create, list
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
+
if (mod && mod.__esModule) return mod;
|
|
26
|
+
var result = {};
|
|
27
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
+
__setModuleDefault(result, mod);
|
|
29
|
+
return result;
|
|
30
|
+
};
|
|
31
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
exports.handleProfileCommand = void 0;
|
|
33
|
+
const fs = __importStar(require("fs"));
|
|
34
|
+
const path = __importStar(require("path"));
|
|
35
|
+
const helpers_1 = require("../utils/helpers");
|
|
36
|
+
const prompt_1 = require("../utils/prompt");
|
|
37
|
+
const config_manager_1 = require("../utils/config-manager");
|
|
38
|
+
/**
|
|
39
|
+
* Parse command line arguments for profile commands
|
|
40
|
+
*/
|
|
41
|
+
function parseArgs(args) {
|
|
42
|
+
const result = {};
|
|
43
|
+
for (let i = 0; i < args.length; i++) {
|
|
44
|
+
const arg = args[i];
|
|
45
|
+
if (arg === '--base-url' && args[i + 1]) {
|
|
46
|
+
result.baseUrl = args[++i];
|
|
47
|
+
}
|
|
48
|
+
else if (arg === '--api-key' && args[i + 1]) {
|
|
49
|
+
result.apiKey = args[++i];
|
|
50
|
+
}
|
|
51
|
+
else if (arg === '--model' && args[i + 1]) {
|
|
52
|
+
result.model = args[++i];
|
|
53
|
+
}
|
|
54
|
+
else if (arg === '--force') {
|
|
55
|
+
result.force = true;
|
|
56
|
+
}
|
|
57
|
+
else if (arg === '--yes' || arg === '-y') {
|
|
58
|
+
result.yes = true;
|
|
59
|
+
}
|
|
60
|
+
else if (!arg.startsWith('-') && !result.name) {
|
|
61
|
+
result.name = arg;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return result;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Validate profile name
|
|
68
|
+
*/
|
|
69
|
+
function validateProfileName(name) {
|
|
70
|
+
if (!name) {
|
|
71
|
+
return 'Profile name is required';
|
|
72
|
+
}
|
|
73
|
+
if (!/^[a-zA-Z][a-zA-Z0-9._-]*$/.test(name)) {
|
|
74
|
+
return 'Profile name must start with letter, contain only letters, numbers, dot, dash, underscore';
|
|
75
|
+
}
|
|
76
|
+
if (name.length > 32) {
|
|
77
|
+
return 'Profile name must be 32 characters or less';
|
|
78
|
+
}
|
|
79
|
+
// Reserved names
|
|
80
|
+
const reserved = ['default', 'auth', 'profile', 'doctor', 'sync', 'update', 'help', 'version'];
|
|
81
|
+
if (reserved.includes(name.toLowerCase())) {
|
|
82
|
+
return `'${name}' is a reserved name`;
|
|
83
|
+
}
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Validate URL format
|
|
88
|
+
*/
|
|
89
|
+
function validateUrl(url) {
|
|
90
|
+
if (!url) {
|
|
91
|
+
return 'Base URL is required';
|
|
92
|
+
}
|
|
93
|
+
try {
|
|
94
|
+
new URL(url);
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
return 'Invalid URL format (must include protocol, e.g., https://)';
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Check if profile already exists in config.json
|
|
103
|
+
*/
|
|
104
|
+
function profileExists(name) {
|
|
105
|
+
try {
|
|
106
|
+
const config = (0, config_manager_1.loadConfig)();
|
|
107
|
+
return name in config.profiles;
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Create settings.json file for profile
|
|
115
|
+
*/
|
|
116
|
+
function createSettingsFile(name, baseUrl, apiKey, model) {
|
|
117
|
+
const ccsDir = (0, config_manager_1.getCcsDir)();
|
|
118
|
+
const settingsPath = path.join(ccsDir, `${name}.settings.json`);
|
|
119
|
+
const settings = {
|
|
120
|
+
env: {
|
|
121
|
+
ANTHROPIC_BASE_URL: baseUrl,
|
|
122
|
+
ANTHROPIC_AUTH_TOKEN: apiKey,
|
|
123
|
+
ANTHROPIC_MODEL: model,
|
|
124
|
+
},
|
|
125
|
+
};
|
|
126
|
+
fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + '\n', 'utf8');
|
|
127
|
+
return settingsPath;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Update config.json with new profile
|
|
131
|
+
*/
|
|
132
|
+
function updateConfig(name, _settingsPath) {
|
|
133
|
+
const configPath = (0, config_manager_1.getConfigPath)();
|
|
134
|
+
const ccsDir = (0, config_manager_1.getCcsDir)();
|
|
135
|
+
// Read existing config or create new
|
|
136
|
+
let config;
|
|
137
|
+
try {
|
|
138
|
+
config = JSON.parse(fs.readFileSync(configPath, 'utf8'));
|
|
139
|
+
}
|
|
140
|
+
catch {
|
|
141
|
+
config = { profiles: {} };
|
|
142
|
+
}
|
|
143
|
+
// Use relative path with ~ for portability
|
|
144
|
+
const relativePath = `~/.ccs/${name}.settings.json`;
|
|
145
|
+
config.profiles[name] = relativePath;
|
|
146
|
+
// Ensure directory exists
|
|
147
|
+
if (!fs.existsSync(ccsDir)) {
|
|
148
|
+
fs.mkdirSync(ccsDir, { recursive: true });
|
|
149
|
+
}
|
|
150
|
+
// Write config atomically (write to temp, then rename)
|
|
151
|
+
const tempPath = configPath + '.tmp';
|
|
152
|
+
fs.writeFileSync(tempPath, JSON.stringify(config, null, 2) + '\n', 'utf8');
|
|
153
|
+
fs.renameSync(tempPath, configPath);
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Handle 'ccs profile create' command
|
|
157
|
+
*/
|
|
158
|
+
async function handleCreate(args) {
|
|
159
|
+
const parsedArgs = parseArgs(args);
|
|
160
|
+
console.log((0, helpers_1.colored)('Create API Profile', 'bold'));
|
|
161
|
+
console.log('');
|
|
162
|
+
// Step 1: Profile name
|
|
163
|
+
let name = parsedArgs.name;
|
|
164
|
+
if (!name) {
|
|
165
|
+
name = await prompt_1.InteractivePrompt.input('Profile name', {
|
|
166
|
+
validate: validateProfileName,
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
const error = validateProfileName(name);
|
|
171
|
+
if (error) {
|
|
172
|
+
console.error(`[X] ${error}`);
|
|
173
|
+
process.exit(1);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
// Check if exists
|
|
177
|
+
if (profileExists(name) && !parsedArgs.force) {
|
|
178
|
+
console.error(`[X] Profile '${name}' already exists`);
|
|
179
|
+
console.log(` Use ${(0, helpers_1.colored)('--force', 'yellow')} to overwrite`);
|
|
180
|
+
process.exit(1);
|
|
181
|
+
}
|
|
182
|
+
// Step 2: Base URL
|
|
183
|
+
let baseUrl = parsedArgs.baseUrl;
|
|
184
|
+
if (!baseUrl) {
|
|
185
|
+
baseUrl = await prompt_1.InteractivePrompt.input('API Base URL (e.g., https://api.example.com)', {
|
|
186
|
+
validate: validateUrl,
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
const error = validateUrl(baseUrl);
|
|
191
|
+
if (error) {
|
|
192
|
+
console.error(`[X] ${error}`);
|
|
193
|
+
process.exit(1);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
// Step 3: API Key
|
|
197
|
+
let apiKey = parsedArgs.apiKey;
|
|
198
|
+
if (!apiKey) {
|
|
199
|
+
apiKey = await prompt_1.InteractivePrompt.password('API Key');
|
|
200
|
+
if (!apiKey) {
|
|
201
|
+
console.error('[X] API key is required');
|
|
202
|
+
process.exit(1);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
// Step 4: Model (optional)
|
|
206
|
+
const defaultModel = 'claude-sonnet-4-5-20250929';
|
|
207
|
+
let model = parsedArgs.model;
|
|
208
|
+
if (!model && !parsedArgs.yes) {
|
|
209
|
+
model = await prompt_1.InteractivePrompt.input('Default model', {
|
|
210
|
+
default: defaultModel,
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
model = model || defaultModel;
|
|
214
|
+
// Create files
|
|
215
|
+
console.log('');
|
|
216
|
+
console.log('[i] Creating profile...');
|
|
217
|
+
try {
|
|
218
|
+
const settingsPath = createSettingsFile(name, baseUrl, apiKey, model);
|
|
219
|
+
updateConfig(name, settingsPath);
|
|
220
|
+
console.log((0, helpers_1.colored)('[OK] Profile created successfully', 'green'));
|
|
221
|
+
console.log('');
|
|
222
|
+
console.log(` Profile: ${name}`);
|
|
223
|
+
console.log(` Settings: ~/.ccs/${name}.settings.json`);
|
|
224
|
+
console.log(` Base URL: ${baseUrl}`);
|
|
225
|
+
console.log(` Model: ${model}`);
|
|
226
|
+
console.log('');
|
|
227
|
+
console.log((0, helpers_1.colored)('Usage:', 'cyan'));
|
|
228
|
+
console.log(` ${(0, helpers_1.colored)(`ccs ${name} "your prompt"`, 'yellow')}`);
|
|
229
|
+
console.log('');
|
|
230
|
+
}
|
|
231
|
+
catch (error) {
|
|
232
|
+
console.error(`[X] Failed to create profile: ${error.message}`);
|
|
233
|
+
process.exit(1);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Handle 'ccs profile list' command
|
|
238
|
+
*/
|
|
239
|
+
async function handleList() {
|
|
240
|
+
console.log((0, helpers_1.colored)('CCS Profiles', 'bold'));
|
|
241
|
+
console.log('');
|
|
242
|
+
try {
|
|
243
|
+
const config = (0, config_manager_1.loadConfig)();
|
|
244
|
+
const profiles = Object.keys(config.profiles);
|
|
245
|
+
if (profiles.length === 0) {
|
|
246
|
+
console.log((0, helpers_1.colored)('No profiles configured', 'yellow'));
|
|
247
|
+
console.log('');
|
|
248
|
+
console.log('To create a profile:');
|
|
249
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile create', 'yellow')}`);
|
|
250
|
+
console.log('');
|
|
251
|
+
return;
|
|
252
|
+
}
|
|
253
|
+
console.log((0, helpers_1.colored)('Settings-based Profiles:', 'cyan'));
|
|
254
|
+
// Calculate max name length for alignment
|
|
255
|
+
const maxNameLen = Math.max(...profiles.map((n) => n.length));
|
|
256
|
+
profiles.forEach((name) => {
|
|
257
|
+
const settingsPath = config.profiles[name];
|
|
258
|
+
const paddedName = name.padEnd(maxNameLen);
|
|
259
|
+
console.log(` ${(0, helpers_1.colored)(paddedName, 'yellow')} ${settingsPath}`);
|
|
260
|
+
});
|
|
261
|
+
console.log('');
|
|
262
|
+
// Also show CLIProxy profiles if any
|
|
263
|
+
if (config.cliproxy && Object.keys(config.cliproxy).length > 0) {
|
|
264
|
+
console.log((0, helpers_1.colored)('CLIProxy Variants:', 'cyan'));
|
|
265
|
+
Object.entries(config.cliproxy).forEach(([name, variant]) => {
|
|
266
|
+
const v = variant;
|
|
267
|
+
console.log(` ${(0, helpers_1.colored)(name, 'yellow')} → ${v.provider} (${v.settings})`);
|
|
268
|
+
});
|
|
269
|
+
console.log('');
|
|
270
|
+
}
|
|
271
|
+
console.log(`Total: ${profiles.length} profile(s)`);
|
|
272
|
+
console.log('');
|
|
273
|
+
}
|
|
274
|
+
catch (error) {
|
|
275
|
+
console.error(`[X] Failed to list profiles: ${error.message}`);
|
|
276
|
+
process.exit(1);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Handle 'ccs profile remove' command
|
|
281
|
+
*/
|
|
282
|
+
async function handleRemove(args) {
|
|
283
|
+
const parsedArgs = parseArgs(args);
|
|
284
|
+
// Load config first to get available profiles
|
|
285
|
+
let config;
|
|
286
|
+
try {
|
|
287
|
+
config = (0, config_manager_1.loadConfig)();
|
|
288
|
+
}
|
|
289
|
+
catch {
|
|
290
|
+
console.error('[X] Failed to load config');
|
|
291
|
+
process.exit(1);
|
|
292
|
+
}
|
|
293
|
+
const profiles = Object.keys(config.profiles);
|
|
294
|
+
if (profiles.length === 0) {
|
|
295
|
+
console.log((0, helpers_1.colored)('No profiles to remove', 'yellow'));
|
|
296
|
+
process.exit(0);
|
|
297
|
+
}
|
|
298
|
+
// Interactive profile selection if not provided
|
|
299
|
+
let name = parsedArgs.name;
|
|
300
|
+
if (!name) {
|
|
301
|
+
console.log((0, helpers_1.colored)('Remove Profile', 'bold'));
|
|
302
|
+
console.log('');
|
|
303
|
+
console.log('Available profiles:');
|
|
304
|
+
profiles.forEach((p, i) => console.log(` ${i + 1}. ${p}`));
|
|
305
|
+
console.log('');
|
|
306
|
+
name = await prompt_1.InteractivePrompt.input('Profile name to remove', {
|
|
307
|
+
validate: (val) => {
|
|
308
|
+
if (!val)
|
|
309
|
+
return 'Profile name is required';
|
|
310
|
+
if (!profiles.includes(val))
|
|
311
|
+
return `Profile '${val}' not found`;
|
|
312
|
+
return null;
|
|
313
|
+
},
|
|
314
|
+
});
|
|
315
|
+
}
|
|
316
|
+
if (!(name in config.profiles)) {
|
|
317
|
+
console.error(`[X] Profile '${name}' not found`);
|
|
318
|
+
console.log('');
|
|
319
|
+
console.log('Available profiles:');
|
|
320
|
+
profiles.forEach((p) => console.log(` - ${p}`));
|
|
321
|
+
process.exit(1);
|
|
322
|
+
}
|
|
323
|
+
const settingsPath = config.profiles[name];
|
|
324
|
+
const expandedPath = path.join((0, config_manager_1.getCcsDir)(), `${name}.settings.json`);
|
|
325
|
+
// Confirm deletion
|
|
326
|
+
console.log('');
|
|
327
|
+
console.log(`Profile '${(0, helpers_1.colored)(name, 'yellow')}' will be removed.`);
|
|
328
|
+
console.log(` Settings: ${settingsPath}`);
|
|
329
|
+
console.log('');
|
|
330
|
+
const confirmed = parsedArgs.yes || (await prompt_1.InteractivePrompt.confirm('Delete this profile?', { default: false }));
|
|
331
|
+
if (!confirmed) {
|
|
332
|
+
console.log('[i] Cancelled');
|
|
333
|
+
process.exit(0);
|
|
334
|
+
}
|
|
335
|
+
// Remove from config.json
|
|
336
|
+
delete config.profiles[name];
|
|
337
|
+
const configPath = (0, config_manager_1.getConfigPath)();
|
|
338
|
+
const tempPath = configPath + '.tmp';
|
|
339
|
+
fs.writeFileSync(tempPath, JSON.stringify(config, null, 2) + '\n', 'utf8');
|
|
340
|
+
fs.renameSync(tempPath, configPath);
|
|
341
|
+
// Remove settings file if it exists
|
|
342
|
+
if (fs.existsSync(expandedPath)) {
|
|
343
|
+
fs.unlinkSync(expandedPath);
|
|
344
|
+
}
|
|
345
|
+
console.log((0, helpers_1.colored)('[OK] Profile removed', 'green'));
|
|
346
|
+
console.log(` Profile: ${name}`);
|
|
347
|
+
console.log('');
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* Show help for profile commands
|
|
351
|
+
*/
|
|
352
|
+
function showHelp() {
|
|
353
|
+
console.log((0, helpers_1.colored)('CCS Profile Management', 'bold'));
|
|
354
|
+
console.log('');
|
|
355
|
+
console.log((0, helpers_1.colored)('Usage:', 'cyan'));
|
|
356
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile', 'yellow')} <command> [options]`);
|
|
357
|
+
console.log('');
|
|
358
|
+
console.log((0, helpers_1.colored)('Commands:', 'cyan'));
|
|
359
|
+
console.log(` ${(0, helpers_1.colored)('create [name]', 'yellow')} Create new API profile (interactive)`);
|
|
360
|
+
console.log(` ${(0, helpers_1.colored)('list', 'yellow')} List all profiles`);
|
|
361
|
+
console.log(` ${(0, helpers_1.colored)('remove <name>', 'yellow')} Remove a profile`);
|
|
362
|
+
console.log('');
|
|
363
|
+
console.log((0, helpers_1.colored)('Options:', 'cyan'));
|
|
364
|
+
console.log(` ${(0, helpers_1.colored)('--base-url <url>', 'yellow')} API base URL (create)`);
|
|
365
|
+
console.log(` ${(0, helpers_1.colored)('--api-key <key>', 'yellow')} API key (create)`);
|
|
366
|
+
console.log(` ${(0, helpers_1.colored)('--model <model>', 'yellow')} Default model (create)`);
|
|
367
|
+
console.log(` ${(0, helpers_1.colored)('--force', 'yellow')} Overwrite existing (create)`);
|
|
368
|
+
console.log(` ${(0, helpers_1.colored)('--yes, -y', 'yellow')} Skip confirmation prompts`);
|
|
369
|
+
console.log('');
|
|
370
|
+
console.log((0, helpers_1.colored)('Examples:', 'cyan'));
|
|
371
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile create', 'yellow')} # Interactive wizard`);
|
|
372
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile create myapi', 'yellow')} # Create with name`);
|
|
373
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile remove myapi', 'yellow')} # Remove profile`);
|
|
374
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile list', 'yellow')} # Show all profiles`);
|
|
375
|
+
console.log('');
|
|
376
|
+
}
|
|
377
|
+
/**
|
|
378
|
+
* Main profile command router
|
|
379
|
+
*/
|
|
380
|
+
async function handleProfileCommand(args) {
|
|
381
|
+
const command = args[0];
|
|
382
|
+
if (!command || command === '--help' || command === '-h' || command === 'help') {
|
|
383
|
+
showHelp();
|
|
384
|
+
return;
|
|
385
|
+
}
|
|
386
|
+
switch (command) {
|
|
387
|
+
case 'create':
|
|
388
|
+
await handleCreate(args.slice(1));
|
|
389
|
+
break;
|
|
390
|
+
case 'list':
|
|
391
|
+
await handleList();
|
|
392
|
+
break;
|
|
393
|
+
case 'remove':
|
|
394
|
+
case 'delete':
|
|
395
|
+
case 'rm':
|
|
396
|
+
await handleRemove(args.slice(1));
|
|
397
|
+
break;
|
|
398
|
+
default:
|
|
399
|
+
console.error(`[X] Unknown command: ${command}`);
|
|
400
|
+
console.log('');
|
|
401
|
+
console.log('Run for help:');
|
|
402
|
+
console.log(` ${(0, helpers_1.colored)('ccs profile --help', 'yellow')}`);
|
|
403
|
+
process.exit(1);
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
exports.handleProfileCommand = handleProfileCommand;
|
|
407
|
+
//# sourceMappingURL=profile-command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile-command.js","sourceRoot":"","sources":["../../src/commands/profile-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-completion-command.d.ts","sourceRoot":"","sources":["../../src/commands/shell-completion-command.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,wBAAsB,4BAA4B,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"shell-completion-command.d.ts","sourceRoot":"","sources":["../../src/commands/shell-completion-command.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,wBAAsB,4BAA4B,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAmDhF"}
|
|
@@ -39,6 +39,7 @@ async function handleShellCompletionCommand(args) {
|
|
|
39
39
|
console.log('');
|
|
40
40
|
// Parse flags
|
|
41
41
|
let targetShell = null;
|
|
42
|
+
const force = args.includes('--force') || args.includes('-f');
|
|
42
43
|
if (args.includes('--bash'))
|
|
43
44
|
targetShell = 'bash';
|
|
44
45
|
else if (args.includes('--zsh'))
|
|
@@ -49,9 +50,12 @@ async function handleShellCompletionCommand(args) {
|
|
|
49
50
|
targetShell = 'powershell';
|
|
50
51
|
try {
|
|
51
52
|
const installer = new ShellCompletionInstaller();
|
|
52
|
-
const result = installer.install(targetShell
|
|
53
|
-
|
|
53
|
+
const result = installer.install(targetShell, {
|
|
54
|
+
force,
|
|
55
|
+
});
|
|
56
|
+
if (result.alreadyInstalled && !force) {
|
|
54
57
|
console.log((0, helpers_1.colored)('[OK] Shell completion already installed', 'green'));
|
|
58
|
+
console.log(` Use ${(0, helpers_1.colored)('--force', 'yellow')} to reinstall`);
|
|
55
59
|
console.log('');
|
|
56
60
|
return;
|
|
57
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-completion-command.js","sourceRoot":"","sources":["../../src/commands/shell-completion-command.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,8CAA2C;AAE3C;;GAEG;AACI,KAAK,UAAU,4BAA4B,CAAC,IAAc;IAC/D,MAAM,EAAE,wBAAwB,EAAE,GAAG,wDAAa,2BAA2B,GAAC,CAAC;IAE/E,OAAO,CAAC,GAAG,CAAC,IAAA,iBAAO,EAAC,4BAA4B,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,cAAc;IACd,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,WAAW,GAAG,MAAM,CAAC;SAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,WAAW,GAAG,KAAK,CAAC;SAChD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,WAAW,GAAG,MAAM,CAAC;SAClD,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;QAAE,WAAW,GAAG,YAAY,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,wBAAwB,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,WAA4D,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"shell-completion-command.js","sourceRoot":"","sources":["../../src/commands/shell-completion-command.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/prompt.d.ts
CHANGED
|
@@ -15,6 +15,9 @@ interface InputOptions {
|
|
|
15
15
|
default?: string;
|
|
16
16
|
validate?: (value: string) => string | null;
|
|
17
17
|
}
|
|
18
|
+
interface PasswordOptions {
|
|
19
|
+
mask?: string;
|
|
20
|
+
}
|
|
18
21
|
export declare class InteractivePrompt {
|
|
19
22
|
/**
|
|
20
23
|
* Ask for confirmation
|
|
@@ -24,6 +27,10 @@ export declare class InteractivePrompt {
|
|
|
24
27
|
* Get text input from user
|
|
25
28
|
*/
|
|
26
29
|
static input(message: string, options?: InputOptions): Promise<string>;
|
|
30
|
+
/**
|
|
31
|
+
* Get password/secret input (masked)
|
|
32
|
+
*/
|
|
33
|
+
static password(message: string, options?: PasswordOptions): Promise<string>;
|
|
27
34
|
}
|
|
28
35
|
export {};
|
|
29
36
|
//# sourceMappingURL=prompt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAEH,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC7C;AAED,qBAAa,iBAAiB;IAC5B;;OAEG;WACU,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IA6DrF;;OAEG;WACU,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAEH,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CAC7C;AAED,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,iBAAiB;IAC5B;;OAEG;WACU,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IA6DrF;;OAEG;WACU,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAwChF;;OAEG;WACU,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;CAsEvF"}
|
package/dist/utils/prompt.js
CHANGED
|
@@ -111,6 +111,67 @@ class InteractivePrompt {
|
|
|
111
111
|
});
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
|
+
/**
|
|
115
|
+
* Get password/secret input (masked)
|
|
116
|
+
*/
|
|
117
|
+
static async password(message, options = {}) {
|
|
118
|
+
const { mask = '*' } = options;
|
|
119
|
+
// Non-TTY: error (passwords require interactive input)
|
|
120
|
+
if (!process.stdin.isTTY) {
|
|
121
|
+
throw new Error('Password input requires interactive TTY');
|
|
122
|
+
}
|
|
123
|
+
// Set raw mode BEFORE writing prompt to prevent any echo
|
|
124
|
+
if (process.stdin.setRawMode) {
|
|
125
|
+
process.stdin.setRawMode(true);
|
|
126
|
+
}
|
|
127
|
+
const promptText = `${message}: `;
|
|
128
|
+
process.stderr.write(promptText);
|
|
129
|
+
return new Promise((resolve) => {
|
|
130
|
+
let input = '';
|
|
131
|
+
const cleanup = () => {
|
|
132
|
+
if (process.stdin.setRawMode) {
|
|
133
|
+
process.stdin.setRawMode(false);
|
|
134
|
+
}
|
|
135
|
+
process.stdin.removeListener('data', onData);
|
|
136
|
+
};
|
|
137
|
+
const onData = (data) => {
|
|
138
|
+
// Convert buffer to string and process each character
|
|
139
|
+
const str = data.toString('utf8');
|
|
140
|
+
for (const char of str) {
|
|
141
|
+
const charCode = char.charCodeAt(0);
|
|
142
|
+
// Enter key (CR or LF)
|
|
143
|
+
if (charCode === 13 || charCode === 10) {
|
|
144
|
+
cleanup();
|
|
145
|
+
process.stderr.write('\n');
|
|
146
|
+
resolve(input);
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
// Ctrl+C
|
|
150
|
+
if (charCode === 3) {
|
|
151
|
+
cleanup();
|
|
152
|
+
process.stderr.write('\n');
|
|
153
|
+
process.exit(130);
|
|
154
|
+
}
|
|
155
|
+
// Backspace (127 or 8)
|
|
156
|
+
if (charCode === 127 || charCode === 8) {
|
|
157
|
+
if (input.length > 0) {
|
|
158
|
+
input = input.slice(0, -1);
|
|
159
|
+
// Move cursor back, overwrite with space, move back again
|
|
160
|
+
process.stderr.write('\b \b');
|
|
161
|
+
}
|
|
162
|
+
continue;
|
|
163
|
+
}
|
|
164
|
+
// Regular printable character (ignore control chars and newlines in paste)
|
|
165
|
+
if (charCode >= 32) {
|
|
166
|
+
input += char;
|
|
167
|
+
process.stderr.write(mask);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
process.stdin.on('data', onData);
|
|
172
|
+
process.stdin.resume();
|
|
173
|
+
});
|
|
174
|
+
}
|
|
114
175
|
}
|
|
115
176
|
exports.InteractivePrompt = InteractivePrompt;
|
|
116
177
|
//# sourceMappingURL=prompt.js.map
|
package/dist/utils/prompt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/utils/prompt.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,7 +46,9 @@ export declare class ShellCompletionInstaller {
|
|
|
46
46
|
/**
|
|
47
47
|
* Install for detected or specified shell
|
|
48
48
|
*/
|
|
49
|
-
install(shell?: ShellType
|
|
49
|
+
install(shell?: ShellType, options?: {
|
|
50
|
+
force?: boolean;
|
|
51
|
+
}): InstallResult;
|
|
50
52
|
}
|
|
51
53
|
export {};
|
|
52
54
|
//# sourceMappingURL=shell-completion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-completion.d.ts","sourceRoot":"","sources":["../../src/utils/shell-completion.ts"],"names":[],"mappings":"AAKA,KAAK,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;AAE/D,UAAU,aAAa;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAAS;;IAS3B;;OAEG;IACH,WAAW,IAAI,SAAS;IAWxB;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAiB7B;;OAEG;IACH,OAAO,CAAC,eAAe;IAuBvB;;OAEG;IACH,OAAO,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"shell-completion.d.ts","sourceRoot":"","sources":["../../src/utils/shell-completion.ts"],"names":[],"mappings":"AAKA,KAAK,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;AAE/D,UAAU,aAAa;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAAS;;IAS3B;;OAEG;IACH,WAAW,IAAI,SAAS;IAWxB;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAiB7B;;OAEG;IACH,OAAO,CAAC,eAAe;IAuBvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsCnB;;OAEG;IACH,OAAO,CAAC,UAAU;IA8ClB;;OAEG;IACH,OAAO,CAAC,WAAW;IA4BnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA4CzB;;OAEG;IACH,OAAO,CAAC,KAAK,GAAE,SAAgB,EAAE,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,aAAa;CA2BnF"}
|
|
@@ -94,7 +94,7 @@ class ShellCompletionInstaller {
|
|
|
94
94
|
/**
|
|
95
95
|
* Install bash completion
|
|
96
96
|
*/
|
|
97
|
-
installBash() {
|
|
97
|
+
installBash(force = false) {
|
|
98
98
|
const rcFile = path.join(this.homeDir, '.bashrc');
|
|
99
99
|
const completionPath = path.join(this.completionDir, 'ccs.bash');
|
|
100
100
|
if (!fs.existsSync(completionPath)) {
|
|
@@ -107,7 +107,15 @@ class ShellCompletionInstaller {
|
|
|
107
107
|
if (fs.existsSync(rcFile)) {
|
|
108
108
|
const content = fs.readFileSync(rcFile, 'utf8');
|
|
109
109
|
if (content.includes(marker)) {
|
|
110
|
-
|
|
110
|
+
if (!force) {
|
|
111
|
+
return { success: true, alreadyInstalled: true };
|
|
112
|
+
}
|
|
113
|
+
// Force: completion files already updated by ensureCompletionFiles()
|
|
114
|
+
return {
|
|
115
|
+
success: true,
|
|
116
|
+
message: `Updated completion files in ${this.completionDir}`,
|
|
117
|
+
reload: 'source ~/.bashrc',
|
|
118
|
+
};
|
|
111
119
|
}
|
|
112
120
|
}
|
|
113
121
|
// Append to .bashrc
|
|
@@ -121,7 +129,7 @@ class ShellCompletionInstaller {
|
|
|
121
129
|
/**
|
|
122
130
|
* Install zsh completion
|
|
123
131
|
*/
|
|
124
|
-
installZsh() {
|
|
132
|
+
installZsh(force = false) {
|
|
125
133
|
const rcFile = path.join(this.homeDir, '.zshrc');
|
|
126
134
|
const completionPath = path.join(this.completionDir, 'ccs.zsh');
|
|
127
135
|
const zshCompDir = path.join(this.homeDir, '.zsh', 'completion');
|
|
@@ -130,7 +138,7 @@ class ShellCompletionInstaller {
|
|
|
130
138
|
}
|
|
131
139
|
// Create zsh completion directory (with file conflict checking)
|
|
132
140
|
this.ensureDirectory(zshCompDir);
|
|
133
|
-
// Copy to zsh completion directory
|
|
141
|
+
// Copy to zsh completion directory (always update for force)
|
|
134
142
|
const destFile = path.join(zshCompDir, '_ccs');
|
|
135
143
|
fs.copyFileSync(completionPath, destFile);
|
|
136
144
|
const marker = '# CCS shell completion';
|
|
@@ -140,7 +148,15 @@ class ShellCompletionInstaller {
|
|
|
140
148
|
if (fs.existsSync(rcFile)) {
|
|
141
149
|
const content = fs.readFileSync(rcFile, 'utf8');
|
|
142
150
|
if (content.includes(marker)) {
|
|
143
|
-
|
|
151
|
+
if (!force) {
|
|
152
|
+
return { success: true, alreadyInstalled: true };
|
|
153
|
+
}
|
|
154
|
+
// Force: files already updated above
|
|
155
|
+
return {
|
|
156
|
+
success: true,
|
|
157
|
+
message: `Updated ${destFile}`,
|
|
158
|
+
reload: 'source ~/.zshrc',
|
|
159
|
+
};
|
|
144
160
|
}
|
|
145
161
|
}
|
|
146
162
|
// Append to .zshrc
|
|
@@ -154,7 +170,7 @@ class ShellCompletionInstaller {
|
|
|
154
170
|
/**
|
|
155
171
|
* Install fish completion
|
|
156
172
|
*/
|
|
157
|
-
installFish() {
|
|
173
|
+
installFish(force = false) {
|
|
158
174
|
const completionPath = path.join(this.completionDir, 'ccs.fish');
|
|
159
175
|
const fishCompDir = path.join(this.homeDir, '.config', 'fish', 'completions');
|
|
160
176
|
if (!fs.existsSync(completionPath)) {
|
|
@@ -164,6 +180,10 @@ class ShellCompletionInstaller {
|
|
|
164
180
|
this.ensureDirectory(fishCompDir);
|
|
165
181
|
// Copy to fish completion directory (fish auto-loads from here)
|
|
166
182
|
const destFile = path.join(fishCompDir, 'ccs.fish');
|
|
183
|
+
// Check if already installed
|
|
184
|
+
if (fs.existsSync(destFile) && !force) {
|
|
185
|
+
return { success: true, alreadyInstalled: true };
|
|
186
|
+
}
|
|
167
187
|
fs.copyFileSync(completionPath, destFile);
|
|
168
188
|
return {
|
|
169
189
|
success: true,
|
|
@@ -174,7 +194,7 @@ class ShellCompletionInstaller {
|
|
|
174
194
|
/**
|
|
175
195
|
* Install PowerShell completion
|
|
176
196
|
*/
|
|
177
|
-
installPowerShell() {
|
|
197
|
+
installPowerShell(force = false) {
|
|
178
198
|
const profilePath = process.env.PROFILE ||
|
|
179
199
|
path.join(this.homeDir, 'Documents', 'PowerShell', 'Microsoft.PowerShell_profile.ps1');
|
|
180
200
|
const completionPath = path.join(this.completionDir, 'ccs.ps1');
|
|
@@ -191,7 +211,15 @@ class ShellCompletionInstaller {
|
|
|
191
211
|
if (fs.existsSync(profilePath)) {
|
|
192
212
|
const content = fs.readFileSync(profilePath, 'utf8');
|
|
193
213
|
if (content.includes(marker)) {
|
|
194
|
-
|
|
214
|
+
if (!force) {
|
|
215
|
+
return { success: true, alreadyInstalled: true };
|
|
216
|
+
}
|
|
217
|
+
// Force: completion files already updated by ensureCompletionFiles()
|
|
218
|
+
return {
|
|
219
|
+
success: true,
|
|
220
|
+
message: `Updated completion files in ${this.completionDir}`,
|
|
221
|
+
reload: '. $PROFILE',
|
|
222
|
+
};
|
|
195
223
|
}
|
|
196
224
|
}
|
|
197
225
|
// Append to PowerShell profile
|
|
@@ -205,23 +233,24 @@ class ShellCompletionInstaller {
|
|
|
205
233
|
/**
|
|
206
234
|
* Install for detected or specified shell
|
|
207
235
|
*/
|
|
208
|
-
install(shell = null) {
|
|
236
|
+
install(shell = null, options = {}) {
|
|
209
237
|
const targetShell = shell || this.detectShell();
|
|
238
|
+
const { force = false } = options;
|
|
210
239
|
if (!targetShell) {
|
|
211
240
|
throw new Error('Could not detect shell. Please specify: --bash, --zsh, --fish, or --powershell');
|
|
212
241
|
}
|
|
213
|
-
// Ensure completion files exist
|
|
242
|
+
// Ensure completion files exist (always copy latest)
|
|
214
243
|
this.ensureCompletionFiles();
|
|
215
244
|
// Install for target shell
|
|
216
245
|
switch (targetShell) {
|
|
217
246
|
case 'bash':
|
|
218
|
-
return this.installBash();
|
|
247
|
+
return this.installBash(force);
|
|
219
248
|
case 'zsh':
|
|
220
|
-
return this.installZsh();
|
|
249
|
+
return this.installZsh(force);
|
|
221
250
|
case 'fish':
|
|
222
|
-
return this.installFish();
|
|
251
|
+
return this.installFish(force);
|
|
223
252
|
case 'powershell':
|
|
224
|
-
return this.installPowerShell();
|
|
253
|
+
return this.installPowerShell(force);
|
|
225
254
|
default:
|
|
226
255
|
throw new Error(`Unsupported shell: ${targetShell}`);
|
|
227
256
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-completion.js","sourceRoot":"","sources":["../../src/utils/shell-completion.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AAYzB;;;GAGG;AACH,MAAa,wBAAwB;IAMnC;QACE,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,WAAW;QACT,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;QAEtC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAC1C,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAC1C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;YAAE,OAAO,YAAY,CAAC;QAEtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YACvC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,0BAA0B;QAC1B,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC7D,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACrB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAEjD,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,OAAe;QACrC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,4BAA4B,OAAO,0BAA0B;oBAC3D,kDAAkD,CACrD,CAAC;YACJ,CAAC;YACD,kCAAkC;YAClC,OAAO;QACT,CAAC;QAED,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;QAED,uBAAuB;QACvB,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,WAAW;
|
|
1
|
+
{"version":3,"file":"shell-completion.js","sourceRoot":"","sources":["../../src/utils/shell-completion.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AAYzB;;;GAGG;AACH,MAAa,wBAAwB;IAMnC;QACE,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,WAAW;QACT,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;QAEtC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAC1C,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAC1C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;YAAE,OAAO,YAAY,CAAC;QAEtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YACvC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,0BAA0B;QAC1B,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAC7D,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACrB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAEjD,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,OAAe;QACrC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,4BAA4B,OAAO,0BAA0B;oBAC3D,kDAAkD,CACrD,CAAC;YACJ,CAAC;YACD,kCAAkC;YAClC,OAAO;QACT,CAAC;QAED,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;QAED,uBAAuB;QACvB,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,KAAK,GAAG,KAAK;QAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAClD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAEjE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAG,wBAAwB,CAAC;QACxC,MAAM,SAAS,GAAG,WAAW,cAAc,GAAG,CAAC;QAC/C,MAAM,KAAK,GAAG,KAAK,MAAM,KAAK,SAAS,IAAI,CAAC;QAE5C,6BAA6B;QAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAChD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;gBACnD,CAAC;gBACD,qEAAqE;gBACrE,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,+BAA+B,IAAI,CAAC,aAAa,EAAE;oBAC5D,MAAM,EAAE,kBAAkB;iBAC3B,CAAC;YACJ,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEjC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,YAAY,MAAM,EAAE;YAC7B,MAAM,EAAE,kBAAkB;SAC3B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,KAAK,GAAG,KAAK;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAEjE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,gEAAgE;QAChE,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEjC,6DAA6D;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC/C,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAE1C,MAAM,MAAM,GAAG,wBAAwB,CAAC;QACxC,MAAM,SAAS,GAAG,CAAC,kCAAkC,EAAE,mCAAmC,CAAC,CAAC;QAC5F,MAAM,KAAK,GAAG,KAAK,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvD,6BAA6B;QAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAChD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;gBACnD,CAAC;gBACD,qCAAqC;gBACrC,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,WAAW,QAAQ,EAAE;oBAC9B,MAAM,EAAE,iBAAiB;iBAC1B,CAAC;YACJ,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEjC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,YAAY,MAAM,EAAE;YAC7B,MAAM,EAAE,iBAAiB;SAC1B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,KAAK,GAAG,KAAK;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QAE9E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,iEAAiE;QACjE,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAElC,gEAAgE;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAEpD,6BAA6B;QAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACtC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;QACnD,CAAC;QAED,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAE1C,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,gBAAgB,QAAQ,EAAE;YACnC,MAAM,EAAE,gDAAgD;SACzD,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,KAAK,GAAG,KAAK;QACrC,MAAM,WAAW,GACf,OAAO,CAAC,GAAG,CAAC,OAAO;YACnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,kCAAkC,CAAC,CAAC;QACzF,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAEhE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAAG,wBAAwB,CAAC;QACxC,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;QACjE,MAAM,KAAK,GAAG,KAAK,MAAM,KAAK,SAAS,IAAI,CAAC;QAE5C,mEAAmE;QACnE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEjC,6BAA6B;QAC7B,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACrD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;gBACnD,CAAC;gBACD,qEAAqE;gBACrE,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,+BAA+B,IAAI,CAAC,aAAa,EAAE;oBAC5D,MAAM,EAAE,YAAY;iBACrB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,EAAE,CAAC,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAEtC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,YAAY,WAAW,EAAE;YAClC,MAAM,EAAE,YAAY;SACrB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,QAAmB,IAAI,EAAE,UAA+B,EAAE;QAChE,MAAM,WAAW,GAAG,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QAElC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAC;QACJ,CAAC;QAED,qDAAqD;QACrD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAE7B,2BAA2B;QAC3B,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACjC,KAAK,KAAK;gBACR,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAChC,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACjC,KAAK,YAAY;gBACf,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACvC;gBACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;CACF;AA/QD,4DA+QC"}
|
package/package.json
CHANGED
|
@@ -18,7 +18,7 @@ _ccs_completion() {
|
|
|
18
18
|
|
|
19
19
|
# Top-level completion (first argument)
|
|
20
20
|
if [[ ${COMP_CWORD} -eq 1 ]]; then
|
|
21
|
-
local commands="auth doctor sync update"
|
|
21
|
+
local commands="auth profile doctor sync update"
|
|
22
22
|
local flags="--help --version --shell-completion -h -v -sc"
|
|
23
23
|
local profiles=""
|
|
24
24
|
|
|
@@ -45,6 +45,36 @@ _ccs_completion() {
|
|
|
45
45
|
return 0
|
|
46
46
|
fi
|
|
47
47
|
|
|
48
|
+
# profile subcommands
|
|
49
|
+
if [[ ${prev} == "profile" ]]; then
|
|
50
|
+
local profile_commands="create list remove --help -h"
|
|
51
|
+
COMPREPLY=( $(compgen -W "${profile_commands}" -- ${cur}) )
|
|
52
|
+
return 0
|
|
53
|
+
fi
|
|
54
|
+
|
|
55
|
+
# Completion for profile subcommands
|
|
56
|
+
if [[ ${COMP_WORDS[1]} == "profile" ]]; then
|
|
57
|
+
case "${prev}" in
|
|
58
|
+
remove|delete|rm)
|
|
59
|
+
# Complete with settings profile names
|
|
60
|
+
if [[ -f ~/.ccs/config.json ]]; then
|
|
61
|
+
local profiles=$(jq -r '.profiles | keys[]' ~/.ccs/config.json 2>/dev/null || true)
|
|
62
|
+
COMPREPLY=( $(compgen -W "${profiles}" -- ${cur}) )
|
|
63
|
+
fi
|
|
64
|
+
return 0
|
|
65
|
+
;;
|
|
66
|
+
create)
|
|
67
|
+
# Complete with create flags
|
|
68
|
+
COMPREPLY=( $(compgen -W "--base-url --api-key --model --force --yes -y" -- ${cur}) )
|
|
69
|
+
return 0
|
|
70
|
+
;;
|
|
71
|
+
list)
|
|
72
|
+
# No flags for list
|
|
73
|
+
return 0
|
|
74
|
+
;;
|
|
75
|
+
esac
|
|
76
|
+
fi
|
|
77
|
+
|
|
48
78
|
# Completion for auth subcommands that need profile names
|
|
49
79
|
if [[ ${COMP_WORDS[1]} == "auth" ]]; then
|
|
50
80
|
case "${prev}" in
|
|
@@ -78,22 +78,23 @@ complete -c ccs -s v -l version -d 'Show version information'
|
|
|
78
78
|
complete -c ccs -s sc -l shell-completion -d 'Install shell completion'
|
|
79
79
|
|
|
80
80
|
# Commands - grouped with [cmd] prefix for visual distinction
|
|
81
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a 'auth' -d '[cmd] Manage multiple Claude accounts'
|
|
82
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a '
|
|
83
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a '
|
|
84
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a '
|
|
81
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'auth' -d '[cmd] Manage multiple Claude accounts'
|
|
82
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'profile' -d '[cmd] Manage API profiles (create/remove)'
|
|
83
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'doctor' -d '[cmd] Run health check and diagnostics'
|
|
84
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'sync' -d '[cmd] Sync delegation commands and skills'
|
|
85
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'update' -d '[cmd] Update CCS to latest version'
|
|
85
86
|
|
|
86
87
|
# Model profiles - grouped with [model] prefix for visual distinction
|
|
87
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a 'default' -d '[model] Default Claude Sonnet 4.5'
|
|
88
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a 'glm' -d '[model] GLM-4.6 (cost-optimized)'
|
|
89
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a 'glmt' -d '[model] GLM-4.6 with thinking mode'
|
|
90
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a 'kimi' -d '[model] Kimi for Coding (long-context)'
|
|
88
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'default' -d '[model] Default Claude Sonnet 4.5'
|
|
89
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'glm' -d '[model] GLM-4.6 (cost-optimized)'
|
|
90
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'glmt' -d '[model] GLM-4.6 with thinking mode'
|
|
91
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a 'kimi' -d '[model] Kimi for Coding (long-context)'
|
|
91
92
|
|
|
92
93
|
# Custom model profiles - dynamic with [model] prefix
|
|
93
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a '(__fish_ccs_get_custom_settings_profiles)' -d '[model] Settings-based profile'
|
|
94
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a '(__fish_ccs_get_custom_settings_profiles)' -d '[model] Settings-based profile'
|
|
94
95
|
|
|
95
96
|
# Account profiles - dynamic with [account] prefix
|
|
96
|
-
complete -c ccs -n 'not __fish_seen_subcommand_from auth doctor sync update' -a '(__fish_ccs_get_account_profiles)' -d '[account] Account-based profile'
|
|
97
|
+
complete -c ccs -n 'not __fish_seen_subcommand_from auth profile doctor sync update' -a '(__fish_ccs_get_account_profiles)' -d '[account] Account-based profile'
|
|
97
98
|
|
|
98
99
|
# shell-completion subflags
|
|
99
100
|
complete -c ccs -n '__fish_seen_argument -l shell-completion; or __fish_seen_argument -s sc' -l bash -d 'Install for bash'
|
|
@@ -132,3 +133,35 @@ complete -c ccs -n '__fish_ccs_using_auth_subcommand default' -a '(__fish_ccs_ge
|
|
|
132
133
|
|
|
133
134
|
# doctor command flags
|
|
134
135
|
complete -c ccs -n '__fish_seen_subcommand_from doctor' -s h -l help -d 'Show help for doctor command'
|
|
136
|
+
|
|
137
|
+
# Helper function to check if we're in profile context
|
|
138
|
+
function __fish_ccs_using_profile
|
|
139
|
+
__fish_seen_subcommand_from profile
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
# Helper function to check specific profile subcommand
|
|
143
|
+
function __fish_ccs_using_profile_subcommand
|
|
144
|
+
set -l subcommand $argv[1]
|
|
145
|
+
__fish_ccs_using_profile; and __fish_seen_subcommand_from $subcommand
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
# profile subcommands
|
|
149
|
+
complete -c ccs -n '__fish_ccs_using_profile; and not __fish_seen_subcommand_from create list remove' -a 'create' -d 'Create new API profile'
|
|
150
|
+
complete -c ccs -n '__fish_ccs_using_profile; and not __fish_seen_subcommand_from create list remove' -a 'list' -d 'List all profiles'
|
|
151
|
+
complete -c ccs -n '__fish_ccs_using_profile; and not __fish_seen_subcommand_from create list remove' -a 'remove' -d 'Remove a profile'
|
|
152
|
+
|
|
153
|
+
# profile command flags
|
|
154
|
+
complete -c ccs -n '__fish_ccs_using_profile' -s h -l help -d 'Show help for profile commands'
|
|
155
|
+
|
|
156
|
+
# profile create flags
|
|
157
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand create' -l base-url -d 'API base URL'
|
|
158
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand create' -l api-key -d 'API key'
|
|
159
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand create' -l model -d 'Default model'
|
|
160
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand create' -l force -d 'Overwrite existing profile'
|
|
161
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand create' -l yes -d 'Skip prompts'
|
|
162
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand create' -s y -d 'Skip prompts'
|
|
163
|
+
|
|
164
|
+
# profile remove - profile names and flags
|
|
165
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand remove' -a '(__fish_ccs_get_settings_profiles)' -d 'Settings profile'
|
|
166
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand remove' -l yes -d 'Skip confirmation'
|
|
167
|
+
complete -c ccs -n '__fish_ccs_using_profile_subcommand remove' -s y -d 'Skip confirmation'
|
|
@@ -12,8 +12,10 @@
|
|
|
12
12
|
Register-ArgumentCompleter -CommandName ccs -ScriptBlock {
|
|
13
13
|
param($commandName, $wordToComplete, $commandAst, $fakeBoundParameters)
|
|
14
14
|
|
|
15
|
-
$commands = @('auth', 'doctor', 'sync', 'update', '--help', '--version', '--shell-completion', '-h', '-v', '-sc')
|
|
15
|
+
$commands = @('auth', 'profile', 'doctor', 'sync', 'update', '--help', '--version', '--shell-completion', '-h', '-v', '-sc')
|
|
16
16
|
$authCommands = @('create', 'list', 'show', 'remove', 'default', '--help', '-h')
|
|
17
|
+
$profileCommands = @('create', 'list', 'remove', '--help', '-h')
|
|
18
|
+
$profileCreateFlags = @('--base-url', '--api-key', '--model', '--force', '--yes', '-y')
|
|
17
19
|
$shellCompletionFlags = @('--bash', '--zsh', '--fish', '--powershell')
|
|
18
20
|
$listFlags = @('--verbose', '--json')
|
|
19
21
|
$removeFlags = @('--yes', '-y')
|
|
@@ -170,4 +172,58 @@ Register-ArgumentCompleter -CommandName ccs -ScriptBlock {
|
|
|
170
172
|
}
|
|
171
173
|
}
|
|
172
174
|
}
|
|
175
|
+
|
|
176
|
+
# profile subcommand completion
|
|
177
|
+
if ($words[1] -eq 'profile') {
|
|
178
|
+
if ($position -eq 3) {
|
|
179
|
+
# profile subcommands
|
|
180
|
+
$profileCommands | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
181
|
+
[System.Management.Automation.CompletionResult]::new(
|
|
182
|
+
$_,
|
|
183
|
+
$_,
|
|
184
|
+
'ParameterValue',
|
|
185
|
+
$_
|
|
186
|
+
)
|
|
187
|
+
}
|
|
188
|
+
} elseif ($position -eq 4) {
|
|
189
|
+
# Profile names or flags for profile subcommands
|
|
190
|
+
switch ($words[2]) {
|
|
191
|
+
'remove' {
|
|
192
|
+
$options = (Get-CcsProfiles -Type settings) + $removeFlags
|
|
193
|
+
$options | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
194
|
+
[System.Management.Automation.CompletionResult]::new(
|
|
195
|
+
$_,
|
|
196
|
+
$_,
|
|
197
|
+
'ParameterValue',
|
|
198
|
+
$_
|
|
199
|
+
)
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
'create' {
|
|
203
|
+
$profileCreateFlags | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
204
|
+
[System.Management.Automation.CompletionResult]::new(
|
|
205
|
+
$_,
|
|
206
|
+
$_,
|
|
207
|
+
'ParameterValue',
|
|
208
|
+
$_
|
|
209
|
+
)
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
} elseif ($position -eq 5) {
|
|
214
|
+
# Flags after profile name
|
|
215
|
+
switch ($words[2]) {
|
|
216
|
+
'remove' {
|
|
217
|
+
$removeFlags | Where-Object { $_ -like "$wordToComplete*" } | ForEach-Object {
|
|
218
|
+
[System.Management.Automation.CompletionResult]::new(
|
|
219
|
+
$_,
|
|
220
|
+
$_,
|
|
221
|
+
'ParameterValue',
|
|
222
|
+
$_
|
|
223
|
+
)
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
173
229
|
}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
# Color codes: 0;34=blue, 0;32=green, 0;33=yellow, 2;37=dim white
|
|
17
17
|
# Pattern format: =(#b)(group1)(group2)==color_for_group1=color_for_group2
|
|
18
18
|
# The leading '=' means no color for whole match, then each '=' assigns to each group
|
|
19
|
-
zstyle ':completion:*:*:ccs:*:commands' list-colors '=(#b)(auth|doctor|sync|update)([[:space:]]#--[[:space:]]#*)==0\;34=2\;37'
|
|
19
|
+
zstyle ':completion:*:*:ccs:*:commands' list-colors '=(#b)(auth|profile|doctor|sync|update)([[:space:]]#--[[:space:]]#*)==0\;34=2\;37'
|
|
20
20
|
zstyle ':completion:*:*:ccs:*:model-profiles' list-colors '=(#b)(default|glm|glmt|kimi|[^[:space:]]##)([[:space:]]#--[[:space:]]#*)==0\;32=2\;37'
|
|
21
21
|
zstyle ':completion:*:*:ccs:*:account-profiles' list-colors '=(#b)([^[:space:]]##)([[:space:]]#--[[:space:]]#*)==0\;33=2\;37'
|
|
22
22
|
zstyle ':completion:*:*:ccs:*' group-name ''
|
|
@@ -33,6 +33,7 @@ _ccs() {
|
|
|
33
33
|
# Define top-level commands (padded for alignment)
|
|
34
34
|
commands=(
|
|
35
35
|
'auth:Manage multiple Claude accounts'
|
|
36
|
+
'profile:Manage API profiles (create/remove)'
|
|
36
37
|
'doctor:Run health check and diagnostics'
|
|
37
38
|
'sync:Sync delegation commands and skills'
|
|
38
39
|
'update:Update CCS to latest version'
|
|
@@ -90,6 +91,9 @@ _ccs() {
|
|
|
90
91
|
auth)
|
|
91
92
|
_ccs_auth
|
|
92
93
|
;;
|
|
94
|
+
profile)
|
|
95
|
+
_ccs_profile
|
|
96
|
+
;;
|
|
93
97
|
doctor)
|
|
94
98
|
_arguments \
|
|
95
99
|
'(- *)'{-h,--help}'[Show help for doctor command]'
|
|
@@ -110,6 +114,58 @@ _ccs() {
|
|
|
110
114
|
esac
|
|
111
115
|
}
|
|
112
116
|
|
|
117
|
+
_ccs_profile() {
|
|
118
|
+
local curcontext="$curcontext" state line
|
|
119
|
+
typeset -A opt_args
|
|
120
|
+
|
|
121
|
+
local -a profile_commands settings_profiles
|
|
122
|
+
|
|
123
|
+
# Define profile subcommands
|
|
124
|
+
profile_commands=(
|
|
125
|
+
'create:Create new API profile (interactive)'
|
|
126
|
+
'list:List all profiles'
|
|
127
|
+
'remove:Remove a profile'
|
|
128
|
+
)
|
|
129
|
+
|
|
130
|
+
# Load settings profiles for remove command
|
|
131
|
+
if [[ -f ~/.ccs/config.json ]]; then
|
|
132
|
+
settings_profiles=(${(f)"$(jq -r '.profiles | keys[]' ~/.ccs/config.json 2>/dev/null)"})
|
|
133
|
+
fi
|
|
134
|
+
|
|
135
|
+
_arguments -C \
|
|
136
|
+
'(- *)'{-h,--help}'[Show help for profile commands]' \
|
|
137
|
+
'1: :->subcommand' \
|
|
138
|
+
'*:: :->subargs'
|
|
139
|
+
|
|
140
|
+
case $state in
|
|
141
|
+
subcommand)
|
|
142
|
+
_describe -t profile-commands 'profile commands' profile_commands
|
|
143
|
+
;;
|
|
144
|
+
|
|
145
|
+
subargs)
|
|
146
|
+
case $words[1] in
|
|
147
|
+
create)
|
|
148
|
+
_arguments \
|
|
149
|
+
'1:profile name:' \
|
|
150
|
+
'--base-url[API base URL]:url:' \
|
|
151
|
+
'--api-key[API key]:key:' \
|
|
152
|
+
'--model[Default model]:model:' \
|
|
153
|
+
'--force[Overwrite existing profile]' \
|
|
154
|
+
{--yes,-y}'[Skip prompts]'
|
|
155
|
+
;;
|
|
156
|
+
list)
|
|
157
|
+
# No arguments
|
|
158
|
+
;;
|
|
159
|
+
remove|delete|rm)
|
|
160
|
+
_arguments \
|
|
161
|
+
'1:profile:($settings_profiles)' \
|
|
162
|
+
{--yes,-y}'[Skip confirmation]'
|
|
163
|
+
;;
|
|
164
|
+
esac
|
|
165
|
+
;;
|
|
166
|
+
esac
|
|
167
|
+
}
|
|
168
|
+
|
|
113
169
|
_ccs_auth() {
|
|
114
170
|
local curcontext="$curcontext" state line
|
|
115
171
|
typeset -A opt_args
|