ssh-mcp-pro 1.4.3 → 1.5.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.
Files changed (65) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/mcp.d.ts +1 -1
  3. package/dist/mcp.js +1 -1
  4. package/dist/remote/agent-bounded-io.d.ts +20 -0
  5. package/dist/remote/agent-bounded-io.d.ts.map +1 -0
  6. package/dist/remote/agent-bounded-io.js +101 -0
  7. package/dist/remote/agent-bounded-io.js.map +1 -0
  8. package/dist/remote/agent-enrollment.d.ts +12 -0
  9. package/dist/remote/agent-enrollment.d.ts.map +1 -0
  10. package/dist/remote/agent-enrollment.js +87 -0
  11. package/dist/remote/agent-enrollment.js.map +1 -0
  12. package/dist/remote/agent-executor.d.ts.map +1 -1
  13. package/dist/remote/agent-executor.js +1 -100
  14. package/dist/remote/agent-executor.js.map +1 -1
  15. package/dist/remote/control-plane.d.ts +3 -2
  16. package/dist/remote/control-plane.d.ts.map +1 -1
  17. package/dist/remote/control-plane.js +22 -79
  18. package/dist/remote/control-plane.js.map +1 -1
  19. package/dist/remote/dashboard-enrollment-commands.d.ts +7 -0
  20. package/dist/remote/dashboard-enrollment-commands.d.ts.map +1 -0
  21. package/dist/remote/dashboard-enrollment-commands.js +15 -0
  22. package/dist/remote/dashboard-enrollment-commands.js.map +1 -0
  23. package/dist/remote/oauth-handler.d.ts +5 -0
  24. package/dist/remote/oauth-handler.d.ts.map +1 -1
  25. package/dist/remote/oauth-handler.js +110 -65
  26. package/dist/remote/oauth-handler.js.map +1 -1
  27. package/dist/remote/oauth-provider-exchange.d.ts +11 -0
  28. package/dist/remote/oauth-provider-exchange.d.ts.map +1 -0
  29. package/dist/remote/oauth-provider-exchange.js +73 -0
  30. package/dist/remote/oauth-provider-exchange.js.map +1 -0
  31. package/dist/remote/store-schema.d.ts +4 -0
  32. package/dist/remote/store-schema.d.ts.map +1 -0
  33. package/dist/remote/store-schema.js +147 -0
  34. package/dist/remote/store-schema.js.map +1 -0
  35. package/dist/remote/store.d.ts +7 -2
  36. package/dist/remote/store.d.ts.map +1 -1
  37. package/dist/remote/store.js +81 -130
  38. package/dist/remote/store.js.map +1 -1
  39. package/dist/remote/types.d.ts +13 -0
  40. package/dist/remote/types.d.ts.map +1 -1
  41. package/dist/remote/types.js.map +1 -1
  42. package/dist/remote/web-dashboard-oauth-users.d.ts.map +1 -1
  43. package/dist/remote/web-dashboard-oauth-users.js +4 -38
  44. package/dist/remote/web-dashboard-oauth-users.js.map +1 -1
  45. package/dist/remote/web-dashboard.d.ts +0 -2
  46. package/dist/remote/web-dashboard.d.ts.map +1 -1
  47. package/dist/remote/web-dashboard.js +3 -18
  48. package/dist/remote/web-dashboard.js.map +1 -1
  49. package/dist/session-auth-config.d.ts +8 -0
  50. package/dist/session-auth-config.d.ts.map +1 -0
  51. package/dist/session-auth-config.js +67 -0
  52. package/dist/session-auth-config.js.map +1 -0
  53. package/dist/session.d.ts +0 -12
  54. package/dist/session.d.ts.map +1 -1
  55. package/dist/session.js +3 -64
  56. package/dist/session.js.map +1 -1
  57. package/docs/api-overview.md +67 -0
  58. package/docs/security/hosted-data-inventory.md +3 -1
  59. package/docs/theme/favicon.svg +12 -0
  60. package/docs/theme/ssh-docs.css +670 -0
  61. package/docs/theme/ssh-docs.js +58 -0
  62. package/mcp.json +1 -1
  63. package/package.json +11 -11
  64. package/registry/ssh-mcp-pro/mcp.json +1 -1
  65. package/server.json +3 -3
