unity-mcp-cli 0.53.1 → 0.54.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.
@@ -1,11 +1,12 @@
1
1
  import * as fs from 'fs';
2
2
  import * as path from 'path';
3
3
  import * as os from 'os';
4
- import { execFileSync, execSync } from 'child_process';
4
+ import { execFileSync, execSync, spawn } from 'child_process';
5
5
  import { platform } from 'os';
6
6
  import { get as httpsGet } from 'https';
7
7
  import { get as httpGet } from 'http';
8
8
  import * as ui from './ui.js';
9
+ import { verbose } from './ui.js';
9
10
  const UNITY_HUB_DOWNLOAD_URLS = {
10
11
  win32: 'https://public-cdn.cloud.unity3d.com/hub/prod/UnityHubSetup.exe',
11
12
  darwin: 'https://public-cdn.cloud.unity3d.com/hub/prod/UnityHubSetup.dmg',
@@ -30,10 +31,13 @@ export function findUnityHub() {
30
31
  break;
31
32
  }
32
33
  for (const candidate of candidates) {
34
+ verbose(`Checking Unity Hub candidate: ${candidate}`);
33
35
  if (candidate && fs.existsSync(candidate)) {
36
+ verbose(`Found Unity Hub at: ${candidate}`);
34
37
  return candidate;
35
38
  }
36
39
  }
40
+ verbose('Unity Hub not found in any candidate location');
37
41
  return null;
38
42
  }
39
43
  /**
@@ -78,10 +82,10 @@ export async function installUnityHub() {
78
82
  await downloadFile(url, installerPath);
79
83
  }
80
84
  catch (err) {
81
- spinner.fail('Failed to download Unity Hub installer');
85
+ spinner.error('Failed to download Unity Hub installer');
82
86
  throw err;
83
87
  }
84
- spinner.succeed('Unity Hub installer downloaded');
88
+ spinner.success('Unity Hub installer downloaded');
85
89
  ui.info('Installing Unity Hub silently (may require administrator privileges)...');
86
90
  try {
87
91
  execFileSync(installerPath, ['/S'], { timeout: 300000, stdio: 'inherit' });
@@ -105,10 +109,10 @@ export async function installUnityHub() {
105
109
  await downloadFile(url, dmgPath);
106
110
  }
107
111
  catch (err) {
108
- spinner.fail('Failed to download Unity Hub installer');
112
+ spinner.error('Failed to download Unity Hub installer');
109
113
  throw err;
110
114
  }
111
- spinner.succeed('Unity Hub installer downloaded');
115
+ spinner.success('Unity Hub installer downloaded');
112
116
  const installSpinner = ui.startSpinner('Installing Unity Hub...');
113
117
  try {
114
118
  const mountOutput = execSync(`hdiutil attach -nobrowse -noverify "${dmgPath}"`, { encoding: 'utf-8' });
@@ -122,10 +126,10 @@ export async function installUnityHub() {
122
126
  finally {
123
127
  execSync(`hdiutil detach "${mountPoint}" -quiet`, { stdio: 'ignore' });
124
128
  }
125
- installSpinner.succeed('Unity Hub installed');
129
+ installSpinner.success('Unity Hub installed');
126
130
  }
127
131
  catch (err) {
128
- installSpinner.fail('Unity Hub installation failed');
132
+ installSpinner.error('Unity Hub installation failed');
129
133
  throw err;
130
134
  }
131
135
  finally {
@@ -149,11 +153,11 @@ export async function installUnityHub() {
149
153
  await downloadFile(url, appImagePath);
150
154
  }
151
155
  catch (err) {
152
- spinner.fail('Failed to download Unity Hub AppImage');
156
+ spinner.error('Failed to download Unity Hub AppImage');
153
157
  throw err;
154
158
  }
155
159
  fs.chmodSync(appImagePath, 0o755);
156
- spinner.succeed(`Unity Hub installed at: ${appImagePath}`);
160
+ spinner.success(`Unity Hub installed at: ${appImagePath}`);
157
161
  return appImagePath;
158
162
  }
159
163
  default:
@@ -174,10 +178,11 @@ export async function ensureUnityHub() {
174
178
  * List installed Unity editors via Unity Hub CLI.
175
179
  */
