@kaitranntt/ccs 7.54.0-dev.1 → 7.54.0-dev.10

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.
Files changed (171) hide show
  1. package/README.md +26 -4
  2. package/dist/ccs.js +2 -112
  3. package/dist/ccs.js.map +1 -1
  4. package/dist/commands/api-command/copy-command.d.ts +2 -0
  5. package/dist/commands/api-command/copy-command.d.ts.map +1 -0
  6. package/dist/commands/api-command/copy-command.js +41 -0
  7. package/dist/commands/api-command/copy-command.js.map +1 -0
  8. package/dist/commands/api-command/create-command.d.ts +2 -0
  9. package/dist/commands/api-command/create-command.d.ts.map +1 -0
  10. package/dist/commands/api-command/create-command.js +239 -0
  11. package/dist/commands/api-command/create-command.js.map +1 -0
  12. package/dist/commands/api-command/discover-command.d.ts +2 -0
  13. package/dist/commands/api-command/discover-command.d.ts.map +1 -0
  14. package/dist/commands/api-command/discover-command.js +69 -0
  15. package/dist/commands/api-command/discover-command.js.map +1 -0
  16. package/dist/commands/api-command/export-command.d.ts +2 -0
  17. package/dist/commands/api-command/export-command.d.ts.map +1 -0
  18. package/dist/commands/api-command/export-command.js +73 -0
  19. package/dist/commands/api-command/export-command.js.map +1 -0
  20. package/dist/commands/api-command/help.d.ts +3 -0
  21. package/dist/commands/api-command/help.d.ts.map +1 -0
  22. package/dist/commands/api-command/help.js +100 -0
  23. package/dist/commands/api-command/help.js.map +1 -0
  24. package/dist/commands/api-command/import-command.d.ts +2 -0
  25. package/dist/commands/api-command/import-command.d.ts.map +1 -0
  26. package/dist/commands/api-command/import-command.js +111 -0
  27. package/dist/commands/api-command/import-command.js.map +1 -0
  28. package/dist/commands/api-command/index.d.ts +3 -0
  29. package/dist/commands/api-command/index.d.ts.map +1 -0
  30. package/dist/commands/api-command/index.js +34 -0
  31. package/dist/commands/api-command/index.js.map +1 -0
  32. package/dist/commands/api-command/list-command.d.ts +2 -0
  33. package/dist/commands/api-command/list-command.d.ts.map +1 -0
  34. package/dist/commands/api-command/list-command.js +53 -0
  35. package/dist/commands/api-command/list-command.js.map +1 -0
  36. package/dist/commands/api-command/remove-command.d.ts +2 -0
  37. package/dist/commands/api-command/remove-command.d.ts.map +1 -0
  38. package/dist/commands/api-command/remove-command.js +63 -0
  39. package/dist/commands/api-command/remove-command.js.map +1 -0
  40. package/dist/commands/api-command/shared.d.ts +36 -0
  41. package/dist/commands/api-command/shared.d.ts.map +1 -0
  42. package/dist/commands/api-command/shared.js +164 -0
  43. package/dist/commands/api-command/shared.js.map +1 -0
  44. package/dist/commands/api-command.d.ts +1 -26
  45. package/dist/commands/api-command.d.ts.map +1 -1
  46. package/dist/commands/api-command.js +3 -807
  47. package/dist/commands/api-command.js.map +1 -1
  48. package/dist/commands/arg-extractor.d.ts +15 -0
  49. package/dist/commands/arg-extractor.d.ts.map +1 -1
  50. package/dist/commands/arg-extractor.js +48 -2
  51. package/dist/commands/arg-extractor.js.map +1 -1
  52. package/dist/commands/config-auth/index.d.ts.map +1 -1
  53. package/dist/commands/config-auth/index.js +35 -19
  54. package/dist/commands/config-auth/index.js.map +1 -1
  55. package/dist/commands/config-command-options.d.ts +14 -0
  56. package/dist/commands/config-command-options.d.ts.map +1 -0
  57. package/dist/commands/config-command-options.js +108 -0
  58. package/dist/commands/config-command-options.js.map +1 -0
  59. package/dist/commands/config-command.d.ts +1 -1
  60. package/dist/commands/config-command.d.ts.map +1 -1
  61. package/dist/commands/config-command.js +91 -104
  62. package/dist/commands/config-command.js.map +1 -1
  63. package/dist/commands/config-dashboard-host.d.ts +17 -0
  64. package/dist/commands/config-dashboard-host.d.ts.map +1 -0
  65. package/dist/commands/config-dashboard-host.js +99 -0
  66. package/dist/commands/config-dashboard-host.js.map +1 -0
  67. package/dist/commands/help-command.d.ts.map +1 -1
  68. package/dist/commands/help-command.js +1 -0
  69. package/dist/commands/help-command.js.map +1 -1
  70. package/dist/commands/named-command-router.d.ts +17 -0
  71. package/dist/commands/named-command-router.d.ts.map +1 -0
  72. package/dist/commands/named-command-router.js +39 -0
  73. package/dist/commands/named-command-router.js.map +1 -0
  74. package/dist/commands/root-command-router.d.ts +2 -0
  75. package/dist/commands/root-command-router.d.ts.map +1 -0
  76. package/dist/commands/root-command-router.js +209 -0
  77. package/dist/commands/root-command-router.js.map +1 -0
  78. package/dist/cursor/cursor-anthropic-response.d.ts +6 -0
  79. package/dist/cursor/cursor-anthropic-response.d.ts.map +1 -0
  80. package/dist/cursor/cursor-anthropic-response.js +190 -0
  81. package/dist/cursor/cursor-anthropic-response.js.map +1 -0
  82. package/dist/cursor/cursor-anthropic-translator.d.ts +11 -0
  83. package/dist/cursor/cursor-anthropic-translator.d.ts.map +1 -0
  84. package/dist/cursor/cursor-anthropic-translator.js +167 -0
  85. package/dist/cursor/cursor-anthropic-translator.js.map +1 -0
  86. package/dist/cursor/cursor-anthropic-types.d.ts +46 -0
  87. package/dist/cursor/cursor-anthropic-types.d.ts.map +1 -0
  88. package/dist/cursor/cursor-anthropic-types.js +3 -0
  89. package/dist/cursor/cursor-anthropic-types.js.map +1 -0
  90. package/dist/cursor/cursor-daemon-entry.d.ts.map +1 -1
  91. package/dist/cursor/cursor-daemon-entry.js +53 -24
  92. package/dist/cursor/cursor-daemon-entry.js.map +1 -1
  93. package/dist/cursor/cursor-models.d.ts.map +1 -1
  94. package/dist/cursor/cursor-models.js +36 -2
  95. package/dist/cursor/cursor-models.js.map +1 -1
  96. package/dist/glmt/sse-parser.d.ts +2 -0
  97. package/dist/glmt/sse-parser.d.ts.map +1 -1
  98. package/dist/glmt/sse-parser.js +4 -0
  99. package/dist/glmt/sse-parser.js.map +1 -1
  100. package/dist/management/instance-manager.d.ts.map +1 -1
  101. package/dist/management/instance-manager.js +1 -0
  102. package/dist/management/instance-manager.js.map +1 -1
  103. package/dist/management/shared-manager.d.ts +18 -1
  104. package/dist/management/shared-manager.d.ts.map +1 -1
  105. package/dist/management/shared-manager.js +82 -14
  106. package/dist/management/shared-manager.js.map +1 -1
  107. package/dist/shared/claude-extension-setup.d.ts.map +1 -1
  108. package/dist/shared/claude-extension-setup.js +3 -0
  109. package/dist/shared/claude-extension-setup.js.map +1 -1
  110. package/dist/shared/provider-preset-catalog.d.ts +1 -1
  111. package/dist/shared/provider-preset-catalog.d.ts.map +1 -1
  112. package/dist/shared/provider-preset-catalog.js +32 -15
  113. package/dist/shared/provider-preset-catalog.js.map +1 -1
  114. package/dist/ui/assets/{accounts-CZEg1_PX.js → accounts-v8ElDmpv.js} +1 -1
  115. package/dist/ui/assets/{alert-dialog-DhwS38kc.js → alert-dialog-L5Ct0Tm9.js} +1 -1
  116. package/dist/ui/assets/{api-sWNND4wP.js → api-C5CuNrT6.js} +1 -1
  117. package/dist/ui/assets/{auth-section-nJIpOcnm.js → auth-section-P8GsBk1u.js} +1 -1
  118. package/dist/ui/assets/{backups-section-D3A6hmrU.js → backups-section-gBIJ2rQw.js} +1 -1
  119. package/dist/ui/assets/checkbox-DQ1oAx_4.js +1 -0
  120. package/dist/ui/assets/{claude-extension-BjInaILv.js → claude-extension-CjEyjaGL.js} +1 -1
  121. package/dist/ui/assets/cliproxy-C0dWlSJs.js +3 -0
  122. package/dist/ui/assets/{cliproxy-control-panel-CKO2Sn9B.js → cliproxy-control-panel-CdCrzgLe.js} +1 -1
  123. package/dist/ui/assets/{confirm-dialog-DTKxwrat.js → confirm-dialog-DaydoeD7.js} +1 -1
  124. package/dist/ui/assets/copilot-SA3U22Y9.js +3 -0
  125. package/dist/ui/assets/cursor-BfkF3VwC.js +1 -0
  126. package/dist/ui/assets/{droid-Cl8QsJJL.js → droid-BfSJyZXD.js} +2 -2
  127. package/dist/ui/assets/{globalenv-section-C3dxxoD9.js → globalenv-section-rg8Ctc2R.js} +1 -1
  128. package/dist/ui/assets/{health-BUifaDU7.js → health-Cii2iTlp.js} +1 -1
  129. package/dist/ui/assets/icons-DtwH984l.js +1 -0
  130. package/dist/ui/assets/{index-CPdceT1C.js → index-B4Qc134R.js} +1 -1
  131. package/dist/ui/assets/{index-CYo-E5rU.js → index-CBleAyoZ.js} +1 -1
  132. package/dist/ui/assets/index-ClEn7Y7g.css +1 -0
  133. package/dist/ui/assets/{index-BOsbrhaa.js → index-D1CmdSLO.js} +1 -1
  134. package/dist/ui/assets/{index-xayyyR26.js → index-Gpb2Emvl.js} +1 -1
  135. package/dist/ui/assets/index-og5NMtJP.js +47 -0
  136. package/dist/ui/assets/providers/llama-cpp.svg +5 -0
  137. package/dist/ui/assets/{proxy-status-widget-D94htBPb.js → proxy-status-widget-CZnGc4zY.js} +1 -1
  138. package/dist/ui/assets/{radix-ui-BR1vy4kf.js → radix-ui-Dt3edmE5.js} +8 -8
  139. package/dist/ui/assets/searchable-select-BHhY-dTx.js +1 -0
  140. package/dist/ui/assets/{separator-3fBbTn-V.js → separator-7ggevEK6.js} +1 -1
  141. package/dist/ui/assets/{shared-q_FNNbjD.js → shared-CoiUG_Qa.js} +1 -1
  142. package/dist/ui/assets/{switch-5N8qBdBr.js → switch-3-7lTxFj.js} +1 -1
  143. package/dist/ui/assets/{tanstack-e99Cjjy2.js → tanstack-B8i0evp-.js} +1 -1
  144. package/dist/ui/assets/{updates-CubQ54J0.js → updates-rQ3GVJIq.js} +1 -1
  145. package/dist/ui/icons/novita.svg +9 -0
  146. package/dist/ui/index.html +5 -5
  147. package/dist/utils/fetch-proxy-setup.d.ts.map +1 -1
  148. package/dist/utils/fetch-proxy-setup.js.map +1 -1
  149. package/dist/utils/shell-executor.d.ts.map +1 -1
  150. package/dist/utils/shell-executor.js +12 -0
  151. package/dist/utils/shell-executor.js.map +1 -1
  152. package/dist/web-server/index.d.ts +1 -0
  153. package/dist/web-server/index.d.ts.map +1 -1
  154. package/dist/web-server/index.js +39 -3
  155. package/dist/web-server/index.js.map +1 -1
  156. package/dist/web-server/routes/profile-routes.d.ts +1 -0
  157. package/dist/web-server/routes/profile-routes.d.ts.map +1 -1
  158. package/dist/web-server/routes/profile-routes.js +3 -0
  159. package/dist/web-server/routes/profile-routes.js.map +1 -1
  160. package/dist/web-server/routes/variant-routes.d.ts +1 -0
  161. package/dist/web-server/routes/variant-routes.d.ts.map +1 -1
  162. package/dist/web-server/routes/variant-routes.js +3 -0
  163. package/dist/web-server/routes/variant-routes.js.map +1 -1
  164. package/package.json +2 -1
  165. package/dist/ui/assets/checkbox-CZrxD1iS.js +0 -1
  166. package/dist/ui/assets/cliproxy-BGiSCGkl.js +0 -3
  167. package/dist/ui/assets/copilot-CuRngdBg.js +0 -3
  168. package/dist/ui/assets/cursor-Dxo0uIiU.js +0 -1
  169. package/dist/ui/assets/icons-DrEfTmfX.js +0 -1
  170. package/dist/ui/assets/index-Btf_ow2V.css +0 -1
  171. package/dist/ui/assets/index-Cw9Urr0S.js +0 -47
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.handleApiImportCommand = void 0;
27
+ const fs = __importStar(require("fs"));
28
+ const services_1 = require("../../api/services");
29
+ const ui_1 = require("../../utils/ui");
30
+ const prompt_1 = require("../../utils/prompt");
31
+ const arg_extractor_1 = require("../arg-extractor");
32
+ const shared_1 = require("./shared");
33
+ function renderValidationIssue(issue) {
34
+ const indicator = issue.level === 'error' ? (0, ui_1.color)('[X]', 'error') : (0, ui_1.color)('[!]', 'warning');
35
+ console.log(`${indicator} ${issue.message}`);
36
+ }
37
+ async function handleApiImportCommand(args) {
38
+ await (0, ui_1.initUI)();
39
+ const force = (0, arg_extractor_1.hasAnyFlag)(args, ['--force']);
40
+ const yes = (0, arg_extractor_1.hasAnyFlag)(args, ['--yes', '-y']);
41
+ const nameExtracted = (0, arg_extractor_1.extractOption)(args, ['--name'], {
42
+ knownFlags: ['--name', '--target', '--force', '--yes', '-y'],
43
+ });
44
+ if (nameExtracted.found && (nameExtracted.missingValue || !nameExtracted.value)) {
45
+ console.log((0, ui_1.fail)('Missing value for --name'));
46
+ process.exit(1);
47
+ }
48
+ const targetParsed = (0, shared_1.parseOptionalTargetFlag)(nameExtracted.remainingArgs, [
49
+ '--name',
50
+ '--target',
51
+ '--force',
52
+ '--yes',
53
+ '-y',
54
+ ]);
55
+ if (targetParsed.errors.length > 0) {
56
+ targetParsed.errors.forEach((errorMessage) => console.log((0, ui_1.fail)(errorMessage)));
57
+ process.exit(1);
58
+ }
59
+ const syntax = (0, shared_1.collectUnexpectedApiArgs)(targetParsed.remainingArgs, {
60
+ knownFlags: ['--force', '--yes', '-y'],
61
+ maxPositionals: 1,
62
+ });
63
+ if (syntax.errors.length > 0) {
64
+ syntax.errors.forEach((errorMessage) => console.log((0, ui_1.fail)(errorMessage)));
65
+ process.exit(1);
66
+ }
67
+ const importPath = syntax.positionals[0];
68
+ if (!importPath) {
69
+ console.log((0, ui_1.fail)('Import file path is required. Usage: ccs api import <file> [--name <new-name>]'));
70
+ process.exit(1);
71
+ }
72
+ if (!fs.existsSync(importPath)) {
73
+ console.log((0, ui_1.fail)(`File not found: ${importPath}`));
74
+ process.exit(1);
75
+ }
76
+ let bundle;
77
+ try {
78
+ bundle = JSON.parse(fs.readFileSync(importPath, 'utf8'));
79
+ }
80
+ catch (error) {
81
+ console.log((0, ui_1.fail)(`Invalid JSON file: ${error.message}`));
82
+ process.exit(1);
83
+ }
84
+ if (!yes) {
85
+ const confirmed = await prompt_1.InteractivePrompt.confirm(`Import profile bundle from "${importPath}"?`, {
86
+ default: true,
87
+ });
88
+ if (!confirmed) {
89
+ console.log((0, ui_1.info)('Cancelled'));
90
+ process.exit(0);
91
+ }
92
+ }
93
+ const result = (0, services_1.importApiProfileBundle)(bundle, {
94
+ name: nameExtracted.value,
95
+ target: targetParsed.target,
96
+ force,
97
+ });
98
+ if (!result.success) {
99
+ console.log((0, ui_1.fail)(result.error || 'Failed to import profile'));
100
+ if (result.validation?.issues?.length) {
101
+ console.log('');
102
+ result.validation.issues.forEach(renderValidationIssue);
103
+ }
104
+ process.exit(1);
105
+ }
106
+ console.log((0, ui_1.ok)(`Profile imported: ${result.name}`));
107
+ result.warnings?.forEach((warningMessage) => console.log((0, ui_1.warn)(warningMessage)));
108
+ console.log('');
109
+ }
110
+ exports.handleApiImportCommand = handleApiImportCommand;
111
+ //# sourceMappingURL=import-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-command.js","sourceRoot":"","sources":["../../../src/commands/api-command/import-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { parseApiCommandArgs } from './shared';
2
+ export declare function handleApiCommand(args: string[]): Promise<void>;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/api-command/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAY/C,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAQpE"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleApiCommand = exports.parseApiCommandArgs = void 0;
4
+ const named_command_router_1 = require("../named-command-router");
5
+ const copy_command_1 = require("./copy-command");
6
+ const create_command_1 = require("./create-command");
7
+ const discover_command_1 = require("./discover-command");
8
+ const export_command_1 = require("./export-command");
9
+ const help_1 = require("./help");
10
+ const import_command_1 = require("./import-command");
11
+ const list_command_1 = require("./list-command");
12
+ const remove_command_1 = require("./remove-command");
13
+ var shared_1 = require("./shared");
14
+ Object.defineProperty(exports, "parseApiCommandArgs", { enumerable: true, get: function () { return shared_1.parseApiCommandArgs; } });
15
+ const API_COMMAND_ROUTES = [
16
+ { name: 'create', handle: create_command_1.handleApiCreateCommand },
17
+ { name: 'list', handle: list_command_1.handleApiListCommand },
18
+ { name: 'discover', handle: discover_command_1.handleApiDiscoverCommand },
19
+ { name: 'copy', handle: copy_command_1.handleApiCopyCommand },
20
+ { name: 'export', handle: export_command_1.handleApiExportCommand },
21
+ { name: 'import', handle: import_command_1.handleApiImportCommand },
22
+ { name: 'remove', aliases: ['delete', 'rm'], handle: remove_command_1.handleApiRemoveCommand },
23
+ ];
24
+ async function handleApiCommand(args) {
25
+ await (0, named_command_router_1.dispatchNamedCommand)({
26
+ args,
27
+ routes: API_COMMAND_ROUTES,
28
+ onHelp: help_1.showApiCommandHelp,
29
+ onUnknown: help_1.showUnknownApiCommand,
30
+ allowEmptyHelp: true,
31
+ });
32
+ }
33
+ exports.handleApiCommand = handleApiCommand;
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/api-command/index.ts"],"names":[],"mappings":";;;AAAA,kEAAuF;AACvF,iDAAsD;AACtD,qDAA0D;AAC1D,yDAA8D;AAC9D,qDAA0D;AAC1D,iCAAmE;AACnE,qDAA0D;AAC1D,iDAAsD;AACtD,qDAA0D;AAE1D,mCAA+C;AAAtC,6GAAA,mBAAmB,OAAA;AAE5B,MAAM,kBAAkB,GAAiC;IACvD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,uCAAsB,EAAE;IAClD,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mCAAoB,EAAE;IAC9C,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,2CAAwB,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mCAAoB,EAAE;IAC9C,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,uCAAsB,EAAE;IAClD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,uCAAsB,EAAE;IAClD,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,uCAAsB,EAAE;CAC9E,CAAC;AAEK,KAAK,UAAU,gBAAgB,CAAC,IAAc;IACnD,MAAM,IAAA,2CAAoB,EAAC;QACzB,IAAI;QACJ,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,yBAAkB;QAC1B,SAAS,EAAE,4BAAqB;QAChC,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;AACL,CAAC;AARD,4CAQC"}
@@ -0,0 +1,2 @@
1
+ export declare function handleApiListCommand(args?: string[]): Promise<void>;
2
+ //# sourceMappingURL=list-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-command.d.ts","sourceRoot":"","sources":["../../../src/commands/api-command/list-command.ts"],"names":[],"mappings":"AAIA,wBAAsB,oBAAoB,CAAC,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAyD7E"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleApiListCommand = void 0;
4
+ const services_1 = require("../../api/services");
5
+ const ui_1 = require("../../utils/ui");
6
+ const shared_1 = require("./shared");
7
+ async function handleApiListCommand(args = []) {
8
+ await (0, ui_1.initUI)();
9
+ const syntax = (0, shared_1.collectUnexpectedApiArgs)(args, {
10
+ maxPositionals: 0,
11
+ });
12
+ if (syntax.errors.length > 0) {
13
+ syntax.errors.forEach((errorMessage) => console.log((0, ui_1.fail)(errorMessage)));
14
+ process.exit(1);
15
+ }
16
+ console.log((0, ui_1.header)('CCS API Profiles'));
17
+ console.log('');
18
+ const { profiles, variants } = (0, services_1.listApiProfiles)();
19
+ if (profiles.length === 0) {
20
+ console.log((0, ui_1.warn)('No API profiles configured'));
21
+ console.log('');
22
+ console.log('To create an API profile:');
23
+ console.log(` ${(0, ui_1.color)('ccs api create', 'command')}`);
24
+ console.log('');
25
+ return;
26
+ }
27
+ const rows = profiles.map((profile) => {
28
+ const status = profile.isConfigured ? (0, ui_1.color)('[OK]', 'success') : (0, ui_1.color)('[!]', 'warning');
29
+ return [profile.name, profile.target, profile.settingsPath, status];
30
+ });
31
+ console.log((0, ui_1.table)(rows, {
32
+ head: ['API', 'Target', (0, services_1.isUsingUnifiedConfig)() ? 'Config' : 'Settings File', 'Status'],
33
+ colWidths: (0, services_1.isUsingUnifiedConfig)() ? [15, 10, 20, 10] : [15, 10, 35, 10],
34
+ }));
35
+ console.log('');
36
+ if (variants.length > 0) {
37
+ console.log((0, ui_1.subheader)('CLIProxy Variants'));
38
+ console.log((0, ui_1.table)(variants.map((variant) => [
39
+ variant.name,
40
+ variant.provider,
41
+ variant.target,
42
+ variant.settings,
43
+ ]), {
44
+ head: ['Variant', 'Provider', 'Target', 'Settings'],
45
+ colWidths: [15, 12, 10, 28],
46
+ }));
47
+ console.log('');
48
+ }
49
+ console.log((0, ui_1.dim)(`Total: ${profiles.length} API profile(s)`));
50
+ console.log('');
51
+ }
52
+ exports.handleApiListCommand = handleApiListCommand;
53
+ //# sourceMappingURL=list-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-command.js","sourceRoot":"","sources":["../../../src/commands/api-command/list-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function handleApiRemoveCommand(args: string[]): Promise<void>;
2
+ //# sourceMappingURL=remove-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove-command.d.ts","sourceRoot":"","sources":["../../../src/commands/api-command/remove-command.ts"],"names":[],"mappings":"AAKA,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA2D1E"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleApiRemoveCommand = void 0;
4
+ const services_1 = require("../../api/services");
5
+ const ui_1 = require("../../utils/ui");
6
+ const prompt_1 = require("../../utils/prompt");
7
+ const shared_1 = require("./shared");
8
+ async function handleApiRemoveCommand(args) {
9
+ await (0, ui_1.initUI)();
10
+ const parsedArgs = (0, shared_1.parseApiCommandArgs)(args);
11
+ (0, shared_1.exitOnApiCommandErrors)(parsedArgs.errors);
12
+ const apis = (0, services_1.getApiProfileNames)();
13
+ if (apis.length === 0) {
14
+ console.log((0, ui_1.warn)('No API profiles to remove'));
15
+ process.exit(0);
16
+ }
17
+ let name = parsedArgs.name;
18
+ if (!name) {
19
+ console.log((0, ui_1.header)('Remove API Profile'));
20
+ console.log('');
21
+ console.log('Available APIs:');
22
+ apis.forEach((api, index) => console.log(` ${index + 1}. ${api}`));
23
+ console.log('');
24
+ name = await prompt_1.InteractivePrompt.input('API name to remove', {
25
+ validate: (value) => {
26
+ if (!value)
27
+ return 'API name is required';
28
+ if (!apis.includes(value))
29
+ return `API '${value}' not found`;
30
+ return null;
31
+ },
32
+ });
33
+ }
34
+ if (!apis.includes(name)) {
35
+ console.log((0, ui_1.fail)(`API '${name}' not found`));
36
+ console.log('');
37
+ console.log('Available APIs:');
38
+ apis.forEach((api) => console.log(` - ${api}`));
39
+ process.exit(1);
40
+ }
41
+ console.log('');
42
+ console.log(`API '${(0, ui_1.color)(name, 'command')}' will be removed.`);
43
+ console.log(` Settings: ~/.ccs/${name}.settings.json`);
44
+ if ((0, services_1.isUsingUnifiedConfig)()) {
45
+ console.log(' Config: ~/.ccs/config.yaml');
46
+ }
47
+ console.log('');
48
+ const confirmed = parsedArgs.yes ||
49
+ (await prompt_1.InteractivePrompt.confirm('Delete this API profile?', { default: false }));
50
+ if (!confirmed) {
51
+ console.log((0, ui_1.info)('Cancelled'));
52
+ process.exit(0);
53
+ }
54
+ const result = (0, services_1.removeApiProfile)(name);
55
+ if (!result.success) {
56
+ console.log((0, ui_1.fail)(`Failed to remove API profile: ${result.error}`));
57
+ process.exit(1);
58
+ }
59
+ console.log((0, ui_1.ok)(`API profile removed: ${name}`));
60
+ console.log('');
61
+ }
62
+ exports.handleApiRemoveCommand = handleApiRemoveCommand;
63
+ //# sourceMappingURL=remove-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove-command.js","sourceRoot":"","sources":["../../../src/commands/api-command/remove-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { TargetType } from '../../targets/target-adapter';
2
+ export interface ApiCommandArgs {
3
+ name?: string;
4
+ positionals: string[];
5
+ baseUrl?: string;
6
+ apiKey?: string;
7
+ model?: string;
8
+ preset?: string;
9
+ target?: TargetType;
10
+ force?: boolean;
11
+ yes?: boolean;
12
+ errors: string[];
13
+ }
14
+ export declare const API_BOOLEAN_FLAGS: readonly ["--force", "--yes", "-y"];
15
+ export declare const API_VALUE_FLAGS: readonly ["--base-url", "--api-key", "--model", "--preset", "--target"];
16
+ export declare const API_KNOWN_FLAGS: readonly string[];
17
+ export interface ParseApiCommandArgsOptions {
18
+ maxPositionals?: number;
19
+ }
20
+ export declare function sanitizeHelpText(value: string): string;
21
+ export declare function extractPositionalArgs(args: string[]): string[];
22
+ export declare function parseOptionalTargetFlag(args: string[], knownFlags: readonly string[]): {
23
+ target?: TargetType;
24
+ remainingArgs: string[];
25
+ errors: string[];
26
+ };
27
+ export declare function collectUnexpectedApiArgs(args: string[], options: {
28
+ knownFlags?: readonly string[];
29
+ maxPositionals: number;
30
+ }): {
31
+ positionals: string[];
32
+ errors: string[];
33
+ };
34
+ export declare function parseApiCommandArgs(args: string[], options?: ParseApiCommandArgsOptions): ApiCommandArgs;
35
+ export declare function exitOnApiCommandErrors(errors: string[]): void;
36
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/commands/api-command/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAI/D,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,eAAO,MAAM,iBAAiB,qCAAsC,CAAC;AACrE,eAAO,MAAM,eAAe,yEAMlB,CAAC;AACX,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAA+C,CAAC;AAI7F,MAAM,WAAW,0BAA0B;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMtD;AA8BD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAwB9D;AAUD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EAAE,EACd,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B;IAAE,MAAM,CAAC,EAAE,UAAU,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAoBpE;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IACP,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;CACxB,GACA;IAAE,WAAW,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAe7C;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,0BAA+B,GACvC,cAAc,CAmFhB;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAS7D"}
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.exitOnApiCommandErrors = exports.parseApiCommandArgs = exports.collectUnexpectedApiArgs = exports.parseOptionalTargetFlag = exports.extractPositionalArgs = exports.sanitizeHelpText = exports.API_KNOWN_FLAGS = exports.API_VALUE_FLAGS = exports.API_BOOLEAN_FLAGS = void 0;
4
+ const ui_1 = require("../../utils/ui");
5
+ const arg_extractor_1 = require("../arg-extractor");
6
+ exports.API_BOOLEAN_FLAGS = ['--force', '--yes', '-y'];
7
+ exports.API_VALUE_FLAGS = [
8
+ '--base-url',
9
+ '--api-key',
10
+ '--model',
11
+ '--preset',
12
+ '--target',
13
+ ];
14
+ exports.API_KNOWN_FLAGS = [...exports.API_BOOLEAN_FLAGS, ...exports.API_VALUE_FLAGS];
15
+ const API_VALUE_FLAG_SET = new Set(exports.API_VALUE_FLAGS);
16
+ function sanitizeHelpText(value) {
17
+ return value
18
+ .replace(/[\r\n\t]+/g, ' ')
19
+ .replace(/[\x00-\x1f\x7f]/g, ' ')
20
+ .replace(/\s+/g, ' ')
21
+ .trim();
22
+ }
23
+ exports.sanitizeHelpText = sanitizeHelpText;
24
+ function applyRepeatedOption(args, flags, onValue, onMissing, allowDashValue = false) {
25
+ let remaining = [...args];
26
+ while (true) {
27
+ const extracted = (0, arg_extractor_1.extractOption)(remaining, flags, {
28
+ allowDashValue,
29
+ knownFlags: exports.API_KNOWN_FLAGS,
30
+ });
31
+ if (!extracted.found) {
32
+ return remaining;
33
+ }
34
+ if (extracted.missingValue || !extracted.value) {
35
+ onMissing();
36
+ }
37
+ else {
38
+ onValue(extracted.value);
39
+ }
40
+ remaining = extracted.remainingArgs;
41
+ }
42
+ }
43
+ function extractPositionalArgs(args) {
44
+ const positionals = [];
45
+ for (let i = 0; i < args.length; i++) {
46
+ const token = args[i];
47
+ if (token === '--') {
48
+ positionals.push(...args.slice(i + 1));
49
+ break;
50
+ }
51
+ if (token.startsWith('-')) {
52
+ if (!token.includes('=') && API_VALUE_FLAG_SET.has(token)) {
53
+ const next = args[i + 1];
54
+ if (next && !next.startsWith('-')) {
55
+ i++;
56
+ }
57
+ }
58
+ continue;
59
+ }
60
+ positionals.push(token);
61
+ }
62
+ return positionals;
63
+ }
64
+ exports.extractPositionalArgs = extractPositionalArgs;
65
+ function parseTargetValue(value) {
66
+ const normalized = value.trim().toLowerCase();
67
+ if (normalized === 'claude' || normalized === 'droid') {
68
+ return normalized;
69
+ }
70
+ return null;
71
+ }
72
+ function parseOptionalTargetFlag(args, knownFlags) {
73
+ const extracted = (0, arg_extractor_1.extractOption)(args, ['--target'], {
74
+ knownFlags,
75
+ });
76
+ if (!extracted.found) {
77
+ return { remainingArgs: args, errors: [] };
78
+ }
79
+ if (extracted.missingValue || !extracted.value) {
80
+ return { remainingArgs: extracted.remainingArgs, errors: ['Missing value for --target'] };
81
+ }
82
+ const target = parseTargetValue(extracted.value);
83
+ if (!target) {
84
+ return {
85
+ remainingArgs: extracted.remainingArgs,
86
+ errors: [`Invalid --target value "${extracted.value}". Use: claude or droid`],
87
+ };
88
+ }
89
+ return { target, remainingArgs: extracted.remainingArgs, errors: [] };
90
+ }
91
+ exports.parseOptionalTargetFlag = parseOptionalTargetFlag;
92
+ function collectUnexpectedApiArgs(args, options) {
93
+ const scanned = (0, arg_extractor_1.scanCommandArgs)(args, {
94
+ knownFlags: options.knownFlags ?? [],
95
+ });
96
+ const errors = scanned.unknownFlags.map((flag) => `Unknown option: ${flag}`);
97
+ if (scanned.positionals.length > options.maxPositionals) {
98
+ errors.push(`Unexpected arguments: ${scanned.positionals.slice(options.maxPositionals).join(' ')}`);
99
+ }
100
+ return {
101
+ positionals: scanned.positionals,
102
+ errors,
103
+ };
104
+ }
105
+ exports.collectUnexpectedApiArgs = collectUnexpectedApiArgs;
106
+ function parseApiCommandArgs(args, options = {}) {
107
+ const result = {
108
+ positionals: [],
109
+ force: (0, arg_extractor_1.hasAnyFlag)(args, ['--force']),
110
+ yes: (0, arg_extractor_1.hasAnyFlag)(args, ['--yes', '-y']),
111
+ errors: [],
112
+ };
113
+ let remaining = [...args];
114
+ remaining = applyRepeatedOption(remaining, ['--base-url'], (value) => {
115
+ result.baseUrl = value;
116
+ }, () => {
117
+ result.errors.push('Missing value for --base-url');
118
+ }, false);
119
+ remaining = applyRepeatedOption(remaining, ['--api-key'], (value) => {
120
+ result.apiKey = value;
121
+ }, () => {
122
+ result.errors.push('Missing value for --api-key');
123
+ }, false);
124
+ remaining = applyRepeatedOption(remaining, ['--model'], (value) => {
125
+ result.model = value;
126
+ }, () => {
127
+ result.errors.push('Missing value for --model');
128
+ }, true);
129
+ remaining = applyRepeatedOption(remaining, ['--preset'], (value) => {
130
+ result.preset = value;
131
+ }, () => {
132
+ result.errors.push('Missing value for --preset');
133
+ }, false);
134
+ remaining = applyRepeatedOption(remaining, ['--target'], (value) => {
135
+ const target = parseTargetValue(value);
136
+ if (!target) {
137
+ result.errors.push(`Invalid --target value "${value}". Use: claude or droid`);
138
+ return;
139
+ }
140
+ result.target = target;
141
+ }, () => {
142
+ result.errors.push('Missing value for --target');
143
+ }, false);
144
+ const unexpected = collectUnexpectedApiArgs(remaining, {
145
+ knownFlags: exports.API_BOOLEAN_FLAGS,
146
+ maxPositionals: options.maxPositionals ?? 1,
147
+ });
148
+ result.positionals = unexpected.positionals;
149
+ result.name = unexpected.positionals[0];
150
+ result.errors.push(...unexpected.errors);
151
+ return result;
152
+ }
153
+ exports.parseApiCommandArgs = parseApiCommandArgs;
154
+ function exitOnApiCommandErrors(errors) {
155
+ if (errors.length === 0) {
156
+ return;
157
+ }
158
+ errors.forEach((errorMessage) => {
159
+ console.log((0, ui_1.fail)(errorMessage));
160
+ });
161
+ process.exit(1);
162
+ }
163
+ exports.exitOnApiCommandErrors = exitOnApiCommandErrors;
164
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/commands/api-command/shared.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,2 @@
1
- /**
2
- * API Command Handler
3
- *
4
- * Manages CCS API profiles for custom API providers.
5
- * Commands: create, list, remove
6
- *
7
- * CLI parsing and output formatting only.
8
- * Business logic delegated to src/api/services/.
9
- */
10
- import type { TargetType } from '../targets/target-adapter';
11
- interface ApiCommandArgs {
12
- name?: string;
13
- baseUrl?: string;
14
- apiKey?: string;
15
- model?: string;
16
- preset?: string;
17
- target?: TargetType;
18
- force?: boolean;
19
- yes?: boolean;
20
- errors: string[];
21
- }
22
- /** Parse command line arguments for api commands */
23
- export declare function parseApiCommandArgs(args: string[]): ApiCommandArgs;
24
- /** Main api command router */
25
- export declare function handleApiCommand(args: string[]): Promise<void>;
26
- export {};
1
+ export * from './api-command/index';
27
2
  //# sourceMappingURL=api-command.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-command.d.ts","sourceRoot":"","sources":["../../src/commands/api-command.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA4CH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AA4GD,oDAAoD;AACpD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,cAAc,CAwElE;AAuuBD,8BAA8B;AAC9B,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwCpE"}
1
+ {"version":3,"file":"api-command.d.ts","sourceRoot":"","sources":["../../src/commands/api-command.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}