sensorium-mcp 3.1.0-refactor.18 → 3.1.0-refactor.20
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/config/agent-settings.d.ts +6 -0
- package/dist/config/agent-settings.d.ts.map +1 -1
- package/dist/config/agent-settings.js +22 -0
- package/dist/config/agent-settings.js.map +1 -1
- package/dist/config/detail-grant.d.ts +39 -0
- package/dist/config/detail-grant.d.ts.map +1 -0
- package/dist/config/detail-grant.js +61 -0
- package/dist/config/detail-grant.js.map +1 -0
- package/dist/config/index.d.ts +1 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +3 -3
- package/dist/config/index.js.map +1 -1
- package/dist/config/settings-store.d.ts.map +1 -1
- package/dist/config/settings-store.js +2 -3
- package/dist/config/settings-store.js.map +1 -1
- package/dist/dashboard/routes/copilot.d.ts.map +1 -1
- package/dist/dashboard/routes/copilot.js +17 -1
- package/dist/dashboard/routes/copilot.js.map +1 -1
- package/dist/dashboard/routes/threads-read.d.ts.map +1 -1
- package/dist/dashboard/routes/threads-read.js +15 -3
- package/dist/dashboard/routes/threads-read.js.map +1 -1
- package/dist/dashboard/routes/threads.d.ts.map +1 -1
- package/dist/dashboard/routes/threads.js +13 -4
- package/dist/dashboard/routes/threads.js.map +1 -1
- package/dist/dashboard/routes.d.ts.map +1 -1
- package/dist/dashboard/routes.js +11 -4
- package/dist/dashboard/routes.js.map +1 -1
- package/dist/dashboard/spa.html +11 -11
- package/dist/data/daily-marker.js +3 -3
- package/dist/data/daily-marker.js.map +1 -1
- package/dist/data/file-storage.d.ts.map +1 -1
- package/dist/data/file-storage.js +3 -3
- package/dist/data/file-storage.js.map +1 -1
- package/dist/data/memory/bootstrap.d.ts.map +1 -1
- package/dist/data/memory/bootstrap.js +2 -3
- package/dist/data/memory/bootstrap.js.map +1 -1
- package/dist/data/memory/migration-runner.d.ts.map +1 -1
- package/dist/data/memory/migration-runner.js +2 -3
- package/dist/data/memory/migration-runner.js.map +1 -1
- package/dist/data/memory/schema.js +2 -2
- package/dist/data/memory/schema.js.map +1 -1
- package/dist/index.js +54 -21
- package/dist/index.js.map +1 -1
- package/dist/lib/logger.d.ts.map +1 -1
- package/dist/lib/logger.js +21 -2
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/paths.d.ts +29 -0
- package/dist/lib/paths.d.ts.map +1 -0
- package/dist/lib/paths.js +36 -0
- package/dist/lib/paths.js.map +1 -0
- package/dist/server/factory.js +16 -6
- package/dist/server/factory.js.map +1 -1
- package/dist/server/http-server.d.ts.map +1 -1
- package/dist/server/http-server.js +22 -7
- package/dist/server/http-server.js.map +1 -1
- package/dist/services/agent-spawn.service.d.ts +3 -3
- package/dist/services/agent-spawn.service.d.ts.map +1 -1
- package/dist/services/agent-spawn.service.js +30 -9
- package/dist/services/agent-spawn.service.js.map +1 -1
- package/dist/services/background-runner.d.ts.map +1 -1
- package/dist/services/background-runner.js +22 -12
- package/dist/services/background-runner.js.map +1 -1
- package/dist/services/broker-client.d.ts +209 -0
- package/dist/services/broker-client.d.ts.map +1 -0
- package/dist/services/broker-client.js +359 -0
- package/dist/services/broker-client.js.map +1 -0
- package/dist/services/claude-spawn.service.d.ts +1 -1
- package/dist/services/claude-spawn.service.d.ts.map +1 -1
- package/dist/services/claude-spawn.service.js +25 -25
- package/dist/services/claude-spawn.service.js.map +1 -1
- package/dist/services/codex-spawn.service.d.ts +1 -1
- package/dist/services/codex-spawn.service.d.ts.map +1 -1
- package/dist/services/codex-spawn.service.js +19 -24
- package/dist/services/codex-spawn.service.js.map +1 -1
- package/dist/services/copilot-spawn.service.d.ts +1 -1
- package/dist/services/copilot-spawn.service.d.ts.map +1 -1
- package/dist/services/copilot-spawn.service.js +45 -36
- package/dist/services/copilot-spawn.service.js.map +1 -1
- package/dist/services/dispatcher/broker.d.ts +4 -3
- package/dist/services/dispatcher/broker.d.ts.map +1 -1
- package/dist/services/dispatcher/broker.js +23 -11
- package/dist/services/dispatcher/broker.js.map +1 -1
- package/dist/services/dispatcher/lock.js +2 -2
- package/dist/services/dispatcher/lock.js.map +1 -1
- package/dist/services/dispatcher/poller.d.ts.map +1 -1
- package/dist/services/dispatcher/poller.js +24 -5
- package/dist/services/dispatcher/poller.js.map +1 -1
- package/dist/services/flight-recorder.service.d.ts.map +1 -1
- package/dist/services/flight-recorder.service.js +43 -5
- package/dist/services/flight-recorder.service.js.map +1 -1
- package/dist/services/keeper.service.d.ts +9 -0
- package/dist/services/keeper.service.d.ts.map +1 -1
- package/dist/services/keeper.service.js +158 -34
- package/dist/services/keeper.service.js.map +1 -1
- package/dist/services/maintenance-signal.d.ts.map +1 -1
- package/dist/services/maintenance-signal.js +2 -3
- package/dist/services/maintenance-signal.js.map +1 -1
- package/dist/services/process.service.d.ts +76 -61
- package/dist/services/process.service.d.ts.map +1 -1
- package/dist/services/process.service.js +224 -608
- package/dist/services/process.service.js.map +1 -1
- package/dist/services/reconnect-snapshot.service.js +2 -2
- package/dist/services/reconnect-snapshot.service.js.map +1 -1
- package/dist/services/scheduler.d.ts +1 -0
- package/dist/services/scheduler.d.ts.map +1 -1
- package/dist/services/scheduler.js +69 -14
- package/dist/services/scheduler.js.map +1 -1
- package/dist/services/self-update.service.d.ts +14 -3
- package/dist/services/self-update.service.d.ts.map +1 -1
- package/dist/services/self-update.service.js +143 -74
- package/dist/services/self-update.service.js.map +1 -1
- package/dist/services/spawn-common.d.ts +49 -23
- package/dist/services/spawn-common.d.ts.map +1 -1
- package/dist/services/spawn-common.js +262 -47
- package/dist/services/spawn-common.js.map +1 -1
- package/dist/services/spawn-exit-watcher.d.ts +43 -0
- package/dist/services/spawn-exit-watcher.d.ts.map +1 -0
- package/dist/services/spawn-exit-watcher.js +127 -0
- package/dist/services/spawn-exit-watcher.js.map +1 -0
- package/dist/services/thread-health.service.d.ts +1 -1
- package/dist/services/thread-health.service.d.ts.map +1 -1
- package/dist/services/thread-health.service.js +11 -7
- package/dist/services/thread-health.service.js.map +1 -1
- package/dist/services/thread-lifecycle.service.js +2 -2
- package/dist/services/thread-lifecycle.service.js.map +1 -1
- package/dist/services/worker-cleanup.service.d.ts.map +1 -1
- package/dist/services/worker-cleanup.service.js +25 -99
- package/dist/services/worker-cleanup.service.js.map +1 -1
- package/dist/test-bootstrap.d.ts +39 -0
- package/dist/test-bootstrap.d.ts.map +1 -0
- package/dist/test-bootstrap.js +78 -0
- package/dist/test-bootstrap.js.map +1 -0
- package/dist/tools/defs/session-defs.js +1 -1
- package/dist/tools/defs/session-defs.js.map +1 -1
- package/dist/tools/defs/utility-defs.d.ts.map +1 -1
- package/dist/tools/defs/utility-defs.js +4 -3
- package/dist/tools/defs/utility-defs.js.map +1 -1
- package/dist/tools/delegate-tool.d.ts +1 -1
- package/dist/tools/delegate-tool.d.ts.map +1 -1
- package/dist/tools/delegate-tool.js +37 -6
- package/dist/tools/delegate-tool.js.map +1 -1
- package/dist/tools/session-tools.d.ts.map +1 -1
- package/dist/tools/session-tools.js +26 -9
- package/dist/tools/session-tools.js.map +1 -1
- package/dist/tools/utility-tools.js +1 -1
- package/dist/tools/utility-tools.js.map +1 -1
- package/dist/tools/wait/message-delivery.d.ts.map +1 -1
- package/dist/tools/wait/message-delivery.js +1 -2
- package/dist/tools/wait/message-delivery.js.map +1 -1
- package/package.json +2 -2
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* Claude-specific spawn logic: CLI-path resolution and the Claude Code process
|
|
3
3
|
* launch (per-thread config dir, OAuth-token handling, git-bash discovery).
|
|
4
4
|
*/
|
|
5
|
-
import { spawn } from "node:child_process";
|
|
6
5
|
import { copyFileSync, existsSync, mkdirSync, unlinkSync, readFileSync, writeFileSync, } from "node:fs";
|
|
7
6
|
import { homedir } from "node:os";
|
|
8
7
|
import { join } from "node:path";
|
|
@@ -11,7 +10,7 @@ import { log } from "../lib/logger.js";
|
|
|
11
10
|
import { errorMessage } from "../lib/utils.js";
|
|
12
11
|
import { PROCESS_BASE_DIR, PROCESS_LOGS_DIR } from "./process.service.js";
|
|
13
12
|
import { buildClaudeMcpConfig } from "./mcp-config.service.js";
|
|
14
|
-
import { sanitizeSpawnEnv, resolveCliPath, resolveWindowsCliPath, normalizeWorkingDirectory, isStartupCleanupInProgress, checkSpawnPreconditions, buildThreadLogPath, buildSessionPrompt,
|
|
13
|
+
import { sanitizeSpawnEnv, resolveCliPath, resolveWindowsCliPath, normalizeWorkingDirectory, isStartupCleanupInProgress, checkSpawnPreconditions, buildThreadLogPath, buildSessionPrompt, launchAgent, stripDenylistedEnvVars, } from "./spawn-common.js";
|
|
15
14
|
export const resolveClaudePath = () => {
|
|
16
15
|
const envCmd = process.env.CLAUDE_CLI_CMD ?? getClaudeCliPath();
|
|
17
16
|
if (envCmd)
|
|
@@ -73,7 +72,7 @@ function buildClaudeDebugArgs(threadId) {
|
|
|
73
72
|
return [];
|
|
74
73
|
}
|
|
75
74
|
}
|
|
76
|
-
export function spawnAgentProcess(claudePath, name, threadId, threadLifecycle, workingDirectory, memorySourceThreadId, threadType, modelOverride) {
|
|
75
|
+
export async function spawnAgentProcess(claudePath, name, threadId, threadLifecycle, workingDirectory, memorySourceThreadId, threadType, modelOverride) {
|
|
77
76
|
if (isStartupCleanupInProgress())
|
|
78
77
|
return { error: "Server startup cleanup in progress - try again in a few seconds" };
|
|
79
78
|
const pre = checkSpawnPreconditions("Claude");
|
|
@@ -170,7 +169,12 @@ export function spawnAgentProcess(claudePath, name, threadId, threadLifecycle, w
|
|
|
170
169
|
break;
|
|
171
170
|
}
|
|
172
171
|
}
|
|
173
|
-
|
|
172
|
+
const claudeModel = modelOverride
|
|
173
|
+
? modelOverride
|
|
174
|
+
: threadType === "worker"
|
|
175
|
+
? process.env.CLAUDE_WORKER_MODEL || getDefaultWorkerModel()
|
|
176
|
+
: process.env.CLAUDE_MODEL || getDefaultThreadModel();
|
|
177
|
+
return launchAgent({
|
|
174
178
|
threadId,
|
|
175
179
|
name,
|
|
176
180
|
logFilePath,
|
|
@@ -178,27 +182,23 @@ export function spawnAgentProcess(claudePath, name, threadId, threadLifecycle, w
|
|
|
178
182
|
agentLabel: "Claude",
|
|
179
183
|
memorySourceThreadId,
|
|
180
184
|
threadType,
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
"--output-format",
|
|
199
|
-
"stream-json",
|
|
200
|
-
], detachedChildOptions(claudePath, outFd, spawnEnv, workingDirectory));
|
|
201
|
-
},
|
|
185
|
+
exe: claudePath,
|
|
186
|
+
args: [
|
|
187
|
+
"--verbose",
|
|
188
|
+
"--dangerously-skip-permissions",
|
|
189
|
+
// DIAGNOSTIC (logging-only): agent-side api+mcp debug to a file (not stdout).
|
|
190
|
+
...buildClaudeDebugArgs(threadId),
|
|
191
|
+
"--mcp-config",
|
|
192
|
+
effectiveConfigPath,
|
|
193
|
+
"--model",
|
|
194
|
+
claudeModel,
|
|
195
|
+
"-p",
|
|
196
|
+
buildSessionPrompt(name, threadId),
|
|
197
|
+
"--output-format",
|
|
198
|
+
"stream-json",
|
|
199
|
+
],
|
|
200
|
+
env: spawnEnv,
|
|
201
|
+
cwd: workingDirectory,
|
|
202
202
|
}, threadLifecycle);
|
|
203
203
|
}
|
|
204
204
|
//# sourceMappingURL=claude-spawn.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-spawn.service.js","sourceRoot":"","sources":["../../src/services/claude-spawn.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"claude-spawn.service.js","sourceRoot":"","sources":["../../src/services/claude-spawn.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
import type { ThreadLifecycleService } from "./thread-lifecycle.service.js";
|
|
6
6
|
import { type SpawnResult } from "./spawn-common.js";
|
|
7
7
|
export declare const resolveCodexPath: () => string | null;
|
|
8
|
-
export declare function spawnCodexProcess(codexPath: string, name: string, threadId: number, threadLifecycle: ThreadLifecycleService, workingDirectory?: string, memorySourceThreadId?: number, threadType?: "worker" | "branch"): SpawnResult
|
|
8
|
+
export declare function spawnCodexProcess(codexPath: string, name: string, threadId: number, threadLifecycle: ThreadLifecycleService, workingDirectory?: string, memorySourceThreadId?: number, threadType?: "worker" | "branch"): Promise<SpawnResult>;
|
|
9
9
|
//# sourceMappingURL=codex-spawn.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-spawn.service.d.ts","sourceRoot":"","sources":["../../src/services/codex-spawn.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,
|
|
1
|
+
{"version":3,"file":"codex-spawn.service.d.ts","sourceRoot":"","sources":["../../src/services/codex-spawn.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAQL,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAK3B,eAAO,MAAM,gBAAgB,QAAO,MAAM,GAAG,IAC4C,CAAC;AA6E1F,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,sBAAsB,EACvC,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC/B,OAAO,CAAC,WAAW,CAAC,CAqDtB"}
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
* Codex-specific spawn logic: CLI/native-exe resolution (including Volta layout
|
|
3
3
|
* discovery on Windows) and the Codex `exec` process launch.
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
5
|
+
import { spawnSync } from "node:child_process";
|
|
6
6
|
import { existsSync, readdirSync } from "node:fs";
|
|
7
7
|
import { homedir } from "node:os";
|
|
8
8
|
import { join } from "node:path";
|
|
9
9
|
import { log } from "../lib/logger.js";
|
|
10
10
|
import { PROCESS_BASE_DIR } from "./process.service.js";
|
|
11
11
|
import { buildCodexMcpArgs } from "./mcp-config.service.js";
|
|
12
|
-
import { sanitizeSpawnEnv, resolveCliPath, resolveWindowsCliPath, normalizeWorkingDirectory, checkSpawnPreconditions, buildThreadLogPath,
|
|
12
|
+
import { sanitizeSpawnEnv, resolveCliPath, resolveWindowsCliPath, normalizeWorkingDirectory, checkSpawnPreconditions, buildThreadLogPath, launchAgent, } from "./spawn-common.js";
|
|
13
13
|
const CODEX_HOME_DIR = join(PROCESS_BASE_DIR, "codex-home");
|
|
14
14
|
const DEFAULT_CODEX_MODEL = "";
|
|
15
15
|
export const resolveCodexPath = () => process.platform === "win32" ? resolveWindowsCliPath("codex") : resolveCliPath("codex");
|
|
@@ -58,7 +58,7 @@ const resolveCodexExe = () => {
|
|
|
58
58
|
return null;
|
|
59
59
|
}
|
|
60
60
|
};
|
|
61
|
-
export function spawnCodexProcess(codexPath, name, threadId, threadLifecycle, workingDirectory, memorySourceThreadId, threadType) {
|
|
61
|
+
export async function spawnCodexProcess(codexPath, name, threadId, threadLifecycle, workingDirectory, memorySourceThreadId, threadType) {
|
|
62
62
|
const pre = checkSpawnPreconditions("Codex");
|
|
63
63
|
if ("error" in pre)
|
|
64
64
|
return pre;
|
|
@@ -85,7 +85,16 @@ export function spawnCodexProcess(codexPath, name, threadId, threadLifecycle, wo
|
|
|
85
85
|
...(pre.transport.secret ? { SENSORIUM_MCP_SECRET: pre.transport.secret } : {}),
|
|
86
86
|
...mcpEnv,
|
|
87
87
|
});
|
|
88
|
-
|
|
88
|
+
// Resolve the actual executable once, shared by the broker and local paths:
|
|
89
|
+
// native codex.exe when present, else node.exe + codex.js (Volta layout), else
|
|
90
|
+
// the .cmd shim as-is.
|
|
91
|
+
const nativeExe = resolveCodexExe();
|
|
92
|
+
const nodeExeResult = !nativeExe && process.platform === "win32" && /\.(cmd|bat)$/i.test(codexPath)
|
|
93
|
+
? resolveCodexNodeExe()
|
|
94
|
+
: null;
|
|
95
|
+
const exe = nativeExe ?? nodeExeResult?.nodeExe ?? codexPath;
|
|
96
|
+
const args = nodeExeResult ? [nodeExeResult.codexJs, ...cliArgs] : cliArgs;
|
|
97
|
+
return launchAgent({
|
|
89
98
|
threadId,
|
|
90
99
|
name,
|
|
91
100
|
logFilePath,
|
|
@@ -93,26 +102,12 @@ export function spawnCodexProcess(codexPath, name, threadId, threadLifecycle, wo
|
|
|
93
102
|
agentLabel: "Codex",
|
|
94
103
|
memorySourceThreadId,
|
|
95
104
|
threadType,
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
const child = nativeExe
|
|
103
|
-
? spawn(nativeExe, cliArgs, detachedChildOptions(nativeExe, outFd, spawnEnv, workingDirectory, "pipe"))
|
|
104
|
-
: nodeExeResult
|
|
105
|
-
? spawn(nodeExeResult.nodeExe, [nodeExeResult.codexJs, ...cliArgs], detachedChildOptions(nodeExeResult.nodeExe, outFd, spawnEnv, workingDirectory, "pipe"))
|
|
106
|
-
: spawn(codexPath, cliArgs, detachedChildOptions(codexPath, outFd, spawnEnv, workingDirectory, "pipe"));
|
|
107
|
-
try {
|
|
108
|
-
child.stdin?.write(prompt + "\n");
|
|
109
|
-
child.stdin?.end();
|
|
110
|
-
}
|
|
111
|
-
catch {
|
|
112
|
-
/* child died at spawn — the exit handler reports it */
|
|
113
|
-
}
|
|
114
|
-
return child;
|
|
115
|
-
},
|
|
105
|
+
exe,
|
|
106
|
+
args,
|
|
107
|
+
env: spawnEnv,
|
|
108
|
+
cwd: workingDirectory,
|
|
109
|
+
// stdin is a pipe — the autonomous-loop prompt is delivered over it.
|
|
110
|
+
stdinData: prompt + "\n",
|
|
116
111
|
}, threadLifecycle);
|
|
117
112
|
}
|
|
118
113
|
//# sourceMappingURL=codex-spawn.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-spawn.service.js","sourceRoot":"","sources":["../../src/services/codex-spawn.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"codex-spawn.service.js","sourceRoot":"","sources":["../../src/services/codex-spawn.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
import type { ThreadLifecycleService } from "./thread-lifecycle.service.js";
|
|
7
7
|
import { type SpawnResult } from "./spawn-common.js";
|
|
8
8
|
export declare const resolveCopilotPath: () => string | null;
|
|
9
|
-
export declare function spawnCopilotProcess(copilotPath: string, name: string, threadId: number, threadLifecycle: ThreadLifecycleService, workingDirectory?: string, memorySourceThreadId?: number, threadType?: "worker" | "branch"): SpawnResult
|
|
9
|
+
export declare function spawnCopilotProcess(copilotPath: string, name: string, threadId: number, threadLifecycle: ThreadLifecycleService, workingDirectory?: string, memorySourceThreadId?: number, threadType?: "worker" | "branch"): Promise<SpawnResult>;
|
|
10
10
|
//# sourceMappingURL=copilot-spawn.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-spawn.service.d.ts","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"copilot-spawn.service.d.ts","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAUL,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAsF3B,eAAO,MAAM,kBAAkB,QAAO,MAAM,GAAG,IAGL,CAAC;AAE3C,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,sBAAsB,EACvC,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC/B,OAAO,CAAC,WAAW,CAAC,CAuDtB"}
|
|
@@ -3,14 +3,13 @@
|
|
|
3
3
|
* workspace setup, and the Copilot process launch driven by dashboard settings
|
|
4
4
|
* (model + optional BYOK / OpenRouter provider).
|
|
5
5
|
*/
|
|
6
|
-
import { spawn } from "node:child_process";
|
|
7
6
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
8
7
|
import { homedir } from "node:os";
|
|
9
8
|
import { join } from "node:path";
|
|
10
|
-
import { getCopilotSpawnEnv, getCopilotCustomEnvVars } from "../config/index.js";
|
|
9
|
+
import { getCopilotSpawnEnv, getCopilotCustomEnvVars, getCopilotEffortLevel, getCopilotContextTier, } from "../config/index.js";
|
|
11
10
|
import { PROCESS_BASE_DIR } from "./process.service.js";
|
|
12
11
|
import { buildCopilotMcpConfig } from "./mcp-config.service.js";
|
|
13
|
-
import { sanitizeSpawnEnv, resolveCliPath, resolveWindowsCliPath, normalizeWorkingDirectory, checkSpawnPreconditions, buildThreadLogPath, buildSessionPrompt,
|
|
12
|
+
import { sanitizeSpawnEnv, resolveCliPath, resolveWindowsCliPath, normalizeWorkingDirectory, checkSpawnPreconditions, buildThreadLogPath, buildSessionPrompt, launchAgent, stripDenylistedEnvVars, } from "./spawn-common.js";
|
|
14
13
|
const COPILOT_HOME_DIR = "copilot-home";
|
|
15
14
|
// Provider env vars that BYOK controls. Listed so a spawn can explicitly unset
|
|
16
15
|
// any ambient values when BYOK is disabled — keeping the dashboard settings, not
|
|
@@ -64,6 +63,13 @@ function writeCopilotIdentity(copilotHome) {
|
|
|
64
63
|
};
|
|
65
64
|
writeFileSync(targetPath, JSON.stringify(merged, null, 2), "utf-8");
|
|
66
65
|
}
|
|
66
|
+
// The Copilot CLI reads the model + reasoning knobs from its own home settings.json.
|
|
67
|
+
// Writing it here (instead of passing --model) sidesteps GitHub's intermittent
|
|
68
|
+
// "Model not available" rejections on the flag path.
|
|
69
|
+
function writeCopilotSettings(copilotHome, model) {
|
|
70
|
+
mkdirSync(copilotHome, { recursive: true });
|
|
71
|
+
writeFileSync(join(copilotHome, "settings.json"), JSON.stringify({ model, effortLevel: getCopilotEffortLevel(), contextTier: getCopilotContextTier() }, null, 2), "utf-8");
|
|
72
|
+
}
|
|
67
73
|
function ensureCopilotWorkspace(baseDir) {
|
|
68
74
|
const wsDir = join(baseDir, "copilot-workspace");
|
|
69
75
|
mkdirSync(wsDir, { recursive: true });
|
|
@@ -75,7 +81,7 @@ function ensureCopilotWorkspace(baseDir) {
|
|
|
75
81
|
export const resolveCopilotPath = () => process.platform === "win32"
|
|
76
82
|
? resolveWindowsCliPath("copilot")
|
|
77
83
|
: resolveCliPath("copilot", /\.exe$/i);
|
|
78
|
-
export function spawnCopilotProcess(copilotPath, name, threadId, threadLifecycle, workingDirectory, memorySourceThreadId, threadType) {
|
|
84
|
+
export async function spawnCopilotProcess(copilotPath, name, threadId, threadLifecycle, workingDirectory, memorySourceThreadId, threadType) {
|
|
79
85
|
const pre = checkSpawnPreconditions("Copilot");
|
|
80
86
|
if ("error" in pre)
|
|
81
87
|
return pre;
|
|
@@ -86,7 +92,29 @@ export function spawnCopilotProcess(copilotPath, name, threadId, threadLifecycle
|
|
|
86
92
|
writeCopilotInstructions(copilotHomeDir);
|
|
87
93
|
writeCopilotIdentity(copilotHomeDir);
|
|
88
94
|
const logFilePath = buildThreadLogPath(name, threadId, "json");
|
|
89
|
-
|
|
95
|
+
// Copilot model + BYOK provider config come from dashboard settings. Settings
|
|
96
|
+
// drive both the model and (optionally) a BYOK provider; provider vars the
|
|
97
|
+
// settings don't supply are explicitly unset so ambient env can't silently
|
|
98
|
+
// keep BYOK on.
|
|
99
|
+
const copilotEnv = getCopilotSpawnEnv();
|
|
100
|
+
const model = copilotEnv.COPILOT_MODEL;
|
|
101
|
+
writeCopilotSettings(copilotHomeDir, model);
|
|
102
|
+
const providerEnv = {};
|
|
103
|
+
for (const k of COPILOT_PROVIDER_ENV_KEYS)
|
|
104
|
+
providerEnv[k] = copilotEnv[k];
|
|
105
|
+
// Custom vars first so the locked built-ins/provider vars that follow win;
|
|
106
|
+
// denylisted keys are stripped so a custom entry can't re-inject a BYOK secret.
|
|
107
|
+
const customEnv = stripDenylistedEnvVars(getCopilotCustomEnvVars());
|
|
108
|
+
const spawnEnv = sanitizeSpawnEnv({
|
|
109
|
+
...customEnv,
|
|
110
|
+
COPILOT_HOME: copilotHomeDir,
|
|
111
|
+
COPILOT_MODEL: model,
|
|
112
|
+
...providerEnv,
|
|
113
|
+
...(memorySourceThreadId !== undefined
|
|
114
|
+
? { MEMORY_SOURCE_THREAD_ID: String(memorySourceThreadId) }
|
|
115
|
+
: {}),
|
|
116
|
+
});
|
|
117
|
+
return launchAgent({
|
|
90
118
|
threadId,
|
|
91
119
|
name,
|
|
92
120
|
logFilePath,
|
|
@@ -94,37 +122,18 @@ export function spawnCopilotProcess(copilotPath, name, threadId, threadLifecycle
|
|
|
94
122
|
agentLabel: "Copilot",
|
|
95
123
|
memorySourceThreadId,
|
|
96
124
|
threadType,
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
const customEnv = stripDenylistedEnvVars(getCopilotCustomEnvVars());
|
|
110
|
-
const spawnEnv = sanitizeSpawnEnv({
|
|
111
|
-
...customEnv,
|
|
112
|
-
COPILOT_HOME: copilotHomeDir,
|
|
113
|
-
COPILOT_MODEL: model,
|
|
114
|
-
...providerEnv,
|
|
115
|
-
...(memorySourceThreadId !== undefined
|
|
116
|
-
? { MEMORY_SOURCE_THREAD_ID: String(memorySourceThreadId) }
|
|
117
|
-
: {}),
|
|
118
|
-
});
|
|
119
|
-
return spawn(copilotPath, [
|
|
120
|
-
"-p",
|
|
121
|
-
buildSessionPrompt(name, threadId),
|
|
122
|
-
"--allow-all-tools",
|
|
123
|
-
"--model",
|
|
124
|
-
model,
|
|
125
|
-
"--autopilot",
|
|
126
|
-
], detachedChildOptions(copilotPath, outFd, spawnEnv, workingDirectory));
|
|
127
|
-
},
|
|
125
|
+
exe: copilotPath,
|
|
126
|
+
args: [
|
|
127
|
+
"-p",
|
|
128
|
+
buildSessionPrompt(name, threadId),
|
|
129
|
+
"--allow-all-tools",
|
|
130
|
+
"--allow-all-paths",
|
|
131
|
+
"--model",
|
|
132
|
+
model,
|
|
133
|
+
"--autopilot",
|
|
134
|
+
],
|
|
135
|
+
env: spawnEnv,
|
|
136
|
+
cwd: workingDirectory,
|
|
128
137
|
}, threadLifecycle);
|
|
129
138
|
}
|
|
130
139
|
//# sourceMappingURL=copilot-spawn.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-spawn.service.js","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"copilot-spawn.service.js","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,9 +18,10 @@ export interface StoredReaction {
|
|
|
18
18
|
export declare function writeReactionFile(reaction: StoredReaction): void;
|
|
19
19
|
/**
|
|
20
20
|
* Read and clear the pending reaction (if any).
|
|
21
|
-
* When threadId is provided, reads from the per-thread file first,
|
|
22
|
-
*
|
|
23
|
-
*
|
|
21
|
+
* When threadId is provided, reads from the per-thread file first, then falls
|
|
22
|
+
* back to the global file — but only consumes a global reaction whose owner is
|
|
23
|
+
* known to be exactly this thread (see readGlobalReactionGuarded). Unknown-owner
|
|
24
|
+
* reactions are left for the general session and never stolen by a thread.
|
|
24
25
|
* Returns null if no reaction is pending.
|
|
25
26
|
*/
|
|
26
27
|
export declare function readPendingReaction(threadId?: number): StoredReaction | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../../../src/services/dispatcher/broker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAWnF,eAAO,MAAM,WAAW,QAA2B,CAAC;AAQpD,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,qBAAqB,GAAG,IAAI,CAEtF;AA+CD,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAiBrE;AAcD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAQD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAYhE;AAED
|
|
1
|
+
{"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../../../src/services/dispatcher/broker.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,16 +6,16 @@
|
|
|
6
6
|
* Each MCP instance reads from its own thread file — contention-free.
|
|
7
7
|
*/
|
|
8
8
|
import { mkdirSync, readFileSync, readdirSync, renameSync, unlinkSync, writeFileSync, } from "node:fs";
|
|
9
|
-
import { homedir } from "node:os";
|
|
10
9
|
import { join } from "node:path";
|
|
11
10
|
import { log } from "../../lib/logger.js";
|
|
11
|
+
import { dataDir } from "../../lib/paths.js";
|
|
12
12
|
import { isPidAlive } from "./lock.js";
|
|
13
13
|
import { initMemoryDb } from "../../data/memory/schema.js";
|
|
14
14
|
import { errorMessage } from "../../lib/utils.js";
|
|
15
15
|
// ---------------------------------------------------------------------------
|
|
16
16
|
// Paths
|
|
17
17
|
// ---------------------------------------------------------------------------
|
|
18
|
-
const BASE_DIR =
|
|
18
|
+
const BASE_DIR = dataDir();
|
|
19
19
|
const THREADS_DIR = join(BASE_DIR, "threads");
|
|
20
20
|
export const OFFSET_FILE = join(BASE_DIR, "offset");
|
|
21
21
|
// ---------------------------------------------------------------------------
|
|
@@ -110,9 +110,10 @@ export function writeReactionFile(reaction) {
|
|
|
110
110
|
}
|
|
111
111
|
/**
|
|
112
112
|
* Read and clear the pending reaction (if any).
|
|
113
|
-
* When threadId is provided, reads from the per-thread file first,
|
|
114
|
-
*
|
|
115
|
-
*
|
|
113
|
+
* When threadId is provided, reads from the per-thread file first, then falls
|
|
114
|
+
* back to the global file — but only consumes a global reaction whose owner is
|
|
115
|
+
* known to be exactly this thread (see readGlobalReactionGuarded). Unknown-owner
|
|
116
|
+
* reactions are left for the general session and never stolen by a thread.
|
|
116
117
|
* Returns null if no reaction is pending.
|
|
117
118
|
*/
|
|
118
119
|
export function readPendingReaction(threadId) {
|
|
@@ -129,9 +130,17 @@ export function readPendingReaction(threadId) {
|
|
|
129
130
|
}
|
|
130
131
|
/**
|
|
131
132
|
* Read the global reaction file with thread-ownership guard.
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
*
|
|
133
|
+
*
|
|
134
|
+
* The global file only ever holds reactions whose owning thread was *unknown*
|
|
135
|
+
* at write time (`writeReactionFile` routes known-owner reactions straight to a
|
|
136
|
+
* per-thread file). A specific thread therefore cannot prove it owns anything
|
|
137
|
+
* found here, so when `requestingThreadId` is provided we consume the reaction
|
|
138
|
+
* only if its messageId maps back to exactly that thread — an unknown owner (or
|
|
139
|
+
* a different thread) is left untouched rather than misrouted to the first
|
|
140
|
+
* thread that happens to poll.
|
|
141
|
+
*
|
|
142
|
+
* When `requestingThreadId` is undefined (the general / topic-less session),
|
|
143
|
+
* the reaction has no thread to belong to and is consumed unconditionally.
|
|
135
144
|
*/
|
|
136
145
|
function readGlobalReactionGuarded(requestingThreadId) {
|
|
137
146
|
// Atomically consume the file by renaming first to prevent duplicate reads.
|
|
@@ -168,11 +177,14 @@ function readGlobalReactionGuarded(requestingThreadId) {
|
|
|
168
177
|
}
|
|
169
178
|
return null;
|
|
170
179
|
}
|
|
171
|
-
// When a specific thread is asking,
|
|
180
|
+
// When a specific thread is asking, only consume when the reaction's owner is
|
|
181
|
+
// KNOWN and is exactly this thread. An unknown owner (undefined) or a different
|
|
182
|
+
// thread must never be consumed here — otherwise the first thread to poll would
|
|
183
|
+
// steal a reaction that belongs to (or may belong to) another thread.
|
|
172
184
|
if (requestingThreadId !== undefined) {
|
|
173
185
|
const ownerThread = lookupThreadForMessage(reaction.messageId);
|
|
174
|
-
if (ownerThread !==
|
|
175
|
-
//
|
|
186
|
+
if (ownerThread !== requestingThreadId) {
|
|
187
|
+
// Not provably ours — put it back untouched.
|
|
176
188
|
try {
|
|
177
189
|
renameSync(tmp, REACTION_FILE);
|
|
178
190
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"broker.js","sourceRoot":"","sources":["../../../src/services/dispatcher/broker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"broker.js","sourceRoot":"","sources":["../../../src/services/dispatcher/broker.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { existsSync, readFileSync, readdirSync, unlinkSync } from "node:fs";
|
|
9
9
|
import { readFile, rename, unlink, writeFile } from "node:fs/promises";
|
|
10
|
-
import { homedir } from "node:os";
|
|
11
10
|
import { join } from "node:path";
|
|
12
11
|
import { log } from "../../lib/logger.js";
|
|
12
|
+
import { dataDir } from "../../lib/paths.js";
|
|
13
13
|
// ---------------------------------------------------------------------------
|
|
14
14
|
// Paths & constants
|
|
15
15
|
// ---------------------------------------------------------------------------
|
|
16
|
-
const BASE_DIR =
|
|
16
|
+
const BASE_DIR = dataDir();
|
|
17
17
|
const LOCK_FILE = join(BASE_DIR, "poller.lock");
|
|
18
18
|
const LOCK_TMP_PREFIX = "poller.lock.tmp.";
|
|
19
19
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../src/services/dispatcher/lock.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../src/services/dispatcher/lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../src/services/dispatcher/poller.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAyB,cAAc,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"poller.d.ts","sourceRoot":"","sources":["../../../src/services/dispatcher/poller.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAyB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AA6Z5E;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAkHhG"}
|