176
180
  export function listInstalledEditors(hubPath) {
181
+ const spinner = ui.startSpinner('Listing installed editors...');
177
182
  try {
178
183
  const output = execFileSync(hubPath, ['--', '--headless', 'editors', '--installed'], {
179
184
  encoding: 'utf-8',
180
- timeout: 30000,
185
+ timeout: 120000,
181
186
  });
182
187
  const editors = [];
183
188
  for (const line of output.split('\n')) {
@@ -190,10 +195,11 @@ export function listInstalledEditors(hubPath) {
190
195
  editors.push({ version: match[1], path: match[2].trim() });
191
196
  }
192
197
  }
198
+ spinner.success(`Found ${editors.length} installed editor${editors.length !== 1 ? 's' : ''}`);
193
199
  return editors;
194
200
  }
195
201
  catch (err) {
196
- ui.warn(`Failed to list installed editors: ${err.message}`);
202
+ spinner.error(`Failed to list installed editors: ${err.message}`);
197
203
  return [];
198
204
  }
199
205
  }
@@ -232,16 +238,253 @@ export function findHighestEditor(editors) {
232
238
  return editors.reduce((highest, current) => compareUnityVersions(current.version, highest.version) > 0 ? current : highest);
233
239
  }
234
240
  /**
235
- * Install a Unity editor version via Unity Hub CLI.
241
+ * List available Unity editor releases from Unity Hub CLI.
236
242
  */