package/CHANGELOG.md CHANGED
@@ -5,6 +5,13 @@ 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.5.0](https://github.com/oaslananka/ssh-mcp-pro/compare/ssh-mcp-pro-v1.4.3...ssh-mcp-pro-v1.5.0) (2026-11-10)
9
+
10
+
11
+ ### Features
12
+
13
+ * **remote:** rotating OAuth refresh tokens for persistent MCP sessions ([8b1aad8](https://github.com/oaslananka/ssh-mcp-pro/commit/8b1aad8be7fcb779a5b409e31d034e941e100ce1))
14
+
8
15
  ## [1.4.3](https://github.com/oaslananka/ssh-mcp-pro/compare/ssh-mcp-pro-v1.4.2...ssh-mcp-pro-v1.4.3) (2026-11-10)
9
16
 
10
17
 
package/dist/mcp.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { McpServer } from "@modelcontextprotocol/server";
2
2
  import type { Transport } from "@modelcontextprotocol/server";
3
3
  import type { AppContainer } from "./container.js";
4
- export declare const SERVER_VERSION = "1.4.3";
4
+ export declare const SERVER_VERSION = "1.5.0";
5
5
  export declare const SERVER_NAME = "io.github.oaslananka/ssh-mcp-pro";
6
6
  export declare class SSHMCPServer {
7
7
  private readonly container;
package/dist/mcp.js CHANGED
@@ -5,7 +5,7 @@ import { listResources, readResource } from "./resources.js";
5
5
  import { getMCPPrompt, listMCPPrompts } from "./prompts.js";
6
6
  import { withSpan } from "./telemetry.js";
7
7
  import { createToolRegistry } from "./tools/index.js";
8
- export const SERVER_VERSION = "1.4.3"; // x-release-please-version
8
+ export const SERVER_VERSION = "1.5.0"; // x-release-please-version
9
9
  export const SERVER_NAME = "io.github.oaslananka/ssh-mcp-pro";
10
10
  function getSessionIdFromArgs(args) {
11
11
  if (typeof args !== "object" || args === null || Array.isArray(args)) {
@@ -0,0 +1,20 @@
1
+ import type { FileHandle } from "node:fs/promises";
2
+ export interface OutputAccumulator {
3
+ bytes: number;
4
+ chunks: Buffer[];
5
+ truncated: boolean;
6
+ }
7
+ export declare function appendBoundedOutput(accumulator: OutputAccumulator, chunk: Buffer, maxBytes: number): void;
8
+ export declare function finalizeBoundedOutput(accumulator: OutputAccumulator, maxBytes: number): {
9
+ value: Buffer;
10
+ truncated: boolean;
11
+ };
12
+ export declare function readFileBounded(file: FileHandle, maxBytes: number): Promise<{
13
+ value: Buffer;
14
+ truncated: boolean;
15
+ }>;
16
+ export declare function readFileTailBounded(file: FileHandle, maxBytes: number, maxLines?: number): Promise<{
17
+ value: Buffer;
18
+ truncated: boolean;
19
+ }>;
20
+ //# sourceMappingURL=agent-bounded-io.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-bounded-io.d.ts","sourceRoot":"","sources":["../../src/remote/agent-bounded-io.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB;AAkCD,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,IAAI,CAcN;AAED,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,iBAAiB,EAC9B,QAAQ,EAAE,MAAM,GACf;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAMvC;AAoBD,wBAAsB,eAAe,CACnC,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAID;AAyCD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,SAAM,GACb,OAAO,CAAC;IACT,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAcD"}
@@ -0,0 +1,101 @@
1
+ function truncateBuffer(buffer, maxBytes) {
2
+ if (buffer.byteLength <= maxBytes) {
3
+ return { value: buffer, truncated: false };
4
+ }
5
+ return appendTruncationMarker(buffer, maxBytes);
6
+ }
7
+ function truncationMarker(maxBytes) {
8
+ return Buffer.from(`\n[truncated after ${maxBytes} bytes]\n`);
9
+ }
10
+ function appendTruncationMarker(buffer, maxBytes) {
11
+ if (maxBytes <= 0) {
12
+ return { value: Buffer.alloc(0), truncated: true };
13
+ }
14
+ const marker = truncationMarker(maxBytes);
15
+ if (marker.byteLength >= maxBytes) {
16
+ return { value: marker.subarray(0, maxBytes), truncated: true };
17
+ }
18
+ const payloadBytes = Math.max(0, maxBytes - marker.byteLength);
19
+ return {
20
+ value: Buffer.concat([buffer.subarray(0, payloadBytes), marker], maxBytes),
21
+ truncated: true,
22
+ };
23
+ }
24
+ export function appendBoundedOutput(accumulator, chunk, maxBytes) {
25
+ if (maxBytes <= 0) {
26
+ accumulator.truncated ||= chunk.byteLength > 0;
27
+ return;
28
+ }
29
+ const remaining = maxBytes - accumulator.bytes;
30
+ if (remaining <= 0) {
31
+ accumulator.truncated = true;
32
+ return;
33
+ }
34
+ const slice = chunk.subarray(0, remaining);
35
+ accumulator.chunks.push(slice);
36
+ accumulator.bytes += slice.byteLength;
37
+ accumulator.truncated ||= slice.byteLength !== chunk.byteLength;
38
+ }
39
+ export function finalizeBoundedOutput(accumulator, maxBytes) {
40
+ const value = Buffer.concat(accumulator.chunks, accumulator.bytes);
41
+ if (!accumulator.truncated) {
42
+ return { value, truncated: false };
43
+ }
44
+ return appendTruncationMarker(value, maxBytes);
45
+ }
46
+ async function readHandleRange(file, start, length) {
47
+ const buffer = Buffer.alloc(Math.max(0, length));
48
+ let offset = 0;
49
+ while (offset < buffer.byteLength) {
50
+ const { bytesRead } = await file.read(buffer, offset, buffer.byteLength - offset, start + offset);
51
+ if (bytesRead === 0) {
52
+ break;
53
+ }
54
+ offset += bytesRead;
55
+ }
56
+ return buffer.subarray(0, offset);
57
+ }
58
+ export async function readFileBounded(file, maxBytes) {
59
+ const cappedBytes = Math.max(0, maxBytes);
60
+ const buffer = await readHandleRange(file, 0, cappedBytes + 1);
61
+ return truncateBuffer(buffer, cappedBytes);
62
+ }
63
+ const TAIL_SCAN_CHUNK_BYTES = 64 * 1024;
64
+ const MAX_TAIL_SCAN_BYTES = 8 * 1024 * 1024;
65
+ async function findTailStart(file, size, maxLines, maxScanBytes) {
66
+ if (size <= 0 || maxLines <= 0) {
67
+ return { offset: size, scanTruncated: false };
68
+ }
69
+ let position = size;
70
+ const minimumPosition = Math.max(0, size - Math.max(0, maxScanBytes));
71
+ let includedLines = 1;
72
+ while (position > minimumPosition) {
73
+ const chunkSize = Math.min(TAIL_SCAN_CHUNK_BYTES, position - minimumPosition);
74
+ position -= chunkSize;
75
+ const chunk = await readHandleRange(file, position, chunkSize);
76
+ for (let index = chunk.byteLength - 1; index >= 0; index -= 1) {
77
+ const absoluteIndex = position + index;
78
+ if (chunk[index] !== 0x0a || absoluteIndex === size - 1) {
79
+ continue;
80
+ }
81
+ if (includedLines >= maxLines) {
82
+ return { offset: absoluteIndex + 1, scanTruncated: false };
83
+ }
84
+ includedLines += 1;
85
+ }
86
+ }
87
+ return { offset: minimumPosition, scanTruncated: minimumPosition > 0 };
88
+ }
89
+ export async function readFileTailBounded(file, maxBytes, maxLines = 100) {
90
+ const cappedBytes = Math.max(0, maxBytes);
91
+ const stats = await file.stat();
92
+ const scanBytes = Math.max(TAIL_SCAN_CHUNK_BYTES, Math.min(MAX_TAIL_SCAN_BYTES, cappedBytes * 4 + 1));
93
+ const { offset, scanTruncated } = await findTailStart(file, stats.size, maxLines, scanBytes);
94
+ const bytesToRead = Math.min(stats.size - offset, cappedBytes + 1);
95
+ const buffer = await readHandleRange(file, offset, bytesToRead);
96
+ const bounded = truncateBuffer(buffer, cappedBytes);
97
+ return scanTruncated && !bounded.truncated
98
+ ? appendTruncationMarker(bounded.value, cappedBytes)
99
+ : bounded;
100
+ }
101
+ //# sourceMappingURL=agent-bounded-io.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-bounded-io.js","sourceRoot":"","sources":["../../src/remote/agent-bounded-io.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { RemoteStore } from "./store.js";
2
+ import type { AuditEvent, RemoteAgentRecord, RemoteConfig, RemotePrincipal } from "./types.js";
3
+ /** Owns agent enrollment and user-facing installation commands, not agent connections. */
4
+ export declare class AgentEnrollmentService {
5
+ private readonly config;
6
+ private readonly store;
7
+ private readonly audit;
8
+ constructor(config: RemoteConfig, store: RemoteStore, audit: (event: Omit<AuditEvent, "id" | "createdAt">) => void);
9
+ createEnrollmentToken(principal: RemotePrincipal, args: Record<string, unknown>): Record<string, unknown>;
10
+ installCommand(agent: RemoteAgentRecord, token: string | undefined): Record<string, unknown>;
11
+ }
12
+ //# sourceMappingURL=agent-enrollment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-enrollment.d.ts","sourceRoot":"","sources":["../../src/remote/agent-enrollment.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE/F,0FAA0F;AAC1F,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAFL,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,WAAW,CAAC,KAAK,IAAI;IAG/E,qBAAqB,CACnB,SAAS,EAAE,eAAe,EAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAgD1B,cAAc,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CA0B7F"}
@@ -0,0 +1,87 @@
1
+ import { hashSecret, id, nowIso, randomToken } from "./crypto.js";
2
+ import { asString, quotePosixArg, quotePowerShellArg, safeError } from "./http-util.js";
3
+ import { createAgentPolicy } from "./policy.js";
4
+ import { hasCapability } from "./scopes.js";
5
+ /** Owns agent enrollment and user-facing installation commands, not agent connections. */
6
+ export class AgentEnrollmentService {
7
+ config;
8
+ store;
9
+ audit;
10
+ constructor(config, store, audit) {
11
+ this.config = config;
12
+ this.store = store;
13
+ this.audit = audit;
14
+ }
15
+ createEnrollmentToken(principal, args) {
16
+ if (!hasCapability(principal.capabilities, "agents.admin")) {
17
+ throw safeError("INVALID_SCOPE", "agents:admin scope is required", 403);
18
+ }
19
+ const alias = asString(args.alias)?.trim();
20
+ if (!alias) {
21
+ throw safeError("FORBIDDEN", "alias is required");
22
+ }
23
+ const profile = asString(args.requested_profile) ?? "read-only";
24
+ const policy = createAgentPolicy(profile === "operations" || profile === "full-admin" ? profile : "read-only");
25
+ const now = nowIso();
26
+ const existing = this.store.getAgentByAlias(principal.userId, alias);
27
+ if (existing && existing.status !== "revoked") {
28
+ throw safeError("FORBIDDEN", "Agent alias already exists");
29
+ }
30
+ const agent = {
31
+ id: id("agt"),
32
+ userId: principal.userId,
33
+ alias,
34
+ status: "pending",
35
+ profile: policy.profile,
36
+ policy,
37
+ policyVersion: policy.version,
38
+ createdAt: now,
39
+ updatedAt: now,
40
+ };
41
+ const token = randomToken(32);
42
+ this.store.insertAgent(agent);
43
+ this.store.insertEnrollmentToken({
44
+ id: id("enr"),
45
+ agentId: agent.id,
46
+ userId: principal.userId,
47
+ tokenHash: hashSecret(token),
48
+ expiresAt: new Date(Date.now() + this.config.enrollmentTokenTtlSeconds * 1000).toISOString(),
49
+ createdAt: now,
50
+ });
51
+ this.audit({
52
+ userId: principal.userId,
53
+ agentId: agent.id,
54
+ eventType: "enrollment_token_created",
55
+ severity: "info",
56
+ metadata: { alias, profile: policy.profile },
57
+ });
58
+ return { ...this.installCommand(agent, token), enrollment_token: token };
59
+ }
60
+ installCommand(agent, token) {
61
+ const tokenArgument = token ?? "<create-a-new-enrollment-token>";
62
+ const posixBase = [
63
+ "npx --yes --package ssh-mcp-pro@latest ssh-mcp-pro-agent enroll",
64
+ `--server ${quotePosixArg(this.config.publicBaseUrl)}`,
65
+ `--token ${quotePosixArg(tokenArgument)}`,
66
+ `--alias ${quotePosixArg(agent.alias)}`,
67
+ ].join(" ");
68
+ const powershellBase = [
69
+ "npx --yes --package ssh-mcp-pro@latest ssh-mcp-pro-agent enroll",
70
+ `--server ${quotePowerShellArg(this.config.publicBaseUrl)}`,
71
+ `--token ${quotePowerShellArg(tokenArgument)}`,
72
+ `--alias ${quotePowerShellArg(agent.alias)}`,
73
+ ].join(" ");
74
+ return {
75
+ agent_id: agent.id,
76
+ alias: agent.alias,
77
+ token_recoverable: Boolean(token),
78
+ commands: {
79
+ npm: posixBase,
80
+ run: "npx --yes --package ssh-mcp-pro@latest ssh-mcp-pro-agent run",
81
+ windows: powershellBase,
82
+ },
83
+ expires_in_seconds: token ? this.config.enrollmentTokenTtlSeconds : undefined,
84
+ };
85
+ }
86
+ }
87
+ //# sourceMappingURL=agent-enrollment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-enrollment.js","sourceRoot":"","sources":["../../src/remote/agent-enrollment.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-executor.d.ts","sourceRoot":"","sources":["../../src/remote/agent-executor.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EAEZ,MAAM,YAAY,CAAC;AA4RpB,qBAAa,aAAa;IAEtB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ,CAAC,aAAa;gBADtB,MAAM,EAAE,WAAW,EACV,aAAa,EAAE,MAAM;IAGxC,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAIjC,OAAO,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAwC7D,cAAc;IA0E5B,OAAO,CAAC,eAAe;YAYT,QAAQ;IAiDtB,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,aAAa;YAaP,QAAQ;YAkBR,SAAS;YAWT,QAAQ;IAgBtB,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,UAAU;CAMnB;AAED,wBAAgB,mBAAmB;;;;;EAOlC"}
1
+ {"version":3,"file":"agent-executor.d.ts","sourceRoot":"","sources":["../../src/remote/agent-executor.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,qBAAqB,EACrB,oBAAoB,EACpB,WAAW,EAEZ,MAAM,YAAY,CAAC;AA2HpB,qBAAa,aAAa;IAEtB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ,CAAC,aAAa;gBADtB,MAAM,EAAE,WAAW,EACV,aAAa,EAAE,MAAM;IAGxC,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAIjC,OAAO,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;YAwC7D,cAAc;IA0E5B,OAAO,CAAC,eAAe;YAYT,QAAQ;IAiDtB,OAAO,CAAC,cAAc;IAiBtB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,aAAa;YAaP,QAAQ;YAkBR,SAAS;YAWT,QAAQ;IAgBtB,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,UAAU;CAMnB;AAED,wBAAgB,mBAAmB;;;;;EAOlC"}
@@ -1,6 +1,7 @@
1
1
  import { spawn } from "node:child_process";
2
2
  import { access } from "node:fs/promises";
3
3
  import os from "node:os";
4
+ import { appendBoundedOutput, finalizeBoundedOutput, readFileBounded, readFileTailBounded, } from "./agent-bounded-io.js";
4
5
  import { isContainerAllowed, isServiceAllowed } from "./policy.js";
5
6
  import { withAuthorizedRead, writeAuthorizedFileAtomic } from "./safe-file.js";
6
7
  import { TOOL_CAPABILITY_MAP } from "./types.js";
@@ -17,12 +18,6 @@ function scalarActionArgument(value) {
17
18
  code: "POLICY_DENIED",
18
19
  });
19
20
  }
20
- function truncateBuffer(buffer, maxBytes) {
21
- if (buffer.byteLength <= maxBytes) {
22
- return { value: buffer, truncated: false };
23
- }
24
- return appendTruncationMarker(buffer, maxBytes);
25
- }
26
21
  function platformShell(command) {
27
22
  if (process.platform === "win32") {
28
23
  return {
@@ -42,23 +37,6 @@ function posixSingleQuote(value) {
42
37
  const escaped = value.replaceAll("'", String.raw `'\''`);
43
38
  return `'${escaped}'`;
44
39
  }
45
- function truncationMarker(maxBytes) {
46
- return Buffer.from(`\n[truncated after ${maxBytes} bytes]\n`);
47
- }
48
- function appendTruncationMarker(buffer, maxBytes) {
49
- if (maxBytes <= 0) {
50
- return { value: Buffer.alloc(0), truncated: true };
51
- }
52
- const marker = truncationMarker(maxBytes);
53
- if (marker.byteLength >= maxBytes) {
54
- return { value: marker.subarray(0, maxBytes), truncated: true };
55
- }
56
- const payloadBytes = Math.max(0, maxBytes - marker.byteLength);
57
- return {
58
- value: Buffer.concat([buffer.subarray(0, payloadBytes), marker], maxBytes),
59
- truncated: true,
60
- };
61
- }
62
40
  function assertSafeIdentifier(value, label) {
63
41
  if (!SAFE_IDENTIFIER_PATTERN.test(value)) {
64
42
  throw Object.assign(new Error(`${label} contains unsupported characters`), {
@@ -66,83 +44,6 @@ function assertSafeIdentifier(value, label) {
66
44
  });
67
45
  }
68
46
  }
69
- function appendBoundedOutput(accumulator, chunk, maxBytes) {
70
- if (maxBytes <= 0) {
71
- accumulator.truncated ||= chunk.byteLength > 0;
72
- return;
73
- }
74
- const remaining = maxBytes - accumulator.bytes;
75
- if (remaining <= 0) {
76
- accumulator.truncated = true;
77
- return;
78
- }
79
- const slice = chunk.subarray(0, remaining);
80
- accumulator.chunks.push(slice);
81
- accumulator.bytes += slice.byteLength;
82
- accumulator.truncated ||= slice.byteLength !== chunk.byteLength;
83
- }
84
- function finalizeBoundedOutput(accumulator, maxBytes) {
85
- const value = Buffer.concat(accumulator.chunks, accumulator.bytes);
86
- if (!accumulator.truncated) {
87
- return { value, truncated: false };
88
- }
89
- return appendTruncationMarker(value, maxBytes);
90
- }
91
- async function readHandleRange(file, start, length) {
92
- const buffer = Buffer.alloc(Math.max(0, length));
93
- let offset = 0;
94
- while (offset < buffer.byteLength) {
95
- const { bytesRead } = await file.read(buffer, offset, buffer.byteLength - offset, start + offset);
96
- if (bytesRead === 0) {
97
- break;
98
- }
99
- offset += bytesRead;
100
- }
101
- return buffer.subarray(0, offset);
102
- }
103
- async function readFileBounded(file, maxBytes) {
104
- const cappedBytes = Math.max(0, maxBytes);
105
- const buffer = await readHandleRange(file, 0, cappedBytes + 1);
106
- return truncateBuffer(buffer, cappedBytes);
107
- }
108
- const TAIL_SCAN_CHUNK_BYTES = 64 * 1024;
109
- const MAX_TAIL_SCAN_BYTES = 8 * 1024 * 1024;
110
- async function findTailStart(file, size, maxLines, maxScanBytes) {
111
- if (size <= 0 || maxLines <= 0) {
112
- return { offset: size, scanTruncated: false };
113
- }
114
- let position = size;
115
- const minimumPosition = Math.max(0, size - Math.max(0, maxScanBytes));
116
- let includedLines = 1;
117
- while (position > minimumPosition) {
118
- const chunkSize = Math.min(TAIL_SCAN_CHUNK_BYTES, position - minimumPosition);
119
- position -= chunkSize;
120
- const chunk = await readHandleRange(file, position, chunkSize);
121
- for (let index = chunk.byteLength - 1; index >= 0; index -= 1) {
122
- const absoluteIndex = position + index;
123
- if (chunk[index] !== 0x0a || absoluteIndex === size - 1) {
124
- continue;
125
- }
126
- if (includedLines >= maxLines) {
127
- return { offset: absoluteIndex + 1, scanTruncated: false };
128
- }
129
- includedLines += 1;
130
- }
131
- }
132
- return { offset: minimumPosition, scanTruncated: minimumPosition > 0 };
133
- }
134
- async function readFileTailBounded(file, maxBytes, maxLines = 100) {
135
- const cappedBytes = Math.max(0, maxBytes);
136
- const stats = await file.stat();
137
- const scanBytes = Math.max(TAIL_SCAN_CHUNK_BYTES, Math.min(MAX_TAIL_SCAN_BYTES, cappedBytes * 4 + 1));
138
- const { offset, scanTruncated } = await findTailStart(file, stats.size, maxLines, scanBytes);
139
- const bytesToRead = Math.min(stats.size - offset, cappedBytes + 1);
140
- const buffer = await readHandleRange(file, offset, bytesToRead);
141
- const bounded = truncateBuffer(buffer, cappedBytes);
142
- return scanTruncated && !bounded.truncated
143
- ? appendTruncationMarker(bounded.value, cappedBytes)
144
- : bounded;
145
- }
146
47
  function isLogFileTarget(target) {
147
48
  return target.includes("/") || target.includes("\\") || /^[A-Za-z]:[\\/]/u.test(target);
148
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-executor.js","sourceRoot":"","sources":["../../src/remote/agent-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-executor.js","sourceRoot":"","sources":["../../src/remote/agent-executor.ts"],"names":[],"mappings":"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"}
@@ -19,11 +19,14 @@ export declare class RemoteControlPlane {
19
19
  readonly oauth: OAuthHandler;
20
20
  readonly agentHandler: AgentWebSocketHandler;
21
21
  readonly dashboard: WebDashboardHandler;
22
+ private readonly enrollment;
22
23
  constructor(config?: RemoteConfig);
23
24
  initialize(): Promise<void>;
24
25
  close(): void;
25
26
  private cleanupEphemeralState;
26
27
  private handleGoogleOAuthCallback;
28
+ /** Keep credential-exchange routes together without inflating OAuth dispatch complexity. */
29
+ private handleOAuthGrantRequest;
27
30
  private handleOAuthRequest;
28
31
  handleHttp(req: IncomingMessage, res: ServerResponse, pathname: string): Promise<boolean>;
29
32
  handleUpgrade(req: IncomingMessage, socket: Duplex, head: Buffer<ArrayBufferLike>, pathname: string): boolean;
@@ -41,8 +44,6 @@ export declare class RemoteControlPlane {
41
44
  private authenticate;
42
45
  private sendUnauthorized;
43
46
  private callRemoteTool;
44
- private createEnrollmentToken;
45
- private installCommand;
46
47
  private updateAgentPolicy;
47
48
  private revokeAgent;
48
49
  private dispatchAction;
@@ -1 +1 @@
1
- {"version":3,"file":"control-plane.d.ts","sourceRoot":"","sources":["../../src/remote/control-plane.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI1C,OAAO,EAWL,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AAkBrB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,YAAY,EAAyB,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EACL,qBAAqB,EAGtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAMV,YAAY,EAKb,MAAM,YAAY,CAAC;AAKpB,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuC;IAC7E,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsC;IACvE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA0C;IAC3E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoC;IACnE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAa;IACjD,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;gBAE5B,MAAM,eAAqB;IAoCjC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,KAAK,IAAI,IAAI;IAiBb,OAAO,CAAC,qBAAqB;YAaf,yBAAyB;YASzB,kBAAkB;IAoC1B,UAAU,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgD/F,aAAa,CACX,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO;YAII,SAAS;IAoEvB;;;;OAIG;YACW,eAAe;YA8Cf,iBAAiB;YA8CjB,SAAS;YAyCT,mBAAmB;YAkCnB,iBAAiB;YAsDjB,YAAY;IAiB1B,OAAO,CAAC,gBAAgB;YAWV,cAAc;IA4D5B,OAAO,CAAC,qBAAqB;IAmD7B,OAAO,CAAC,cAAc;IA8BtB,OAAO,CAAC,iBAAiB;IAsDzB,OAAO,CAAC,WAAW;YAkBL,cAAc;IA4H5B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,KAAK;IASb,OAAO,CAAC,iBAAiB;CAM1B;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAI5E;AAED,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,UAAU,GAAG,MAAM,CAE/E"}
1
+ {"version":3,"file":"control-plane.d.ts","sourceRoot":"","sources":["../../src/remote/control-plane.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAI1C,OAAO,EAWL,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AAgBrB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,YAAY,EAAyB,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EACL,qBAAqB,EAGtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAMV,YAAY,EAKb,MAAM,YAAY,CAAC;AAKpB,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuC;IAC7E,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsC;IACvE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA0C;IAC3E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoC;IACnE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAa;IACjD,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;gBAExC,MAAM,eAAqB;IAwCjC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,KAAK,IAAI,IAAI;IAiBb,OAAO,CAAC,qBAAqB;YAaf,yBAAyB;IASvC,4FAA4F;YAC9E,uBAAuB;YAgBvB,kBAAkB;IAmC1B,UAAU,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgD/F,aAAa,CACX,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC,EAC7B,QAAQ,EAAE,MAAM,GACf,OAAO;YAII,SAAS;IAoEvB;;;;OAIG;YACW,eAAe;YA8Cf,iBAAiB;YA8CjB,SAAS;YAyCT,mBAAmB;YAkCnB,iBAAiB;YAsDjB,YAAY;IAiB1B,OAAO,CAAC,gBAAgB;YAWV,cAAc;IA4D5B,OAAO,CAAC,iBAAiB;IAsDzB,OAAO,CAAC,WAAW;YAkBL,cAAc;IA4H5B,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,KAAK;IASb,OAAO,CAAC,iBAAiB;CAM1B;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAI5E;AAED,wBAAgB,uBAAuB,CAAC,mBAAmB,EAAE,UAAU,GAAG,MAAM,CAE/E"}