@kaitranntt/ccs 7.61.1-dev.4 → 7.61.1-dev.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EACL,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAQ9B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,UAAQ,GACd,OAAO,CAAC,IAAI,CAAC,CAgEf;AAED,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,+CAA+C;AAC/C,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,UAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAO9F;AAED,sBAAsB;AACtB,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAGhF;AAED,6BAA6B;AAC7B,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAErF;AAED,mCAAmC;AACnC,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,CAAC,CAQR"}
1
+ {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EACL,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAQ9B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,UAAQ,GACd,OAAO,CAAC,IAAI,CAAC,CAkFf;AAED,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,+CAA+C;AAC/C,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,UAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAgB9F;AAED,sBAAsB;AACtB,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAGhF;AAED,6BAA6B;AAC7B,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAErF;AAED,mCAAmC;AACnC,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,CAAC,CAQR"}
@@ -47,12 +47,28 @@ async function downloadAndInstall(config, verbose = false) {
47
47
  const checksumsUrl = (0, platform_detector_1.getChecksumsUrl)(config.version, backend);
48
48
  const backendLabel = backend === 'plus' ? 'CLIProxy Plus' : 'CLIProxy';
49
49
  fs.mkdirSync(config.binPath, { recursive: true });
50
- // Delete existing binary before install to prevent mismatched binaries
50
+ // Delete existing binary before install to prevent mismatched binaries.
51
+ // Abort if binary is currently running (ETXTBSY) — cannot replace in-use binary.
52
+ // Happens in Docker when dashboard tries to update while bootstrap's instance is active.
51
53
  const existingBinary = path.join(config.binPath, (0, platform_detector_1.getExecutableName)(backend));
52
54
  if (fs.existsSync(existingBinary)) {
53
- fs.unlinkSync(existingBinary);
54
- if (verbose)
55
- console.error(`[cliproxy] Removed existing binary: ${existingBinary}`);
55
+ try {
56
+ fs.unlinkSync(existingBinary);
57
+ if (verbose)
58
+ console.error(`[cliproxy] Removed existing binary: ${existingBinary}`);
59
+ }
60
+ catch (error) {
61
+ const code = error instanceof Error && 'code' in error ? error.code : '';
62
+ // ETXTBSY: Linux-specific error when unlinking a running executable.
63
+ // EBUSY on Windows may mean something different (mount point, etc.),
64
+ // so only treat ETXTBSY as "binary in use" to avoid misleading messages.
65
+ if (code === 'ETXTBSY') {
66
+ if (verbose)
67
+ console.error(`[cliproxy] Binary is running, cannot replace: ${existingBinary}`);
68
+ throw new Error('CLIProxy binary is currently running and cannot be replaced. Restart the container to apply the update.');
69
+ }
70
+ throw error;
71
+ }
56
72
  }
57
73
  const archivePath = path.join(config.binPath, `cliproxy-archive.${platform.extension}`);
58
74
  const spinner = new progress_indicator_1.ProgressIndicator(`Downloading ${backendLabel} v${config.version}`);
@@ -98,9 +114,18 @@ function deleteBinary(binPath, verbose = false, backend) {
98
114
  const effectiveBackend = backend ?? platform_detector_1.DEFAULT_BACKEND;
99
115
  const binaryPath = path.join(binPath, (0, platform_detector_1.getExecutableName)(effectiveBackend));
100
116
  if (fs.existsSync(binaryPath)) {
101
- fs.unlinkSync(binaryPath);
102
- if (verbose)
103
- console.error(`[cliproxy] Deleted: ${binaryPath}`);
117
+ try {
118
+ fs.unlinkSync(binaryPath);
119
+ if (verbose)
120
+ console.error(`[cliproxy] Deleted: ${binaryPath}`);
121
+ }
122
+ catch (error) {
123
+ const code = error instanceof Error && 'code' in error ? error.code : '';
124
+ if (code === 'ETXTBSY') {
125
+ throw new Error('CLIProxy binary is currently running and cannot be deleted.');
126
+ }
127
+ throw error;
128
+ }
104
129
  }
105
130
  }
106
131
  exports.deleteBinary = deleteBinary;
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ const binary_manager_1 = require("../cliproxy/binary-manager");
5
5
  const config_generator_1 = require("../cliproxy/config-generator");
6
6
  const port_manager_1 = require("../cliproxy/config/port-manager");
7
7
  const path_resolver_1 = require("../cliproxy/config/path-resolver");
8
+ const session_tracker_1 = require("../cliproxy/session-tracker");
9
+ const binary_manager_2 = require("../cliproxy/binary-manager");
8
10
  async function prepareIntegratedRuntime() {
9
11
  const binaryPath = await (0, binary_manager_1.ensureCLIProxyBinary)(false);
10
12
  const configPath = !(0, config_generator_1.configExists)(port_manager_1.CLIPROXY_DEFAULT_PORT)
@@ -24,8 +26,24 @@ async function runCliproxy() {
24
26
  WRITABLE_PATH: (0, config_generator_1.getCliproxyWritablePath)(),
25
27
  },
26
28
  });
29
+ // Register session lock so dashboard can detect the running proxy
30
+ let sessionId;
31
+ child.on('spawn', () => {
32
+ if (!child.pid)
33
+ return;
34
+ try {
35
+ const version = (0, binary_manager_2.getInstalledCliproxyVersion)();
36
+ sessionId = (0, session_tracker_1.registerSession)(port_manager_1.CLIPROXY_DEFAULT_PORT, child.pid, version, 'plus');
37
+ }
38
+ catch (err) {
39
+ console.error(`[cliproxy] Failed to register session lock: ${err instanceof Error ? err.message : String(err)}`);
40
+ }
41
+ });
27
42
  child.on('error', reject);
28
43
  child.on('close', (code) => {
44
+ if (sessionId) {
45
+ (0, session_tracker_1.unregisterSession)(sessionId, port_manager_1.CLIPROXY_DEFAULT_PORT);
46
+ }
29
47
  resolve(code ?? 1);
30
48
  });
31
49
  });