237
- export function installEditor(hubPath, version) {
238
- ui.info(`Installing Unity Editor ${version} via Unity Hub...`);
243
+ export function listAvailableReleases(hubPath) {
244
+ const spinner = ui.startSpinner('Fetching available releases...');
239
245
  try {
240
- execFileSync(hubPath, ['--', '--headless', 'install', '--version', version], { encoding: 'utf-8', timeout: 600000, stdio: 'inherit' });
246
+ const output = execFileSync(hubPath, ['--', '--headless', 'editors', '--releases'], {
247
+ encoding: 'utf-8',
248
+ timeout: 120000,
249
+ });
250
+ const releases = [];
251
+ for (const line of output.split('\n')) {
252
+ const trimmed = line.trim();
253
+ if (!trimmed)
254
+ continue;
255
+ // Extract version from line (may also contain "installed at ..." suffix)
256
+ const match = trimmed.match(/^([\d.]+[a-zA-Z]\d+)/);
257
+ if (match) {
258
+ const version = match[1];
259
+ const isStable = /f\d+$/.test(version);
260
+ releases.push({ version, isStable });
261
+ }
262
+ }
263
+ spinner.success(`Found ${releases.length} available release${releases.length !== 1 ? 's' : ''}`);
264
+ return releases;
241
265
  }
242
266
  catch (err) {
243
- throw new Error(`Failed to install Unity Editor ${version}: ${err.message}`);
267
+ spinner.error(`Failed to fetch available releases: ${err.message}`);
268
+ return [];
269
+ }
270
+ }
271
+ /**
272
+ * Find the latest stable (f-suffix) release from the available releases.
273
+ */
274
+ export function findLatestStableRelease(releases) {
275
+ const stable = releases.filter(r => r.isStable);
276
+ if (stable.length === 0)
277
+ return null;
278
+ return stable.reduce((highest, current) => compareUnityVersions(current.version, highest.version) > 0 ? current : highest);
279
+ }
280
+ const FETCH_TIMEOUT_MS = 10000;
281
+ const FETCH_MAX_REDIRECTS = 5;
282
+ /**
283
+ * Fetch a URL and return the response body as a string.
284
+ * Supports redirect following up to FETCH_MAX_REDIRECTS deep, and enforces a
285
+ * FETCH_TIMEOUT_MS request timeout to prevent indefinite hangs.
286
+ */
287
+ function fetchUrl(url, redirectsRemaining = FETCH_MAX_REDIRECTS) {
288
+ return new Promise((resolve, reject) => {
289
+ const controller = new AbortController();
290
+ const timer = setTimeout(() => {
291
+ controller.abort();
292
+ reject(new Error(`Request timed out after ${FETCH_TIMEOUT_MS}ms: ${url}`));
293
+ }, FETCH_TIMEOUT_MS);
294
+ const doGet = url.startsWith('https') ? httpsGet : httpGet;
295
+ const req = doGet(url, { signal: controller.signal }, (response) => {
296
+ if (response.statusCode && response.statusCode >= 300 && response.statusCode < 400 && response.headers.location) {
297
+ clearTimeout(timer);
298
+ if (redirectsRemaining <= 0) {
299
+ response.resume();
300
+ reject(new Error(`Too many redirects (max ${FETCH_MAX_REDIRECTS}) fetching: ${url}`));
301
+ return;
302
+ }
303
+ response.resume();
304
+ fetchUrl(new URL(response.headers.location, url).toString(), redirectsRemaining - 1).then(resolve, reject);
305
+ return;
306
+ }
307
+ if (response.statusCode && response.statusCode !== 200) {
308
+ clearTimeout(timer);
309
+ response.resume();
310
+ reject(new Error(`HTTP ${response.statusCode}`));
311
+ return;
312
+ }
313
+ const chunks = [];
314
+ response.on('data', (chunk) => chunks.push(chunk));
315
+ response.on('end', () => { clearTimeout(timer); resolve(Buffer.concat(chunks).toString('utf-8')); });
316
+ response.on('error', (err) => { clearTimeout(timer); reject(err); });
317
+ });
318
+ req.on('error', (err) => { clearTimeout(timer); reject(err); });
319
+ });
320
+ }
321
+ /**
322
+ * Resolve the changeset hash for a Unity version by scraping the release notes page.
323
+ * Returns the changeset string, or null if not found.
324
+ */
325
+ // Unity version format: major.minor.patchSuffix (e.g. 2022.3.62f3, 6000.3.1f1)
326
+ const UNITY_VERSION_RE = /^\d+\.\d+\.\d+[a-zA-Z]\d+$/;
327
+ export function isValidUnityVersion(version) {
328
+ return UNITY_VERSION_RE.test(version);
329
+ }
330
+ export async function resolveChangeset(version) {
331
+ if (!isValidUnityVersion(version))
332
+ return null;
333
+ const url = `https://unity.com/releases/editor/whats-new/${version}`;
334
+ try {
335
+ const html = await fetchUrl(url);
336
+ // Look for unityhub://VERSION/CHANGESET pattern
337
+ const match = html.match(/unityhub:\/\/[^/]+\/([a-f0-9]{12})/);
338
+ if (match)
339
+ return match[1];
340
+ return null;
341
+ }
342
+ catch {
343
+ return null;
344
+ }
345
+ }
346
+ /**
347
+ * Parse Unity Hub CLI stdout and update the progress bar accordingly.
348
+ * Hub output lines look like:
349
+ * [Unity (6000.3.11f1)] downloading 50.54%
350
+ * [Unity (6000.3.11f1)] validating download...
351
+ * [Unity (6000.3.11f1)] installing...
352
+ * [Unity (6000.3.11f1)] installed successfully.
353
+ */
354
+ export function parseHubProgress(line) {
355
+ const trimmed = line.replace(/\x1b\[[0-9;]*[A-Za-z]/g, '').trim();
356
+ if (!trimmed || trimmed === 'Progress:' || trimmed === 'All Tasks Completed Successfully.')
357
+ return null;
358
+ // Match: [Unity (VERSION)] STATUS
359
+ const match = trimmed.match(/^\[.+?\]\s+(.+)$/);
360
+ if (!match)
361
+ return null;
362
+ const status = match[1];
363
+ // "downloading 50.54%"
364
+ const dlMatch = status.match(/^downloading\s+([\d.]+)%$/);
365
+ if (dlMatch) {
366
+ return { percent: parseFloat(dlMatch[1]), status: 'Downloading' };
367
+ }
368
+ // Map known phases to approximate progress
369
+ if (status.includes('validating download'))
370
+ return { percent: 0, status: 'Validating download' };
371
+ if (status.includes('in progress'))
372
+ return { percent: 0, status: 'Starting download' };
373
+ if (status.includes('finished downloading'))
374
+ return { percent: 100, status: 'Download complete' };
375
+ if (status.includes('queued for install'))
376
+ return { percent: 100, status: 'Queued for install' };
377
+ if (status.includes('validating installation'))
378
+ return { percent: 100, status: 'Validating installation' };
379
+ if (status.includes('installing'))
380
+ return { percent: 100, status: 'Installing' };
381
+ if (status.includes('installed successfully'))
382
+ return { percent: 100, status: 'Installed' };
383
+ return { percent: 0, status };
384
+ }
385
+ /**
386
+ * Run Unity Hub install command with a progress bar.
387
+ * Spawns the process and parses stdout to display download/install progress.
388
+ */
389
+ function runHubInstallWithProgress(hubPath, args, version) {
390
+ return new Promise((resolve, reject) => {
391
+ const progress = ui.createProgressBar();
392
+ let activeSpinner = ui.startSpinner(`Preparing Unity Editor ${version}...`);
393
+ let isDownloading = false;
394
+ const proc = spawn(hubPath, args, { stdio: ['ignore', 'pipe', 'pipe'] });
395
+ let stderr = '';
396
+ function stopActiveSpinner(msg) {
397
+ if (activeSpinner) {
398
+ activeSpinner.success(msg);
399
+ activeSpinner = null;
400
+ }
401
+ }
402
+ function startPhaseSpinner(status) {
403
+ stopActiveSpinner(activeSpinner?.text ?? '');
404
+ activeSpinner = ui.startSpinner(`${status}...`);
405
+ }
406
+ let stdoutBuffer = '';
407
+ proc.stdout.on('data', (data) => {
408
+ const text = stdoutBuffer + data.toString('utf-8');
409
+ const lines = text.split('\n');
410
+ stdoutBuffer = lines.pop() ?? '';
411
+ for (const line of lines) {
412
+ const parsed = parseHubProgress(line);
413
+ if (!parsed)
414
+ continue;
415
+ if (parsed.status === 'Downloading' || parsed.status === 'Starting download') {
416
+ if (!isDownloading) {
417
+ isDownloading = true;
418
+ stopActiveSpinner(`Downloading Unity Editor ${version}`);
419
+ }
420
+ progress.update(parsed.percent, `Downloading Unity Editor ${version}`);
421
+ }
422
+ else if (parsed.status === 'Download complete') {
423
+ if (isDownloading) {
424
+ progress.complete(`Unity Editor ${version} downloaded`);
425
+ isDownloading = false;
426
+ }
427
+ }
428
+ else if (parsed.status === 'Installed') {
429
+ stopActiveSpinner(`Unity Editor ${version} installed`);
430
+ }
431
+ else {
432
+ // Post-download phases: show as a spinner so the user sees activity
433
+ if (!isDownloading) {
434
+ startPhaseSpinner(parsed.status);
435
+ }
436
+ }
437
+ }
438
+ });
439
+ proc.stderr.on('data', (data) => { stderr += data.toString('utf-8'); });
440
+ proc.on('close', (code) => {
441
+ if (activeSpinner)
442
+ activeSpinner.stop();
443
+ if (code === 0) {
444
+ if (isDownloading) {
445
+ progress.complete(`Unity Editor ${version} downloaded`);
446
+ }
447
+ resolve();
448
+ }
449
+ else {
450
+ if (isDownloading) {
451
+ progress.fail(`Download failed for Unity Editor ${version}`);
452
+ }
453
+ reject(new Error(`Failed to install Unity Editor ${version} (exit code ${code})` +
454
+ (stderr ? `:\n${stderr.trim()}` : '')));
455
+ }
456
+ });
457
+ proc.on('error', (err) => {
458
+ if (activeSpinner)
459
+ activeSpinner.stop();
460
+ reject(new Error(`Failed to install Unity Editor ${version}: ${err.message}`));
461
+ });
462
+ });
463
+ }
464
+ /**
465
+ * Install a Unity editor version via Unity Hub CLI.
466
+ * Automatically resolves changeset for versions not in the promoted releases list.
467
+ * Shows a progress bar during download and status during installation.
468
+ */
469
+ export async function installEditor(hubPath, version, prefetchedReleases) {
470
+ // Use pre-fetched releases when available to avoid a duplicate Hub CLI call
471
+ const releases = prefetchedReleases ?? listAvailableReleases(hubPath);
472
+ const isPromoted = releases.some(r => r.version === version);
473
+ const baseArgs = ['--', '--headless', 'install', '--version', version];
474
+ if (isPromoted) {
475
+ await runHubInstallWithProgress(hubPath, baseArgs, version);
476
+ return;
477
+ }
478
+ // Version not in releases — resolve changeset
479
+ const changesetSpinner = ui.startSpinner(`Resolving changeset for ${version}...`);
480
+ const changeset = await resolveChangeset(version);
481
+ if (!changeset) {
482
+ changesetSpinner.error(`Could not resolve changeset for ${version}`);
483
+ throw new Error(`Unity Editor ${version} is not in the promoted releases list and its changeset could not be resolved. ` +
484
+ `You can provide a changeset manually: unity-hub -- --headless install --version ${version} --changeset <hash>`);
244
485
  }
486
+ changesetSpinner.success(`Resolved changeset: ${changeset}`);
487
+ await runHubInstallWithProgress(hubPath, [...baseArgs, '--changeset', changeset], version);
245
488
  }
246
489
  /**
247
490
  * Resolve the Unity Editor executable path from an editor install path.
@@ -287,7 +530,7 @@ export function createProject(hubPath, projectPath, editorVersion) {
287
530
  // Find the editor install path
288
531
  const editors = listInstalledEditors(hubPath);
289
532
  if (editors.length === 0) {
290
- throw new Error('No Unity editors installed. Install one with: unity-mcp-cli install-unity --version <version>');
533
+ throw new Error('No Unity editors installed. Install one with: unity-mcp-cli install-unity [version]');
291
534
  }
292
535
  let editor;
293
536
  if (editorVersion) {
@@ -1 +1 @@
1
- {"version":3,"file":"unity-hub.js","sourceRoot":"","sources":["../../src/utils/unity-hub.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unity-hub.js","sourceRoot":"","sources":["../../src/utils/unity-hub.ts"],"names":[],"mappings":"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"}
package/docs/README.es.md CHANGED
@@ -90,15 +90,15 @@ npx unity-mcp-cli create-project ./MyGame --unity 2022.3.62f1
90
90
  Instala una versión del Editor de Unity mediante la CLI de Unity Hub.
91
91
 
92
92
  ```bash
93
- npx unity-mcp-cli install-unity --version 6000.3.1f1
93
+ npx unity-mcp-cli install-unity 6000.3.1f1
94
94
  ```
95
95
 
96
- | Opción | Requerido | Descripción |
96
+ | Argumento / Opción | Requerido | Descripción |
97
97
  |---|---|---|
98
- | `--version <version>` | No | Versión del Editor de Unity a instalar |
98
+ | `[version]` | No | Versión del Editor de Unity a instalar (ej. `6000.3.1f1`) |
99
99
  | `--path <path>` | No | Lee la versión requerida desde un proyecto existente |
100
100
 
101
- Si no se proporciona ninguna opción, el comando lista los editores instalados actualmente.
101
+ Si no se proporciona ningún argumento ni opción, el comando instala la última versión estable desde la lista de lanzamientos de Unity Hub.
102
102
 
103
103
  **Ejemplo — instalar la versión del editor que necesita un proyecto:**
104
104
 
package/docs/README.ja.md CHANGED
@@ -90,15 +90,15 @@ npx unity-mcp-cli create-project ./MyGame --unity 2022.3.62f1
90
90
  Unity Hub CLI を通じて Unity Editor のバージョンをインストールします。
91
91
 
92
92
  ```bash
93
- npx unity-mcp-cli install-unity --version 6000.3.1f1
93
+ npx unity-mcp-cli install-unity 6000.3.1f1
94
94
  ```
95
95
 
96
- | オプション | 必須 | 説明 |
96
+ | 引数 / オプション | 必須 | 説明 |
97
97
  |---|---|---|
98
- | `--version <version>` | いいえ | インストールする Unity Editor のバージョン |
98
+ | `[version]` | いいえ | インストールする Unity Editor のバージョン(例: `6000.3.1f1`) |
99
99
  | `--path <path>` | いいえ | 既存のプロジェクトから必要なバージョンを読み取る |
100
100
 
101
- どちらのオプションも指定しない場合、コマンドは現在インストールされているエディターの一覧を表示します。
101
+ 引数もオプションも指定しない場合、コマンドは Unity Hub のリリース一覧から最新の安定版をインストールします。
102
102
 
103
103
  **例 — プロジェクトが必要とするエディターバージョンをインストール:**
104
104
 
@@ -90,15 +90,15 @@ npx unity-mcp-cli create-project ./MyGame --unity 2022.3.62f1
90
90
  通过 Unity Hub CLI 安装指定版本的 Unity Editor。
91
91
 
92
92
  ```bash
93
- npx unity-mcp-cli install-unity --version 6000.3.1f1
93
+ npx unity-mcp-cli install-unity 6000.3.1f1
94
94
  ```
95
95
 
96
- | 选项 | 必需 | 描述 |
96
+ | 参数 / 选项 | 必需 | 描述 |
97
97
  |---|---|---|
98
- | `--version <version>` | 否 | 要安装的 Unity Editor 版本 |
98
+ | `[version]` | 否 | 要安装的 Unity Editor 版本(例如 `6000.3.1f1`) |
99
99
  | `--path <path>` | 否 | 从现有项目中读取所需版本 |
100
100
 
101
- 若两个选项均未提供,命令将列出当前已安装的编辑器。
101
+ 若参数和选项均未提供,命令将从 Unity Hub 发布列表中安装最新稳定版本。
102
102
 
103
103
  **示例 — 安装项目所需的编辑器版本:**
104
104
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "unity-mcp-cli",
3
- "version": "0.53.1",
3
+ "version": "0.54.0",
4
4
  "description": "Cross-platform CLI tool for Unity-MCP operations — create projects, install plugins, configure tools, and manage MCP connections",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -35,15 +35,12 @@
35
35
  "node": "^20.19.0 || >=22.12.0"
36
36
  },
37
37
  "dependencies": {
38
- "boxen": "^8.0.1",
39
38
  "chalk": "^5.6.2",
40
39
  "commander": "^13.1.0",
41
- "ora": "^8.2.0",
42
- "semver": "^7.7.1"
40
+ "yocto-spinner": "^1.1.0"
43
41
  },
44
42
  "devDependencies": {
45
43
  "@types/node": "^22.15.0",
46
- "@types/semver": "^7.7.0",
47
44
  "typescript": "^5.8.0",
48
45
  "vitest": "^3.1.0"
49
46
  }
@@ -1,2 +0,0 @@
1
- import { Command } from 'commander';
2
- export declare const connectCommand: Command;
@@ -1,87 +0,0 @@
1
- import { Command } from 'commander';
2
- import * as path from 'path';
3
- import * as fs from 'fs';
4
- import { findEditorPath, getProjectEditorVersion, launchEditor } from '../utils/unity-editor.js';
5
- import * as ui from '../utils/ui.js';
6
- export const connectCommand = new Command('connect')
7
- .description('Open Unity and enforce MCP connection to a specified server URL via environment variables')
8
- .requiredOption('--path <path>', 'Path to the Unity project')
9
- .requiredOption('--url <url>', 'MCP server URL to connect to')
10
- .option('--tools <names>', 'Comma-separated list of tools to enable (sets UNITY_MCP_TOOLS)')
11
- .option('--token <token>', 'Auth token (sets UNITY_MCP_TOKEN)')
12
- .option('--auth <option>', 'Auth option: none or required (sets UNITY_MCP_AUTH_OPTION)')
13
- .option('--keep-connected', 'Force keep connected (sets UNITY_MCP_KEEP_CONNECTED=true)')
14
- .option('--transport <method>', 'Transport method: streamableHttp or stdio (sets UNITY_MCP_TRANSPORT)')
15
- .option('--start-server <value>', 'Set to true/false to control server auto-start (sets UNITY_MCP_START_SERVER)', undefined)
16
- .option('--unity <version>', 'Specific Unity Editor version to use')
17
- .action(async (options) => {
18
- const projectPath = path.resolve(options.path);
19
- if (!fs.existsSync(projectPath)) {
20
- ui.error(`Project path does not exist: ${projectPath}`);
21
- process.exit(1);
22
- }
23
- // Determine editor version
24
- let version = options.unity;
25
- if (!version) {
26
- version = getProjectEditorVersion(projectPath) ?? undefined;
27
- if (version) {
28
- ui.info(`Detected editor version from project: ${version}`);
29
- }
30
- }
31
- const spinner = ui.startSpinner('Locating Unity Editor...');
32
- const editorPath = await findEditorPath(version);
33
- if (!editorPath) {
34
- spinner.fail('Unity Editor not found');
35
- const versionMsg = version ? ` (version ${version})` : '';
36
- ui.error(`Unity Editor not found${versionMsg}. Install it with: unity-mcp-cli install-unity --version <version>`);
37
- process.exit(1);
38
- }
39
- spinner.succeed('Unity Editor located');
40
- // Build environment variables for MCP connection
41
- const env = {
42
- UNITY_MCP_HOST: options.url,
43
- };
44
- if (options.keepConnected) {
45
- env['UNITY_MCP_KEEP_CONNECTED'] = 'true';
46
- }
47
- if (options.tools) {
48
- env['UNITY_MCP_TOOLS'] = options.tools;
49
- }
50
- if (options.token) {
51
- env['UNITY_MCP_TOKEN'] = options.token;
52
- }
53
- if (options.auth) {
54
- if (options.auth !== 'none' && options.auth !== 'required') {
55
- ui.error('--auth must be "none" or "required"');
56
- process.exit(1);
57
- }
58
- env['UNITY_MCP_AUTH_OPTION'] = options.auth;
59
- }
60
- if (options.transport) {
61
- if (options.transport !== 'streamableHttp' && options.transport !== 'stdio') {
62
- ui.error('--transport must be "streamableHttp" or "stdio"');
63
- process.exit(1);
64
- }
65
- env['UNITY_MCP_TRANSPORT'] = options.transport;
66
- }
67
- if (options.startServer !== undefined) {
68
- const val = options.startServer.toLowerCase();
69
- if (val !== 'true' && val !== 'false') {
70
- ui.error('--start-server must be "true" or "false"');
71
- process.exit(1);
72
- }
73
- env['UNITY_MCP_START_SERVER'] = val;
74
- }
75
- ui.heading('Connection Details');
76
- ui.label('MCP Server', options.url);
77
- ui.label('Project', projectPath);
78
- ui.label('Editor', editorPath);
79
- ui.heading('Environment Variables');
80
- for (const [key, value] of Object.entries(env)) {
81
- const display = key === 'UNITY_MCP_TOKEN' ? '***' : value;
82
- ui.label(key, display);
83
- }
84
- ui.divider();
85
- launchEditor(editorPath, projectPath, env);
86
- });
87
- //# sourceMappingURL=connect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"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"}