openmausbot 0.1.91 → 0.1.92
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/assets/DesktopViewer-Do6lBa4C.js +5 -0
- package/dist/assets/{abnfDiagram-O67JEVCF-yP-w8pRq.js → abnfDiagram-O67JEVCF-Cd3X7Hxc.js} +1 -1
- package/dist/assets/{arc-DsivfZEh.js → arc-DIYc7Ymx.js} +1 -1
- package/dist/assets/{architectureDiagram-NJMV4G6O-CILw7lzT.js → architectureDiagram-NJMV4G6O-DBmRGVyP.js} +1 -1
- package/dist/assets/{blockDiagram-BEXU5L5S-DEQUV3HF.js → blockDiagram-BEXU5L5S-CPFePSEE.js} +1 -1
- package/dist/assets/{c4Diagram-YGBWAQC7-lSXCZoKA.js → c4Diagram-YGBWAQC7-DD_DO1qy.js} +1 -1
- package/dist/assets/channel-Dtk5Mtic.js +1 -0
- package/dist/assets/{chunk-2Q5K7J3B-QCD5bgWP.js → chunk-2Q5K7J3B-BNEeNSjX.js} +1 -1
- package/dist/assets/{chunk-3FUC2YCW-C5-iZJuL.js → chunk-3FUC2YCW-BbinLaqH.js} +2 -2
- package/dist/assets/{chunk-5VM5RSS4-cxsawMpY.js → chunk-5VM5RSS4-BBgYrgDR.js} +1 -1
- package/dist/assets/{chunk-GTNCS2PH-DV8tV8H7.js → chunk-GTNCS2PH-ezXj-kA-.js} +1 -1
- package/dist/assets/{chunk-GWA4HPMP-CJFZyfbW.js → chunk-GWA4HPMP-9FxZ3diV.js} +1 -1
- package/dist/assets/{chunk-JWPE2WC7-BigbMXco.js → chunk-JWPE2WC7-CO-40JpI.js} +1 -1
- package/dist/assets/{chunk-NETBCI7D-oVxTfpDy.js → chunk-NETBCI7D-BEhjslYE.js} +1 -1
- package/dist/assets/{chunk-WEXAMYUT-CH4BiroW.js → chunk-WEXAMYUT-CNeq4n7_.js} +1 -1
- package/dist/assets/{chunk-XXDRQBXY-KEDa6gax.js → chunk-XXDRQBXY-OsCY7KSi.js} +1 -1
- package/dist/assets/{classDiagram-v2-NBCMYWYE-BiPjfqVv.js → classDiagram-v2-NBCMYWYE-CloRUEtk.js} +1 -1
- package/dist/assets/{cose-bilkent-JH36ORCC-Caxew3OY.js → cose-bilkent-JH36ORCC-D1BGZhp4.js} +1 -1
- package/dist/assets/{cynefin-OW5HDTMX-B_Pui369.js → cynefin-OW5HDTMX-CUf4T2CN.js} +1 -1
- package/dist/assets/{cynefinDiagram-VND7K2PF-X64ydIhP.js → cynefinDiagram-VND7K2PF-DPEZrFGA.js} +1 -1
- package/dist/assets/{dagre-6A5THRUB-TqYCI1E1.js → dagre-6A5THRUB-bDe6GIv5.js} +1 -1
- package/dist/assets/{diagram-22UHCM2B-TeOt3rAQ.js → diagram-22UHCM2B-CdcUQz55.js} +1 -1
- package/dist/assets/{diagram-3UASUU5V-D70BLhDA.js → diagram-3UASUU5V-BZpqGg7c.js} +1 -1
- package/dist/assets/{diagram-ATOU4E4O-BbQDLwUC.js → diagram-ATOU4E4O-DvGM6ugp.js} +1 -1
- package/dist/assets/{diagram-CDSNMT55-ChNJZ1u-.js → diagram-CDSNMT55-DSTmMm0s.js} +1 -1
- package/dist/assets/{diagram-MLGK6HIB-DMBl2APa.js → diagram-MLGK6HIB-15cucnMn.js} +1 -1
- package/dist/assets/{diagram-MPIPVDR6-CEqDchOp.js → diagram-MPIPVDR6-tMbuaE6n.js} +1 -1
- package/dist/assets/{ebnfDiagram-ZINNZB2B-BVDKRp_-.js → ebnfDiagram-ZINNZB2B-BYxYzjHI.js} +1 -1
- package/dist/assets/{elk-276RUBZZ-CRkofO9B.js → elk-276RUBZZ-v6bj852W.js} +1 -1
- package/dist/assets/{erDiagram-OPXOYQCR-DruOMh5e.js → erDiagram-OPXOYQCR-5lBBlnd2.js} +1 -1
- package/dist/assets/{flowDiagram-KWPJA3E3-8GMQeB7t.js → flowDiagram-KWPJA3E3-CZyl1zIj.js} +1 -1
- package/dist/assets/{ganttDiagram-FUAMR5RP-ORE9jcsM.js → ganttDiagram-FUAMR5RP-BiAI-ltZ.js} +1 -1
- package/dist/assets/{gitGraphDiagram-X574FWY7-BmsedsWh.js → gitGraphDiagram-X574FWY7-BAZISkj3.js} +1 -1
- package/dist/assets/index-Cdmjrl28.css +1 -0
- package/dist/assets/{index-DKNEM8Q6.js → index-DGBaEXrM.js} +1 -1
- package/dist/assets/index-DR7YPMkW.js +597 -0
- package/dist/assets/{infoDiagram-VRGFBTTK-E_p7AooJ.js → infoDiagram-VRGFBTTK-B6ooOy-Z.js} +1 -1
- package/dist/assets/{ishikawaDiagram-OU5B5YK6-Y-B2mKda.js → ishikawaDiagram-OU5B5YK6-BZ9ksi-B.js} +1 -1
- package/dist/assets/{journeyDiagram-ZHPQQLJL-eA8RELcK.js → journeyDiagram-ZHPQQLJL-DWqlzIEe.js} +1 -1
- package/dist/assets/{kanban-definition-PNTS6WVX-DqIL2e8e.js → kanban-definition-PNTS6WVX-JX6piDwL.js} +1 -1
- package/dist/assets/{linear-yC_29R6e.js → linear-CmOWzX0P.js} +1 -1
- package/dist/assets/{mermaid.core-VhEMkSND.js → mermaid.core-CF1zwoQ-.js} +5 -5
- package/dist/assets/{mindmap-definition-NLK3R4M7-oJ7kyQZy.js → mindmap-definition-NLK3R4M7-CGh2K4fW.js} +1 -1
- package/dist/assets/{pegDiagram-GJSIUBJH-BmfYcY0O.js → pegDiagram-GJSIUBJH-CDwYN0s7.js} +1 -1
- package/dist/assets/{pieDiagram-5QR66LMP-DKvgP7w9.js → pieDiagram-5QR66LMP-1rfjJocB.js} +1 -1
- package/dist/assets/{quadrantDiagram-O4NWA36T-BEKL3W0L.js → quadrantDiagram-O4NWA36T-tKPvPiok.js} +1 -1
- package/dist/assets/{railroadDiagram-XR7U4H2S-BEsiqR5s.js → railroadDiagram-XR7U4H2S-BHLm5vXR.js} +1 -1
- package/dist/assets/{requirementDiagram-PLB6GJNP-DWBcWvAP.js → requirementDiagram-PLB6GJNP-CB45STp7.js} +1 -1
- package/dist/assets/{sankeyDiagram-IPEJSGJF-rpZ2_O4s.js → sankeyDiagram-IPEJSGJF-55QA_huC.js} +1 -1
- package/dist/assets/{sequenceDiagram-PO4LG4MO-B99HQdJR.js → sequenceDiagram-PO4LG4MO-BckFmQHn.js} +1 -1
- package/dist/assets/{sizeCapture-INFHLROL-BjN0qT5T.js → sizeCapture-INFHLROL-BFCOJF11.js} +1 -1
- package/dist/assets/{stateDiagram-v2-GCMORJYK-BbsVgGsC.js → stateDiagram-v2-GCMORJYK-CZvmiVVN.js} +1 -1
- package/dist/assets/{swimlanes-2SLR337P-DG3gKkeR.js → swimlanes-2SLR337P-BpDUCEKy.js} +1 -1
- package/dist/assets/swimlanesDiagram-TC7HE7FX-M0GYW9Y3.js +8 -0
- package/dist/assets/{timeline-definition-EJHVYXUP-BTHOdtF_.js → timeline-definition-EJHVYXUP-BpxHq6IK.js} +1 -1
- package/dist/assets/{usecaseDiagram-POWQR4AR-acLSLFwc.js → usecaseDiagram-POWQR4AR-Cj66vm02.js} +1 -1
- package/dist/assets/{vennDiagram-UO4OBE2U-C5JzNX9G.js → vennDiagram-UO4OBE2U-C9nRkWE_.js} +1 -1
- package/dist/assets/{wardleyDiagram-VNRHLVJA-DL1-PrR_.js → wardleyDiagram-VNRHLVJA-D-me_nWj.js} +1 -1
- package/dist/assets/{xychartDiagram-PMCCYNJV-Bvr1477p.js → xychartDiagram-PMCCYNJV-Dc_fL4mk.js} +1 -1
- package/dist/index.html +2 -2
- package/dist/novnc-NOTICE.txt +118 -0
- package/dist-server/cloud-home-start.js +112 -14
- package/dist-server/container-mcp.js +195 -15
- package/dist-server/drivers/agents-proxy.js +5 -4
- package/dist-server/enterprise/server/index.js +5 -1
- package/dist-server/index.js +9300 -4155
- package/dist-server/local-computer-proxy.js +128 -7
- package/dist-server/mcp-gate.js +11 -5
- package/dist-server/model-catalog/models-dev.snapshot.json +7299 -0
- package/dist-server/openmausbot.js +3910 -1182
- package/dist-server/pair-cli.js +3910 -1182
- package/dist-server/server/boat.js +2 -2
- package/dist-server/server/browser-engine.js +10 -1
- package/dist-server/server/browser-live.js +46 -2
- package/dist-server/server/browser-runtime.js +74 -8
- package/dist-server/server/browser-tool-shape.js +6 -4
- package/dist-server/server/chief-of-staff.js +1 -1
- package/dist-server/server/cloud-home-start.js +118 -26
- package/dist-server/server/cloud-home.js +39 -3
- package/dist-server/server/cloud-lending.js +74 -10
- package/dist-server/server/cloud-owner.js +196 -0
- package/dist-server/server/cloud-secrets-boot.js +6 -0
- package/dist-server/server/cloud-secrets.js +65 -0
- package/dist-server/server/config.js +174 -14
- package/dist-server/server/container-computer.js +3 -2
- package/dist-server/server/desktop-viewer-targets.js +26 -0
- package/dist-server/server/drivers/acp/core.js +167 -21
- package/dist-server/server/drivers/acp/opencode-go.js +614 -85
- package/dist-server/server/drivers/agents-catalog.js +6 -6
- package/dist-server/server/drivers/antigravity-acp.js +69 -11
- package/dist-server/server/drivers/antigravity-temp.js +360 -0
- package/dist-server/server/drivers/antigravity.js +21 -0
- package/dist-server/server/drivers/chatgpt-plan-auth.js +481 -0
- package/dist-server/server/drivers/claude.js +312 -34
- package/dist-server/server/drivers/codex.js +228 -18
- package/dist-server/server/drivers/grok.js +2 -2
- package/dist-server/server/drivers/mistral.js +4 -3
- package/dist-server/server/drivers/openai-chat-protocol.js +4 -3
- package/dist-server/server/drivers/openai-chat.js +41 -3
- package/dist-server/server/drivers/openai-compat.js +73 -23
- package/dist-server/server/engine-install.js +46 -12
- package/dist-server/server/env-path.js +15 -3
- package/dist-server/server/harness/registry.js +2 -2
- package/dist-server/server/index.js +1338 -184
- package/dist-server/server/lending-memory.js +479 -0
- package/dist-server/server/local-vm-idle.js +24 -6
- package/dist-server/server/managed-desktop.js +3 -0
- package/dist-server/server/mcp-bridge.js +5 -3
- package/dist-server/server/mcp-http.js +6 -3
- package/dist-server/server/mcp-oauth-discovery.js +133 -0
- package/dist-server/server/mcp-oauth-store.js +70 -0
- package/dist-server/server/mcp-oauth.js +550 -0
- package/dist-server/server/mcp-probe.js +14 -1
- package/dist-server/server/mcp-registry.js +43 -0
- package/dist-server/server/memory-upkeep.js +94 -84
- package/dist-server/server/model-catalog/catalog.js +374 -0
- package/dist-server/server/model-catalog/presets.js +176 -0
- package/dist-server/server/model-catalog/trim.js +219 -0
- package/dist-server/server/provider-key-check.js +4 -2
- package/dist-server/server/recent-work.js +1 -1
- package/dist-server/server/request-auth.js +23 -0
- package/dist-server/server/routes/antigravity-leftovers.js +45 -0
- package/dist-server/server/routes/bot-memory.js +31 -6
- package/dist-server/server/routes/desktop-viewer.js +194 -0
- package/dist-server/server/routine-requests.js +1 -1
- package/dist-server/server/routines.js +1 -1
- package/dist-server/server/sessions.js +56 -9
- package/dist-server/server/skills.js +25 -10
- package/dist-server/server/store.js +62 -122
- package/dist-server/server/thread-events.js +2 -0
- package/dist-server/server/thread-starters.js +33 -0
- package/dist-server/server/thread-title.js +46 -0
- package/dist-server/server/tts/fish.js +4 -5
- package/dist-server/server/tts/index.js +5 -3
- package/dist-server/server/vps-computer.js +79 -12
- package/dist-server/server/webhooks.js +18 -1
- package/dist-server/server/workspace-backup-policy.js +3 -0
- package/dist-server/server/workspace-backup.js +3 -0
- package/dist-server/server/workspace.js +65 -15
- package/dist-server/shared/workspace-backup-client.js +1 -0
- package/dist-server/src/lib/citations.js +177 -0
- package/dist-server/src/lib/composer-attachments.js +7 -1
- package/dist-server/vps-container-mcp.js +196 -15
- package/dist-server/workspace-backup.worker.js +73 -9
- package/enterprise/server/index.js +5 -1
- package/package.json +1 -1
- package/dist/assets/channel-DrfGMu7X.js +0 -1
- package/dist/assets/index-BlnCEcU6.js +0 -588
- package/dist/assets/index-DVxjOvID.css +0 -1
- package/dist/assets/swimlanesDiagram-TC7HE7FX-BCZhxl7e.js +0 -8
|
@@ -84,6 +84,9 @@ function nvmBinDirs() {
|
|
|
84
84
|
return [];
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
+
function sealedFixture() {
|
|
88
|
+
return process.env.OMB_TEST_SEALED_PATH === "1";
|
|
89
|
+
}
|
|
87
90
|
function knownDirs() {
|
|
88
91
|
const home = homedir();
|
|
89
92
|
return [
|
|
@@ -99,10 +102,13 @@ function knownDirs() {
|
|
|
99
102
|
// opencode installer
|
|
100
103
|
join(home, ".claude", "local"),
|
|
101
104
|
// claude "local install"
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
105
|
+
// Machine-wide rather than under the (possibly temporary) home.
|
|
106
|
+
...sealedFixture() ? [] : [
|
|
107
|
+
"/opt/homebrew/bin",
|
|
108
|
+
// brew, Apple silicon
|
|
109
|
+
"/usr/local/bin"
|
|
110
|
+
// brew Intel / classic installs
|
|
111
|
+
],
|
|
106
112
|
join(home, ".volta", "bin"),
|
|
107
113
|
join(home, ".bun", "bin"),
|
|
108
114
|
join(home, ".asdf", "shims"),
|
|
@@ -154,7 +160,7 @@ function augmentedPath() {
|
|
|
154
160
|
...(process.platform === "win32" ? windowsKnownDirs() : knownDirs()).filter((d) => existsSync(d))
|
|
155
161
|
]);
|
|
156
162
|
}
|
|
157
|
-
if (!probed && !process.env.VITEST && process.platform !== "win32") {
|
|
163
|
+
if (!probed && !process.env.VITEST && !sealedFixture() && process.platform !== "win32") {
|
|
158
164
|
probed = true;
|
|
159
165
|
probeLoginShellPath();
|
|
160
166
|
}
|
|
@@ -178,6 +184,119 @@ function probeLoginShellPath() {
|
|
|
178
184
|
}
|
|
179
185
|
);
|
|
180
186
|
}
|
|
187
|
+
function splitCliString(cli) {
|
|
188
|
+
const out = [];
|
|
189
|
+
let cur = "";
|
|
190
|
+
let quote = null;
|
|
191
|
+
for (const ch of cli.trim()) {
|
|
192
|
+
if (quote) {
|
|
193
|
+
if (ch === quote) quote = null;
|
|
194
|
+
else cur += ch;
|
|
195
|
+
} else if (ch === '"' || ch === "'") {
|
|
196
|
+
quote = ch;
|
|
197
|
+
} else if (/\s/.test(ch)) {
|
|
198
|
+
if (cur) out.push(cur);
|
|
199
|
+
cur = "";
|
|
200
|
+
} else {
|
|
201
|
+
cur += ch;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
if (cur) out.push(cur);
|
|
205
|
+
return out;
|
|
206
|
+
}
|
|
207
|
+
function isFile(p) {
|
|
208
|
+
try {
|
|
209
|
+
return statSync(p, { throwIfNoEntry: false })?.isFile() ?? false;
|
|
210
|
+
} catch {
|
|
211
|
+
return false;
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
function whichWin(cli, env) {
|
|
215
|
+
const exts = ((env ?? process.env).PATHEXT ?? ".COM;.EXE;.BAT;.CMD").split(";").filter(Boolean);
|
|
216
|
+
const probe = (base) => {
|
|
217
|
+
const order = extname(base) ? [base, ...exts.map((e) => base + e)] : [...exts.map((e) => base + e), base];
|
|
218
|
+
return order.find(isFile) ?? null;
|
|
219
|
+
};
|
|
220
|
+
if (/[\\/]/.test(cli) || /^[a-zA-Z]:/.test(cli)) return probe(cli);
|
|
221
|
+
const path = env ? env.PATH ?? env.Path ?? "" : augmentedPath();
|
|
222
|
+
for (const dir of path.split(delimiter)) {
|
|
223
|
+
if (!dir) continue;
|
|
224
|
+
const hit = probe(join(dir, cli));
|
|
225
|
+
if (hit) return hit;
|
|
226
|
+
}
|
|
227
|
+
return null;
|
|
228
|
+
}
|
|
229
|
+
function nodeExe(near, env) {
|
|
230
|
+
const local = join(near, "node.exe");
|
|
231
|
+
if (isFile(local)) return local;
|
|
232
|
+
const onPath = whichWin("node.exe", env);
|
|
233
|
+
if (onPath && extname(onPath).toLowerCase() === ".exe") return onPath;
|
|
234
|
+
return process.versions.electron ? null : process.execPath;
|
|
235
|
+
}
|
|
236
|
+
function parseCmdShim(shim, env) {
|
|
237
|
+
let text;
|
|
238
|
+
try {
|
|
239
|
+
text = readFileSync(shim, "utf8");
|
|
240
|
+
} catch {
|
|
241
|
+
return null;
|
|
242
|
+
}
|
|
243
|
+
const dir = dirname(shim);
|
|
244
|
+
const npmEntry = /^SET "NP[MX]_CLI_JS=%~dp0\\([^"]+)"/im.exec(text);
|
|
245
|
+
const targets = [...npmEntry ? [npmEntry] : [], ...text.matchAll(/"%~?dp0%?\\?([^"]+)"/g)].map((m) => join(dir, m[1])).filter((p) => isFile(p) && basename(p).toLowerCase() !== "node.exe");
|
|
246
|
+
const script = targets.find((p) => /\.[cm]?js$/i.test(p));
|
|
247
|
+
if (script) {
|
|
248
|
+
const node = nodeExe(dir, env);
|
|
249
|
+
if (node) return { command: node, args: [script] };
|
|
250
|
+
}
|
|
251
|
+
const exe = targets.find((p) => extname(p).toLowerCase() === ".exe");
|
|
252
|
+
return exe ? { command: exe, args: [] } : null;
|
|
253
|
+
}
|
|
254
|
+
function parseNodeShebang(file, env) {
|
|
255
|
+
let head = "";
|
|
256
|
+
let fd = null;
|
|
257
|
+
try {
|
|
258
|
+
fd = openSync(file, "r");
|
|
259
|
+
const buf = Buffer.alloc(128);
|
|
260
|
+
const n = readSync(fd, buf, 0, buf.length, 0);
|
|
261
|
+
head = buf.subarray(0, n).toString("utf8").split("\n", 1)[0];
|
|
262
|
+
} catch {
|
|
263
|
+
return null;
|
|
264
|
+
} finally {
|
|
265
|
+
if (fd !== null) {
|
|
266
|
+
try {
|
|
267
|
+
closeSync(fd);
|
|
268
|
+
} catch {
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
if (!/^#!.*\bnode(\.exe)?\b/.test(head)) return null;
|
|
273
|
+
const node = nodeExe(dirname(file), env);
|
|
274
|
+
return node ? { command: node, args: [file] } : null;
|
|
275
|
+
}
|
|
276
|
+
function resolveWord(cli, args2, env) {
|
|
277
|
+
if (process.platform !== "win32") return { command: cli, args: args2 };
|
|
278
|
+
const file = whichWin(cli, env);
|
|
279
|
+
if (!file) return { command: cli, args: args2 };
|
|
280
|
+
const ext = extname(file).toLowerCase();
|
|
281
|
+
if (ext === ".cmd" || ext === ".bat") {
|
|
282
|
+
const direct = parseCmdShim(file, env);
|
|
283
|
+
return direct ? { command: direct.command, args: [...direct.args, ...args2] } : { command: file, args: args2 };
|
|
284
|
+
}
|
|
285
|
+
if (ext === ".exe" || ext === ".com") return { command: file, args: args2 };
|
|
286
|
+
const viaNode = parseNodeShebang(file, env);
|
|
287
|
+
return viaNode ? { command: viaNode.command, args: [...viaNode.args, ...args2] } : { command: file, args: args2 };
|
|
288
|
+
}
|
|
289
|
+
function resolveCliSpawn(cli, args2, env) {
|
|
290
|
+
const trimmed = cli.trim();
|
|
291
|
+
if (trimmed.includes(" ") && existsSync(trimmed)) return resolveWord(trimmed, args2, env);
|
|
292
|
+
const split = splitCliString(cli);
|
|
293
|
+
if (split.length > 1 || split[0] !== trimmed) {
|
|
294
|
+
const [head, ...fixed] = split;
|
|
295
|
+
if (!head) return { command: cli, args: args2 };
|
|
296
|
+
return resolveWord(head, [...fixed, ...args2], env);
|
|
297
|
+
}
|
|
298
|
+
return resolveWord(cli, args2, env);
|
|
299
|
+
}
|
|
181
300
|
|
|
182
301
|
// server/mcp-tool-schema.ts
|
|
183
302
|
var ROOT_COMBINATORS = ["anyOf", "oneOf", "allOf", "not"];
|
|
@@ -401,9 +520,11 @@ function createMcpBridgeInterceptor(options) {
|
|
|
401
520
|
};
|
|
402
521
|
}
|
|
403
522
|
function runMcpBridge(options) {
|
|
404
|
-
const
|
|
523
|
+
const env = options.env ?? { ...process.env, PATH: augmentedPath() };
|
|
524
|
+
const { command: command2, args: args2 } = resolveCliSpawn(options.command, options.args, env);
|
|
525
|
+
const child = spawn(command2, args2, {
|
|
405
526
|
shell: false,
|
|
406
|
-
env
|
|
527
|
+
env,
|
|
407
528
|
stdio: ["pipe", "pipe", "pipe"]
|
|
408
529
|
});
|
|
409
530
|
child.stdin.on("error", () => {
|
package/dist-server/mcp-gate.js
CHANGED
|
@@ -17,6 +17,9 @@ function nvmBinDirs() {
|
|
|
17
17
|
return [];
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
+
function sealedFixture() {
|
|
21
|
+
return process.env.OMB_TEST_SEALED_PATH === "1";
|
|
22
|
+
}
|
|
20
23
|
function knownDirs() {
|
|
21
24
|
const home = homedir();
|
|
22
25
|
return [
|
|
@@ -32,10 +35,13 @@ function knownDirs() {
|
|
|
32
35
|
// opencode installer
|
|
33
36
|
join(home, ".claude", "local"),
|
|
34
37
|
// claude "local install"
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
38
|
+
// Machine-wide rather than under the (possibly temporary) home.
|
|
39
|
+
...sealedFixture() ? [] : [
|
|
40
|
+
"/opt/homebrew/bin",
|
|
41
|
+
// brew, Apple silicon
|
|
42
|
+
"/usr/local/bin"
|
|
43
|
+
// brew Intel / classic installs
|
|
44
|
+
],
|
|
39
45
|
join(home, ".volta", "bin"),
|
|
40
46
|
join(home, ".bun", "bin"),
|
|
41
47
|
join(home, ".asdf", "shims"),
|
|
@@ -87,7 +93,7 @@ function augmentedPath() {
|
|
|
87
93
|
...(process.platform === "win32" ? windowsKnownDirs() : knownDirs()).filter((d) => existsSync(d))
|
|
88
94
|
]);
|
|
89
95
|
}
|
|
90
|
-
if (!probed && !process.env.VITEST && process.platform !== "win32") {
|
|
96
|
+
if (!probed && !process.env.VITEST && !sealedFixture() && process.platform !== "win32") {
|
|
91
97
|
probed = true;
|
|
92
98
|
probeLoginShellPath();
|
|
93
99
|
}
|