@@ -1 +1 @@
1
- {"version":3,"file":"docker-bootstrap.js","sourceRoot":"","sources":["../../src/docker/docker-bootstrap.ts"],"names":[],"mappings":";;AAAA,iDAAsC;AACtC,+DAAkE;AAClE,mEAMsC;AACtC,kEAAwE;AACxE,oEAAyE;AAEzE,KAAK,UAAU,wBAAwB;IACrC,MAAM,UAAU,GAAG,MAAM,IAAA,qCAAoB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,CAAC,IAAA,+BAAY,EAAC,oCAAqB,CAAC;QACrD,CAAC,CAAC,IAAA,iCAAc,EAAC,QAAQ,EAAE,oCAAqB,CAAC;QACjD,CAAC,CAAC,IAAA,0CAAuB,GAAE;YACzB,CAAC,CAAC,IAAA,mCAAgB,EAAC,oCAAqB,CAAC;YACzC,CAAC,CAAC,IAAA,qCAAqB,GAAE,CAAC;IAE9B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,WAAW;IACxB,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,wBAAwB,EAAE,CAAC;IACpE,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;YACxD,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE;gBACH,GAAG,OAAO,CAAC,GAAG;gBACd,aAAa,EAAE,IAAA,0CAAuB,GAAE;aACzC;SACF,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAC9E,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,WAAW,EAAE,CAAC;AACvB,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,KAAK,IAAI,EAAE;SACR,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC9B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,OAAO,CAAC,KAAK,CACX,yCAAyC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClG,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"docker-bootstrap.js","sourceRoot":"","sources":["../../src/docker/docker-bootstrap.ts"],"names":[],"mappings":";;AAAA,iDAAsC;AACtC,+DAAkE;AAClE,mEAMsC;AACtC,kEAAwE;AACxE,oEAAyE;AACzE,iEAAiF;AACjF,+DAAyE;AAEzE,KAAK,UAAU,wBAAwB;IACrC,MAAM,UAAU,GAAG,MAAM,IAAA,qCAAoB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,CAAC,IAAA,+BAAY,EAAC,oCAAqB,CAAC;QACrD,CAAC,CAAC,IAAA,iCAAc,EAAC,QAAQ,EAAE,oCAAqB,CAAC;QACjD,CAAC,CAAC,IAAA,0CAAuB,GAAE;YACzB,CAAC,CAAC,IAAA,mCAAgB,EAAC,oCAAqB,CAAC;YACzC,CAAC,CAAC,IAAA,qCAAqB,GAAE,CAAC;IAE9B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,WAAW;IACxB,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,wBAAwB,EAAE,CAAC;IACpE,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;YACxD,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE;gBACH,GAAG,OAAO,CAAC,GAAG;gBACd,aAAa,EAAE,IAAA,0CAAuB,GAAE;aACzC;SACF,CAAC,CAAC;QAEH,kEAAkE;QAClE,IAAI,SAA6B,CAAC;QAClC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACrB,IAAI,CAAC,KAAK,CAAC,GAAG;gBAAE,OAAO;YACvB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAA,4CAA2B,GAAE,CAAC;gBAC9C,SAAS,GAAG,IAAA,iCAAe,EAAC,oCAAqB,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACjF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CACX,+CAA+C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAClG,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,IAAI,SAAS,EAAE,CAAC;gBACd,IAAA,mCAAiB,EAAC,SAAS,EAAE,oCAAqB,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAC9E,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,WAAW,EAAE,CAAC;AACvB,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,KAAK,IAAI,EAAE;SACR,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC9B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,OAAO,CAAC,KAAK,CACX,yCAAyC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClG,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -18,6 +18,10 @@ export declare function checkCliproxyConfig(): HealthCheck;
18
18
  export declare function checkOAuthProviders(): HealthCheck[];
19
19
  /**
20
20
  * Check CLIProxy port status
21
+ *
22
+ * Uses unified proxy detection (HTTP check first, then session lock, then
23
+ * port-process). This works reliably inside Docker containers where OS-level
24
+ * port detection tools (lsof/ss) may be unavailable.
21
25
  */
22
26
  export declare function checkCliproxyPort(): Promise<HealthCheck>;
23
27
  //# sourceMappingURL=cliproxy-checks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cliproxy-checks.d.ts","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI3C;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAgDjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAmBjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,EAAE,CA4BnD;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CA+B9D"}
1
+ {"version":3,"file":"cliproxy-checks.d.ts","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI3C;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAgDjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAmBjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,EAAE,CA4BnD;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CA2C9D"}
@@ -31,7 +31,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
31
31
  exports.checkCliproxyPort = exports.checkOAuthProviders = exports.checkCliproxyConfig = exports.checkCliproxyBinary = void 0;
32
32
  const fs = __importStar(require("fs"));
33
33
  const cliproxy_1 = require("../../cliproxy");
34
- const port_utils_1 = require("../../utils/port-utils");
34
+ const proxy_detector_1 = require("../../cliproxy/proxy-detector");
35
35
  const platform_detector_1 = require("../../cliproxy/platform-detector");
36
36
  const version_checker_1 = require("../../cliproxy/binary/version-checker");
37
37
  /**
@@ -137,34 +137,49 @@ function checkOAuthProviders() {
137
137
  exports.checkOAuthProviders = checkOAuthProviders;
138
138
  /**
139
139
  * Check CLIProxy port status
140
+ *
141
+ * Uses unified proxy detection (HTTP check first, then session lock, then
142
+ * port-process). This works reliably inside Docker containers where OS-level
143
+ * port detection tools (lsof/ss) may be unavailable.
140
144
  */
141
145
  async function checkCliproxyPort() {
142
- const portProcess = await (0, port_utils_1.getPortProcess)(cliproxy_1.CLIPROXY_DEFAULT_PORT);
143
- if (!portProcess) {
146
+ const status = await (0, proxy_detector_1.detectRunningProxy)(cliproxy_1.CLIPROXY_DEFAULT_PORT);
147
+ if (status.running && status.verified) {
144
148
  return {
145
149
  id: 'cliproxy-port',
146
150
  name: 'CLIProxy Port',
147
- status: 'info',
148
- message: `${cliproxy_1.CLIPROXY_DEFAULT_PORT} free`,
149
- details: 'Proxy not running',
151
+ status: 'ok',
152
+ message: 'CLIProxy running',
153
+ details: status.pid ? `PID ${status.pid}` : `Detected via ${status.method}`,
150
154
  };
151
155
  }
152
- if ((0, port_utils_1.isCLIProxyProcess)(portProcess)) {
156
+ if (status.running) {
153
157
  return {
154
158
  id: 'cliproxy-port',
155
159
  name: 'CLIProxy Port',
156
- status: 'ok',
157
- message: 'CLIProxy running',
158
- details: `PID ${portProcess.pid}`,
160
+ status: 'warning',
161
+ message: 'CLIProxy starting',
162
+ details: status.pid ? `PID ${status.pid}` : `Detected via ${status.method}`,
163
+ };
164
+ }
165
+ if (status.blocked) {
166
+ return {
167
+ id: 'cliproxy-port',
168
+ name: 'CLIProxy Port',
169
+ status: 'warning',
170
+ message: status.blocker
171
+ ? `Occupied by ${status.blocker.processName}`
172
+ : 'Port occupied by unknown process',
173
+ details: status.blocker ? `PID ${status.blocker.pid}` : undefined,
174
+ ...(status.blocker && { fix: `Kill process: kill ${status.blocker.pid}` }),
159
175
  };
160
176
  }
161
177
  return {
162
178
  id: 'cliproxy-port',
163
179
  name: 'CLIProxy Port',
164
- status: 'warning',
165
- message: `Occupied by ${portProcess.processName}`,
166
- details: `PID ${portProcess.pid}`,
167
- fix: `Kill process: kill ${portProcess.pid}`,
180
+ status: 'info',
181
+ message: `${cliproxy_1.CLIPROXY_DEFAULT_PORT} free`,
182
+ details: 'Proxy not running',
168
183
  };
169
184
  }
170
185
  exports.checkCliproxyPort = checkCliproxyPort;
@@ -1 +1 @@
1
- {"version":3,"file":"cliproxy-checks.js","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cliproxy-checks.js","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kaitranntt/ccs",
3
- "version": "7.61.1-dev.4",
3
+ "version": "7.61.1-dev.5",
4
4
  "description": "Claude Code Switch - Instant profile switching between Claude, GLM, Kimi, and more",
5
5
  "keywords": [
6
6
  "cli",