@atelierai/uco 1.0.7 → 1.0.8

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.
Files changed (87) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/package.json +1 -1
  3. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetConfig.cs +132 -132
  4. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetDependencyResolver.cs +237 -237
  5. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetDownloader.cs +82 -82
  6. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/MenuItems.cs +247 -247
  7. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ToolGroups.cs +153 -153
  8. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Skills.Create.SkillBody.cs +155 -155
  9. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Console.GetLogs.cs +95 -95
  10. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.HttpFetcher.cs +139 -139
  11. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Instance.ListAll.cs +72 -72
  12. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/PathReadHelper.cs +106 -106
  13. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Validate.cs +252 -252
  14. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestResultCollector.cs +537 -537
  15. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.cs +400 -400
  16. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Branding/ProductInfo.cs +62 -62
  17. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/CopilotServerManager.cs +1034 -1034
  18. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Skills/Skill_InitialSetup.cs +197 -197
  19. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Startup.Editor.cs +201 -201
  20. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Startup.cs +67 -67
  21. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/CopilotListWindowBase.cs +393 -393
  22. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/CopilotWindowBase.cs +113 -113
  23. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.Connection.cs +3 -3
  24. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CopilotFeatures.cs +195 -195
  25. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CopilotServer.cs +20 -20
  26. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CreateGUI.cs +354 -354
  27. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.cs +78 -78
  28. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowInitializer.cs +47 -47
  29. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/SerializationCheckWindow.cs +190 -190
  30. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Build.cs +91 -91
  31. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Config.cs +298 -298
  32. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Static.cs +296 -296
  33. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.cs +69 -69
  34. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PackageUtils.cs +168 -168
  35. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PrefsKeyMigration.cs +119 -119
  36. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/SafeDefaultsGuard.cs +180 -180
  37. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ScriptUtils.cs +229 -229
  38. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ToolsManifestGenerator.cs +200 -200
  39. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityAuthoringAdapters.cs +1467 -1467
  40. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityAuthoringSafetyReloadGuard.cs +65 -65
  41. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityCopilotUpdateProjectSettings.cs +66 -66
  42. package/vendor/plugin/com.atelierai.unity.copilot/Plugins/ReflectorNet.dll +0 -0
  43. package/vendor/plugin/com.atelierai.unity.copilot/Plugins/Uco.Framework.Common.dll +0 -0
  44. package/vendor/plugin/com.atelierai.unity.copilot/Plugins/Uco.Framework.dll +0 -0
  45. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/EntityIdConverter.cs +120 -120
  46. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectMetadata.cs +110 -110
  47. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectMetadata.pre-Unity.6.5.cs +110 -110
  48. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/FileLogStorage.cs +547 -547
  49. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Build.cs +243 -243
  50. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Config.cs +3 -3
  51. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.cs +295 -295
  52. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginBuilder.cs +105 -105
  53. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginRuntime.Static.cs +155 -155
  54. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginRuntime.cs +59 -59
  55. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/EnvironmentUtils.cs +11 -11
  56. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/AtomicApiTestFixtures.cs +99 -99
  57. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/TryModifyAtTests.cs +227 -227
  58. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AuthoringSafetyPilotTests.cs +1050 -1050
  59. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetLegacyMigrationTests.cs +304 -304
  60. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Environment/EnvironmentUtilsTests.cs +1 -1
  61. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/BlacklistTypeTests.cs +416 -416
  62. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataFieldScriptableObjectPopulationTests.cs +172 -172
  63. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataFieldScriptableObjectPopulationTests.pre-Unity.6.5.cs +169 -169
  64. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPopulationTests.cs +182 -182
  65. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPopulationTests.pre-Unity.6.5.cs +179 -179
  66. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyPopulationTests.cs +175 -175
  67. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyPopulationTests.pre-Unity.6.5.cs +174 -174
  68. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyScriptableObjectPopulationTests.cs +171 -171
  69. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyScriptableObjectPopulationTests.pre-Unity.6.5.cs +170 -170
  70. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsCreateFolderTests.cs +243 -243
  71. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsMaterialTests.cs +101 -101
  72. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsPrefabCreateTests.cs +348 -348
  73. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsPrefabCreateTests.pre-Unity.6.5.cs +348 -348
  74. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsShaderTests.cs +194 -194
  75. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/PathBasedToolTests.cs +573 -573
  76. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/PathBasedToolTests.pre-Unity.6.5.cs +513 -513
  77. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotCameraTests.cs +154 -154
  78. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotCameraTests.pre-Unity.6.5.cs +154 -154
  79. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotGameViewTests.cs +164 -164
  80. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotSceneViewTests.cs +155 -155
  81. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolParameterTests.cs +56 -56
  82. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolThreadSafetyTests.cs +651 -651
  83. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolThreadSafetyTests.pre-Unity.6.5.cs +651 -651
  84. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ToolBatchExecutionIntegrationTests.cs +407 -407
  85. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/{McpPluginTests.cs → UcoPluginTests.cs} +105 -105
  86. package/vendor/plugin/com.atelierai.unity.copilot/package.json +1 -1
  87. /package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/{McpPluginTests.cs.meta → UcoPluginTests.cs.meta} +0 -0
