zcode-acp-server 0.18.3 → 0.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bin/hub.d.ts CHANGED
@@ -11,6 +11,13 @@
11
11
  * Refuses to start without ZCODE_ACP_REMOTE_TOKEN — the hub is the only public
12
12
  * entry point and never runs unauthenticated. Exits 0 on EADDRINUSE: another
13
13
  * hub already owns the port, which is the desired machine-singleton behaviour.
14
+ *
15
+ * If the hub finds itself INSIDE our Seatbelt wrap (ZCODE_ACP_SANDBOX_ACTIVE,
16
+ * birth-marked onto every sandboxed backend spawn and inherited down the
17
+ * chain), it relaunches itself via launchd — which lives OUTSIDE the sandbox —
18
+ * before binding: a sandboxed hub cannot open the visible session terminal
19
+ * (macOS TCC refuses the request attributed to "Sandbox"), and Seatbelt can
20
+ * never be escaped from within. See src/remote/hub-sandbox.ts.
14
21
  */
15
22
  export declare function main(): Promise<void>;
16
23
  //# sourceMappingURL=hub.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hub.d.ts","sourceRoot":"","sources":["../../src/bin/hub.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;GAYG;AAoCH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAY1C"}
1
+ {"version":3,"file":"hub.d.ts","sourceRoot":"","sources":["../../src/bin/hub.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AAqCH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA0B1C"}
package/dist/bin/hub.js CHANGED
@@ -11,11 +11,19 @@
11
11
  * Refuses to start without ZCODE_ACP_REMOTE_TOKEN — the hub is the only public
12
12
  * entry point and never runs unauthenticated. Exits 0 on EADDRINUSE: another
13
13
  * hub already owns the port, which is the desired machine-singleton behaviour.
14
+ *
15
+ * If the hub finds itself INSIDE our Seatbelt wrap (ZCODE_ACP_SANDBOX_ACTIVE,
16
+ * birth-marked onto every sandboxed backend spawn and inherited down the
17
+ * chain), it relaunches itself via launchd — which lives OUTSIDE the sandbox —
18
+ * before binding: a sandboxed hub cannot open the visible session terminal
19
+ * (macOS TCC refuses the request attributed to "Sandbox"), and Seatbelt can
20
+ * never be escaped from within. See src/remote/hub-sandbox.ts.
14
21
  */
15
22
  import { spawn } from "node:child_process";
16
23
  import process from "node:process";
17
24
  import { fileURLToPath } from "node:url";
18
25
  import { parseHubConfig } from "../remote/config.js";
26
+ import { sandboxBorn, selfRelaunchOutsideSandbox } from "../remote/hub-sandbox.js";
19
27
  import { startHub } from "../remote/hub-server.js";
20
28
  import { log, warn } from "../utils.js";
21
29
  /**
@@ -46,6 +54,19 @@ export async function main() {
46
54
  const config = parseHubConfig();
47
55
  if (!config)
48
56
  process.exit(1);
57
+ // Born inside our Seatbelt wrap (a sandboxed backend spawned this hub and
58
+ // the marker was inherited): relaunch via launchd, which lives OUTSIDE the
59
+ // sandbox. The port is not bound yet, so the relaunched instance binds
60
+ // cleanly. If the relaunch fails, keep running degraded — everything but
61
+ // the visible terminal still works — and say so loudly.
62
+ if (sandboxBorn()) {
63
+ const hubJs = fileURLToPath(new URL("../bin/hub.js", import.meta.url));
64
+ if (selfRelaunchOutsideSandbox({ nodePath: process.execPath, hubJs }))
65
+ process.exit(0);
66
+ warn("hub: running INSIDE a Seatbelt sandbox — macOS will refuse this hub's " +
67
+ "open of the visible session terminal (TCC), so remote session-create " +
68
+ "falls back to a headless bridge");
69
+ }
49
70
  const hub = await startHub({
50
71
  port: config.hubPort,
51
72
  host: config.hubHost,
@@ -1 +1 @@
1
- {"version":3,"file":"hub.js","sourceRoot":"","sources":["../../src/bin/hub.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hub.js","sourceRoot":"","sources":["../../src/bin/hub.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;GAUG;AAmEH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA2D1C;AA+GD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GACb,OAAO,CAGT;AAED;;;;;;;;;GASG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAsEjD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;GAUG;AAmEH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA8D1C;AA+GD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,GACb,OAAO,CAGT;AAED;;;;;;;;;GASG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAsEjD"}
package/dist/index.js CHANGED
@@ -55,11 +55,15 @@ function buildAllCommands() {
55
55
  return merged;
56
56
  }
57
57
  export async function main() {
58
+ // Remote config is parsed BEFORE the server exists: a hub-incubated REPL
59
+ // bridge (ADR-0016) arrives with ZCODE_ACP_REMOTE_PIN_CWD=1, and the pin
60
+ // must hold from the very first session/new — not from the endpoint start.
61
+ const remoteConfigEarly = parseRemoteConfig();
58
62
  // stdout is the outbound channel to the client; stdin is inbound.
59
63
  const outbound = Writable.toWeb(process.stdout);
60
64
  const inbound = Readable.toWeb(process.stdin);
61
65
  const stream = acp.ndJsonStream(outbound, inbound);
62
- const server = new ZcodeAcpServer();
66
+ const server = new ZcodeAcpServer({ serveMode: remoteConfigEarly?.pinCwd === true });
63
67
  // Load all commands once at startup (they don't change mid-session).
64
68
  const allCommands = buildAllCommands();
65
69
  log(`starting ${AGENT_INFO.name} ${AGENT_INFO.version}, ACP protocol v${acp.PROTOCOL_VERSION}`);
@@ -105,9 +109,8 @@ export async function main() {
105
109
  // Remote access (opt-in via ENV): serve the same app on a loopback WS/HTTP
106
110
  // endpoint and register with the machine-level hub. Failures warn and leave
107
111
  // the stdio link untouched.
108
- const remoteConfig = parseRemoteConfig();
109
- if (remoteConfig) {
110
- remoteHandle = await startRemoteEndpoint(server, app, remoteConfig);
112
+ if (remoteConfigEarly) {
113
+ remoteHandle = await startRemoteEndpoint(server, app, remoteConfigEarly);
111
114
  }
112
115
  }
113
116
  /**
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,16 @@
15
15
  * containerized tunnel agent)
16
16
  * ZCODE_ACP_REMOTE_PORT=8378 bridge endpoint start port (auto-increment
17
17
  * when taken; loopback only)
18
+ * ZCODE_ACP_REMOTE_ORIGIN=serve registration origin override (ADR-0016: a
19
+ * REPL incubated by the hub in a visible
20
+ * terminal registers as "serve" so the
21
+ * per-workspace dedupe treats it as THE
22
+ * project's remote bridge)
23
+ * ZCODE_ACP_REMOTE_PIN_CWD=1 pin every session root to the process cwd
24
+ * (bridge-wide serveMode; ADR-0016: keeps
25
+ * ADR-0014's whitelist semantics for a
26
+ * hub-incubated REPL, whose bridge would
27
+ * otherwise trust a remote client's cwd)
18
28
  */
19
29
  export interface RemoteConfig {
20
30
  token: string;
@@ -28,6 +38,14 @@ export interface RemoteConfig {
28
38
  * instances per workspace and label them for remote clients.
29
39
  */
30
40
  origin: "editor" | "serve";
41
+ /**
42
+ * Pin every session root to the process cwd (serveMode for the bridge).
43
+ * Set by the hub when it incubates a REPL in a visible terminal
44
+ * (ADR-0016): the REPL bridge is a stdio bridge by lifecycle, but its
45
+ * sessions must obey ADR-0014's whitelist semantics — a remote client
46
+ * must not steer them into arbitrary directories.
47
+ */
48
+ pinCwd: boolean;
31
49
  }
32
50
  export declare const DEFAULT_HUB_PORT = 8377;
33
51
  export declare const DEFAULT_BRIDGE_PORT = 8378;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/remote/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAY5C,wEAAwE;AACxE,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,YAAY,GAAG,IAAI,CAkB3F;AAED,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,YAAY,GAAG,IAAI,CAaxF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/remote/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAY5C,wEAAwE;AACxE,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,YAAY,GAAG,IAAI,CAmB3F;AAED,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,YAAY,GAAG,IAAI,CAcxF"}
@@ -15,6 +15,16 @@
15
15
  * containerized tunnel agent)
16
16
  * ZCODE_ACP_REMOTE_PORT=8378 bridge endpoint start port (auto-increment
17
17
  * when taken; loopback only)
18
+ * ZCODE_ACP_REMOTE_ORIGIN=serve registration origin override (ADR-0016: a
19
+ * REPL incubated by the hub in a visible
20
+ * terminal registers as "serve" so the
21
+ * per-workspace dedupe treats it as THE
22
+ * project's remote bridge)
23
+ * ZCODE_ACP_REMOTE_PIN_CWD=1 pin every session root to the process cwd
24
+ * (bridge-wide serveMode; ADR-0016: keeps
25
+ * ADR-0014's whitelist semantics for a
26
+ * hub-incubated REPL, whose bridge would
27
+ * otherwise trust a remote client's cwd)
18
28
  */
19
29
  import { warn } from "../utils.js";
20
30
  export const DEFAULT_HUB_PORT = 8377;
@@ -46,7 +56,8 @@ export function parseRemoteConfig(env = process.env) {
46
56
  hubPort: parsePort(env.ZCODE_ACP_HUB_PORT, DEFAULT_HUB_PORT, "ZCODE_ACP_HUB_PORT"),
47
57
  hubHost: (env.ZCODE_ACP_HUB_HOST ?? "").trim() || DEFAULT_HUB_HOST,
48
58
  bridgePort: parsePort(env.ZCODE_ACP_REMOTE_PORT, DEFAULT_BRIDGE_PORT, "ZCODE_ACP_REMOTE_PORT"),
49
- origin: "editor",
59
+ origin: (env.ZCODE_ACP_REMOTE_ORIGIN ?? "").trim() === "serve" ? "serve" : "editor",
60
+ pinCwd: (env.ZCODE_ACP_REMOTE_PIN_CWD ?? "").trim() === "1",
50
61
  };
51
62
  }
52
63
  /** Parse hub-side config for the standalone hub entry (`zcode-acp hub`). */
@@ -62,6 +73,7 @@ export function parseHubConfig(env = process.env) {
62
73
  hubHost: (env.ZCODE_ACP_HUB_HOST ?? "").trim() || DEFAULT_HUB_HOST,
63
74
  bridgePort: parsePort(env.ZCODE_ACP_REMOTE_PORT, DEFAULT_BRIDGE_PORT, "ZCODE_ACP_REMOTE_PORT"),
64
75
  origin: "editor",
76
+ pinCwd: false,
65
77
  };
66
78
  }
67
79
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/remote/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAgBnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAE5C,SAAS,SAAS,CAAC,GAAuB,EAAE,QAAgB,EAAE,OAAe;IAC3E,IAAI,CAAC,GAAG;QAAE,OAAO,QAAQ,CAAC;IAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;QACxD,IAAI,CAAC,mBAAmB,OAAO,KAAK,GAAG,sBAAsB,QAAQ,EAAE,CAAC,CAAC;QACzE,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,iBAAiB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACpE,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/D,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,CACF,8EAA8E;YAC5E,2CAA2C,CAC9C,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,KAAK;QACL,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,oBAAoB,CAAC;QAClF,OAAO,EAAE,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,gBAAgB;QAClE,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,uBAAuB,CAAC;QAC9F,MAAM,EAAE,QAAQ;KACjB,CAAC;AACJ,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,cAAc,CAAC,MAAyB,OAAO,CAAC,GAAG;IACjE,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,CAAC,0EAA0E,CAAC,CAAC;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,KAAK;QACL,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,oBAAoB,CAAC;QAClF,OAAO,EAAE,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,gBAAgB;QAClE,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,qBAAqB,EAAE,mBAAmB,EAAE,uBAAuB,CAAC;QAC9F,MAAM,EAAE,QAAQ;KACjB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/remote/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../src/remote/endpoint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAQrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAKnD,OAAO,EAAyC,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,sEAAsE;AACtE,UAAU,iBAAiB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAWD,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAUD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAoE1F;AAqBD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG,CAAC,QAAQ,EACjB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CA+OtC"}
1
+ {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../src/remote/endpoint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,OAAO,KAAK,KAAK,GAAG,MAAM,0BAA0B,CAAC;AAQrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAMnD,OAAO,EAAyC,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,sEAAsE;AACtE,UAAU,iBAAiB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAWD,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAUD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAoE1F;AAqBD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG,CAAC,QAAQ,EACjB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAiPtC"}
@@ -22,6 +22,7 @@ import { WebSocketServer } from "ws";
22
22
  import { AGENT_INFO, log, warn } from "../utils.js";
23
23
  import { createFileHandler } from "./file-endpoint.js";
24
24
  import { createSessionCloseHandler } from "./session-close-endpoint.js";
25
+ import { createSessionListHandler } from "./session-list-endpoint.js";
25
26
  import { createSessionRenameHandler } from "./session-rename-endpoint.js";
26
27
  import { createStatusHandler, runningZcodeSids } from "./status-endpoint.js";
27
28
  /** How often the bridge re-registers with the hub (also the heartbeat). */
@@ -162,6 +163,7 @@ export async function startRemoteEndpoint(server, app, config) {
162
163
  const statusHandler = createStatusHandler(server);
163
164
  const sessionCloseHandler = createSessionCloseHandler(server);
164
165
  const sessionRenameHandler = createSessionRenameHandler(server);
166
+ const sessionListHandler = createSessionListHandler(server);
165
167
  const httpServer = createServer((req, res) => {
166
168
  const path = new URL(req.url ?? "/", "http://127.0.0.1").pathname;
167
169
  const closeMatch = path.match(/^\/sessions\/([^/]+)\/close$/);
@@ -176,6 +178,8 @@ export async function startRemoteEndpoint(server, app, config) {
176
178
  sessionCloseHandler(req, res, closeMatch[1]);
177
179
  else if (renameMatch)
178
180
  sessionRenameHandler(req, res, renameMatch[1]);
181
+ else if (path === "/sessions")
182
+ sessionListHandler(req, res);
179
183
  else {
180
184
  res.writeHead(404, { "Content-Type": "text/plain" });
181
185
  res.end("not found");
@@ -1 +1 @@
1
- {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/remote/endpoint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAe,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,EAAE,SAAS,EAAE,MAAM,8CAA8C,CAAC;AACzE,OAAO,EACL,qBAAqB,EACrB,iCAAiC,GAClC,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAGrC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAyB,MAAM,sBAAsB,CAAC;AAWpG,2EAA2E;AAC3E,MAAM,YAAY,GAAG,MAAM,CAAC;AAC5B,wEAAwE;AACxE,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACjC,mFAAmF;AACnF,MAAM,yBAAyB,GAAG,EAAE,GAAG,MAAM,CAAC;AAC9C,qEAAqE;AACrE,MAAM,eAAe,GAAG,GAAG,CAAC;AAS5B,oEAAoE;AACpE,SAAS,SAAS,CAAC,MAAc,EAAE,IAAY;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAsB;IAC1D,wEAAwE;IACxE,mDAAmD;IACnD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoE,CAAC;IACzF,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,WAAW;YAAE,SAAS;QACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ;YAAE,SAAS,CAAC,kDAAkD;QAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;YAAE,SAAS;QAC1D,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;YACjB,SAAS,EAAE,MAAM;YACjB,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC;YACH,uEAAuE;YACvE,+BAA+B;YAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAChC,MAAM,CAAC,MAAM,EAAE,EACf,cAAc,EACd,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,EACxD,MAAM,CACP,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChB,MAAM,QAAQ,GAEV,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAOnB,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACnB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;oBACzB,IAAI,CAAC,CAAC,CAAC,SAAS;wBAAE,SAAS;oBAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAClC,IAAI,CAAC,GAAG;wBAAE,SAAS,CAAC,gDAAgD;oBACpE,mEAAmE;oBACnE,8DAA8D;oBAC9D,kEAAkE;oBAClE,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;oBAChF,MAAM,KAAK,GAAG,UAAU,IAAI,GAAG,CAAC,KAAK,CAAC;oBACtC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;wBACpB,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;qBAC1D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,6CAA6C;QAC/C,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,oEAAoE;IACpE,oEAAoE;IACpE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;SAC9B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;SACjD,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,8EAA8E;AAC9E,SAAS,QAAQ,CAAC,CAAU;IAC1B,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IACpC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,GAAW,EAAE,IAAa,EAAE,SAAS,GAAG,IAAI;IAClE,OAAO,KAAK,CAAC,GAAG,EAAE;QAChB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC;KACvC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAsB,EACtB,GAAiB,EACjB,MAAoB;IAEpB,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,IAAI,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,iCAAiC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACzE,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,mBAAmB,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAEhE,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC3C,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC;QAClE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAChE,IAAI,IAAI,KAAK,MAAM;YAAE,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aACzC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aACnD,IAAI,IAAI,KAAK,SAAS;YAAE,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aAChD,IAAI,UAAU;YAAE,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,CAAC;aAC9D,IAAI,WAAW;YAAE,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAE,CAAC,CAAC;aACjE,CAAC;YACJ,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC;YACrD,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,kBAAkB,CAAC,CAAC,QAAQ,CAAC;QAClE,IAAI,IAAI,KAAK,MAAM;YAAE,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;;YAClD,MAAM,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,4EAA4E;IAC5E,+CAA+C;IAC/C,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,eAAe,EAAE,KAAK,EAAE,EAAE,CAAC;QACrD,IAAI,MAAM,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC;YAC3D,IAAI,GAAG,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;YACjC,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,CACF,oCAAoC,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU,GAAG,eAAe,GAAG,CAAC,oBAAoB,CACtH,CAAC;QACF,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,yEAAyE;IACzE,mEAAmE;IACnE,UAAU,CAAC,KAAK,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC5E,GAAG,CAAC,+CAA+C,IAAI,MAAM,CAAC,CAAC;IAE/D,8CAA8C;IAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,sEAAsE;IACtE,0EAA0E;IAC1E,0EAA0E;IAC1E,wEAAwE;IACxE,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,kBAAkB,GAAG,iBAAiB,CAAC;IAC3C,2EAA2E;IAC3E,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAC3C,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAE5B,MAAM,OAAO,GAAG,CAAC,QAA6B,EAAE,EAAE,CAAC,CAAC;QAClD,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,EAAE,EAAE,UAAU;QACd,IAAI;QACJ,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE;QAClC,QAAQ;QACR,wEAAwE;QACxE,uEAAuE;QACvE,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,oEAAoE;QACpE,kEAAkE;QAClE,OAAO,EAAE,UAAU,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,GAAS,EAAE;QAC1B,IAAI,CAAC;YACH,uEAAuE;YACvE,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACvE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE;gBAC7C,QAAQ,EAAE,IAAI;gBACd,mEAAmE;gBACnE,yDAAyD;gBACzD,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC;gBACnC,GAAG,EAAE;oBACH,GAAG,OAAO,CAAC,GAAG;oBACd,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;oBAC1C,kBAAkB,EAAE,MAAM,CAAC,OAAO;oBAClC,sBAAsB,EAAE,MAAM,CAAC,KAAK;iBACrC;aACF,CAAC,CAAC;YACH,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE;gBACrC,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5C,IAAI,IAAI,CAAC,IAAI,EAAE;wBAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC,CAAC,CAAC;YACH,yEAAyE;YACzE,oEAAoE;YACpE,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;gBACxB,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,GAAG,CAAC,+BAA+B,MAAM,CAAC,OAAO,SAAS,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,6BAA6B,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC,CAAC;IAEF,yEAAyE;IACzE,wEAAwE;IACxE,IAAI,YAAY,GAAwB,EAAE,CAAC;IAE3C,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;QAC7C,IAAI,OAAO;YAAE,OAAO;QACpB,0EAA0E;QAC1E,0EAA0E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,uBAAuB;YACzB,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CACxB,oBAAoB,MAAM,CAAC,OAAO,eAAe,EACjD,OAAO,CAAC,YAAY,CAAC,CACtB,CAAC;YACF,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvB,qEAAqE;gBACrE,qEAAqE;gBACrE,gEAAgE;gBAChE,mEAAmE;gBACnE,qEAAqE;gBACrE,kEAAkE;gBAClE,iEAAiE;gBACjE,qEAAqE;gBACrE,6BAA6B;gBAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,YAAY,GAAG,IAAI,CAAC;oBACpB,IAAI,CACF,sEAAsE;wBACpE,0EAA0E,CAC7E,CAAC;gBACJ,CAAC;gBACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,eAAe,EAAE,CAAC;oBAClC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC;oBAClD,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,EAAE,yBAAyB,CAAC,CAAC;oBACjF,QAAQ,EAAE,CAAC;oBACX,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC;oBAC1D,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,CAAC;gBACD,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,IAAI,YAAY,EAAE,CAAC;oBACjB,YAAY,GAAG,KAAK,CAAC;oBACrB,mEAAmE;oBACnE,gEAAgE;oBAChE,8DAA8D;oBAC9D,iCAAiC;oBACjC,kBAAkB,GAAG,iBAAiB,CAAC;oBACvC,eAAe,GAAG,CAAC,CAAC;oBACpB,GAAG,CAAC,wDAAwD,CAAC,CAAC;gBAChE,CAAC;gBACD,gBAAgB,GAAG,IAAI,CAAC;YAC1B,CAAC;iBAAM,IAAI,gBAAgB,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC3C,oEAAoE;gBACpE,kEAAkE;gBAClE,8CAA8C;gBAC9C,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC9B,IAAI,CAAC,4DAA4D,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;YACjF,CAAC;YACD,sEAAsE;YACtE,sEAAsE;YACtE,qEAAqE;YACrE,kEAAkE;YAClE,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAoC,CAAC;gBACrF,IAAI,IAAI,EAAE,UAAU,EAAE,CAAC;oBACrB,GAAG,CAAC,iEAAiE,CAAC,CAAC;oBACvE,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;wBAC9B,IAAI,OAAO,IAAI,YAAY;4BAAE,OAAO;wBACpC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,mBAAmB;4BAAE,OAAO;wBAC7C,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC;wBACrD,QAAQ,EAAE,CAAC;wBACX,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC;wBAC1D,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,CAAC,EAAE,IAAI,CAAC,CAAC;oBACT,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oEAAoE;YACpE,mEAAmE;YACnE,6CAA6C;YAC7C,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,mBAAmB,EAAE,CAAC;gBACtC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC;gBACrD,QAAQ,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC1D,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,YAAY,EAAE,CAAC;IACpB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,YAAY,EAAE,EAAE,YAAY,CAAC,CAAC;IACvE,SAAS,CAAC,KAAK,EAAE,CAAC;IAElB,OAAO;QACL,IAAI;QACJ,KAAK,CAAC,IAAI;YACR,OAAO,GAAG,IAAI,CAAC;YACf,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,QAAQ,CACZ,oBAAoB,MAAM,CAAC,OAAO,iBAAiB,EACnD,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,EACvC,IAAI,CACL,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,mEAAmE;YACrE,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO;gBAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACrD,GAAG,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC/C,UAAU,CAAC,mBAAmB,EAAE,EAAE,CAAC;YACnC,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../src/remote/endpoint.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Hub sandbox self-relaunch (macOS / launchd).
3
+ *
4
+ * A hub born inside our Seatbelt wrap cannot do its job: `open -a Terminal`
5
+ * for the visible REPL (ADR-0016) gets TCC-attributed to the requester
6
+ * identity "Sandbox" and Terminal silently refuses the document — while
7
+ * `open` itself exits 0, so the incubation just burns its budget and every
8
+ * remote session-create fails. Seatbelt cannot be escaped from within (it
9
+ * is inherited unconditionally across fork/exec), so the only way out is a
10
+ * process that already lives OUTSIDE the sandbox: launchd. The wrapped hub
11
+ * writes a throwaway LaunchAgent plist (launchd reads the path itself, the
12
+ * sandbox does not constrain it) and bootstraps itself into the user's gui
13
+ * domain; the relaunched hub is a clean user process.
14
+ */
15
+ /**
16
+ * Set on every sandboxed backend spawn (see server.ts ensureBackend) and
17
+ * inherited down any spawn chain. Its presence in the hub's env means THIS
18
+ * process was born inside the wrap — unlike ZCODE_ACP_SANDBOX, which a user
19
+ * may legitimately set globally and which must NOT trigger a relaunch.
20
+ */
21
+ export declare const SANDBOX_ACTIVE_ENV = "ZCODE_ACP_SANDBOX_ACTIVE";
22
+ /** launchd label for the self-relaunched hub (machine singleton, like the port). */
23
+ export declare const HUB_LAUNCH_LABEL = "com.zcode.acp.hub";
24
+ /** Whether this process was born inside our Seatbelt wrap. */
25
+ export declare function sandboxBorn(env?: NodeJS.ProcessEnv): boolean;
26
+ /**
27
+ * The LaunchAgent plist body: run the hub entry under this node, with THIS
28
+ * process's env minus the birth marker (so the relaunched hub does not
29
+ * re-trigger). RunAtLoad/KeepAlive stay false — the hub is started exactly
30
+ * once, now, via kickstart; if it dies the bridges re-spawn it (the existing
31
+ * machine-singleton behaviour).
32
+ */
33
+ export declare function buildHubRelaunchPlist(opts: {
34
+ nodePath: string;
35
+ hubJs: string;
36
+ env: NodeJS.ProcessEnv;
37
+ logPath: string;
38
+ }): string;
39
+ /**
40
+ * Relaunch this hub outside the sandbox: write the plist into a fresh
41
+ * mkdtemp (a default-allowed temp tree under the Seatbelt profile, and
42
+ * launchd — outside the sandbox — reads the path itself), load it into the
43
+ * user's gui domain and start the job. Returns true when the relaunch was
44
+ * handed to launchd; false means the caller should keep running (degraded)
45
+ * and warn. Best-effort diagnostics of the relaunched hub land in the log
46
+ * file next to the plist.
47
+ *
48
+ * A label that was already bootstrapped freezes the FIRST plist's definition
49
+ * — `kickstart` restarts whatever is loaded and would silently revive stale
50
+ * env (a rotated token, an old port). The definition must therefore be
51
+ * swapped: bootout the old label, then bootstrap the fresh plist (bootout is
52
+ * asynchronous, so bootstrap retries a few times). A blind kickstart of an
53
+ * unreplaced definition is never attempted.
54
+ */
55
+ export declare function selfRelaunchOutsideSandbox(opts: {
56
+ nodePath: string;
57
+ hubJs: string;
58
+ logPath?: string;
59
+ }): boolean;
60
+ //# sourceMappingURL=hub-sandbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hub-sandbox.d.ts","sourceRoot":"","sources":["../../src/remote/hub-sandbox.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AASH;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,6BAA6B,CAAC;AAE7D,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,sBAAsB,CAAC;AAEpD,8DAA8D;AAC9D,wBAAgB,WAAW,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAEzE;AAWD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,MAAM,CA+BT;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAyDV"}
@@ -0,0 +1,155 @@
1
+ /**
2
+ * Hub sandbox self-relaunch (macOS / launchd).
3
+ *
4
+ * A hub born inside our Seatbelt wrap cannot do its job: `open -a Terminal`
5
+ * for the visible REPL (ADR-0016) gets TCC-attributed to the requester
6
+ * identity "Sandbox" and Terminal silently refuses the document — while
7
+ * `open` itself exits 0, so the incubation just burns its budget and every
8
+ * remote session-create fails. Seatbelt cannot be escaped from within (it
9
+ * is inherited unconditionally across fork/exec), so the only way out is a
10
+ * process that already lives OUTSIDE the sandbox: launchd. The wrapped hub
11
+ * writes a throwaway LaunchAgent plist (launchd reads the path itself, the
12
+ * sandbox does not constrain it) and bootstraps itself into the user's gui
13
+ * domain; the relaunched hub is a clean user process.
14
+ */
15
+ import { execFileSync } from "node:child_process";
16
+ import { mkdtempSync, readFileSync, rmSync, writeFileSync } from "node:fs";
17
+ import { tmpdir } from "node:os";
18
+ import * as path from "node:path";
19
+ import { log, warn } from "../utils.js";
20
+ /**
21
+ * Set on every sandboxed backend spawn (see server.ts ensureBackend) and
22
+ * inherited down any spawn chain. Its presence in the hub's env means THIS
23
+ * process was born inside the wrap — unlike ZCODE_ACP_SANDBOX, which a user
24
+ * may legitimately set globally and which must NOT trigger a relaunch.
25
+ */
26
+ export const SANDBOX_ACTIVE_ENV = "ZCODE_ACP_SANDBOX_ACTIVE";
27
+ /** launchd label for the self-relaunched hub (machine singleton, like the port). */
28
+ export const HUB_LAUNCH_LABEL = "com.zcode.acp.hub";
29
+ /** Whether this process was born inside our Seatbelt wrap. */
30
+ export function sandboxBorn(env = process.env) {
31
+ return process.platform === "darwin" && (env[SANDBOX_ACTIVE_ENV] ?? "").trim() !== "";
32
+ }
33
+ /** Minimal XML escaping for plist string values (env values are arbitrary). */
34
+ function xmlEscape(s) {
35
+ return s
36
+ .replace(/&/g, "&amp;")
37
+ .replace(/</g, "&lt;")
38
+ .replace(/>/g, "&gt;")
39
+ .replace(/"/g, "&quot;");
40
+ }
41
+ /**
42
+ * The LaunchAgent plist body: run the hub entry under this node, with THIS
43
+ * process's env minus the birth marker (so the relaunched hub does not
44
+ * re-trigger). RunAtLoad/KeepAlive stay false — the hub is started exactly
45
+ * once, now, via kickstart; if it dies the bridges re-spawn it (the existing
46
+ * machine-singleton behaviour).
47
+ */
48
+ export function buildHubRelaunchPlist(opts) {
49
+ const envEntries = Object.entries(opts.env).filter(([k]) => k !== SANDBOX_ACTIVE_ENV);
50
+ const pair = ([k, v]) => ` <key>${xmlEscape(k)}</key>\n <string>${xmlEscape(String(v))}</string>`;
51
+ return `<?xml version="1.0" encoding="UTF-8"?>
52
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
53
+ <plist version="1.0">
54
+ <dict>
55
+ <key>Label</key>
56
+ <string>${HUB_LAUNCH_LABEL}</string>
57
+ <key>ProgramArguments</key>
58
+ <array>
59
+ <string>${xmlEscape(opts.nodePath)}</string>
60
+ <string>${xmlEscape(opts.hubJs)}</string>
61
+ <string>hub</string>
62
+ </array>
63
+ <key>EnvironmentVariables</key>
64
+ <dict>
65
+ ${envEntries.map(pair).join("\n")}
66
+ </dict>
67
+ <key>RunAtLoad</key>
68
+ <false/>
69
+ <key>KeepAlive</key>
70
+ <false/>
71
+ <key>StandardOutPath</key>
72
+ <string>${xmlEscape(opts.logPath)}</string>
73
+ <key>StandardErrorPath</key>
74
+ <string>${xmlEscape(opts.logPath)}</string>
75
+ </dict>
76
+ </plist>
77
+ `;
78
+ }
79
+ /**
80
+ * Relaunch this hub outside the sandbox: write the plist into a fresh
81
+ * mkdtemp (a default-allowed temp tree under the Seatbelt profile, and
82
+ * launchd — outside the sandbox — reads the path itself), load it into the
83
+ * user's gui domain and start the job. Returns true when the relaunch was
84
+ * handed to launchd; false means the caller should keep running (degraded)
85
+ * and warn. Best-effort diagnostics of the relaunched hub land in the log
86
+ * file next to the plist.
87
+ *
88
+ * A label that was already bootstrapped freezes the FIRST plist's definition
89
+ * — `kickstart` restarts whatever is loaded and would silently revive stale
90
+ * env (a rotated token, an old port). The definition must therefore be
91
+ * swapped: bootout the old label, then bootstrap the fresh plist (bootout is
92
+ * asynchronous, so bootstrap retries a few times). A blind kickstart of an
93
+ * unreplaced definition is never attempted.
94
+ */
95
+ export function selfRelaunchOutsideSandbox(opts) {
96
+ const dir = mkdtempSync(path.join(tmpdir(), "zcode-hub-relaunch-"));
97
+ const logPath = opts.logPath ?? path.join(dir, "hub.log");
98
+ const plistPath = path.join(dir, "hub.plist");
99
+ writeFileSync(plistPath, buildHubRelaunchPlist({ ...opts, env: process.env, logPath }));
100
+ const domain = `gui/${process.getuid?.() ?? 0}`;
101
+ const target = `${domain}/${HUB_LAUNCH_LABEL}`;
102
+ // Best-effort cleanup of the PREVIOUS attempt's dir (plist + log); the
103
+ // current dir stays — the relaunched job writes its log there.
104
+ const sentinel = path.join(tmpdir(), "zcode-hub-relaunch-last");
105
+ try {
106
+ const previous = readFileSync(sentinel, "utf8").trim();
107
+ if (previous)
108
+ rmSync(previous, { recursive: true, force: true });
109
+ }
110
+ catch {
111
+ // no previous attempt (or unreadable) — nothing to clean
112
+ }
113
+ try {
114
+ writeFileSync(sentinel, dir);
115
+ }
116
+ catch {
117
+ // best-effort — worst case a few temp dirs accumulate
118
+ }
119
+ let loaded = false;
120
+ let lastError = "";
121
+ for (let attempt = 0; attempt < 3 && !loaded; attempt++) {
122
+ try {
123
+ execFileSync("launchctl", ["bootstrap", domain, plistPath], { stdio: "ignore" });
124
+ loaded = true;
125
+ }
126
+ catch (e) {
127
+ lastError = e instanceof Error ? e.message : String(e);
128
+ // Likely already bootstrapped: drop the old definition and retry with
129
+ // the fresh plist (bootout completes asynchronously — hence the wait).
130
+ try {
131
+ execFileSync("launchctl", ["bootout", target], { stdio: "ignore" });
132
+ }
133
+ catch {
134
+ // nothing was loaded under the label — nothing to boot out
135
+ }
136
+ Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, 300);
137
+ }
138
+ }
139
+ if (!loaded) {
140
+ warn(`hub: launchd bootstrap failed (${lastError}) — running sandboxed; ` +
141
+ "restart the hub from a normal terminal instead");
142
+ return false;
143
+ }
144
+ try {
145
+ execFileSync("launchctl", ["kickstart", target], { stdio: "ignore" });
146
+ }
147
+ catch (e) {
148
+ warn(`hub: launchd kickstart failed (${e instanceof Error ? e.message : String(e)}) — ` +
149
+ "running sandboxed; restart the hub from a normal terminal instead");
150
+ return false;
151
+ }
152
+ log(`hub: relaunched outside the sandbox via launchd (${target}, plist: ${plistPath})`);
153
+ return true;
154
+ }
155
+ //# sourceMappingURL=hub-sandbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hub-sandbox.js","sourceRoot":"","sources":["../../src/remote/hub-sandbox.ts"],"names":[],"mappings":"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"}