@kaitranntt/ccs 8.10.0-dev.10 → 8.10.0-dev.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts +1 -1
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts.map +1 -1
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js +16 -20
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js.map +1 -1
- package/dist/cliproxy/ai-providers/schema-sanitizer.d.ts +3 -1
- package/dist/cliproxy/ai-providers/schema-sanitizer.d.ts.map +1 -1
- package/dist/cliproxy/ai-providers/schema-sanitizer.js +3 -1
- package/dist/cliproxy/ai-providers/schema-sanitizer.js.map +1 -1
- package/dist/cliproxy/config/generator.d.ts +7 -0
- package/dist/cliproxy/config/generator.d.ts.map +1 -1
- package/dist/cliproxy/config/generator.js +148 -7
- package/dist/cliproxy/config/generator.js.map +1 -1
- package/dist/cliproxy/executor/proxy-chain-builder.d.ts.map +1 -1
- package/dist/cliproxy/executor/proxy-chain-builder.js +4 -0
- package/dist/cliproxy/executor/proxy-chain-builder.js.map +1 -1
- package/dist/cliproxy/model-catalog.d.ts.map +1 -1
- package/dist/cliproxy/model-catalog.js +18 -1
- package/dist/cliproxy/model-catalog.js.map +1 -1
- package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts +6 -1
- package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts.map +1 -1
- package/dist/cliproxy/proxy/tool-sanitization-proxy.js +24 -27
- package/dist/cliproxy/proxy/tool-sanitization-proxy.js.map +1 -1
- package/dist/cliproxy/proxy/upstream-response-timeout.d.ts +13 -0
- package/dist/cliproxy/proxy/upstream-response-timeout.d.ts.map +1 -1
- package/dist/cliproxy/proxy/upstream-response-timeout.js +19 -1
- package/dist/cliproxy/proxy/upstream-response-timeout.js.map +1 -1
- package/dist/cliproxy/services/stats-fetcher.d.ts +4 -0
- package/dist/cliproxy/services/stats-fetcher.d.ts.map +1 -1
- package/dist/cliproxy/services/stats-fetcher.js +14 -1
- package/dist/cliproxy/services/stats-fetcher.js.map +1 -1
- package/dist/cliproxy/services/usage-compatibility-transformer.d.ts +5 -0
- package/dist/cliproxy/services/usage-compatibility-transformer.d.ts.map +1 -1
- package/dist/cliproxy/services/usage-compatibility-transformer.js +77 -6
- package/dist/cliproxy/services/usage-compatibility-transformer.js.map +1 -1
- package/dist/config/schemas/cliproxy.d.ts +1 -1
- package/dist/cursor/cursor-daemon-entry.d.ts.map +1 -1
- package/dist/cursor/cursor-daemon-entry.js +11 -49
- package/dist/cursor/cursor-daemon-entry.js.map +1 -1
- package/dist/glmt/glmt-proxy.d.ts +0 -4
- package/dist/glmt/glmt-proxy.d.ts.map +1 -1
- package/dist/glmt/glmt-proxy.js +6 -21
- package/dist/glmt/glmt-proxy.js.map +1 -1
- package/dist/management/shared-manager/shared-dir-linker.d.ts.map +1 -1
- package/dist/management/shared-manager/shared-dir-linker.js +5 -0
- package/dist/management/shared-manager/shared-dir-linker.js.map +1 -1
- package/dist/proxy/server/http-helpers.d.ts +6 -1
- package/dist/proxy/server/http-helpers.d.ts.map +1 -1
- package/dist/proxy/server/http-helpers.js +19 -77
- package/dist/proxy/server/http-helpers.js.map +1 -1
- package/dist/proxy/server/messages-route.d.ts.map +1 -1
- package/dist/proxy/server/messages-route.js +11 -5
- package/dist/proxy/server/messages-route.js.map +1 -1
- package/dist/shared/provider-preset-catalog.d.ts +1 -1
- package/dist/shared/provider-preset-catalog.d.ts.map +1 -1
- package/dist/shared/provider-preset-catalog.js +28 -0
- package/dist/shared/provider-preset-catalog.js.map +1 -1
- package/dist/ui/assets/{Trans-lb7IJ7fS.js → Trans-DH_0k3_n.js} +1 -1
- package/dist/ui/assets/{accounts-BmdjkRdd.js → accounts-CVP2-Njk.js} +1 -1
- package/dist/ui/assets/{alert-dialog-QI7ssXmW.js → alert-dialog-DncbCG0_.js} +1 -1
- package/dist/ui/assets/{api-yR-jnOTk.js → api-CQi3CVcl.js} +1 -1
- package/dist/ui/assets/{auth-section-UKobnpsa.js → auth-section-Mv8KHvVM.js} +1 -1
- package/dist/ui/assets/{backups-section-Bje38hdS.js → backups-section-Vm_gBBHv.js} +1 -1
- package/dist/ui/assets/{channels-CIcZH84-.js → channels-CqC51WOc.js} +1 -1
- package/dist/ui/assets/{checkbox-kTCwj4DC.js → checkbox-CPnaepmT.js} +1 -1
- package/dist/ui/assets/{claude-extension-DFIM_obP.js → claude-extension-fsZuoafg.js} +1 -1
- package/dist/ui/assets/{cliproxy-CnK8Pxlp.js → cliproxy-Ci2yqAqv.js} +3 -3
- package/dist/ui/assets/{cliproxy-ai-providers-CrszOINU.js → cliproxy-ai-providers-UyvtToHe.js} +1 -1
- package/dist/ui/assets/{cliproxy-control-panel-DkZ0lSNm.js → cliproxy-control-panel-CvnXQRoG.js} +1 -1
- package/dist/ui/assets/{codex-BhDm5zRh.js → codex-yYkmgvBc.js} +1 -1
- package/dist/ui/assets/{confirm-dialog-60zCksm4.js → confirm-dialog-C1R4FuKd.js} +1 -1
- package/dist/ui/assets/{copilot-DYNOTCn0.js → copilot-BjjH_cxF.js} +1 -1
- package/dist/ui/assets/{cursor-Cf9xEm7_.js → cursor-C73hLg6J.js} +1 -1
- package/dist/ui/assets/{droid-D-hRvXnW.js → droid-Dqg2rtFl.js} +1 -1
- package/dist/ui/assets/{globalenv-section-CiMNWxaM.js → globalenv-section-IRGdEiDn.js} +1 -1
- package/dist/ui/assets/{health-SNz-VyXt.js → health-Cx6BKtXL.js} +1 -1
- package/dist/ui/assets/{index-eT0MCNwt.js → index--oj-5HjW.js} +1 -1
- package/dist/ui/assets/{index-OcUP97hO.js → index-BCHIKzFf.js} +1 -1
- package/dist/ui/assets/{index-D4duw9yj.js → index-ChrMTCdJ.js} +1 -1
- package/dist/ui/assets/{index-B2-0piAo.js → index-CvGHvolS.js} +1 -1
- package/dist/ui/assets/{index-BFVDO-nS.js → index-D4x8qKjE.js} +1 -1
- package/dist/ui/assets/{index-CHFm1Cvg.js → index-DzZjiVVk.js} +1 -1
- package/dist/ui/assets/{index-BFSwIiWI.js → index-rkHleSof.js} +26 -26
- package/dist/ui/assets/{logs-CMuCN17Z.js → logs-D_yb-nke.js} +1 -1
- package/dist/ui/assets/{masked-input-BwaApqdO.js → masked-input-CAzxkfDz.js} +1 -1
- package/dist/ui/assets/{proxy-status-widget-BeAaBd0j.js → proxy-status-widget-BwQT11fb.js} +1 -1
- package/dist/ui/assets/{raw-json-settings-editor-panel-QE0I9KQE.js → raw-json-settings-editor-panel-DNR2XVKt.js} +1 -1
- package/dist/ui/assets/{searchable-select-C_K2MS5j.js → searchable-select-Bog5jhDi.js} +1 -1
- package/dist/ui/assets/{separator-D7Dw51fp.js → separator-CSIkt-8K.js} +1 -1
- package/dist/ui/assets/{shared-CaL1210c.js → shared-Te8ciIIT.js} +1 -1
- package/dist/ui/assets/{table-BTmymca2.js → table-C_bsTTOc.js} +1 -1
- package/dist/ui/assets/{updates-QvH7D5Ap.js → updates-CKJCmW7s.js} +1 -1
- package/dist/ui/assets/{use-accounts-Cgk1IgNc.js → use-accounts-CKVEXfmz.js} +1 -1
- package/dist/ui/index.html +1 -1
- package/dist/utils/request-body.d.ts +40 -0
- package/dist/utils/request-body.d.ts.map +1 -0
- package/dist/utils/request-body.js +142 -0
- package/dist/utils/request-body.js.map +1 -0
- package/dist/web-server/model-pricing.d.ts.map +1 -1
- package/dist/web-server/model-pricing.js +22 -0
- package/dist/web-server/model-pricing.js.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-transformer.d.ts +6 -0
- package/dist/web-server/usage/cliproxy-usage-transformer.d.ts.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-transformer.js +57 -1
- package/dist/web-server/usage/cliproxy-usage-transformer.js.map +1 -1
- package/dist/web-server/usage/codex-native-usage-collector.d.ts.map +1 -1
- package/dist/web-server/usage/codex-native-usage-collector.js +7 -4
- package/dist/web-server/usage/codex-native-usage-collector.js.map +1 -1
- package/package.json +1 -1
- package/scripts/run-test-bucket.js +1 -0
package/README.md
CHANGED
|
@@ -64,8 +64,9 @@ CCS gives you one stable command surface while letting you switch between:
|
|
|
64
64
|
- multiple Claude subscriptions and isolated account contexts
|
|
65
65
|
- OAuth providers like Codex, xAI/Grok, Kiro, Claude, Kimi, and more, with legacy
|
|
66
66
|
Copilot compatibility for existing setups
|
|
67
|
-
- API and local-model profiles like GLM, Kimi, OpenRouter, Requesty,
|
|
68
|
-
Ollama, llama.cpp, Novita,
|
|
67
|
+
- API and local-model profiles like GLM, Kimi, OpenRouter, Requesty,
|
|
68
|
+
Atlas Cloud, Cheaper Inference, OrcaRouter, Ollama, llama.cpp, Novita,
|
|
69
|
+
Fireworks AI, and Alibaba Coding Plan
|
|
69
70
|
|
|
70
71
|
Qwen Code account linking is not available in the bundled CLIProxy runtime yet;
|
|
71
72
|
use an API-key Qwen profile such as Alibaba Coding Plan for Qwen models.
|
|
@@ -47,6 +47,7 @@ export declare class CodexReasoningProxy {
|
|
|
47
47
|
private readonly config;
|
|
48
48
|
private readonly modelEffort;
|
|
49
49
|
private readonly sessionFallbackByModel;
|
|
50
|
+
private readonly logger;
|
|
50
51
|
private readonly recent;
|
|
51
52
|
private readonly counts;
|
|
52
53
|
constructor(config: CodexReasoningProxyConfig);
|
|
@@ -65,7 +66,6 @@ export declare class CodexReasoningProxy {
|
|
|
65
66
|
private record;
|
|
66
67
|
start(): Promise<number>;
|
|
67
68
|
stop(): void;
|
|
68
|
-
private readBody;
|
|
69
69
|
private handleRequest;
|
|
70
70
|
private buildForwardHeaders;
|
|
71
71
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-reasoning-proxy.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/codex-reasoning-proxy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"codex-reasoning-proxy.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/codex-reasoning-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,8 @@ const url_1 = require("url");
|
|
|
30
30
|
const codex_plan_compatibility_1 = require("./codex-plan-compatibility");
|
|
31
31
|
const model_catalog_1 = require("../model-catalog");
|
|
32
32
|
const upstream_response_timeout_1 = require("../proxy/upstream-response-timeout");
|
|
33
|
+
const logging_1 = require("../../services/logging");
|
|
34
|
+
const request_body_1 = require("../../utils/request-body");
|
|
33
35
|
const EXTENDED_CONTEXT_SUFFIX_REGEX = /\[1m\]$/i;
|
|
34
36
|
const CODEX_TUNING_SUFFIX_TOKEN_REGEX = /-(none|minimal|low|medium|high|xhigh|max|fast)$/i;
|
|
35
37
|
const CODEX_SERVICE_TIER_REQUEST_VALUE = {
|
|
@@ -206,6 +208,7 @@ class CodexReasoningProxy {
|
|
|
206
208
|
this.server = null;
|
|
207
209
|
this.port = null;
|
|
208
210
|
this.sessionFallbackByModel = new Map();
|
|
211
|
+
this.logger = (0, logging_1.createLogger)('cliproxy:codex-reasoning-proxy');
|
|
209
212
|
this.recent = [];
|
|
210
213
|
this.counts = {
|
|
211
214
|
none: 0,
|
|
@@ -219,7 +222,7 @@ class CodexReasoningProxy {
|
|
|
219
222
|
this.config = {
|
|
220
223
|
upstreamBaseUrl: config.upstreamBaseUrl,
|
|
221
224
|
verbose: config.verbose ?? false,
|
|
222
|
-
timeoutMs: config.timeoutMs ??
|
|
225
|
+
timeoutMs: config.timeoutMs ?? (0, upstream_response_timeout_1.resolveUpstreamTimeoutMs)(),
|
|
223
226
|
modelMap: config.modelMap,
|
|
224
227
|
defaultEffort: config.defaultEffort ?? 'medium',
|
|
225
228
|
traceFilePath: config.traceFilePath ?? '',
|
|
@@ -338,24 +341,6 @@ class CodexReasoningProxy {
|
|
|
338
341
|
this.server = null;
|
|
339
342
|
this.port = null;
|
|
340
343
|
}
|
|
341
|
-
readBody(req) {
|
|
342
|
-
return new Promise((resolve, reject) => {
|
|
343
|
-
const chunks = [];
|
|
344
|
-
const maxSize = 10 * 1024 * 1024; // 10MB
|
|
345
|
-
let total = 0;
|
|
346
|
-
req.on('data', (chunk) => {
|
|
347
|
-
total += chunk.length;
|
|
348
|
-
if (total > maxSize) {
|
|
349
|
-
req.destroy(); // Signal client to stop sending
|
|
350
|
-
reject(new Error('Request body too large (max 10MB)'));
|
|
351
|
-
return;
|
|
352
|
-
}
|
|
353
|
-
chunks.push(chunk);
|
|
354
|
-
});
|
|
355
|
-
req.on('end', () => resolve(Buffer.concat(chunks).toString('utf8')));
|
|
356
|
-
req.on('error', reject);
|
|
357
|
-
});
|
|
358
|
-
}
|
|
359
344
|
async handleRequest(req, res) {
|
|
360
345
|
const method = req.method || 'GET';
|
|
361
346
|
let requestPath = req.url || '/';
|
|
@@ -397,7 +382,7 @@ class CodexReasoningProxy {
|
|
|
397
382
|
await this.forwardRaw(req, res, fullUpstreamUrl);
|
|
398
383
|
return;
|
|
399
384
|
}
|
|
400
|
-
const rawBody = await
|
|
385
|
+
const rawBody = await (0, request_body_1.readRequestBody)(req);
|
|
401
386
|
let parsed;
|
|
402
387
|
try {
|
|
403
388
|
parsed = rawBody.length ? JSON.parse(rawBody) : {};
|
|
@@ -450,7 +435,18 @@ class CodexReasoningProxy {
|
|
|
450
435
|
});
|
|
451
436
|
}
|
|
452
437
|
catch (error) {
|
|
438
|
+
if (error instanceof request_body_1.RequestBodyTooLargeError) {
|
|
439
|
+
(0, request_body_1.respondRequestTooLarge)(req, res, error, this.logger);
|
|
440
|
+
return;
|
|
441
|
+
}
|
|
453
442
|
const err = error;
|
|
443
|
+
this.logger.warn('codex-reasoning.proxy.request-error', `Error: ${err.message}`, {
|
|
444
|
+
error: err.message,
|
|
445
|
+
method,
|
|
446
|
+
path: requestPath,
|
|
447
|
+
});
|
|
448
|
+
if (res.writableEnded || res.destroyed || req.socket?.destroyed)
|
|
449
|
+
return;
|
|
454
450
|
if (!res.headersSent) {
|
|
455
451
|
res.writeHead(502, { 'Content-Type': 'application/json' });
|
|
456
452
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-reasoning-proxy.js","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/codex-reasoning-proxy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"codex-reasoning-proxy.js","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/codex-reasoning-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
* Gemini/Vertex AI function_declarations Schema object.
|
|
6
6
|
*
|
|
7
7
|
* This sanitizer runs exclusively in the CLIProxy execution path (Gemini, Codex,
|
|
8
|
-
* Antigravity, etc.), never for direct Anthropic API requests.
|
|
8
|
+
* Antigravity, etc.), never for direct Anthropic API requests. Single-provider
|
|
9
|
+
* Claude profiles also reach Anthropic through CLIProxy, so they skip it (see
|
|
10
|
+
* `sanitizeSchemas` in proxy-chain-builder).
|
|
9
11
|
*
|
|
10
12
|
* Gemini supports a subset of OpenAPI 3.0 schema — fields outside this subset
|
|
11
13
|
* (like "examples", "$ref", "oneOf", etc.) cause 400 errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-sanitizer.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/schema-sanitizer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"schema-sanitizer.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/schema-sanitizer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAiDH,MAAM,WAAW,wBAAwB;IACvC,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AA8GD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GACtD,wBAAwB,CA2B1B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC,GAC7F;IACD,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CAC3D,CAkCA"}
|
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
* Gemini/Vertex AI function_declarations Schema object.
|
|
7
7
|
*
|
|
8
8
|
* This sanitizer runs exclusively in the CLIProxy execution path (Gemini, Codex,
|
|
9
|
-
* Antigravity, etc.), never for direct Anthropic API requests.
|
|
9
|
+
* Antigravity, etc.), never for direct Anthropic API requests. Single-provider
|
|
10
|
+
* Claude profiles also reach Anthropic through CLIProxy, so they skip it (see
|
|
11
|
+
* `sanitizeSchemas` in proxy-chain-builder).
|
|
10
12
|
*
|
|
11
13
|
* Gemini supports a subset of OpenAPI 3.0 schema — fields outside this subset
|
|
12
14
|
* (like "examples", "$ref", "oneOf", etc.) cause 400 errors.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-sanitizer.js","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/schema-sanitizer.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"schema-sanitizer.js","sourceRoot":"","sources":["../../../src/cliproxy/ai-providers/schema-sanitizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,11 @@ export declare const CCS_CONTROL_PANEL_SECRET = "ccs";
|
|
|
32
32
|
* v21: Persist user-defined OAuth aliases and scoped payload override rules
|
|
33
33
|
*/
|
|
34
34
|
export declare const CLIPROXY_CONFIG_VERSION = 21;
|
|
35
|
+
/**
|
|
36
|
+
* Default CLIProxy listen address: loopback only, so other machines on the network
|
|
37
|
+
* cannot reach the proxy. CLIProxyAPI treats an empty host as "all interfaces".
|
|
38
|
+
*/
|
|
39
|
+
export declare const CLIPROXY_DEFAULT_HOST = "127.0.0.1";
|
|
35
40
|
export declare const ORIGINAL_MANAGEMENT_PANEL_REPOSITORY = "https://github.com/router-for-me/Cli-Proxy-API-Management-Center";
|
|
36
41
|
export declare const PLUS_MANAGEMENT_PANEL_REPOSITORY = "https://github.com/kaitranntt/Cli-Proxy-API-Management-Center";
|
|
37
42
|
interface RegenerateConfigOptions {
|
|
@@ -61,6 +66,8 @@ export declare function parseUserApiKeys(content: string): string[];
|
|
|
61
66
|
/**
|
|
62
67
|
* Force regenerate config.yaml with latest settings.
|
|
63
68
|
* Preserves user-added API keys, claude-api-key section, and port settings.
|
|
69
|
+
* For a config in CLIProxyAPI's v8 layout, also keeps the sections CCS doesn't
|
|
70
|
+
* generate (upstream, the api-keys upstream map, config-version, ...).
|
|
64
71
|
*
|
|
65
72
|
* @param port - Default port to use if not found in existing config
|
|
66
73
|
* @returns Path to new config file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/config/generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/config/generator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAmB,gBAAgB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAwBlF,gDAAgD;AAChD,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAE3D,8DAA8D;AAC9D,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,cAAc,CAAC;AAEjD,eAAO,MAAM,oCAAoC,qEACmB,CAAC;AACrE,eAAO,MAAM,gCAAgC,kEACoB,CAAC;AAElE,UAAU,uBAAuB;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAuDD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,cAAc,CAU5E;AAqGD,wBAAgB,4BAA4B,IAAI,MAAM,CAMrD;AA+nBD;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,gBAAgB,EAC1B,IAAI,GAAE,MAA8B,GACnC,MAAM,CAeR;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAqC1D;AA8JD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,GAAE,MAA8B,EACpC,OAAO,CAAC,EAAE,uBAAuB,GAChC,MAAM,CAkGR;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,GAAE,MAA8B,GAAG,OAAO,CAsBrF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,GAAE,MAA8B,GAAG,OAAO,CAE1E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAKtD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAEnC"}
|
|
@@ -27,9 +27,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
27
27
|
return result;
|
|
28
28
|
};
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.deleteConfig = exports.deleteConfigForPort = exports.configExists = exports.configNeedsRegeneration = exports.regenerateConfig = exports.parseUserApiKeys = exports.generateConfig = exports.getManagementPanelRepository = exports.getProviderConfig = exports.PLUS_MANAGEMENT_PANEL_REPOSITORY = exports.ORIGINAL_MANAGEMENT_PANEL_REPOSITORY = exports.CLIPROXY_CONFIG_VERSION = exports.CCS_CONTROL_PANEL_SECRET = exports.CCS_INTERNAL_API_KEY = void 0;
|
|
30
|
+
exports.deleteConfig = exports.deleteConfigForPort = exports.configExists = exports.configNeedsRegeneration = exports.regenerateConfig = exports.parseUserApiKeys = exports.generateConfig = exports.getManagementPanelRepository = exports.getProviderConfig = exports.PLUS_MANAGEMENT_PANEL_REPOSITORY = exports.ORIGINAL_MANAGEMENT_PANEL_REPOSITORY = exports.CLIPROXY_DEFAULT_HOST = exports.CLIPROXY_CONFIG_VERSION = exports.CCS_CONTROL_PANEL_SECRET = exports.CCS_INTERNAL_API_KEY = void 0;
|
|
31
31
|
const fs = __importStar(require("fs"));
|
|
32
32
|
const path = __importStar(require("path"));
|
|
33
|
+
const yaml = __importStar(require("js-yaml"));
|
|
33
34
|
const provider_capabilities_1 = require("../provider-capabilities");
|
|
34
35
|
const base_config_loader_1 = require("../config/base-config-loader");
|
|
35
36
|
const types_1 = require("../ai-providers/types");
|
|
@@ -71,6 +72,11 @@ exports.CCS_CONTROL_PANEL_SECRET = 'ccs';
|
|
|
71
72
|
* v21: Persist user-defined OAuth aliases and scoped payload override rules
|
|
72
73
|
*/
|
|
73
74
|
exports.CLIPROXY_CONFIG_VERSION = 21;
|
|
75
|
+
/**
|
|
76
|
+
* Default CLIProxy listen address: loopback only, so other machines on the network
|
|
77
|
+
* cannot reach the proxy. CLIProxyAPI treats an empty host as "all interfaces".
|
|
78
|
+
*/
|
|
79
|
+
exports.CLIPROXY_DEFAULT_HOST = '127.0.0.1';
|
|
74
80
|
exports.ORIGINAL_MANAGEMENT_PANEL_REPOSITORY = 'https://github.com/router-for-me/Cli-Proxy-API-Management-Center';
|
|
75
81
|
exports.PLUS_MANAGEMENT_PANEL_REPOSITORY = 'https://github.com/kaitranntt/Cli-Proxy-API-Management-Center';
|
|
76
82
|
const DEPRECATED_ANTIGRAVITY_ALIAS_PREFIX = 'gemini-claude-';
|
|
@@ -179,7 +185,7 @@ function getSessionAffinityTtl() {
|
|
|
179
185
|
}
|
|
180
186
|
/**
|
|
181
187
|
* Number of times CLIProxy retries a request on a transient error
|
|
182
|
-
* (403, 408, 500, 502, 503, 504). Opt-in via config.cliproxy.retry.request_retry;
|
|
188
|
+
* (403, 408, 429, 500, 502, 503, 504). Opt-in via config.cliproxy.retry.request_retry;
|
|
183
189
|
* defaults to 0 (disabled) to avoid burning quota on multi-account pools.
|
|
184
190
|
*/
|
|
185
191
|
function getRequestRetry() {
|
|
@@ -584,6 +590,19 @@ function generateOAuthModelAliasSection(existingAliases, configuredAliases) {
|
|
|
584
590
|
const otherProviders = (0, oauth_model_alias_config_1.serializeOAuthModelAliasBody)(mergedAliasConfig);
|
|
585
591
|
return `oauth-model-alias:\n antigravity:\n${entries}${otherProviders ? `\n${otherProviders}` : ''}`;
|
|
586
592
|
}
|
|
593
|
+
/**
|
|
594
|
+
* Resolve the CLIProxy listen address.
|
|
595
|
+
* Precedence: CCS_CLIPROXY_HOST env (the Docker images set 0.0.0.0 so published ports
|
|
596
|
+
* reach the proxy) > host already set in config.yaml > CLIPROXY_DEFAULT_HOST.
|
|
597
|
+
* A blank env value counts as unset, because Compose passes "" for unset variables.
|
|
598
|
+
*/
|
|
599
|
+
function resolveListenHost(existingHost) {
|
|
600
|
+
const envHost = process.env.CCS_CLIPROXY_HOST?.trim();
|
|
601
|
+
if (envHost) {
|
|
602
|
+
return envHost;
|
|
603
|
+
}
|
|
604
|
+
return existingHost ?? exports.CLIPROXY_DEFAULT_HOST;
|
|
605
|
+
}
|
|
587
606
|
/**
|
|
588
607
|
* Generate UNIFIED config.yaml content for ALL providers
|
|
589
608
|
* This enables concurrent usage of gemini/codex/agy without config conflicts.
|
|
@@ -593,8 +612,10 @@ function generateOAuthModelAliasSection(existingAliases, configuredAliases) {
|
|
|
593
612
|
* @param userApiKeys - User-added API keys to preserve (default: [])
|
|
594
613
|
* @param existingAliases - Existing oauth-model-alias content to merge with defaults
|
|
595
614
|
* @param existingPayload - Existing payload content to merge with structured CCS rules
|
|
615
|
+
* @param existingHost - Listen address found in the existing config, if any
|
|
596
616
|
*/
|
|
597
|
-
function generateUnifiedConfigContent(port = port_manager_1.CLIPROXY_DEFAULT_PORT, userApiKeys = [], existingAliases, existingPayload) {
|
|
617
|
+
function generateUnifiedConfigContent(port = port_manager_1.CLIPROXY_DEFAULT_PORT, userApiKeys = [], existingAliases, existingPayload, existingHost) {
|
|
618
|
+
const host = resolveListenHost(existingHost);
|
|
598
619
|
const authDir = (0, path_resolver_1.getAuthDir)(); // Base auth dir - CLIProxyAPI scans subdirectories
|
|
599
620
|
// Convert Windows backslashes to forward slashes for YAML compatibility
|
|
600
621
|
const authDirNormalized = authDir.split(path.sep).join('/');
|
|
@@ -651,6 +672,9 @@ routing:
|
|
|
651
672
|
# Server Settings
|
|
652
673
|
# =============================================================================
|
|
653
674
|
|
|
675
|
+
# Listen address. 127.0.0.1 keeps CLIProxy off the network; "" listens on all
|
|
676
|
+
# interfaces. Set CCS_CLIPROXY_HOST to override (the Docker images use 0.0.0.0).
|
|
677
|
+
host: ${quoteYamlString(host)}
|
|
654
678
|
port: ${port}
|
|
655
679
|
debug: false
|
|
656
680
|
|
|
@@ -693,7 +717,7 @@ remote-management:
|
|
|
693
717
|
${coolingComment}
|
|
694
718
|
disable-cooling: ${disableCoolingValue}
|
|
695
719
|
|
|
696
|
-
# Auto-retry on transient errors (403, 408, 500, 502, 503, 504)
|
|
720
|
+
# Auto-retry on transient errors (403, 408, 429, 500, 502, 503, 504)
|
|
697
721
|
request-retry: ${requestRetry}
|
|
698
722
|
max-retry-interval: ${maxRetryInterval}
|
|
699
723
|
${poolRoutingBlock}
|
|
@@ -806,9 +830,113 @@ function extractYamlSection(content, sectionKey) {
|
|
|
806
830
|
// Strip leading/trailing blank lines but preserve indentation
|
|
807
831
|
return sectionLines.join('\n').replace(/^\n+/, '').replace(/\n+$/, '');
|
|
808
832
|
}
|
|
833
|
+
/**
|
|
834
|
+
* CLIProxyAPI v8 roots that hold settings CCS writes in the legacy layout (server.port,
|
|
835
|
+
* observability.logs.*, management.*, routing.*, access.api-keys, oauth.auth-dir,
|
|
836
|
+
* oauth.model-alias, requests.payload, quota-exceeded.*). Regeneration rewrites them;
|
|
837
|
+
* keeping them would let their stale v8 values override the legacy ones CCS writes,
|
|
838
|
+
* because the v8 loader prefers the v8 path when both exist.
|
|
839
|
+
*/
|
|
840
|
+
const V8_REGENERATED_ROOTS = new Set([
|
|
841
|
+
'server',
|
|
842
|
+
'observability',
|
|
843
|
+
'management',
|
|
844
|
+
'routing',
|
|
845
|
+
'access',
|
|
846
|
+
'oauth',
|
|
847
|
+
'requests',
|
|
848
|
+
'quota-exceeded',
|
|
849
|
+
]);
|
|
850
|
+
/** Top-level keys the template emits only in some cases, so never carried over. */
|
|
851
|
+
const CONDITIONALLY_GENERATED_KEYS = new Set(['max-retry-credentials', 'payload']);
|
|
852
|
+
function isPlainObject(value) {
|
|
853
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
854
|
+
}
|
|
855
|
+
/** Split YAML into top-level sections without parsing it, so comments and formatting survive. */
|
|
856
|
+
function splitTopLevelYamlSections(content) {
|
|
857
|
+
const sections = [];
|
|
858
|
+
for (const line of content.replace(/\r\n/g, '\n').split('\n')) {
|
|
859
|
+
const keyMatch = line.match(/^([^\s#][^:]*):/);
|
|
860
|
+
if (keyMatch) {
|
|
861
|
+
sections.push({ key: keyMatch[1], text: line });
|
|
862
|
+
}
|
|
863
|
+
else if (sections.length > 0) {
|
|
864
|
+
sections[sections.length - 1].text += `\n${line}`;
|
|
865
|
+
}
|
|
866
|
+
}
|
|
867
|
+
return sections.map((section) => ({ ...section, text: section.text.replace(/\s+$/, '') }));
|
|
868
|
+
}
|
|
869
|
+
/**
|
|
870
|
+
* Read a config that CLIProxyAPI v8 has migrated to its nested layout (it adds
|
|
871
|
+
* `config-version:`). The v8 loader also accepts legacy keys and prefers the v8 path
|
|
872
|
+
* when both exist; this does the same. Returns null for legacy configs and for files
|
|
873
|
+
* js-yaml can't parse, which keeps the legacy handling.
|
|
874
|
+
*/
|
|
875
|
+
function readExistingV8Config(content) {
|
|
876
|
+
if (!/^config-version:/m.test(content)) {
|
|
877
|
+
return null;
|
|
878
|
+
}
|
|
879
|
+
let doc;
|
|
880
|
+
try {
|
|
881
|
+
doc = yaml.load(content);
|
|
882
|
+
}
|
|
883
|
+
catch {
|
|
884
|
+
return null;
|
|
885
|
+
}
|
|
886
|
+
if (!isPlainObject(doc)) {
|
|
887
|
+
return null;
|
|
888
|
+
}
|
|
889
|
+
const root = doc;
|
|
890
|
+
const child = (key) => {
|
|
891
|
+
const value = root[key];
|
|
892
|
+
return isPlainObject(value) ? value : {};
|
|
893
|
+
};
|
|
894
|
+
const server = child('server');
|
|
895
|
+
const clientKeys = child('access')['api-keys'] ?? root['api-keys'];
|
|
896
|
+
const view = {
|
|
897
|
+
host: server.host ?? root.host,
|
|
898
|
+
port: server.port ?? root.port,
|
|
899
|
+
'api-keys': Array.isArray(clientKeys)
|
|
900
|
+
? clientKeys.filter((key) => typeof key === 'string')
|
|
901
|
+
: undefined,
|
|
902
|
+
'oauth-model-alias': child('oauth')['model-alias'] ?? root['oauth-model-alias'],
|
|
903
|
+
payload: child('requests').payload ?? root.payload,
|
|
904
|
+
};
|
|
905
|
+
const header = content.match(/^(?:#.*\r?\n)*/)?.[0] ?? '';
|
|
906
|
+
const definedView = Object.fromEntries(Object.entries(view).filter(([, value]) => value !== undefined && value !== null));
|
|
907
|
+
return {
|
|
908
|
+
legacyView: `${header}${yaml.dump(definedView, { lineWidth: -1, forceQuotes: true, quotingType: '"' })}`,
|
|
909
|
+
sections: splitTopLevelYamlSections(content),
|
|
910
|
+
hasUpstreamKeyMap: isPlainObject(root['api-keys']),
|
|
911
|
+
};
|
|
912
|
+
}
|
|
913
|
+
/**
|
|
914
|
+
* Move the generated client key list from top-level `api-keys` (legacy layout) to
|
|
915
|
+
* `access.api-keys` (v8 layout), leaving `api-keys` to the v8 upstream key map.
|
|
916
|
+
*/
|
|
917
|
+
function nestClientApiKeysUnderAccess(configContent) {
|
|
918
|
+
return configContent.replace(/^api-keys:\n((?:[ \t]+-.*\n)*)/m, (_match, items) => `access:\n api-keys:\n${items.replace(/^(?=.)/gm, ' ')}`);
|
|
919
|
+
}
|
|
920
|
+
/** Append the existing v8 sections that the regenerated config doesn't produce. */
|
|
921
|
+
function appendKeptV8Sections(configContent, existing) {
|
|
922
|
+
let content = existing.hasUpstreamKeyMap
|
|
923
|
+
? nestClientApiKeysUnderAccess(configContent)
|
|
924
|
+
: configContent;
|
|
925
|
+
const generatedKeys = new Set(splitTopLevelYamlSections(content).map((section) => section.key));
|
|
926
|
+
for (const section of existing.sections) {
|
|
927
|
+
if (!generatedKeys.has(section.key) &&
|
|
928
|
+
!V8_REGENERATED_ROOTS.has(section.key) &&
|
|
929
|
+
!CONDITIONALLY_GENERATED_KEYS.has(section.key)) {
|
|
930
|
+
content += `${section.text}\n`;
|
|
931
|
+
}
|
|
932
|
+
}
|
|
933
|
+
return content;
|
|
934
|
+
}
|
|
809
935
|
/**
|
|
810
936
|
* Force regenerate config.yaml with latest settings.
|
|
811
937
|
* Preserves user-added API keys, claude-api-key section, and port settings.
|
|
938
|
+
* For a config in CLIProxyAPI's v8 layout, also keeps the sections CCS doesn't
|
|
939
|
+
* generate (upstream, the api-keys upstream map, config-version, ...).
|
|
812
940
|
*
|
|
813
941
|
* @param port - Default port to use if not found in existing config
|
|
814
942
|
* @returns Path to new config file
|
|
@@ -818,18 +946,28 @@ function regenerateConfig(port = port_manager_1.CLIPROXY_DEFAULT_PORT, options)
|
|
|
818
946
|
const authDir = options?.authDir ?? (0, path_resolver_1.getAuthDir)();
|
|
819
947
|
// Preserve user settings from existing config
|
|
820
948
|
let effectivePort = port;
|
|
949
|
+
let existingHost;
|
|
821
950
|
let userApiKeys = [];
|
|
822
951
|
let existingAliases = '';
|
|
823
952
|
let existingPayload = '';
|
|
824
953
|
const preservedSections = [];
|
|
954
|
+
let existingV8 = null;
|
|
825
955
|
if (fs.existsSync(configPath)) {
|
|
826
956
|
try {
|
|
827
|
-
const
|
|
957
|
+
const rawContent = fs.readFileSync(configPath, 'utf-8');
|
|
958
|
+
// A v8-layout config is read through a legacy view; its other sections are kept below.
|
|
959
|
+
existingV8 = readExistingV8Config(rawContent);
|
|
960
|
+
const content = existingV8?.legacyView ?? rawContent;
|
|
828
961
|
// Preserve port setting
|
|
829
962
|
const portMatch = content.match(/^port:\s*(\d+)/m);
|
|
830
963
|
if (portMatch) {
|
|
831
964
|
effectivePort = parseInt(portMatch[1], 10);
|
|
832
965
|
}
|
|
966
|
+
// Preserve host setting (older generated configs had none, so a host line is the user's)
|
|
967
|
+
const hostMatch = content.match(/^host:[ \t]*(?:"([^"]*)"|'([^']*)'|([^\s#]*))/m);
|
|
968
|
+
if (hostMatch) {
|
|
969
|
+
existingHost = hostMatch[1] ?? hostMatch[2] ?? hostMatch[3] ?? '';
|
|
970
|
+
}
|
|
833
971
|
// Preserve user-added API keys (fix for issue #200)
|
|
834
972
|
userApiKeys = parseUserApiKeys(content);
|
|
835
973
|
// Preserve AI provider sections managed outside the generated defaults.
|
|
@@ -860,7 +998,7 @@ function regenerateConfig(port = port_manager_1.CLIPROXY_DEFAULT_PORT, options)
|
|
|
860
998
|
existingAliases = (0, oauth_model_alias_config_1.serializeOAuthModelAliasBody)(preservedAliasConfig);
|
|
861
999
|
existingPayload = extractYamlSection(content, 'payload');
|
|
862
1000
|
if (preservedAliases.prunedLegacyAliasCount > 0) {
|
|
863
|
-
writeLegacyGeminiAliasCleanupBackup(configPath,
|
|
1001
|
+
writeLegacyGeminiAliasCleanupBackup(configPath, rawContent);
|
|
864
1002
|
}
|
|
865
1003
|
}
|
|
866
1004
|
catch {
|
|
@@ -873,11 +1011,14 @@ function regenerateConfig(port = port_manager_1.CLIPROXY_DEFAULT_PORT, options)
|
|
|
873
1011
|
fs.mkdirSync(path.dirname(configPath), { recursive: true });
|
|
874
1012
|
fs.mkdirSync(authDir, { recursive: true, mode: 0o700 });
|
|
875
1013
|
// Generate fresh config with preserved user API keys and aliases
|
|
876
|
-
let configContent = generateUnifiedConfigContent(effectivePort, userApiKeys, existingAliases, existingPayload);
|
|
1014
|
+
let configContent = generateUnifiedConfigContent(effectivePort, userApiKeys, existingAliases, existingPayload, existingHost);
|
|
877
1015
|
// Re-append managed top-level sections that are not part of the generated defaults.
|
|
878
1016
|
for (const section of preservedSections) {
|
|
879
1017
|
configContent += `${section.key}:\n${section.body}\n`;
|
|
880
1018
|
}
|
|
1019
|
+
if (existingV8) {
|
|
1020
|
+
configContent = appendKeptV8Sections(configContent, existingV8);
|
|
1021
|
+
}
|
|
881
1022
|
fs.writeFileSync(configPath, configContent, { mode: 0o600 });
|
|
882
1023
|
return configPath;
|
|
883
1024
|
}
|