@kaitranntt/ccs 7.47.0-dev.4 → 7.47.0-dev.6
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/dist/cliproxy/executor/env-resolver.d.ts.map +1 -1
- package/dist/cliproxy/executor/env-resolver.js +34 -0
- package/dist/cliproxy/executor/env-resolver.js.map +1 -1
- package/dist/cliproxy/remote-proxy-client.d.ts +3 -10
- package/dist/cliproxy/remote-proxy-client.d.ts.map +1 -1
- package/dist/cliproxy/remote-proxy-client.js +32 -29
- package/dist/cliproxy/remote-proxy-client.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-resolver.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/executor/env-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAIxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,sFAAsF;IACtF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0DAA0D;IAC1D,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,mBAAmB,CAAC;QAC1B,MAAM,EAAE,mBAAmB,CAAC;QAC5B,KAAK,EAAE,mBAAmB,CAAC;KAC5B,CAAC;IACF,mDAAmD;IACnD,oBAAoB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;CACpD;
|
|
1
|
+
{"version":3,"file":"env-resolver.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/executor/env-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAIxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,sFAAsF;IACtF,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,6DAA6D;IAC7D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0DAA0D;IAC1D,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,mBAAmB,CAAC;QAC1B,MAAM,EAAE,mBAAmB,CAAC;QAC5B,KAAK,EAAE,mBAAmB,CAAC;KAC5B,CAAC;IACF,mDAAmD;IACnD,oBAAoB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;CACpD;AAkCD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA+KvF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,OAAO,EAAE,OAAO,GACf,IAAI,CAgBN;AAED,mEAAmE;AACnE,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,EACvC,QAAQ,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC5C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAexB"}
|
|
@@ -17,6 +17,33 @@ const websearch_manager_1 = require("../../utils/websearch-manager");
|
|
|
17
17
|
const get_image_analysis_hook_env_1 = require("../../utils/hooks/get-image-analysis-hook-env");
|
|
18
18
|
const shell_executor_1 = require("../../utils/shell-executor");
|
|
19
19
|
const model_id_normalizer_1 = require("../model-id-normalizer");
|
|
20
|
+
const CODEX_EFFORT_SUFFIX_REGEX = /^(.*)-(xhigh|high|medium)$/i;
|
|
21
|
+
const EXTENDED_CONTEXT_SUFFIX_REGEX = /\[1m\]$/i;
|
|
22
|
+
function normalizeCodexModelForDirectUpstream(model) {
|
|
23
|
+
const withoutExtendedContext = model.trim().replace(EXTENDED_CONTEXT_SUFFIX_REGEX, '').trim();
|
|
24
|
+
if (!withoutExtendedContext)
|
|
25
|
+
return withoutExtendedContext;
|
|
26
|
+
const effortMatch = withoutExtendedContext.match(CODEX_EFFORT_SUFFIX_REGEX);
|
|
27
|
+
if (!effortMatch?.[1] || !effortMatch[2]) {
|
|
28
|
+
return withoutExtendedContext;
|
|
29
|
+
}
|
|
30
|
+
return `${effortMatch[1].trim()}(${effortMatch[2].toLowerCase()})`;
|
|
31
|
+
}
|
|
32
|
+
function normalizeCodexEnvForDirectUpstream(envVars) {
|
|
33
|
+
let nextEnv = null;
|
|
34
|
+
for (const key of model_id_normalizer_1.MODEL_ENV_VAR_KEYS) {
|
|
35
|
+
const value = envVars[key];
|
|
36
|
+
if (typeof value !== 'string' || value.trim().length === 0)
|
|
37
|
+
continue;
|
|
38
|
+
const normalizedValue = normalizeCodexModelForDirectUpstream(value);
|
|
39
|
+
if (normalizedValue === value)
|
|
40
|
+
continue;
|
|
41
|
+
if (!nextEnv)
|
|
42
|
+
nextEnv = { ...envVars };
|
|
43
|
+
nextEnv[key] = normalizedValue;
|
|
44
|
+
}
|
|
45
|
+
return nextEnv ?? envVars;
|
|
46
|
+
}
|
|
20
47
|
/**
|
|
21
48
|
* Build final environment variables for Claude CLI execution
|
|
22
49
|
* Handles proxy chain ordering and integration with hooks
|
|
@@ -101,6 +128,13 @@ function buildClaudeEnvironment(config) {
|
|
|
101
128
|
// Apply extended context suffix for 1M token context window
|
|
102
129
|
// Auto-enabled for Gemini, opt-in for Claude (--1m flag)
|
|
103
130
|
(0, extended_context_config_1.applyExtendedContextConfig)(envVars, provider, extendedContextOverride);
|
|
131
|
+
// Fallback compatibility for Codex:
|
|
132
|
+
// CLIProxyAPI provider lookup recognizes model(level) suffix form, while CCS stores codex
|
|
133
|
+
// effort aliases as model-level (e.g., gpt-5.3-codex-high). If codex reasoning proxy is
|
|
134
|
+
// unavailable, normalize to model(level) to avoid "unknown provider for model ..." failures.
|
|
135
|
+
if (provider === 'codex' && !isComposite && !codexReasoningPort) {
|
|
136
|
+
envVars = normalizeCodexEnvForDirectUpstream(envVars);
|
|
137
|
+
}
|
|
104
138
|
// Determine the final ANTHROPIC_BASE_URL based on active proxies
|
|
105
139
|
// Chain order: Claude CLI → [CodexReasoningProxy] → [ToolSanitizationProxy] → CLIProxy
|
|
106
140
|
let finalBaseUrl = envVars.ANTHROPIC_BASE_URL;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-resolver.js","sourceRoot":"","sources":["../../../src/cliproxy/executor/env-resolver.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,0DAK6B;AAC7B,+EAA+E;AAG/E,qEAAoE;AACpE,+FAAwF;AACxF,+DAAgE;AAIhE,
|
|
1
|
+
{"version":3,"file":"env-resolver.js","sourceRoot":"","sources":["../../../src/cliproxy/executor/env-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,20 +40,13 @@ export interface RemoteProxyClientConfig {
|
|
|
40
40
|
/**
|
|
41
41
|
* Check health of remote CLIProxyAPI instance
|
|
42
42
|
*
|
|
43
|
-
* Uses
|
|
44
|
-
*
|
|
43
|
+
* Uses root endpoint (/) for health check since CLIProxyAPI doesn't expose /health.
|
|
44
|
+
* Root is cheap and avoids false negatives from slower model-list endpoints.
|
|
45
45
|
*
|
|
46
46
|
* @param config Remote proxy client configuration
|
|
47
47
|
* @returns RemoteProxyStatus with reachability and latency
|
|
48
48
|
*/
|
|
49
49
|
export declare function checkRemoteProxy(config: RemoteProxyClientConfig): Promise<RemoteProxyStatus>;
|
|
50
|
-
/**
|
|
51
|
-
* Test connection to remote CLIProxyAPI (alias for dashboard use)
|
|
52
|
-
*
|
|
53
|
-
* This is an alias for checkRemoteProxy() for semantic clarity in UI contexts.
|
|
54
|
-
*
|
|
55
|
-
* @param config Remote proxy client configuration
|
|
56
|
-
* @returns RemoteProxyStatus with reachability and latency
|
|
57
|
-
*/
|
|
50
|
+
/** Alias for dashboard connection tests. */
|
|
58
51
|
export declare function testConnection(config: RemoteProxyClientConfig): Promise<RemoteProxyStatus>;
|
|
59
52
|
//# sourceMappingURL=remote-proxy-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-proxy-client.d.ts","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,0CAA0C;AAC1C,MAAM,MAAM,oBAAoB,GAC5B,oBAAoB,GACpB,SAAS,GACT,aAAa,GACb,YAAY,GACZ,qBAAqB,GACrB,SAAS,CAAC;AAEd,qDAAqD;AACrD,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,SAAS,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC;AAED,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB;IACtC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAiJD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"remote-proxy-client.d.ts","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,0CAA0C;AAC1C,MAAM,MAAM,oBAAoB,GAC5B,oBAAoB,GACpB,SAAS,GACT,aAAa,GACb,YAAY,GACZ,qBAAqB,GACrB,SAAS,CAAC;AAEd,qDAAqD;AACrD,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,SAAS,EAAE,OAAO,CAAC;IACnB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC;AAED,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB;IACtC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3B,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAiJD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,iBAAiB,CAAC,CAuI5B;AAED,4CAA4C;AAC5C,wBAAsB,cAAc,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAEhG"}
|
|
@@ -152,8 +152,8 @@ function createHttpsAgent(allowSelfSigned) {
|
|
|
152
152
|
/**
|
|
153
153
|
* Check health of remote CLIProxyAPI instance
|
|
154
154
|
*
|
|
155
|
-
* Uses
|
|
156
|
-
*
|
|
155
|
+
* Uses root endpoint (/) for health check since CLIProxyAPI doesn't expose /health.
|
|
156
|
+
* Root is cheap and avoids false negatives from slower model-list endpoints.
|
|
157
157
|
*
|
|
158
158
|
* @param config Remote proxy client configuration
|
|
159
159
|
* @returns RemoteProxyStatus with reachability and latency
|
|
@@ -169,12 +169,12 @@ async function checkRemoteProxy(config) {
|
|
|
169
169
|
errorCode: 'UNKNOWN',
|
|
170
170
|
};
|
|
171
171
|
}
|
|
172
|
-
// Use
|
|
173
|
-
const url = buildProxyUrl(host, port, protocol, '/
|
|
172
|
+
// Use root endpoint for liveness check - cheap and available across deployments
|
|
173
|
+
const url = buildProxyUrl(host, port, protocol, '/');
|
|
174
174
|
const startTime = Date.now();
|
|
175
|
+
const controller = new AbortController();
|
|
176
|
+
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
175
177
|
try {
|
|
176
|
-
const controller = new AbortController();
|
|
177
|
-
const timeoutId = setTimeout(() => controller.abort(), timeout);
|
|
178
178
|
// Build request options
|
|
179
179
|
const headers = {
|
|
180
180
|
Accept: 'application/json',
|
|
@@ -191,8 +191,18 @@ async function checkRemoteProxy(config) {
|
|
|
191
191
|
// Use native https module for self-signed cert support
|
|
192
192
|
response = await new Promise((resolve, reject) => {
|
|
193
193
|
const agent = createHttpsAgent(true);
|
|
194
|
+
let settled = false;
|
|
195
|
+
const settle = (callback) => {
|
|
196
|
+
if (settled)
|
|
197
|
+
return;
|
|
198
|
+
settled = true;
|
|
199
|
+
clearTimeout(reqTimeout);
|
|
200
|
+
callback();
|
|
201
|
+
};
|
|
194
202
|
const reqTimeout = setTimeout(() => {
|
|
195
|
-
|
|
203
|
+
const timeoutError = new Error('Request timeout');
|
|
204
|
+
req.destroy(timeoutError);
|
|
205
|
+
settle(() => reject(timeoutError));
|
|
196
206
|
}, timeout);
|
|
197
207
|
const req = https.request(url, {
|
|
198
208
|
method: 'GET',
|
|
@@ -200,23 +210,21 @@ async function checkRemoteProxy(config) {
|
|
|
200
210
|
agent,
|
|
201
211
|
timeout,
|
|
202
212
|
}, (res) => {
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
res.
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
}));
|
|
211
|
-
});
|
|
213
|
+
// Health check only needs response headers; don't wait for full body.
|
|
214
|
+
// This avoids timeout false negatives when servers stream slower payloads.
|
|
215
|
+
res.resume();
|
|
216
|
+
settle(() => resolve(new Response(null, {
|
|
217
|
+
status: res.statusCode || 500,
|
|
218
|
+
statusText: res.statusMessage ?? '',
|
|
219
|
+
})));
|
|
212
220
|
});
|
|
213
221
|
req.on('error', (err) => {
|
|
214
|
-
|
|
215
|
-
reject(err);
|
|
222
|
+
settle(() => reject(err));
|
|
216
223
|
});
|
|
217
224
|
req.on('timeout', () => {
|
|
218
|
-
|
|
219
|
-
|
|
225
|
+
const timeoutError = new Error('Request timeout');
|
|
226
|
+
req.destroy(timeoutError);
|
|
227
|
+
settle(() => reject(timeoutError));
|
|
220
228
|
});
|
|
221
229
|
req.end();
|
|
222
230
|
});
|
|
@@ -228,7 +236,6 @@ async function checkRemoteProxy(config) {
|
|
|
228
236
|
headers,
|
|
229
237
|
});
|
|
230
238
|
}
|
|
231
|
-
clearTimeout(timeoutId);
|
|
232
239
|
const latencyMs = Date.now() - startTime;
|
|
233
240
|
// Check for auth failure
|
|
234
241
|
if (response.status === 401 || response.status === 403) {
|
|
@@ -261,16 +268,12 @@ async function checkRemoteProxy(config) {
|
|
|
261
268
|
errorCode,
|
|
262
269
|
};
|
|
263
270
|
}
|
|
271
|
+
finally {
|
|
272
|
+
clearTimeout(timeoutId);
|
|
273
|
+
}
|
|
264
274
|
}
|
|
265
275
|
exports.checkRemoteProxy = checkRemoteProxy;
|
|
266
|
-
/**
|
|
267
|
-
* Test connection to remote CLIProxyAPI (alias for dashboard use)
|
|
268
|
-
*
|
|
269
|
-
* This is an alias for checkRemoteProxy() for semantic clarity in UI contexts.
|
|
270
|
-
*
|
|
271
|
-
* @param config Remote proxy client configuration
|
|
272
|
-
* @returns RemoteProxyStatus with reachability and latency
|
|
273
|
-
*/
|
|
276
|
+
/** Alias for dashboard connection tests. */
|
|
274
277
|
async function testConnection(config) {
|
|
275
278
|
return checkRemoteProxy(config);
|
|
276
279
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-proxy-client.js","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"remote-proxy-client.js","sourceRoot":"","sources":["../../src/cliproxy/remote-proxy-client.ts"],"names":[],"mappings":"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"}
|