@rubytech/create-maxy-code 0.1.393 → 0.1.395
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/__tests__/darwin-service-env-path.test.js +29 -0
- package/dist/__tests__/launchd-plist.test.js +41 -1
- package/dist/index.js +85 -10
- package/dist/launchd-plist.js +27 -0
- package/dist/port-resolution.js +16 -1
- package/dist/uninstall.js +56 -20
- package/package.json +1 -1
- package/payload/platform/services/claude-session-manager/dist/channel-mcp.d.ts +5 -0
- package/payload/platform/services/claude-session-manager/dist/channel-mcp.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/channel-mcp.js +1 -1
- package/payload/platform/services/claude-session-manager/dist/channel-mcp.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/config.d.ts +6 -0
- package/payload/platform/services/claude-session-manager/dist/config.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/config.js +2 -0
- package/payload/platform/services/claude-session-manager/dist/config.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/http-server.js +8 -1
- package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/index.js +11 -0
- package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +4 -0
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +2 -0
- package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/resolve-on-path.d.ts +11 -0
- package/payload/platform/services/claude-session-manager/dist/resolve-on-path.d.ts.map +1 -0
- package/payload/platform/services/claude-session-manager/dist/resolve-on-path.js +36 -0
- package/payload/platform/services/claude-session-manager/dist/resolve-on-path.js.map +1 -0
- package/payload/platform/services/claude-session-manager/dist/session-cap-audit.d.ts +5 -0
- package/payload/platform/services/claude-session-manager/dist/session-cap-audit.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/session-cap-audit.js +22 -4
- package/payload/platform/services/claude-session-manager/dist/session-cap-audit.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/telegram-channel-mcp.d.ts +5 -0
- package/payload/platform/services/claude-session-manager/dist/telegram-channel-mcp.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/telegram-channel-mcp.js +1 -1
- package/payload/platform/services/claude-session-manager/dist/telegram-channel-mcp.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/wa-channel-mcp.d.ts +5 -0
- package/payload/platform/services/claude-session-manager/dist/wa-channel-mcp.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/wa-channel-mcp.js +1 -1
- package/payload/platform/services/claude-session-manager/dist/wa-channel-mcp.js.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/webchat-channel-mcp.d.ts +5 -0
- package/payload/platform/services/claude-session-manager/dist/webchat-channel-mcp.d.ts.map +1 -1
- package/payload/platform/services/claude-session-manager/dist/webchat-channel-mcp.js +1 -1
- package/payload/platform/services/claude-session-manager/dist/webchat-channel-mcp.js.map +1 -1
- package/payload/server/server.js +15 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Acceptance gate for the darwin `.env` PATH line.
|
|
2
|
+
//
|
|
3
|
+
// The launchd wrapper sources `.env` and every MCP child (including the ones
|
|
4
|
+
// `claude` spawns itself from a plugin `PLUGIN.md` `mcp: command: node`)
|
|
5
|
+
// inherits this PATH. On the migrated Mac the only `node` is nvm's, off the
|
|
6
|
+
// bare launchd PATH, so a bare `node server.js` fails ENOENT and the plugin's
|
|
7
|
+
// graph-write tools never register. buildDarwinServiceEnvPath prepends the
|
|
8
|
+
// resolved node bin dir and `~/.local/bin` (uv) so `node` and `uvx` both
|
|
9
|
+
// resolve at runtime. The channel MCPs (Task 1402) pin NODE_BIN directly;
|
|
10
|
+
// this covers the plugin/graph half of the same PATH root cause.
|
|
11
|
+
import test from "node:test";
|
|
12
|
+
import assert from "node:assert/strict";
|
|
13
|
+
import { buildDarwinServiceEnvPath } from "../port-resolution.js";
|
|
14
|
+
test("prepends the nvm node dir and ~/.local/bin ahead of the Homebrew prefixes, ending in $PATH", () => {
|
|
15
|
+
const path = buildDarwinServiceEnvPath("/Users/neo/.nvm/versions/node/v20.11.0/bin/node", "/Users/neo");
|
|
16
|
+
assert.equal(path, "/Users/neo/.nvm/versions/node/v20.11.0/bin:/Users/neo/.local/bin:/opt/homebrew/bin:/usr/local/bin:$PATH");
|
|
17
|
+
});
|
|
18
|
+
test("node dir is the first segment so a bare `node` resolves to the pinned interpreter first", () => {
|
|
19
|
+
const path = buildDarwinServiceEnvPath("/opt/homebrew/bin/node", "/Users/me");
|
|
20
|
+
assert.equal(path.split(":")[0], "/opt/homebrew/bin");
|
|
21
|
+
});
|
|
22
|
+
test("includes the account home's ~/.local/bin so the graph-cypher `uvx` resolves", () => {
|
|
23
|
+
const path = buildDarwinServiceEnvPath("/usr/local/bin/node", "/Users/alice");
|
|
24
|
+
assert.ok(path.includes(":/Users/alice/.local/bin:"), path);
|
|
25
|
+
});
|
|
26
|
+
test("keeps the existing $PATH expansion as the final segment", () => {
|
|
27
|
+
const path = buildDarwinServiceEnvPath("/usr/local/bin/node", "/Users/me");
|
|
28
|
+
assert.ok(path.endsWith(":$PATH"), path);
|
|
29
|
+
});
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
// package so `node --test dist/__tests__/*.test.js` picks it up after build.
|
|
11
11
|
import test from "node:test";
|
|
12
12
|
import assert from "node:assert/strict";
|
|
13
|
-
import { renderPlist, buildSessionManagerWrapper } from "../launchd-plist.js";
|
|
13
|
+
import { renderPlist, buildSessionManagerWrapper, buildHeartbeatWrapper } from "../launchd-plist.js";
|
|
14
14
|
// ---------------------------------------------------------------------------
|
|
15
15
|
// Standard render — every required field present, no escaping needed.
|
|
16
16
|
// ---------------------------------------------------------------------------
|
|
@@ -213,6 +213,46 @@ test("buildSessionManagerWrapper sources .env and execs the manager", () => {
|
|
|
213
213
|
assert.match(w, /cd "\/Users\/x\/maxy-code\/platform\/services\/claude-session-manager"/);
|
|
214
214
|
assert.match(w, /exec \/usr\/local\/bin\/node dist\/index\.js\n$/);
|
|
215
215
|
});
|
|
216
|
+
// ---------------------------------------------------------------------------
|
|
217
|
+
// StartInterval — the darwin heartbeat timer (Task 1403). Emitted as
|
|
218
|
+
// <integer> only when set; absent from the standard server/manager plists.
|
|
219
|
+
// ---------------------------------------------------------------------------
|
|
220
|
+
test("renderPlist emits StartInterval as <integer> when set", () => {
|
|
221
|
+
const xml = renderPlist({
|
|
222
|
+
label: "com.rubytech.maxy-code-heartbeat",
|
|
223
|
+
programArguments: ["/bin/bash", "/Users/x/.maxy-code/heartbeat-wrapper.sh"],
|
|
224
|
+
stdoutPath: "/Users/x/.maxy-code/logs/check-due-events.log",
|
|
225
|
+
stderrPath: "/Users/x/.maxy-code/logs/check-due-events.log",
|
|
226
|
+
keepAlive: false,
|
|
227
|
+
runAtLoad: false,
|
|
228
|
+
startInterval: 60,
|
|
229
|
+
});
|
|
230
|
+
assert.match(xml, /<key>StartInterval<\/key>\s*<integer>60<\/integer>/);
|
|
231
|
+
assert.match(xml, /<key>KeepAlive<\/key>\s*<false\/>/);
|
|
232
|
+
assert.match(xml, /<key>RunAtLoad<\/key>\s*<false\/>/);
|
|
233
|
+
});
|
|
234
|
+
test("renderPlist omits StartInterval key when absent (standard plists unchanged)", () => {
|
|
235
|
+
const xml = renderPlist({
|
|
236
|
+
label: "com.rubytech.maxy-code",
|
|
237
|
+
programArguments: ["/bin/bash", "/Users/x/.maxy-code/launchd-wrapper.sh"],
|
|
238
|
+
stdoutPath: "/dev/null",
|
|
239
|
+
stderrPath: "/dev/null",
|
|
240
|
+
keepAlive: true,
|
|
241
|
+
runAtLoad: true,
|
|
242
|
+
});
|
|
243
|
+
assert.ok(!/StartInterval/.test(xml), "StartInterval must not appear when omitted");
|
|
244
|
+
});
|
|
245
|
+
test("buildHeartbeatWrapper sources .env, exports PLATFORM_ROOT, execs the tick", () => {
|
|
246
|
+
const w = buildHeartbeatWrapper({
|
|
247
|
+
envPath: "/Users/x/.maxy-code/.env",
|
|
248
|
+
installDir: "/Users/x/maxy-code",
|
|
249
|
+
nodeBin: "/opt/homebrew/bin/node",
|
|
250
|
+
});
|
|
251
|
+
assert.match(w, /^#!\/bin\/bash\n/);
|
|
252
|
+
assert.match(w, /set -a; \[ -f "\/Users\/x\/\.maxy-code\/\.env" \] && \. "\/Users\/x\/\.maxy-code\/\.env"; set \+a/);
|
|
253
|
+
assert.match(w, /export PLATFORM_ROOT="\/Users\/x\/maxy-code\/platform"/);
|
|
254
|
+
assert.match(w, /exec \/opt\/homebrew\/bin\/node \/Users\/x\/maxy-code\/platform\/plugins\/scheduling\/mcp\/dist\/scripts\/check-due-events\.js\n$/);
|
|
255
|
+
});
|
|
216
256
|
test("session-manager plist renders bash wrapper as sole ProgramArguments", () => {
|
|
217
257
|
const xml = renderPlist({
|
|
218
258
|
label: "com.rubytech.maxy-code-claude-session-manager",
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { registerSpecialistAgentsAt, SpecialistSymlinkCollision } from "./specia
|
|
|
5
5
|
import { seedBypassPermissionsSettings, assertBypassPermissionsSeed } from "./permissions-seed.js";
|
|
6
6
|
import { resolve, join, dirname } from "node:path";
|
|
7
7
|
import { randomBytes } from "node:crypto";
|
|
8
|
-
import { resolveInstallPortFromFs, buildMaxyUnitFile, buildClaudeSessionManagerUnitFile, buildClaudePtysSliceUnitFile, buildCloudflaredSliceUnitFile } from "./port-resolution.js";
|
|
8
|
+
import { resolveInstallPortFromFs, buildMaxyUnitFile, buildClaudeSessionManagerUnitFile, buildClaudePtysSliceUnitFile, buildCloudflaredSliceUnitFile, buildDarwinServiceEnvPath } from "./port-resolution.js";
|
|
9
9
|
import { buildHeartbeatCronBlock, mergeHeartbeatBlock } from "./cron-registration.js";
|
|
10
10
|
import { validateTierFlag, validateEntitlementBase64, applyTierToAccountConfig, entitlementPath } from "./tier-flag.js";
|
|
11
11
|
import { parseOsRelease, isUbuntuLike as isUbuntuLikePure, parseAptCacheCandidate, decideAptResolution, } from "./apt-resolve.js";
|
|
@@ -16,7 +16,7 @@ import { requireSupportedPlatform, detectPlatform } from "./platform-detect.js";
|
|
|
16
16
|
import { decideClaudeUpgradePrivilege } from "./claude-upgrade-privilege.js";
|
|
17
17
|
import { resolveNeo4jDataDir } from "./neo4j-datadir.js";
|
|
18
18
|
import { protectCommands, unprotectCommands, lsattrShowsImmutable } from "./install-immutability.js";
|
|
19
|
-
import { renderPlist, buildSessionManagerWrapper } from "./launchd-plist.js";
|
|
19
|
+
import { renderPlist, buildSessionManagerWrapper, buildHeartbeatWrapper } from "./launchd-plist.js";
|
|
20
20
|
import { bootstrapLaunchAgent } from "./launchd-bootstrap.js";
|
|
21
21
|
import { enumerateClaudeCandidates, pickCanonicalClaude } from "./claude-bin.js";
|
|
22
22
|
import { installAllBrewPackages } from "./brew-install.js";
|
|
@@ -1899,7 +1899,16 @@ function capOllamaServiceCpu() {
|
|
|
1899
1899
|
function installOllama(embedModel) {
|
|
1900
1900
|
if (!commandExists("ollama")) {
|
|
1901
1901
|
log("5", TOTAL, "Installing Ollama...");
|
|
1902
|
-
|
|
1902
|
+
// The upstream curl|sh installer only places a Linux systemd daemon; on
|
|
1903
|
+
// darwin it leaves no `ollama` CLI, so ensureOllamaServing()'s `ollama serve`
|
|
1904
|
+
// spawn would fail. Install via Homebrew instead, mirroring installNeo4j /
|
|
1905
|
+
// installCloudflared (Task 1403).
|
|
1906
|
+
if (requireSupportedPlatform(process.platform) === "darwin") {
|
|
1907
|
+
installAllBrewPackages(["ollama"], logFile);
|
|
1908
|
+
}
|
|
1909
|
+
else {
|
|
1910
|
+
spawnSync("bash", ["-c", "curl -fsSL https://ollama.ai/install.sh | sh"], { stdio: "inherit" });
|
|
1911
|
+
}
|
|
1903
1912
|
}
|
|
1904
1913
|
else {
|
|
1905
1914
|
log("5", TOTAL, "Ollama already installed.");
|
|
@@ -3301,6 +3310,18 @@ function installServiceDarwin() {
|
|
|
3301
3310
|
`setupAccount() (setup-account.sh) should have created one. Refusing to write .env ` +
|
|
3302
3311
|
`without ACCOUNT_ID; the boot validator would FATAL on every kickstart.`);
|
|
3303
3312
|
}
|
|
3313
|
+
// Resolve node once, up front: the launchd wrapper execs it (below) and the
|
|
3314
|
+
// .env pins it as NODE_BIN so the session-manager's per-session channel MCP
|
|
3315
|
+
// descriptors invoke node by absolute path. The bare launchd PATH excludes an
|
|
3316
|
+
// nvm node, so a bare `node` command in an MCP descriptor fails to spawn and
|
|
3317
|
+
// the channel never boots (Task 1402). Intel `/usr/local/bin/node`, Apple
|
|
3318
|
+
// Silicon `/opt/homebrew/bin/node`, or nvm's versioned path — whatever the
|
|
3319
|
+
// installer's own shell resolves.
|
|
3320
|
+
const nodeProbe = spawnSync("command", ["-v", "node"], { encoding: "utf-8", shell: true });
|
|
3321
|
+
const nodeBin = (nodeProbe.stdout ?? "").trim() || "/usr/local/bin/node";
|
|
3322
|
+
// Task 1404 — the darwin `.env` PATH, computed once and reused for both the
|
|
3323
|
+
// PATH env value and the install log so the two can never drift.
|
|
3324
|
+
const darwinServiceEnvPath = buildDarwinServiceEnvPath(nodeBin, process.env.HOME ?? "/");
|
|
3304
3325
|
const envPath = join(persistDir, ".env");
|
|
3305
3326
|
try {
|
|
3306
3327
|
let envContent = "";
|
|
@@ -3329,7 +3350,15 @@ function installServiceDarwin() {
|
|
|
3329
3350
|
// against the bare launchd PATH and Homebrew prefixes get prepended for
|
|
3330
3351
|
// every spawned descendant (claude-session-manager, MCP plugin spawns,
|
|
3331
3352
|
// route-level spawn('claude', ...)). Task 386.
|
|
3332
|
-
|
|
3353
|
+
//
|
|
3354
|
+
// Task 1404 — also prepend the resolved node bin dir and ~/.local/bin.
|
|
3355
|
+
// The plugin MCP servers `claude` spawns itself from a PLUGIN.md
|
|
3356
|
+
// `mcp: command: node` inherit this PATH; when the only node is nvm's
|
|
3357
|
+
// (off the Homebrew prefixes) a bare `node server.js` fails ENOENT and
|
|
3358
|
+
// the graph-write tools never register. buildDarwinServiceEnvPath makes
|
|
3359
|
+
// `node` resolve (node bin dir) and the graph-cypher `uvx` resolve
|
|
3360
|
+
// (~/.local/bin). Channel MCPs pin NODE_BIN separately (Task 1402).
|
|
3361
|
+
["PATH", darwinServiceEnvPath],
|
|
3333
3362
|
]) {
|
|
3334
3363
|
const re = new RegExp(`^${key}=.*$`, "m");
|
|
3335
3364
|
if (re.test(envContent)) {
|
|
@@ -3351,8 +3380,19 @@ function installServiceDarwin() {
|
|
|
3351
3380
|
else
|
|
3352
3381
|
envContent = envContent.trimEnd() + (envContent.length > 0 ? "\n" : "") + `CLAUDE_BIN=${canonicalClaude}\n`;
|
|
3353
3382
|
}
|
|
3383
|
+
// Task 1402 — pin the resolved node the same way. The session-manager reads
|
|
3384
|
+
// NODE_BIN and stamps it as the `command` of every per-session channel MCP
|
|
3385
|
+
// descriptor, so a webchat/WhatsApp/Telegram channel spawns node by absolute
|
|
3386
|
+
// path instead of a bare `node` the launchd PATH can't resolve.
|
|
3387
|
+
{
|
|
3388
|
+
const re = /^NODE_BIN=.*$/m;
|
|
3389
|
+
if (re.test(envContent))
|
|
3390
|
+
envContent = envContent.replace(re, `NODE_BIN=${nodeBin}`);
|
|
3391
|
+
else
|
|
3392
|
+
envContent = envContent.trimEnd() + (envContent.length > 0 ? "\n" : "") + `NODE_BIN=${nodeBin}\n`;
|
|
3393
|
+
}
|
|
3354
3394
|
writeFileSync(envPath, envContent);
|
|
3355
|
-
logFile(` .env: DISPLAY_MODE=${DISPLAY_MODE}, EMBED_MODEL=${EMBED_MODEL}, EMBED_DIMENSIONS=${EMBED_DIMS}, NEO4J_URI=bolt://localhost:${NEO4J_PORT}, PORT=${PORT}, MAXY_UI_INTERNAL_PORT=${PORT} (darwin-collapsed), CLAUDE_SESSION_MANAGER_PORT=${BRAND.claudeSessionManagerPort}, HOSTNAME=0.0.0.0, ACCOUNT_ID=${installAccountId.slice(0, 8)}…, CLAUDE_CONFIG_DIR=${persistDir}/.claude, CLAUDE_BIN=${canonicalClaude ?? "unresolved(PATH)"}`);
|
|
3395
|
+
logFile(` .env: DISPLAY_MODE=${DISPLAY_MODE}, EMBED_MODEL=${EMBED_MODEL}, EMBED_DIMENSIONS=${EMBED_DIMS}, NEO4J_URI=bolt://localhost:${NEO4J_PORT}, PORT=${PORT}, MAXY_UI_INTERNAL_PORT=${PORT} (darwin-collapsed), CLAUDE_SESSION_MANAGER_PORT=${BRAND.claudeSessionManagerPort}, HOSTNAME=0.0.0.0, ACCOUNT_ID=${installAccountId.slice(0, 8)}…, CLAUDE_CONFIG_DIR=${persistDir}/.claude, CLAUDE_BIN=${canonicalClaude ?? "unresolved(PATH)"}, NODE_BIN=${nodeBin}, PATH=${darwinServiceEnvPath}`);
|
|
3356
3396
|
}
|
|
3357
3397
|
catch (err) {
|
|
3358
3398
|
console.error(` WARNING: failed to write .env to ${envPath}: ${err instanceof Error ? err.message : String(err)}`);
|
|
@@ -3362,11 +3402,7 @@ function installServiceDarwin() {
|
|
|
3362
3402
|
// in the child env. Without this, ProgramArguments executes node directly
|
|
3363
3403
|
// and the .env values are unread — server binds the wrong port.
|
|
3364
3404
|
const wrapperPath = join(persistDir, "launchd-wrapper.sh");
|
|
3365
|
-
//
|
|
3366
|
-
// path on both Intel (/usr/local/bin/node) and Apple Silicon
|
|
3367
|
-
// (/opt/homebrew/bin/node) — Homebrew's prefix differs by arch.
|
|
3368
|
-
const nodeProbe = spawnSync("command", ["-v", "node"], { encoding: "utf-8", shell: true });
|
|
3369
|
-
const nodeBin = (nodeProbe.stdout ?? "").trim() || "/usr/local/bin/node";
|
|
3405
|
+
// `nodeBin` resolved once above (also pinned as NODE_BIN in .env).
|
|
3370
3406
|
const wrapperBody = [
|
|
3371
3407
|
"#!/bin/bash",
|
|
3372
3408
|
"# generated by create-maxy installService(). Reads.env then",
|
|
@@ -3481,6 +3517,45 @@ function installServiceDarwin() {
|
|
|
3481
3517
|
if (!smUp) {
|
|
3482
3518
|
console.log(` Session manager not yet healthy on ${BRAND.claudeSessionManagerPort} — check ${join(logsDir, "server.log")}.`);
|
|
3483
3519
|
}
|
|
3520
|
+
// Task 1403 — the scheduling heartbeat. On Linux a per-minute cron ticks
|
|
3521
|
+
// check-due-events.js (installCrons/buildHeartbeatCronBlock); darwin has no
|
|
3522
|
+
// cron and installCrons early-returns, so operator-created bookings would
|
|
3523
|
+
// never dispatch. Author a StartInterval=60 LaunchAgent as the timer analogue:
|
|
3524
|
+
// keepAlive=false (a periodic one-shot, not a supervised daemon). A bootstrap
|
|
3525
|
+
// failure warns rather than aborting install — the server + manager (core
|
|
3526
|
+
// function) are already up; scheduling retries on the next installer run.
|
|
3527
|
+
const hbLabel = `${launchdLabel()}-heartbeat`;
|
|
3528
|
+
const hbPlistPath = join(launchAgentsDir(), `${hbLabel}.plist`);
|
|
3529
|
+
const hbWrapperPath = join(persistDir, "heartbeat-wrapper.sh");
|
|
3530
|
+
writeFileSync(hbWrapperPath, buildHeartbeatWrapper({ envPath, installDir: INSTALL_DIR, nodeBin }));
|
|
3531
|
+
chmodSync(hbWrapperPath, 0o755);
|
|
3532
|
+
const hbPlist = renderPlist({
|
|
3533
|
+
label: hbLabel,
|
|
3534
|
+
programArguments: ["/bin/bash", hbWrapperPath],
|
|
3535
|
+
stdoutPath: join(logsDir, "check-due-events.log"),
|
|
3536
|
+
stderrPath: join(logsDir, "check-due-events.log"),
|
|
3537
|
+
keepAlive: false,
|
|
3538
|
+
runAtLoad: false,
|
|
3539
|
+
startInterval: 60,
|
|
3540
|
+
});
|
|
3541
|
+
writeFileSync(hbPlistPath, hbPlist);
|
|
3542
|
+
logFile(` ${hbPlistPath} written (${hbPlist.length} bytes)`);
|
|
3543
|
+
const hbBoot = bootstrapLaunchAgent((args) => {
|
|
3544
|
+
const r = spawnSync("launchctl", args, { stdio: "pipe", encoding: "utf-8", timeout: 15_000 });
|
|
3545
|
+
return { status: r.status, stderr: (r.stderr ?? "").toString() };
|
|
3546
|
+
}, {
|
|
3547
|
+
gui: gui(),
|
|
3548
|
+
label: hbLabel,
|
|
3549
|
+
plistPath: hbPlistPath,
|
|
3550
|
+
logger: (line) => { console.log(` ${line}`); logFile(` ${line}`); },
|
|
3551
|
+
});
|
|
3552
|
+
if (hbBoot.ok) {
|
|
3553
|
+
logFile(` [create-maxy] launchd-plist=${hbLabel} loaded=true attempts=${hbBoot.attempts}`);
|
|
3554
|
+
}
|
|
3555
|
+
else {
|
|
3556
|
+
console.error(` WARNING: heartbeat LaunchAgent ${hbLabel} bootstrap returned ${hbBoot.bootstrapStatus} after ${hbBoot.attempts} attempt(s): ${hbBoot.stderr} — scheduling ticks will not fire until a re-install succeeds.`);
|
|
3557
|
+
logFile(` [create-maxy] launchd-plist=${hbLabel} loaded=false exit=${hbBoot.bootstrapStatus} attempts=${hbBoot.attempts}`);
|
|
3558
|
+
}
|
|
3484
3559
|
// Wait for the server to come up.
|
|
3485
3560
|
console.log(" Waiting for web server...");
|
|
3486
3561
|
let webServerUp = false;
|
package/dist/launchd-plist.js
CHANGED
|
@@ -52,6 +52,29 @@ export function buildSessionManagerWrapper(o) {
|
|
|
52
52
|
"",
|
|
53
53
|
].join("\n");
|
|
54
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Bash wrapper for the darwin scheduling-heartbeat LaunchAgent (Task 1403).
|
|
57
|
+
* launchd's StartInterval timer is the analogue of the Linux per-minute cron
|
|
58
|
+
* (buildHeartbeatCronBlock) that ticks `check-due-events.js`. The wrapper
|
|
59
|
+
* sources the brand `.env` for NEO4J_URI + MAXY_UI_INTERNAL_PORT, exports
|
|
60
|
+
* PLATFORM_ROOT (the tick's own env contract, matching the cron line's
|
|
61
|
+
* `PLATFORM_ROOT=` prefix), and execs the tick once. launchd re-invokes it
|
|
62
|
+
* every StartInterval seconds; there is no long-running process to supervise.
|
|
63
|
+
*/
|
|
64
|
+
export function buildHeartbeatWrapper(o) {
|
|
65
|
+
const script = `${o.installDir}/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js`;
|
|
66
|
+
return [
|
|
67
|
+
"#!/bin/bash",
|
|
68
|
+
"# generated by create-maxy installServiceDarwin() — Task 1403 heartbeat.",
|
|
69
|
+
"# launchd StartInterval analogue of the Linux per-minute scheduling cron.",
|
|
70
|
+
"# Sources .env (NEO4J_URI, MAXY_UI_INTERNAL_PORT), exports PLATFORM_ROOT,",
|
|
71
|
+
"# execs one check-due-events.js tick.",
|
|
72
|
+
`set -a; [ -f "${o.envPath}" ] && . "${o.envPath}"; set +a`,
|
|
73
|
+
`export PLATFORM_ROOT="${o.installDir}/platform"`,
|
|
74
|
+
`exec ${o.nodeBin} ${script}`,
|
|
75
|
+
"",
|
|
76
|
+
].join("\n");
|
|
77
|
+
}
|
|
55
78
|
export function renderPlist(spec) {
|
|
56
79
|
const lines = [];
|
|
57
80
|
lines.push(`<?xml version="1.0" encoding="UTF-8"?>`);
|
|
@@ -78,6 +101,10 @@ export function renderPlist(spec) {
|
|
|
78
101
|
lines.push(` ${spec.keepAlive ? "<true/>" : "<false/>"}`);
|
|
79
102
|
lines.push(` <key>RunAtLoad</key>`);
|
|
80
103
|
lines.push(` ${spec.runAtLoad ? "<true/>" : "<false/>"}`);
|
|
104
|
+
if (spec.startInterval !== undefined) {
|
|
105
|
+
lines.push(` <key>StartInterval</key>`);
|
|
106
|
+
lines.push(` <integer>${spec.startInterval}</integer>`);
|
|
107
|
+
}
|
|
81
108
|
lines.push(`</dict>`);
|
|
82
109
|
lines.push(`</plist>`);
|
|
83
110
|
return lines.join("\n") + "\n";
|
package/dist/port-resolution.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { existsSync, readFileSync } from "node:fs";
|
|
2
|
-
import { join } from "node:path";
|
|
2
|
+
import { dirname, join } from "node:path";
|
|
3
3
|
import os from "node:os";
|
|
4
4
|
const PORT_RE = /^PORT=(\d+)/m;
|
|
5
5
|
const ENV_PORT_RE = /^Environment=PORT=(\d+)/m;
|
|
@@ -224,3 +224,18 @@ Before=shutdown.target
|
|
|
224
224
|
WantedBy=default.target
|
|
225
225
|
`;
|
|
226
226
|
}
|
|
227
|
+
/** The darwin `.env` PATH line. launchd hands the brand server a bare PATH
|
|
228
|
+
* (`/usr/bin:/bin:/usr/sbin:/sbin`) and the wrapper sources `.env` so every
|
|
229
|
+
* descendant inherits this value — including the plugin MCP servers `claude`
|
|
230
|
+
* spawns itself from a `PLUGIN.md` `mcp: command: node`. When the only `node`
|
|
231
|
+
* is nvm's (off the Homebrew prefixes), a bare `node server.js` fails ENOENT
|
|
232
|
+
* and the plugin's graph-write tools never register. Prepending the resolved
|
|
233
|
+
* node bin dir makes bare `node` resolve; prepending `~/.local/bin` makes the
|
|
234
|
+
* graph-cypher `uvx` resolve. The Homebrew prefixes and the sourced-time
|
|
235
|
+
* `$PATH` expansion are retained. Channel MCPs pin NODE_BIN separately
|
|
236
|
+
* (Task 1402); this covers the plugin/graph half of the same root cause. */
|
|
237
|
+
export function buildDarwinServiceEnvPath(nodeBin, home) {
|
|
238
|
+
const nodeDir = dirname(nodeBin);
|
|
239
|
+
const localBin = join(home, ".local", "bin");
|
|
240
|
+
return `${nodeDir}:${localBin}:/opt/homebrew/bin:/usr/local/bin:$PATH`;
|
|
241
|
+
}
|
package/dist/uninstall.js
CHANGED
|
@@ -78,8 +78,21 @@ function isDarwin() {
|
|
|
78
78
|
function launchdLabel() {
|
|
79
79
|
return `com.rubytech.${BRAND.hostname}`;
|
|
80
80
|
}
|
|
81
|
+
/** Every LaunchAgent label installServiceDarwin() creates for this brand: the
|
|
82
|
+
* main server, the claude-session-manager (Task 1395), and the scheduling
|
|
83
|
+
* heartbeat (Task 1403). Uninstall boots out and removes all three. */
|
|
84
|
+
function darwinLaunchdLabels() {
|
|
85
|
+
return [
|
|
86
|
+
launchdLabel(),
|
|
87
|
+
`${launchdLabel()}-claude-session-manager`,
|
|
88
|
+
`${launchdLabel()}-heartbeat`,
|
|
89
|
+
];
|
|
90
|
+
}
|
|
91
|
+
function plistPathFor(label) {
|
|
92
|
+
return resolve(HOME, "Library/LaunchAgents", `${label}.plist`);
|
|
93
|
+
}
|
|
81
94
|
function plistPath() {
|
|
82
|
-
return
|
|
95
|
+
return plistPathFor(launchdLabel());
|
|
83
96
|
}
|
|
84
97
|
function gui() {
|
|
85
98
|
const uid = typeof process.getuid === "function" ? process.getuid() : 0;
|
|
@@ -163,13 +176,18 @@ function peerBrandPresent() {
|
|
|
163
176
|
// ---------------------------------------------------------------------------
|
|
164
177
|
function stopServices() {
|
|
165
178
|
log("1", "Stopping services...");
|
|
166
|
-
// darwin: bootout
|
|
167
|
-
// 113 ("Unknown service") when the agent isn't loaded — both are
|
|
179
|
+
// darwin: bootout every LaunchAgent this install created. bootout exits 0 on
|
|
180
|
+
// success, 113 ("Unknown service") when the agent isn't loaded — both are
|
|
168
181
|
// acceptable end-states for "service stopped". The plist removal in
|
|
169
|
-
// removeSystemdService() finishes the cleanup.
|
|
182
|
+
// removeSystemdService() finishes the cleanup. Three labels share the brand
|
|
183
|
+
// prefix: the main server, the claude-session-manager (Task 1395), and the
|
|
184
|
+
// scheduling heartbeat (Task 1403). The latter two were previously never
|
|
185
|
+
// booted out on uninstall.
|
|
170
186
|
if (isDarwin()) {
|
|
171
|
-
|
|
172
|
-
|
|
187
|
+
for (const label of darwinLaunchdLabels()) {
|
|
188
|
+
spawnSync("launchctl", ["bootout", `${gui()}/${label}`], { stdio: "pipe", timeout: 15_000 });
|
|
189
|
+
console.log(` Booted out ${label}`);
|
|
190
|
+
}
|
|
173
191
|
return;
|
|
174
192
|
}
|
|
175
193
|
// Stop platform user service
|
|
@@ -465,6 +483,14 @@ function removeAppDirs() {
|
|
|
465
483
|
// ---------------------------------------------------------------------------
|
|
466
484
|
function removeNeo4jData() {
|
|
467
485
|
log("5", "Removing Neo4j data...");
|
|
486
|
+
// This function's teardown is Linux-shaped: `sudo systemctl daemon-reload`
|
|
487
|
+
// and `sudo rm -rf /var/lib/neo4j/*`. On darwin that raises a spurious sudo
|
|
488
|
+
// prompt and logs a FAILED. Skip here (Task 1403); darwin Neo4j data teardown
|
|
489
|
+
// belongs to Task 1396 (dedicated Neo4j on darwin).
|
|
490
|
+
if (!isLinux()) {
|
|
491
|
+
console.log(" Not Linux — skipping.");
|
|
492
|
+
return;
|
|
493
|
+
}
|
|
468
494
|
// Brand isolation: remove only THIS brand's Neo4j data. Shared
|
|
469
495
|
// 7687 data is skipped entirely when a peer brand is present. Dedicated
|
|
470
496
|
// branded instances live at /var/lib/neo4j-<hostname>/ and are always
|
|
@@ -666,24 +692,26 @@ function removeSystemConfig() {
|
|
|
666
692
|
function removeSystemdService() {
|
|
667
693
|
log("8", "Removing systemd service...");
|
|
668
694
|
// darwin: bootout (idempotent — already done in stopServices,
|
|
669
|
-
// re-running is a no-op exit 113) and delete the plist
|
|
670
|
-
// shell
|
|
671
|
-
// so no separate cleanup is needed.
|
|
695
|
+
// re-running is a no-op exit 113) and delete the plist for every LaunchAgent
|
|
696
|
+
// this brand created. The wrapper shell scripts live in CONFIG_DIR which
|
|
697
|
+
// step 4 (removeAppDirs) wipes, so no separate cleanup is needed.
|
|
672
698
|
if (isDarwin()) {
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
699
|
+
for (const label of darwinLaunchdLabels()) {
|
|
700
|
+
spawnSync("launchctl", ["bootout", `${gui()}/${label}`], { stdio: "pipe", timeout: 15_000 });
|
|
701
|
+
const plist = plistPathFor(label);
|
|
702
|
+
if (existsSync(plist)) {
|
|
703
|
+
try {
|
|
704
|
+
rmSync(plist);
|
|
705
|
+
console.log(` Removed ${plist}`);
|
|
706
|
+
}
|
|
707
|
+
catch (err) {
|
|
708
|
+
console.log(` Failed to remove ${plist}: ${err instanceof Error ? err.message : String(err)}`);
|
|
709
|
+
}
|
|
679
710
|
}
|
|
680
|
-
|
|
681
|
-
console.log(`
|
|
711
|
+
else {
|
|
712
|
+
console.log(` ${plist} not found — skipping`);
|
|
682
713
|
}
|
|
683
714
|
}
|
|
684
|
-
else {
|
|
685
|
-
console.log(` ${plist} not found — skipping`);
|
|
686
|
-
}
|
|
687
715
|
return;
|
|
688
716
|
}
|
|
689
717
|
// Disable the service
|
|
@@ -737,6 +765,14 @@ function removeSystemdService() {
|
|
|
737
765
|
// ---------------------------------------------------------------------------
|
|
738
766
|
function removeOllama() {
|
|
739
767
|
log("9", "Removing Ollama...");
|
|
768
|
+
// The stop/disable below is `sudo systemctl` — Linux-only. On darwin it would
|
|
769
|
+
// raise a spurious sudo prompt and log a FAILED. Skip like removeSamba /
|
|
770
|
+
// removeSystemConfig (Task 1403); brew-ollama teardown on darwin is out of
|
|
771
|
+
// scope here.
|
|
772
|
+
if (!isLinux()) {
|
|
773
|
+
console.log(" Not Linux — skipping.");
|
|
774
|
+
return;
|
|
775
|
+
}
|
|
740
776
|
// Brand isolation: the Ollama binary and systemd service are
|
|
741
777
|
// device-wide singletons — every brand on this device shares one Ollama
|
|
742
778
|
// process. Leave both in place when a peer brand is still installed;
|
package/package.json
CHANGED
|
@@ -8,6 +8,11 @@ export interface ChannelMcpServerEntry {
|
|
|
8
8
|
export declare function buildChannelMcpServers(p: {
|
|
9
9
|
sessionId: string;
|
|
10
10
|
targets: ChannelTargetSet;
|
|
11
|
+
/** Absolute path to the node binary that runs the channel server. On darwin
|
|
12
|
+
* the launchd server PATH excludes an nvm node, so a bare `node` command
|
|
13
|
+
* fails to spawn and the channel never boots (Task 1402); callers pass the
|
|
14
|
+
* installer-resolved NODE_BIN. */
|
|
15
|
+
nodeBin: string;
|
|
11
16
|
}): Record<string, ChannelMcpServerEntry>;
|
|
12
17
|
export declare function channelDevChannelsArgv(): string[];
|
|
13
18
|
export declare function channelMcpConfigPath(sessionId: string, dir: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-mcp.d.ts","sourceRoot":"","sources":["../src/channel-mcp.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAE5D,eAAO,MAAM,mBAAmB,YAAY,CAAA;AAE5C,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC5B;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"channel-mcp.d.ts","sourceRoot":"","sources":["../src/channel-mcp.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAE5D,eAAO,MAAM,mBAAmB,YAAY,CAAA;AAE5C,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC5B;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE;IACxC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,gBAAgB,CAAA;IACzB;;;uCAGmC;IACnC,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAexC;AAED,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAEjD;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhE"}
|
|
@@ -13,7 +13,7 @@ export function buildChannelMcpServers(p) {
|
|
|
13
13
|
throw new Error('buildChannelMcpServers: empty target set');
|
|
14
14
|
return {
|
|
15
15
|
[CHANNEL_SERVER_NAME]: {
|
|
16
|
-
command:
|
|
16
|
+
command: p.nodeBin,
|
|
17
17
|
args: [anyTarget.serverPath],
|
|
18
18
|
env: {
|
|
19
19
|
CHANNEL_SESSION_ID: p.sessionId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-mcp.js","sourceRoot":"","sources":["../src/channel-mcp.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+EAA+E;AAC/E,+EAA+E;AAC/E,6EAA6E;AAC7E,iFAAiF;AAEjF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGhC,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAA;AAQ5C,MAAM,UAAU,sBAAsB,CAAC,
|
|
1
|
+
{"version":3,"file":"channel-mcp.js","sourceRoot":"","sources":["../src/channel-mcp.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+EAA+E;AAC/E,+EAA+E;AAC/E,6EAA6E;AAC7E,iFAAiF;AAEjF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGhC,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAAA;AAQ5C,MAAM,UAAU,sBAAsB,CAAC,CAQtC;IACC,mEAAmE;IACnE,wDAAwD;IACxD,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAA;IACzD,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAC3E,OAAO;QACL,CAAC,mBAAmB,CAAC,EAAE;YACrB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,IAAI,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC;YAC5B,GAAG,EAAE;gBACH,kBAAkB,EAAE,CAAC,CAAC,SAAS;gBAC/B,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;aAC3C;SACF;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,CAAC,yCAAyC,EAAE,UAAU,mBAAmB,EAAE,CAAC,CAAA;AACrF,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,GAAW;IACjE,OAAO,IAAI,CAAC,GAAG,EAAE,gBAAgB,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;AACpF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,aAAqB;IACpD,OAAO,CAAC,cAAc,EAAE,aAAa,EAAE,GAAG,sBAAsB,EAAE,CAAC,CAAA;AACrE,CAAC"}
|
|
@@ -10,6 +10,12 @@ export interface ManagerConfig {
|
|
|
10
10
|
port: number;
|
|
11
11
|
persistDir: string;
|
|
12
12
|
claudeBin: string;
|
|
13
|
+
/** Absolute node binary for spawned channel-MCP children. On darwin the
|
|
14
|
+
* launchd server PATH excludes an nvm node, so channel descriptors must name
|
|
15
|
+
* node explicitly rather than relying on a bare `node` on PATH (Task 1402).
|
|
16
|
+
* Falls back to bare `node` when NODE_BIN is unset (Linux, where node is on
|
|
17
|
+
* the base PATH). */
|
|
18
|
+
nodeBin: string;
|
|
13
19
|
spawnCwd: string;
|
|
14
20
|
urlCaptureTimeoutMs: number;
|
|
15
21
|
killGraceMs: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAGL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAA;AAGhC,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD;;4DAEwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB;;4EAEwE;IACxE,aAAa,EAAE,MAAM,CAAA;IACrB;;;gEAG4D;IAC5D,eAAe,EAAE,MAAM,CAAA;IACvB;;2EAEuE;IACvE,WAAW,EAAE,MAAM,CAAA;IACnB;;0EAEsE;IACtE,iBAAiB,EAAE,MAAM,CAAA;IACzB,IAAI,EAAE,cAAc,CAAA;IACpB;;;;;;;8BAO0B;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB;;;qDAGiD;IACjD,iBAAiB,EAAE,iBAAiB,CAAA;IACpC;;gFAE4E;IAC5E,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAwLD;;;;;;;6EAO6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAyBvE;AAED;;eAEe;AACf,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAE9D;AAED;;;;;;;kCAOkC;AAClC,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI/F;AAUD,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,aAAa,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAGL,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAA;AAGhC,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD;;4DAEwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB;;;;0BAIsB;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB;;4EAEwE;IACxE,aAAa,EAAE,MAAM,CAAA;IACrB;;;gEAG4D;IAC5D,eAAe,EAAE,MAAM,CAAA;IACvB;;2EAEuE;IACvE,WAAW,EAAE,MAAM,CAAA;IACnB;;0EAEsE;IACtE,iBAAiB,EAAE,MAAM,CAAA;IACzB,IAAI,EAAE,cAAc,CAAA;IACpB;;;;;;;8BAO0B;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB;;;qDAGiD;IACjD,iBAAiB,EAAE,iBAAiB,CAAA;IACpC;;gFAE4E;IAC5E,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAwLD;;;;;;;6EAO6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;CACd;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAyBvE;AAED;;eAEe;AACf,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CAE9D;AAED;;;;;;;kCAOkC;AAClC,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI/F;AAUD,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,aAAa,CAyE9E"}
|
|
@@ -241,6 +241,7 @@ export function loadConfig(env = process.env) {
|
|
|
241
241
|
}
|
|
242
242
|
const persistDir = env.CLAUDE_SESSION_MANAGER_PERSIST_DIR ?? join(homedir(), '.maxy');
|
|
243
243
|
const claudeBin = env.CLAUDE_BIN ?? 'claude';
|
|
244
|
+
const nodeBin = env.NODE_BIN ?? 'node';
|
|
244
245
|
const brand = loadBrand(env);
|
|
245
246
|
const platformRoot = env.PLATFORM_ROOT ?? env.MAXY_PLATFORM_ROOT;
|
|
246
247
|
if (!platformRoot) {
|
|
@@ -281,6 +282,7 @@ export function loadConfig(env = process.env) {
|
|
|
281
282
|
port,
|
|
282
283
|
persistDir,
|
|
283
284
|
claudeBin,
|
|
285
|
+
nodeBin,
|
|
284
286
|
spawnCwd,
|
|
285
287
|
urlCaptureTimeoutMs: DEFAULT_URL_TIMEOUT_MS,
|
|
286
288
|
killGraceMs: DEFAULT_KILL_GRACE_MS,
|
|
@@ -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":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../src/http-server.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAe3B,OAAO,EAkBL,KAAK,SAAS,EAEf,MAAM,kBAAkB,CAAA;AA6BzB,OAAO,KAAK,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAA;AAEvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAyFlE,eAAO,MAAM,kBAAkB,QAA2B,CAAA;AAS1D,eAAO,MAAM,4BAA4B,QAAS,CAAA;AAIlD,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC7E;;qEAEiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,SAAS,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,WAAW,CAAA;IAC/B,eAAe,EAAE,aAAa,CAAA;IAC9B;kFAC8E;IAC9E,WAAW,EAAE,kBAAkB,CAAA;IAC/B;;gFAE4E;IAC5E,cAAc,EAAE,cAAc,CAAA;IAC9B;;;6BAGyB;IACzB,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;IACzC;;;sCAGkC;IAClC,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C;;gFAE4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAsFD;;;;;;mEAMmE;AACnE,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAiC9D;AAMD;;;;;;iBAMiB;AACjB,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAmCvF;AAID;;;;;;yBAMyB;AACzB,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAiCzD;AAkCD,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAEpG;AAgBD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1D;AAUD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAMvE;AAMD,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,MAAM,CAER;AAkCD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAe5F;AAwJD;;;kEAGkE;AAClE,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG;IAC3B,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACpD;;;+CAG2C;IAC3C,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAChD,CAAA;AA8CD,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../src/http-server.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAe3B,OAAO,EAkBL,KAAK,SAAS,EAEf,MAAM,kBAAkB,CAAA;AA6BzB,OAAO,KAAK,EAAE,SAAS,EAAyB,MAAM,iBAAiB,CAAA;AAEvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAyFlE,eAAO,MAAM,kBAAkB,QAA2B,CAAA;AAS1D,eAAO,MAAM,4BAA4B,QAAS,CAAA;AAIlD,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC7E;;qEAEiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,SAAS,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,WAAW,CAAA;IAC/B,eAAe,EAAE,aAAa,CAAA;IAC9B;kFAC8E;IAC9E,WAAW,EAAE,kBAAkB,CAAA;IAC/B;;gFAE4E;IAC5E,cAAc,EAAE,cAAc,CAAA;IAC9B;;;6BAGyB;IACzB,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;IACzC;;;sCAGkC;IAClC,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C;;gFAE4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAsFD;;;;;;mEAMmE;AACnE,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAiC9D;AAMD;;;;;;iBAMiB;AACjB,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAmCvF;AAID;;;;;;yBAMyB;AACzB,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAiCzD;AAkCD,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAEpG;AAgBD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1D;AAUD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAMvE;AAMD,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,MAAM,CAER;AAkCD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAe5F;AAwJD;;;kEAGkE;AAClE,MAAM,MAAM,OAAO,GAAG,IAAI,GAAG;IAC3B,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACpD;;;+CAG2C;IAC3C,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAChD,CAAA;AA8CD,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CA2wFpD"}
|