llm-cli-gateway 1.17.1 → 1.17.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/README.md +16 -19
- package/dist/cache-stats.d.ts +47 -0
- package/dist/cache-stats.js +85 -2
- package/dist/config.js +1 -1
- package/dist/doctor.d.ts +22 -1
- package/dist/doctor.js +35 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +123 -39
- package/dist/process-monitor.d.ts +1 -2
- package/dist/process-monitor.js +7 -7
- package/dist/prompt-parts.d.ts +1 -1
- package/dist/prompt-parts.js +1 -1
- package/dist/provider-login-guidance.js +5 -5
- package/dist/provider-status.js +0 -4
- package/dist/request-helpers.d.ts +28 -26
- package/dist/request-helpers.js +50 -43
- package/dist/session-manager.js +1 -1
- package/dist/stream-json-parser.js +30 -15
- package/dist/upstream-contracts.d.ts +25 -1
- package/dist/upstream-contracts.js +213 -18
- package/dist/validation-tools.js +1 -1
- package/package.json +11 -8
- package/setup/status.schema.json +31 -0
- package/socket.yml +9 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "llm-cli-gateway",
|
|
3
|
-
"version": "1.17.
|
|
3
|
+
"version": "1.17.3",
|
|
4
4
|
"mcpName": "io.github.verivus-oss/llm-cli-gateway",
|
|
5
5
|
"description": "MCP server providing unified access to Claude Code, Codex, Gemini, Grok, and Mistral Vibe CLIs with session management, retry logic, async job orchestration, durable job results, and cross-LLM validation.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -62,6 +62,7 @@
|
|
|
62
62
|
"migrate": "node dist/migrate.js",
|
|
63
63
|
"test": "vitest run",
|
|
64
64
|
"test:ci": "vitest run --pool=forks --maxWorkers=1",
|
|
65
|
+
"test:fuzz": "vitest run src/__tests__/fuzz.test.ts",
|
|
65
66
|
"test:coverage": "vitest run --coverage",
|
|
66
67
|
"test:watch": "vitest",
|
|
67
68
|
"test:unit": "vitest run src/__tests__/executor.test.ts",
|
|
@@ -81,7 +82,7 @@
|
|
|
81
82
|
"check": "npm run build && npm run lint && npm test && npm run security:audit",
|
|
82
83
|
"release:build": "bash installer/build-release.sh",
|
|
83
84
|
"release:checksums": "cd installer/dist && sha256sum --check SHA256SUMS",
|
|
84
|
-
"release:docker": "docker compose -f docker
|
|
85
|
+
"release:docker": "docker compose -f docker/personal.compose.yml build"
|
|
85
86
|
},
|
|
86
87
|
"dependencies": {
|
|
87
88
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
@@ -89,7 +90,7 @@
|
|
|
89
90
|
"content-type": "1.0.5",
|
|
90
91
|
"smol-toml": "^1.6.1",
|
|
91
92
|
"type-is": "2.0.1",
|
|
92
|
-
"zod": "^
|
|
93
|
+
"zod": "^4.4.3"
|
|
93
94
|
},
|
|
94
95
|
"peerDependencies": {
|
|
95
96
|
"pg": "^8.12.0"
|
|
@@ -100,18 +101,20 @@
|
|
|
100
101
|
}
|
|
101
102
|
},
|
|
102
103
|
"devDependencies": {
|
|
104
|
+
"@eslint/js": "^10.0.1",
|
|
103
105
|
"@types/better-sqlite3": "^7.6.0",
|
|
104
|
-
"@types/node": "^
|
|
106
|
+
"@types/node": "^25.9.1",
|
|
105
107
|
"@types/pg": "^8.11.10",
|
|
106
108
|
"@typescript-eslint/eslint-plugin": "^8.59.4",
|
|
107
109
|
"@typescript-eslint/parser": "^8.59.4",
|
|
108
110
|
"@vitest/coverage-v8": "^4.1.2",
|
|
109
|
-
"eslint": "^
|
|
110
|
-
"eslint-config-prettier": "^
|
|
111
|
-
"eslint-plugin-security": "^
|
|
111
|
+
"eslint": "^10.4.1",
|
|
112
|
+
"eslint-config-prettier": "^10.1.8",
|
|
113
|
+
"eslint-plugin-security": "^4.0.0",
|
|
114
|
+
"fast-check": "^4.8.0",
|
|
112
115
|
"pg": "^8.12.0",
|
|
113
116
|
"prettier": "^3.0.0",
|
|
114
|
-
"typescript": "^
|
|
117
|
+
"typescript": "^6.0.3",
|
|
115
118
|
"vitest": "^4.0.18"
|
|
116
119
|
},
|
|
117
120
|
"overrides": {
|
package/setup/status.schema.json
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"endpoint_exposure",
|
|
16
16
|
"client_config",
|
|
17
17
|
"cache_awareness",
|
|
18
|
+
"upstream",
|
|
18
19
|
"next_actions"
|
|
19
20
|
],
|
|
20
21
|
"properties": {
|
|
@@ -302,6 +303,36 @@
|
|
|
302
303
|
},
|
|
303
304
|
"additionalProperties": false
|
|
304
305
|
},
|
|
306
|
+
"upstream": {
|
|
307
|
+
"type": "object",
|
|
308
|
+
"required": [
|
|
309
|
+
"note",
|
|
310
|
+
"recommendation",
|
|
311
|
+
"how_to_check",
|
|
312
|
+
"probed",
|
|
313
|
+
"installed_versions",
|
|
314
|
+
"contracts"
|
|
315
|
+
],
|
|
316
|
+
"properties": {
|
|
317
|
+
"note": { "type": "string" },
|
|
318
|
+
"recommendation": { "type": "string" },
|
|
319
|
+
"how_to_check": { "type": "string" },
|
|
320
|
+
"probed": { "type": "boolean" },
|
|
321
|
+
"installed_versions": {
|
|
322
|
+
"type": "object",
|
|
323
|
+
"additionalProperties": { "type": ["string", "null"] }
|
|
324
|
+
},
|
|
325
|
+
"contracts": {
|
|
326
|
+
"type": "object",
|
|
327
|
+
"additionalProperties": true
|
|
328
|
+
},
|
|
329
|
+
"probe_report": {
|
|
330
|
+
"type": ["object", "null"],
|
|
331
|
+
"additionalProperties": true
|
|
332
|
+
}
|
|
333
|
+
},
|
|
334
|
+
"additionalProperties": false
|
|
335
|
+
},
|
|
305
336
|
"next_actions": {
|
|
306
337
|
"type": "array",
|
|
307
338
|
"items": { "type": "string" }
|
package/socket.yml
CHANGED
|
@@ -19,12 +19,18 @@ version: 2
|
|
|
19
19
|
# import bundled HTTP client libraries; all default I/O is filesystem
|
|
20
20
|
# (SQLite, sessions.json) or explicit local CLI process I/O.
|
|
21
21
|
#
|
|
22
|
+
# Socket also flagged `dist/upstream-contracts.js` in v1.17.2 because a
|
|
23
|
+
# Mistral CLI flag description contained browser retrieval wording. That
|
|
24
|
+
# text is descriptive upstream metadata only; no network primitive is
|
|
25
|
+
# imported or called from upstream-contracts.ts. The wording now uses
|
|
26
|
+
# "remote retrieval" to avoid that heuristic.
|
|
27
|
+
#
|
|
22
28
|
# shellAccess
|
|
23
29
|
# This alert fires on every module that imports node:child_process, and
|
|
24
30
|
# because spawning provider CLIs and git is the entire purpose of the package
|
|
25
|
-
# it is a reviewed capability description, not a finding.
|
|
26
|
-
#
|
|
27
|
-
#
|
|
31
|
+
# it is a reviewed capability description, not a finding. `issueRules` can
|
|
32
|
+
# quiet repository/PR policy surfaces, but Socket's public package page may
|
|
33
|
+
# still display this alert for the published npm artifact.
|
|
28
34
|
#
|
|
29
35
|
# INVARIANT enforced across ALL sites below: arguments are always passed
|
|
30
36
|
# as an array and `shell: true` is NEVER set, so there is no shell
|