@@ -1,197 +1,197 @@
1
- /*
2
- ┌──────────────────────────────────────────────────────────────────┐
3
- │ Author: Ivan Murzak (https://github.com/IvanMurzak) │
4
- │ Repository: GitHub (https://github.com/IvanMurzak/Unity-MCP) │
5
- │ Copyright (c) 2025 Ivan Murzak │
6
- │ Licensed under the Apache License, Version 2.0. │
7
- │ See the LICENSE file in the project root for more information. │
8
- └──────────────────────────────────────────────────────────────────┘
9
- */
10
-
11
- #nullable enable
12
- using System.Runtime.InteropServices;
13
- using com.AtelierAI.Uco.Framework;
14
-
15
- namespace com.AtelierAI.Unity.Copilot.Editor.API
16
- {
17
- [UcoSkillType]
18
- public static class Skill_InitialSetup
19
- {
20
- public const string SkillId = "unity-initial-setup";
21
-
22
- [UcoSkill(SkillId,
23
- @"Provides an initial setup for AI Skills, `unity-mcp-cli` command line tool installation
24
- and everything else that is helpful to set up at the start of the project. Essential packages,
25
- and basic configurations.")]
26
- public static string Markdown
27
- {
28
- get
29
- {
30
- var nodeInstall = GetNodeInstallInstructions();
31
- var globalInstallNote = GetGlobalInstallNote();
32
-
33
- return $@"
34
- # Unity Copilot — Initial Setup
35
-
36
- This guide walks through installing the `unity-mcp-cli` command-line tool and using it to set
37
- up a Unity project with AI Skills and MCP integration.
38
-
39
- ---
40
-
41
- ## Prerequisites
42
-
43
- ### Install Node.js
44
-
45
- `unity-mcp-cli` requires **Node.js ^20.19.0 || >=22.12.0** (Node 21.x is not supported). If you don't have Node.js installed:
46
-
47
- {nodeInstall}
48
-
49
- After installation, verify both `node` and `npm` are available:
50
- ```
51
- node --version
52
- npm --version
53
- ```
54
-
55
- ---
56
-
57
- ## Install `unity-mcp-cli` Globally
58
-
59
- Install the CLI globally so the `unity-mcp-cli` command is available system-wide:
60
-
61
- ```bash
62
- npm install -g unity-mcp-cli
63
- ```
64
-
65
- Verify installation:
66
- ```bash
67
- unity-mcp-cli --version
68
- ```
69
- {globalInstallNote}
70
-
71
- > **Alternative**: Run any command without installing globally using `npx`:
72
- > ```bash
73
- > npx unity-mcp-cli --help
74
- > ```
75
-
76
- ---
77
-
78
- ## Quick Start — Full Project Setup
79
-
80
- ### 1. Install the Unity-MCP Plugin
81
-
82
- Add the plugin to an existing Unity project:
83
- ```bash
84
- unity-mcp-cli install-plugin /path/to/unity/project
85
- ```
86
-
87
- ### 2. Configure MCP Tools
88
-
89
- Enable all tools, prompts, and resources:
90
- ```bash
91
- unity-mcp-cli configure /path/to/unity/project \
92
- --enable-all-tools \
93
- --enable-all-prompts \
94
- --enable-all-resources
95
- ```
96
-
97
- ### 3. Set Up MCP for Your AI Agent
98
-
99
- Configure MCP integration for your AI agent (e.g., Claude Code, Cursor, Copilot):
100
- ```bash
101
- unity-mcp-cli setup-mcp claude-code /path/to/unity/project
102
- ```
103
-
104
- List all supported agents:
105
- ```bash
106
- unity-mcp-cli setup-mcp --list
107
- ```
108
-
109
- ### 4. Generate AI Skills
110
-
111
- Generate skill files for your AI agent (requires Unity Editor to be running with the plugin):
112
- ```bash
113
- unity-mcp-cli setup-skills claude-code /path/to/unity/project
114
- ```
115
-
116
- ### 5. Open Unity with MCP Connection
117
-
118
- ```bash
119
- unity-mcp-cli open /path/to/unity/project
120
- ```
121
-
122
- ---
123
-
124
- ## Common Commands Reference
125
-
126
- | Command | Description |
127
- |---|---|
128
- | `unity-mcp-cli install-plugin <path>` | Install Unity-MCP plugin into a project |
129
- | `unity-mcp-cli remove-plugin <path>` | Remove Unity-MCP plugin from a project |
130
- | `unity-mcp-cli configure <path> --list` | List current MCP configuration |
131
- | `unity-mcp-cli setup-mcp <agent> <path>` | Write MCP config for an AI agent |
132
- | `unity-mcp-cli setup-skills <agent> <path>` | Generate skill files for an AI agent |
133
- | `unity-mcp-cli create-project <path>` | Create a new Unity project |
134
- | `unity-mcp-cli install-unity <version>` | Install a Unity Editor version |
135
- | `unity-mcp-cli open <path>` | Open a Unity project in the Editor |
136
- | `unity-mcp-cli run-tool <tool> <path>` | Execute an MCP tool via HTTP API |
137
-
138
- Add `--verbose` to any command for detailed diagnostic output.
139
-
140
- ---
141
-
142
- ## Troubleshooting
143
-
144
- - **`npm` not found**: Node.js is not installed or not in your PATH. Reinstall Node.js and restart your terminal.
145
- - **Plugin not appearing in Unity**: After `install-plugin`, open the project in Unity Editor. The package manager resolves dependencies on project open.
146
- - **Skills generation fails**: Ensure Unity Editor is running with the MCP plugin installed and connected before running `setup-skills`.
147
- ";
148
- }
149
- }
150
-
151
- static string GetNodeInstallInstructions()
152
- {
153
- if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
154
- {
155
- return @"Download the installer from https://nodejs.org/ and run it, or use a package manager:
156
- ```
157
- winget install OpenJS.NodeJS.LTS
158
- ```";
159
- }
160
-
161
- if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
162
- {
163
- return @"Use Homebrew:
164
- ```
165
- brew install node@22
166
- ```
167
-
168
- Or download the installer from https://nodejs.org/.";
169
- }
170
-
171
- // Linux
172
- return @"Install via package manager:
173
- ```
174
- curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
175
- sudo apt-get install -y nodejs
176
- ```
177
-
178
- Or download the binary from https://nodejs.org/.";
179
- }
180
-
181
- static string GetGlobalInstallNote()
182
- {
183
- if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
184
- {
185
- return "";
186
- }
187
-
188
- // macOS and Linux may need permission workaround
189
- return @"
190
- > **Permission errors?** Use `sudo npm install -g unity-mcp-cli` or configure npm to use a directory you own:
191
- > ```bash
192
- > npm config set prefix ~/.npm-global
193
- > ```
194
- > Then add `~/.npm-global/bin` to your PATH.";
195
- }
196
- }
197
- }
1
+ /*
2
+ ┌──────────────────────────────────────────────────────────────────┐
3
+ │ Author: Ivan Murzak (https://github.com/IvanMurzak) │
4
+ │ Repository: GitHub (https://github.com/IvanMurzak/Unity-MCP) │
5
+ │ Copyright (c) 2025 Ivan Murzak │
6
+ │ Licensed under the Apache License, Version 2.0. │
7
+ │ See the LICENSE file in the project root for more information. │
8
+ └──────────────────────────────────────────────────────────────────┘
9
+ */
10
+
11
+ #nullable enable
12
+ using System.Runtime.InteropServices;
13
+ using com.AtelierAI.Uco.Framework;
14
+
15
+ namespace com.AtelierAI.Unity.Copilot.Editor.API
16
+ {
17
+ [UcoSkillType]
18
+ public static class Skill_InitialSetup
19
+ {
20
+ public const string SkillId = "unity-initial-setup";
21
+
22
+ [UcoSkill(SkillId,
23
+ @"Provides an initial setup for AI Skills, `unity-mcp-cli` command line tool installation
24
+ and everything else that is helpful to set up at the start of the project. Essential packages,
25
+ and basic configurations.")]
26
+ public static string Markdown
27
+ {
28
+ get
29
+ {
30
+ var nodeInstall = GetNodeInstallInstructions();
31
+ var globalInstallNote = GetGlobalInstallNote();
32
+
33
+ return $@"
34
+ # Unity Copilot — Initial Setup
35
+
36
+ This guide walks through installing the `unity-mcp-cli` command-line tool and using it to set
37
+ up a Unity project with AI Skills and Uco integration.
38
+
39
+ ---
40
+
41
+ ## Prerequisites
42
+
43
+ ### Install Node.js
44
+
45
+ `unity-mcp-cli` requires **Node.js ^20.19.0 || >=22.12.0** (Node 21.x is not supported). If you don't have Node.js installed:
46
+
47
+ {nodeInstall}
48
+
49
+ After installation, verify both `node` and `npm` are available:
50
+ ```
51
+ node --version
52
+ npm --version
53
+ ```
54
+
55
+ ---
56
+
57
+ ## Install `unity-mcp-cli` Globally
58
+
59
+ Install the CLI globally so the `unity-mcp-cli` command is available system-wide:
60
+
61
+ ```bash
62
+ npm install -g unity-mcp-cli
63
+ ```
64
+
65
+ Verify installation:
66
+ ```bash
67
+ unity-mcp-cli --version
68
+ ```
69
+ {globalInstallNote}
70
+
71
+ > **Alternative**: Run any command without installing globally using `npx`:
72
+ > ```bash
73
+ > npx unity-mcp-cli --help
74
+ > ```
75
+
76
+ ---
77
+
78
+ ## Quick Start — Full Project Setup
79
+
80
+ ### 1. Install the Unity-Uco Plugin
81
+
82
+ Add the plugin to an existing Unity project:
83
+ ```bash
84
+ unity-mcp-cli install-plugin /path/to/unity/project
85
+ ```
86
+
87
+ ### 2. Configure Uco Tools
88
+
89
+ Enable all tools, prompts, and resources:
90
+ ```bash
91
+ unity-mcp-cli configure /path/to/unity/project \
92
+ --enable-all-tools \
93
+ --enable-all-prompts \
94
+ --enable-all-resources
95
+ ```
96
+
97
+ ### 3. Set Up Uco for Your AI Agent
98
+
99
+ Configure Uco integration for your AI agent (e.g., Claude Code, Cursor, Copilot):
100
+ ```bash
101
+ unity-mcp-cli setup-mcp claude-code /path/to/unity/project
102
+ ```
103
+
104
+ List all supported agents:
105
+ ```bash
106
+ unity-mcp-cli setup-mcp --list
107
+ ```
108
+
109
+ ### 4. Generate AI Skills
110
+
111
+ Generate skill files for your AI agent (requires Unity Editor to be running with the plugin):
112
+ ```bash
113
+ unity-mcp-cli setup-skills claude-code /path/to/unity/project
114
+ ```
115
+
116
+ ### 5. Open Unity with Uco Connection
117
+
118
+ ```bash
119
+ unity-mcp-cli open /path/to/unity/project
120
+ ```
121
+
122
+ ---
123
+
124
+ ## Common Commands Reference
125
+
126
+ | Command | Description |
127
+ |---|---|
128
+ | `unity-mcp-cli install-plugin <path>` | Install Unity-MCP plugin into a project |
129
+ | `unity-mcp-cli remove-plugin <path>` | Remove Unity-MCP plugin from a project |
130
+ | `unity-mcp-cli configure <path> --list` | List current MCP configuration |
131
+ | `unity-mcp-cli setup-mcp <agent> <path>` | Write MCP config for an AI agent |
132
+ | `unity-mcp-cli setup-skills <agent> <path>` | Generate skill files for an AI agent |
133
+ | `unity-mcp-cli create-project <path>` | Create a new Unity project |
134
+ | `unity-mcp-cli install-unity <version>` | Install a Unity Editor version |
135
+ | `unity-mcp-cli open <path>` | Open a Unity project in the Editor |
136
+ | `unity-mcp-cli run-tool <tool> <path>` | Execute an MCP tool via HTTP API |
137
+
138
+ Add `--verbose` to any command for detailed diagnostic output.
139
+
140
+ ---
141
+
142
+ ## Troubleshooting
143
+
144
+ - **`npm` not found**: Node.js is not installed or not in your PATH. Reinstall Node.js and restart your terminal.
145
+ - **Plugin not appearing in Unity**: After `install-plugin`, open the project in Unity Editor. The package manager resolves dependencies on project open.
146
+ - **Skills generation fails**: Ensure Unity Editor is running with the Uco plugin installed and connected before running `setup-skills`.
147
+ ";
148
+ }
149
+ }
150
+
151
+ static string GetNodeInstallInstructions()
152
+ {
153
+ if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
154
+ {
155
+ return @"Download the installer from https://nodejs.org/ and run it, or use a package manager:
156
+ ```
157
+ winget install OpenJS.NodeJS.LTS
158
+ ```";
159
+ }
160
+
161
+ if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
162
+ {
163
+ return @"Use Homebrew:
164
+ ```
165
+ brew install node@22
166
+ ```
167
+
168
+ Or download the installer from https://nodejs.org/.";
169
+ }
170
+
171
+ // Linux
172
+ return @"Install via package manager:
173
+ ```
174
+ curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
175
+ sudo apt-get install -y nodejs
176
+ ```
177
+
178
+ Or download the binary from https://nodejs.org/.";
179
+ }
180
+
181
+ static string GetGlobalInstallNote()
182
+ {
183
+ if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
184
+ {
185
+ return "";
186
+ }
187
+
188
+ // macOS and Linux may need permission workaround
189
+ return @"
190
+ > **Permission errors?** Use `sudo npm install -g unity-mcp-cli` or configure npm to use a directory you own:
191
+ > ```bash
192
+ > npm config set prefix ~/.npm-global
193
+ > ```
194
+ > Then add `~/.npm-global/bin` to your PATH.";
195
+ }
196
+ }
197
+ }