unity-open-mcp 0.4.1 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -7
- package/dist/capabilities/build-capabilities.js +6 -0
- package/dist/capabilities/build-capabilities.js.map +1 -1
- package/dist/capabilities/cost-hints.js +10 -0
- package/dist/capabilities/cost-hints.js.map +1 -1
- package/dist/capabilities/lifecycle.js +13 -0
- package/dist/capabilities/lifecycle.js.map +1 -1
- package/dist/capabilities/tool-groups.js +4 -0
- package/dist/capabilities/tool-groups.js.map +1 -1
- package/dist/cli/ping-poller.js +20 -0
- package/dist/cli/ping-poller.js.map +1 -1
- package/dist/live-client.d.ts +23 -0
- package/dist/live-client.js +95 -0
- package/dist/live-client.js.map +1 -1
- package/dist/running-unity.d.ts +105 -0
- package/dist/running-unity.js +387 -0
- package/dist/running-unity.js.map +1 -0
- package/dist/skill/client-paths.d.ts +22 -0
- package/dist/skill/client-paths.js +66 -5
- package/dist/skill/client-paths.js.map +1 -1
- package/dist/skill/generate-skill.d.ts +43 -4
- package/dist/skill/generate-skill.js +132 -34
- package/dist/skill/generate-skill.js.map +1 -1
- package/dist/tool-router.js +40 -0
- package/dist/tool-router.js.map +1 -1
- package/dist/tools/batch-execute.d.ts +2 -0
- package/dist/tools/batch-execute.js +83 -0
- package/dist/tools/batch-execute.js.map +1 -0
- package/dist/tools/bridge-status.js +8 -1
- package/dist/tools/bridge-status.js.map +1 -1
- package/dist/tools/generate-skill.js +8 -0
- package/dist/tools/generate-skill.js.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.js +10 -0
- package/dist/tools/index.js.map +1 -1
- package/package.json +1 -1
package/dist/live-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live-client.js","sourceRoot":"","sources":["../src/live-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"live-client.js","sourceRoot":"","sources":["../src/live-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/** Supported `process.platform` values for the scanner. */
|
|
2
|
+
export type UnityScanPlatform = "win32" | "darwin" | "linux";
|
|
3
|
+
/** One Unity process discovered by the scanner. */
|
|
4
|
+
export interface RunningUnity {
|
|
5
|
+
pid: number;
|
|
6
|
+
/** Normalized `-projectPath` argument, or null when it could not be parsed
|
|
7
|
+
* (Unity opened without `-projectPath`, e.g. via the Hub's "Open Editor"). */
|
|
8
|
+
projectPath: string | null;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Pure `-projectPath` argument parser. Port of Hub
|
|
12
|
+
* `running_unity.rs#parse_project_path_arg`. Accepts both the space-separated
|
|
13
|
+
* (`-projectPath <value>`) and equals (`-projectPath=<value>`) forms, plus
|
|
14
|
+
* the long `--projectPath` variants. Surrounding single or double quotes on
|
|
15
|
+
* the value are stripped. Returns the first match (matching the rest of the
|
|
16
|
+
* Hub CLI surface); null when the flag is absent or sits at the end of argv
|
|
17
|
+
* with no value.
|
|
18
|
+
*
|
|
19
|
+
* This is the unit-testable core: the OS-specific scanners feed it an argv
|
|
20
|
+
* slice extracted from `ps` / PowerShell output.
|
|
21
|
+
*/
|
|
22
|
+
export declare function parseProjectPathArg(args: ReadonlyArray<string>): string | null;
|
|
23
|
+
/**
|
|
24
|
+
* `true` when the command line's executable basename is `Unity`
|
|
25
|
+
* (case-sensitive — `unityhub://` URL handlers and the `Unity Hub` GUI do not
|
|
26
|
+
* match). Windows is filtered by the PowerShell `Name='Unity.exe'` selector
|
|
27
|
+
* upstream, so this helper is only used for the macOS / `ps` path.
|
|
28
|
+
*
|
|
29
|
+
* Extracting the executable path from a `ps` command line is harder than it
|
|
30
|
+
* looks: the Hub GUI binary lives at
|
|
31
|
+
* `/Applications/Unity Hub.app/Contents/MacOS/Unity Hub` — i.e. the executable
|
|
32
|
+
* name itself contains a space, and the parent directory contains the word
|
|
33
|
+
* "Unity". A naive `split_whitespace().next()` would return `/Applications/Unity`,
|
|
34
|
+
* which basename-matches `Unity` and (incorrectly) tags the Hub GUI as a
|
|
35
|
+
* running editor. We solve this by extending the executable prefix past any
|
|
36
|
+
* tokens that don't look like flags: the Unity editor is virtually always
|
|
37
|
+
* launched with `-projectPath` (or some other `-flag`), so the first `-flag`
|
|
38
|
+
* token is a reliable end-of-path marker.
|
|
39
|
+
*/
|
|
40
|
+
export declare function isUnityCommandLine(commandLine: string): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Naive argv splitter for a `ps`-formatted command line. Honours double and
|
|
43
|
+
* single quotes and treats backslashes as literal (macOS `ps` output never
|
|
44
|
+
* escapes them). Port of Hub `split_args`.
|
|
45
|
+
*/
|
|
46
|
+
export declare function splitArgs(line: string): string[];
|
|
47
|
+
/**
|
|
48
|
+
* Windows argv splitter. Same rules as {@link splitArgs} but treats `/` and
|
|
49
|
+
* `\` as ordinary characters (Windows paths use both). Honours `\"` as an
|
|
50
|
+
* embedded literal quote inside a double-quoted string, matching the
|
|
51
|
+
* `CommandLine` quoting convention emitted by `Get-CimInstance Win32_Process`.
|
|
52
|
+
* Port of Hub `split_args_windows`.
|
|
53
|
+
*/
|
|
54
|
+
export declare function splitArgsWindows(line: string): string[];
|
|
55
|
+
/**
|
|
56
|
+
* Parse macOS `ps -axww -o pid=,command=` output. One line per process: the
|
|
57
|
+
* PID is the first whitespace-delimited token, the rest is the full command.
|
|
58
|
+
* Lines whose executable basename is not `Unity` are skipped (rejects the Hub
|
|
59
|
+
* GUI, `unityhub://` URL handlers, unrelated tools). Port of Hub
|
|
60
|
+
* `parse_ps_output`.
|
|
61
|
+
*/
|
|
62
|
+
export declare function parsePsOutput(stdout: string): RunningUnity[];
|
|
63
|
+
/**
|
|
64
|
+
* Parse the `PID|commandline` lines emitted by the PowerShell scan.
|
|
65
|
+
* `CommandLine` is `null` for system-owned processes; we record the PID
|
|
66
|
+
* without a project path so the caller can still do its PID-only fallback.
|
|
67
|
+
* Port of Hub `parse_powershell_lines`.
|
|
68
|
+
*/
|
|
69
|
+
export declare function parsePowerShellLines(stdout: string): RunningUnity[];
|
|
70
|
+
/** Read-only Unity process scanner. Returns one record per live Unity editor. */
|
|
71
|
+
export interface UnityProcessScanner {
|
|
72
|
+
scan(): RunningUnity[];
|
|
73
|
+
}
|
|
74
|
+
/** Read the active scanner. Callers (`findUnityForProject`) use this. */
|
|
75
|
+
export declare function getUnityProcessScanner(): UnityProcessScanner;
|
|
76
|
+
/**
|
|
77
|
+
* Install a fake scanner for tests. Returns a restore function that re-binds
|
|
78
|
+
* the previous scanner (so concurrent test files don't leak state). Production
|
|
79
|
+
* code MUST NOT call this.
|
|
80
|
+
*/
|
|
81
|
+
export declare function setUnityProcessScannerForTest(fake: UnityProcessScanner | null): () => void;
|
|
82
|
+
/**
|
|
83
|
+
* Scan for a live Unity process whose command line references `projectPath`.
|
|
84
|
+
*
|
|
85
|
+
* Returns `{ pid }` for the first match (by PID), or null when no Unity
|
|
86
|
+
* process matches. Path comparison uses {@link normalizePath} from
|
|
87
|
+
* `instance-discovery.ts` (case-sensitive on macOS/Linux — `canonicalize`
|
|
88
|
+
* would normalize away the very differences that distinguish two projects,
|
|
89
|
+
* and the Hub does the same on its side).
|
|
90
|
+
*
|
|
91
|
+
* Also matches when Unity is running WITHOUT `-projectPath` (bare editor
|
|
92
|
+
* launch). The Hub covers this via `lastLaunchPid`; the MCP server has no
|
|
93
|
+
* persisted launch PID, so this is a known false negative we accept — the
|
|
94
|
+
* scan simply returns null and the caller falls back to its pre-feature
|
|
95
|
+
* behavior. Documented in tests.
|
|
96
|
+
*
|
|
97
|
+
* Never throws: any scanner failure (ps missing, PowerShell slow, parse
|
|
98
|
+
* error) returns null. A failed scan must not mask the underlying offline
|
|
99
|
+
* state.
|
|
100
|
+
*
|
|
101
|
+
* @param projectPath absolute Unity project root to match against.
|
|
102
|
+
*/
|
|
103
|
+
export declare function findUnityForProject(projectPath: string | null | undefined): {
|
|
104
|
+
pid: number;
|
|
105
|
+
} | null;
|
|
@@ -0,0 +1,387 @@
|
|
|
1
|
+
// M27 Plan 1 — Cold Safe Mode / dead-bridge detection (process-presence scan).
|
|
2
|
+
//
|
|
3
|
+
// When Unity launches directly into Safe Mode (the bridge assembly fails to
|
|
4
|
+
// compile from a cold start), the bridge's `[InitializeOnLoad]` static
|
|
5
|
+
// constructor never runs, so **no instance lock is ever written**.
|
|
6
|
+
// `classifyInstance(null)` returns `gone` — the same classification as "Unity
|
|
7
|
+
// is not running." Without a positive signal, the MCP server cannot tell the
|
|
8
|
+
// agent to call `read_compile_errors`; it must guess or follow the SKILL's
|
|
9
|
+
// manual `ps`/`grep` workaround.
|
|
10
|
+
//
|
|
11
|
+
// This module ports the Hub's Unity-process scanner
|
|
12
|
+
// (`hub/src-tauri/src/config/running_unity.rs`) into the MCP server so the
|
|
13
|
+
// cold-start case can be detected: when `classifyInstance` is `gone` AND a
|
|
14
|
+
// live Unity process whose command line references this project is found,
|
|
15
|
+
// callers (`bridge_status`, `LiveClient`, the CLI `wait-for-ready`) treat the
|
|
16
|
+
// state as **cold Safe Mode / bridge never compiled** and surface the same
|
|
17
|
+
// recovery path as mid-session `dead_bridge` → `read_compile_errors`.
|
|
18
|
+
//
|
|
19
|
+
// The MCP helper only needs **single-project lookup** (does any Unity process
|
|
20
|
+
// match THIS project path?), not the Hub's full multi-project scan, so the
|
|
21
|
+
// public surface is just `findUnityForProject(projectPath)`.
|
|
22
|
+
//
|
|
23
|
+
// Cross-platform: macOS + Windows (match the Hub). Linux returns null — the
|
|
24
|
+
// Hub also returns an empty list on every other target, so this is no
|
|
25
|
+
// regression. No new runtime deps: `node:child_process`, `node:path`, and the
|
|
26
|
+
// shared `normalizePath` from `instance-discovery.ts` (NOT the Hub's
|
|
27
|
+
// `canonicalize` — case-sensitive paths on macOS/Linux must compare verbatim,
|
|
28
|
+
// and canonicalize would normalize away the very differences that distinguish
|
|
29
|
+
// two projects).
|
|
30
|
+
import { execFileSync } from "node:child_process";
|
|
31
|
+
import { normalizePath } from "./instance-discovery.js";
|
|
32
|
+
/**
|
|
33
|
+
* Pure `-projectPath` argument parser. Port of Hub
|
|
34
|
+
* `running_unity.rs#parse_project_path_arg`. Accepts both the space-separated
|
|
35
|
+
* (`-projectPath <value>`) and equals (`-projectPath=<value>`) forms, plus
|
|
36
|
+
* the long `--projectPath` variants. Surrounding single or double quotes on
|
|
37
|
+
* the value are stripped. Returns the first match (matching the rest of the
|
|
38
|
+
* Hub CLI surface); null when the flag is absent or sits at the end of argv
|
|
39
|
+
* with no value.
|
|
40
|
+
*
|
|
41
|
+
* This is the unit-testable core: the OS-specific scanners feed it an argv
|
|
42
|
+
* slice extracted from `ps` / PowerShell output.
|
|
43
|
+
*/
|
|
44
|
+
export function parseProjectPathArg(args) {
|
|
45
|
+
for (let i = 0; i < args.length; i++) {
|
|
46
|
+
const arg = args[i];
|
|
47
|
+
const eqForm = stripPrefix(arg, "-projectPath=") ?? stripPrefix(arg, "--projectPath=");
|
|
48
|
+
if (eqForm !== null) {
|
|
49
|
+
return unquote(eqForm);
|
|
50
|
+
}
|
|
51
|
+
if (arg === "-projectPath" || arg === "--projectPath") {
|
|
52
|
+
const next = args[i + 1];
|
|
53
|
+
if (next === undefined)
|
|
54
|
+
return null; // flag at end with no value
|
|
55
|
+
return unquote(next);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
/** Return `rest` when `value` starts with `prefix`, else null. */
|
|
61
|
+
function stripPrefix(value, prefix) {
|
|
62
|
+
if (value.startsWith(prefix))
|
|
63
|
+
return value.slice(prefix.length);
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Strip a single layer of surrounding double or single quotes from a flag
|
|
68
|
+
* value. Hub-launched Unity passes the path unquoted on macOS (the OS handles
|
|
69
|
+
* spaces natively) and quoted on Windows when the path contains spaces. We
|
|
70
|
+
* accept both because the flag may have been supplied by a third-party tool.
|
|
71
|
+
*/
|
|
72
|
+
function unquote(value) {
|
|
73
|
+
const trimmed = value.trim();
|
|
74
|
+
if (trimmed.length >= 2) {
|
|
75
|
+
const first = trimmed.charCodeAt(0);
|
|
76
|
+
const last = trimmed.charCodeAt(trimmed.length - 1);
|
|
77
|
+
const dq = '"'.charCodeAt(0);
|
|
78
|
+
const sq = "'".charCodeAt(0);
|
|
79
|
+
if ((first === dq && last === dq) || (first === sq && last === sq)) {
|
|
80
|
+
return trimmed.slice(1, -1);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return trimmed;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* `true` when the command line's executable basename is `Unity`
|
|
87
|
+
* (case-sensitive — `unityhub://` URL handlers and the `Unity Hub` GUI do not
|
|
88
|
+
* match). Windows is filtered by the PowerShell `Name='Unity.exe'` selector
|
|
89
|
+
* upstream, so this helper is only used for the macOS / `ps` path.
|
|
90
|
+
*
|
|
91
|
+
* Extracting the executable path from a `ps` command line is harder than it
|
|
92
|
+
* looks: the Hub GUI binary lives at
|
|
93
|
+
* `/Applications/Unity Hub.app/Contents/MacOS/Unity Hub` — i.e. the executable
|
|
94
|
+
* name itself contains a space, and the parent directory contains the word
|
|
95
|
+
* "Unity". A naive `split_whitespace().next()` would return `/Applications/Unity`,
|
|
96
|
+
* which basename-matches `Unity` and (incorrectly) tags the Hub GUI as a
|
|
97
|
+
* running editor. We solve this by extending the executable prefix past any
|
|
98
|
+
* tokens that don't look like flags: the Unity editor is virtually always
|
|
99
|
+
* launched with `-projectPath` (or some other `-flag`), so the first `-flag`
|
|
100
|
+
* token is a reliable end-of-path marker.
|
|
101
|
+
*/
|
|
102
|
+
export function isUnityCommandLine(commandLine) {
|
|
103
|
+
const executable = firstExecutablePath(commandLine);
|
|
104
|
+
const unquoted = trimMatching(executable, '"', "'");
|
|
105
|
+
const name = basenameSafe(unquoted);
|
|
106
|
+
return name === "Unity";
|
|
107
|
+
}
|
|
108
|
+
function trimMatching(value, ...chars) {
|
|
109
|
+
let s = value;
|
|
110
|
+
while (s.length > 0) {
|
|
111
|
+
const c = s[0];
|
|
112
|
+
if (!chars.includes(c))
|
|
113
|
+
break;
|
|
114
|
+
// Trim a matching pair only when both ends agree; otherwise stop.
|
|
115
|
+
if (s.length < 2 || s[s.length - 1] !== c)
|
|
116
|
+
break;
|
|
117
|
+
s = s.slice(1, -1);
|
|
118
|
+
}
|
|
119
|
+
return s;
|
|
120
|
+
}
|
|
121
|
+
function basenameSafe(path) {
|
|
122
|
+
if (!path)
|
|
123
|
+
return "";
|
|
124
|
+
// `path.basename` mishandles Windows-style paths on a non-Windows host;
|
|
125
|
+
// split on both separators and take the last non-empty segment.
|
|
126
|
+
const segments = path.split(/[\\/]/).filter((s) => s.length > 0);
|
|
127
|
+
return segments.length > 0 ? segments[segments.length - 1] : "";
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Extract the executable path prefix from a `ps` command line. If the line
|
|
131
|
+
* starts with a `"`, consume the matching closing quote. Otherwise extend the
|
|
132
|
+
* prefix through any tokens that don't start with `-`, stopping at the first
|
|
133
|
+
* flag (or end of line). Port of Hub `first_executable_path`.
|
|
134
|
+
*/
|
|
135
|
+
function firstExecutablePath(commandLine) {
|
|
136
|
+
if (commandLine.length === 0)
|
|
137
|
+
return commandLine;
|
|
138
|
+
if (commandLine[0] === '"') {
|
|
139
|
+
const end = commandLine.indexOf('"', 1);
|
|
140
|
+
if (end >= 0)
|
|
141
|
+
return commandLine.slice(0, end + 1);
|
|
142
|
+
}
|
|
143
|
+
let pos = 0;
|
|
144
|
+
for (const token of commandLine.split(/\s+/)) {
|
|
145
|
+
if (token.startsWith("-") && token !== "--") {
|
|
146
|
+
return commandLine.slice(0, pos).trimEnd();
|
|
147
|
+
}
|
|
148
|
+
// +1 for the whitespace split() consumed.
|
|
149
|
+
pos += token.length + 1;
|
|
150
|
+
}
|
|
151
|
+
return commandLine.trimEnd();
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Naive argv splitter for a `ps`-formatted command line. Honours double and
|
|
155
|
+
* single quotes and treats backslashes as literal (macOS `ps` output never
|
|
156
|
+
* escapes them). Port of Hub `split_args`.
|
|
157
|
+
*/
|
|
158
|
+
export function splitArgs(line) {
|
|
159
|
+
const out = [];
|
|
160
|
+
let current = "";
|
|
161
|
+
let inSingle = false;
|
|
162
|
+
let inDouble = false;
|
|
163
|
+
for (const ch of line) {
|
|
164
|
+
if (ch === "'" && !inDouble) {
|
|
165
|
+
inSingle = !inSingle;
|
|
166
|
+
continue;
|
|
167
|
+
}
|
|
168
|
+
if (ch === '"' && !inSingle) {
|
|
169
|
+
inDouble = !inDouble;
|
|
170
|
+
continue;
|
|
171
|
+
}
|
|
172
|
+
if (/\s/.test(ch) && !inSingle && !inDouble) {
|
|
173
|
+
if (current.length > 0) {
|
|
174
|
+
out.push(current);
|
|
175
|
+
current = "";
|
|
176
|
+
}
|
|
177
|
+
continue;
|
|
178
|
+
}
|
|
179
|
+
current += ch;
|
|
180
|
+
}
|
|
181
|
+
if (current.length > 0)
|
|
182
|
+
out.push(current);
|
|
183
|
+
return out;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Windows argv splitter. Same rules as {@link splitArgs} but treats `/` and
|
|
187
|
+
* `\` as ordinary characters (Windows paths use both). Honours `\"` as an
|
|
188
|
+
* embedded literal quote inside a double-quoted string, matching the
|
|
189
|
+
* `CommandLine` quoting convention emitted by `Get-CimInstance Win32_Process`.
|
|
190
|
+
* Port of Hub `split_args_windows`.
|
|
191
|
+
*/
|
|
192
|
+
export function splitArgsWindows(line) {
|
|
193
|
+
const out = [];
|
|
194
|
+
let current = "";
|
|
195
|
+
let inDouble = false;
|
|
196
|
+
const chars = Array.from(line);
|
|
197
|
+
for (let i = 0; i < chars.length; i++) {
|
|
198
|
+
const ch = chars[i];
|
|
199
|
+
if (inDouble && ch === "\\") {
|
|
200
|
+
const next = chars[i + 1];
|
|
201
|
+
if (next === '"' || next === "\\") {
|
|
202
|
+
current += next;
|
|
203
|
+
i += 1;
|
|
204
|
+
continue;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
if (ch === '"') {
|
|
208
|
+
inDouble = !inDouble;
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
if (/\s/.test(ch) && !inDouble) {
|
|
212
|
+
if (current.length > 0) {
|
|
213
|
+
out.push(current);
|
|
214
|
+
current = "";
|
|
215
|
+
}
|
|
216
|
+
continue;
|
|
217
|
+
}
|
|
218
|
+
current += ch;
|
|
219
|
+
}
|
|
220
|
+
if (current.length > 0)
|
|
221
|
+
out.push(current);
|
|
222
|
+
return out;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Parse macOS `ps -axww -o pid=,command=` output. One line per process: the
|
|
226
|
+
* PID is the first whitespace-delimited token, the rest is the full command.
|
|
227
|
+
* Lines whose executable basename is not `Unity` are skipped (rejects the Hub
|
|
228
|
+
* GUI, `unityhub://` URL handlers, unrelated tools). Port of Hub
|
|
229
|
+
* `parse_ps_output`.
|
|
230
|
+
*/
|
|
231
|
+
export function parsePsOutput(stdout) {
|
|
232
|
+
const out = [];
|
|
233
|
+
for (const line of stdout.split(/\r?\n/)) {
|
|
234
|
+
const trimmed = line.replace(/^\s+/, "");
|
|
235
|
+
if (trimmed.length === 0)
|
|
236
|
+
continue;
|
|
237
|
+
const m = trimmed.match(/^(\S+)\s+(.*)$/);
|
|
238
|
+
if (!m)
|
|
239
|
+
continue;
|
|
240
|
+
const pidStr = m[1];
|
|
241
|
+
const rest = m[2].replace(/^\s+/, "");
|
|
242
|
+
const pid = Number.parseInt(pidStr, 10);
|
|
243
|
+
if (!Number.isInteger(pid) || pid <= 0)
|
|
244
|
+
continue;
|
|
245
|
+
if (!isUnityCommandLine(rest))
|
|
246
|
+
continue;
|
|
247
|
+
const projectPath = parseProjectPathArg(splitArgs(rest));
|
|
248
|
+
out.push({
|
|
249
|
+
pid,
|
|
250
|
+
projectPath: projectPath !== null ? normalizePath(projectPath) : null,
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
return out;
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Parse the `PID|commandline` lines emitted by the PowerShell scan.
|
|
257
|
+
* `CommandLine` is `null` for system-owned processes; we record the PID
|
|
258
|
+
* without a project path so the caller can still do its PID-only fallback.
|
|
259
|
+
* Port of Hub `parse_powershell_lines`.
|
|
260
|
+
*/
|
|
261
|
+
export function parsePowerShellLines(stdout) {
|
|
262
|
+
const out = [];
|
|
263
|
+
for (const line of stdout.split(/\r?\n/)) {
|
|
264
|
+
const trimmed = line.trim();
|
|
265
|
+
if (trimmed.length === 0)
|
|
266
|
+
continue;
|
|
267
|
+
const bar = trimmed.indexOf("|");
|
|
268
|
+
if (bar < 0)
|
|
269
|
+
continue;
|
|
270
|
+
const pidStr = trimmed.slice(0, bar);
|
|
271
|
+
const rest = trimmed.slice(bar + 1);
|
|
272
|
+
const pid = Number.parseInt(pidStr, 10);
|
|
273
|
+
if (!Number.isInteger(pid) || pid <= 0)
|
|
274
|
+
continue;
|
|
275
|
+
const projectPath = rest.length === 0 || rest === "null"
|
|
276
|
+
? null
|
|
277
|
+
: parseProjectPathArg(splitArgsWindows(rest));
|
|
278
|
+
out.push({
|
|
279
|
+
pid,
|
|
280
|
+
projectPath: projectPath !== null ? normalizePath(projectPath) : null,
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
return out;
|
|
284
|
+
}
|
|
285
|
+
/** macOS `ps -axww -o pid=,command=` scanner. Port of Hub `scan_macos`. */
|
|
286
|
+
function scanMacos() {
|
|
287
|
+
let stdout;
|
|
288
|
+
try {
|
|
289
|
+
stdout = execFileSync("ps", ["-axww", "-o", "pid=,command="], {
|
|
290
|
+
encoding: "utf8",
|
|
291
|
+
});
|
|
292
|
+
}
|
|
293
|
+
catch {
|
|
294
|
+
// ps missing or failed (non-macOS CI container without procps). Return
|
|
295
|
+
// empty — the cold-Safe-Mode branch then falls through to "stopped", the
|
|
296
|
+
// pre-feature behavior, so no regression.
|
|
297
|
+
return [];
|
|
298
|
+
}
|
|
299
|
+
return parsePsOutput(stdout);
|
|
300
|
+
}
|
|
301
|
+
/** Windows PowerShell `Get-CimInstance Win32_Process` scanner. Port of Hub
|
|
302
|
+
* `scan_windows`. */
|
|
303
|
+
function scanWindows() {
|
|
304
|
+
const script = "Get-CimInstance Win32_Process -Filter \"Name='Unity.exe'\" | " +
|
|
305
|
+
"ForEach-Object { Write-Output ($_.ProcessId.ToString() + '|' + $_.CommandLine) }";
|
|
306
|
+
let stdout;
|
|
307
|
+
try {
|
|
308
|
+
stdout = execFileSync("powershell", ["-NoProfile", "-NonInteractive", "-Command", script], { encoding: "utf8", windowsHide: true });
|
|
309
|
+
}
|
|
310
|
+
catch {
|
|
311
|
+
// PowerShell missing or failed. Return empty.
|
|
312
|
+
return [];
|
|
313
|
+
}
|
|
314
|
+
return parsePowerShellLines(stdout);
|
|
315
|
+
}
|
|
316
|
+
/** Real scanner — dispatches to the OS-native command. Linux/other → empty. */
|
|
317
|
+
const realScanner = {
|
|
318
|
+
scan() {
|
|
319
|
+
const platform = process.platform;
|
|
320
|
+
if (platform === "darwin")
|
|
321
|
+
return scanMacos();
|
|
322
|
+
if (platform === "win32")
|
|
323
|
+
return scanWindows();
|
|
324
|
+
return []; // Linux + others: no regression (Hub matches).
|
|
325
|
+
},
|
|
326
|
+
};
|
|
327
|
+
// Mutable binding so tests can swap in a fake without threading a dependency
|
|
328
|
+
// through every caller. Default is the real OS scanner.
|
|
329
|
+
let currentScanner = realScanner;
|
|
330
|
+
/** Read the active scanner. Callers (`findUnityForProject`) use this. */
|
|
331
|
+
export function getUnityProcessScanner() {
|
|
332
|
+
return currentScanner;
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* Install a fake scanner for tests. Returns a restore function that re-binds
|
|
336
|
+
* the previous scanner (so concurrent test files don't leak state). Production
|
|
337
|
+
* code MUST NOT call this.
|
|
338
|
+
*/
|
|
339
|
+
export function setUnityProcessScannerForTest(fake) {
|
|
340
|
+
const prev = currentScanner;
|
|
341
|
+
currentScanner = fake ?? realScanner;
|
|
342
|
+
return () => {
|
|
343
|
+
currentScanner = prev;
|
|
344
|
+
};
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Scan for a live Unity process whose command line references `projectPath`.
|
|
348
|
+
*
|
|
349
|
+
* Returns `{ pid }` for the first match (by PID), or null when no Unity
|
|
350
|
+
* process matches. Path comparison uses {@link normalizePath} from
|
|
351
|
+
* `instance-discovery.ts` (case-sensitive on macOS/Linux — `canonicalize`
|
|
352
|
+
* would normalize away the very differences that distinguish two projects,
|
|
353
|
+
* and the Hub does the same on its side).
|
|
354
|
+
*
|
|
355
|
+
* Also matches when Unity is running WITHOUT `-projectPath` (bare editor
|
|
356
|
+
* launch). The Hub covers this via `lastLaunchPid`; the MCP server has no
|
|
357
|
+
* persisted launch PID, so this is a known false negative we accept — the
|
|
358
|
+
* scan simply returns null and the caller falls back to its pre-feature
|
|
359
|
+
* behavior. Documented in tests.
|
|
360
|
+
*
|
|
361
|
+
* Never throws: any scanner failure (ps missing, PowerShell slow, parse
|
|
362
|
+
* error) returns null. A failed scan must not mask the underlying offline
|
|
363
|
+
* state.
|
|
364
|
+
*
|
|
365
|
+
* @param projectPath absolute Unity project root to match against.
|
|
366
|
+
*/
|
|
367
|
+
export function findUnityForProject(projectPath) {
|
|
368
|
+
if (!projectPath)
|
|
369
|
+
return null;
|
|
370
|
+
const target = normalizePath(projectPath);
|
|
371
|
+
if (target.length === 0)
|
|
372
|
+
return null;
|
|
373
|
+
let found = [];
|
|
374
|
+
try {
|
|
375
|
+
found = getUnityProcessScanner().scan();
|
|
376
|
+
}
|
|
377
|
+
catch {
|
|
378
|
+
return null;
|
|
379
|
+
}
|
|
380
|
+
for (const proc of found) {
|
|
381
|
+
if (proc.projectPath !== null && normalizePath(proc.projectPath) === target) {
|
|
382
|
+
return { pid: proc.pid };
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
return null;
|
|
386
|
+
}
|
|
387
|
+
//# sourceMappingURL=running-unity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"running-unity.js","sourceRoot":"","sources":["../src/running-unity.ts"],"names":[],"mappings":"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"}
|