ssh-mcp-pro 1.2.3 → 1.4.0
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 +55 -0
- package/README.md +12 -2
- package/dist/agent-bin.js +5 -2
- package/dist/agent-bin.js.map +1 -1
- package/dist/cli.d.ts +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +38 -47
- package/dist/cli.js.map +1 -1
- package/dist/config-security-env.d.ts +4 -0
- package/dist/config-security-env.d.ts.map +1 -0
- package/dist/config-security-env.js +64 -0
- package/dist/config-security-env.js.map +1 -0
- package/dist/config.d.ts +2 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +4 -67
- package/dist/config.js.map +1 -1
- package/dist/connector-profile.d.ts +1 -1
- package/dist/connector-profile.d.ts.map +1 -1
- package/dist/detect.d.ts.map +1 -1
- package/dist/detect.js +226 -192
- package/dist/detect.js.map +1 -1
- package/dist/ensure-package-service.d.ts +9 -0
- package/dist/ensure-package-service.d.ts.map +1 -0
- package/dist/ensure-package-service.js +146 -0
- package/dist/ensure-package-service.js.map +1 -0
- package/dist/ensure-pkg.js +4 -4
- package/dist/ensure-pkg.js.map +1 -1
- package/dist/ensure.d.ts.map +1 -1
- package/dist/ensure.js +15 -144
- package/dist/ensure.js.map +1 -1
- package/dist/fs-sftp.js +1 -1
- package/dist/fs-sftp.js.map +1 -1
- package/dist/fs-stat.d.ts +10 -0
- package/dist/fs-stat.d.ts.map +1 -0
- package/dist/fs-stat.js +62 -0
- package/dist/fs-stat.js.map +1 -0
- package/dist/fs-tools.d.ts.map +1 -1
- package/dist/fs-tools.js +6 -58
- package/dist/fs-tools.js.map +1 -1
- package/dist/http-security.d.ts.map +1 -1
- package/dist/http-security.js +6 -6
- package/dist/http-security.js.map +1 -1
- package/dist/http-server-runtime.d.ts.map +1 -1
- package/dist/http-server-runtime.js +41 -7
- package/dist/http-server-runtime.js.map +1 -1
- package/dist/index.js +6 -23
- package/dist/index.js.map +1 -1
- package/dist/mcp-http-web.d.ts +8 -0
- package/dist/mcp-http-web.d.ts.map +1 -0
- package/dist/mcp-http-web.js +35 -0
- package/dist/mcp-http-web.js.map +1 -0
- package/dist/mcp.d.ts +6 -2
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +22 -14
- package/dist/mcp.js.map +1 -1
- package/dist/policy.d.ts +8 -0
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +147 -105
- package/dist/policy.js.map +1 -1
- package/dist/process.d.ts.map +1 -1
- package/dist/process.js +11 -7
- package/dist/process.js.map +1 -1
- package/dist/remote/agent-activity-log.d.ts +26 -0
- package/dist/remote/agent-activity-log.d.ts.map +1 -0
- package/dist/remote/agent-activity-log.js +211 -0
- package/dist/remote/agent-activity-log.js.map +1 -0
- package/dist/remote/agent-cli.d.ts.map +1 -1
- package/dist/remote/agent-cli.js +92 -25
- package/dist/remote/agent-cli.js.map +1 -1
- package/dist/remote/agent-executor.d.ts.map +1 -1
- package/dist/remote/agent-executor.js +22 -10
- package/dist/remote/agent-executor.js.map +1 -1
- package/dist/remote/agent-handler.d.ts +2 -0
- package/dist/remote/agent-handler.d.ts.map +1 -1
- package/dist/remote/agent-handler.js +4 -0
- package/dist/remote/agent-handler.js.map +1 -1
- package/dist/remote/config.d.ts.map +1 -1
- package/dist/remote/config.js +12 -1
- package/dist/remote/config.js.map +1 -1
- package/dist/remote/control-plane.d.ts +12 -0
- package/dist/remote/control-plane.d.ts.map +1 -1
- package/dist/remote/control-plane.js +164 -56
- package/dist/remote/control-plane.js.map +1 -1
- package/dist/remote/crypto.d.ts +9 -4
- package/dist/remote/crypto.d.ts.map +1 -1
- package/dist/remote/crypto.js +41 -9
- package/dist/remote/crypto.js.map +1 -1
- package/dist/remote/http-util.d.ts.map +1 -1
- package/dist/remote/http-util.js +14 -7
- package/dist/remote/http-util.js.map +1 -1
- package/dist/remote/mcp-tools.d.ts +7 -0
- package/dist/remote/mcp-tools.d.ts.map +1 -1
- package/dist/remote/mcp-tools.js +28 -0
- package/dist/remote/mcp-tools.js.map +1 -1
- package/dist/remote/oauth-handler.d.ts +30 -3
- package/dist/remote/oauth-handler.d.ts.map +1 -1
- package/dist/remote/oauth-handler.js +232 -18
- package/dist/remote/oauth-handler.js.map +1 -1
- package/dist/remote/policy.js +2 -2
- package/dist/remote/policy.js.map +1 -1
- package/dist/remote/schemas.d.ts +9 -9
- package/dist/remote/schemas.js +6 -6
- package/dist/remote/schemas.js.map +1 -1
- package/dist/remote/store.d.ts +38 -1
- package/dist/remote/store.d.ts.map +1 -1
- package/dist/remote/store.js +149 -11
- package/dist/remote/store.js.map +1 -1
- package/dist/remote/types.d.ts +14 -0
- package/dist/remote/types.d.ts.map +1 -1
- package/dist/remote/types.js.map +1 -1
- package/dist/remote/web-dashboard-client-config.d.ts +77 -0
- package/dist/remote/web-dashboard-client-config.d.ts.map +1 -0
- package/dist/remote/web-dashboard-client-config.js +81 -0
- package/dist/remote/web-dashboard-client-config.js.map +1 -0
- package/dist/remote/web-dashboard-html.d.ts +2 -0
- package/dist/remote/web-dashboard-html.d.ts.map +1 -0
- package/dist/remote/web-dashboard-html.js +433 -0
- package/dist/remote/web-dashboard-html.js.map +1 -0
- package/dist/remote/web-dashboard-oauth-users.d.ts +4 -0
- package/dist/remote/web-dashboard-oauth-users.d.ts.map +1 -0
- package/dist/remote/web-dashboard-oauth-users.js +78 -0
- package/dist/remote/web-dashboard-oauth-users.js.map +1 -0
- package/dist/remote/web-dashboard-static.d.ts +4 -0
- package/dist/remote/web-dashboard-static.d.ts.map +1 -0
- package/dist/remote/web-dashboard-static.js +19 -0
- package/dist/remote/web-dashboard-static.js.map +1 -0
- package/dist/remote/web-dashboard-styles.d.ts +2 -0
- package/dist/remote/web-dashboard-styles.d.ts.map +1 -0
- package/dist/remote/web-dashboard-styles.js +187 -0
- package/dist/remote/web-dashboard-styles.js.map +1 -0
- package/dist/remote/web-dashboard.d.ts +62 -0
- package/dist/remote/web-dashboard.d.ts.map +1 -0
- package/dist/remote/web-dashboard.js +467 -0
- package/dist/remote/web-dashboard.js.map +1 -0
- package/dist/retry.d.ts.map +1 -1
- package/dist/retry.js +6 -3
- package/dist/retry.js.map +1 -1
- package/dist/safety.d.ts.map +1 -1
- package/dist/safety.js +56 -6
- package/dist/safety.js.map +1 -1
- package/dist/session-auth.js +7 -7
- package/dist/session-auth.js.map +1 -1
- package/dist/session.d.ts +1 -0
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +44 -40
- package/dist/session.js.map +1 -1
- package/dist/shell.d.ts.map +1 -1
- package/dist/shell.js +5 -4
- package/dist/shell.js.map +1 -1
- package/dist/ssh-config.d.ts +2 -2
- package/dist/ssh-config.d.ts.map +1 -1
- package/dist/ssh-config.js +24 -20
- package/dist/ssh-config.js.map +1 -1
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +9 -2
- package/dist/telemetry.js.map +1 -1
- package/dist/tools/connector.provider.d.ts +1 -1
- package/dist/tools/connector.provider.d.ts.map +1 -1
- package/dist/tools/ensure.provider.d.ts +1 -1
- package/dist/tools/ensure.provider.d.ts.map +1 -1
- package/dist/tools/fs.provider.d.ts +1 -1
- package/dist/tools/fs.provider.d.ts.map +1 -1
- package/dist/tools/metadata.d.ts +1 -1
- package/dist/tools/metadata.d.ts.map +1 -1
- package/dist/tools/output-schemas.d.ts +27 -135
- package/dist/tools/output-schemas.d.ts.map +1 -1
- package/dist/tools/process.provider.d.ts +1 -1
- package/dist/tools/process.provider.d.ts.map +1 -1
- package/dist/tools/registry.d.ts +1 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +16 -13
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/session.provider.d.ts +1 -1
- package/dist/tools/session.provider.d.ts.map +1 -1
- package/dist/tools/system.provider.d.ts +1 -1
- package/dist/tools/system.provider.d.ts.map +1 -1
- package/dist/tools/transfer.provider.d.ts +1 -1
- package/dist/tools/transfer.provider.d.ts.map +1 -1
- package/dist/tools/tunnel.provider.d.ts +1 -1
- package/dist/tools/tunnel.provider.d.ts.map +1 -1
- package/dist/tools/types.d.ts +1 -1
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/transfer.js +2 -2
- package/dist/transfer.js.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/docs/adding-a-device.md +39 -17
- package/docs/agent-activity-monitor.md +34 -0
- package/docs/coolify.md +29 -0
- package/docs/development/dependency-management.md +1 -1
- package/docs/development/mcp-protocol-2026.md +33 -0
- package/docs/doppler-guide.md +34 -0
- package/docs/reference/compatibility.md +1 -1
- package/docs/security/dependency-audit-exceptions.md +3 -7
- package/docs/security/hosted-data-inventory.md +81 -0
- package/docs/sonarcloud-analysis.md +9 -0
- package/mcp.json +1 -1
- package/package.json +26 -21
- package/registry/ssh-mcp-pro/mcp.json +1 -1
- package/server.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,61 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.4.0](https://github.com/oaslananka/ssh-mcp-pro/compare/ssh-mcp-pro-v1.3.0...ssh-mcp-pro-v1.4.0) (2026-11-06)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* **mcp:** support 2026 protocol on authenticated remote-agent endpoint ([#181](https://github.com/oaslananka/ssh-mcp-pro/issues/181)) ([8f5df37](https://github.com/oaslananka/ssh-mcp-pro/commit/8f5df3700657118d26743eebf314bdb3850cceb7))
|
|
14
|
+
* **remote:** add hosted dashboard and Coolify deployment support ([#127](https://github.com/oaslananka/ssh-mcp-pro/issues/127)) ([7a4ba63](https://github.com/oaslananka/ssh-mcp-pro/commit/7a4ba63cc8d2a3ec8080ecdddf57e854d08e1de2))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* **agent:** launch Windows scheduled task with npm CMD shim ([#130](https://github.com/oaslananka/ssh-mcp-pro/issues/130)) ([cf6fdb5](https://github.com/oaslananka/ssh-mcp-pro/commit/cf6fdb511af552d0538659a8fa7420bb586cfb69))
|
|
20
|
+
* **agent:** resolve Linux npm CLI discovery and system runtime identity ([#176](https://github.com/oaslananka/ssh-mcp-pro/issues/176)) ([16b7ce3](https://github.com/oaslananka/ssh-mcp-pro/commit/16b7ce3ea57931482e46af539223e2e481d47c35))
|
|
21
|
+
* **agent:** restart service after enrollment identity changes ([#180](https://github.com/oaslananka/ssh-mcp-pro/issues/180)) ([d770763](https://github.com/oaslananka/ssh-mcp-pro/commit/d770763936a5e1c7f0c40e87414a8917f1c21b7a))
|
|
22
|
+
* **agent:** restart Windows agent after WebSocket disconnect ([#129](https://github.com/oaslananka/ssh-mcp-pro/issues/129)) ([8df07ee](https://github.com/oaslananka/ssh-mcp-pro/commit/8df07ee08a55eb665679dffc33d8701b4e063ca9))
|
|
23
|
+
* **agent:** surface Linux installer download failures ([#132](https://github.com/oaslananka/ssh-mcp-pro/issues/132)) ([79f166d](https://github.com/oaslananka/ssh-mcp-pro/commit/79f166d50ffd52d0b9253b318703486fd5a72e8a))
|
|
24
|
+
* **apps:** correct publication legal-document attestations ([#157](https://github.com/oaslananka/ssh-mcp-pro/issues/157)) ([7e8b42d](https://github.com/oaslananka/ssh-mcp-pro/commit/7e8b42d9e5032c657fd65920c004bafc3d41abf6))
|
|
25
|
+
* **auth:** restrict fixture identities to loopback test mode ([#128](https://github.com/oaslananka/ssh-mcp-pro/issues/128)) ([a0a1d19](https://github.com/oaslananka/ssh-mcp-pro/commit/a0a1d1991dc665db3be2a017ddea039d4b642803))
|
|
26
|
+
* **automation:** avoid stalled dependency PR creation ([#153](https://github.com/oaslananka/ssh-mcp-pro/issues/153)) ([209c084](https://github.com/oaslananka/ssh-mcp-pro/commit/209c084294188a46baf878bfc326676b25e49781))
|
|
27
|
+
* **dashboard:** correct Gemini and Copilot setup examples ([#161](https://github.com/oaslananka/ssh-mcp-pro/issues/161)) ([be00c8c](https://github.com/oaslananka/ssh-mcp-pro/commit/be00c8c0f77c38d08b6b68f78e6fe2118c1bfeb2))
|
|
28
|
+
* **dashboard:** correct MCP client setup examples ([#146](https://github.com/oaslananka/ssh-mcp-pro/issues/146)) ([71ed56a](https://github.com/oaslananka/ssh-mcp-pro/commit/71ed56a45f024812cf15d89f4de861cf631a65bd))
|
|
29
|
+
* **dashboard:** display host metadata and stream agent activity logs ([#183](https://github.com/oaslananka/ssh-mcp-pro/issues/183)) ([30d294a](https://github.com/oaslananka/ssh-mcp-pro/commit/30d294acb367ae06d25ec1caff9f68bad113ea2d))
|
|
30
|
+
* **dashboard:** distinguish remote MCP connector setup ([#147](https://github.com/oaslananka/ssh-mcp-pro/issues/147)) ([621948d](https://github.com/oaslananka/ssh-mcp-pro/commit/621948d03bffe62282daa96dbb41d741aca83311))
|
|
31
|
+
* **dashboard:** make navigation keyboard accessible ([#160](https://github.com/oaslananka/ssh-mcp-pro/issues/160)) ([6261f7f](https://github.com/oaslananka/ssh-mcp-pro/commit/6261f7f3b92a53b7f9e474e6159aa36c468a6ed3))
|
|
32
|
+
* **dashboard:** remove revoked devices from inventory ([#149](https://github.com/oaslananka/ssh-mcp-pro/issues/149)) ([715edb8](https://github.com/oaslananka/ssh-mcp-pro/commit/715edb8511f908d70bb2400767942cd17e3bbe21))
|
|
33
|
+
* **dashboard:** separate device revoke and remove actions ([#182](https://github.com/oaslananka/ssh-mcp-pro/issues/182)) ([1e78176](https://github.com/oaslananka/ssh-mcp-pro/commit/1e7817642ebead581435fc169d9a46eed74fa6f6))
|
|
34
|
+
* **docs:** mark Google cloud connector as not publish-ready ([#134](https://github.com/oaslananka/ssh-mcp-pro/issues/134)) ([c3889af](https://github.com/oaslananka/ssh-mcp-pro/commit/c3889afda29889dfa3cbd96b55c28fe852fc9dc6))
|
|
35
|
+
* **http:** classify invalid JSON requests as bad input ([#136](https://github.com/oaslananka/ssh-mcp-pro/issues/136)) ([7fbbee2](https://github.com/oaslananka/ssh-mcp-pro/commit/7fbbee20f8ea141b36230dd8336d16172da525da))
|
|
36
|
+
* **http:** deny browser origins with no explicit allowlist ([#135](https://github.com/oaslananka/ssh-mcp-pro/issues/135)) ([ac3bf2c](https://github.com/oaslananka/ssh-mcp-pro/commit/ac3bf2cbdd6a63d92812b07b194b0b35269a040f))
|
|
37
|
+
* **oauth:** allow configured identity provider form redirects ([#150](https://github.com/oaslananka/ssh-mcp-pro/issues/150)) ([d78c067](https://github.com/oaslananka/ssh-mcp-pro/commit/d78c0676df29066e903bc53d2244944e6d82f819))
|
|
38
|
+
* **oauth:** prevent Chromium form redirects and restore enrollment tokens ([#179](https://github.com/oaslananka/ssh-mcp-pro/issues/179)) ([19f337c](https://github.com/oaslananka/ssh-mcp-pro/commit/19f337c9161e5496313349c66317586676cbb910))
|
|
39
|
+
* **oauth:** use registered Google callback for dashboard and MCP ([#178](https://github.com/oaslananka/ssh-mcp-pro/issues/178)) ([638d3f5](https://github.com/oaslananka/ssh-mcp-pro/commit/638d3f55ba4bb462c518a3fa8af3a4262c294414))
|
|
40
|
+
* **release:** add provenance-verified v1.3.0 asset recovery ([#126](https://github.com/oaslananka/ssh-mcp-pro/issues/126)) ([42254ec](https://github.com/oaslananka/ssh-mcp-pro/commit/42254ec23e50afa75cbd0fd467898fc93ab403f8))
|
|
41
|
+
* **release:** classify pinned legacy SSE migration bridge as advisory ([#123](https://github.com/oaslananka/ssh-mcp-pro/issues/123)) ([f262e93](https://github.com/oaslananka/ssh-mcp-pro/commit/f262e93c10465a96a002ee27c8dd77e69ad62dcb))
|
|
42
|
+
* **release:** sync Gemini connector version metadata ([#141](https://github.com/oaslananka/ssh-mcp-pro/issues/141)) ([feada05](https://github.com/oaslananka/ssh-mcp-pro/commit/feada051b38b7825a2142a0c8c78eae1b37e17f1))
|
|
43
|
+
* **remote:** advertise HSTS for HTTPS endpoints ([#155](https://github.com/oaslananka/ssh-mcp-pro/issues/155)) ([1c8baac](https://github.com/oaslananka/ssh-mcp-pro/commit/1c8baacb813a1dcb441a587c7b316999517fdddb))
|
|
44
|
+
* **remote:** prune expired transient credential records ([#159](https://github.com/oaslananka/ssh-mcp-pro/issues/159)) ([a8b0dfc](https://github.com/oaslananka/ssh-mcp-pro/commit/a8b0dfc9023f7e6d31b43d1004857b6b3b4e9c44))
|
|
45
|
+
* **test:** bind SSH fixture to loopback without sudo ([#133](https://github.com/oaslananka/ssh-mcp-pro/issues/133)) ([3c0a80f](https://github.com/oaslananka/ssh-mcp-pro/commit/3c0a80ffad507ab167a5ad7bc37a0ca513b478e6))
|
|
46
|
+
|
|
47
|
+
## [1.3.0](https://github.com/oaslananka/ssh-mcp-pro/compare/ssh-mcp-pro-v1.2.3...ssh-mcp-pro-v1.3.0) (2026-11-02)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
### Features
|
|
51
|
+
|
|
52
|
+
* **mcp:** support 2026 protocol on standard transports ([#121](https://github.com/oaslananka/ssh-mcp-pro/issues/121)) ([c975504](https://github.com/oaslananka/ssh-mcp-pro/commit/c975504f1b0d0e8ea270be3f87f6191e8bec1fa9))
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
### Bug Fixes
|
|
56
|
+
|
|
57
|
+
* **docker:** patch Alpine musl CVE-2026-107891 ([#98](https://github.com/oaslananka/ssh-mcp-pro/issues/98)) ([4186138](https://github.com/oaslananka/ssh-mcp-pro/commit/41861382dacfc3b25c6715b303f30d54f3c605bb))
|
|
58
|
+
* **quality:** remove stale lock helper and simplify safe string escaping ([#114](https://github.com/oaslananka/ssh-mcp-pro/issues/114)) ([d8d6c56](https://github.com/oaslananka/ssh-mcp-pro/commit/d8d6c565debc3cfbfb425ba16a71ad29e49c483c))
|
|
59
|
+
* **reliability:** report actual retry attempts and parallelize independent version checks ([#119](https://github.com/oaslananka/ssh-mcp-pro/issues/119)) ([bc64b36](https://github.com/oaslananka/ssh-mcp-pro/commit/bc64b36a33b15aa9a9ee418f4f06ccb4b87f33f0))
|
|
60
|
+
* **security:** reject unsafe Windows shim path characters ([#100](https://github.com/oaslananka/ssh-mcp-pro/issues/100)) ([083e133](https://github.com/oaslananka/ssh-mcp-pro/commit/083e133b81affb79a192ed6859f680ce0f79f478))
|
|
61
|
+
* **ssh:** apply multi-pattern Host options to every alias ([#120](https://github.com/oaslananka/ssh-mcp-pro/issues/120)) ([6d7b9f2](https://github.com/oaslananka/ssh-mcp-pro/commit/6d7b9f2a98712a18c6cb23002ed5a08152c0b02b))
|
|
62
|
+
|
|
8
63
|
## [1.2.3](https://github.com/oaslananka/ssh-mcp-pro/compare/ssh-mcp-pro-v1.2.2...ssh-mcp-pro-v1.2.3) (2026-10-09)
|
|
9
64
|
|
|
10
65
|
|
package/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
<h1 align="center">ssh-mcp-pro</h1>
|
|
2
2
|
|
|
3
|
+
<p align="center"><strong>Policy-controlled SSH automation for MCP clients</strong></p>
|
|
4
|
+
|
|
3
5
|
<p align="center">
|
|
4
6
|
<a href="https://www.npmjs.com/package/ssh-mcp-pro"><img alt="npm version" src="https://img.shields.io/npm/v/ssh-mcp-pro.svg" /></a>
|
|
5
7
|
<a href="https://www.npmjs.com/package/ssh-mcp-pro"><img alt="npm downloads" src="https://img.shields.io/npm/dt/ssh-mcp-pro.svg" /></a>
|
|
@@ -8,6 +10,12 @@
|
|
|
8
10
|
<a href="https://oaslananka.github.io/ssh-mcp-pro/"><img alt="API Docs" src="https://github.com/oaslananka/ssh-mcp-pro/actions/workflows/docs.yml/badge.svg" /></a>
|
|
9
11
|
</p>
|
|
10
12
|
|
|
13
|
+
<p align="center">
|
|
14
|
+
<a href="https://gitgem.org/github/oaslananka/ssh-mcp-pro"><img alt="GitGem" src="https://gitgem.org/api/badge/github/oaslananka/ssh-mcp-pro.svg" /></a>
|
|
15
|
+
·
|
|
16
|
+
<a href="https://deepwiki.com/oaslananka/ssh-mcp-pro">Explore source on DeepWiki</a>
|
|
17
|
+
</p>
|
|
18
|
+
|
|
11
19
|
<p align="center">
|
|
12
20
|
<a href="https://www.buymeacoffee.com/oaslananka">
|
|
13
21
|
<img src="https://img.buymeacoffee.com/button-api/?text=Buy%20me%20a%20coffee&emoji=%E2%98%95&slug=oaslananka&button_colour=FFDD00&font_colour=000000&font_family=Arial&outline_colour=000000&coffee_colour=ffffff" alt="Buy me a coffee" />
|
|
@@ -25,6 +33,8 @@ ssh-mcp-pro is a secure Model Context Protocol (MCP) server for SSH automation.
|
|
|
25
33
|
|
|
26
34
|
## Installation
|
|
27
35
|
|
|
36
|
+
For Windows/Linux outbound agent connection status, rotating diagnostics and a live PowerShell log view, see [Agent Activity Monitor](docs/agent-activity-monitor.md).
|
|
37
|
+
|
|
28
38
|
Install globally with pnpm:
|
|
29
39
|
|
|
30
40
|
```bash
|
|
@@ -67,11 +77,11 @@ Generic stdio MCP config:
|
|
|
67
77
|
}
|
|
68
78
|
```
|
|
69
79
|
|
|
70
|
-
VS Code
|
|
80
|
+
VS Code workspace `.vscode/mcp.json` configuration:
|
|
71
81
|
|
|
72
82
|
```json
|
|
73
83
|
{
|
|
74
|
-
"
|
|
84
|
+
"servers": {
|
|
75
85
|
"ssh-mcp-pro": {
|
|
76
86
|
"type": "stdio",
|
|
77
87
|
"command": "ssh-mcp-pro",
|
package/dist/agent-bin.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { runAgentCli } from "./remote/agent-cli.js";
|
|
3
|
-
|
|
3
|
+
try {
|
|
4
|
+
await runAgentCli(process.argv.slice(2));
|
|
5
|
+
}
|
|
6
|
+
catch (error) {
|
|
4
7
|
const message = error instanceof Error ? error.message : String(error);
|
|
5
8
|
process.stderr.write(`${message}\n`);
|
|
6
9
|
process.exit(1);
|
|
7
|
-
}
|
|
10
|
+
}
|
|
8
11
|
//# sourceMappingURL=agent-bin.js.map
|
package/dist/agent-bin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-bin.js","sourceRoot":"","sources":["../src/agent-bin.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"agent-bin.js","sourceRoot":"","sources":["../src/agent-bin.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,IAAI,CAAC;IACH,MAAM,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3C,CAAC;AAAC,OAAO,KAAc,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
|
package/dist/cli.d.ts
CHANGED
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,GAAG,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAaD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CA8DpD;AAGD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,UAAU,EAChB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,IAAI,CAmBN"}
|
package/dist/cli.js
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
const VALUE_OPTIONS = new Map([
|
|
2
|
+
["--host", "host"],
|
|
3
|
+
["--port", "port"],
|
|
4
|
+
["--bearer-token-file", "bearerTokenFile"],
|
|
5
|
+
["--tool-profile", "toolProfile"],
|
|
6
|
+
["--connector-credential-provider", "connectorCredentialProvider"],
|
|
7
|
+
]);
|
|
1
8
|
export function parseArgs(argv) {
|
|
2
9
|
const opts = {
|
|
3
10
|
help: false,
|
|
@@ -9,11 +16,19 @@ export function parseArgs(argv) {
|
|
|
9
16
|
};
|
|
10
17
|
for (let index = 0; index < argv.length; index++) {
|
|
11
18
|
const arg = argv[index];
|
|
19
|
+
const valueOption = VALUE_OPTIONS.get(arg ?? "");
|
|
20
|
+
if (valueOption) {
|
|
21
|
+
const next = argv[index + 1];
|
|
22
|
+
if (next !== undefined) {
|
|
23
|
+
opts[valueOption] = next;
|
|
24
|
+
index++;
|
|
25
|
+
}
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
12
28
|
switch (arg) {
|
|
13
29
|
case "agent":
|
|
14
30
|
opts.agentArgs = argv.slice(index + 1);
|
|
15
|
-
|
|
16
|
-
break;
|
|
31
|
+
return opts;
|
|
17
32
|
case "http":
|
|
18
33
|
opts.transport = "http";
|
|
19
34
|
break;
|
|
@@ -38,54 +53,9 @@ export function parseArgs(argv) {
|
|
|
38
53
|
case "--transport=stdio":
|
|
39
54
|
opts.transport = "stdio";
|
|
40
55
|
break;
|
|
41
|
-
case "--host":
|
|
42
|
-
{
|
|
43
|
-
const next = argv[index + 1];
|
|
44
|
-
if (next !== undefined) {
|
|
45
|
-
opts.host = next;
|
|
46
|
-
index++;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
break;
|
|
50
|
-
case "--port":
|
|
51
|
-
{
|
|
52
|
-
const next = argv[index + 1];
|
|
53
|
-
if (next !== undefined) {
|
|
54
|
-
opts.port = next;
|
|
55
|
-
index++;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
break;
|
|
59
|
-
case "--bearer-token-file":
|
|
60
|
-
{
|
|
61
|
-
const next = argv[index + 1];
|
|
62
|
-
if (next !== undefined) {
|
|
63
|
-
opts.bearerTokenFile = next;
|
|
64
|
-
index++;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
break;
|
|
68
56
|
case "--enable-legacy-sse":
|
|
69
57
|
opts.enableLegacySse = true;
|
|
70
58
|
break;
|
|
71
|
-
case "--tool-profile":
|
|
72
|
-
{
|
|
73
|
-
const next = argv[index + 1];
|
|
74
|
-
if (next !== undefined) {
|
|
75
|
-
opts.toolProfile = next;
|
|
76
|
-
index++;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
break;
|
|
80
|
-
case "--connector-credential-provider":
|
|
81
|
-
{
|
|
82
|
-
const next = argv[index + 1];
|
|
83
|
-
if (next !== undefined) {
|
|
84
|
-
opts.connectorCredentialProvider = next;
|
|
85
|
-
index++;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
break;
|
|
89
59
|
case "--no-stdio":
|
|
90
60
|
opts.unsupportedNoStdio = true;
|
|
91
61
|
break;
|
|
@@ -96,4 +66,25 @@ export function parseArgs(argv) {
|
|
|
96
66
|
}
|
|
97
67
|
return opts;
|
|
98
68
|
}
|
|
69
|
+
// Apply HTTP CLI overrides without changing values omitted by the caller.
|
|
70
|
+
export function applyHttpCliEnvironment(opts, env = process.env) {
|
|
71
|
+
if (opts.host) {
|
|
72
|
+
env.SSH_MCP_HTTP_HOST = opts.host;
|
|
73
|
+
}
|
|
74
|
+
if (opts.port) {
|
|
75
|
+
env.SSH_MCP_HTTP_PORT = opts.port;
|
|
76
|
+
}
|
|
77
|
+
if (opts.bearerTokenFile) {
|
|
78
|
+
env.SSH_MCP_HTTP_BEARER_TOKEN_FILE = opts.bearerTokenFile;
|
|
79
|
+
}
|
|
80
|
+
if (opts.enableLegacySse) {
|
|
81
|
+
env.SSH_MCP_ENABLE_LEGACY_SSE = "true";
|
|
82
|
+
}
|
|
83
|
+
if (opts.toolProfile) {
|
|
84
|
+
env.SSH_MCP_TOOL_PROFILE = opts.toolProfile;
|
|
85
|
+
}
|
|
86
|
+
if (opts.connectorCredentialProvider) {
|
|
87
|
+
env.SSH_MCP_CONNECTOR_CREDENTIAL_PROVIDER = opts.connectorCredentialProvider;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
99
90
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,SAAS,CAAC,IAAc;IACtC,MAAM,IAAI,GAAe;QACvB,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,OAAO;QAClB,eAAe,EAAE,KAAK;QACtB,kBAAkB,EAAE,KAAK;KAC1B,CAAC;IAEF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,OAAO;gBACV,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBACvC,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-security-env.d.ts","sourceRoot":"","sources":["../src/config-security-env.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiGhD,kFAAkF;AAClF,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CA4BzE"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { loadPolicyFile, parseBoolean, parseHostKeyPolicy, parseList } from "./config-parsers.js";
|
|
2
|
+
/** Prefer non-empty environment lists, otherwise retain file/default policy lists. */
|
|
3
|
+
function resolvePolicyList(value, fallback) {
|
|
4
|
+
const parsed = parseList(value);
|
|
5
|
+
return parsed.length ? parsed : fallback;
|
|
6
|
+
}
|
|
7
|
+
/** Keep ordinary allow/deny path and host lists independent from tunnel policy. */
|
|
8
|
+
function resolveGeneralPolicyLists(config, filePolicy) {
|
|
9
|
+
return {
|
|
10
|
+
allowedHosts: resolvePolicyList(process.env.SSH_MCP_ALLOWED_HOSTS, filePolicy.allowedHosts ?? config.policy.allowedHosts),
|
|
11
|
+
commandAllow: resolvePolicyList(process.env.SSH_MCP_COMMAND_ALLOW, filePolicy.commandAllow ?? config.policy.commandAllow),
|
|
12
|
+
commandDeny: resolvePolicyList(process.env.SSH_MCP_COMMAND_DENY, filePolicy.commandDeny ?? config.policy.commandDeny),
|
|
13
|
+
pathAllowPrefixes: resolvePolicyList(process.env.SSH_MCP_PATH_ALLOW_PREFIXES, filePolicy.pathAllowPrefixes ?? config.policy.pathAllowPrefixes),
|
|
14
|
+
pathDenyPrefixes: resolvePolicyList(process.env.SSH_MCP_PATH_DENY_PREFIXES, filePolicy.pathDenyPrefixes ?? config.policy.pathDenyPrefixes),
|
|
15
|
+
localPathAllowPrefixes: resolvePolicyList(process.env.SSH_MCP_LOCAL_PATH_ALLOW_PREFIXES, filePolicy.localPathAllowPrefixes ?? config.policy.localPathAllowPrefixes),
|
|
16
|
+
localPathDenyPrefixes: resolvePolicyList(process.env.SSH_MCP_LOCAL_PATH_DENY_PREFIXES, filePolicy.localPathDenyPrefixes ?? config.policy.localPathDenyPrefixes),
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
function resolveTunnelPolicyLists(config, filePolicy) {
|
|
20
|
+
return {
|
|
21
|
+
tunnelAllowBindHosts: resolvePolicyList(process.env.SSH_MCP_TUNNEL_ALLOW_BIND_HOSTS, filePolicy.tunnelAllowBindHosts ?? config.policy.tunnelAllowBindHosts),
|
|
22
|
+
tunnelDenyBindHosts: resolvePolicyList(process.env.SSH_MCP_TUNNEL_DENY_BIND_HOSTS, filePolicy.tunnelDenyBindHosts ?? config.policy.tunnelDenyBindHosts),
|
|
23
|
+
tunnelAllowRemoteHosts: resolvePolicyList(process.env.SSH_MCP_TUNNEL_ALLOW_REMOTE_HOSTS, filePolicy.tunnelAllowRemoteHosts ?? config.policy.tunnelAllowRemoteHosts),
|
|
24
|
+
tunnelDenyRemoteHosts: resolvePolicyList(process.env.SSH_MCP_TUNNEL_DENY_REMOTE_HOSTS, filePolicy.tunnelDenyRemoteHosts ?? config.policy.tunnelDenyRemoteHosts),
|
|
25
|
+
tunnelAllowPorts: resolvePolicyList(process.env.SSH_MCP_TUNNEL_ALLOW_PORTS, filePolicy.tunnelAllowPorts ?? config.policy.tunnelAllowPorts),
|
|
26
|
+
tunnelDenyPorts: resolvePolicyList(process.env.SSH_MCP_TUNNEL_DENY_PORTS, filePolicy.tunnelDenyPorts ?? config.policy.tunnelDenyPorts),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/** Preserve host-key migration precedence and root-login policy coupling. */
|
|
30
|
+
function applyHostKeyEnvironment(config) {
|
|
31
|
+
const strictHostKeyChecking = process.env.STRICT_HOST_KEY_CHECKING ?? process.env.SSH_MCP_STRICT_HOST_KEY;
|
|
32
|
+
if (strictHostKeyChecking !== undefined) {
|
|
33
|
+
config.security.hostKeyPolicy = parseBoolean(strictHostKeyChecking, true)
|
|
34
|
+
? "strict"
|
|
35
|
+
: "insecure";
|
|
36
|
+
}
|
|
37
|
+
config.security.hostKeyPolicy = parseHostKeyPolicy(process.env.SSH_MCP_HOST_KEY_POLICY, config.security.hostKeyPolicy);
|
|
38
|
+
config.security.knownHostsPath =
|
|
39
|
+
process.env.KNOWN_HOSTS_PATH ??
|
|
40
|
+
process.env.SSH_MCP_KNOWN_HOSTS_PATH ??
|
|
41
|
+
config.security.knownHostsPath;
|
|
42
|
+
config.security.allowRootLogin = parseBoolean(process.env.SSH_MCP_ALLOW_ROOT_LOGIN, config.security.allowRootLogin);
|
|
43
|
+
config.security.allowedCiphers = parseList(process.env.SSH_MCP_ALLOWED_CIPHERS);
|
|
44
|
+
}
|
|
45
|
+
/** Apply security and policy environment values before programmatic overrides. */
|
|
46
|
+
export function applySecurityPolicyEnvironment(config) {
|
|
47
|
+
applyHostKeyEnvironment(config);
|
|
48
|
+
const filePolicy = loadPolicyFile(process.env.SSH_MCP_POLICY_FILE);
|
|
49
|
+
config.policy = {
|
|
50
|
+
...config.policy,
|
|
51
|
+
...filePolicy,
|
|
52
|
+
mode: process.env.SSH_MCP_POLICY_MODE === "explain"
|
|
53
|
+
? "explain"
|
|
54
|
+
: (filePolicy.mode ?? config.policy.mode),
|
|
55
|
+
allowRootLogin: config.security.allowRootLogin,
|
|
56
|
+
allowRawSudo: parseBoolean(process.env.SSH_MCP_ALLOW_RAW_SUDO, filePolicy.allowRawSudo ?? config.policy.allowRawSudo),
|
|
57
|
+
allowDestructiveCommands: parseBoolean(process.env.SSH_MCP_ALLOW_DESTRUCTIVE_COMMANDS, filePolicy.allowDestructiveCommands ?? config.policy.allowDestructiveCommands),
|
|
58
|
+
allowDestructiveFs: parseBoolean(process.env.SSH_MCP_ALLOW_DESTRUCTIVE_FS, filePolicy.allowDestructiveFs ?? config.policy.allowDestructiveFs),
|
|
59
|
+
...resolveGeneralPolicyLists(config, filePolicy),
|
|
60
|
+
...resolveTunnelPolicyLists(config, filePolicy),
|
|
61
|
+
};
|
|
62
|
+
config.policy.allowRootLogin = config.security.allowRootLogin;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=config-security-env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-security-env.js","sourceRoot":"","sources":["../src/config-security-env.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { type ConnectorCredentialProvider } from "./config-parsers.js";
|
|
2
2
|
/** @deprecated Import from config-parsers.js directly */
|
|
3
|
-
export { CONNECTOR_CREDENTIAL_PROVIDERS };
|
|
3
|
+
export { CONNECTOR_CREDENTIAL_PROVIDERS } from "./config-parsers.js";
|
|
4
4
|
import { type ToolProfile } from "./connector-profile.js";
|
|
5
5
|
import type { PolicyConfig } from "./policy.js";
|
|
6
6
|
import type { HostKeyPolicy } from "./types.js";
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as os from "node:os";
|
|
2
2
|
import * as path from "node:path";
|
|
3
3
|
import { logger } from "./logging.js";
|
|
4
|
-
import {
|
|
4
|
+
import { applySecurityPolicyEnvironment } from "./config-security-env.js";
|
|
5
|
+
import { parseBoolean, parseInteger, parseList, parseAuthMode, parseCredentialProvider, checkDeprecatedEnvVars, } from "./config-parsers.js";
|
|
5
6
|
/** @deprecated Import from config-parsers.js directly */
|
|
6
|
-
export { CONNECTOR_CREDENTIAL_PROVIDERS };
|
|
7
|
+
export { CONNECTOR_CREDENTIAL_PROVIDERS } from "./config-parsers.js";
|
|
7
8
|
import { parseToolProfile } from "./connector-profile.js";
|
|
8
9
|
export const DEFAULT_CONFIG = {
|
|
9
10
|
maxSessions: 20,
|
|
@@ -114,71 +115,7 @@ export class ConfigManager {
|
|
|
114
115
|
config.rateLimit.perSession.maxRequests = parseInteger(process.env.SSH_MCP_RATE_LIMIT_PER_SESSION_MAX, config.rateLimit.perSession.maxRequests);
|
|
115
116
|
config.rateLimit.perSession.windowMs = parseInteger(process.env.SSH_MCP_RATE_LIMIT_PER_SESSION_WINDOW_MS, config.rateLimit.perSession.windowMs);
|
|
116
117
|
config.rateLimit.windowMs = parseInteger(process.env.SSH_MCP_RATE_LIMIT_WINDOW_MS, config.rateLimit.windowMs);
|
|
117
|
-
|
|
118
|
-
if (strictHostKeyChecking !== undefined) {
|
|
119
|
-
config.security.hostKeyPolicy = parseBoolean(strictHostKeyChecking, true)
|
|
120
|
-
? "strict"
|
|
121
|
-
: "insecure";
|
|
122
|
-
}
|
|
123
|
-
config.security.hostKeyPolicy = parseHostKeyPolicy(process.env.SSH_MCP_HOST_KEY_POLICY, config.security.hostKeyPolicy);
|
|
124
|
-
config.security.knownHostsPath =
|
|
125
|
-
process.env.KNOWN_HOSTS_PATH ??
|
|
126
|
-
process.env.SSH_MCP_KNOWN_HOSTS_PATH ??
|
|
127
|
-
config.security.knownHostsPath;
|
|
128
|
-
config.security.allowRootLogin = parseBoolean(process.env.SSH_MCP_ALLOW_ROOT_LOGIN, config.security.allowRootLogin);
|
|
129
|
-
config.security.allowedCiphers = parseList(process.env.SSH_MCP_ALLOWED_CIPHERS);
|
|
130
|
-
const filePolicy = loadPolicyFile(process.env.SSH_MCP_POLICY_FILE);
|
|
131
|
-
config.policy = {
|
|
132
|
-
...config.policy,
|
|
133
|
-
...filePolicy,
|
|
134
|
-
mode: process.env.SSH_MCP_POLICY_MODE === "explain"
|
|
135
|
-
? "explain"
|
|
136
|
-
: (filePolicy.mode ?? config.policy.mode),
|
|
137
|
-
allowRootLogin: config.security.allowRootLogin,
|
|
138
|
-
allowRawSudo: parseBoolean(process.env.SSH_MCP_ALLOW_RAW_SUDO, filePolicy.allowRawSudo ?? config.policy.allowRawSudo),
|
|
139
|
-
allowDestructiveCommands: parseBoolean(process.env.SSH_MCP_ALLOW_DESTRUCTIVE_COMMANDS, filePolicy.allowDestructiveCommands ?? config.policy.allowDestructiveCommands),
|
|
140
|
-
allowDestructiveFs: parseBoolean(process.env.SSH_MCP_ALLOW_DESTRUCTIVE_FS, filePolicy.allowDestructiveFs ?? config.policy.allowDestructiveFs),
|
|
141
|
-
allowedHosts: parseList(process.env.SSH_MCP_ALLOWED_HOSTS).length
|
|
142
|
-
? parseList(process.env.SSH_MCP_ALLOWED_HOSTS)
|
|
143
|
-
: (filePolicy.allowedHosts ?? config.policy.allowedHosts),
|
|
144
|
-
commandAllow: parseList(process.env.SSH_MCP_COMMAND_ALLOW).length
|
|
145
|
-
? parseList(process.env.SSH_MCP_COMMAND_ALLOW)
|
|
146
|
-
: (filePolicy.commandAllow ?? config.policy.commandAllow),
|
|
147
|
-
commandDeny: parseList(process.env.SSH_MCP_COMMAND_DENY).length
|
|
148
|
-
? parseList(process.env.SSH_MCP_COMMAND_DENY)
|
|
149
|
-
: (filePolicy.commandDeny ?? config.policy.commandDeny),
|
|
150
|
-
pathAllowPrefixes: parseList(process.env.SSH_MCP_PATH_ALLOW_PREFIXES).length
|
|
151
|
-
? parseList(process.env.SSH_MCP_PATH_ALLOW_PREFIXES)
|
|
152
|
-
: (filePolicy.pathAllowPrefixes ?? config.policy.pathAllowPrefixes),
|
|
153
|
-
pathDenyPrefixes: parseList(process.env.SSH_MCP_PATH_DENY_PREFIXES).length
|
|
154
|
-
? parseList(process.env.SSH_MCP_PATH_DENY_PREFIXES)
|
|
155
|
-
: (filePolicy.pathDenyPrefixes ?? config.policy.pathDenyPrefixes),
|
|
156
|
-
localPathAllowPrefixes: parseList(process.env.SSH_MCP_LOCAL_PATH_ALLOW_PREFIXES).length
|
|
157
|
-
? parseList(process.env.SSH_MCP_LOCAL_PATH_ALLOW_PREFIXES)
|
|
158
|
-
: (filePolicy.localPathAllowPrefixes ?? config.policy.localPathAllowPrefixes),
|
|
159
|
-
localPathDenyPrefixes: parseList(process.env.SSH_MCP_LOCAL_PATH_DENY_PREFIXES).length
|
|
160
|
-
? parseList(process.env.SSH_MCP_LOCAL_PATH_DENY_PREFIXES)
|
|
161
|
-
: (filePolicy.localPathDenyPrefixes ?? config.policy.localPathDenyPrefixes),
|
|
162
|
-
tunnelAllowBindHosts: parseList(process.env.SSH_MCP_TUNNEL_ALLOW_BIND_HOSTS).length
|
|
163
|
-
? parseList(process.env.SSH_MCP_TUNNEL_ALLOW_BIND_HOSTS)
|
|
164
|
-
: (filePolicy.tunnelAllowBindHosts ?? config.policy.tunnelAllowBindHosts),
|
|
165
|
-
tunnelDenyBindHosts: parseList(process.env.SSH_MCP_TUNNEL_DENY_BIND_HOSTS).length
|
|
166
|
-
? parseList(process.env.SSH_MCP_TUNNEL_DENY_BIND_HOSTS)
|
|
167
|
-
: (filePolicy.tunnelDenyBindHosts ?? config.policy.tunnelDenyBindHosts),
|
|
168
|
-
tunnelAllowRemoteHosts: parseList(process.env.SSH_MCP_TUNNEL_ALLOW_REMOTE_HOSTS).length
|
|
169
|
-
? parseList(process.env.SSH_MCP_TUNNEL_ALLOW_REMOTE_HOSTS)
|
|
170
|
-
: (filePolicy.tunnelAllowRemoteHosts ?? config.policy.tunnelAllowRemoteHosts),
|
|
171
|
-
tunnelDenyRemoteHosts: parseList(process.env.SSH_MCP_TUNNEL_DENY_REMOTE_HOSTS).length
|
|
172
|
-
? parseList(process.env.SSH_MCP_TUNNEL_DENY_REMOTE_HOSTS)
|
|
173
|
-
: (filePolicy.tunnelDenyRemoteHosts ?? config.policy.tunnelDenyRemoteHosts),
|
|
174
|
-
tunnelAllowPorts: parseList(process.env.SSH_MCP_TUNNEL_ALLOW_PORTS).length
|
|
175
|
-
? parseList(process.env.SSH_MCP_TUNNEL_ALLOW_PORTS)
|
|
176
|
-
: (filePolicy.tunnelAllowPorts ?? config.policy.tunnelAllowPorts),
|
|
177
|
-
tunnelDenyPorts: parseList(process.env.SSH_MCP_TUNNEL_DENY_PORTS).length
|
|
178
|
-
? parseList(process.env.SSH_MCP_TUNNEL_DENY_PORTS)
|
|
179
|
-
: (filePolicy.tunnelDenyPorts ?? config.policy.tunnelDenyPorts),
|
|
180
|
-
};
|
|
181
|
-
config.policy.allowRootLogin = config.security.allowRootLogin;
|
|
118
|
+
applySecurityPolicyEnvironment(config);
|
|
182
119
|
const bearerTokenFile = process.env.SSH_MCP_HTTP_BEARER_TOKEN_FILE ?? config.http.bearerTokenFile;
|
|
183
120
|
const publicUrl = process.env.SSH_MCP_HTTP_PUBLIC_URL ?? config.http.publicUrl;
|
|
184
121
|
config.http = {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,aAAa,EACb,uBAAuB,EACvB,sBAAsB,GAEvB,MAAM,qBAAqB,CAAC;AAE7B,yDAAyD;AACzD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAoB,MAAM,wBAAwB,CAAC;AAkF5E,MAAM,CAAC,MAAM,cAAc,GAAiB;IAC1C,WAAW,EAAE,EAAE;IACf,YAAY,EAAE,MAAM,EAAE,aAAa;IACnC,iBAAiB,EAAE,KAAK,EAAE,aAAa;IACvC,gBAAgB,EAAE,KAAK,EAAE,aAAa;IACtC,qBAAqB,EAAE,IAAI,GAAG,IAAI,EAAE,MAAM;IAC1C,eAAe,EAAE,IAAI;IACrB,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO;IACtC,iBAAiB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO;IAC5C,gBAAgB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO;IAC3C,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,GAAG;QAChB,QAAQ,EAAE,KAAK;QACf,UAAU,EAAE;YACV,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,EAAE;YACf,QAAQ,EAAE,KAAK;SAChB;KACF;IACD,QAAQ,EAAE;QACR,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,aAAa,CAAC;QAC9D,cAAc,EAAE,EAAE;KACnB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,SAAS;QACf,cAAc,EAAE,KAAK;QACrB,YAAY,EAAE,KAAK;QACnB,wBAAwB,EAAE,KAAK;QAC/B,kBAAkB,EAAE,KAAK;QACzB,YAAY,EAAE,EAAE;QAChB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE,EAAE;QACf,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1D,gBAAgB,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;QAC1F,sBAAsB,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC;QACrC,qBAAqB,EAAE,EAAE;QACzB,oBAAoB,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC;QACvD,mBAAmB,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC;QACtC,sBAAsB,EAAE,EAAE;QAC1B,qBAAqB,EAAE,EAAE;QACzB,gBAAgB,EAAE,EAAE;QACpB,eAAe,EAAE,EAAE;KACpB;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,IAAI;QACV,cAAc,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;QACxD,eAAe,EAAE,KAAK;QACtB,mBAAmB,EAAE,IAAI,GAAG,IAAI;QAChC,WAAW,EAAE,EAAE;QACf,gBAAgB,EAAE,OAAO;QACzB,UAAU,EAAE,KAAK;KAClB;IACD,SAAS,EAAE;QACT,WAAW,EAAE,MAAM;QACnB,kBAAkB,EAAE,MAAM;QAC1B,qBAAqB,EAAE,EAAE;QACzB,0BAA0B,EAAE,IAAI;KACjC;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,mBAAmB,EAAE,CAAC,kBAAkB,CAAC;QACzC,sBAAsB,EAAE,EAAE;KAC3B;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,aAAa;IAChB,MAAM,CAAe;IAE7B,YAAY,YAAmC,EAAE;QAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACzC,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAChE,CAAC;IAEO,UAAU,CAAC,SAAgC;QACjD,sBAAsB;QACtB,MAAM,MAAM,GAAiB;YAC3B,GAAG,cAAc;YACjB,SAAS,EAAE;gBACT,GAAG,cAAc,CAAC,SAAS;gBAC3B,UAAU,EAAE,EAAE,GAAG,cAAc,CAAC,SAAS,CAAC,UAAU,EAAE;aACvD;YACD,QAAQ,EAAE;gBACR,GAAG,cAAc,CAAC,QAAQ;gBAC1B,cAAc,EAAE,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC;aAC5D;SACF,CAAC;QAEF,sDAAsD;QACtD,sBAAsB,EAAE,CAAC;QAEzB,uCAAuC;QACvC,MAAM,CAAC,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACxF,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QACzF,MAAM,CAAC,gBAAgB,GAAG,YAAY,CACpC,OAAO,CAAC,GAAG,CAAC,uBAAuB,EACnC,MAAM,CAAC,gBAAgB,CACxB,CAAC;QACF,MAAM,CAAC,qBAAqB,GAAG,YAAY,CACzC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAC5C,MAAM,CAAC,qBAAqB,CAC7B,CAAC;QACF,MAAM,CAAC,eAAe,GAAG,YAAY,CACnC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EACrC,MAAM,CAAC,eAAe,CACvB,CAAC;QACF,MAAM,CAAC,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACzF,MAAM,CAAC,iBAAiB,GAAG,YAAY,CACrC,OAAO,CAAC,GAAG,CAAC,4BAA4B,EACxC,MAAM,CAAC,iBAAiB,CACzB,CAAC;QACF,MAAM,CAAC,gBAAgB,GAAG,YAAY,CACpC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EACtC,MAAM,CAAC,gBAAgB,CACxB,CAAC;QACF,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACrE,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,YAAY,CACrC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAC9B,MAAM,CAAC,SAAS,CAAC,OAAO,CACzB,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,WAAW,GAAG,YAAY,CACzC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAClC,MAAM,CAAC,SAAS,CAAC,WAAW,CAC7B,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,GAAG,YAAY,CAChD,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAC1C,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,OAAO,CACpC,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,GAAG,YAAY,CACpD,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAC9C,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CACxC,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,GAAG,YAAY,CACjD,OAAO,CAAC,GAAG,CAAC,wCAAwC,EACpD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CACrC,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,YAAY,CACtC,OAAO,CAAC,GAAG,CAAC,4BAA4B,EACxC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAC1B,CAAC;QAEF,8BAA8B,CAAC,MAAM,CAAC,CAAC;QAEvC,MAAM,eAAe,GACnB,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;QAC5E,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QAC/E,MAAM,CAAC,IAAI,GAAG;YACZ,GAAG,MAAM,CAAC,IAAI;YACd,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI;YACvD,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;YACvF,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,MAAM;gBACxE,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;gBACrD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc;YAC9B,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,eAAe,EAAE,YAAY,CAC3B,OAAO,CAAC,GAAG,CAAC,yBAAyB,EACrC,MAAM,CAAC,IAAI,CAAC,eAAe,CAC5B;YACD,mBAAmB,EAAE,YAAY,CAC/B,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAC/C,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAChC;YACD,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;YACzF,gBAAgB,EAAE,YAAY,CAC5B,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAC5C,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAC7B;YACD,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YACtF,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpC,CAAC;QAEF,MAAM,0BAA0B,GAC9B,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAAI,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC;QACzF,MAAM,wBAAwB,GAC5B,OAAO,CAAC,GAAG,CAAC,kCAAkC,IAAI,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC;QACrF,MAAM,CAAC,SAAS,GAAG;YACjB,GAAG,MAAM,CAAC,SAAS;YACnB,WAAW,EAAE,gBAAgB,CAC3B,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,EACzE,MAAM,CAAC,SAAS,CAAC,WAAW,CAC7B;YACD,kBAAkB,EAAE,uBAAuB,CACzC,OAAO,CAAC,GAAG,CAAC,qCAAqC,EACjD,MAAM,CAAC,SAAS,CAAC,kBAAkB,CACpC;YACD,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,qBAAqB,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC,MAAM;gBAC5F,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC;gBAClE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,qBAAqB;YAC1C,0BAA0B,EAAE,YAAY,CACtC,OAAO,CAAC,GAAG,CAAC,+CAA+C,EAC3D,MAAM,CAAC,SAAS,CAAC,0BAA0B,CAC5C;YACD,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnF,CAAC;QAEF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAChF,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QACtF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;QACpF,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QACtF,MAAM,CAAC,IAAI,GAAG;YACZ,GAAG,MAAM,CAAC,IAAI;YACd,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;YACzE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,mBAAmB,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,MAAM;gBAC9E,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;gBACtD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB;YACnC,sBAAsB,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,MAAM;gBACpF,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC;gBACzD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB;SACvC,CAAC;QAEF,oCAAoC;QACpC,MAAM,QAAQ,GAAG;YACf,GAAG,MAAM,CAAC,QAAQ;YAClB,GAAG,SAAS,CAAC,QAAQ;YACrB,cAAc,EAAE,SAAS,CAAC,QAAQ,EAAE,cAAc,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;SAC1F,CAAC;QACF,MAAM,MAAM,GAAG;YACb,GAAG,MAAM,CAAC,MAAM;YAChB,GAAG,SAAS,CAAC,MAAM;YACnB,cAAc,EAAE,SAAS,CAAC,MAAM,EAAE,cAAc,IAAI,QAAQ,CAAC,cAAc;YAC3E,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAC/E,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAC/E,WAAW,EAAE,SAAS,CAAC,MAAM,EAAE,WAAW,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;YAC5E,iBAAiB,EAAE,SAAS,CAAC,MAAM,EAAE,iBAAiB,IAAI;gBACxD,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB;aACnC;YACD,gBAAgB,EAAE,SAAS,CAAC,MAAM,EAAE,gBAAgB,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAC3F,sBAAsB,EAAE,SAAS,CAAC,MAAM,EAAE,sBAAsB,IAAI;gBAClE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC;aAChD;YACD,qBAAqB,EAAE,SAAS,CAAC,MAAM,EAAE,qBAAqB,IAAI;gBAChE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC;aAC/C;YACD,oBAAoB,EAAE,SAAS,CAAC,MAAM,EAAE,oBAAoB,IAAI;gBAC9D,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,IAAI,EAAE,CAAC;aAC9C;YACD,mBAAmB,EAAE,SAAS,CAAC,MAAM,EAAE,mBAAmB,IAAI;gBAC5D,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC;aAC7C;YACD,sBAAsB,EAAE,SAAS,CAAC,MAAM,EAAE,sBAAsB,IAAI;gBAClE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC;aAChD;YACD,qBAAqB,EAAE,SAAS,CAAC,MAAM,EAAE,qBAAqB,IAAI;gBAChE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC;aAC/C;YACD,gBAAgB,EAAE,SAAS,CAAC,MAAM,EAAE,gBAAgB,IAAI;gBACtD,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC;aAC1C;YACD,eAAe,EAAE,SAAS,CAAC,MAAM,EAAE,eAAe,IAAI;gBACpD,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;aACzC;SACF,CAAC;QAEF,MAAM,SAAS,GAAG;YAChB,GAAG,MAAM,CAAC,SAAS;YACnB,GAAG,SAAS,CAAC,SAAS;YACtB,UAAU,EAAE;gBACV,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU;gBAC9B,GAAG,SAAS,CAAC,SAAS,EAAE,UAAU;aACnC;SACF,CAAC;QAEF,OAAO;YACL,GAAG,MAAM;YACT,GAAG,SAAS;YACZ,SAAS;YACT,QAAQ;YACR,MAAM;YACN,IAAI,EAAE;gBACJ,GAAG,MAAM,CAAC,IAAI;gBACd,GAAG,SAAS,CAAC,IAAI;gBACjB,cAAc,EAAE,SAAS,CAAC,IAAI,EAAE,cAAc,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;aAClF;YACD,SAAS,EAAE;gBACT,GAAG,MAAM,CAAC,SAAS;gBACnB,GAAG,SAAS,CAAC,SAAS;gBACtB,qBAAqB,EAAE,SAAS,CAAC,SAAS,EAAE,qBAAqB,IAAI;oBACnE,GAAG,MAAM,CAAC,SAAS,CAAC,qBAAqB;iBAC1C;aACF;YACD,IAAI,EAAE;gBACJ,GAAG,MAAM,CAAC,IAAI;gBACd,GAAG,SAAS,CAAC,IAAI;gBACjB,mBAAmB,EAAE,SAAS,CAAC,IAAI,EAAE,mBAAmB,IAAI;oBAC1D,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB;iBACnC;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,GAAG,CAA+B,GAAM;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,GAAG,IAAI,CAAC,MAAM;YACd,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;gBACvB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS;gBACxB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;aACnE,CAAC;YACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtB,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ;gBACvB,cAAc,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;aACzD,CAAC;YACF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;gBACpB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;gBAClD,YAAY,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;gBAClD,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;gBAChD,iBAAiB,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC;gBAC5D,gBAAgB,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;gBAC1D,sBAAsB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;gBAC9E,qBAAqB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;gBAC5E,oBAAoB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;gBAC1E,mBAAmB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;gBACxE,sBAAsB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;gBAC9E,qBAAqB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;gBAC5E,gBAAgB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;gBAClE,eAAe,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;aACjE,CAAC;YACF,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;gBACnB,cAAc,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;aACrD,CAAC;YACF,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;gBACvB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS;gBACxB,qBAAqB,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,qBAAqB,CAAC;aACxE,CAAC;YACF,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;gBACnB,mBAAmB,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC;aAC/D,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAA8B;QACnC,MAAM,QAAQ,GAAG;YACf,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ;YACvB,GAAG,OAAO,CAAC,QAAQ;YACnB,cAAc,EAAE,OAAO,CAAC,QAAQ,EAAE,cAAc,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC;SAC7F,CAAC;QACF,MAAM,MAAM,GAAG;YACb,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;YACrB,GAAG,OAAO,CAAC,MAAM;YACjB,cAAc,EAAE,OAAO,CAAC,MAAM,EAAE,cAAc,IAAI,QAAQ,CAAC,cAAc;YACzE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAClF,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YAClF,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;YAC/E,iBAAiB,EAAE,OAAO,CAAC,MAAM,EAAE,iBAAiB,IAAI;gBACtD,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB;aACxC;YACD,gBAAgB,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,IAAI;gBACpD,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB;aACvC;YACD,sBAAsB,EAAE,OAAO,CAAC,MAAM,EAAE,sBAAsB,IAAI;gBAChE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC;aACrD;YACD,qBAAqB,EAAE,OAAO,CAAC,MAAM,EAAE,qBAAqB,IAAI;gBAC9D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC;aACpD;YACD,oBAAoB,EAAE,OAAO,CAAC,MAAM,EAAE,oBAAoB,IAAI;gBAC5D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,IAAI,EAAE,CAAC;aACnD;YACD,mBAAmB,EAAE,OAAO,CAAC,MAAM,EAAE,mBAAmB,IAAI;gBAC1D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC;aAClD;YACD,sBAAsB,EAAE,OAAO,CAAC,MAAM,EAAE,sBAAsB,IAAI;gBAChE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC;aACrD;YACD,qBAAqB,EAAE,OAAO,CAAC,MAAM,EAAE,qBAAqB,IAAI;gBAC9D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,IAAI,EAAE,CAAC;aACpD;YACD,gBAAgB,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,IAAI;gBACpD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC;aAC/C;YACD,eAAe,EAAE,OAAO,CAAC,MAAM,EAAE,eAAe,IAAI;gBAClD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;aAC9C;SACF,CAAC;QAEF,MAAM,SAAS,GAAG;YAChB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS;YACxB,GAAG,OAAO,CAAC,SAAS;YACpB,UAAU,EAAE;gBACV,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU;gBACnC,GAAG,OAAO,CAAC,SAAS,EAAE,UAAU;aACjC;SACF,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,IAAI,CAAC,MAAM;YACd,GAAG,OAAO;YACV,SAAS;YACT,QAAQ;YACR,MAAM;YACN,IAAI,EAAE;gBACJ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;gBACnB,GAAG,OAAO,CAAC,IAAI;gBACf,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,cAAc,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;aACrF;YACD,SAAS,EAAE;gBACT,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS;gBACxB,GAAG,OAAO,CAAC,SAAS;gBACpB,qBAAqB,EAAE,OAAO,CAAC,SAAS,EAAE,qBAAqB,IAAI;oBACjE,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,qBAAqB;iBAC/C;aACF;YACD,IAAI,EAAE;gBACJ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;gBACnB,GAAG,OAAO,CAAC,IAAI;gBACf,mBAAmB,EAAE,OAAO,CAAC,IAAI,EAAE,mBAAmB,IAAI;oBACxD,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB;iBACxC;aACF;SACF,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACpD,CAAC;CACF"}
|
|
@@ -14,7 +14,7 @@ export interface MCPPromptDefinition {
|
|
|
14
14
|
required?: boolean;
|
|
15
15
|
}>;
|
|
16
16
|
}
|
|
17
|
-
import type { Tool } from "@modelcontextprotocol/
|
|
17
|
+
import type { Tool } from "@modelcontextprotocol/server";
|
|
18
18
|
export declare const TOOL_PROFILES: readonly ["full", "remote-safe", "chatgpt", "claude", "remote-readonly", "remote-broker"];
|
|
19
19
|
export type ToolProfile = (typeof TOOL_PROFILES)[number];
|
|
20
20
|
export declare const REMOTE_SAFE_TOOL_NAMES: readonly ["connector_status", "ssh_hosts_list", "ssh_policy_explain", "ssh_host_inspect", "ssh_mutation_plan"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connector-profile.d.ts","sourceRoot":"","sources":["../src/connector-profile.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC9E;AAED,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"connector-profile.d.ts","sourceRoot":"","sources":["../src/connector-profile.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC9E;AAED,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAEzD,eAAO,MAAM,aAAa,2FAOhB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAUzD,eAAO,MAAM,sBAAsB,gHAExB,CAAC;AAeZ,eAAO,MAAM,mBAAmB,aAE/B,CAAC;AACF,eAAO,MAAM,kBAAkB,aAE9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAO9D,CAAC;AAMF,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAgBpF;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,EAAE,CAOvE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,WAAW,GAAG,WAAW,CAQ9F;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAErE;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAEvF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,EAAE,CAMjF;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,WAAW,iBAKvF;AAED,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAEtF;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,WAAW,yBAK3F;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAErF"}
|
package/dist/detect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAc,MAAM,EAAuC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAc,MAAM,EAAuC,MAAM,YAAY,CAAC;AAgSrF;;GAEG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAiE5D"}
|