@atelierai/uco 1.0.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.
Files changed (1975) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/LICENSE +21 -0
  3. package/README.md +377 -0
  4. package/bin/server.mjs +16 -0
  5. package/bin/stub-plugin.mjs +33 -0
  6. package/bin/uco.mjs +6 -0
  7. package/dist/catalog.d.ts +6 -0
  8. package/dist/catalog.js +54 -0
  9. package/dist/catalog.js.map +1 -0
  10. package/dist/codegen/coerce.d.ts +16 -0
  11. package/dist/codegen/coerce.js +117 -0
  12. package/dist/codegen/coerce.js.map +1 -0
  13. package/dist/codegen/emit.d.ts +2 -0
  14. package/dist/codegen/emit.js +213 -0
  15. package/dist/codegen/emit.js.map +1 -0
  16. package/dist/codegen/fetch.d.ts +9 -0
  17. package/dist/codegen/fetch.js +30 -0
  18. package/dist/codegen/fetch.js.map +1 -0
  19. package/dist/codegen/refs.d.ts +9 -0
  20. package/dist/codegen/refs.js +38 -0
  21. package/dist/codegen/refs.js.map +1 -0
  22. package/dist/codegen/types.d.ts +40 -0
  23. package/dist/codegen/types.js +3 -0
  24. package/dist/codegen/types.js.map +1 -0
  25. package/dist/commands/call.d.ts +10 -0
  26. package/dist/commands/call.js +137 -0
  27. package/dist/commands/call.js.map +1 -0
  28. package/dist/commands/devops/_helpers.d.ts +27 -0
  29. package/dist/commands/devops/_helpers.js +49 -0
  30. package/dist/commands/devops/_helpers.js.map +1 -0
  31. package/dist/commands/devops/_unity-command-line.d.ts +26 -0
  32. package/dist/commands/devops/_unity-command-line.js +227 -0
  33. package/dist/commands/devops/_unity-command-line.js.map +1 -0
  34. package/dist/commands/devops/_unity-operations.d.ts +14 -0
  35. package/dist/commands/devops/_unity-operations.js +56 -0
  36. package/dist/commands/devops/_unity-operations.js.map +1 -0
  37. package/dist/commands/devops/build.d.ts +36 -0
  38. package/dist/commands/devops/build.js +142 -0
  39. package/dist/commands/devops/build.js.map +1 -0
  40. package/dist/commands/devops/close.d.ts +2 -0
  41. package/dist/commands/devops/close.js +121 -0
  42. package/dist/commands/devops/close.js.map +1 -0
  43. package/dist/commands/devops/configure.d.ts +2 -0
  44. package/dist/commands/devops/configure.js +62 -0
  45. package/dist/commands/devops/configure.js.map +1 -0
  46. package/dist/commands/devops/create-project.d.ts +32 -0
  47. package/dist/commands/devops/create-project.js +170 -0
  48. package/dist/commands/devops/create-project.js.map +1 -0
  49. package/dist/commands/devops/editors.d.ts +8 -0
  50. package/dist/commands/devops/editors.js +30 -0
  51. package/dist/commands/devops/editors.js.map +1 -0
  52. package/dist/commands/devops/index.d.ts +2 -0
  53. package/dist/commands/devops/index.js +36 -0
  54. package/dist/commands/devops/index.js.map +1 -0
  55. package/dist/commands/devops/install-plugin.d.ts +2 -0
  56. package/dist/commands/devops/install-plugin.js +41 -0
  57. package/dist/commands/devops/install-plugin.js.map +1 -0
  58. package/dist/commands/devops/install-unity.d.ts +17 -0
  59. package/dist/commands/devops/install-unity.js +115 -0
  60. package/dist/commands/devops/install-unity.js.map +1 -0
  61. package/dist/commands/devops/login.d.ts +2 -0
  62. package/dist/commands/devops/login.js +29 -0
  63. package/dist/commands/devops/login.js.map +1 -0
  64. package/dist/commands/devops/open.d.ts +2 -0
  65. package/dist/commands/devops/open.js +85 -0
  66. package/dist/commands/devops/open.js.map +1 -0
  67. package/dist/commands/devops/remove-plugin.d.ts +2 -0
  68. package/dist/commands/devops/remove-plugin.js +21 -0
  69. package/dist/commands/devops/remove-plugin.js.map +1 -0
  70. package/dist/commands/devops/setup-mcp.d.ts +2 -0
  71. package/dist/commands/devops/setup-mcp.js +41 -0
  72. package/dist/commands/devops/setup-mcp.js.map +1 -0
  73. package/dist/commands/devops/setup-skills.d.ts +13 -0
  74. package/dist/commands/devops/setup-skills.js +72 -0
  75. package/dist/commands/devops/setup-skills.js.map +1 -0
  76. package/dist/commands/devops/setup-unity-cli.d.ts +8 -0
  77. package/dist/commands/devops/setup-unity-cli.js +35 -0
  78. package/dist/commands/devops/setup-unity-cli.js.map +1 -0
  79. package/dist/commands/devops/status.d.ts +2 -0
  80. package/dist/commands/devops/status.js +97 -0
  81. package/dist/commands/devops/status.js.map +1 -0
  82. package/dist/commands/devops/test.d.ts +29 -0
  83. package/dist/commands/devops/test.js +88 -0
  84. package/dist/commands/devops/test.js.map +1 -0
  85. package/dist/commands/devops/wait-for-ready.d.ts +4 -0
  86. package/dist/commands/devops/wait-for-ready.js +297 -0
  87. package/dist/commands/devops/wait-for-ready.js.map +1 -0
  88. package/dist/commands/exec.d.ts +16 -0
  89. package/dist/commands/exec.js +78 -0
  90. package/dist/commands/exec.js.map +1 -0
  91. package/dist/commands/gen.d.ts +2 -0
  92. package/dist/commands/gen.js +46 -0
  93. package/dist/commands/gen.js.map +1 -0
  94. package/dist/commands/init.d.ts +2 -0
  95. package/dist/commands/init.js +313 -0
  96. package/dist/commands/init.js.map +1 -0
  97. package/dist/commands/install.d.ts +2 -0
  98. package/dist/commands/install.js +161 -0
  99. package/dist/commands/install.js.map +1 -0
  100. package/dist/commands/list.d.ts +2 -0
  101. package/dist/commands/list.js +40 -0
  102. package/dist/commands/list.js.map +1 -0
  103. package/dist/commands/ping.d.ts +2 -0
  104. package/dist/commands/ping.js +25 -0
  105. package/dist/commands/ping.js.map +1 -0
  106. package/dist/commands/prompt.d.ts +2 -0
  107. package/dist/commands/prompt.js +45 -0
  108. package/dist/commands/prompt.js.map +1 -0
  109. package/dist/commands/resource.d.ts +2 -0
  110. package/dist/commands/resource.js +30 -0
  111. package/dist/commands/resource.js.map +1 -0
  112. package/dist/commands/update.d.ts +2 -0
  113. package/dist/commands/update.js +132 -0
  114. package/dist/commands/update.js.map +1 -0
  115. package/dist/config/port.d.ts +1 -0
  116. package/dist/config/port.js +19 -0
  117. package/dist/config/port.js.map +1 -0
  118. package/dist/config/resolve.d.ts +24 -0
  119. package/dist/config/resolve.js +78 -0
  120. package/dist/config/resolve.js.map +1 -0
  121. package/dist/devops/commands-upstream/bootstrap-local.d.ts +17 -0
  122. package/dist/devops/commands-upstream/bootstrap-local.js +87 -0
  123. package/dist/devops/commands-upstream/bootstrap-local.js.map +1 -0
  124. package/dist/devops/commands-upstream/close.d.ts +57 -0
  125. package/dist/devops/commands-upstream/close.js +188 -0
  126. package/dist/devops/commands-upstream/close.js.map +1 -0
  127. package/dist/devops/commands-upstream/configure.d.ts +2 -0
  128. package/dist/devops/commands-upstream/configure.js +87 -0
  129. package/dist/devops/commands-upstream/configure.js.map +1 -0
  130. package/dist/devops/commands-upstream/create-project.d.ts +2 -0
  131. package/dist/devops/commands-upstream/create-project.js +43 -0
  132. package/dist/devops/commands-upstream/create-project.js.map +1 -0
  133. package/dist/devops/commands-upstream/install-plugin.d.ts +2 -0
  134. package/dist/devops/commands-upstream/install-plugin.js +64 -0
  135. package/dist/devops/commands-upstream/install-plugin.js.map +1 -0
  136. package/dist/devops/commands-upstream/install-unity.d.ts +2 -0
  137. package/dist/devops/commands-upstream/install-unity.js +72 -0
  138. package/dist/devops/commands-upstream/install-unity.js.map +1 -0
  139. package/dist/devops/commands-upstream/login.d.ts +2 -0
  140. package/dist/devops/commands-upstream/login.js +33 -0
  141. package/dist/devops/commands-upstream/login.js.map +1 -0
  142. package/dist/devops/commands-upstream/open.d.ts +32 -0
  143. package/dist/devops/commands-upstream/open.js +282 -0
  144. package/dist/devops/commands-upstream/open.js.map +1 -0
  145. package/dist/devops/commands-upstream/remove-plugin.d.ts +2 -0
  146. package/dist/devops/commands-upstream/remove-plugin.js +41 -0
  147. package/dist/devops/commands-upstream/remove-plugin.js.map +1 -0
  148. package/dist/devops/commands-upstream/run-system-tool.d.ts +1 -0
  149. package/dist/devops/commands-upstream/run-system-tool.js +13 -0
  150. package/dist/devops/commands-upstream/run-system-tool.js.map +1 -0
  151. package/dist/devops/commands-upstream/run-tool-builder.d.ts +25 -0
  152. package/dist/devops/commands-upstream/run-tool-builder.js +125 -0
  153. package/dist/devops/commands-upstream/run-tool-builder.js.map +1 -0
  154. package/dist/devops/commands-upstream/run-tool.d.ts +1 -0
  155. package/dist/devops/commands-upstream/run-tool.js +13 -0
  156. package/dist/devops/commands-upstream/run-tool.js.map +1 -0
  157. package/dist/devops/commands-upstream/setup-mcp.d.ts +2 -0
  158. package/dist/devops/commands-upstream/setup-mcp.js +68 -0
  159. package/dist/devops/commands-upstream/setup-mcp.js.map +1 -0
  160. package/dist/devops/commands-upstream/setup-skills.d.ts +2 -0
  161. package/dist/devops/commands-upstream/setup-skills.js +167 -0
  162. package/dist/devops/commands-upstream/setup-skills.js.map +1 -0
  163. package/dist/devops/commands-upstream/status.d.ts +2 -0
  164. package/dist/devops/commands-upstream/status.js +87 -0
  165. package/dist/devops/commands-upstream/status.js.map +1 -0
  166. package/dist/devops/commands-upstream/update.d.ts +2 -0
  167. package/dist/devops/commands-upstream/update.js +77 -0
  168. package/dist/devops/commands-upstream/update.js.map +1 -0
  169. package/dist/devops/commands-upstream/wait-for-ready.d.ts +2 -0
  170. package/dist/devops/commands-upstream/wait-for-ready.js +93 -0
  171. package/dist/devops/commands-upstream/wait-for-ready.js.map +1 -0
  172. package/dist/devops/lib/configure.d.ts +14 -0
  173. package/dist/devops/lib/configure.js +91 -0
  174. package/dist/devops/lib/configure.js.map +1 -0
  175. package/dist/devops/lib/install-plugin.d.ts +18 -0
  176. package/dist/devops/lib/install-plugin.js +115 -0
  177. package/dist/devops/lib/install-plugin.js.map +1 -0
  178. package/dist/devops/lib/install.d.ts +35 -0
  179. package/dist/devops/lib/install.js +472 -0
  180. package/dist/devops/lib/install.js.map +1 -0
  181. package/dist/devops/lib/logger.d.ts +7 -0
  182. package/dist/devops/lib/logger.js +18 -0
  183. package/dist/devops/lib/logger.js.map +1 -0
  184. package/dist/devops/lib/open.d.ts +97 -0
  185. package/dist/devops/lib/open.js +522 -0
  186. package/dist/devops/lib/open.js.map +1 -0
  187. package/dist/devops/lib/owned-node-server.d.ts +54 -0
  188. package/dist/devops/lib/owned-node-server.js +779 -0
  189. package/dist/devops/lib/owned-node-server.js.map +1 -0
  190. package/dist/devops/lib/progress.d.ts +7 -0
  191. package/dist/devops/lib/progress.js +16 -0
  192. package/dist/devops/lib/progress.js.map +1 -0
  193. package/dist/devops/lib/remove-plugin.d.ts +11 -0
  194. package/dist/devops/lib/remove-plugin.js +58 -0
  195. package/dist/devops/lib/remove-plugin.js.map +1 -0
  196. package/dist/devops/lib/run-tool.d.ts +15 -0
  197. package/dist/devops/lib/run-tool.js +356 -0
  198. package/dist/devops/lib/run-tool.js.map +1 -0
  199. package/dist/devops/lib/setup-mcp.d.ts +35 -0
  200. package/dist/devops/lib/setup-mcp.js +172 -0
  201. package/dist/devops/lib/setup-mcp.js.map +1 -0
  202. package/dist/devops/lib/setup-unity-cli.d.ts +129 -0
  203. package/dist/devops/lib/setup-unity-cli.js +567 -0
  204. package/dist/devops/lib/setup-unity-cli.js.map +1 -0
  205. package/dist/devops/lib/types.d.ts +623 -0
  206. package/dist/devops/lib/types.js +8 -0
  207. package/dist/devops/lib/types.js.map +1 -0
  208. package/dist/devops/lib/unity-lifecycle.d.ts +102 -0
  209. package/dist/devops/lib/unity-lifecycle.js +313 -0
  210. package/dist/devops/lib/unity-lifecycle.js.map +1 -0
  211. package/dist/devops/lib/update.d.ts +84 -0
  212. package/dist/devops/lib/update.js +405 -0
  213. package/dist/devops/lib/update.js.map +1 -0
  214. package/dist/devops/lib/validation.d.ts +37 -0
  215. package/dist/devops/lib/validation.js +50 -0
  216. package/dist/devops/lib/validation.js.map +1 -0
  217. package/dist/devops/utils/agents.d.ts +61 -0
  218. package/dist/devops/utils/agents.js +640 -0
  219. package/dist/devops/utils/agents.js.map +1 -0
  220. package/dist/devops/utils/auth.d.ts +28 -0
  221. package/dist/devops/utils/auth.js +111 -0
  222. package/dist/devops/utils/auth.js.map +1 -0
  223. package/dist/devops/utils/browser.d.ts +5 -0
  224. package/dist/devops/utils/browser.js +32 -0
  225. package/dist/devops/utils/browser.js.map +1 -0
  226. package/dist/devops/utils/cloud-login.d.ts +7 -0
  227. package/dist/devops/utils/cloud-login.js +56 -0
  228. package/dist/devops/utils/cloud-login.js.map +1 -0
  229. package/dist/devops/utils/config.d.ts +81 -0
  230. package/dist/devops/utils/config.js +190 -0
  231. package/dist/devops/utils/config.js.map +1 -0
  232. package/dist/devops/utils/connection.d.ts +34 -0
  233. package/dist/devops/utils/connection.js +77 -0
  234. package/dist/devops/utils/connection.js.map +1 -0
  235. package/dist/devops/utils/editor-cache.d.ts +16 -0
  236. package/dist/devops/utils/editor-cache.js +81 -0
  237. package/dist/devops/utils/editor-cache.js.map +1 -0
  238. package/dist/devops/utils/input.d.ts +13 -0
  239. package/dist/devops/utils/input.js +72 -0
  240. package/dist/devops/utils/input.js.map +1 -0
  241. package/dist/devops/utils/json-parse.d.ts +36 -0
  242. package/dist/devops/utils/json-parse.js +105 -0
  243. package/dist/devops/utils/json-parse.js.map +1 -0
  244. package/dist/devops/utils/launch-error-dismiss.d.ts +159 -0
  245. package/dist/devops/utils/launch-error-dismiss.js +440 -0
  246. package/dist/devops/utils/launch-error-dismiss.js.map +1 -0
  247. package/dist/devops/utils/manifest.d.ts +124 -0
  248. package/dist/devops/utils/manifest.js +403 -0
  249. package/dist/devops/utils/manifest.js.map +1 -0
  250. package/dist/devops/utils/port.d.ts +6 -0
  251. package/dist/devops/utils/port.js +19 -0
  252. package/dist/devops/utils/port.js.map +1 -0
  253. package/dist/devops/utils/probe.d.ts +15 -0
  254. package/dist/devops/utils/probe.js +58 -0
  255. package/dist/devops/utils/probe.js.map +1 -0
  256. package/dist/devops/utils/semver.d.ts +4 -0
  257. package/dist/devops/utils/semver.js +75 -0
  258. package/dist/devops/utils/semver.js.map +1 -0
  259. package/dist/devops/utils/ui.d.ts +70 -0
  260. package/dist/devops/utils/ui.js +288 -0
  261. package/dist/devops/utils/ui.js.map +1 -0
  262. package/dist/devops/utils/unity-cli.d.ts +192 -0
  263. package/dist/devops/utils/unity-cli.js +1102 -0
  264. package/dist/devops/utils/unity-cli.js.map +1 -0
  265. package/dist/devops/utils/unity-editor.d.ts +50 -0
  266. package/dist/devops/utils/unity-editor.js +306 -0
  267. package/dist/devops/utils/unity-editor.js.map +1 -0
  268. package/dist/devops/utils/unity-hub.d.ts +100 -0
  269. package/dist/devops/utils/unity-hub.js +696 -0
  270. package/dist/devops/utils/unity-hub.js.map +1 -0
  271. package/dist/devops/utils/unity-process.d.ts +17 -0
  272. package/dist/devops/utils/unity-process.js +90 -0
  273. package/dist/devops/utils/unity-process.js.map +1 -0
  274. package/dist/devops/utils/unity-shutdown.d.ts +87 -0
  275. package/dist/devops/utils/unity-shutdown.js +241 -0
  276. package/dist/devops/utils/unity-shutdown.js.map +1 -0
  277. package/dist/devops/utils/update-check.d.ts +19 -0
  278. package/dist/devops/utils/update-check.js +92 -0
  279. package/dist/devops/utils/update-check.js.map +1 -0
  280. package/dist/devops/utils/vendor.d.ts +21 -0
  281. package/dist/devops/utils/vendor.js +64 -0
  282. package/dist/devops/utils/vendor.js.map +1 -0
  283. package/dist/generated/tools.d.ts +5 -0
  284. package/dist/generated/tools.js +4299 -0
  285. package/dist/generated/tools.js.map +1 -0
  286. package/dist/index.d.ts +1 -0
  287. package/dist/index.js +12 -0
  288. package/dist/index.js.map +1 -0
  289. package/dist/program.d.ts +2 -0
  290. package/dist/program.js +102 -0
  291. package/dist/program.js.map +1 -0
  292. package/dist/server/app.d.ts +42 -0
  293. package/dist/server/app.js +109 -0
  294. package/dist/server/app.js.map +1 -0
  295. package/dist/server/calls/call-record-store.d.ts +99 -0
  296. package/dist/server/calls/call-record-store.js +240 -0
  297. package/dist/server/calls/call-record-store.js.map +1 -0
  298. package/dist/server/config.d.ts +44 -0
  299. package/dist/server/config.js +146 -0
  300. package/dist/server/config.js.map +1 -0
  301. package/dist/server/index.d.ts +18 -0
  302. package/dist/server/index.js +139 -0
  303. package/dist/server/index.js.map +1 -0
  304. package/dist/server/origin.d.ts +3 -0
  305. package/dist/server/origin.js +8 -0
  306. package/dist/server/origin.js.map +1 -0
  307. package/dist/server/rest/auth.d.ts +23 -0
  308. package/dist/server/rest/auth.js +57 -0
  309. package/dist/server/rest/auth.js.map +1 -0
  310. package/dist/server/rest/calls.d.ts +13 -0
  311. package/dist/server/rest/calls.js +54 -0
  312. package/dist/server/rest/calls.js.map +1 -0
  313. package/dist/server/rest/context.d.ts +41 -0
  314. package/dist/server/rest/context.js +194 -0
  315. package/dist/server/rest/context.js.map +1 -0
  316. package/dist/server/rest/forward.d.ts +66 -0
  317. package/dist/server/rest/forward.js +396 -0
  318. package/dist/server/rest/forward.js.map +1 -0
  319. package/dist/server/rest/health.d.ts +4 -0
  320. package/dist/server/rest/health.js +96 -0
  321. package/dist/server/rest/health.js.map +1 -0
  322. package/dist/server/rest/help.d.ts +7 -0
  323. package/dist/server/rest/help.js +33 -0
  324. package/dist/server/rest/help.js.map +1 -0
  325. package/dist/server/rest/instances.d.ts +13 -0
  326. package/dist/server/rest/instances.js +88 -0
  327. package/dist/server/rest/instances.js.map +1 -0
  328. package/dist/server/rest/prompts.d.ts +11 -0
  329. package/dist/server/rest/prompts.js +131 -0
  330. package/dist/server/rest/prompts.js.map +1 -0
  331. package/dist/server/rest/resources.d.ts +13 -0
  332. package/dist/server/rest/resources.js +156 -0
  333. package/dist/server/rest/resources.js.map +1 -0
  334. package/dist/server/rest/router.d.ts +10 -0
  335. package/dist/server/rest/router.js +158 -0
  336. package/dist/server/rest/router.js.map +1 -0
  337. package/dist/server/rest/session.d.ts +16 -0
  338. package/dist/server/rest/session.js +108 -0
  339. package/dist/server/rest/session.js.map +1 -0
  340. package/dist/server/rest/system-tools.d.ts +11 -0
  341. package/dist/server/rest/system-tools.js +150 -0
  342. package/dist/server/rest/system-tools.js.map +1 -0
  343. package/dist/server/rest/tools.d.ts +11 -0
  344. package/dist/server/rest/tools.js +383 -0
  345. package/dist/server/rest/tools.js.map +1 -0
  346. package/dist/server/session/store.d.ts +36 -0
  347. package/dist/server/session/store.js +75 -0
  348. package/dist/server/session/store.js.map +1 -0
  349. package/dist/server/stub-client/index.d.ts +54 -0
  350. package/dist/server/stub-client/index.js +275 -0
  351. package/dist/server/stub-client/index.js.map +1 -0
  352. package/dist/server/stub-client/scenarios.d.ts +23 -0
  353. package/dist/server/stub-client/scenarios.js +150 -0
  354. package/dist/server/stub-client/scenarios.js.map +1 -0
  355. package/dist/server/types.d.ts +224 -0
  356. package/dist/server/types.js +54 -0
  357. package/dist/server/types.js.map +1 -0
  358. package/dist/server/ws/envelope.d.ts +81 -0
  359. package/dist/server/ws/envelope.js +138 -0
  360. package/dist/server/ws/envelope.js.map +1 -0
  361. package/dist/server/ws/hub.d.ts +77 -0
  362. package/dist/server/ws/hub.js +386 -0
  363. package/dist/server/ws/hub.js.map +1 -0
  364. package/dist/server/ws/pending.d.ts +47 -0
  365. package/dist/server/ws/pending.js +242 -0
  366. package/dist/server/ws/pending.js.map +1 -0
  367. package/dist/server/ws/registry.d.ts +117 -0
  368. package/dist/server/ws/registry.js +300 -0
  369. package/dist/server/ws/registry.js.map +1 -0
  370. package/dist/server/ws/rpc.d.ts +38 -0
  371. package/dist/server/ws/rpc.js +157 -0
  372. package/dist/server/ws/rpc.js.map +1 -0
  373. package/dist/skills/bundle.d.ts +146 -0
  374. package/dist/skills/bundle.js +1020 -0
  375. package/dist/skills/bundle.js.map +1 -0
  376. package/dist/skills/install-manifest.d.ts +136 -0
  377. package/dist/skills/install-manifest.js +355 -0
  378. package/dist/skills/install-manifest.js.map +1 -0
  379. package/dist/tool-call-control.d.ts +255 -0
  380. package/dist/tool-call-control.js +802 -0
  381. package/dist/tool-call-control.js.map +1 -0
  382. package/dist/transport/index.d.ts +90 -0
  383. package/dist/transport/index.js +13 -0
  384. package/dist/transport/index.js.map +1 -0
  385. package/dist/transport/rest.d.ts +35 -0
  386. package/dist/transport/rest.js +415 -0
  387. package/dist/transport/rest.js.map +1 -0
  388. package/dist/util/call-control.d.ts +30 -0
  389. package/dist/util/call-control.js +123 -0
  390. package/dist/util/call-control.js.map +1 -0
  391. package/dist/util/cli-context.d.ts +35 -0
  392. package/dist/util/cli-context.js +316 -0
  393. package/dist/util/cli-context.js.map +1 -0
  394. package/dist/util/errors.d.ts +31 -0
  395. package/dist/util/errors.js +52 -0
  396. package/dist/util/errors.js.map +1 -0
  397. package/dist/util/idle-wait.d.ts +17 -0
  398. package/dist/util/idle-wait.js +93 -0
  399. package/dist/util/idle-wait.js.map +1 -0
  400. package/dist/util/input.d.ts +10 -0
  401. package/dist/util/input.js +86 -0
  402. package/dist/util/input.js.map +1 -0
  403. package/dist/util/multi-select.d.ts +29 -0
  404. package/dist/util/multi-select.js +108 -0
  405. package/dist/util/multi-select.js.map +1 -0
  406. package/dist/util/operation-wait.d.ts +35 -0
  407. package/dist/util/operation-wait.js +96 -0
  408. package/dist/util/operation-wait.js.map +1 -0
  409. package/dist/util/output.d.ts +8 -0
  410. package/dist/util/output.js +302 -0
  411. package/dist/util/output.js.map +1 -0
  412. package/dist/util/readiness.d.ts +18 -0
  413. package/dist/util/readiness.js +129 -0
  414. package/dist/util/readiness.js.map +1 -0
  415. package/dist/util/redaction.d.ts +3 -0
  416. package/dist/util/redaction.js +59 -0
  417. package/dist/util/redaction.js.map +1 -0
  418. package/dist/util/timeout.d.ts +9 -0
  419. package/dist/util/timeout.js +16 -0
  420. package/dist/util/timeout.js.map +1 -0
  421. package/dist/util/tool-payload.d.ts +8 -0
  422. package/dist/util/tool-payload.js +58 -0
  423. package/dist/util/tool-payload.js.map +1 -0
  424. package/docs/INSTALL.zh-CN.md +175 -0
  425. package/node_modules/chalk/license +9 -0
  426. package/node_modules/chalk/package.json +83 -0
  427. package/node_modules/chalk/readme.md +297 -0
  428. package/node_modules/chalk/source/index.d.ts +325 -0
  429. package/node_modules/chalk/source/index.js +225 -0
  430. package/node_modules/chalk/source/utilities.js +33 -0
  431. package/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +236 -0
  432. package/node_modules/chalk/source/vendor/ansi-styles/index.js +223 -0
  433. package/node_modules/chalk/source/vendor/supports-color/browser.d.ts +1 -0
  434. package/node_modules/chalk/source/vendor/supports-color/browser.js +34 -0
  435. package/node_modules/chalk/source/vendor/supports-color/index.d.ts +55 -0
  436. package/node_modules/chalk/source/vendor/supports-color/index.js +190 -0
  437. package/node_modules/commander/LICENSE +22 -0
  438. package/node_modules/commander/Readme.md +1157 -0
  439. package/node_modules/commander/esm.mjs +16 -0
  440. package/node_modules/commander/index.js +24 -0
  441. package/node_modules/commander/lib/argument.js +149 -0
  442. package/node_modules/commander/lib/command.js +2509 -0
  443. package/node_modules/commander/lib/error.js +39 -0
  444. package/node_modules/commander/lib/help.js +520 -0
  445. package/node_modules/commander/lib/option.js +330 -0
  446. package/node_modules/commander/lib/suggestSimilar.js +101 -0
  447. package/node_modules/commander/package-support.json +16 -0
  448. package/node_modules/commander/package.json +84 -0
  449. package/node_modules/commander/typings/esm.d.mts +3 -0
  450. package/node_modules/commander/typings/index.d.ts +969 -0
  451. package/node_modules/kleur/colors.d.ts +38 -0
  452. package/node_modules/kleur/colors.js +53 -0
  453. package/node_modules/kleur/colors.mjs +53 -0
  454. package/node_modules/kleur/index.d.ts +45 -0
  455. package/node_modules/kleur/index.js +110 -0
  456. package/node_modules/kleur/index.mjs +110 -0
  457. package/node_modules/kleur/license +21 -0
  458. package/node_modules/kleur/package.json +51 -0
  459. package/node_modules/kleur/readme.md +232 -0
  460. package/node_modules/ws/LICENSE +20 -0
  461. package/node_modules/ws/README.md +548 -0
  462. package/node_modules/ws/browser.js +8 -0
  463. package/node_modules/ws/index.js +22 -0
  464. package/node_modules/ws/lib/buffer-util.js +131 -0
  465. package/node_modules/ws/lib/constants.js +19 -0
  466. package/node_modules/ws/lib/event-target.js +292 -0
  467. package/node_modules/ws/lib/extension.js +203 -0
  468. package/node_modules/ws/lib/limiter.js +55 -0
  469. package/node_modules/ws/lib/permessage-deflate.js +530 -0
  470. package/node_modules/ws/lib/receiver.js +743 -0
  471. package/node_modules/ws/lib/sender.js +607 -0
  472. package/node_modules/ws/lib/stream.js +161 -0
  473. package/node_modules/ws/lib/subprotocol.js +62 -0
  474. package/node_modules/ws/lib/validation.js +152 -0
  475. package/node_modules/ws/lib/websocket-server.js +562 -0
  476. package/node_modules/ws/lib/websocket.js +1407 -0
  477. package/node_modules/ws/package.json +74 -0
  478. package/node_modules/ws/wrapper.mjs +21 -0
  479. package/node_modules/yocto-spinner/index.d.ts +162 -0
  480. package/node_modules/yocto-spinner/index.js +428 -0
  481. package/node_modules/yocto-spinner/license +9 -0
  482. package/node_modules/yocto-spinner/package.json +64 -0
  483. package/node_modules/yocto-spinner/readme.md +237 -0
  484. package/node_modules/yoctocolors/base.d.ts +47 -0
  485. package/node_modules/yoctocolors/base.js +94 -0
  486. package/node_modules/yoctocolors/index.d.ts +2 -0
  487. package/node_modules/yoctocolors/index.js +2 -0
  488. package/node_modules/yoctocolors/license +9 -0
  489. package/node_modules/yoctocolors/package.json +69 -0
  490. package/node_modules/yoctocolors/readme.md +138 -0
  491. package/package.json +83 -0
  492. package/skills/uco-setup/SKILL.md +52 -0
  493. package/skills/uco-setup/agents/openai.yaml +7 -0
  494. package/skills/uco-setup/references/recovery.md +24 -0
  495. package/skills/unity-cli/SKILL.md +39 -0
  496. package/skills/unity-cli/agents/openai.yaml +7 -0
  497. package/skills/unity-cli/references/automation-services.md +49 -0
  498. package/skills/unity-cli/references/installation-projects.md +47 -0
  499. package/skills/unity-editor/SKILL.md +50 -0
  500. package/skills/unity-editor/agents/openai.yaml +7 -0
  501. package/skills/unity-editor/references/authoring.md +7 -0
  502. package/skills/unity-editor/references/build-and-tests.md +11 -0
  503. package/skills/unity-editor/references/code.md +7 -0
  504. package/skills/unity-editor/references/diagnostics.md +7 -0
  505. package/skills/unity-editor/references/physics.md +7 -0
  506. package/skills/unity-editor/references/prompts.md +7 -0
  507. package/skills/unity-editor/references/resources.md +7 -0
  508. package/skills/unity-editor/references/visuals.md +7 -0
  509. package/skills/unity-editor/scripts/tool-info.mjs +37 -0
  510. package/skills/unity-editor/scripts/uco.mjs +27 -0
  511. package/vendor/nuget/.nuget-installed.json +200 -0
  512. package/vendor/nuget/Microsoft.Bcl.AsyncInterfaces.dll +0 -0
  513. package/vendor/nuget/Microsoft.Bcl.AsyncInterfaces.dll.meta +39 -0
  514. package/vendor/nuget/Microsoft.Bcl.Memory.dll +0 -0
  515. package/vendor/nuget/Microsoft.Bcl.Memory.dll.meta +33 -0
  516. package/vendor/nuget/Microsoft.Bcl.TimeProvider.dll +0 -0
  517. package/vendor/nuget/Microsoft.Bcl.TimeProvider.dll.meta +39 -0
  518. package/vendor/nuget/Microsoft.CodeAnalysis.CSharp.dll +0 -0
  519. package/vendor/nuget/Microsoft.CodeAnalysis.CSharp.dll.meta +33 -0
  520. package/vendor/nuget/Microsoft.CodeAnalysis.dll +0 -0
  521. package/vendor/nuget/Microsoft.CodeAnalysis.dll.meta +39 -0
  522. package/vendor/nuget/Microsoft.Extensions.Caching.Abstractions.dll +0 -0
  523. package/vendor/nuget/Microsoft.Extensions.Caching.Abstractions.dll.meta +39 -0
  524. package/vendor/nuget/Microsoft.Extensions.Configuration.Abstractions.dll +0 -0
  525. package/vendor/nuget/Microsoft.Extensions.Configuration.Abstractions.dll.meta +39 -0
  526. package/vendor/nuget/Microsoft.Extensions.DependencyInjection.Abstractions.dll +0 -0
  527. package/vendor/nuget/Microsoft.Extensions.DependencyInjection.Abstractions.dll.meta +39 -0
  528. package/vendor/nuget/Microsoft.Extensions.DependencyInjection.dll +0 -0
  529. package/vendor/nuget/Microsoft.Extensions.DependencyInjection.dll.meta +39 -0
  530. package/vendor/nuget/Microsoft.Extensions.Diagnostics.Abstractions.dll +0 -0
  531. package/vendor/nuget/Microsoft.Extensions.Diagnostics.Abstractions.dll.meta +39 -0
  532. package/vendor/nuget/Microsoft.Extensions.Features.dll +0 -0
  533. package/vendor/nuget/Microsoft.Extensions.Features.dll.meta +39 -0
  534. package/vendor/nuget/Microsoft.Extensions.FileProviders.Abstractions.dll +0 -0
  535. package/vendor/nuget/Microsoft.Extensions.FileProviders.Abstractions.dll.meta +39 -0
  536. package/vendor/nuget/Microsoft.Extensions.Hosting.Abstractions.dll +0 -0
  537. package/vendor/nuget/Microsoft.Extensions.Hosting.Abstractions.dll.meta +39 -0
  538. package/vendor/nuget/Microsoft.Extensions.Logging.Abstractions.dll +0 -0
  539. package/vendor/nuget/Microsoft.Extensions.Logging.Abstractions.dll.meta +39 -0
  540. package/vendor/nuget/Microsoft.Extensions.Logging.dll +0 -0
  541. package/vendor/nuget/Microsoft.Extensions.Logging.dll.meta +39 -0
  542. package/vendor/nuget/Microsoft.Extensions.Options.dll +0 -0
  543. package/vendor/nuget/Microsoft.Extensions.Options.dll.meta +39 -0
  544. package/vendor/nuget/Microsoft.Extensions.Primitives.dll +0 -0
  545. package/vendor/nuget/Microsoft.Extensions.Primitives.dll.meta +39 -0
  546. package/vendor/nuget/R3.dll +0 -0
  547. package/vendor/nuget/R3.dll.meta +39 -0
  548. package/vendor/nuget/ReflectorNet.dll +0 -0
  549. package/vendor/nuget/ReflectorNet.dll.meta +39 -0
  550. package/vendor/nuget/System.Buffers.dll +0 -0
  551. package/vendor/nuget/System.Buffers.dll.meta +39 -0
  552. package/vendor/nuget/System.Collections.Immutable.dll +0 -0
  553. package/vendor/nuget/System.Collections.Immutable.dll.meta +39 -0
  554. package/vendor/nuget/System.ComponentModel.Annotations.dll +0 -0
  555. package/vendor/nuget/System.ComponentModel.Annotations.dll.meta +39 -0
  556. package/vendor/nuget/System.Diagnostics.DiagnosticSource.dll +0 -0
  557. package/vendor/nuget/System.Diagnostics.DiagnosticSource.dll.meta +39 -0
  558. package/vendor/nuget/System.IO.Pipelines.dll +0 -0
  559. package/vendor/nuget/System.IO.Pipelines.dll.meta +39 -0
  560. package/vendor/nuget/System.Memory.dll +0 -0
  561. package/vendor/nuget/System.Memory.dll.meta +39 -0
  562. package/vendor/nuget/System.Numerics.Vectors.dll +0 -0
  563. package/vendor/nuget/System.Numerics.Vectors.dll.meta +39 -0
  564. package/vendor/nuget/System.Reflection.Metadata.dll +0 -0
  565. package/vendor/nuget/System.Reflection.Metadata.dll.meta +39 -0
  566. package/vendor/nuget/System.Runtime.CompilerServices.Unsafe.dll +0 -0
  567. package/vendor/nuget/System.Runtime.CompilerServices.Unsafe.dll.meta +39 -0
  568. package/vendor/nuget/System.Text.Encoding.CodePages.dll +0 -0
  569. package/vendor/nuget/System.Text.Encoding.CodePages.dll.meta +39 -0
  570. package/vendor/nuget/System.Text.Encodings.Web.dll +0 -0
  571. package/vendor/nuget/System.Text.Encodings.Web.dll.meta +39 -0
  572. package/vendor/nuget/System.Text.Json.dll +0 -0
  573. package/vendor/nuget/System.Text.Json.dll.meta +39 -0
  574. package/vendor/nuget/System.Threading.Channels.dll +0 -0
  575. package/vendor/nuget/System.Threading.Channels.dll.meta +39 -0
  576. package/vendor/nuget/System.Threading.Tasks.Extensions.dll +0 -0
  577. package/vendor/nuget/System.Threading.Tasks.Extensions.dll.meta +39 -0
  578. package/vendor/nuget/Uco.Framework.Common.dll +0 -0
  579. package/vendor/nuget/Uco.Framework.Common.dll.meta +39 -0
  580. package/vendor/nuget/Uco.Framework.dll +0 -0
  581. package/vendor/nuget/Uco.Framework.dll.meta +39 -0
  582. package/vendor/plugin/com.atelierai.unity.copilot/CHANGELOG.md +16 -0
  583. package/vendor/plugin/com.atelierai.unity.copilot/CHANGELOG.md.meta +7 -0
  584. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/AssemblyInfo.cs +13 -0
  585. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/AssemblyInfo.cs.meta +11 -0
  586. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetCache.cs +43 -0
  587. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetCache.cs.meta +11 -0
  588. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetConfig.cs +132 -0
  589. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetConfig.cs.meta +11 -0
  590. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetDependencyResolver.cs +237 -0
  591. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetDependencyResolver.cs.meta +11 -0
  592. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetDownloader.cs +82 -0
  593. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetDownloader.cs.meta +11 -0
  594. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetExtractor.cs +414 -0
  595. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetExtractor.cs.meta +11 -0
  596. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetInstallManifest.cs +546 -0
  597. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetInstallManifest.cs.meta +11 -0
  598. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetLegacyMigration.cs +265 -0
  599. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetLegacyMigration.cs.meta +11 -0
  600. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetLongPathPreflight.cs +163 -0
  601. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetLongPathPreflight.cs.meta +11 -0
  602. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPackage.cs +59 -0
  603. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPackage.cs.meta +11 -0
  604. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPackageInstaller.cs +542 -0
  605. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPackageInstaller.cs.meta +11 -0
  606. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPackageRestorer.cs +267 -0
  607. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPackageRestorer.cs.meta +11 -0
  608. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPluginConfigurator.cs +241 -0
  609. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetPluginConfigurator.cs.meta +11 -0
  610. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetResolverMenu.cs +60 -0
  611. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/NuGetResolverMenu.cs.meta +11 -0
  612. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/RecompileGate.cs +168 -0
  613. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/RecompileGate.cs.meta +11 -0
  614. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/UnityAssemblyResolver.cs +110 -0
  615. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/UnityAssemblyResolver.cs.meta +11 -0
  616. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/com.AtelierAI.Unity.Copilot.DependencyResolver.asmdef +16 -0
  617. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver/com.AtelierAI.Unity.Copilot.DependencyResolver.asmdef.meta +7 -0
  618. package/vendor/plugin/com.atelierai.unity.copilot/Editor/DependencyResolver.meta +8 -0
  619. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/.gitignore +2 -0
  620. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/antigravity-64.png +0 -0
  621. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/antigravity-64.png.meta +127 -0
  622. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/claude-64.png +0 -0
  623. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/claude-64.png.meta +127 -0
  624. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/cline-64.png +0 -0
  625. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/cline-64.png.meta +191 -0
  626. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/codex-64.png +0 -0
  627. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/codex-64.png.meta +127 -0
  628. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/cursor-64.png +0 -0
  629. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/cursor-64.png.meta +127 -0
  630. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/gemini-64.png +0 -0
  631. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/gemini-64.png.meta +127 -0
  632. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/github-copilot-64.png +0 -0
  633. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/github-copilot-64.png.meta +127 -0
  634. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/kilo-code-64.png +0 -0
  635. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/kilo-code-64.png.meta +153 -0
  636. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/open-code-64.png +0 -0
  637. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/open-code-64.png.meta +127 -0
  638. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/rider-64.png +0 -0
  639. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/rider-64.png.meta +140 -0
  640. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/unity-64.png +0 -0
  641. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/unity-64.png.meta +127 -0
  642. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/visual-studio-64.png +0 -0
  643. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/visual-studio-64.png.meta +127 -0
  644. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/vs-code-64.png +0 -0
  645. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents/vs-code-64.png.meta +127 -0
  646. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/ai-agents.meta +8 -0
  647. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/discord_icon.png +0 -0
  648. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/discord_icon.png.meta +114 -0
  649. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/github_icon.png +0 -0
  650. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/github_icon.png.meta +114 -0
  651. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/icon.png +0 -0
  652. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/icon.png.meta +140 -0
  653. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo.png +0 -0
  654. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo.png.meta +140 -0
  655. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_305.png +0 -0
  656. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_305.png.meta +114 -0
  657. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_512.png +0 -0
  658. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_512.png.meta +140 -0
  659. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_script_icon.png +0 -0
  660. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_script_icon.png.meta +140 -0
  661. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_window_icon.png +0 -0
  662. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/logo_window_icon.png.meta +140 -0
  663. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/star_icon.png +0 -0
  664. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos/star_icon.png.meta +114 -0
  665. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Gizmos.meta +8 -0
  666. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/.gitignore +2 -0
  667. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/AnimationTimeline.cs +77 -0
  668. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/AnimationTimeline.cs.meta +11 -0
  669. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/AssetManagement.cs +77 -0
  670. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/AssetManagement.cs.meta +11 -0
  671. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/DebuggingTesting.cs +77 -0
  672. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/DebuggingTesting.cs.meta +11 -0
  673. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/GameObjectComponent.cs +77 -0
  674. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/GameObjectComponent.cs.meta +11 -0
  675. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/SceneManagement.cs +63 -0
  676. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/SceneManagement.cs.meta +11 -0
  677. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/ScriptingCode.cs +77 -0
  678. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt/ScriptingCode.cs.meta +11 -0
  679. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Prompt.meta +8 -0
  680. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/EditorState.cs +195 -0
  681. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/EditorState.cs.meta +11 -0
  682. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/EditorWindows.cs +205 -0
  683. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/EditorWindows.cs.meta +11 -0
  684. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/GameObject.Hierarchy.cs +78 -0
  685. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/GameObject.Hierarchy.cs.meta +11 -0
  686. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/MenuItems.cs +247 -0
  687. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/MenuItems.cs.meta +11 -0
  688. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ProjectInfo.cs +141 -0
  689. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ProjectInfo.cs.meta +11 -0
  690. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ProjectLayers.cs +116 -0
  691. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ProjectLayers.cs.meta +11 -0
  692. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ProjectTags.cs +150 -0
  693. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ProjectTags.cs.meta +11 -0
  694. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ToolGroups.cs +153 -0
  695. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/ToolGroups.cs.meta +11 -0
  696. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/UnityInstances.cs +67 -0
  697. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource/UnityInstances.cs.meta +11 -0
  698. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Resource.meta +8 -0
  699. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Ping.cs +47 -0
  700. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Ping.cs.meta +11 -0
  701. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Skills.Create.SkillBody.cs +155 -0
  702. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Skills.Create.SkillBody.cs.meta +11 -0
  703. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Skills.Create.cs +268 -0
  704. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Skills.Create.cs.meta +11 -0
  705. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Skills.cs +20 -0
  706. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool/Skills.cs.meta +11 -0
  707. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/SystemTool.meta +8 -0
  708. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Copy.cs +96 -0
  709. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Copy.cs.meta +11 -0
  710. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.CreateFolders.cs +133 -0
  711. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.CreateFolders.cs.meta +11 -0
  712. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Delete.cs +97 -0
  713. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Delete.cs.meta +11 -0
  714. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Find.cs +95 -0
  715. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Find.cs.meta +11 -0
  716. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.FindBuiltIn.cs +140 -0
  717. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.FindBuiltIn.cs.meta +11 -0
  718. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.GetData.cs +119 -0
  719. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.GetData.cs.meta +11 -0
  720. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Material.Create.cs +90 -0
  721. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Material.Create.cs.meta +11 -0
  722. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Material.cs +23 -0
  723. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Material.cs.meta +11 -0
  724. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Modify.cs +148 -0
  725. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Modify.cs.meta +11 -0
  726. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Modify.pre-Unity.6.5.cs +141 -0
  727. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Modify.pre-Unity.6.5.cs.meta +11 -0
  728. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Move.cs +89 -0
  729. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Move.cs.meta +11 -0
  730. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Close.cs +79 -0
  731. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Close.cs.meta +11 -0
  732. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Create.cs +154 -0
  733. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Create.cs.meta +11 -0
  734. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Instantiate.cs +95 -0
  735. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Instantiate.cs.meta +11 -0
  736. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Open.cs +80 -0
  737. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Open.cs.meta +11 -0
  738. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Save.cs +66 -0
  739. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.Save.cs.meta +11 -0
  740. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.cs +40 -0
  741. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Prefab.cs.meta +11 -0
  742. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Refresh.cs +165 -0
  743. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Refresh.cs.meta +11 -0
  744. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Shader.GetData.cs +263 -0
  745. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Shader.GetData.cs.meta +11 -0
  746. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Shader.ListAll.cs +50 -0
  747. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Shader.ListAll.cs.meta +11 -0
  748. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Shader.cs +20 -0
  749. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.Shader.cs.meta +11 -0
  750. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.cs +77 -0
  751. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Assets.cs.meta +11 -0
  752. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Batch.Execute.cs +870 -0
  753. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Batch.Execute.cs.meta +11 -0
  754. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Batch.cs +152 -0
  755. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Batch.cs.meta +11 -0
  756. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.JobCancel.cs +25 -0
  757. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.JobCancel.cs.meta +11 -0
  758. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.JobGet.cs +58 -0
  759. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.JobGet.cs.meta +11 -0
  760. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.JobList.cs +54 -0
  761. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.JobList.cs.meta +11 -0
  762. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.Player.cs +192 -0
  763. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.Player.cs.meta +11 -0
  764. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SceneAdd.cs +103 -0
  765. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SceneAdd.cs.meta +11 -0
  766. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SceneList.cs +55 -0
  767. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SceneList.cs.meta +11 -0
  768. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SceneRemove.cs +73 -0
  769. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SceneRemove.cs.meta +11 -0
  770. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SwitchPlatform.cs +98 -0
  771. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.SwitchPlatform.cs.meta +11 -0
  772. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.cs +451 -0
  773. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Build.cs.meta +11 -0
  774. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Cinemachine.Blend.cs +137 -0
  775. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Cinemachine.Blend.cs.meta +11 -0
  776. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Cinemachine.VcamConfigure.cs +252 -0
  777. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Cinemachine.VcamConfigure.cs.meta +11 -0
  778. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Cinemachine.VcamPriority.cs +117 -0
  779. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Cinemachine.VcamPriority.cs.meta +11 -0
  780. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Configure.cs +161 -0
  781. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.Configure.cs.meta +11 -0
  782. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.GetData.cs +89 -0
  783. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.GetData.cs.meta +11 -0
  784. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.ListAll.cs +81 -0
  785. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.ListAll.cs.meta +11 -0
  786. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.cs +264 -0
  787. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Camera.cs.meta +11 -0
  788. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Console.ClearLogs.cs +132 -0
  789. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Console.ClearLogs.cs.meta +11 -0
  790. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Console.GetLogs.cs +96 -0
  791. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Console.GetLogs.cs.meta +11 -0
  792. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Console.cs +28 -0
  793. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Console.cs.meta +11 -0
  794. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/AddComponentResponse.cs +36 -0
  795. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/AddComponentResponse.cs.meta +11 -0
  796. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ComponentListResult.cs +39 -0
  797. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ComponentListResult.cs.meta +11 -0
  798. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/CopyAssetsResponse.cs +25 -0
  799. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/CopyAssetsResponse.cs.meta +11 -0
  800. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/CreateFolderInput.cs +29 -0
  801. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/CreateFolderInput.cs.meta +11 -0
  802. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/CreateFolderResponse.cs +29 -0
  803. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/CreateFolderResponse.cs.meta +11 -0
  804. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DeleteAssetsResponse.cs +29 -0
  805. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DeleteAssetsResponse.cs.meta +11 -0
  806. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DestroyComponentsResponse.cs +27 -0
  807. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DestroyComponentsResponse.cs.meta +11 -0
  808. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DestroyGameObjectResult.cs +35 -0
  809. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DestroyGameObjectResult.cs.meta +11 -0
  810. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DestroyGameObjectResult.pre-Unity.6.5.cs +35 -0
  811. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/DestroyGameObjectResult.pre-Unity.6.5.cs.meta +11 -0
  812. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/EditorStatsData.cs +104 -0
  813. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/EditorStatsData.cs.meta +11 -0
  814. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/GetComponentResponse.cs +47 -0
  815. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/GetComponentResponse.cs.meta +11 -0
  816. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/GetComponentResponse.pre-Unity.6.5.cs +47 -0
  817. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/GetComponentResponse.pre-Unity.6.5.cs.meta +11 -0
  818. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ModifyComponentResponse.cs +38 -0
  819. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ModifyComponentResponse.cs.meta +11 -0
  820. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ModifyObjectResponse.cs +45 -0
  821. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ModifyObjectResponse.cs.meta +11 -0
  822. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/MoveAssetsResponse.cs +29 -0
  823. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/MoveAssetsResponse.cs.meta +11 -0
  824. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/PackageData.cs +56 -0
  825. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/PackageData.cs.meta +11 -0
  826. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/PackageSearchResult.cs +46 -0
  827. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/PackageSearchResult.cs.meta +11 -0
  828. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/PassData.cs +33 -0
  829. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/PassData.cs.meta +11 -0
  830. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ScriptExecuteResult.cs +44 -0
  831. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ScriptExecuteResult.cs.meta +11 -0
  832. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/SelectionData.cs +67 -0
  833. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/SelectionData.cs.meta +11 -0
  834. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/SelectionData.pre-Unity.6.5.cs +69 -0
  835. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/SelectionData.pre-Unity.6.5.cs.meta +11 -0
  836. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ShaderData.cs +61 -0
  837. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ShaderData.cs.meta +11 -0
  838. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ShaderMessageData.cs +36 -0
  839. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ShaderMessageData.cs.meta +11 -0
  840. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ShaderPropertyData.cs +51 -0
  841. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ShaderPropertyData.cs.meta +11 -0
  842. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/SubshaderData.cs +33 -0
  843. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/SubshaderData.cs.meta +11 -0
  844. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolInfoData.cs +37 -0
  845. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolInfoData.cs.meta +11 -0
  846. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolInputData.cs +33 -0
  847. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolInputData.cs.meta +11 -0
  848. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolToggleInput.cs +30 -0
  849. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolToggleInput.cs.meta +11 -0
  850. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolToggleResult.cs +30 -0
  851. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/ToolToggleResult.cs.meta +11 -0
  852. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/UnloadSceneResult.cs +29 -0
  853. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data/UnloadSceneResult.cs.meta +11 -0
  854. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Data.meta +8 -0
  855. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.GetManual.cs +116 -0
  856. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.GetManual.cs.meta +11 -0
  857. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.GetPackage.cs +100 -0
  858. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.GetPackage.cs.meta +11 -0
  859. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.GetScriptReference.cs +163 -0
  860. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.GetScriptReference.cs.meta +11 -0
  861. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.HtmlParser.cs +519 -0
  862. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.HtmlParser.cs.meta +11 -0
  863. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.HttpFetcher.cs +139 -0
  864. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.HttpFetcher.cs.meta +11 -0
  865. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.Lookup.cs +209 -0
  866. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.Lookup.cs.meta +11 -0
  867. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.cs +158 -0
  868. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Docs.cs.meta +11 -0
  869. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Application.GetState.cs +102 -0
  870. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Application.GetState.cs.meta +11 -0
  871. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Application.SetState.cs +70 -0
  872. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Application.SetState.cs.meta +11 -0
  873. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.ExecuteMenuItem.cs +149 -0
  874. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.ExecuteMenuItem.cs.meta +11 -0
  875. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Get.cs +82 -0
  876. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Get.cs.meta +11 -0
  877. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Get.pre-Unity.6.5.cs +90 -0
  878. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Get.pre-Unity.6.5.cs.meta +11 -0
  879. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Set.cs +54 -0
  880. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Set.cs.meta +11 -0
  881. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Set.pre-Unity.6.5.cs +54 -0
  882. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.Set.pre-Unity.6.5.cs.meta +11 -0
  883. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.cs +74 -0
  884. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.cs.meta +11 -0
  885. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.pre-Unity.6.5.cs +73 -0
  886. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.Selection.pre-Unity.6.5.cs.meta +11 -0
  887. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.cs +29 -0
  888. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Editor.cs.meta +11 -0
  889. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Add.cs +142 -0
  890. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Add.cs.meta +11 -0
  891. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Destroy.cs +116 -0
  892. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Destroy.cs.meta +11 -0
  893. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Get.cs +168 -0
  894. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Get.cs.meta +11 -0
  895. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Get.pre-Unity.6.5.cs +168 -0
  896. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Get.pre-Unity.6.5.cs.meta +11 -0
  897. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.ListAll.cs +98 -0
  898. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.ListAll.cs.meta +11 -0
  899. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Modify.cs +200 -0
  900. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Component.Modify.cs.meta +11 -0
  901. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Create.cs +123 -0
  902. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Create.cs.meta +11 -0
  903. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Destroy.cs +90 -0
  904. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Destroy.cs.meta +11 -0
  905. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Destroy.pre-Unity.6.5.cs +90 -0
  906. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Destroy.pre-Unity.6.5.cs.meta +11 -0
  907. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Duplicate.cs +111 -0
  908. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Duplicate.cs.meta +11 -0
  909. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Find.cs +135 -0
  910. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Find.cs.meta +11 -0
  911. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Modify.cs +202 -0
  912. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.Modify.cs.meta +11 -0
  913. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.SetParent.cs +118 -0
  914. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.SetParent.cs.meta +11 -0
  915. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.cs +116 -0
  916. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.cs.meta +11 -0
  917. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.pre-Unity.6.5.cs +116 -0
  918. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/GameObject.pre-Unity.6.5.cs.meta +11 -0
  919. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.LightBake.cs +366 -0
  920. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.LightBake.cs.meta +11 -0
  921. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.RenderingStats.cs +166 -0
  922. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.RenderingStats.cs.meta +11 -0
  923. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.UrpAsset.cs +489 -0
  924. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.UrpAsset.cs.meta +11 -0
  925. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.UrpRendererFeature.cs +725 -0
  926. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.UrpRendererFeature.cs.meta +11 -0
  927. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.AddOverride.cs +156 -0
  928. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.AddOverride.cs.meta +11 -0
  929. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.Create.cs +221 -0
  930. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.Create.cs.meta +11 -0
  931. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.List.cs +177 -0
  932. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.List.cs.meta +11 -0
  933. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.RemoveOverride.cs +129 -0
  934. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.RemoveOverride.cs.meta +11 -0
  935. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.SetField.cs +261 -0
  936. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.Volume.SetField.cs.meta +11 -0
  937. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.cs +778 -0
  938. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Graphics.cs.meta +11 -0
  939. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Instance.GetCurrent.cs +70 -0
  940. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Instance.GetCurrent.cs.meta +11 -0
  941. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Instance.ListAll.cs +72 -0
  942. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Instance.ListAll.cs.meta +11 -0
  943. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Instance.cs +50 -0
  944. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Instance.cs.meta +11 -0
  945. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Object.GetData.cs +109 -0
  946. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Object.GetData.cs.meta +11 -0
  947. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Object.Modify.cs +155 -0
  948. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Object.Modify.cs.meta +11 -0
  949. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Object.cs +24 -0
  950. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Object.cs.meta +11 -0
  951. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Operations.cs +37 -0
  952. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Operations.cs.meta +11 -0
  953. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.Add.cs +111 -0
  954. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.Add.cs.meta +11 -0
  955. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.List.cs +135 -0
  956. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.List.cs.meta +11 -0
  957. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.Remove.cs +133 -0
  958. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.Remove.cs.meta +11 -0
  959. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.Search.cs +198 -0
  960. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.Search.cs.meta +11 -0
  961. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.cs +60 -0
  962. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Package.cs.meta +11 -0
  963. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/PathReadHelper.cs +106 -0
  964. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/PathReadHelper.cs.meta +11 -0
  965. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.CollisionMatrix.cs +224 -0
  966. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.CollisionMatrix.cs.meta +11 -0
  967. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Force.cs +276 -0
  968. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Force.cs.meta +11 -0
  969. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Joint.Add.cs +360 -0
  970. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Joint.Add.cs.meta +11 -0
  971. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Joint.Configure.cs +701 -0
  972. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Joint.Configure.cs.meta +11 -0
  973. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Joint.Remove.cs +182 -0
  974. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Joint.Remove.cs.meta +11 -0
  975. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Linecast.cs +79 -0
  976. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Linecast.cs.meta +11 -0
  977. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Material.cs +495 -0
  978. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Material.cs.meta +11 -0
  979. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Overlap.cs +215 -0
  980. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Overlap.cs.meta +11 -0
  981. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Raycast.cs +360 -0
  982. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Raycast.cs.meta +11 -0
  983. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Rigidbody.cs +490 -0
  984. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Rigidbody.cs.meta +11 -0
  985. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Settings.cs +378 -0
  986. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Settings.cs.meta +11 -0
  987. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Shapecast.cs +246 -0
  988. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Shapecast.cs.meta +11 -0
  989. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Simulate.cs +184 -0
  990. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Simulate.cs.meta +11 -0
  991. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Validate.cs +374 -0
  992. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.Validate.cs.meta +11 -0
  993. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.cs +339 -0
  994. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Physics.cs.meta +11 -0
  995. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.Counters.cs +417 -0
  996. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.Counters.cs.meta +11 -0
  997. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.FrameDebugger.cs +436 -0
  998. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.FrameDebugger.cs.meta +11 -0
  999. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.Memory.cs +386 -0
  1000. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.Memory.cs.meta +11 -0
  1001. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.Session.cs +222 -0
  1002. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.Session.cs.meta +11 -0
  1003. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.cs +72 -0
  1004. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Profiler.cs.meta +11 -0
  1005. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Reflection.MethodCall.cs +206 -0
  1006. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Reflection.MethodCall.cs.meta +11 -0
  1007. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Reflection.MethodFind.cs +112 -0
  1008. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Reflection.MethodFind.cs.meta +11 -0
  1009. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Reflection.cs +166 -0
  1010. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Reflection.cs.meta +11 -0
  1011. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Create.cs +95 -0
  1012. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Create.cs.meta +11 -0
  1013. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.GetData.cs +123 -0
  1014. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.GetData.cs.meta +11 -0
  1015. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.ListOpened.cs +49 -0
  1016. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.ListOpened.cs.meta +11 -0
  1017. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Open.cs +81 -0
  1018. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Open.cs.meta +11 -0
  1019. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Save.cs +108 -0
  1020. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Save.cs.meta +11 -0
  1021. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.SetActive.cs +92 -0
  1022. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.SetActive.cs.meta +11 -0
  1023. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Unload.cs +99 -0
  1024. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.Unload.cs.meta +11 -0
  1025. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.cs +42 -0
  1026. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Scene.cs.meta +11 -0
  1027. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.Camera.cs +126 -0
  1028. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.Camera.cs.meta +11 -0
  1029. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.GameView.cs +128 -0
  1030. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.GameView.cs.meta +11 -0
  1031. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.Isolated.cs +733 -0
  1032. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.Isolated.cs.meta +11 -0
  1033. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.SceneView.cs +112 -0
  1034. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.SceneView.cs.meta +11 -0
  1035. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.cs +672 -0
  1036. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Screenshot.cs.meta +11 -0
  1037. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.ApplyEdits.cs +591 -0
  1038. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.ApplyEdits.cs.meta +11 -0
  1039. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.CSharpTokenizer.cs +704 -0
  1040. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.CSharpTokenizer.cs.meta +11 -0
  1041. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Delete.cs +94 -0
  1042. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Delete.cs.meta +11 -0
  1043. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Execute.cs +466 -0
  1044. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Execute.cs.meta +11 -0
  1045. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.FindInFile.cs +526 -0
  1046. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.FindInFile.cs.meta +11 -0
  1047. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.GetSha.cs +137 -0
  1048. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.GetSha.cs.meta +11 -0
  1049. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Read.cs +81 -0
  1050. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Read.cs.meta +11 -0
  1051. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.UpdateOrCreate.cs +100 -0
  1052. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.UpdateOrCreate.cs.meta +11 -0
  1053. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Validate.cs +252 -0
  1054. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.Validate.cs.meta +11 -0
  1055. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.cs +42 -0
  1056. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Script.cs.meta +11 -0
  1057. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/CombinedTestResultCollector.cs +159 -0
  1058. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/CombinedTestResultCollector.cs.meta +11 -0
  1059. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestFilterParameters.cs +51 -0
  1060. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestFilterParameters.cs.meta +11 -0
  1061. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestLogEntry.cs +69 -0
  1062. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestLogEntry.cs.meta +11 -0
  1063. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestResultCollector.cs +537 -0
  1064. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestResultCollector.cs.meta +11 -0
  1065. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestResultData.cs +24 -0
  1066. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestResultData.cs.meta +11 -0
  1067. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestResultStatus.cs +20 -0
  1068. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestResultStatus.cs.meta +11 -0
  1069. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestRunResponse.cs +41 -0
  1070. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestRunResponse.cs.meta +11 -0
  1071. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestRunStatus.cs +21 -0
  1072. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestRunStatus.cs.meta +11 -0
  1073. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestSummaryData.cs +41 -0
  1074. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests/TestSummaryData.cs.meta +11 -0
  1075. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.Jobs.cs +48 -0
  1076. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.Jobs.cs.meta +11 -0
  1077. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.Run.cs +665 -0
  1078. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.Run.cs.meta +11 -0
  1079. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.cs +400 -0
  1080. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.cs.meta +11 -0
  1081. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tests.meta +8 -0
  1082. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateChecker.cs +99 -0
  1083. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateChecker.cs.meta +11 -0
  1084. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateGradient.cs +136 -0
  1085. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateGradient.cs.meta +11 -0
  1086. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateNoise.cs +157 -0
  1087. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateNoise.cs.meta +11 -0
  1088. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateSolid.cs +78 -0
  1089. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.CreateSolid.cs.meta +11 -0
  1090. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.Read.cs +110 -0
  1091. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.Read.cs.meta +11 -0
  1092. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.cs +255 -0
  1093. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Texture.cs.meta +11 -0
  1094. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tool.List.cs +207 -0
  1095. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tool.List.cs.meta +11 -0
  1096. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tool.SetEnabledState.cs +111 -0
  1097. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tool.SetEnabledState.cs.meta +11 -0
  1098. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tool.cs +76 -0
  1099. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Tool.cs.meta +11 -0
  1100. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/ToolGroups.List.cs +94 -0
  1101. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/ToolGroups.List.cs.meta +11 -0
  1102. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/ToolGroups.SetEnabled.cs +92 -0
  1103. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/ToolGroups.SetEnabled.cs.meta +11 -0
  1104. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/ToolGroups.cs +149 -0
  1105. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/ToolGroups.cs.meta +11 -0
  1106. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Type.GetJsonSchema.cs +160 -0
  1107. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Type.GetJsonSchema.cs.meta +11 -0
  1108. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Type.ListMembers.cs +243 -0
  1109. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Type.ListMembers.cs.meta +11 -0
  1110. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Type.cs +39 -0
  1111. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Type.cs.meta +11 -0
  1112. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Document.Attach.cs +174 -0
  1113. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Document.Attach.cs.meta +11 -0
  1114. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Document.Detach.cs +94 -0
  1115. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Document.Detach.cs.meta +11 -0
  1116. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Element.Query.cs +276 -0
  1117. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Element.Query.cs.meta +11 -0
  1118. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uss.Create.cs +87 -0
  1119. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uss.Create.cs.meta +11 -0
  1120. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uss.Modify.cs +224 -0
  1121. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uss.Modify.cs.meta +11 -0
  1122. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uss.Read.cs +83 -0
  1123. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uss.Read.cs.meta +11 -0
  1124. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uxml.Create.cs +88 -0
  1125. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uxml.Create.cs.meta +11 -0
  1126. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uxml.Modify.cs +398 -0
  1127. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uxml.Modify.cs.meta +11 -0
  1128. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uxml.Read.cs +84 -0
  1129. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.Uxml.Read.cs.meta +11 -0
  1130. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.cs +356 -0
  1131. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/UI.cs.meta +11 -0
  1132. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Graph.Configure.cs +377 -0
  1133. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Graph.Configure.cs.meta +11 -0
  1134. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Particle.Configure.cs +231 -0
  1135. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Particle.Configure.cs.meta +11 -0
  1136. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Particle.Control.cs +128 -0
  1137. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Particle.Control.cs.meta +11 -0
  1138. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Particle.GetData.cs +88 -0
  1139. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Particle.GetData.cs.meta +11 -0
  1140. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Trail.Configure.cs +140 -0
  1141. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.Trail.Configure.cs.meta +11 -0
  1142. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.cs +386 -0
  1143. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool/Vfx.cs.meta +11 -0
  1144. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API/Tool.meta +8 -0
  1145. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/API.meta +8 -0
  1146. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/AssemblyInfo.cs +13 -0
  1147. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/AssemblyInfo.cs.meta +11 -0
  1148. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Branding/ProductInfo.cs +63 -0
  1149. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Branding/ProductInfo.cs.meta +11 -0
  1150. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Branding.meta +8 -0
  1151. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/CopilotServerManager.cs +1044 -0
  1152. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/CopilotServerManager.cs.meta +11 -0
  1153. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Extensions/ExtensionsSerializedMember.cs +103 -0
  1154. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Extensions/ExtensionsSerializedMember.cs.meta +11 -0
  1155. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Extensions/ExtensionsSerializedMember.pre-Unity.6.5.cs +102 -0
  1156. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Extensions/ExtensionsSerializedMember.pre-Unity.6.5.cs.meta +11 -0
  1157. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Extensions.meta +8 -0
  1158. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Services/DeviceAuthFlow.cs +133 -0
  1159. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Services/DeviceAuthFlow.cs.meta +11 -0
  1160. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Services/DeviceAuthService.cs +84 -0
  1161. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Services/DeviceAuthService.cs.meta +11 -0
  1162. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Services.meta +8 -0
  1163. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Skills/Skill_InitialSetup.cs +197 -0
  1164. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Skills/Skill_InitialSetup.cs.meta +11 -0
  1165. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Skills.meta +8 -0
  1166. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Startup.Editor.cs +201 -0
  1167. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Startup.Editor.cs.meta +11 -0
  1168. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Startup.cs +67 -0
  1169. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Startup.cs.meta +11 -0
  1170. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Components/AlertPanel.cs +115 -0
  1171. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Components/AlertPanel.cs.meta +11 -0
  1172. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Components/ExtensionPanel.cs +379 -0
  1173. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Components/ExtensionPanel.cs.meta +11 -0
  1174. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Components.meta +8 -0
  1175. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Controls/SegmentedControl.cs +229 -0
  1176. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Controls/SegmentedControl.cs.meta +11 -0
  1177. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Controls.meta +8 -0
  1178. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/MenuItems.cs +132 -0
  1179. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/MenuItems.cs.meta +11 -0
  1180. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Overlay/OpenWindowButton.cs +39 -0
  1181. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Overlay/OpenWindowButton.cs.meta +11 -0
  1182. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Overlay/SceneViewToolbarOverlay.cs +35 -0
  1183. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Overlay/SceneViewToolbarOverlay.cs.meta +11 -0
  1184. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Overlay.meta +8 -0
  1185. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/UnityCopilotProjectSettingsProvider.cs +64 -0
  1186. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/UnityCopilotProjectSettingsProvider.cs.meta +11 -0
  1187. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Utils/UICopilotUtils.cs +33 -0
  1188. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Utils/UICopilotUtils.cs.meta +11 -0
  1189. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Utils/UITemplate.cs +30 -0
  1190. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Utils/UITemplate.cs.meta +11 -0
  1191. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Utils.meta +8 -0
  1192. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/CopilotListWindowBase.cs +393 -0
  1193. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/CopilotListWindowBase.cs.meta +11 -0
  1194. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/CopilotWindowBase.cs +113 -0
  1195. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/CopilotWindowBase.cs.meta +11 -0
  1196. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.Connection.cs +409 -0
  1197. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.Connection.cs.meta +11 -0
  1198. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CopilotFeatures.cs +195 -0
  1199. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CopilotFeatures.cs.meta +11 -0
  1200. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CopilotServer.cs +372 -0
  1201. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CopilotServer.cs.meta +11 -0
  1202. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CreateGUI.cs +361 -0
  1203. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.CreateGUI.cs.meta +11 -0
  1204. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.Extensions.cs +110 -0
  1205. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.Extensions.cs.meta +11 -0
  1206. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.cs +148 -0
  1207. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowEditor.cs.meta +14 -0
  1208. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowInitializer.cs +47 -0
  1209. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/MainWindowInitializer.cs.meta +11 -0
  1210. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/NotificationPopupWindow.cs +114 -0
  1211. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/NotificationPopupWindow.cs.meta +11 -0
  1212. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/SerializationCheckWindow.cs +190 -0
  1213. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/SerializationCheckWindow.cs.meta +11 -0
  1214. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/UpdatePopupWindow.cs +252 -0
  1215. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window/UpdatePopupWindow.cs.meta +11 -0
  1216. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI/Window.meta +8 -0
  1217. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UI.meta +8 -0
  1218. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Build.cs +91 -0
  1219. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Build.cs.meta +11 -0
  1220. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Config.cs +293 -0
  1221. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Config.cs.meta +11 -0
  1222. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Static.cs +299 -0
  1223. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.Static.cs.meta +11 -0
  1224. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.cs +69 -0
  1225. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/UnityCopilotPluginEditor.cs.meta +11 -0
  1226. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/BuiltInAssetCache.cs +178 -0
  1227. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/BuiltInAssetCache.cs.meta +11 -0
  1228. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ConsoleDiagnosticsSettings.cs +39 -0
  1229. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ConsoleDiagnosticsSettings.cs.meta +11 -0
  1230. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorAssetLoader.cs +75 -0
  1231. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorAssetLoader.cs.meta +11 -0
  1232. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorOperationOwnerRegistry.cs +721 -0
  1233. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorOperationOwnerRegistry.cs.meta +11 -0
  1234. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorOperationOwners.cs +176 -0
  1235. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorOperationOwners.cs.meta +11 -0
  1236. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorOperationRegistry.cs +854 -0
  1237. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorOperationRegistry.cs.meta +11 -0
  1238. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorSceneSandbox.cs +488 -0
  1239. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorSceneSandbox.cs.meta +11 -0
  1240. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorSceneSandbox.pre-Unity.6.5.cs +477 -0
  1241. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorSceneSandbox.pre-Unity.6.5.cs.meta +11 -0
  1242. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorToolExecutionScheduler.cs +512 -0
  1243. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorToolExecutionScheduler.cs.meta +11 -0
  1244. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorUtils.cs +31 -0
  1245. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/EditorUtils.cs.meta +11 -0
  1246. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/LinkExtractor.cs +176 -0
  1247. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/LinkExtractor.cs.meta +11 -0
  1248. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PackageUtils.cs +168 -0
  1249. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PackageUtils.cs.meta +11 -0
  1250. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PlayerPrefsValues.cs +90 -0
  1251. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PlayerPrefsValues.cs.meta +11 -0
  1252. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PrefsKeyMigration.cs +119 -0
  1253. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/PrefsKeyMigration.cs.meta +11 -0
  1254. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/SafeDefaultsGuard.cs +180 -0
  1255. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/SafeDefaultsGuard.cs.meta +11 -0
  1256. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ScriptUtils.cs +230 -0
  1257. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ScriptUtils.cs.meta +11 -0
  1258. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ToolGroupRegistry.cs +460 -0
  1259. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ToolGroupRegistry.cs.meta +11 -0
  1260. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ToolsManifestGenerator.cs +200 -0
  1261. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/ToolsManifestGenerator.cs.meta +11 -0
  1262. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityAuthoringAdapters.cs +1467 -0
  1263. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityAuthoringAdapters.cs.meta +11 -0
  1264. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityAuthoringSafetyReloadGuard.cs +65 -0
  1265. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityAuthoringSafetyReloadGuard.cs.meta +11 -0
  1266. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityBridgeHandshakeIdentity.cs +86 -0
  1267. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityBridgeHandshakeIdentity.cs.meta +11 -0
  1268. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityCopilotUpdateProjectSettings.cs +66 -0
  1269. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityCopilotUpdateProjectSettings.cs.meta +11 -0
  1270. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityInstanceRegistry.cs +351 -0
  1271. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnityInstanceRegistry.cs.meta +11 -0
  1272. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnixUtils.cs +57 -0
  1273. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UnixUtils.cs.meta +11 -0
  1274. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UpdateChecker.cs +421 -0
  1275. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils/UpdateChecker.cs.meta +11 -0
  1276. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/Utils.meta +8 -0
  1277. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/com.AtelierAI.Unity.Copilot.Editor.asmdef +32 -0
  1278. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts/com.AtelierAI.Unity.Copilot.Editor.asmdef.meta +7 -0
  1279. package/vendor/plugin/com.atelierai.unity.copilot/Editor/Scripts.meta +8 -0
  1280. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/CopilotPromptsWindow.uss +11 -0
  1281. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/CopilotPromptsWindow.uss.meta +11 -0
  1282. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/CopilotResourcesWindow.uss +16 -0
  1283. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/CopilotResourcesWindow.uss.meta +11 -0
  1284. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/CopilotToolsWindow.uss +36 -0
  1285. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/CopilotToolsWindow.uss.meta +11 -0
  1286. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/MainWindow.uss +184 -0
  1287. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/MainWindow.uss.meta +11 -0
  1288. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/NotificationPopupWindow.uss +8 -0
  1289. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/NotificationPopupWindow.uss.meta +11 -0
  1290. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/SerializationCheckWindow.uss +47 -0
  1291. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/SerializationCheckWindow.uss.meta +11 -0
  1292. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/UpdatePopupWindow.uss +10 -0
  1293. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/UpdatePopupWindow.uss.meta +11 -0
  1294. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_animations.uss +26 -0
  1295. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_animations.uss.meta +11 -0
  1296. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_base.uss +108 -0
  1297. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_base.uss.meta +11 -0
  1298. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_buttons.uss +246 -0
  1299. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_buttons.uss.meta +11 -0
  1300. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_foldout.uss +51 -0
  1301. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_foldout.uss.meta +11 -0
  1302. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_forms.uss +207 -0
  1303. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_forms.uss.meta +11 -0
  1304. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_list-view.uss +77 -0
  1305. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_list-view.uss.meta +11 -0
  1306. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_mcp-list-window.uss +18 -0
  1307. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_mcp-list-window.uss.meta +11 -0
  1308. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_segmented-control.uss +52 -0
  1309. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_segmented-control.uss.meta +11 -0
  1310. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_status-indicators.uss +56 -0
  1311. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_status-indicators.uss.meta +11 -0
  1312. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_toggle-switch.uss +47 -0
  1313. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_toggle-switch.uss.meta +11 -0
  1314. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_typography.uss +159 -0
  1315. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common/_typography.uss.meta +11 -0
  1316. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss/common.meta +8 -0
  1317. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uss.meta +8 -0
  1318. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ClientConfigPanel.uxml +7 -0
  1319. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ClientConfigPanel.uxml.meta +10 -0
  1320. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/CopilotPromptsWindow.uxml +18 -0
  1321. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/CopilotPromptsWindow.uxml.meta +10 -0
  1322. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/CopilotResourcesWindow.uxml +18 -0
  1323. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/CopilotResourcesWindow.uxml.meta +10 -0
  1324. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/CopilotToolsWindow.uxml +18 -0
  1325. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/CopilotToolsWindow.uxml.meta +10 -0
  1326. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ExtensionItem.uxml +9 -0
  1327. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ExtensionItem.uxml.meta +10 -0
  1328. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/MainWindow.uxml +115 -0
  1329. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/MainWindow.uxml.meta +10 -0
  1330. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/NotificationPopupWindow.uxml +9 -0
  1331. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/NotificationPopupWindow.uxml.meta +10 -0
  1332. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/PromptItem.uxml +22 -0
  1333. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/PromptItem.uxml.meta +10 -0
  1334. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ResourceItem.uxml +18 -0
  1335. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ResourceItem.uxml.meta +10 -0
  1336. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/SerializationCheckWindow.uxml +25 -0
  1337. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/SerializationCheckWindow.uxml.meta +10 -0
  1338. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ToolItem.uxml +27 -0
  1339. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/ToolItem.uxml.meta +10 -0
  1340. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/UpdatePopupWindow.uxml +23 -0
  1341. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/UpdatePopupWindow.uxml.meta +10 -0
  1342. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/elements/TemplateAlertPanel.uxml +8 -0
  1343. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/elements/TemplateAlertPanel.uxml.meta +10 -0
  1344. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml/elements.meta +8 -0
  1345. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI/uxml.meta +8 -0
  1346. package/vendor/plugin/com.atelierai.unity.copilot/Editor/UI.meta +8 -0
  1347. package/vendor/plugin/com.atelierai.unity.copilot/Editor.meta +8 -0
  1348. package/vendor/plugin/com.atelierai.unity.copilot/LICENSE +177 -0
  1349. package/vendor/plugin/com.atelierai.unity.copilot/LICENSE.meta +7 -0
  1350. package/vendor/plugin/com.atelierai.unity.copilot/README.md +88 -0
  1351. package/vendor/plugin/com.atelierai.unity.copilot/README.md.meta +7 -0
  1352. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/.gitignore +2 -0
  1353. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Attributes/ToolGroupAttribute.cs +87 -0
  1354. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Attributes/ToolGroupAttribute.cs.meta +11 -0
  1355. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Attributes.meta +8 -0
  1356. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/BoundsConverter.cs +108 -0
  1357. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/BoundsConverter.cs.meta +11 -0
  1358. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/BoundsIntConverter.cs +156 -0
  1359. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/BoundsIntConverter.cs.meta +11 -0
  1360. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Color32Converter.cs +113 -0
  1361. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Color32Converter.cs.meta +11 -0
  1362. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/ColorConverter.cs +112 -0
  1363. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/ColorConverter.cs.meta +11 -0
  1364. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/EntityIdConverter.cs +120 -0
  1365. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/EntityIdConverter.cs.meta +11 -0
  1366. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/GradientAlphaKeyConverter.cs +93 -0
  1367. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/GradientAlphaKeyConverter.cs.meta +11 -0
  1368. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/GradientColorKeyConverter.cs +92 -0
  1369. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/GradientColorKeyConverter.cs.meta +11 -0
  1370. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/GradientConverter.cs +140 -0
  1371. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/GradientConverter.cs.meta +11 -0
  1372. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/JsonFloatHelper.cs +116 -0
  1373. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/JsonFloatHelper.cs.meta +11 -0
  1374. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Matrix4x4Converter.cs +134 -0
  1375. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Matrix4x4Converter.cs.meta +11 -0
  1376. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/QuaternionConverter.cs +92 -0
  1377. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/QuaternionConverter.cs.meta +11 -0
  1378. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/RectConverter.cs +92 -0
  1379. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/RectConverter.cs.meta +11 -0
  1380. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/RectIntConverter.cs +93 -0
  1381. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/RectIntConverter.cs.meta +11 -0
  1382. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector2Converter.cs +82 -0
  1383. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector2Converter.cs.meta +11 -0
  1384. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector2IntConverter.cs +83 -0
  1385. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector2IntConverter.cs.meta +11 -0
  1386. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector3Converter.cs +46 -0
  1387. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector3Converter.cs.meta +11 -0
  1388. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector3IntConverter.cs +88 -0
  1389. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector3IntConverter.cs.meta +11 -0
  1390. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector4Converter.cs +92 -0
  1391. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures/Vector4Converter.cs.meta +11 -0
  1392. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Structures.meta +8 -0
  1393. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/AssetObjectRefConverter.cs +106 -0
  1394. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/AssetObjectRefConverter.cs.meta +11 -0
  1395. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/AssetObjectRefConverter.pre-Unity.6.5.cs +103 -0
  1396. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/AssetObjectRefConverter.pre-Unity.6.5.cs.meta +11 -0
  1397. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ComponentRefConverter.cs +95 -0
  1398. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ComponentRefConverter.cs.meta +11 -0
  1399. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ComponentRefConverter.pre-Unity.6.5.cs +91 -0
  1400. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ComponentRefConverter.pre-Unity.6.5.cs.meta +11 -0
  1401. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/GameObjectRefConverter.cs +115 -0
  1402. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/GameObjectRefConverter.cs.meta +11 -0
  1403. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/GameObjectRefConverter.pre-Unity.6.5.cs +111 -0
  1404. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/GameObjectRefConverter.pre-Unity.6.5.cs.meta +11 -0
  1405. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ObjectRefConverter.cs +82 -0
  1406. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ObjectRefConverter.cs.meta +11 -0
  1407. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ObjectRefConverter.pre-Unity.6.5.cs +79 -0
  1408. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/ObjectRefConverter.pre-Unity.6.5.cs.meta +11 -0
  1409. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/SceneRefConverter.cs +96 -0
  1410. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/SceneRefConverter.cs.meta +11 -0
  1411. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/SceneRefConverter.pre-Unity.6.5.cs +93 -0
  1412. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types/SceneRefConverter.pre-Unity.6.5.cs.meta +11 -0
  1413. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json/Types.meta +8 -0
  1414. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Json.meta +8 -0
  1415. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.Editor.cs +82 -0
  1416. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.Editor.cs.meta +11 -0
  1417. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.Editor.pre-Unity.6.5.cs +87 -0
  1418. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.Editor.pre-Unity.6.5.cs.meta +11 -0
  1419. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.Runtime.cs +52 -0
  1420. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.Runtime.cs.meta +11 -0
  1421. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.cs +20 -0
  1422. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Sprite_ReflectionConverter.cs.meta +11 -0
  1423. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.Editor.cs +83 -0
  1424. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.Editor.cs.meta +11 -0
  1425. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.Editor.pre-Unity.6.5.cs +87 -0
  1426. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.Editor.pre-Unity.6.5.cs.meta +11 -0
  1427. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.Runtime.cs +52 -0
  1428. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.Runtime.cs.meta +11 -0
  1429. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.cs +20 -0
  1430. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl/UnityEngine_Texture_ReflectionConverter.cs.meta +11 -0
  1431. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/Impl.meta +8 -0
  1432. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.Editor.cs +131 -0
  1433. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.Editor.cs.meta +11 -0
  1434. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.Editor.pre-Unity.6.5.cs +135 -0
  1435. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.Editor.pre-Unity.6.5.cs.meta +11 -0
  1436. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.Runtime.cs +70 -0
  1437. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.Runtime.cs.meta +11 -0
  1438. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.cs +19 -0
  1439. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_Asset_ReflectionConverter.cs.meta +11 -0
  1440. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_TextAsset_ReflectionConverter.cs +27 -0
  1441. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset/UnityEngine_TextAsset_ReflectionConverter.cs.meta +11 -0
  1442. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Asset.meta +8 -0
  1443. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Base/UnityArrayReflectionConverter.cs +33 -0
  1444. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Base/UnityArrayReflectionConverter.cs.meta +11 -0
  1445. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Base/UnityGenericReflectionConverter.cs +279 -0
  1446. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Base/UnityGenericReflectionConverter.cs.meta +11 -0
  1447. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Base.meta +8 -0
  1448. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Collider_ReflectionConverter.cs +34 -0
  1449. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Collider_ReflectionConverter.cs.meta +11 -0
  1450. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Component_ReflectionConverter.cs +19 -0
  1451. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Component_ReflectionConverter.cs.meta +11 -0
  1452. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_MeshFilter_ReflectionConverter.cs +26 -0
  1453. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_MeshFilter_ReflectionConverter.cs.meta +11 -0
  1454. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Renderer_ReflectionConverter.cs +27 -0
  1455. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Renderer_ReflectionConverter.cs.meta +11 -0
  1456. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Transform_ReflectionConverter.cs +27 -0
  1457. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl/UnityEngine_Transform_ReflectionConverter.cs.meta +11 -0
  1458. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/Impl.meta +8 -0
  1459. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/UnityEngine_GenericComponent_ReflectionConverter.cs +54 -0
  1460. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component/UnityEngine_GenericComponent_ReflectionConverter.cs.meta +11 -0
  1461. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Component.meta +8 -0
  1462. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityEngineDataStructReflectionConverters.cs +36 -0
  1463. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityEngineDataStructReflectionConverters.cs.meta +11 -0
  1464. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityEngine_EntityId_ReflectionConverter.cs +66 -0
  1465. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityEngine_EntityId_ReflectionConverter.cs.meta +11 -0
  1466. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityEngine_Scene_ReflectionConverter.cs +50 -0
  1467. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityEngine_Scene_ReflectionConverter.cs.meta +11 -0
  1468. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityGenericNoPropertiesReflectionConverter.cs +31 -0
  1469. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityGenericNoPropertiesReflectionConverter.cs.meta +11 -0
  1470. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityStructReflectionConverter.cs +19 -0
  1471. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct/UnityStructReflectionConverter.cs.meta +11 -0
  1472. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/Struct.meta +8 -0
  1473. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_GameObject_ReflectionConverter.cs +233 -0
  1474. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_GameObject_ReflectionConverter.cs.meta +11 -0
  1475. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_GameObject_ReflectionConverter.pre-Unity.6.5.cs +231 -0
  1476. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_GameObject_ReflectionConverter.pre-Unity.6.5.cs.meta +11 -0
  1477. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Gradient_ReflectionConverter.cs +65 -0
  1478. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Gradient_ReflectionConverter.cs.meta +11 -0
  1479. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.Editor.cs +162 -0
  1480. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.Editor.cs.meta +11 -0
  1481. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.Runtime.cs +130 -0
  1482. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.Runtime.cs.meta +11 -0
  1483. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.cs +392 -0
  1484. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.cs.meta +11 -0
  1485. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.pre-Unity.6.5.cs +392 -0
  1486. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Material_ReflectionConverter.pre-Unity.6.5.cs.meta +11 -0
  1487. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.Deserialize.cs +83 -0
  1488. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.Deserialize.cs.meta +11 -0
  1489. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.Modify.cs +223 -0
  1490. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.Modify.cs.meta +11 -0
  1491. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.Serialize.cs +88 -0
  1492. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.Serialize.cs.meta +11 -0
  1493. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.cs +38 -0
  1494. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection/UnityEngine_Object_ReflectionConverter.cs.meta +11 -0
  1495. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter/Reflection.meta +8 -0
  1496. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Converter.meta +8 -0
  1497. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/AssetObjectRef.cs +148 -0
  1498. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/AssetObjectRef.cs.meta +11 -0
  1499. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/AssetObjectRef.pre-Unity.6.5.cs +148 -0
  1500. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/AssetObjectRef.pre-Unity.6.5.cs.meta +11 -0
  1501. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentData.cs +57 -0
  1502. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentData.cs.meta +11 -0
  1503. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentDataShallow.cs +52 -0
  1504. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentDataShallow.cs.meta +11 -0
  1505. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentDataShallow.pre-Unity.6.5.cs +52 -0
  1506. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentDataShallow.pre-Unity.6.5.cs.meta +11 -0
  1507. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentRef.cs +93 -0
  1508. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentRef.cs.meta +11 -0
  1509. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentRef.pre-Unity.6.5.cs +93 -0
  1510. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentRef.pre-Unity.6.5.cs.meta +11 -0
  1511. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentRefList.cs +42 -0
  1512. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ComponentRefList.cs.meta +11 -0
  1513. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectComponentsRef.cs +47 -0
  1514. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectComponentsRef.cs.meta +11 -0
  1515. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectComponentsRefList.cs +43 -0
  1516. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectComponentsRefList.cs.meta +11 -0
  1517. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectData.cs +100 -0
  1518. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectData.cs.meta +11 -0
  1519. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectMetadata.cs +110 -0
  1520. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectMetadata.cs.meta +11 -0
  1521. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectMetadata.pre-Unity.6.5.cs +110 -0
  1522. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectMetadata.pre-Unity.6.5.cs.meta +11 -0
  1523. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectRef.cs +103 -0
  1524. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectRef.cs.meta +11 -0
  1525. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectRef.pre-Unity.6.5.cs +104 -0
  1526. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectRef.pre-Unity.6.5.cs.meta +11 -0
  1527. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectRefList.cs +41 -0
  1528. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/GameObjectRefList.cs.meta +11 -0
  1529. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ObjectRef.cs +62 -0
  1530. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ObjectRef.cs.meta +11 -0
  1531. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ObjectRef.pre-Unity.6.5.cs +61 -0
  1532. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/ObjectRef.pre-Unity.6.5.cs.meta +11 -0
  1533. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/PathPatch.cs +51 -0
  1534. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/PathPatch.cs.meta +11 -0
  1535. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneData.cs +72 -0
  1536. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneData.cs.meta +11 -0
  1537. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneDataShallow.cs +60 -0
  1538. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneDataShallow.cs.meta +11 -0
  1539. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneRef.cs +51 -0
  1540. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneRef.cs.meta +11 -0
  1541. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneRef.pre-Unity.6.5.cs +52 -0
  1542. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data/SceneRef.pre-Unity.6.5.cs.meta +11 -0
  1543. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Data.meta +8 -0
  1544. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsComponentRef.cs +44 -0
  1545. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsComponentRef.cs.meta +11 -0
  1546. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsComponentRef.pre-Unity.6.5.cs +44 -0
  1547. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsComponentRef.pre-Unity.6.5.cs.meta +11 -0
  1548. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsCompositeDisposable.cs +26 -0
  1549. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsCompositeDisposable.cs.meta +11 -0
  1550. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsJsonElement.cs +183 -0
  1551. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsJsonElement.cs.meta +11 -0
  1552. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsLogLevel.cs +32 -0
  1553. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsLogLevel.cs.meta +11 -0
  1554. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsNotificationData.cs +33 -0
  1555. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsNotificationData.cs.meta +11 -0
  1556. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsObject.cs +30 -0
  1557. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsObject.cs.meta +11 -0
  1558. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRequestCallTool.cs +36 -0
  1559. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRequestCallTool.cs.meta +11 -0
  1560. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeAssetObjectRef.cs +125 -0
  1561. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeAssetObjectRef.cs.meta +11 -0
  1562. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeAssetObjectRef.pre-Unity.6.5.cs +137 -0
  1563. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeAssetObjectRef.pre-Unity.6.5.cs.meta +11 -0
  1564. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeGameObjectRef.cs +45 -0
  1565. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeGameObjectRef.cs.meta +11 -0
  1566. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeObject.cs +65 -0
  1567. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeObject.cs.meta +11 -0
  1568. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeObjectRef.cs +38 -0
  1569. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeObjectRef.cs.meta +11 -0
  1570. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeObjectRef.pre-Unity.6.5.cs +42 -0
  1571. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsRuntimeObjectRef.pre-Unity.6.5.cs.meta +11 -0
  1572. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsString.cs +35 -0
  1573. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions/ExtensionsString.cs.meta +11 -0
  1574. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Extensions.meta +8 -0
  1575. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/PluginDiagnostics.cs +140 -0
  1576. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/PluginDiagnostics.cs.meta +11 -0
  1577. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/UnityLogger.cs +171 -0
  1578. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/UnityLogger.cs.meta +11 -0
  1579. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/UnityLoggerFactory.cs +37 -0
  1580. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/UnityLoggerFactory.cs.meta +11 -0
  1581. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/UnityLoggerProvider.cs +21 -0
  1582. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger/UnityLoggerProvider.cs.meta +11 -0
  1583. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Logger.meta +8 -0
  1584. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/BufferedFileLogStorage.cs +207 -0
  1585. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/BufferedFileLogStorage.cs.meta +11 -0
  1586. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/FileLogStorage.cs +547 -0
  1587. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/FileLogStorage.cs.meta +11 -0
  1588. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/ILogStorage.cs +47 -0
  1589. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/ILogStorage.cs.meta +11 -0
  1590. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/LogEntry.cs +99 -0
  1591. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/LogEntry.cs.meta +11 -0
  1592. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/UnityLogCollector.cs +280 -0
  1593. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs/UnityLogCollector.cs.meta +11 -0
  1594. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Logs.meta +8 -0
  1595. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Serialization/TestSerialization.cs +74 -0
  1596. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Serialization/TestSerialization.cs.meta +11 -0
  1597. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity/Serialization.meta +8 -0
  1598. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Unity.meta +8 -0
  1599. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Build.cs +243 -0
  1600. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Build.cs.meta +11 -0
  1601. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Config.cs +226 -0
  1602. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Config.cs.meta +11 -0
  1603. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Converters.cs +173 -0
  1604. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Converters.cs.meta +11 -0
  1605. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Log.cs +59 -0
  1606. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.Log.cs.meta +11 -0
  1607. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.cs +295 -0
  1608. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPlugin.cs.meta +11 -0
  1609. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginBuilder.cs +105 -0
  1610. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginBuilder.cs.meta +11 -0
  1611. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginRuntime.Static.cs +155 -0
  1612. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginRuntime.Static.cs.meta +11 -0
  1613. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginRuntime.cs +59 -0
  1614. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/UnityCopilotPluginRuntime.cs.meta +11 -0
  1615. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/EntityIdUtils.cs +102 -0
  1616. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/EntityIdUtils.cs.meta +11 -0
  1617. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/EnvironmentUtils.cs +386 -0
  1618. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/EnvironmentUtils.cs.meta +11 -0
  1619. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/ErrorUtils.cs +44 -0
  1620. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/ErrorUtils.cs.meta +11 -0
  1621. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Editor.cs +57 -0
  1622. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Editor.cs.meta +11 -0
  1623. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Editor.pre-Unity.6.5.cs +62 -0
  1624. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Editor.pre-Unity.6.5.cs.meta +11 -0
  1625. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Runtime.cs +46 -0
  1626. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Runtime.cs.meta +11 -0
  1627. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Runtime.pre-Unity.6.5.cs +46 -0
  1628. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.Runtime.pre-Unity.6.5.cs.meta +11 -0
  1629. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.cs +292 -0
  1630. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.cs.meta +11 -0
  1631. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.pre-Unity6.5.cs +292 -0
  1632. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/GameObjectUtils.pre-Unity6.5.cs.meta +11 -0
  1633. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/LogCallScope.cs +99 -0
  1634. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/LogCallScope.cs.meta +11 -0
  1635. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/LogLevel.cs +33 -0
  1636. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/LogLevel.cs.meta +11 -0
  1637. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/MainThread.Editor.cs +107 -0
  1638. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/MainThread.Editor.cs.meta +11 -0
  1639. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/MainThread.Player.cs +72 -0
  1640. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/MainThread.Player.cs.meta +11 -0
  1641. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/MainThreadDispatcher.cs +77 -0
  1642. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/MainThreadDispatcher.cs.meta +11 -0
  1643. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/Safe.cs +127 -0
  1644. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/Safe.cs.meta +11 -0
  1645. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/SceneUtils.Editor.cs +32 -0
  1646. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/SceneUtils.Editor.cs.meta +11 -0
  1647. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/SceneUtils.cs +32 -0
  1648. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/SceneUtils.cs.meta +11 -0
  1649. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/ShaderUtils.Editor.cs +32 -0
  1650. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/ShaderUtils.Editor.cs.meta +11 -0
  1651. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/ShaderUtils.cs +25 -0
  1652. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/ShaderUtils.cs.meta +11 -0
  1653. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/WeakAction.cs +137 -0
  1654. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils/WeakAction.cs.meta +11 -0
  1655. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/Utils.meta +8 -0
  1656. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/com.AtelierAI.Unity.Copilot.Runtime.asmdef +25 -0
  1657. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/com.AtelierAI.Unity.Copilot.Runtime.asmdef.meta +7 -0
  1658. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/link.xml +30 -0
  1659. package/vendor/plugin/com.atelierai.unity.copilot/Runtime/link.xml.meta +7 -0
  1660. package/vendor/plugin/com.atelierai.unity.copilot/Runtime.meta +8 -0
  1661. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/BlacklistTestScript.cs +54 -0
  1662. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/BlacklistTestScript.cs.meta +11 -0
  1663. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataFieldPopulationTestScript.cs +24 -0
  1664. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataFieldPopulationTestScript.cs.meta +11 -0
  1665. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataFieldPopulationTestScriptableObject.cs +24 -0
  1666. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataFieldPopulationTestScriptableObject.cs.meta +11 -0
  1667. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataPropertyPopulationTestScript.cs +24 -0
  1668. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataPropertyPopulationTestScript.cs.meta +11 -0
  1669. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataPropertyPopulationTestScriptableObject.cs +24 -0
  1670. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/DataPropertyPopulationTestScriptableObject.cs.meta +11 -0
  1671. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/GradientTest.cs +20 -0
  1672. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/GradientTest.cs.meta +11 -0
  1673. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/SolarSystem.cs +57 -0
  1674. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/SolarSystem.cs.meta +11 -0
  1675. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/StructFieldPopulationTestScript.cs +44 -0
  1676. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts/StructFieldPopulationTestScript.cs.meta +11 -0
  1677. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/Scripts.meta +8 -0
  1678. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/com.AtelierAI.Unity.Copilot.TestFiles.asmdef +16 -0
  1679. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles/com.AtelierAI.Unity.Copilot.TestFiles.asmdef.meta +7 -0
  1680. package/vendor/plugin/com.atelierai.unity.copilot/TestFiles.meta +8 -0
  1681. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/.gitignore +2 -0
  1682. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/AtomicApiTestFixtures.cs +99 -0
  1683. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/AtomicApiTestFixtures.cs.meta +11 -0
  1684. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/TryModifyAtTests.cs +227 -0
  1685. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/TryModifyAtTests.cs.meta +11 -0
  1686. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/TryPatchTests.cs +204 -0
  1687. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/TryPatchTests.cs.meta +11 -0
  1688. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/TryReadAtTests.cs +163 -0
  1689. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/TryReadAtTests.cs.meta +11 -0
  1690. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/ViewAndGrepTests.cs +224 -0
  1691. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi/ViewAndGrepTests.cs.meta +11 -0
  1692. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AtomicApi.meta +8 -0
  1693. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AuthoringSafetyPilotTests.cs +1050 -0
  1694. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/AuthoringSafetyPilotTests.cs.meta +11 -0
  1695. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/BaseTest.cs +395 -0
  1696. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/BaseTest.cs.meta +11 -0
  1697. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ConnectionManagerTests.cs +247 -0
  1698. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ConnectionManagerTests.cs.meta +11 -0
  1699. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ConsoleDiagnosticsTests.cs +216 -0
  1700. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ConsoleDiagnosticsTests.cs.meta +11 -0
  1701. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/CopilotServerManagerAutoStartTests.cs +43 -0
  1702. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/CopilotServerManagerAutoStartTests.cs.meta +11 -0
  1703. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DemoTest.cs +41 -0
  1704. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DemoTest.cs.meta +11 -0
  1705. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetExtractorDevelopmentDependencyTests.cs +148 -0
  1706. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetExtractorDevelopmentDependencyTests.cs.meta +11 -0
  1707. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetExtractorFlatLayoutTests.cs +166 -0
  1708. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetExtractorFlatLayoutTests.cs.meta +11 -0
  1709. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetInstallManifestTests.cs +436 -0
  1710. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetInstallManifestTests.cs.meta +11 -0
  1711. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetLegacyMigrationTests.cs +304 -0
  1712. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetLegacyMigrationTests.cs.meta +11 -0
  1713. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetLongPathPreflightTests.cs +142 -0
  1714. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetLongPathPreflightTests.cs.meta +11 -0
  1715. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetPackageInstallerStaleVersionCleanupTests.cs +200 -0
  1716. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver/NuGetPackageInstallerStaleVersionCleanupTests.cs.meta +11 -0
  1717. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/DependencyResolver.meta +8 -0
  1718. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/EditorOperationOwnerIntegrationTests.cs +132 -0
  1719. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/EditorOperationOwnerIntegrationTests.cs.meta +11 -0
  1720. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/EditorOperationSchedulingTests.cs +313 -0
  1721. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/EditorOperationSchedulingTests.cs.meta +11 -0
  1722. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Environment/EnvironmentUtilsTests.cs +320 -0
  1723. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Environment/EnvironmentUtilsTests.cs.meta +11 -0
  1724. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Environment/TestEnvironment.cs +52 -0
  1725. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Environment/TestEnvironment.cs.meta +11 -0
  1726. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Environment.meta +8 -0
  1727. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/FeedbackRegressionTests.cs +1014 -0
  1728. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/FeedbackRegressionTests.cs.meta +11 -0
  1729. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/BoundsConverterTests.cs +120 -0
  1730. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/BoundsConverterTests.cs.meta +11 -0
  1731. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/ColorConverterTests.cs +132 -0
  1732. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/ColorConverterTests.cs.meta +11 -0
  1733. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/GameObjectRefConverterTests.cs +317 -0
  1734. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/GameObjectRefConverterTests.cs.meta +11 -0
  1735. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/GradientConverterTests.cs +143 -0
  1736. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/GradientConverterTests.cs.meta +11 -0
  1737. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/MatrixConverterTests.cs +125 -0
  1738. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/MatrixConverterTests.cs.meta +11 -0
  1739. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/QuaternionConverterTests.cs +91 -0
  1740. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/QuaternionConverterTests.cs.meta +11 -0
  1741. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/RectConverterTests.cs +115 -0
  1742. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/RectConverterTests.cs.meta +11 -0
  1743. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/TestUtils.cs +88 -0
  1744. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/TestUtils.cs.meta +11 -0
  1745. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/VectorConverterTests.cs +449 -0
  1746. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters/VectorConverterTests.cs.meta +11 -0
  1747. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/JsonConverters.meta +8 -0
  1748. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/McpPluginTests.cs +105 -0
  1749. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/McpPluginTests.cs.meta +11 -0
  1750. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Project/VersionTest.cs +106 -0
  1751. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Project/VersionTest.cs.meta +11 -0
  1752. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Project.meta +8 -0
  1753. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/AssetObjectRefTests.cs +27 -0
  1754. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/AssetObjectRefTests.cs.meta +11 -0
  1755. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/BaseRefTests.cs +31 -0
  1756. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/BaseRefTests.cs.meta +11 -0
  1757. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/GameObjectRefTests.cs +27 -0
  1758. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/GameObjectRefTests.cs.meta +11 -0
  1759. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/ObjectRefTests.cs +26 -0
  1760. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes/ObjectRefTests.cs.meta +11 -0
  1761. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RefTypes.meta +8 -0
  1762. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/BlacklistTypeTests.cs +416 -0
  1763. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/BlacklistTypeTests.cs.meta +11 -0
  1764. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataFieldScriptableObjectPopulationTests.cs +172 -0
  1765. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataFieldScriptableObjectPopulationTests.cs.meta +11 -0
  1766. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataFieldScriptableObjectPopulationTests.pre-Unity.6.5.cs +169 -0
  1767. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataFieldScriptableObjectPopulationTests.pre-Unity.6.5.cs.meta +11 -0
  1768. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPopulationTests.cs +182 -0
  1769. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPopulationTests.cs.meta +11 -0
  1770. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPopulationTests.pre-Unity.6.5.cs +179 -0
  1771. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPopulationTests.pre-Unity.6.5.cs.meta +11 -0
  1772. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyPopulationTests.cs +175 -0
  1773. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyPopulationTests.cs.meta +11 -0
  1774. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyPopulationTests.pre-Unity.6.5.cs +174 -0
  1775. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyPopulationTests.pre-Unity.6.5.cs.meta +11 -0
  1776. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyScriptableObjectPopulationTests.cs +171 -0
  1777. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyScriptableObjectPopulationTests.cs.meta +11 -0
  1778. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyScriptableObjectPopulationTests.pre-Unity.6.5.cs +170 -0
  1779. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/DataPropertyScriptableObjectPopulationTests.pre-Unity.6.5.cs.meta +11 -0
  1780. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/StructPopulationTests.cs +344 -0
  1781. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter/StructPopulationTests.cs.meta +11 -0
  1782. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ReflectionConverter.meta +8 -0
  1783. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RunToolTests.cs +275 -0
  1784. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/RunToolTests.cs.meta +11 -0
  1785. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/SceneSandboxHygieneTests.cs +243 -0
  1786. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/SceneSandboxHygieneTests.cs.meta +11 -0
  1787. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ScriptExecuteFailureSurfacingTests.cs +60 -0
  1788. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ScriptExecuteFailureSurfacingTests.cs.meta +11 -0
  1789. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/SpriteConverterTest.cs +103 -0
  1790. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/SpriteConverterTest.cs.meta +11 -0
  1791. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/TestGameObjectUtils.cs +65 -0
  1792. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/TestGameObjectUtils.cs.meta +11 -0
  1793. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/TestInfrastructureValidation.cs +45 -0
  1794. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/TestInfrastructureValidation.cs.meta +11 -0
  1795. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/TestsOperationProvenanceTests.cs +166 -0
  1796. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/TestsOperationProvenanceTests.cs.meta +11 -0
  1797. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsCreateFolderTests.cs +243 -0
  1798. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsCreateFolderTests.cs.meta +11 -0
  1799. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsFindBuiltInTests.cs +550 -0
  1800. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsFindBuiltInTests.cs.meta +11 -0
  1801. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsGetDataWithBuiltInTests.cs +66 -0
  1802. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsGetDataWithBuiltInTests.cs.meta +11 -0
  1803. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsMaterialModifyTests.cs +81 -0
  1804. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsMaterialModifyTests.cs.meta +11 -0
  1805. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsMaterialTests.cs +101 -0
  1806. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsMaterialTests.cs.meta +11 -0
  1807. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsPrefabCreateTests.cs +348 -0
  1808. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsPrefabCreateTests.cs.meta +11 -0
  1809. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsPrefabCreateTests.pre-Unity.6.5.cs +348 -0
  1810. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsPrefabCreateTests.pre-Unity.6.5.cs.meta +11 -0
  1811. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsShaderTests.cs +194 -0
  1812. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets/AssetsShaderTests.cs.meta +11 -0
  1813. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Assets.meta +8 -0
  1814. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Console/TestLogUtils.cs +608 -0
  1815. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Console/TestLogUtils.cs.meta +11 -0
  1816. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Console/TestToolConsole.cs +480 -0
  1817. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Console/TestToolConsole.cs.meta +11 -0
  1818. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Console/TestToolConsoleIntegration.cs +305 -0
  1819. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Console/TestToolConsoleIntegration.cs.meta +11 -0
  1820. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Console.meta +8 -0
  1821. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Docs/DocsUrlAndParserTests.cs +195 -0
  1822. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Docs/DocsUrlAndParserTests.cs.meta +11 -0
  1823. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Docs.meta +8 -0
  1824. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestJsonSchema.cs +199 -0
  1825. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestJsonSchema.cs.meta +11 -0
  1826. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestJsonSerialize.cs +101 -0
  1827. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestJsonSerialize.cs.meta +11 -0
  1828. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestSerializer.cs +208 -0
  1829. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestSerializer.cs.meta +11 -0
  1830. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestStringUtils.cs +53 -0
  1831. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestStringUtils.cs.meta +11 -0
  1832. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ComponentListAll.cs +247 -0
  1833. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ComponentListAll.cs.meta +11 -0
  1834. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.Find.cs +451 -0
  1835. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.Find.cs.meta +11 -0
  1836. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.Find.pre-Unity.6.5.cs +451 -0
  1837. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.Find.pre-Unity.6.5.cs.meta +11 -0
  1838. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.GetComponents.cs +91 -0
  1839. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.GetComponents.cs.meta +11 -0
  1840. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.GetComponents.pre-Unity.6.5.cs +91 -0
  1841. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.GetComponents.pre-Unity.6.5.cs.meta +11 -0
  1842. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.Gradient.cs +150 -0
  1843. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.Gradient.cs.meta +11 -0
  1844. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.Gradient.pre-Unity.6.5.cs +150 -0
  1845. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.Gradient.pre-Unity.6.5.cs.meta +11 -0
  1846. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.cs +565 -0
  1847. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.cs.meta +11 -0
  1848. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.pre-Unity.6.5.cs +565 -0
  1849. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.ModifyComponent.pre-Unity.6.5.cs.meta +11 -0
  1850. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.cs +38 -0
  1851. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolGameObject.cs.meta +11 -0
  1852. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolReflection.MethodCall.cs +211 -0
  1853. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolReflection.MethodCall.cs.meta +11 -0
  1854. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolReflection.MethodFind.cs +63 -0
  1855. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject/TestToolReflection.MethodFind.cs.meta +11 -0
  1856. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/GameObject.meta +8 -0
  1857. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Object/ObjectGetDataTests.cs +298 -0
  1858. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Object/ObjectGetDataTests.cs.meta +11 -0
  1859. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Object/ObjectGetDataTests.pre-Unity.6.5.cs +298 -0
  1860. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Object/ObjectGetDataTests.pre-Unity.6.5.cs.meta +11 -0
  1861. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Object/ObjectModifyTests.cs +146 -0
  1862. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Object/ObjectModifyTests.cs.meta +11 -0
  1863. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Object.meta +8 -0
  1864. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/PathBasedToolTests.cs +573 -0
  1865. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/PathBasedToolTests.cs.meta +11 -0
  1866. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/PathBasedToolTests.pre-Unity.6.5.cs +513 -0
  1867. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/PathBasedToolTests.pre-Unity.6.5.cs.meta +11 -0
  1868. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/RunToolStructuredContentTests.cs +759 -0
  1869. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/RunToolStructuredContentTests.cs.meta +11 -0
  1870. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotCameraTests.cs +154 -0
  1871. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotCameraTests.cs.meta +11 -0
  1872. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotCameraTests.pre-Unity.6.5.cs +154 -0
  1873. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotCameraTests.pre-Unity.6.5.cs.meta +11 -0
  1874. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotGameViewTests.cs +164 -0
  1875. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotGameViewTests.cs.meta +11 -0
  1876. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotIsolatedTests.cs +325 -0
  1877. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotIsolatedTests.cs.meta +11 -0
  1878. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotSceneViewTests.cs +155 -0
  1879. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot/ScreenshotSceneViewTests.cs.meta +11 -0
  1880. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Screenshot.meta +8 -0
  1881. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Script/CSharpTokenizerTests.cs +219 -0
  1882. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Script/CSharpTokenizerTests.cs.meta +11 -0
  1883. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Script/ScriptApplyEditsTests.cs +349 -0
  1884. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Script/ScriptApplyEditsTests.cs.meta +11 -0
  1885. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Script/ScriptExecuteTests.cs +401 -0
  1886. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Script/ScriptExecuteTests.cs.meta +11 -0
  1887. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Script.meta +8 -0
  1888. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tests/TestsRunDirtySceneTests.cs +122 -0
  1889. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tests/TestsRunDirtySceneTests.cs.meta +11 -0
  1890. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tests.meta +8 -0
  1891. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tool/ToolListTests.cs +362 -0
  1892. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tool/ToolListTests.cs.meta +11 -0
  1893. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tool/ToolSetEnabledStateTests.cs +410 -0
  1894. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tool/ToolSetEnabledStateTests.cs.meta +11 -0
  1895. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Tool.meta +8 -0
  1896. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolParameterTests.cs +56 -0
  1897. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolParameterTests.cs.meta +11 -0
  1898. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolThreadSafetyTests.cs +651 -0
  1899. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolThreadSafetyTests.cs.meta +11 -0
  1900. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolThreadSafetyTests.pre-Unity.6.5.cs +651 -0
  1901. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/ToolThreadSafetyTests.pre-Unity.6.5.cs.meta +11 -0
  1902. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Type/TypeGetJsonSchemaTests.cs +320 -0
  1903. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Type/TypeGetJsonSchemaTests.cs.meta +11 -0
  1904. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool/Type.meta +8 -0
  1905. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Tool.meta +8 -0
  1906. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ToolBatchExecutionIntegrationTests.cs +407 -0
  1907. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ToolBatchExecutionIntegrationTests.cs.meta +2 -0
  1908. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ToolsManifestGeneratorTests.cs +200 -0
  1909. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/ToolsManifestGeneratorTests.cs.meta +11 -0
  1910. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/UI/MainWindowEditor.StatusLogicTests.cs +301 -0
  1911. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/UI/MainWindowEditor.StatusLogicTests.cs.meta +11 -0
  1912. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/UI/SceneViewToolbarOverlayTests.cs +75 -0
  1913. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/UI/SceneViewToolbarOverlayTests.cs.meta +11 -0
  1914. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/UI/TokenCounterTests.cs +85 -0
  1915. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/UI/TokenCounterTests.cs.meta +11 -0
  1916. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/UI.meta +8 -0
  1917. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/BuiltInAssetCacheTests.cs +79 -0
  1918. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/BuiltInAssetCacheTests.cs.meta +11 -0
  1919. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/AddComponentExecutor.cs +81 -0
  1920. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/AddComponentExecutor.cs.meta +11 -0
  1921. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/AddComponentExecutor.pre-Unity.6.5.cs +81 -0
  1922. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/AddComponentExecutor.pre-Unity.6.5.cs.meta +11 -0
  1923. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/BaseCreateAssetExecutor.cs +38 -0
  1924. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/BaseCreateAssetExecutor.cs.meta +11 -0
  1925. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CallToolExecutor.cs +59 -0
  1926. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CallToolExecutor.cs.meta +11 -0
  1927. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/Core/LazyNodeExecutor.Composition.cs +211 -0
  1928. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/Core/LazyNodeExecutor.Composition.cs.meta +11 -0
  1929. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/Core/LazyNodeExecutor.cs +171 -0
  1930. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/Core/LazyNodeExecutor.cs.meta +11 -0
  1931. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/Core.meta +8 -0
  1932. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateFolderExecutor.cs +87 -0
  1933. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateFolderExecutor.cs.meta +11 -0
  1934. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateGameObjectExecutor.cs +137 -0
  1935. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateGameObjectExecutor.cs.meta +11 -0
  1936. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateGameObjectExecutor.pre-Unity.6.5.cs +137 -0
  1937. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateGameObjectExecutor.pre-Unity.6.5.cs.meta +11 -0
  1938. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateMaterialExecutor.cs +38 -0
  1939. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateMaterialExecutor.cs.meta +11 -0
  1940. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreatePrefabExecutor.cs +67 -0
  1941. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreatePrefabExecutor.cs.meta +11 -0
  1942. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateScriptableObjectExecutor.cs +45 -0
  1943. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateScriptableObjectExecutor.cs.meta +11 -0
  1944. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateShaderExecutor.cs +39 -0
  1945. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateShaderExecutor.cs.meta +11 -0
  1946. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateSpriteExecutor.cs +70 -0
  1947. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateSpriteExecutor.cs.meta +11 -0
  1948. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateTextureExecutor.cs +61 -0
  1949. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/CreateTextureExecutor.cs.meta +11 -0
  1950. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/DynamicCallToolExecutor.cs +60 -0
  1951. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/DynamicCallToolExecutor.cs.meta +11 -0
  1952. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/ValidateToolResultExecutor.cs +47 -0
  1953. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor/ValidateToolResultExecutor.cs.meta +11 -0
  1954. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/Executor.meta +8 -0
  1955. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/JsonFiller.cs +90 -0
  1956. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/JsonFiller.cs.meta +11 -0
  1957. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/PlayerPrefsValuesTests.cs +147 -0
  1958. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/PlayerPrefsValuesTests.cs.meta +11 -0
  1959. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/UpdateCheckerTests.cs +549 -0
  1960. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils/UpdateCheckerTests.cs.meta +11 -0
  1961. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/Utils.meta +8 -0
  1962. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/com.AtelierAI.Unity.Copilot.Editor.Tests.asmdef +34 -0
  1963. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor/com.AtelierAI.Unity.Copilot.Editor.Tests.asmdef.meta +7 -0
  1964. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Editor.meta +8 -0
  1965. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Runtime/.gitignore +2 -0
  1966. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Runtime/DemoTest.cs +44 -0
  1967. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Runtime/DemoTest.cs.meta +11 -0
  1968. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Runtime/com.AtelierAI.Unity.Copilot.Tests.asmdef +31 -0
  1969. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Runtime/com.AtelierAI.Unity.Copilot.Tests.asmdef.meta +7 -0
  1970. package/vendor/plugin/com.atelierai.unity.copilot/Tests/Runtime.meta +8 -0
  1971. package/vendor/plugin/com.atelierai.unity.copilot/Tests.meta +8 -0
  1972. package/vendor/plugin/com.atelierai.unity.copilot/package.json +33 -0
  1973. package/vendor/plugin/com.atelierai.unity.copilot/package.json.meta +7 -0
  1974. package/vendor/plugin/com.atelierai.unity.copilot/tools-manifest.json +20551 -0
  1975. package/vendor/plugin/com.atelierai.unity.copilot/tools-manifest.json.meta +7 -0
@@ -0,0 +1,4299 @@
1
+ // AUTO-GENERATED by uco codegen — do not edit by hand.
2
+ // Regenerate with: `npm run gen --silent -- <unity-project-path>`
3
+ // or programmatically via src/codegen/{fetch,emit}.ts.
4
+ //
5
+ // Source: GET /api/tools from a Unity-MCP server (IvanMurzak/Unity-MCP).
6
+ // Each tool becomes a top-level commander subcommand whose flags
7
+ // mirror its inputSchema.properties — required → .requiredOption(),
8
+ // optional → .option(), with smart coercion for Vector3 / GameObjectRef
9
+ // shorthand, enums via .choices(), and JSON for nested objects/arrays.
10
+ import { Option } from 'commander';
11
+ import { runCommand } from '../util/cli-context.js';
12
+ import { addToolCallControlOptions, toolCallOptionsFromCli } from '../util/call-control.js';
13
+ import { coerceVec3, coerceGameObjectRef, coerceInteger, coerceNumber, coerceBoolean, coerceJson } from '../codegen/coerce.js';
14
+ import { resolveTextInput } from '../util/input.js';
15
+ export const GENERATED_TOOL_NAMES = [
16
+ "assets-copy",
17
+ "assets-create-folder",
18
+ "assets-delete",
19
+ "assets-find",
20
+ "assets-find-built-in",
21
+ "assets-get-data",
22
+ "assets-material-create",
23
+ "assets-modify",
24
+ "assets-move",
25
+ "assets-prefab-close",
26
+ "assets-prefab-create",
27
+ "assets-prefab-instantiate",
28
+ "assets-prefab-open",
29
+ "assets-prefab-save",
30
+ "assets-refresh",
31
+ "assets-shader-get-data",
32
+ "assets-shader-list-all",
33
+ "batch-execute",
34
+ "build-job-cancel",
35
+ "build-job-get",
36
+ "build-job-list",
37
+ "build-player",
38
+ "build-scene-add",
39
+ "build-scene-list",
40
+ "build-scene-remove",
41
+ "build-switch-platform",
42
+ "camera-cm-set-default-blend",
43
+ "camera-cm-vcam-configure",
44
+ "camera-cm-vcam-priority",
45
+ "camera-configure",
46
+ "camera-get-data",
47
+ "camera-list-all",
48
+ "console-clear-logs",
49
+ "console-get-logs",
50
+ "docs-get-manual",
51
+ "docs-get-package",
52
+ "docs-get-script-reference",
53
+ "docs-lookup",
54
+ "editor-application-get-state",
55
+ "editor-application-set-state",
56
+ "editor-execute-menu-item",
57
+ "editor-operation-cancel",
58
+ "editor-operation-get",
59
+ "editor-operation-list",
60
+ "editor-selection-get",
61
+ "editor-selection-set",
62
+ "frame-debugger-disable",
63
+ "frame-debugger-enable",
64
+ "frame-debugger-get-events",
65
+ "gameobject-component-add",
66
+ "gameobject-component-destroy",
67
+ "gameobject-component-get",
68
+ "gameobject-component-list-all",
69
+ "gameobject-component-modify",
70
+ "gameobject-create",
71
+ "gameobject-destroy",
72
+ "gameobject-duplicate",
73
+ "gameobject-find",
74
+ "gameobject-modify",
75
+ "gameobject-set-parent",
76
+ "graphics-lightbake-cancel",
77
+ "graphics-lightbake-clear",
78
+ "graphics-lightbake-start",
79
+ "graphics-lightbake-status",
80
+ "graphics-rendering-stats",
81
+ "graphics-urp-asset-get",
82
+ "graphics-urp-asset-set",
83
+ "graphics-urp-renderer-feature-add",
84
+ "graphics-urp-renderer-feature-configure",
85
+ "graphics-urp-renderer-feature-list",
86
+ "graphics-urp-renderer-feature-remove",
87
+ "graphics-volume-add-override",
88
+ "graphics-volume-create",
89
+ "graphics-volume-list",
90
+ "graphics-volume-remove-override",
91
+ "graphics-volume-set-field",
92
+ "instance-get-current",
93
+ "instance-list-all",
94
+ "object-get-data",
95
+ "object-modify",
96
+ "package-add",
97
+ "package-list",
98
+ "package-remove",
99
+ "package-search",
100
+ "physics-collision-matrix-get",
101
+ "physics-collision-matrix-set",
102
+ "physics-force-apply",
103
+ "physics-joint-add",
104
+ "physics-joint-configure",
105
+ "physics-joint-remove",
106
+ "physics-linecast",
107
+ "physics-material-assign",
108
+ "physics-material-configure",
109
+ "physics-material-create",
110
+ "physics-overlap",
111
+ "physics-raycast",
112
+ "physics-raycast-all",
113
+ "physics-rigidbody-configure",
114
+ "physics-rigidbody-get",
115
+ "physics-settings-get",
116
+ "physics-settings-set",
117
+ "physics-shapecast",
118
+ "physics-simulate-step",
119
+ "physics-validate",
120
+ "profiler-get-counters",
121
+ "profiler-get-frame-timing",
122
+ "profiler-get-object-memory",
123
+ "profiler-memory-snapshot-compare",
124
+ "profiler-memory-snapshot-list",
125
+ "profiler-memory-snapshot-take",
126
+ "profiler-set-areas",
127
+ "profiler-start",
128
+ "profiler-status",
129
+ "profiler-stop",
130
+ "reflection-method-call",
131
+ "reflection-method-find",
132
+ "scene-create",
133
+ "scene-get-data",
134
+ "scene-list-opened",
135
+ "scene-open",
136
+ "scene-save",
137
+ "scene-set-active",
138
+ "scene-unload",
139
+ "screenshot-camera",
140
+ "screenshot-game-view",
141
+ "screenshot-isolated",
142
+ "screenshot-scene-view",
143
+ "script-apply-edits",
144
+ "script-delete",
145
+ "script-execute",
146
+ "script-find-in-file",
147
+ "script-get-sha",
148
+ "script-read",
149
+ "script-update-or-create",
150
+ "script-validate",
151
+ "tests-job-cancel",
152
+ "tests-job-get",
153
+ "tests-job-list",
154
+ "tests-run",
155
+ "texture-create-checker",
156
+ "texture-create-gradient",
157
+ "texture-create-noise",
158
+ "texture-create-solid",
159
+ "texture-read",
160
+ "tool-set-enabled-state",
161
+ "tools-list-groups",
162
+ "tools-set-group-enabled",
163
+ "type-get-json-schema",
164
+ "ui-document-attach",
165
+ "ui-document-detach",
166
+ "ui-element-query",
167
+ "ui-uss-create",
168
+ "ui-uss-modify",
169
+ "ui-uss-read",
170
+ "ui-uxml-create",
171
+ "ui-uxml-modify",
172
+ "ui-uxml-read",
173
+ "unity-tool-list",
174
+ "vfx-graph-configure",
175
+ "vfx-particle-configure",
176
+ "vfx-particle-control",
177
+ "vfx-particle-get",
178
+ "vfx-trail-configure",
179
+ ];
180
+ /** Tools the server has marked disabled in its config at codegen time. */
181
+ export const DEFAULT_DISABLED_TOOLS = [
182
+ "assets-copy",
183
+ "assets-create-folder",
184
+ "assets-delete",
185
+ "assets-move",
186
+ "console-clear-logs",
187
+ "editor-application-get-state",
188
+ "editor-application-set-state",
189
+ "editor-execute-menu-item",
190
+ "editor-selection-get",
191
+ "editor-selection-set",
192
+ "frame-debugger-disable",
193
+ "frame-debugger-enable",
194
+ "frame-debugger-get-events",
195
+ "instance-get-current",
196
+ "instance-list-all",
197
+ "package-add",
198
+ "package-list",
199
+ "package-remove",
200
+ "package-search",
201
+ "profiler-get-counters",
202
+ "profiler-get-frame-timing",
203
+ "profiler-get-object-memory",
204
+ "profiler-memory-snapshot-compare",
205
+ "profiler-memory-snapshot-list",
206
+ "profiler-memory-snapshot-take",
207
+ "profiler-set-areas",
208
+ "profiler-start",
209
+ "profiler-status",
210
+ "profiler-stop",
211
+ "screenshot-camera",
212
+ "screenshot-game-view",
213
+ "screenshot-scene-view",
214
+ "script-apply-edits",
215
+ "script-delete",
216
+ "script-get-sha",
217
+ "script-read",
218
+ "script-update-or-create",
219
+ "tool-set-enabled-state",
220
+ ];
221
+ export function registerGeneratedTools(program) {
222
+ // Assets / Copy
223
+ {
224
+ const cmd = program
225
+ .command("assets-copy")
226
+ .description("Copy assets at given paths and store them at new paths. Does AssetDatabase.Refresh() at the end. Use 'assets-find' tool to find assets before copying.");
227
+ cmd.addOption(new Option("--destinationPaths <json>", "The paths to store the copied assets.").argParser(coerceJson).makeOptionMandatory(true));
228
+ cmd.addOption(new Option("--sourcePaths <json>", "The paths of the assets to copy.").argParser(coerceJson).makeOptionMandatory(true));
229
+ addToolCallControlOptions(cmd);
230
+ cmd.action(function (_opts) {
231
+ return runCommand(this, async (ctx) => {
232
+ const opts = this.opts();
233
+ const args = {};
234
+ if (opts["destinationPaths"] !== undefined)
235
+ args["destinationPaths"] = opts["destinationPaths"];
236
+ if (opts["sourcePaths"] !== undefined)
237
+ args["sourcePaths"] = opts["sourcePaths"];
238
+ return ctx.transport.callTool("assets-copy", args, toolCallOptionsFromCli(opts));
239
+ })();
240
+ });
241
+ }
242
+ // Assets / Create Folder
243
+ {
244
+ const cmd = program
245
+ .command("assets-create-folder")
246
+ .description("Creates a new folder in the specified parent folder. The parent folder string must start with the 'Assets' folder, and all folders within the parent folder string must already exist. For example, when specifying 'Assets/ParentFolder1/ParentFolder2/', the new folder will be created in 'ParentFolder2' only if ParentFolder1 and ParentFolder2 already exist. Use it to organize scripts and assets in the project. Does AssetDatabase.Refresh() at the end. Returns the GUID of the newly created folder, if successful.");
247
+ cmd.addOption(new Option("--inputs <json>", "The paths for the folders to create.").argParser(coerceJson).makeOptionMandatory(true));
248
+ addToolCallControlOptions(cmd);
249
+ cmd.action(function (_opts) {
250
+ return runCommand(this, async (ctx) => {
251
+ const opts = this.opts();
252
+ const args = {};
253
+ if (opts["inputs"] !== undefined)
254
+ args["inputs"] = opts["inputs"];
255
+ return ctx.transport.callTool("assets-create-folder", args, toolCallOptionsFromCli(opts));
256
+ })();
257
+ });
258
+ }
259
+ // Assets / Delete
260
+ {
261
+ const cmd = program
262
+ .command("assets-delete")
263
+ .description("Delete the assets at paths from the project. Does AssetDatabase.Refresh() at the end. Use 'assets-find' tool to find assets before deleting.");
264
+ cmd.addOption(new Option("--paths <json>", "The paths of the assets").argParser(coerceJson).makeOptionMandatory(true));
265
+ addToolCallControlOptions(cmd);
266
+ cmd.action(function (_opts) {
267
+ return runCommand(this, async (ctx) => {
268
+ const opts = this.opts();
269
+ const args = {};
270
+ if (opts["paths"] !== undefined)
271
+ args["paths"] = opts["paths"];
272
+ return ctx.transport.callTool("assets-delete", args, toolCallOptionsFromCli(opts));
273
+ })();
274
+ });
275
+ }
276
+ // Assets / Find
277
+ {
278
+ const cmd = program
279
+ .command("assets-find")
280
+ .description("Search the asset database using the search filter string. Allows you to search for Assets. The string argument can provide names, labels or types (classnames).");
281
+ cmd.addOption(new Option("--filter <string>", "The filter string can contain search data. Could be empty. Name: Filter assets by their filename (without extension). Words separated by whitespace are treated as separate name searches. Labels (l:): Assets can have labels attached to them. Use 'l:' before each label. Types (t:): Find assets based on explicitly identified types. Use 't:' keyword. Available types: AnimationClip, AudioClip, AudioMixer, ComputeShader, Font, GUISkin, Material, Mesh, Model, PhysicMaterial, Prefab, Scene, Script, Shader, Sprite, Texture, VideoClip, VisualEffectAsset, VisualEffectSubgraph. AssetBundles (b:): Find assets which are part of an Asset bundle. Area (a:): Find assets in a specific area. Valid values are 'all', 'assets', and 'packages'. Globbing (glob:): Use globbing to match specific rules. Note: Searching is case insensitive."));
282
+ cmd.addOption(new Option("--maxResults <int>", "Maximum number of assets to return. If the number of found assets exceeds this limit, the result will be truncated.").argParser(coerceInteger));
283
+ cmd.addOption(new Option("--searchInFolders <json>", "The folders where the search will start. If null, the search will be performed in all folders.").argParser(coerceJson));
284
+ addToolCallControlOptions(cmd);
285
+ cmd.action(function (_opts) {
286
+ return runCommand(this, async (ctx) => {
287
+ const opts = this.opts();
288
+ const args = {};
289
+ if (opts["filter"] !== undefined)
290
+ args["filter"] = opts["filter"];
291
+ if (opts["maxResults"] !== undefined)
292
+ args["maxResults"] = opts["maxResults"];
293
+ if (opts["searchInFolders"] !== undefined)
294
+ args["searchInFolders"] = opts["searchInFolders"];
295
+ return ctx.transport.callTool("assets-find", args, toolCallOptionsFromCli(opts));
296
+ })();
297
+ });
298
+ }
299
+ // Assets / Find (Built-in)
300
+ {
301
+ const cmd = program
302
+ .command("assets-find-built-in")
303
+ .description("Search the built-in assets of the Unity Editor located in the built-in resources: Resources/unity_builtin_extra. Doesn't support GUIDs since built-in assets do not have them.");
304
+ cmd.addOption(new Option("--maxResults <int>", "Maximum number of assets to return. If the number of found assets exceeds this limit, the result will be truncated.").argParser(coerceInteger));
305
+ cmd.addOption(new Option("--name <string>", "The name of the asset to filter by."));
306
+ cmd.addOption(new Option("--type <string>", "The type of the asset to filter by."));
307
+ addToolCallControlOptions(cmd);
308
+ cmd.action(function (_opts) {
309
+ return runCommand(this, async (ctx) => {
310
+ const opts = this.opts();
311
+ const args = {};
312
+ if (opts["maxResults"] !== undefined)
313
+ args["maxResults"] = opts["maxResults"];
314
+ if (opts["name"] !== undefined)
315
+ args["name"] = opts["name"];
316
+ if (opts["type"] !== undefined)
317
+ args["type"] = opts["type"];
318
+ return ctx.transport.callTool("assets-find-built-in", args, toolCallOptionsFromCli(opts));
319
+ })();
320
+ });
321
+ }
322
+ // Assets / Get Data
323
+ {
324
+ const cmd = program
325
+ .command("assets-get-data")
326
+ .description("Get asset data from the asset file in the Unity project. It includes all serializable fields and properties of the asset. Use 'assets-find' tool to find asset before using this tool. Path-scoped reads (token-saving): supply 'paths' (a list of paths) to read only the listed fields/elements via Reflector.TryReadAt, or 'viewQuery' (a ViewQuery) to navigate to a subtree and/or filter by name regex / max depth / type via Reflector.View. These two parameters are mutually exclusive — supply at most one. When neither is supplied the full asset is serialized as before (backwards compatible). Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
327
+ cmd.addOption(new Option("--assetRef <json>", "Reference to UnityEngine.Object asset instance. It could be Material, ScriptableObject, Prefab, and any other Asset. Anything located in the Assets and Packages folders.").argParser(coerceJson).makeOptionMandatory(true));
328
+ cmd.addOption(new Option("--paths <json>", "Optional. List of paths to read individually via Reflector.TryReadAt. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Mutually exclusive with 'viewQuery'.").argParser(coerceJson));
329
+ cmd.addOption(new Option("--viewQuery <json>", "Optional. View-query filter routed through Reflector.View — combines a starting Path, a case-insensitive NamePattern regex, MaxDepth, and an optional TypeFilter. Mutually exclusive with 'paths'.").argParser(coerceJson));
330
+ addToolCallControlOptions(cmd);
331
+ cmd.action(function (_opts) {
332
+ return runCommand(this, async (ctx) => {
333
+ const opts = this.opts();
334
+ const args = {};
335
+ if (opts["assetRef"] !== undefined)
336
+ args["assetRef"] = opts["assetRef"];
337
+ if (opts["paths"] !== undefined)
338
+ args["paths"] = opts["paths"];
339
+ if (opts["viewQuery"] !== undefined)
340
+ args["viewQuery"] = opts["viewQuery"];
341
+ return ctx.transport.callTool("assets-get-data", args, toolCallOptionsFromCli(opts));
342
+ })();
343
+ });
344
+ }
345
+ // Assets / Create Material
346
+ {
347
+ const cmd = program
348
+ .command("assets-material-create")
349
+ .description("Create new material asset with default parameters. Creates folders recursively if they do not exist. Provide proper 'shaderName' - use 'assets-shader-list-all' tool to find available shaders.");
350
+ cmd.addOption(new Option("--assetPath <string>", "Asset path. Starts with 'Assets/'. Ends with '.mat'.").makeOptionMandatory(true));
351
+ cmd.addOption(new Option("--shaderName <string>", "Name of the shader that need to be used to create the material.").makeOptionMandatory(true));
352
+ addToolCallControlOptions(cmd);
353
+ cmd.action(function (_opts) {
354
+ return runCommand(this, async (ctx) => {
355
+ const opts = this.opts();
356
+ const args = {};
357
+ if (opts["assetPath"] !== undefined)
358
+ args["assetPath"] = opts["assetPath"];
359
+ if (opts["shaderName"] !== undefined)
360
+ args["shaderName"] = opts["shaderName"];
361
+ return ctx.transport.callTool("assets-material-create", args, toolCallOptionsFromCli(opts));
362
+ })();
363
+ });
364
+ }
365
+ // Assets / Modify
366
+ {
367
+ const cmd = program
368
+ .command("assets-modify")
369
+ .description("Modify asset file in the project. Use 'assets-get-data' tool first to inspect the asset structure before modifying. Not allowed to modify asset file in 'Packages/' folder. Please modify it in 'Assets/' folder. Three modification surfaces (use whichever fits the task): 1. 'content' — full SerializedMember override (legacy, backwards compatible). 2. 'pathPatches' — list of {path, value} pairs routed through Reflector.TryModifyAt. 3. 'jsonPatch' — JSON Merge Patch routed through Reflector.TryPatch. When more than one is supplied they run in this order: jsonPatch → pathPatches → content. At least one is required. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
370
+ cmd.addOption(new Option("--assetRef <json>", "Reference to UnityEngine.Object asset instance. It could be Material, ScriptableObject, Prefab, and any other Asset. Anything located in the Assets and Packages folders.").argParser(coerceJson).makeOptionMandatory(true));
371
+ cmd.addOption(new Option("--content <json>", "Optional. The asset content. It overrides the existing asset content (legacy path).").argParser(coerceJson));
372
+ cmd.addOption(new Option("--jsonPatch <string>", "Optional. JSON Merge Patch (RFC 7396, extended with [i]/[key] keys) routed through Reflector.TryPatch."));
373
+ cmd.addOption(new Option("--pathPatches <json>", "Optional. List of path-scoped patches routed through Reflector.TryModifyAt.").argParser(coerceJson));
374
+ addToolCallControlOptions(cmd);
375
+ cmd.action(function (_opts) {
376
+ return runCommand(this, async (ctx) => {
377
+ const opts = this.opts();
378
+ const args = {};
379
+ if (opts["assetRef"] !== undefined)
380
+ args["assetRef"] = opts["assetRef"];
381
+ if (opts["content"] !== undefined)
382
+ args["content"] = opts["content"];
383
+ if (opts["jsonPatch"] !== undefined)
384
+ args["jsonPatch"] = opts["jsonPatch"];
385
+ if (opts["pathPatches"] !== undefined)
386
+ args["pathPatches"] = opts["pathPatches"];
387
+ return ctx.transport.callTool("assets-modify", args, toolCallOptionsFromCli(opts));
388
+ })();
389
+ });
390
+ }
391
+ // Assets / Move
392
+ {
393
+ const cmd = program
394
+ .command("assets-move")
395
+ .description("Move the assets at paths in the project. Should be used for asset rename. Does AssetDatabase.Refresh() at the end. Use 'assets-find' tool to find assets before moving.");
396
+ cmd.addOption(new Option("--destinationPaths <json>", "The paths of moved assets.").argParser(coerceJson).makeOptionMandatory(true));
397
+ cmd.addOption(new Option("--sourcePaths <json>", "The paths of the assets to move.").argParser(coerceJson).makeOptionMandatory(true));
398
+ addToolCallControlOptions(cmd);
399
+ cmd.action(function (_opts) {
400
+ return runCommand(this, async (ctx) => {
401
+ const opts = this.opts();
402
+ const args = {};
403
+ if (opts["destinationPaths"] !== undefined)
404
+ args["destinationPaths"] = opts["destinationPaths"];
405
+ if (opts["sourcePaths"] !== undefined)
406
+ args["sourcePaths"] = opts["sourcePaths"];
407
+ return ctx.transport.callTool("assets-move", args, toolCallOptionsFromCli(opts));
408
+ })();
409
+ });
410
+ }
411
+ // Assets / Prefab / Close
412
+ {
413
+ const cmd = program
414
+ .command("assets-prefab-close")
415
+ .description("Close currently opened prefab. Use it when you are in prefab editing mode in Unity Editor. Use 'assets-prefab-open' tool to open a prefab first.");
416
+ cmd.addOption(new Option("--save <bool>", "True to save prefab. False to discard changes.").argParser(coerceBoolean));
417
+ addToolCallControlOptions(cmd);
418
+ cmd.action(function (_opts) {
419
+ return runCommand(this, async (ctx) => {
420
+ const opts = this.opts();
421
+ const args = {};
422
+ if (opts["save"] !== undefined)
423
+ args["save"] = opts["save"];
424
+ return ctx.transport.callTool("assets-prefab-close", args, toolCallOptionsFromCli(opts));
425
+ })();
426
+ });
427
+ }
428
+ // Assets / Prefab / Create
429
+ {
430
+ const cmd = program
431
+ .command("assets-prefab-create")
432
+ .description("Create a prefab from a GameObject in the current active scene. The prefab will be saved in the project assets at the specified path. Creates folders recursively if they do not exist. If the source GameObject is already a prefab instance and 'connectGameObjectToPrefab' is true, a Prefab Variant is created automatically. To create a Prefab Variant from an existing prefab asset, provide 'sourcePrefabAssetPath' instead of 'gameObjectRef'. Use 'gameobject-find' tool to find the target GameObject first.");
433
+ cmd.addOption(new Option("--connectGameObjectToPrefab <bool>", "If true, the scene GameObject will be connected to the new prefab (becoming a prefab instance). If the source is already a prefab instance, this creates a Prefab Variant. If false, the prefab asset is created but the scene GameObject remains unchanged. Ignored when 'sourcePrefabAssetPath' is used (always creates a variant).").argParser(coerceBoolean));
434
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Reference to a scene GameObject to create the prefab from. If the GameObject is already a prefab instance, a Prefab Variant is created when 'connectGameObjectToPrefab' is true. Optional if 'sourcePrefabAssetPath' is provided.").argParser(coerceGameObjectRef));
435
+ cmd.addOption(new Option("--prefabAssetPath <string>", "Prefab asset path. Should be in the format 'Assets/Path/To/Prefab.prefab'.").makeOptionMandatory(true));
436
+ cmd.addOption(new Option("--sourcePrefabAssetPath <string>", "Path to an existing prefab asset to create a Prefab Variant from (e.g. 'Assets/Prefabs/Base.prefab'). When provided, a temporary instance is created, saved as a Prefab Variant, and cleaned up. Optional if 'gameObjectRef' is provided."));
437
+ addToolCallControlOptions(cmd);
438
+ cmd.action(function (_opts) {
439
+ return runCommand(this, async (ctx) => {
440
+ const opts = this.opts();
441
+ const args = {};
442
+ if (opts["connectGameObjectToPrefab"] !== undefined)
443
+ args["connectGameObjectToPrefab"] = opts["connectGameObjectToPrefab"];
444
+ if (opts["gameObjectRef"] !== undefined)
445
+ args["gameObjectRef"] = opts["gameObjectRef"];
446
+ if (opts["prefabAssetPath"] !== undefined)
447
+ args["prefabAssetPath"] = opts["prefabAssetPath"];
448
+ if (opts["sourcePrefabAssetPath"] !== undefined)
449
+ args["sourcePrefabAssetPath"] = opts["sourcePrefabAssetPath"];
450
+ return ctx.transport.callTool("assets-prefab-create", args, toolCallOptionsFromCli(opts));
451
+ })();
452
+ });
453
+ }
454
+ // Assets / Prefab / Instantiate
455
+ {
456
+ const cmd = program
457
+ .command("assets-prefab-instantiate")
458
+ .description("Instantiates prefab in the current active scene. Use 'assets-find' tool to find prefab assets in the project.");
459
+ cmd.addOption(new Option("--gameObjectPath <string>", "GameObject path in the current active scene.").makeOptionMandatory(true));
460
+ cmd.addOption(new Option("--isLocalSpace <bool>", "World or Local space of transform.").argParser(coerceBoolean));
461
+ cmd.addOption(new Option("--position <x,y,z|json>", "Transform position of the GameObject.").argParser(coerceVec3));
462
+ cmd.addOption(new Option("--prefabAssetPath <string>", "Prefab asset path.").makeOptionMandatory(true));
463
+ cmd.addOption(new Option("--rotation <x,y,z|json>", "Transform rotation of the GameObject. Euler angles in degrees.").argParser(coerceVec3));
464
+ cmd.addOption(new Option("--scale <x,y,z|json>", "Transform scale of the GameObject.").argParser(coerceVec3));
465
+ addToolCallControlOptions(cmd);
466
+ cmd.action(function (_opts) {
467
+ return runCommand(this, async (ctx) => {
468
+ const opts = this.opts();
469
+ const args = {};
470
+ if (opts["gameObjectPath"] !== undefined)
471
+ args["gameObjectPath"] = opts["gameObjectPath"];
472
+ if (opts["isLocalSpace"] !== undefined)
473
+ args["isLocalSpace"] = opts["isLocalSpace"];
474
+ if (opts["position"] !== undefined)
475
+ args["position"] = opts["position"];
476
+ if (opts["prefabAssetPath"] !== undefined)
477
+ args["prefabAssetPath"] = opts["prefabAssetPath"];
478
+ if (opts["rotation"] !== undefined)
479
+ args["rotation"] = opts["rotation"];
480
+ if (opts["scale"] !== undefined)
481
+ args["scale"] = opts["scale"];
482
+ return ctx.transport.callTool("assets-prefab-instantiate", args, toolCallOptionsFromCli(opts));
483
+ })();
484
+ });
485
+ }
486
+ // Assets / Prefab / Open
487
+ {
488
+ const cmd = program
489
+ .command("assets-prefab-open")
490
+ .description("Open prefab edit mode for a specific GameObject. In the Edit mode you can modify the prefab. The modification will be applied to all instances of the prefab across the project. Note: Please use 'assets-prefab-close' tool later to exit prefab editing mode.");
491
+ cmd.addOption(new Option("--gameObjectRef <ref>", "GameObject that represents prefab instance of an original prefab GameObject.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
492
+ addToolCallControlOptions(cmd);
493
+ cmd.action(function (_opts) {
494
+ return runCommand(this, async (ctx) => {
495
+ const opts = this.opts();
496
+ const args = {};
497
+ if (opts["gameObjectRef"] !== undefined)
498
+ args["gameObjectRef"] = opts["gameObjectRef"];
499
+ return ctx.transport.callTool("assets-prefab-open", args, toolCallOptionsFromCli(opts));
500
+ })();
501
+ });
502
+ }
503
+ // Assets / Prefab / Save
504
+ {
505
+ const cmd = program
506
+ .command("assets-prefab-save")
507
+ .description("Save a prefab. Use it when you are in prefab editing mode in Unity Editor. Use 'assets-prefab-open' tool to open a prefab first.");
508
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
509
+ addToolCallControlOptions(cmd);
510
+ cmd.action(function (_opts) {
511
+ return runCommand(this, async (ctx) => {
512
+ const opts = this.opts();
513
+ const args = {};
514
+ if (opts["nothing"] !== undefined)
515
+ args["nothing"] = opts["nothing"];
516
+ return ctx.transport.callTool("assets-prefab-save", args, toolCallOptionsFromCli(opts));
517
+ })();
518
+ });
519
+ }
520
+ // Assets / Refresh
521
+ {
522
+ const cmd = program
523
+ .command("assets-refresh")
524
+ .description("Refreshes the AssetDatabase. Use it if any file was added or updated in the project outside of Unity API. Use it if need to force scripts recompilation when '.cs' file changed.");
525
+ cmd.addOption(new Option("--options <value>", "Asset import options.").choices(["Default", "ForceUpdate", "ForceSynchronousImport", "ImportRecursive", "DontDownloadFromCacheServer", "ForceUncompressedImport"]));
526
+ addToolCallControlOptions(cmd);
527
+ cmd.action(function (_opts) {
528
+ return runCommand(this, async (ctx) => {
529
+ const opts = this.opts();
530
+ const args = {};
531
+ if (opts["options"] !== undefined)
532
+ args["options"] = opts["options"];
533
+ return ctx.transport.callTool("assets-refresh", args, toolCallOptionsFromCli(opts));
534
+ })();
535
+ });
536
+ }
537
+ // Assets / Shader / Get Data
538
+ {
539
+ const cmd = program
540
+ .command("assets-shader-get-data")
541
+ .description("Get detailed data about a shader asset in the Unity project. Returns shader properties, subshaders, passes, compilation errors, and supported status. Use 'assets-find' tool with filter 't:Shader' to find shaders, or 'assets-shader-list-all' tool to list all shader names. Path-scoped reads (token-saving): supply 'paths' (a list of paths) to read only the listed fields/elements via Reflector.TryReadAt, or 'viewQuery' (a ViewQuery) to navigate to a subtree and/or filter by name regex / max depth / type via Reflector.View. The result populates 'View' on the returned ShaderData. These two parameters are mutually exclusive. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
542
+ cmd.addOption(new Option("--assetRef <json>", "Reference to UnityEngine.Object asset instance. It could be Material, ScriptableObject, Prefab, and any other Asset. Anything located in the Assets and Packages folders.").argParser(coerceJson).makeOptionMandatory(true));
543
+ cmd.addOption(new Option("--includeMessages <bool>", "Include compilation error and warning messages. Default: true").argParser(coerceBoolean));
544
+ cmd.addOption(new Option("--includeProperties <bool>", "Include shader properties (uniforms) list. Default: false").argParser(coerceBoolean));
545
+ cmd.addOption(new Option("--includeSourceCode <bool>", "Include pass source code in subshader data. Requires 'includeSubshaders' to be true. Can produce very large responses. Default: false").argParser(coerceBoolean));
546
+ cmd.addOption(new Option("--includeSubshaders <bool>", "Include subshader and pass structure. Default: false").argParser(coerceBoolean));
547
+ cmd.addOption(new Option("--paths <json>", "Optional. List of paths to read individually via Reflector.TryReadAt against the underlying Shader asset. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Mutually exclusive with 'viewQuery'.").argParser(coerceJson));
548
+ cmd.addOption(new Option("--viewQuery <json>", "Optional. View-query filter routed through Reflector.View against the underlying Shader asset. Mutually exclusive with 'paths'.").argParser(coerceJson));
549
+ addToolCallControlOptions(cmd);
550
+ cmd.action(function (_opts) {
551
+ return runCommand(this, async (ctx) => {
552
+ const opts = this.opts();
553
+ const args = {};
554
+ if (opts["assetRef"] !== undefined)
555
+ args["assetRef"] = opts["assetRef"];
556
+ if (opts["includeMessages"] !== undefined)
557
+ args["includeMessages"] = opts["includeMessages"];
558
+ if (opts["includeProperties"] !== undefined)
559
+ args["includeProperties"] = opts["includeProperties"];
560
+ if (opts["includeSourceCode"] !== undefined)
561
+ args["includeSourceCode"] = opts["includeSourceCode"];
562
+ if (opts["includeSubshaders"] !== undefined)
563
+ args["includeSubshaders"] = opts["includeSubshaders"];
564
+ if (opts["paths"] !== undefined)
565
+ args["paths"] = opts["paths"];
566
+ if (opts["viewQuery"] !== undefined)
567
+ args["viewQuery"] = opts["viewQuery"];
568
+ return ctx.transport.callTool("assets-shader-get-data", args, toolCallOptionsFromCli(opts));
569
+ })();
570
+ });
571
+ }
572
+ // Assets / List Shaders
573
+ {
574
+ const cmd = program
575
+ .command("assets-shader-list-all")
576
+ .description("List all available shaders in the project assets and packages. Returns their names. Use this to find a shader name for 'assets-material-create' tool.");
577
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
578
+ addToolCallControlOptions(cmd);
579
+ cmd.action(function (_opts) {
580
+ return runCommand(this, async (ctx) => {
581
+ const opts = this.opts();
582
+ const args = {};
583
+ if (opts["nothing"] !== undefined)
584
+ args["nothing"] = opts["nothing"];
585
+ return ctx.transport.callTool("assets-shader-list-all", args, toolCallOptionsFromCli(opts));
586
+ })();
587
+ });
588
+ }
589
+ // Batch Execute
590
+ {
591
+ const cmd = program
592
+ .command("batch-execute")
593
+ .description("Execute multiple tool calls in a single SignalR round-trip. Drastically reduces LLM-to-Unity latency by amortizing transport overhead across many calls.");
594
+ cmd.addOption(new Option("--commands <json>", "Array of commands. Each must have 'tool' (string) and 'params' (object). Max DefaultMaxCommands (25) recommended; hard max HardMaxCommands (100).").argParser(coerceJson).makeOptionMandatory(true));
595
+ cmd.addOption(new Option("--failFast <bool>", "Stop after first failure. Default true.").argParser(coerceBoolean));
596
+ cmd.addOption(new Option("--maxParallelism <int>", "Hint for max parallel workers when parallel=true. Default 4. Ignored when parallel=false or when the implementation falls back to sequential.").argParser(coerceInteger));
597
+ cmd.addOption(new Option("--parallel <bool>", "Run read-only commands in parallel. Falls back to sequential if any command is destructive or the read-only hint is not exposed by the underlying tool surface. Default false.").argParser(coerceBoolean));
598
+ addToolCallControlOptions(cmd);
599
+ cmd.action(function (_opts) {
600
+ return runCommand(this, async (ctx) => {
601
+ const opts = this.opts();
602
+ const args = {};
603
+ if (opts["commands"] !== undefined)
604
+ args["commands"] = opts["commands"];
605
+ if (opts["failFast"] !== undefined)
606
+ args["failFast"] = opts["failFast"];
607
+ if (opts["maxParallelism"] !== undefined)
608
+ args["maxParallelism"] = opts["maxParallelism"];
609
+ if (opts["parallel"] !== undefined)
610
+ args["parallel"] = opts["parallel"];
611
+ return ctx.transport.callTool("batch-execute", args, toolCallOptionsFromCli(opts));
612
+ })();
613
+ });
614
+ }
615
+ // Build / Cancel Job
616
+ {
617
+ const cmd = program
618
+ .command("build-job-cancel")
619
+ .description("Request cancellation of a queued/running player build. Running BuildPipeline work is non-interruptible and reports cancellation pending until it returns.");
620
+ cmd.addOption(new Option("--jobId <string>", "jobId").makeOptionMandatory(true));
621
+ addToolCallControlOptions(cmd);
622
+ cmd.action(function (_opts) {
623
+ return runCommand(this, async (ctx) => {
624
+ const opts = this.opts();
625
+ const args = {};
626
+ if (opts["jobId"] !== undefined)
627
+ args["jobId"] = opts["jobId"];
628
+ return ctx.transport.callTool("build-job-cancel", args, toolCallOptionsFromCli(opts));
629
+ })();
630
+ });
631
+ }
632
+ // Build / Get Job
633
+ {
634
+ const cmd = program
635
+ .command("build-job-get")
636
+ .description("Get the current state of a build job by ID. Returns null when the job ID is unknown.");
637
+ cmd.addOption(new Option("--jobId <string>", "Job ID returned by 'build-player'.").makeOptionMandatory(true));
638
+ addToolCallControlOptions(cmd);
639
+ cmd.action(function (_opts) {
640
+ return runCommand(this, async (ctx) => {
641
+ const opts = this.opts();
642
+ const args = {};
643
+ if (opts["jobId"] !== undefined)
644
+ args["jobId"] = opts["jobId"];
645
+ return ctx.transport.callTool("build-job-get", args, toolCallOptionsFromCli(opts));
646
+ })();
647
+ });
648
+ }
649
+ // Build / List Jobs
650
+ {
651
+ const cmd = program
652
+ .command("build-job-list")
653
+ .description("List every build job currently tracked by the editor.");
654
+ cmd.addOption(new Option("--includeCompleted <bool>", "When false, only return jobs with Status='queued' or 'running'. Default: true.").argParser(coerceBoolean));
655
+ addToolCallControlOptions(cmd);
656
+ cmd.action(function (_opts) {
657
+ return runCommand(this, async (ctx) => {
658
+ const opts = this.opts();
659
+ const args = {};
660
+ if (opts["includeCompleted"] !== undefined)
661
+ args["includeCompleted"] = opts["includeCompleted"];
662
+ return ctx.transport.callTool("build-job-list", args, toolCallOptionsFromCli(opts));
663
+ })();
664
+ });
665
+ }
666
+ // Build / Player
667
+ {
668
+ const cmd = program
669
+ .command("build-player")
670
+ .description("Start a Unity player build for the requested target platform and return a poll-able BuildJobInfo.");
671
+ cmd.addOption(new Option("--buildOptions <int>", "Build options bitmask. 0=None, 1=Development, 2=AutoRunPlayer, 4=ShowBuiltPlayer, 8=ScriptsOnlyBuild. Default 0.").argParser(coerceInteger));
672
+ cmd.addOption(new Option("--buildTarget <string>", "Target platform: 'StandaloneWindows64' | 'StandaloneOSX' | 'StandaloneLinux64' | 'Android' | 'iOS' | 'WebGL'.").makeOptionMandatory(true));
673
+ cmd.addOption(new Option("--outputPath <string>", "Output path. Default 'Builds/{target}/{productName}'."));
674
+ cmd.addOption(new Option("--scenes <json>", "Override scenes list (project-relative .unity paths). Default uses EditorBuildSettings.scenes.").argParser(coerceJson));
675
+ addToolCallControlOptions(cmd);
676
+ cmd.action(function (_opts) {
677
+ return runCommand(this, async (ctx) => {
678
+ const opts = this.opts();
679
+ const args = {};
680
+ if (opts["buildOptions"] !== undefined)
681
+ args["buildOptions"] = opts["buildOptions"];
682
+ if (opts["buildTarget"] !== undefined)
683
+ args["buildTarget"] = opts["buildTarget"];
684
+ if (opts["outputPath"] !== undefined)
685
+ args["outputPath"] = opts["outputPath"];
686
+ if (opts["scenes"] !== undefined)
687
+ args["scenes"] = opts["scenes"];
688
+ return ctx.transport.callTool("build-player", args, toolCallOptionsFromCli(opts));
689
+ })();
690
+ });
691
+ }
692
+ // Build / Add Scene
693
+ {
694
+ const cmd = program
695
+ .command("build-scene-add")
696
+ .description("Add a scene to EditorBuildSettings.scenes. Returns the updated list.");
697
+ cmd.addOption(new Option("--enabled <bool>", "Whether the scene should be enabled in the build. Default: true.").argParser(coerceBoolean));
698
+ cmd.addOption(new Option("--insertAt <int>", "Optional insertion index. When null, the scene is appended.").argParser(coerceInteger));
699
+ cmd.addOption(new Option("--scenePath <string>", "Project-relative path to the .unity scene asset.").makeOptionMandatory(true));
700
+ addToolCallControlOptions(cmd);
701
+ cmd.action(function (_opts) {
702
+ return runCommand(this, async (ctx) => {
703
+ const opts = this.opts();
704
+ const args = {};
705
+ if (opts["enabled"] !== undefined)
706
+ args["enabled"] = opts["enabled"];
707
+ if (opts["insertAt"] !== undefined)
708
+ args["insertAt"] = opts["insertAt"];
709
+ if (opts["scenePath"] !== undefined)
710
+ args["scenePath"] = opts["scenePath"];
711
+ return ctx.transport.callTool("build-scene-add", args, toolCallOptionsFromCli(opts));
712
+ })();
713
+ });
714
+ }
715
+ // Build / List Scenes
716
+ {
717
+ const cmd = program
718
+ .command("build-scene-list")
719
+ .description("List scenes registered in EditorBuildSettings, preserving build order. Set includeDisabled=false to omit scenes disabled in the build settings.");
720
+ cmd.addOption(new Option("--includeDisabled <bool>", "Include scenes disabled in EditorBuildSettings (default true). Set false to list only scenes that will be packed into the player.").argParser(coerceBoolean));
721
+ addToolCallControlOptions(cmd);
722
+ cmd.action(function (_opts) {
723
+ return runCommand(this, async (ctx) => {
724
+ const opts = this.opts();
725
+ const args = {};
726
+ if (opts["includeDisabled"] !== undefined)
727
+ args["includeDisabled"] = opts["includeDisabled"];
728
+ return ctx.transport.callTool("build-scene-list", args, toolCallOptionsFromCli(opts));
729
+ })();
730
+ });
731
+ }
732
+ // Build / Remove Scene
733
+ {
734
+ const cmd = program
735
+ .command("build-scene-remove")
736
+ .description("Remove a scene from EditorBuildSettings.scenes by path. Returns the updated list.");
737
+ cmd.addOption(new Option("--scenePath <string>", "Project-relative path of the scene to remove.").makeOptionMandatory(true));
738
+ addToolCallControlOptions(cmd);
739
+ cmd.action(function (_opts) {
740
+ return runCommand(this, async (ctx) => {
741
+ const opts = this.opts();
742
+ const args = {};
743
+ if (opts["scenePath"] !== undefined)
744
+ args["scenePath"] = opts["scenePath"];
745
+ return ctx.transport.callTool("build-scene-remove", args, toolCallOptionsFromCli(opts));
746
+ })();
747
+ });
748
+ }
749
+ // Build / Switch Platform
750
+ {
751
+ const cmd = program
752
+ .command("build-switch-platform")
753
+ .description("Switch the editor's active build target. Blocks for the duration of the reimport.");
754
+ cmd.addOption(new Option("--buildTarget <string>", "Target platform identifier (e.g. 'StandaloneWindows64', 'Android').").makeOptionMandatory(true));
755
+ addToolCallControlOptions(cmd);
756
+ cmd.action(function (_opts) {
757
+ return runCommand(this, async (ctx) => {
758
+ const opts = this.opts();
759
+ const args = {};
760
+ if (opts["buildTarget"] !== undefined)
761
+ args["buildTarget"] = opts["buildTarget"];
762
+ return ctx.transport.callTool("build-switch-platform", args, toolCallOptionsFromCli(opts));
763
+ })();
764
+ });
765
+ }
766
+ // Camera / Cinemachine / Set Default Blend
767
+ {
768
+ const cmd = program
769
+ .command("camera-cm-set-default-blend")
770
+ .description("Set the default blend (style + duration) on the active CinemachineBrain. Returns Ok=false when Cinemachine is not installed or no Brain is present.");
771
+ cmd.addOption(new Option("--duration <num>", "Blend duration in seconds. Negative values are ignored.").argParser(coerceNumber));
772
+ cmd.addOption(new Option("--style <string>", "Blend style name (e.g. Cut, EaseInOut, Linear, HardIn, HardOut). Ignored when null/empty."));
773
+ addToolCallControlOptions(cmd);
774
+ cmd.action(function (_opts) {
775
+ return runCommand(this, async (ctx) => {
776
+ const opts = this.opts();
777
+ const args = {};
778
+ if (opts["duration"] !== undefined)
779
+ args["duration"] = opts["duration"];
780
+ if (opts["style"] !== undefined)
781
+ args["style"] = opts["style"];
782
+ return ctx.transport.callTool("camera-cm-set-default-blend", args, toolCallOptionsFromCli(opts));
783
+ })();
784
+ });
785
+ }
786
+ // Camera / Cinemachine / Configure VCam
787
+ {
788
+ const cmd = program
789
+ .command("camera-cm-vcam-configure")
790
+ .description("Configure a Cinemachine virtual-camera (priority, FOV, optional noise). Returns Ok=false when the Cinemachine package is not installed.");
791
+ cmd.addOption(new Option("--followLensIndex <int>", "Reserved for future lens-preset index. Currently ignored.").argParser(coerceInteger));
792
+ cmd.addOption(new Option("--fov <num>", "Lens field of view (degrees). Ignored when null.").argParser(coerceNumber));
793
+ cmd.addOption(new Option("--noiseAmplitudeGain <num>", "Noise amplitude gain. Ignored when null.").argParser(coerceNumber));
794
+ cmd.addOption(new Option("--noiseFrequencyGain <num>", "Noise frequency gain. Ignored when null.").argParser(coerceNumber));
795
+ cmd.addOption(new Option("--noiseProfileAssetPath <string>", "Asset path of a NoiseSettings ScriptableObject. When supplied, a CinemachineBasicMultiChannelPerlin component is added/updated. Ignored when null."));
796
+ cmd.addOption(new Option("--priority <int>", "Cinemachine virtual-camera priority (Brain selection). Ignored when null.").argParser(coerceInteger));
797
+ cmd.addOption(new Option("--vcamRef <ref>", "Target GameObject hosting the Cinemachine virtual-camera component.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
798
+ addToolCallControlOptions(cmd);
799
+ cmd.action(function (_opts) {
800
+ return runCommand(this, async (ctx) => {
801
+ const opts = this.opts();
802
+ const args = {};
803
+ if (opts["followLensIndex"] !== undefined)
804
+ args["followLensIndex"] = opts["followLensIndex"];
805
+ if (opts["fov"] !== undefined)
806
+ args["fov"] = opts["fov"];
807
+ if (opts["noiseAmplitudeGain"] !== undefined)
808
+ args["noiseAmplitudeGain"] = opts["noiseAmplitudeGain"];
809
+ if (opts["noiseFrequencyGain"] !== undefined)
810
+ args["noiseFrequencyGain"] = opts["noiseFrequencyGain"];
811
+ if (opts["noiseProfileAssetPath"] !== undefined)
812
+ args["noiseProfileAssetPath"] = opts["noiseProfileAssetPath"];
813
+ if (opts["priority"] !== undefined)
814
+ args["priority"] = opts["priority"];
815
+ if (opts["vcamRef"] !== undefined)
816
+ args["vcamRef"] = opts["vcamRef"];
817
+ return ctx.transport.callTool("camera-cm-vcam-configure", args, toolCallOptionsFromCli(opts));
818
+ })();
819
+ });
820
+ }
821
+ // Camera / Cinemachine / Set VCam Priority
822
+ {
823
+ const cmd = program
824
+ .command("camera-cm-vcam-priority")
825
+ .description("Set a Cinemachine virtual-camera's priority (persisted via SerializedProperty). Returns Ok=false when Cinemachine is not installed.");
826
+ cmd.addOption(new Option("--priority <int>", "New priority value. Higher = more likely to become the live camera.").argParser(coerceInteger).makeOptionMandatory(true));
827
+ cmd.addOption(new Option("--vcamRef <ref>", "Target GameObject hosting the Cinemachine virtual-camera component.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
828
+ addToolCallControlOptions(cmd);
829
+ cmd.action(function (_opts) {
830
+ return runCommand(this, async (ctx) => {
831
+ const opts = this.opts();
832
+ const args = {};
833
+ if (opts["priority"] !== undefined)
834
+ args["priority"] = opts["priority"];
835
+ if (opts["vcamRef"] !== undefined)
836
+ args["vcamRef"] = opts["vcamRef"];
837
+ return ctx.transport.callTool("camera-cm-vcam-priority", args, toolCallOptionsFromCli(opts));
838
+ })();
839
+ });
840
+ }
841
+ // Camera / Configure
842
+ {
843
+ const cmd = program
844
+ .command("camera-configure")
845
+ .description("Configure a UnityEngine.Camera's most-common fields. Only provided (non-null) parameters are written. Use 'camera-get-data' to inspect current values first.");
846
+ cmd.addOption(new Option("--backgroundColor <json>", "Background color (RGBA in [0..1]). Used together with clearFlags=SolidColor. Ignored when null.").argParser(coerceJson));
847
+ cmd.addOption(new Option("--cameraRef <ref>", "Target Camera GameObject. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
848
+ cmd.addOption(new Option("--clearFlags <string>", "Clear flags: Skybox | SolidColor | Depth | Nothing. Ignored when null."));
849
+ cmd.addOption(new Option("--cullingMask <int>", "Culling-mask bitmask. Ignored when null.").argParser(coerceInteger));
850
+ cmd.addOption(new Option("--depth <num>", "Camera depth (render order / fallback 'priority'). Ignored when null.").argParser(coerceNumber));
851
+ cmd.addOption(new Option("--farClipPlane <num>", "Far clip plane. Ignored when null.").argParser(coerceNumber));
852
+ cmd.addOption(new Option("--fieldOfView <num>", "Field of View in degrees (perspective). Ignored when null.").argParser(coerceNumber));
853
+ cmd.addOption(new Option("--nearClipPlane <num>", "Near clip plane. Ignored when null.").argParser(coerceNumber));
854
+ cmd.addOption(new Option("--orthographic <bool>", "Orthographic mode. Ignored when null.").argParser(coerceBoolean));
855
+ cmd.addOption(new Option("--orthographicSize <num>", "Orthographic size (half-height in world units). Used when orthographic=true. Ignored when null.").argParser(coerceNumber));
856
+ addToolCallControlOptions(cmd);
857
+ cmd.action(function (_opts) {
858
+ return runCommand(this, async (ctx) => {
859
+ const opts = this.opts();
860
+ const args = {};
861
+ if (opts["backgroundColor"] !== undefined)
862
+ args["backgroundColor"] = opts["backgroundColor"];
863
+ if (opts["cameraRef"] !== undefined)
864
+ args["cameraRef"] = opts["cameraRef"];
865
+ if (opts["clearFlags"] !== undefined)
866
+ args["clearFlags"] = opts["clearFlags"];
867
+ if (opts["cullingMask"] !== undefined)
868
+ args["cullingMask"] = opts["cullingMask"];
869
+ if (opts["depth"] !== undefined)
870
+ args["depth"] = opts["depth"];
871
+ if (opts["farClipPlane"] !== undefined)
872
+ args["farClipPlane"] = opts["farClipPlane"];
873
+ if (opts["fieldOfView"] !== undefined)
874
+ args["fieldOfView"] = opts["fieldOfView"];
875
+ if (opts["nearClipPlane"] !== undefined)
876
+ args["nearClipPlane"] = opts["nearClipPlane"];
877
+ if (opts["orthographic"] !== undefined)
878
+ args["orthographic"] = opts["orthographic"];
879
+ if (opts["orthographicSize"] !== undefined)
880
+ args["orthographicSize"] = opts["orthographicSize"];
881
+ return ctx.transport.callTool("camera-configure", args, toolCallOptionsFromCli(opts));
882
+ })();
883
+ });
884
+ }
885
+ // Camera / Get Data
886
+ {
887
+ const cmd = program
888
+ .command("camera-get-data")
889
+ .description("Read a Camera's configuration plus optional Cinemachine virtual-camera priority. Pair with 'camera-configure' to write back.");
890
+ cmd.addOption(new Option("--cameraRef <ref>", "Target Camera GameObject. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
891
+ addToolCallControlOptions(cmd);
892
+ cmd.action(function (_opts) {
893
+ return runCommand(this, async (ctx) => {
894
+ const opts = this.opts();
895
+ const args = {};
896
+ if (opts["cameraRef"] !== undefined)
897
+ args["cameraRef"] = opts["cameraRef"];
898
+ return ctx.transport.callTool("camera-get-data", args, toolCallOptionsFromCli(opts));
899
+ })();
900
+ });
901
+ }
902
+ // Camera / List All
903
+ {
904
+ const cmd = program
905
+ .command("camera-list-all")
906
+ .description("List all Cameras in the scenes with a config snapshot per camera. Also reports whether the Cinemachine package is installed.");
907
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
908
+ addToolCallControlOptions(cmd);
909
+ cmd.action(function (_opts) {
910
+ return runCommand(this, async (ctx) => {
911
+ const opts = this.opts();
912
+ const args = {};
913
+ if (opts["nothing"] !== undefined)
914
+ args["nothing"] = opts["nothing"];
915
+ return ctx.transport.callTool("camera-list-all", args, toolCallOptionsFromCli(opts));
916
+ })();
917
+ });
918
+ }
919
+ // Console / Clear Logs
920
+ {
921
+ const cmd = program
922
+ .command("console-clear-logs")
923
+ .description("Clears the log cache (used by console-get-logs) and the Unity Editor Console window. Useful for isolating errors related to a specific action by clearing logs before performing the action.");
924
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
925
+ addToolCallControlOptions(cmd);
926
+ cmd.action(function (_opts) {
927
+ return runCommand(this, async (ctx) => {
928
+ const opts = this.opts();
929
+ const args = {};
930
+ if (opts["nothing"] !== undefined)
931
+ args["nothing"] = opts["nothing"];
932
+ return ctx.transport.callTool("console-clear-logs", args, toolCallOptionsFromCli(opts));
933
+ })();
934
+ });
935
+ }
936
+ // Console / Get Logs
937
+ {
938
+ const cmd = program
939
+ .command("console-get-logs")
940
+ .description("Retrieves Unity Editor logs with correlation/source attribution and loss accounting. Useful for debugging and monitoring Unity Editor activity.");
941
+ cmd.addOption(new Option("--correlationId <string>", "Only entries emitted inside this tool call's execution window (correlation identity). Example: 'call-...'."));
942
+ cmd.addOption(new Option("--includeStackTrace <bool>", "Include stack traces in the output. Default: false").argParser(coerceBoolean));
943
+ cmd.addOption(new Option("--lastMinutes <int>", "Return logs from the last N minutes. If 0, returns all available logs. Default: 0").argParser(coerceInteger));
944
+ cmd.addOption(new Option("--logTypeFilter <value>", "Filter by log type. 'null' means All.").choices(["Error", "Assert", "Warning", "Log", "Exception"]));
945
+ cmd.addOption(new Option("--maxEntries <int>", "Maximum number of log entries to return. Minimum: 1. Default: 100").argParser(coerceInteger));
946
+ cmd.addOption(new Option("--operationId <string>", "Only entries attributed to this durable operation id. Example: the operationId returned by tests-run."));
947
+ cmd.addOption(new Option("--sinceUnixMs <int>", "Only entries at or after this Unix-epoch millisecond boundary. Record the boundary before an operation, then filter new entries here. Example: 1760000000000.").argParser(coerceInteger));
948
+ cmd.addOption(new Option("--source <string>", "Source classification filter: 'product', 'bridge', 'tool', or 'unity'. 'null' returns all sources."));
949
+ addToolCallControlOptions(cmd);
950
+ cmd.action(function (_opts) {
951
+ return runCommand(this, async (ctx) => {
952
+ const opts = this.opts();
953
+ const args = {};
954
+ if (opts["correlationId"] !== undefined)
955
+ args["correlationId"] = opts["correlationId"];
956
+ if (opts["includeStackTrace"] !== undefined)
957
+ args["includeStackTrace"] = opts["includeStackTrace"];
958
+ if (opts["lastMinutes"] !== undefined)
959
+ args["lastMinutes"] = opts["lastMinutes"];
960
+ if (opts["logTypeFilter"] !== undefined)
961
+ args["logTypeFilter"] = opts["logTypeFilter"];
962
+ if (opts["maxEntries"] !== undefined)
963
+ args["maxEntries"] = opts["maxEntries"];
964
+ if (opts["operationId"] !== undefined)
965
+ args["operationId"] = opts["operationId"];
966
+ if (opts["sinceUnixMs"] !== undefined)
967
+ args["sinceUnixMs"] = opts["sinceUnixMs"];
968
+ if (opts["source"] !== undefined)
969
+ args["source"] = opts["source"];
970
+ return ctx.transport.callTool("console-get-logs", args, toolCallOptionsFromCli(opts));
971
+ })();
972
+ });
973
+ }
974
+ // Docs / Get Manual
975
+ {
976
+ const cmd = program
977
+ .command("docs-get-manual")
978
+ .description("Fetch a Unity Manual page by slug and return its parsed title/sections/code examples.");
979
+ cmd.addOption(new Option("--slug <string>", "Manual page slug as it appears in the URL, e.g. 'execution-order', 'urp/urp-introduction'. Required.").makeOptionMandatory(true));
980
+ cmd.addOption(new Option("--version <string>", "Full Unity version such as '6000.0.38f1'. Only the major.minor portion is used. Optional."));
981
+ addToolCallControlOptions(cmd);
982
+ cmd.action(function (_opts) {
983
+ return runCommand(this, async (ctx) => {
984
+ const opts = this.opts();
985
+ const args = {};
986
+ if (opts["slug"] !== undefined)
987
+ args["slug"] = opts["slug"];
988
+ if (opts["version"] !== undefined)
989
+ args["version"] = opts["version"];
990
+ return ctx.transport.callTool("docs-get-manual", args, toolCallOptionsFromCli(opts));
991
+ })();
992
+ });
993
+ }
994
+ // Docs / Get Package
995
+ {
996
+ const cmd = program
997
+ .command("docs-get-package")
998
+ .description("Fetch a Unity package manual page and return its parsed title/sections/code examples.");
999
+ cmd.addOption(new Option("--package <string>", "Package id, e.g. 'com.unity.render-pipelines.universal'. Required.").makeOptionMandatory(true));
1000
+ cmd.addOption(new Option("--page <string>", "Page slug under the package's manual folder, e.g. 'index', '2d-index', 'whats-new'. Required.").makeOptionMandatory(true));
1001
+ cmd.addOption(new Option("--pkgVersion <string>", "Package version, e.g. '17.0' or '17.0.3'. Required.").makeOptionMandatory(true));
1002
+ addToolCallControlOptions(cmd);
1003
+ cmd.action(function (_opts) {
1004
+ return runCommand(this, async (ctx) => {
1005
+ const opts = this.opts();
1006
+ const args = {};
1007
+ if (opts["package"] !== undefined)
1008
+ args["package"] = opts["package"];
1009
+ if (opts["page"] !== undefined)
1010
+ args["page"] = opts["page"];
1011
+ if (opts["pkgVersion"] !== undefined)
1012
+ args["pkgVersion"] = opts["pkgVersion"];
1013
+ return ctx.transport.callTool("docs-get-package", args, toolCallOptionsFromCli(opts));
1014
+ })();
1015
+ });
1016
+ }
1017
+ // Docs / Get ScriptReference
1018
+ {
1019
+ const cmd = program
1020
+ .command("docs-get-script-reference")
1021
+ .description("Fetch a Unity ScriptReference page (class or member) and return a structured ScriptRefDoc. Verifies class / method signatures and surfaces official code examples for self-correction.");
1022
+ cmd.addOption(new Option("--className <string>", "Unity class name, e.g. 'Physics', 'Transform', 'AnimationCurve'. Required.").makeOptionMandatory(true));
1023
+ cmd.addOption(new Option("--memberName <string>", "Method or property name on the class, e.g. 'Raycast', 'position'. Optional — omit for the class-level page."));
1024
+ cmd.addOption(new Option("--version <string>", "Full Unity version such as '6000.0.38f1'. Only the major.minor portion is used. Optional — omitted means latest."));
1025
+ addToolCallControlOptions(cmd);
1026
+ cmd.action(function (_opts) {
1027
+ return runCommand(this, async (ctx) => {
1028
+ const opts = this.opts();
1029
+ const args = {};
1030
+ if (opts["className"] !== undefined)
1031
+ args["className"] = opts["className"];
1032
+ if (opts["memberName"] !== undefined)
1033
+ args["memberName"] = opts["memberName"];
1034
+ if (opts["version"] !== undefined)
1035
+ args["version"] = opts["version"];
1036
+ return ctx.transport.callTool("docs-get-script-reference", args, toolCallOptionsFromCli(opts));
1037
+ })();
1038
+ });
1039
+ }
1040
+ // Docs / Lookup
1041
+ {
1042
+ const cmd = program
1043
+ .command("docs-lookup")
1044
+ .description("Look up one or more Unity doc queries across ScriptReference, Manual, and Package docs in parallel.");
1045
+ cmd.addOption(new Option("--package <string>", "Optional package id (e.g. 'com.unity.render-pipelines.universal') to also probe package docs. Requires pkgVersion."));
1046
+ cmd.addOption(new Option("--pkgVersion <string>", "Optional package version (e.g. '17.0'). Requires package."));
1047
+ cmd.addOption(new Option("--queries <json>", "One or more query strings. Examples: 'Physics.Raycast', 'NavMeshAgent', 'execution-order'. Required.").argParser(coerceJson).makeOptionMandatory(true));
1048
+ cmd.addOption(new Option("--version <string>", "Full Unity version such as '6000.0.38f1'. Only the major.minor portion is used. Optional."));
1049
+ addToolCallControlOptions(cmd);
1050
+ cmd.action(function (_opts) {
1051
+ return runCommand(this, async (ctx) => {
1052
+ const opts = this.opts();
1053
+ const args = {};
1054
+ if (opts["package"] !== undefined)
1055
+ args["package"] = opts["package"];
1056
+ if (opts["pkgVersion"] !== undefined)
1057
+ args["pkgVersion"] = opts["pkgVersion"];
1058
+ if (opts["queries"] !== undefined)
1059
+ args["queries"] = opts["queries"];
1060
+ if (opts["version"] !== undefined)
1061
+ args["version"] = opts["version"];
1062
+ return ctx.transport.callTool("docs-lookup", args, toolCallOptionsFromCli(opts));
1063
+ })();
1064
+ });
1065
+ }
1066
+ // Editor / Application / Get State
1067
+ {
1068
+ const cmd = program
1069
+ .command("editor-application-get-state")
1070
+ .description("Returns available information about 'UnityEditor.EditorApplication'. Use it to get information about the current state of the Unity Editor application. Such as: playmode, paused state, compilation state, etc.");
1071
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
1072
+ addToolCallControlOptions(cmd);
1073
+ cmd.action(function (_opts) {
1074
+ return runCommand(this, async (ctx) => {
1075
+ const opts = this.opts();
1076
+ const args = {};
1077
+ if (opts["nothing"] !== undefined)
1078
+ args["nothing"] = opts["nothing"];
1079
+ return ctx.transport.callTool("editor-application-get-state", args, toolCallOptionsFromCli(opts));
1080
+ })();
1081
+ });
1082
+ }
1083
+ // Editor / Application / Set State
1084
+ {
1085
+ const cmd = program
1086
+ .command("editor-application-set-state")
1087
+ .description("Control the Unity Editor application state. You can start, stop, or pause the 'playmode'. Use 'editor-application-get-state' tool to get the current state first.");
1088
+ cmd.addOption(new Option("--isPaused <bool>", "If true, the 'playmode' will be paused. If false, the 'playmode' will be resumed.").argParser(coerceBoolean));
1089
+ cmd.addOption(new Option("--isPlaying <bool>", "If true, the 'playmode' will be started. If false, the 'playmode' will be stopped.").argParser(coerceBoolean));
1090
+ addToolCallControlOptions(cmd);
1091
+ cmd.action(function (_opts) {
1092
+ return runCommand(this, async (ctx) => {
1093
+ const opts = this.opts();
1094
+ const args = {};
1095
+ if (opts["isPaused"] !== undefined)
1096
+ args["isPaused"] = opts["isPaused"];
1097
+ if (opts["isPlaying"] !== undefined)
1098
+ args["isPlaying"] = opts["isPlaying"];
1099
+ return ctx.transport.callTool("editor-application-set-state", args, toolCallOptionsFromCli(opts));
1100
+ })();
1101
+ });
1102
+ }
1103
+ // Editor / Execute Menu Item
1104
+ {
1105
+ const cmd = program
1106
+ .command("editor-execute-menu-item")
1107
+ .description("Execute a Unity Editor menu item by full path. Use the 'editor://menu-items' resource to list available menu paths first.");
1108
+ cmd.addOption(new Option("--menuPath <string>", "Full menu path, e.g. 'GameObject/Create Empty', 'Assets/Refresh'. Get the canonical list from the 'editor://menu-items' resource.").makeOptionMandatory(true));
1109
+ addToolCallControlOptions(cmd);
1110
+ cmd.action(function (_opts) {
1111
+ return runCommand(this, async (ctx) => {
1112
+ const opts = this.opts();
1113
+ const args = {};
1114
+ if (opts["menuPath"] !== undefined)
1115
+ args["menuPath"] = opts["menuPath"];
1116
+ return ctx.transport.callTool("editor-execute-menu-item", args, toolCallOptionsFromCli(opts));
1117
+ })();
1118
+ });
1119
+ }
1120
+ // Editor Operation / Cancel
1121
+ {
1122
+ const cmd = program
1123
+ .command("editor-operation-cancel")
1124
+ .description("Request cooperative cancellation for an Editor operation.");
1125
+ cmd.addOption(new Option("--operationId <string>", "operationId").makeOptionMandatory(true));
1126
+ addToolCallControlOptions(cmd);
1127
+ cmd.action(function (_opts) {
1128
+ return runCommand(this, async (ctx) => {
1129
+ const opts = this.opts();
1130
+ const args = {};
1131
+ if (opts["operationId"] !== undefined)
1132
+ args["operationId"] = opts["operationId"];
1133
+ return ctx.transport.callTool("editor-operation-cancel", args, toolCallOptionsFromCli(opts));
1134
+ })();
1135
+ });
1136
+ }
1137
+ // Editor Operation / Get
1138
+ {
1139
+ const cmd = program
1140
+ .command("editor-operation-get")
1141
+ .description("Get one durable Editor operation by ID. Returns null when it is unknown.");
1142
+ cmd.addOption(new Option("--operationId <string>", "operationId").makeOptionMandatory(true));
1143
+ addToolCallControlOptions(cmd);
1144
+ cmd.action(function (_opts) {
1145
+ return runCommand(this, async (ctx) => {
1146
+ const opts = this.opts();
1147
+ const args = {};
1148
+ if (opts["operationId"] !== undefined)
1149
+ args["operationId"] = opts["operationId"];
1150
+ return ctx.transport.callTool("editor-operation-get", args, toolCallOptionsFromCli(opts));
1151
+ })();
1152
+ });
1153
+ }
1154
+ // Editor Operation / List
1155
+ {
1156
+ const cmd = program
1157
+ .command("editor-operation-list")
1158
+ .description("List durable Editor operations, optionally filtered by kind and terminal state.");
1159
+ cmd.addOption(new Option("--includeTerminal <bool>", "includeTerminal").argParser(coerceBoolean));
1160
+ cmd.addOption(new Option("--kind <string>", "kind"));
1161
+ cmd.addOption(new Option("--limit <int>", "limit").argParser(coerceInteger));
1162
+ addToolCallControlOptions(cmd);
1163
+ cmd.action(function (_opts) {
1164
+ return runCommand(this, async (ctx) => {
1165
+ const opts = this.opts();
1166
+ const args = {};
1167
+ if (opts["includeTerminal"] !== undefined)
1168
+ args["includeTerminal"] = opts["includeTerminal"];
1169
+ if (opts["kind"] !== undefined)
1170
+ args["kind"] = opts["kind"];
1171
+ if (opts["limit"] !== undefined)
1172
+ args["limit"] = opts["limit"];
1173
+ return ctx.transport.callTool("editor-operation-list", args, toolCallOptionsFromCli(opts));
1174
+ })();
1175
+ });
1176
+ }
1177
+ // Editor / Selection / Get
1178
+ {
1179
+ const cmd = program
1180
+ .command("editor-selection-get")
1181
+ .description("Get information about the current Selection in the Unity Editor. Use 'editor-selection-set' tool to set the selection.");
1182
+ cmd.addOption(new Option("--includeActiveObject <bool>", "includeActiveObject").argParser(coerceBoolean));
1183
+ cmd.addOption(new Option("--includeActiveTransform <bool>", "includeActiveTransform").argParser(coerceBoolean));
1184
+ cmd.addOption(new Option("--includeAssetGUIDs <bool>", "includeAssetGUIDs").argParser(coerceBoolean));
1185
+ cmd.addOption(new Option("--includeGameObjects <bool>", "includeGameObjects").argParser(coerceBoolean));
1186
+ cmd.addOption(new Option("--includeInstanceIDs <bool>", "includeInstanceIDs").argParser(coerceBoolean));
1187
+ cmd.addOption(new Option("--includeTransforms <bool>", "includeTransforms").argParser(coerceBoolean));
1188
+ addToolCallControlOptions(cmd);
1189
+ cmd.action(function (_opts) {
1190
+ return runCommand(this, async (ctx) => {
1191
+ const opts = this.opts();
1192
+ const args = {};
1193
+ if (opts["includeActiveObject"] !== undefined)
1194
+ args["includeActiveObject"] = opts["includeActiveObject"];
1195
+ if (opts["includeActiveTransform"] !== undefined)
1196
+ args["includeActiveTransform"] = opts["includeActiveTransform"];
1197
+ if (opts["includeAssetGUIDs"] !== undefined)
1198
+ args["includeAssetGUIDs"] = opts["includeAssetGUIDs"];
1199
+ if (opts["includeGameObjects"] !== undefined)
1200
+ args["includeGameObjects"] = opts["includeGameObjects"];
1201
+ if (opts["includeInstanceIDs"] !== undefined)
1202
+ args["includeInstanceIDs"] = opts["includeInstanceIDs"];
1203
+ if (opts["includeTransforms"] !== undefined)
1204
+ args["includeTransforms"] = opts["includeTransforms"];
1205
+ return ctx.transport.callTool("editor-selection-get", args, toolCallOptionsFromCli(opts));
1206
+ })();
1207
+ });
1208
+ }
1209
+ // Editor / Selection / Set
1210
+ {
1211
+ const cmd = program
1212
+ .command("editor-selection-set")
1213
+ .description("Set the current Selection in the Unity Editor to the provided objects. Use 'editor-selection-get' tool to get the current selection first.");
1214
+ cmd.addOption(new Option("--select <json>", "select").argParser(coerceJson).makeOptionMandatory(true));
1215
+ addToolCallControlOptions(cmd);
1216
+ cmd.action(function (_opts) {
1217
+ return runCommand(this, async (ctx) => {
1218
+ const opts = this.opts();
1219
+ const args = {};
1220
+ if (opts["select"] !== undefined)
1221
+ args["select"] = opts["select"];
1222
+ return ctx.transport.callTool("editor-selection-set", args, toolCallOptionsFromCli(opts));
1223
+ })();
1224
+ });
1225
+ }
1226
+ // Frame Debugger / Disable
1227
+ {
1228
+ const cmd = program
1229
+ .command("frame-debugger-disable")
1230
+ .description("Disable the Unity Frame Debugger via reflection.");
1231
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
1232
+ addToolCallControlOptions(cmd);
1233
+ cmd.action(function (_opts) {
1234
+ return runCommand(this, async (ctx) => {
1235
+ const opts = this.opts();
1236
+ const args = {};
1237
+ if (opts["nothing"] !== undefined)
1238
+ args["nothing"] = opts["nothing"];
1239
+ return ctx.transport.callTool("frame-debugger-disable", args, toolCallOptionsFromCli(opts));
1240
+ })();
1241
+ });
1242
+ }
1243
+ // Frame Debugger / Enable
1244
+ {
1245
+ const cmd = program
1246
+ .command("frame-debugger-enable")
1247
+ .description("Enable the Unity Frame Debugger via reflection on FrameDebuggerUtility.");
1248
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
1249
+ addToolCallControlOptions(cmd);
1250
+ cmd.action(function (_opts) {
1251
+ return runCommand(this, async (ctx) => {
1252
+ const opts = this.opts();
1253
+ const args = {};
1254
+ if (opts["nothing"] !== undefined)
1255
+ args["nothing"] = opts["nothing"];
1256
+ return ctx.transport.callTool("frame-debugger-enable", args, toolCallOptionsFromCli(opts));
1257
+ })();
1258
+ });
1259
+ }
1260
+ // Frame Debugger / Get Events
1261
+ {
1262
+ const cmd = program
1263
+ .command("frame-debugger-get-events")
1264
+ .description("Page through draw-call events captured by the Frame Debugger.");
1265
+ cmd.addOption(new Option("--cursor <int>", "Cursor offset into the event list. Default: 0.").argParser(coerceInteger));
1266
+ cmd.addOption(new Option("--pageSize <int>", "Number of events per page. Default: 50.").argParser(coerceInteger));
1267
+ addToolCallControlOptions(cmd);
1268
+ cmd.action(function (_opts) {
1269
+ return runCommand(this, async (ctx) => {
1270
+ const opts = this.opts();
1271
+ const args = {};
1272
+ if (opts["cursor"] !== undefined)
1273
+ args["cursor"] = opts["cursor"];
1274
+ if (opts["pageSize"] !== undefined)
1275
+ args["pageSize"] = opts["pageSize"];
1276
+ return ctx.transport.callTool("frame-debugger-get-events", args, toolCallOptionsFromCli(opts));
1277
+ })();
1278
+ });
1279
+ }
1280
+ // GameObject / Component / Add
1281
+ {
1282
+ const cmd = program
1283
+ .command("gameobject-component-add")
1284
+ .description("Add Component to GameObject in opened Prefab or in a Scene. Use 'gameobject-find' tool to find the target GameObject first. Use 'gameobject-component-list-all' tool to find the component type names to add.");
1285
+ cmd.addOption(new Option("--componentNames <json>", "Full name of the Component. It should include full namespace path and the class name.").argParser(coerceJson).makeOptionMandatory(true));
1286
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Find GameObject in opened Prefab or in the active Scene.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
1287
+ addToolCallControlOptions(cmd);
1288
+ cmd.action(function (_opts) {
1289
+ return runCommand(this, async (ctx) => {
1290
+ const opts = this.opts();
1291
+ const args = {};
1292
+ if (opts["componentNames"] !== undefined)
1293
+ args["componentNames"] = opts["componentNames"];
1294
+ if (opts["gameObjectRef"] !== undefined)
1295
+ args["gameObjectRef"] = opts["gameObjectRef"];
1296
+ return ctx.transport.callTool("gameobject-component-add", args, toolCallOptionsFromCli(opts));
1297
+ })();
1298
+ });
1299
+ }
1300
+ // GameObject / Component / Destroy
1301
+ {
1302
+ const cmd = program
1303
+ .command("gameobject-component-destroy")
1304
+ .description("Destroy one or many components from target GameObject. Can't destroy missed components. Use 'gameobject-find' tool to find the target GameObject and 'gameobject-component-get' to get component details first.");
1305
+ cmd.addOption(new Option("--destroyComponentRefs <json-array>", "Component reference array. Used to find Component at GameObject.").argParser(coerceJson).makeOptionMandatory(true));
1306
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Find GameObject in opened Prefab or in the active Scene.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
1307
+ addToolCallControlOptions(cmd);
1308
+ cmd.action(function (_opts) {
1309
+ return runCommand(this, async (ctx) => {
1310
+ const opts = this.opts();
1311
+ const args = {};
1312
+ if (opts["destroyComponentRefs"] !== undefined)
1313
+ args["destroyComponentRefs"] = opts["destroyComponentRefs"];
1314
+ if (opts["gameObjectRef"] !== undefined)
1315
+ args["gameObjectRef"] = opts["gameObjectRef"];
1316
+ return ctx.transport.callTool("gameobject-component-destroy", args, toolCallOptionsFromCli(opts));
1317
+ })();
1318
+ });
1319
+ }
1320
+ // GameObject / Component / Get
1321
+ {
1322
+ const cmd = program
1323
+ .command("gameobject-component-get")
1324
+ .description("Get detailed information about a specific Component on a GameObject. Returns component type, enabled state, and optionally serialized fields and properties. Use this to inspect component data before modifying it. Use 'gameobject-find' tool to get the list of all components on the GameObject. Path-scoped reads (token-saving): supply 'paths' (a list of paths) to read only the listed fields/elements via Reflector.TryReadAt, or 'viewQuery' (a ViewQuery) to navigate to a subtree and/or filter by name regex / max depth / type via Reflector.View. The result is returned in the 'View' field of the response. These two parameters are mutually exclusive — supply at most one. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
1325
+ cmd.addOption(new Option("--componentRef <json>", "Component reference. Used to find a Component at GameObject.").argParser(coerceJson).makeOptionMandatory(true));
1326
+ cmd.addOption(new Option("--deepSerialization <bool>", "Performs deep serialization including all nested objects. Otherwise, only serializes top-level members.").argParser(coerceBoolean));
1327
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Find GameObject in opened Prefab or in the active Scene.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
1328
+ cmd.addOption(new Option("--includeFields <bool>", "Include serialized fields of the component.").argParser(coerceBoolean));
1329
+ cmd.addOption(new Option("--includeProperties <bool>", "Include serialized properties of the component.").argParser(coerceBoolean));
1330
+ cmd.addOption(new Option("--paths <json>", "Optional. List of paths to read individually via Reflector.TryReadAt. When supplied, the legacy 'Fields'/'Properties' lists are skipped and the result is returned in 'View'. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Mutually exclusive with 'viewQuery'.").argParser(coerceJson));
1331
+ cmd.addOption(new Option("--viewQuery <json>", "Optional. View-query filter routed through Reflector.View. When supplied, the legacy 'Fields'/'Properties' lists are skipped and the filtered subtree is returned in 'View'. Mutually exclusive with 'paths'.").argParser(coerceJson));
1332
+ addToolCallControlOptions(cmd);
1333
+ cmd.action(function (_opts) {
1334
+ return runCommand(this, async (ctx) => {
1335
+ const opts = this.opts();
1336
+ const args = {};
1337
+ if (opts["componentRef"] !== undefined)
1338
+ args["componentRef"] = opts["componentRef"];
1339
+ if (opts["deepSerialization"] !== undefined)
1340
+ args["deepSerialization"] = opts["deepSerialization"];
1341
+ if (opts["gameObjectRef"] !== undefined)
1342
+ args["gameObjectRef"] = opts["gameObjectRef"];
1343
+ if (opts["includeFields"] !== undefined)
1344
+ args["includeFields"] = opts["includeFields"];
1345
+ if (opts["includeProperties"] !== undefined)
1346
+ args["includeProperties"] = opts["includeProperties"];
1347
+ if (opts["paths"] !== undefined)
1348
+ args["paths"] = opts["paths"];
1349
+ if (opts["viewQuery"] !== undefined)
1350
+ args["viewQuery"] = opts["viewQuery"];
1351
+ return ctx.transport.callTool("gameobject-component-get", args, toolCallOptionsFromCli(opts));
1352
+ })();
1353
+ });
1354
+ }
1355
+ // GameObject / Component / List All
1356
+ {
1357
+ const cmd = program
1358
+ .command("gameobject-component-list-all")
1359
+ .description("List C# class names extended from UnityEngine.Component. Use this to find component type names for 'gameobject-component-add' tool. Results are paginated to avoid overwhelming responses.");
1360
+ cmd.addOption(new Option("--page <int>", "Page number (0-based). Default is 0.").argParser(coerceInteger));
1361
+ cmd.addOption(new Option("--pageSize <int>", "Number of items per page. Default is 5. Max is 500.").argParser(coerceInteger));
1362
+ cmd.addOption(new Option("--search <string>", "Substring for searching components. Could be empty."));
1363
+ addToolCallControlOptions(cmd);
1364
+ cmd.action(function (_opts) {
1365
+ return runCommand(this, async (ctx) => {
1366
+ const opts = this.opts();
1367
+ const args = {};
1368
+ if (opts["page"] !== undefined)
1369
+ args["page"] = opts["page"];
1370
+ if (opts["pageSize"] !== undefined)
1371
+ args["pageSize"] = opts["pageSize"];
1372
+ if (opts["search"] !== undefined)
1373
+ args["search"] = opts["search"];
1374
+ return ctx.transport.callTool("gameobject-component-list-all", args, toolCallOptionsFromCli(opts));
1375
+ })();
1376
+ });
1377
+ }
1378
+ // GameObject / Component / Modify
1379
+ {
1380
+ const cmd = program
1381
+ .command("gameobject-component-modify")
1382
+ .description("Modify a specific Component on a GameObject in opened Prefab or in a Scene. Allows direct modification of component fields and properties without wrapping in GameObject structure. Use 'gameobject-component-get' first to inspect the component structure before modifying. Three modification surfaces (use whichever fits the task): 1. 'componentDiff' — full SerializedMember diff (legacy, backwards compatible). 2. 'pathPatches' — list of {path, value} pairs routed through Reflector.TryModifyAt; atomic per-path modification, multiple entries can target different depths. 3. 'jsonPatch' — a JSON Merge Patch (RFC 7396, extended with [i]/[key] notation) routed through Reflector.TryPatch; multiple fields at any depth in a single call. When more than one is supplied they run in this order: jsonPatch → pathPatches → componentDiff. At least one is required. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
1383
+ cmd.addOption(new Option("--componentDiff <json>", "Optional. The full component data to apply (legacy path). Should contain 'fields' and/or 'props' with the values to modify. Only include the fields/properties you want to change. Any unknown or invalid fields and properties will be reported in the response.").argParser(coerceJson));
1384
+ cmd.addOption(new Option("--componentRef <json>", "Component reference. Used to find a Component at GameObject.").argParser(coerceJson).makeOptionMandatory(true));
1385
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Find GameObject in opened Prefab or in the active Scene.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
1386
+ cmd.addOption(new Option("--jsonPatch <string>", "Optional. JSON Merge Patch (RFC 7396, extended with [i]/[key] keys) routed through Reflector.TryPatch. Allows multiple fields at any depth to be updated in a single call. Use '$type' for compatible-subtype replacement."));
1387
+ cmd.addOption(new Option("--pathPatches <json>", "Optional. List of path-scoped patches routed through Reflector.TryModifyAt. Each entry targets one field/element/entry by path. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'.").argParser(coerceJson));
1388
+ addToolCallControlOptions(cmd);
1389
+ cmd.action(function (_opts) {
1390
+ return runCommand(this, async (ctx) => {
1391
+ const opts = this.opts();
1392
+ const args = {};
1393
+ if (opts["componentDiff"] !== undefined)
1394
+ args["componentDiff"] = opts["componentDiff"];
1395
+ if (opts["componentRef"] !== undefined)
1396
+ args["componentRef"] = opts["componentRef"];
1397
+ if (opts["gameObjectRef"] !== undefined)
1398
+ args["gameObjectRef"] = opts["gameObjectRef"];
1399
+ if (opts["jsonPatch"] !== undefined)
1400
+ args["jsonPatch"] = opts["jsonPatch"];
1401
+ if (opts["pathPatches"] !== undefined)
1402
+ args["pathPatches"] = opts["pathPatches"];
1403
+ return ctx.transport.callTool("gameobject-component-modify", args, toolCallOptionsFromCli(opts));
1404
+ })();
1405
+ });
1406
+ }
1407
+ // GameObject / Create
1408
+ {
1409
+ const cmd = program
1410
+ .command("gameobject-create")
1411
+ .description("Create a new GameObject in opened Prefab or in a Scene. If needed - provide proper 'position', 'rotation' and 'scale' to reduce amount of operations.");
1412
+ cmd.addOption(new Option("--isLocalSpace <bool>", "World or Local space of transform.").argParser(coerceBoolean));
1413
+ cmd.addOption(new Option("--name <string>", "Name of the new GameObject.").makeOptionMandatory(true));
1414
+ cmd.addOption(new Option("--parentGameObjectRef <ref>", "Parent GameObject reference. If not provided, the GameObject will be created at the root of the scene or prefab.").argParser(coerceGameObjectRef));
1415
+ cmd.addOption(new Option("--position <x,y,z|json>", "Transform position of the GameObject.").argParser(coerceVec3));
1416
+ cmd.addOption(new Option("--primitiveType <value>", "primitiveType").choices(["Sphere", "Capsule", "Cylinder", "Cube", "Plane", "Quad"]));
1417
+ cmd.addOption(new Option("--rotation <x,y,z|json>", "Transform rotation of the GameObject. Euler angles in degrees.").argParser(coerceVec3));
1418
+ cmd.addOption(new Option("--scale <x,y,z|json>", "Transform scale of the GameObject.").argParser(coerceVec3));
1419
+ addToolCallControlOptions(cmd);
1420
+ cmd.action(function (_opts) {
1421
+ return runCommand(this, async (ctx) => {
1422
+ const opts = this.opts();
1423
+ const args = {};
1424
+ if (opts["isLocalSpace"] !== undefined)
1425
+ args["isLocalSpace"] = opts["isLocalSpace"];
1426
+ if (opts["name"] !== undefined)
1427
+ args["name"] = opts["name"];
1428
+ if (opts["parentGameObjectRef"] !== undefined)
1429
+ args["parentGameObjectRef"] = opts["parentGameObjectRef"];
1430
+ if (opts["position"] !== undefined)
1431
+ args["position"] = opts["position"];
1432
+ if (opts["primitiveType"] !== undefined)
1433
+ args["primitiveType"] = opts["primitiveType"];
1434
+ if (opts["rotation"] !== undefined)
1435
+ args["rotation"] = opts["rotation"];
1436
+ if (opts["scale"] !== undefined)
1437
+ args["scale"] = opts["scale"];
1438
+ return ctx.transport.callTool("gameobject-create", args, toolCallOptionsFromCli(opts));
1439
+ })();
1440
+ });
1441
+ }
1442
+ // GameObject / Destroy
1443
+ {
1444
+ const cmd = program
1445
+ .command("gameobject-destroy")
1446
+ .description("Destroy GameObject and all nested GameObjects recursively in opened Prefab or in a Scene. Use 'gameobject-find' tool to find the target GameObject first.");
1447
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Find GameObject in opened Prefab or in the active Scene.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
1448
+ addToolCallControlOptions(cmd);
1449
+ cmd.action(function (_opts) {
1450
+ return runCommand(this, async (ctx) => {
1451
+ const opts = this.opts();
1452
+ const args = {};
1453
+ if (opts["gameObjectRef"] !== undefined)
1454
+ args["gameObjectRef"] = opts["gameObjectRef"];
1455
+ return ctx.transport.callTool("gameobject-destroy", args, toolCallOptionsFromCli(opts));
1456
+ })();
1457
+ });
1458
+ }
1459
+ // GameObject / Duplicate
1460
+ {
1461
+ const cmd = program
1462
+ .command("gameobject-duplicate")
1463
+ .description("Duplicate GameObjects in opened Prefab or in a Scene. Use 'gameobject-find' tool to find the target GameObjects first.");
1464
+ cmd.addOption(new Option("--gameObjectRefs <json-array>", "Array of GameObjects in opened Prefab or in the active Scene.").argParser(coerceJson).makeOptionMandatory(true));
1465
+ addToolCallControlOptions(cmd);
1466
+ cmd.action(function (_opts) {
1467
+ return runCommand(this, async (ctx) => {
1468
+ const opts = this.opts();
1469
+ const args = {};
1470
+ if (opts["gameObjectRefs"] !== undefined)
1471
+ args["gameObjectRefs"] = opts["gameObjectRefs"];
1472
+ return ctx.transport.callTool("gameobject-duplicate", args, toolCallOptionsFromCli(opts));
1473
+ })();
1474
+ });
1475
+ }
1476
+ // GameObject / Find
1477
+ {
1478
+ const cmd = program
1479
+ .command("gameobject-find")
1480
+ .description("Finds specific GameObject by provided information in opened Prefab or in a Scene. First it looks for the opened Prefab, if any Prefab is opened it looks only there ignoring a scene. If no opened Prefab it looks into current active scene. Returns GameObject information and its children. Also, it returns Components preview just for the target GameObject. Path-scoped reads (token-saving): supply 'paths' (a list of paths) to read only the listed fields/elements via Reflector.TryReadAt, or 'viewQuery' (a ViewQuery) to navigate to a subtree and/or filter by name regex / max depth / type via Reflector.View. When either is supplied, the result populates 'Data' on the returned GameObjectData and overrides 'includeData' (which would otherwise produce a full recursive serialization). These two parameters are mutually exclusive — supply at most one. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
1481
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Find GameObject in opened Prefab or in the active Scene.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
1482
+ cmd.addOption(new Option("--hierarchyDepth <int>", "Determines the depth of the hierarchy to include. 0 - means only the target GameObject. 1 - means to include one layer below.").argParser(coerceInteger));
1483
+ cmd.addOption(new Option("--includeBounds <bool>", "Include 3D bounds of the GameObject.").argParser(coerceBoolean));
1484
+ cmd.addOption(new Option("--includeComponents <bool>", "Include attached components references.").argParser(coerceBoolean));
1485
+ cmd.addOption(new Option("--includeData <bool>", "Include editable GameObject data (tag, layer, etc).").argParser(coerceBoolean));
1486
+ cmd.addOption(new Option("--includeHierarchy <bool>", "Include hierarchy metadata.").argParser(coerceBoolean));
1487
+ cmd.addOption(new Option("--paths <json>", "Optional. List of paths to read individually via Reflector.TryReadAt. When supplied, replaces 'includeData'-style full serialization with a path-scoped aggregate. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Mutually exclusive with 'viewQuery'.").argParser(coerceJson));
1488
+ cmd.addOption(new Option("--viewQuery <json>", "Optional. View-query filter routed through Reflector.View. When supplied, replaces 'includeData'-style full serialization with the filtered subtree. Mutually exclusive with 'paths'.").argParser(coerceJson));
1489
+ addToolCallControlOptions(cmd);
1490
+ cmd.action(function (_opts) {
1491
+ return runCommand(this, async (ctx) => {
1492
+ const opts = this.opts();
1493
+ const args = {};
1494
+ if (opts["gameObjectRef"] !== undefined)
1495
+ args["gameObjectRef"] = opts["gameObjectRef"];
1496
+ if (opts["hierarchyDepth"] !== undefined)
1497
+ args["hierarchyDepth"] = opts["hierarchyDepth"];
1498
+ if (opts["includeBounds"] !== undefined)
1499
+ args["includeBounds"] = opts["includeBounds"];
1500
+ if (opts["includeComponents"] !== undefined)
1501
+ args["includeComponents"] = opts["includeComponents"];
1502
+ if (opts["includeData"] !== undefined)
1503
+ args["includeData"] = opts["includeData"];
1504
+ if (opts["includeHierarchy"] !== undefined)
1505
+ args["includeHierarchy"] = opts["includeHierarchy"];
1506
+ if (opts["paths"] !== undefined)
1507
+ args["paths"] = opts["paths"];
1508
+ if (opts["viewQuery"] !== undefined)
1509
+ args["viewQuery"] = opts["viewQuery"];
1510
+ return ctx.transport.callTool("gameobject-find", args, toolCallOptionsFromCli(opts));
1511
+ })();
1512
+ });
1513
+ }
1514
+ // GameObject / Modify
1515
+ {
1516
+ const cmd = program
1517
+ .command("gameobject-modify")
1518
+ .description("Modify GameObject fields and properties in opened Prefab or in a Scene. You can modify multiple GameObjects at once. Just provide the same number of GameObject references and SerializedMember objects. Three modification surfaces (per GameObject — parallel arrays must have the same length as gameObjectRefs): 1. 'gameObjectDiffs' — full SerializedMember diff per GameObject (legacy, backwards compatible). 2. 'pathPatchesPerGameObject' — list of {path, value} patches per GameObject routed through Reflector.TryModifyAt; atomic per-path modification. 3. 'jsonPatchesPerGameObject' — JSON Merge Patch per GameObject routed through Reflector.TryPatch. When more than one is supplied for the same GameObject they run in this order: jsonPatch → pathPatches → diff. At least one of the three is required. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'.");
1519
+ cmd.addOption(new Option("--gameObjectDiffs <json-array>", "Optional. Each item in the array represents a GameObject modification of the 'gameObjectRefs' at the same index. Usually a GameObject is a container for components. Each component may have fields and properties for modification. If you need to modify components of a GameObject, please use 'gameobject-component-modify' tool. Ignore values that should not be modified. Any unknown or wrong located fields and properties will be ignored. Check the result of this command to see what was changed. The ignored fields and properties will be listed.").argParser(coerceJson));
1520
+ cmd.addOption(new Option("--gameObjectRefs <json-array>", "Array of GameObjects in opened Prefab or in the active Scene.").argParser(coerceJson).makeOptionMandatory(true));
1521
+ cmd.addOption(new Option("--jsonPatchesPerGameObject <json>", "Optional. Per-GameObject JSON Merge Patch (RFC 7396, extended with [i]/[key] keys) routed through Reflector.TryPatch. Outer index aligns with 'gameObjectRefs'. Pass null or omit for GameObjects that should not receive a JSON patch.").argParser(coerceJson));
1522
+ cmd.addOption(new Option("--pathPatchesPerGameObject <json>", "Optional. Per-GameObject list of path-scoped patches routed through Reflector.TryModifyAt. Outer index aligns with 'gameObjectRefs'; inner list contains {path, value} entries. Pass null or omit for GameObjects that should not receive path patches.").argParser(coerceJson));
1523
+ addToolCallControlOptions(cmd);
1524
+ cmd.action(function (_opts) {
1525
+ return runCommand(this, async (ctx) => {
1526
+ const opts = this.opts();
1527
+ const args = {};
1528
+ if (opts["gameObjectDiffs"] !== undefined)
1529
+ args["gameObjectDiffs"] = opts["gameObjectDiffs"];
1530
+ if (opts["gameObjectRefs"] !== undefined)
1531
+ args["gameObjectRefs"] = opts["gameObjectRefs"];
1532
+ if (opts["jsonPatchesPerGameObject"] !== undefined)
1533
+ args["jsonPatchesPerGameObject"] = opts["jsonPatchesPerGameObject"];
1534
+ if (opts["pathPatchesPerGameObject"] !== undefined)
1535
+ args["pathPatchesPerGameObject"] = opts["pathPatchesPerGameObject"];
1536
+ return ctx.transport.callTool("gameobject-modify", args, toolCallOptionsFromCli(opts));
1537
+ })();
1538
+ });
1539
+ }
1540
+ // GameObject / Set Parent
1541
+ {
1542
+ const cmd = program
1543
+ .command("gameobject-set-parent")
1544
+ .description("Set parent GameObject to list of GameObjects in opened Prefab or in a Scene. Use 'gameobject-find' tool to find the target GameObjects first.");
1545
+ cmd.addOption(new Option("--gameObjectRefs <json-array>", "List of references to the GameObjects to set new parent.").argParser(coerceJson).makeOptionMandatory(true));
1546
+ cmd.addOption(new Option("--parentGameObjectRef <ref>", "Reference to the parent GameObject.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
1547
+ cmd.addOption(new Option("--worldPositionStays <bool>", "A boolean flag indicating whether the GameObject's world position should remain unchanged when setting its parent.").argParser(coerceBoolean));
1548
+ addToolCallControlOptions(cmd);
1549
+ cmd.action(function (_opts) {
1550
+ return runCommand(this, async (ctx) => {
1551
+ const opts = this.opts();
1552
+ const args = {};
1553
+ if (opts["gameObjectRefs"] !== undefined)
1554
+ args["gameObjectRefs"] = opts["gameObjectRefs"];
1555
+ if (opts["parentGameObjectRef"] !== undefined)
1556
+ args["parentGameObjectRef"] = opts["parentGameObjectRef"];
1557
+ if (opts["worldPositionStays"] !== undefined)
1558
+ args["worldPositionStays"] = opts["worldPositionStays"];
1559
+ return ctx.transport.callTool("gameobject-set-parent", args, toolCallOptionsFromCli(opts));
1560
+ })();
1561
+ });
1562
+ }
1563
+ // Graphics / Lightmap Bake / Cancel
1564
+ {
1565
+ const cmd = program
1566
+ .command("graphics-lightbake-cancel")
1567
+ .description("Cancel the in-progress lightmap bake (Lightmapping.Cancel).");
1568
+ cmd.addOption(new Option("--failIfNotRunning <bool>", "Fail with an error instead of returning a 'no-op' when no bake is running (default false). Useful for automation that must assert a bake was actually cancelled.").argParser(coerceBoolean));
1569
+ addToolCallControlOptions(cmd);
1570
+ cmd.action(function (_opts) {
1571
+ return runCommand(this, async (ctx) => {
1572
+ const opts = this.opts();
1573
+ const args = {};
1574
+ if (opts["failIfNotRunning"] !== undefined)
1575
+ args["failIfNotRunning"] = opts["failIfNotRunning"];
1576
+ return ctx.transport.callTool("graphics-lightbake-cancel", args, toolCallOptionsFromCli(opts));
1577
+ })();
1578
+ });
1579
+ }
1580
+ // Graphics / Lightmap Bake / Clear
1581
+ {
1582
+ const cmd = program
1583
+ .command("graphics-lightbake-clear")
1584
+ .description("Clear baked lightmaps for the open scenes (Lightmapping.Clear).");
1585
+ cmd.addOption(new Option("--cancelRunningBake <bool>", "Cancel a running bake before clearing instead of refusing (default false).").argParser(coerceBoolean));
1586
+ addToolCallControlOptions(cmd);
1587
+ cmd.action(function (_opts) {
1588
+ return runCommand(this, async (ctx) => {
1589
+ const opts = this.opts();
1590
+ const args = {};
1591
+ if (opts["cancelRunningBake"] !== undefined)
1592
+ args["cancelRunningBake"] = opts["cancelRunningBake"];
1593
+ return ctx.transport.callTool("graphics-lightbake-clear", args, toolCallOptionsFromCli(opts));
1594
+ })();
1595
+ });
1596
+ }
1597
+ // Graphics / Lightmap Bake / Start
1598
+ {
1599
+ const cmd = program
1600
+ .command("graphics-lightbake-start")
1601
+ .description("Start an asynchronous lightmap bake (Lightmapping.BakeAsync).");
1602
+ cmd.addOption(new Option("--bakeMode <string>", "Bake mode: 'BakedGI' | 'RealtimeGI' | 'BakedAndRealtimeGI'. Default 'BakedGI'."));
1603
+ cmd.addOption(new Option("--clearExisting <bool>", "Whether to clear existing lightmaps first. Default false.").argParser(coerceBoolean));
1604
+ addToolCallControlOptions(cmd);
1605
+ cmd.action(function (_opts) {
1606
+ return runCommand(this, async (ctx) => {
1607
+ const opts = this.opts();
1608
+ const args = {};
1609
+ if (opts["bakeMode"] !== undefined)
1610
+ args["bakeMode"] = opts["bakeMode"];
1611
+ if (opts["clearExisting"] !== undefined)
1612
+ args["clearExisting"] = opts["clearExisting"];
1613
+ return ctx.transport.callTool("graphics-lightbake-start", args, toolCallOptionsFromCli(opts));
1614
+ })();
1615
+ });
1616
+ }
1617
+ // Graphics / Lightmap Bake / Status
1618
+ {
1619
+ const cmd = program
1620
+ .command("graphics-lightbake-status")
1621
+ .description("Get current lightmap bake status and generated lightmap stats.");
1622
+ cmd.addOption(new Option("--includeDiskSize <bool>", "Sum the on-disk sizes of the lightmap textures into TotalSizeBytes (default true). Set false for a cheap IsBaking/Progress/LightmapCount probe without touching the disk.").argParser(coerceBoolean));
1623
+ addToolCallControlOptions(cmd);
1624
+ cmd.action(function (_opts) {
1625
+ return runCommand(this, async (ctx) => {
1626
+ const opts = this.opts();
1627
+ const args = {};
1628
+ if (opts["includeDiskSize"] !== undefined)
1629
+ args["includeDiskSize"] = opts["includeDiskSize"];
1630
+ return ctx.transport.callTool("graphics-lightbake-status", args, toolCallOptionsFromCli(opts));
1631
+ })();
1632
+ });
1633
+ }
1634
+ // Graphics / Rendering Stats
1635
+ {
1636
+ const cmd = program
1637
+ .command("graphics-rendering-stats")
1638
+ .description("Sample UnityEditor.UnityStats for the most-recent frame's renderer counters.");
1639
+ cmd.addOption(new Option("--includeMemoryStats <bool>", "Populate TotalMemoryMB/TextureCount from the texture-memory stats (default true). Set false for a compact draw-call/batch/triangle snapshot.").argParser(coerceBoolean));
1640
+ addToolCallControlOptions(cmd);
1641
+ cmd.action(function (_opts) {
1642
+ return runCommand(this, async (ctx) => {
1643
+ const opts = this.opts();
1644
+ const args = {};
1645
+ if (opts["includeMemoryStats"] !== undefined)
1646
+ args["includeMemoryStats"] = opts["includeMemoryStats"];
1647
+ return ctx.transport.callTool("graphics-rendering-stats", args, toolCallOptionsFromCli(opts));
1648
+ })();
1649
+ });
1650
+ }
1651
+ // Graphics / URP Asset / Get
1652
+ {
1653
+ const cmd = program
1654
+ .command("graphics-urp-asset-get")
1655
+ .description("Read URP UniversalRenderPipelineAsset settings.");
1656
+ cmd.addOption(new Option("--assetPath <string>", "URP asset path. Default = QualitySettings.renderPipeline of the current Quality level."));
1657
+ addToolCallControlOptions(cmd);
1658
+ cmd.action(function (_opts) {
1659
+ return runCommand(this, async (ctx) => {
1660
+ const opts = this.opts();
1661
+ const args = {};
1662
+ if (opts["assetPath"] !== undefined)
1663
+ args["assetPath"] = opts["assetPath"];
1664
+ return ctx.transport.callTool("graphics-urp-asset-get", args, toolCallOptionsFromCli(opts));
1665
+ })();
1666
+ });
1667
+ }
1668
+ // Graphics / URP Asset / Set
1669
+ {
1670
+ const cmd = program
1671
+ .command("graphics-urp-asset-set")
1672
+ .description("Mutate URP UniversalRenderPipelineAsset settings (only non-null params are written).");
1673
+ cmd.addOption(new Option("--additionalLightsPerObjectLimit <int>", "Maximum number of additional per-object lights. Ignored when null.").argParser(coerceInteger));
1674
+ cmd.addOption(new Option("--additionalLightsRenderingMode <string>", "Additional-lights rendering mode enum name (e.g. 'Disabled', 'PerPixel', 'PerVertex'). Ignored when null."));
1675
+ cmd.addOption(new Option("--assetPath <string>", "URP asset path (must point at a UniversalRenderPipelineAsset).").makeOptionMandatory(true));
1676
+ cmd.addOption(new Option("--hdr <bool>", "UniversalRenderPipelineAsset.supportsHDR. Ignored when null.").argParser(coerceBoolean));
1677
+ cmd.addOption(new Option("--mainLightRenderingMode <string>", "Main-light rendering mode enum name (e.g. 'Disabled', 'PerPixel'). Ignored when null."));
1678
+ cmd.addOption(new Option("--msaaSampleCount <string>", "MSAA sample count: 'Disabled' | '_2x' | '_4x' | '_8x'. Ignored when null."));
1679
+ cmd.addOption(new Option("--renderScale <num>", "UniversalRenderPipelineAsset.renderScale. Ignored when null.").argParser(coerceNumber));
1680
+ cmd.addOption(new Option("--supportsCameraDepthTexture <bool>", "UniversalRenderPipelineAsset.supportsCameraDepthTexture. Ignored when null.").argParser(coerceBoolean));
1681
+ cmd.addOption(new Option("--supportsCameraOpaqueTexture <bool>", "UniversalRenderPipelineAsset.supportsCameraOpaqueTexture. Ignored when null.").argParser(coerceBoolean));
1682
+ addToolCallControlOptions(cmd);
1683
+ cmd.action(function (_opts) {
1684
+ return runCommand(this, async (ctx) => {
1685
+ const opts = this.opts();
1686
+ const args = {};
1687
+ if (opts["additionalLightsPerObjectLimit"] !== undefined)
1688
+ args["additionalLightsPerObjectLimit"] = opts["additionalLightsPerObjectLimit"];
1689
+ if (opts["additionalLightsRenderingMode"] !== undefined)
1690
+ args["additionalLightsRenderingMode"] = opts["additionalLightsRenderingMode"];
1691
+ if (opts["assetPath"] !== undefined)
1692
+ args["assetPath"] = opts["assetPath"];
1693
+ if (opts["hdr"] !== undefined)
1694
+ args["hdr"] = opts["hdr"];
1695
+ if (opts["mainLightRenderingMode"] !== undefined)
1696
+ args["mainLightRenderingMode"] = opts["mainLightRenderingMode"];
1697
+ if (opts["msaaSampleCount"] !== undefined)
1698
+ args["msaaSampleCount"] = opts["msaaSampleCount"];
1699
+ if (opts["renderScale"] !== undefined)
1700
+ args["renderScale"] = opts["renderScale"];
1701
+ if (opts["supportsCameraDepthTexture"] !== undefined)
1702
+ args["supportsCameraDepthTexture"] = opts["supportsCameraDepthTexture"];
1703
+ if (opts["supportsCameraOpaqueTexture"] !== undefined)
1704
+ args["supportsCameraOpaqueTexture"] = opts["supportsCameraOpaqueTexture"];
1705
+ return ctx.transport.callTool("graphics-urp-asset-set", args, toolCallOptionsFromCli(opts));
1706
+ })();
1707
+ });
1708
+ }
1709
+ // Graphics / URP Renderer Feature / Add
1710
+ {
1711
+ const cmd = program
1712
+ .command("graphics-urp-renderer-feature-add")
1713
+ .description("Add a ScriptableRendererFeature to a URP renderer data asset.");
1714
+ cmd.addOption(new Option("--featureTypeName <string>", "Type name of the feature, e.g. 'UnityEngine.Rendering.Universal.RenderObjects'.").makeOptionMandatory(true));
1715
+ cmd.addOption(new Option("--rendererDataPath <string>", "ScriptableRendererData asset path (required).").makeOptionMandatory(true));
1716
+ addToolCallControlOptions(cmd);
1717
+ cmd.action(function (_opts) {
1718
+ return runCommand(this, async (ctx) => {
1719
+ const opts = this.opts();
1720
+ const args = {};
1721
+ if (opts["featureTypeName"] !== undefined)
1722
+ args["featureTypeName"] = opts["featureTypeName"];
1723
+ if (opts["rendererDataPath"] !== undefined)
1724
+ args["rendererDataPath"] = opts["rendererDataPath"];
1725
+ return ctx.transport.callTool("graphics-urp-renderer-feature-add", args, toolCallOptionsFromCli(opts));
1726
+ })();
1727
+ });
1728
+ }
1729
+ // Graphics / URP Renderer Feature / Configure
1730
+ {
1731
+ const cmd = program
1732
+ .command("graphics-urp-renderer-feature-configure")
1733
+ .description("Set a single field on a URP renderer feature (JSON-encoded value).");
1734
+ cmd.addOption(new Option("--fieldName <string>", "Field name to set.").makeOptionMandatory(true));
1735
+ cmd.addOption(new Option("--rendererDataPath <string>", "ScriptableRendererData asset path (required).").makeOptionMandatory(true));
1736
+ cmd.addOption(new Option("--typeNameOrIndex <string>", "Type name (matches what was added) OR 0-based index.").makeOptionMandatory(true));
1737
+ cmd.addOption(new Option("--valueJson <string>", "JSON-encoded value.").makeOptionMandatory(true));
1738
+ addToolCallControlOptions(cmd);
1739
+ cmd.action(function (_opts) {
1740
+ return runCommand(this, async (ctx) => {
1741
+ const opts = this.opts();
1742
+ const args = {};
1743
+ if (opts["fieldName"] !== undefined)
1744
+ args["fieldName"] = opts["fieldName"];
1745
+ if (opts["rendererDataPath"] !== undefined)
1746
+ args["rendererDataPath"] = opts["rendererDataPath"];
1747
+ if (opts["typeNameOrIndex"] !== undefined)
1748
+ args["typeNameOrIndex"] = opts["typeNameOrIndex"];
1749
+ if (opts["valueJson"] !== undefined)
1750
+ args["valueJson"] = opts["valueJson"];
1751
+ return ctx.transport.callTool("graphics-urp-renderer-feature-configure", args, toolCallOptionsFromCli(opts));
1752
+ })();
1753
+ });
1754
+ }
1755
+ // Graphics / URP Renderer Feature / List
1756
+ {
1757
+ const cmd = program
1758
+ .command("graphics-urp-renderer-feature-list")
1759
+ .description("Enumerate URP renderer features on a ScriptableRendererData asset.");
1760
+ cmd.addOption(new Option("--rendererDataPath <string>", "ScriptableRendererData asset path. Optional — defaults to the URP asset's first renderer."));
1761
+ addToolCallControlOptions(cmd);
1762
+ cmd.action(function (_opts) {
1763
+ return runCommand(this, async (ctx) => {
1764
+ const opts = this.opts();
1765
+ const args = {};
1766
+ if (opts["rendererDataPath"] !== undefined)
1767
+ args["rendererDataPath"] = opts["rendererDataPath"];
1768
+ return ctx.transport.callTool("graphics-urp-renderer-feature-list", args, toolCallOptionsFromCli(opts));
1769
+ })();
1770
+ });
1771
+ }
1772
+ // Graphics / URP Renderer Feature / Remove
1773
+ {
1774
+ const cmd = program
1775
+ .command("graphics-urp-renderer-feature-remove")
1776
+ .description("Remove a URP renderer feature by 0-based index or type-name match.");
1777
+ cmd.addOption(new Option("--rendererDataPath <string>", "ScriptableRendererData asset path (required).").makeOptionMandatory(true));
1778
+ cmd.addOption(new Option("--typeNameOrIndex <string>", "Type name (matches what was added) OR 0-based index.").makeOptionMandatory(true));
1779
+ addToolCallControlOptions(cmd);
1780
+ cmd.action(function (_opts) {
1781
+ return runCommand(this, async (ctx) => {
1782
+ const opts = this.opts();
1783
+ const args = {};
1784
+ if (opts["rendererDataPath"] !== undefined)
1785
+ args["rendererDataPath"] = opts["rendererDataPath"];
1786
+ if (opts["typeNameOrIndex"] !== undefined)
1787
+ args["typeNameOrIndex"] = opts["typeNameOrIndex"];
1788
+ return ctx.transport.callTool("graphics-urp-renderer-feature-remove", args, toolCallOptionsFromCli(opts));
1789
+ })();
1790
+ });
1791
+ }
1792
+ // Graphics / Volume / Add Override
1793
+ {
1794
+ const cmd = program
1795
+ .command("graphics-volume-add-override")
1796
+ .description("Add a VolumeComponent override (e.g. Bloom, ColorAdjustments) to a VolumeProfile. profileOrVolumePath accepts either an asset path or a scene Volume's hierarchy path.");
1797
+ cmd.addOption(new Option("--active <bool>", "Set VolumeComponent.active after adding. Default true.").argParser(coerceBoolean));
1798
+ cmd.addOption(new Option("--componentTypeName <string>", "Full or short type name of the VolumeComponent. Examples: 'UnityEngine.Rendering.Universal.Bloom', 'ColorAdjustments', 'UnityEngine.Rendering.HighDefinition.Tonemapping'.").makeOptionMandatory(true));
1799
+ cmd.addOption(new Option("--profileOrVolumePath <string>", "Asset path of a VolumeProfile (*.asset) OR scene hierarchy path of a Volume GameObject.").makeOptionMandatory(true));
1800
+ addToolCallControlOptions(cmd);
1801
+ cmd.action(function (_opts) {
1802
+ return runCommand(this, async (ctx) => {
1803
+ const opts = this.opts();
1804
+ const args = {};
1805
+ if (opts["active"] !== undefined)
1806
+ args["active"] = opts["active"];
1807
+ if (opts["componentTypeName"] !== undefined)
1808
+ args["componentTypeName"] = opts["componentTypeName"];
1809
+ if (opts["profileOrVolumePath"] !== undefined)
1810
+ args["profileOrVolumePath"] = opts["profileOrVolumePath"];
1811
+ return ctx.transport.callTool("graphics-volume-add-override", args, toolCallOptionsFromCli(opts));
1812
+ })();
1813
+ });
1814
+ }
1815
+ // Graphics / Volume / Create
1816
+ {
1817
+ const cmd = program
1818
+ .command("graphics-volume-create")
1819
+ .description("Create a Volume GameObject with a VolumeProfile assigned. Reuses an existing profile if profileAssetPath is set, otherwise creates a blank one.");
1820
+ cmd.addOption(new Option("--isGlobal <bool>", "Set Volume.isGlobal. Default true.").argParser(coerceBoolean));
1821
+ cmd.addOption(new Option("--name <string>", "Name of the new GameObject.").makeOptionMandatory(true));
1822
+ cmd.addOption(new Option("--newProfileAssetPath <string>", "Path where a fresh VolumeProfile asset will be created when 'profileAssetPath' is null. Default 'Assets/Volumes/{name}_Profile.asset'. Intermediate folders are created."));
1823
+ cmd.addOption(new Option("--parent <ref>", "Optional parent GameObject. When null, the volume is created at scene root.").argParser(coerceGameObjectRef));
1824
+ cmd.addOption(new Option("--position <x,y,z|json>", "Optional local position. Defaults to (0,0,0).").argParser(coerceVec3));
1825
+ cmd.addOption(new Option("--priority <num>", "Set Volume.priority. Default 0.").argParser(coerceNumber));
1826
+ cmd.addOption(new Option("--profileAssetPath <string>", "Path to an existing VolumeProfile asset to assign. Optional — when null, a blank profile is created at 'newProfileAssetPath'."));
1827
+ cmd.addOption(new Option("--weight <num>", "Set Volume.weight in [0..1]. Default 1.").argParser(coerceNumber));
1828
+ addToolCallControlOptions(cmd);
1829
+ cmd.action(function (_opts) {
1830
+ return runCommand(this, async (ctx) => {
1831
+ const opts = this.opts();
1832
+ const args = {};
1833
+ if (opts["isGlobal"] !== undefined)
1834
+ args["isGlobal"] = opts["isGlobal"];
1835
+ if (opts["name"] !== undefined)
1836
+ args["name"] = opts["name"];
1837
+ if (opts["newProfileAssetPath"] !== undefined)
1838
+ args["newProfileAssetPath"] = opts["newProfileAssetPath"];
1839
+ if (opts["parent"] !== undefined)
1840
+ args["parent"] = opts["parent"];
1841
+ if (opts["position"] !== undefined)
1842
+ args["position"] = opts["position"];
1843
+ if (opts["priority"] !== undefined)
1844
+ args["priority"] = opts["priority"];
1845
+ if (opts["profileAssetPath"] !== undefined)
1846
+ args["profileAssetPath"] = opts["profileAssetPath"];
1847
+ if (opts["weight"] !== undefined)
1848
+ args["weight"] = opts["weight"];
1849
+ return ctx.transport.callTool("graphics-volume-create", args, toolCallOptionsFromCli(opts));
1850
+ })();
1851
+ });
1852
+ }
1853
+ // Graphics / Volume / List
1854
+ {
1855
+ const cmd = program
1856
+ .command("graphics-volume-list")
1857
+ .description("List every UnityEngine.Rendering.Volume in the opened scenes. Filter by sceneGlob (wildcard against scene asset path) or onlyWithProfile.");
1858
+ cmd.addOption(new Option("--onlyWithProfile <bool>", "Include only volumes that have a VolumeProfile assigned. Default false.").argParser(coerceBoolean));
1859
+ cmd.addOption(new Option("--sceneGlob <string>", "Filter by scene asset-path glob (e.g. 'Assets/Scenes/*.unity'). Optional."));
1860
+ addToolCallControlOptions(cmd);
1861
+ cmd.action(function (_opts) {
1862
+ return runCommand(this, async (ctx) => {
1863
+ const opts = this.opts();
1864
+ const args = {};
1865
+ if (opts["onlyWithProfile"] !== undefined)
1866
+ args["onlyWithProfile"] = opts["onlyWithProfile"];
1867
+ if (opts["sceneGlob"] !== undefined)
1868
+ args["sceneGlob"] = opts["sceneGlob"];
1869
+ return ctx.transport.callTool("graphics-volume-list", args, toolCallOptionsFromCli(opts));
1870
+ })();
1871
+ });
1872
+ }
1873
+ // Graphics / Volume / Remove Override
1874
+ {
1875
+ const cmd = program
1876
+ .command("graphics-volume-remove-override")
1877
+ .description("Remove a VolumeComponent override (e.g. Bloom) from a VolumeProfile.");
1878
+ cmd.addOption(new Option("--componentTypeName <string>", "Full or short type name of the VolumeComponent override to remove.").makeOptionMandatory(true));
1879
+ cmd.addOption(new Option("--profileOrVolumePath <string>", "Asset path of a VolumeProfile (*.asset) OR scene hierarchy path of a Volume GameObject.").makeOptionMandatory(true));
1880
+ addToolCallControlOptions(cmd);
1881
+ cmd.action(function (_opts) {
1882
+ return runCommand(this, async (ctx) => {
1883
+ const opts = this.opts();
1884
+ const args = {};
1885
+ if (opts["componentTypeName"] !== undefined)
1886
+ args["componentTypeName"] = opts["componentTypeName"];
1887
+ if (opts["profileOrVolumePath"] !== undefined)
1888
+ args["profileOrVolumePath"] = opts["profileOrVolumePath"];
1889
+ return ctx.transport.callTool("graphics-volume-remove-override", args, toolCallOptionsFromCli(opts));
1890
+ })();
1891
+ });
1892
+ }
1893
+ // Graphics / Volume / Set Field
1894
+ {
1895
+ const cmd = program
1896
+ .command("graphics-volume-set-field")
1897
+ .description("Set a VolumeParameter<T> field on a VolumeComponent override (e.g. Bloom.intensity = 1.5). Optionally toggles VolumeParameter.overrideState.");
1898
+ cmd.addOption(new Option("--componentTypeName <string>", "Full or short type name of the VolumeComponent that owns the parameter.").makeOptionMandatory(true));
1899
+ cmd.addOption(new Option("--fieldName <string>", "Parameter / field name on the VolumeComponent (e.g. 'intensity', 'threshold', 'tint').").makeOptionMandatory(true));
1900
+ cmd.addOption(new Option("--profileOrVolumePath <string>", "Asset path of a VolumeProfile (*.asset) OR scene hierarchy path of a Volume GameObject.").makeOptionMandatory(true));
1901
+ cmd.addOption(new Option("--setOverrideState <bool>", "When true, also sets VolumeParameter.overrideState = true so the value contributes. Default true.").argParser(coerceBoolean));
1902
+ cmd.addOption(new Option("--valueJson <string>", "JSON-encoded value matching the parameter's underlying T type. Examples: '1.5' (float), 'true' (bool), '[1,0,0,1]' (Color RGBA), '\"ACES\"' (enum).").makeOptionMandatory(true));
1903
+ addToolCallControlOptions(cmd);
1904
+ cmd.action(function (_opts) {
1905
+ return runCommand(this, async (ctx) => {
1906
+ const opts = this.opts();
1907
+ const args = {};
1908
+ if (opts["componentTypeName"] !== undefined)
1909
+ args["componentTypeName"] = opts["componentTypeName"];
1910
+ if (opts["fieldName"] !== undefined)
1911
+ args["fieldName"] = opts["fieldName"];
1912
+ if (opts["profileOrVolumePath"] !== undefined)
1913
+ args["profileOrVolumePath"] = opts["profileOrVolumePath"];
1914
+ if (opts["setOverrideState"] !== undefined)
1915
+ args["setOverrideState"] = opts["setOverrideState"];
1916
+ if (opts["valueJson"] !== undefined)
1917
+ args["valueJson"] = opts["valueJson"];
1918
+ return ctx.transport.callTool("graphics-volume-set-field", args, toolCallOptionsFromCli(opts));
1919
+ })();
1920
+ });
1921
+ }
1922
+ // Instance / Get Current
1923
+ {
1924
+ const cmd = program
1925
+ .command("instance-get-current")
1926
+ .description("Return identity metadata of the calling Unity Editor: port, project path, project name, Unity version, process id, and stable instance id. Pass includeEnvironment=true to also report the batchmode/CI launch flags.");
1927
+ cmd.addOption(new Option("--includeEnvironment <bool>", "Also populate the IsBatchMode/IsCi diagnostic fields (default false). Useful when diagnosing why the bridge is not connecting (batchmode/CI launches skip it).").argParser(coerceBoolean));
1928
+ addToolCallControlOptions(cmd);
1929
+ cmd.action(function (_opts) {
1930
+ return runCommand(this, async (ctx) => {
1931
+ const opts = this.opts();
1932
+ const args = {};
1933
+ if (opts["includeEnvironment"] !== undefined)
1934
+ args["includeEnvironment"] = opts["includeEnvironment"];
1935
+ return ctx.transport.callTool("instance-get-current", args, toolCallOptionsFromCli(opts));
1936
+ })();
1937
+ });
1938
+ }
1939
+ // Instance / List All
1940
+ {
1941
+ const cmd = program
1942
+ .command("instance-list-all")
1943
+ .description("List all Unity Editor instances registered on this machine plus identify the calling Editor.");
1944
+ cmd.addOption(new Option("--includeStale <bool>", "Include stale entries (Editor exited without cleanup). Default false.").argParser(coerceBoolean));
1945
+ addToolCallControlOptions(cmd);
1946
+ cmd.action(function (_opts) {
1947
+ return runCommand(this, async (ctx) => {
1948
+ const opts = this.opts();
1949
+ const args = {};
1950
+ if (opts["includeStale"] !== undefined)
1951
+ args["includeStale"] = opts["includeStale"];
1952
+ return ctx.transport.callTool("instance-list-all", args, toolCallOptionsFromCli(opts));
1953
+ })();
1954
+ });
1955
+ }
1956
+ // Object / Get Data
1957
+ {
1958
+ const cmd = program
1959
+ .command("object-get-data")
1960
+ .description("Get data of the specified Unity Object. Returns serialized data of the object including its properties and fields. If need to modify the data use 'object-modify' tool. Path-scoped reads (token-saving): supply 'paths' (a list of paths) to read only the listed fields/elements via Reflector.TryReadAt, or 'viewQuery' (a ViewQuery) to navigate to a subtree and/or filter by name regex / max depth / type via Reflector.View. These two parameters are mutually exclusive — supply at most one. When neither is supplied the full object is serialized as before (backwards compatible). Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
1961
+ cmd.addOption(new Option("--objectRef <json>", "Reference to UnityEngine.Object instance. It could be GameObject, Component, Asset, etc. Anything extended from UnityEngine.Object.").argParser(coerceJson).makeOptionMandatory(true));
1962
+ cmd.addOption(new Option("--paths <json>", "Optional. List of paths to read individually via Reflector.TryReadAt. Each path may target a different depth. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Mutually exclusive with 'viewQuery'.").argParser(coerceJson));
1963
+ cmd.addOption(new Option("--viewQuery <json>", "Optional. View-query filter routed through Reflector.View — combines a starting Path, a case-insensitive NamePattern regex, MaxDepth, and an optional TypeFilter. Mutually exclusive with 'paths'.").argParser(coerceJson));
1964
+ addToolCallControlOptions(cmd);
1965
+ cmd.action(function (_opts) {
1966
+ return runCommand(this, async (ctx) => {
1967
+ const opts = this.opts();
1968
+ const args = {};
1969
+ if (opts["objectRef"] !== undefined)
1970
+ args["objectRef"] = opts["objectRef"];
1971
+ if (opts["paths"] !== undefined)
1972
+ args["paths"] = opts["paths"];
1973
+ if (opts["viewQuery"] !== undefined)
1974
+ args["viewQuery"] = opts["viewQuery"];
1975
+ return ctx.transport.callTool("object-get-data", args, toolCallOptionsFromCli(opts));
1976
+ })();
1977
+ });
1978
+ }
1979
+ // Object / Modify
1980
+ {
1981
+ const cmd = program
1982
+ .command("object-modify")
1983
+ .description("Modify the specified Unity Object. Allows direct modification of object fields and properties. Use 'object-get-data' first to inspect the object structure before modifying. Three modification surfaces (use whichever fits the task): 1. 'objectDiff' — full SerializedMember diff (legacy, backwards compatible). 2. 'pathPatches' — list of {path, value} pairs routed through Reflector.TryModifyAt; atomic per-path modification, multiple entries can target different depths. 3. 'jsonPatch' — a JSON Merge Patch (RFC 7396, extended with [i]/[key] notation) routed through Reflector.TryPatch; multiple fields at any depth in a single call. When more than one is supplied they run in this order: jsonPatch → pathPatches → objectDiff. At least one is required. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped.");
1984
+ cmd.addOption(new Option("--jsonPatch <string>", "Optional. JSON Merge Patch (RFC 7396, extended with [i]/[key] keys) routed through Reflector.TryPatch."));
1985
+ cmd.addOption(new Option("--objectDiff <json>", "Optional. The full object data to apply (legacy path). Should contain 'fields' and/or 'props' with the values to modify. Only include the fields/properties you want to change. Any unknown or invalid fields and properties will be reported in the response.").argParser(coerceJson));
1986
+ cmd.addOption(new Option("--objectRef <json>", "Reference to UnityEngine.Object instance. It could be GameObject, Component, Asset, etc. Anything extended from UnityEngine.Object.").argParser(coerceJson).makeOptionMandatory(true));
1987
+ cmd.addOption(new Option("--pathPatches <json>", "Optional. List of path-scoped patches routed through Reflector.TryModifyAt.").argParser(coerceJson));
1988
+ addToolCallControlOptions(cmd);
1989
+ cmd.action(function (_opts) {
1990
+ return runCommand(this, async (ctx) => {
1991
+ const opts = this.opts();
1992
+ const args = {};
1993
+ if (opts["jsonPatch"] !== undefined)
1994
+ args["jsonPatch"] = opts["jsonPatch"];
1995
+ if (opts["objectDiff"] !== undefined)
1996
+ args["objectDiff"] = opts["objectDiff"];
1997
+ if (opts["objectRef"] !== undefined)
1998
+ args["objectRef"] = opts["objectRef"];
1999
+ if (opts["pathPatches"] !== undefined)
2000
+ args["pathPatches"] = opts["pathPatches"];
2001
+ return ctx.transport.callTool("object-modify", args, toolCallOptionsFromCli(opts));
2002
+ })();
2003
+ });
2004
+ }
2005
+ // Package Manager / Add
2006
+ {
2007
+ const cmd = program
2008
+ .command("package-add")
2009
+ .description("Install a package from the Unity Package Manager registry, Git URL, or local path. This operation modifies the project's manifest.json and triggers package resolution. Note: Package installation may trigger a domain reload. The result will be sent after the reload completes. Use 'package-search' tool to search for packages and 'package-list' to list installed packages.");
2010
+ cmd.addOption(new Option("--packageId <string>", "The package ID to install. Formats: Package ID 'com.unity.textmeshpro' (installs latest compatible version), Package ID with version 'com.unity.textmeshpro@3.0.6', Git URL 'https://github.com/user/repo.git', Git URL with branch/tag 'https://github.com/user/repo.git#v1.0.0', Local path 'file:../MyPackage'.").makeOptionMandatory(true));
2011
+ addToolCallControlOptions(cmd);
2012
+ cmd.action(function (_opts) {
2013
+ return runCommand(this, async (ctx) => {
2014
+ const opts = this.opts();
2015
+ const args = {};
2016
+ if (opts["packageId"] !== undefined)
2017
+ args["packageId"] = opts["packageId"];
2018
+ return ctx.transport.callTool("package-add", args, toolCallOptionsFromCli(opts));
2019
+ })();
2020
+ });
2021
+ }
2022
+ // Package Manager / List Installed
2023
+ {
2024
+ const cmd = program
2025
+ .command("package-list")
2026
+ .description("List all packages installed in the Unity project (UPM packages). Returns information about each installed package including name, version, source, and description. Use this to check which packages are currently installed before adding or removing packages.");
2027
+ cmd.addOption(new Option("--directDependenciesOnly <bool>", "Include only direct dependencies (packages in manifest.json). If false, includes all resolved packages. Default: false").argParser(coerceBoolean));
2028
+ cmd.addOption(new Option("--nameFilter <string>", "Filter packages by name, display name, or description (case-insensitive). Results are prioritized: exact name match, exact display name match, name substring, display name substring, description substring."));
2029
+ cmd.addOption(new Option("--sourceFilter <value>", "Filter packages by source.").choices(["All", "Registry", "Embedded", "Local", "Git", "BuiltIn", "LocalTarball"]));
2030
+ addToolCallControlOptions(cmd);
2031
+ cmd.action(function (_opts) {
2032
+ return runCommand(this, async (ctx) => {
2033
+ const opts = this.opts();
2034
+ const args = {};
2035
+ if (opts["directDependenciesOnly"] !== undefined)
2036
+ args["directDependenciesOnly"] = opts["directDependenciesOnly"];
2037
+ if (opts["nameFilter"] !== undefined)
2038
+ args["nameFilter"] = opts["nameFilter"];
2039
+ if (opts["sourceFilter"] !== undefined)
2040
+ args["sourceFilter"] = opts["sourceFilter"];
2041
+ return ctx.transport.callTool("package-list", args, toolCallOptionsFromCli(opts));
2042
+ })();
2043
+ });
2044
+ }
2045
+ // Package Manager / Remove
2046
+ {
2047
+ const cmd = program
2048
+ .command("package-remove")
2049
+ .description("Remove (uninstall) a package from the Unity project. This removes the package from the project's manifest.json and triggers package resolution. Note: Built-in packages and packages that are dependencies of other installed packages cannot be removed. Note: Package removal may trigger a domain reload. The result will be sent after the reload completes. Use 'package-list' tool to list installed packages first.");
2050
+ cmd.addOption(new Option("--packageId <string>", "The ID of the package to remove. Example: 'com.unity.textmeshpro'. Do not include version number.").makeOptionMandatory(true));
2051
+ addToolCallControlOptions(cmd);
2052
+ cmd.action(function (_opts) {
2053
+ return runCommand(this, async (ctx) => {
2054
+ const opts = this.opts();
2055
+ const args = {};
2056
+ if (opts["packageId"] !== undefined)
2057
+ args["packageId"] = opts["packageId"];
2058
+ return ctx.transport.callTool("package-remove", args, toolCallOptionsFromCli(opts));
2059
+ })();
2060
+ });
2061
+ }
2062
+ // Package Manager / Search
2063
+ {
2064
+ const cmd = program
2065
+ .command("package-search")
2066
+ .description("Search for packages in both Unity Package Manager registry and installed packages. Use this to find packages by name before installing them. Returns available versions and installation status. Searches both the Unity registry and locally installed packages (including Git, local, and embedded sources). Results are prioritized: exact name match, exact display name match, name substring, display name substring, description substring. Note: Online mode fetches exact matches from live registry, then supplements with cached substring matches.");
2067
+ cmd.addOption(new Option("--maxResults <int>", "Maximum number of results to return. Default: 10").argParser(coerceInteger));
2068
+ cmd.addOption(new Option("--offlineMode <bool>", "Whether to perform the search in offline mode (uses cached registry data only). Default: true. Set to false to fetch latest exact matches from Unity registry.").argParser(coerceBoolean));
2069
+ cmd.addOption(new Option("--query <string>", "The package id, name, or description. Can be: Full package id 'com.unity.textmeshpro', Full package name 'TextMesh Pro', Partial name 'TextMesh' (will search in Unity registry and installed packages), Description keyword 'rendering' (searches in package descriptions).").makeOptionMandatory(true));
2070
+ addToolCallControlOptions(cmd);
2071
+ cmd.action(function (_opts) {
2072
+ return runCommand(this, async (ctx) => {
2073
+ const opts = this.opts();
2074
+ const args = {};
2075
+ if (opts["maxResults"] !== undefined)
2076
+ args["maxResults"] = opts["maxResults"];
2077
+ if (opts["offlineMode"] !== undefined)
2078
+ args["offlineMode"] = opts["offlineMode"];
2079
+ if (opts["query"] !== undefined)
2080
+ args["query"] = opts["query"];
2081
+ return ctx.transport.callTool("package-search", args, toolCallOptionsFromCli(opts));
2082
+ })();
2083
+ });
2084
+ }
2085
+ // Physics / Collision Matrix / Get
2086
+ {
2087
+ const cmd = program
2088
+ .command("physics-collision-matrix-get")
2089
+ .description("Read the layer-vs-layer collision matrix for the requested dimension.");
2090
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2091
+ addToolCallControlOptions(cmd);
2092
+ cmd.action(function (_opts) {
2093
+ return runCommand(this, async (ctx) => {
2094
+ const opts = this.opts();
2095
+ const args = {};
2096
+ if (opts["dimension"] !== undefined)
2097
+ args["dimension"] = opts["dimension"];
2098
+ return ctx.transport.callTool("physics-collision-matrix-get", args, toolCallOptionsFromCli(opts));
2099
+ })();
2100
+ });
2101
+ }
2102
+ // Physics / Collision Matrix / Set
2103
+ {
2104
+ const cmd = program
2105
+ .command("physics-collision-matrix-set")
2106
+ .description("Toggle collision between two layers for the requested dimension. Layer arguments accept either a layer name or a numeric index.");
2107
+ cmd.addOption(new Option("--collide <bool>", "Whether the two layers should collide. Internally calls IgnoreLayerCollision(!collide).").argParser(coerceBoolean).makeOptionMandatory(true));
2108
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2109
+ cmd.addOption(new Option("--layerA <string>", "Layer A: name or integer index 0..31.").makeOptionMandatory(true));
2110
+ cmd.addOption(new Option("--layerB <string>", "Layer B: name or integer index 0..31.").makeOptionMandatory(true));
2111
+ addToolCallControlOptions(cmd);
2112
+ cmd.action(function (_opts) {
2113
+ return runCommand(this, async (ctx) => {
2114
+ const opts = this.opts();
2115
+ const args = {};
2116
+ if (opts["collide"] !== undefined)
2117
+ args["collide"] = opts["collide"];
2118
+ if (opts["dimension"] !== undefined)
2119
+ args["dimension"] = opts["dimension"];
2120
+ if (opts["layerA"] !== undefined)
2121
+ args["layerA"] = opts["layerA"];
2122
+ if (opts["layerB"] !== undefined)
2123
+ args["layerB"] = opts["layerB"];
2124
+ return ctx.transport.callTool("physics-collision-matrix-set", args, toolCallOptionsFromCli(opts));
2125
+ })();
2126
+ });
2127
+ }
2128
+ // Physics / Force / Apply
2129
+ {
2130
+ const cmd = program
2131
+ .command("physics-force-apply")
2132
+ .description("Apply a force / torque / explosion / impulse to a Rigidbody (3D or 2D).");
2133
+ cmd.addOption(new Option("--action <string>", "Action: 'force' | 'torque' | 'explosion' | 'impulse'.").makeOptionMandatory(true));
2134
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2135
+ cmd.addOption(new Option("--explosionForce <num>", "Explosion magnitude. Used by 'explosion' action.").argParser(coerceNumber));
2136
+ cmd.addOption(new Option("--explosionPosition <x,y,z|json>", "Explosion origin in world space. Used by 'explosion' action.").argParser(coerceVec3));
2137
+ cmd.addOption(new Option("--explosionRadius <num>", "Explosion radius. Used by 'explosion' action.").argParser(coerceNumber));
2138
+ cmd.addOption(new Option("--force <x,y,z|json>", "Force vector. Used by 'force' and 'impulse' actions.").argParser(coerceVec3));
2139
+ cmd.addOption(new Option("--mode <string>", "ForceMode: 'Force' (default) | 'Impulse' | 'VelocityChange' | 'Acceleration'. 2D only supports 'Force' and 'Impulse'."));
2140
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting the Rigidbody / Rigidbody2D.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
2141
+ cmd.addOption(new Option("--torque <x,y,z|json>", "Torque vector. Used by 'torque' action. In 2D only the Z component is honored.").argParser(coerceVec3));
2142
+ addToolCallControlOptions(cmd);
2143
+ cmd.action(function (_opts) {
2144
+ return runCommand(this, async (ctx) => {
2145
+ const opts = this.opts();
2146
+ const args = {};
2147
+ if (opts["action"] !== undefined)
2148
+ args["action"] = opts["action"];
2149
+ if (opts["dimension"] !== undefined)
2150
+ args["dimension"] = opts["dimension"];
2151
+ if (opts["explosionForce"] !== undefined)
2152
+ args["explosionForce"] = opts["explosionForce"];
2153
+ if (opts["explosionPosition"] !== undefined)
2154
+ args["explosionPosition"] = opts["explosionPosition"];
2155
+ if (opts["explosionRadius"] !== undefined)
2156
+ args["explosionRadius"] = opts["explosionRadius"];
2157
+ if (opts["force"] !== undefined)
2158
+ args["force"] = opts["force"];
2159
+ if (opts["mode"] !== undefined)
2160
+ args["mode"] = opts["mode"];
2161
+ if (opts["target"] !== undefined)
2162
+ args["target"] = opts["target"];
2163
+ if (opts["torque"] !== undefined)
2164
+ args["torque"] = opts["torque"];
2165
+ return ctx.transport.callTool("physics-force-apply", args, toolCallOptionsFromCli(opts));
2166
+ })();
2167
+ });
2168
+ }
2169
+ // Physics / Joint / Add
2170
+ {
2171
+ const cmd = program
2172
+ .command("physics-joint-add")
2173
+ .description("Attach a 3D or 2D Joint component to a GameObject. Auto-adds Rigidbody/Rigidbody2D when missing. Use 'physics-joint-configure' afterwards to tune motors/limits/springs.");
2174
+ cmd.addOption(new Option("--anchor <x,y,z|json>", "Anchor (local space) where the joint attaches on the host body.").argParser(coerceVec3));
2175
+ cmd.addOption(new Option("--autoConfigureConnectedAnchor <bool>", "Toggle 'Auto Configure Connected Anchor' (where the joint exposes it; most 2D joints).").argParser(coerceBoolean));
2176
+ cmd.addOption(new Option("--axis <x,y,z|json>", "Axis (3D joints only — HingeJoint/ConfigurableJoint).").argParser(coerceVec3));
2177
+ cmd.addOption(new Option("--connectedAnchor <x,y,z|json>", "Connected anchor in the connected body's local space.").argParser(coerceVec3));
2178
+ cmd.addOption(new Option("--connectedBody <ref>", "GameObject that this joint connects to (the 'connected body'). Null = connect to world.").argParser(coerceGameObjectRef));
2179
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'. Case-insensitive."));
2180
+ cmd.addOption(new Option("--jointType <string>", "Joint type. 3D: fixed/hinge/spring/character/configurable. 2D: distance/fixed/friction/hinge/relative/slider/spring/target/wheel.").makeOptionMandatory(true));
2181
+ cmd.addOption(new Option("--target <ref>", "GameObject to attach the joint to. Required.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
2182
+ addToolCallControlOptions(cmd);
2183
+ cmd.action(function (_opts) {
2184
+ return runCommand(this, async (ctx) => {
2185
+ const opts = this.opts();
2186
+ const args = {};
2187
+ if (opts["anchor"] !== undefined)
2188
+ args["anchor"] = opts["anchor"];
2189
+ if (opts["autoConfigureConnectedAnchor"] !== undefined)
2190
+ args["autoConfigureConnectedAnchor"] = opts["autoConfigureConnectedAnchor"];
2191
+ if (opts["axis"] !== undefined)
2192
+ args["axis"] = opts["axis"];
2193
+ if (opts["connectedAnchor"] !== undefined)
2194
+ args["connectedAnchor"] = opts["connectedAnchor"];
2195
+ if (opts["connectedBody"] !== undefined)
2196
+ args["connectedBody"] = opts["connectedBody"];
2197
+ if (opts["dimension"] !== undefined)
2198
+ args["dimension"] = opts["dimension"];
2199
+ if (opts["jointType"] !== undefined)
2200
+ args["jointType"] = opts["jointType"];
2201
+ if (opts["target"] !== undefined)
2202
+ args["target"] = opts["target"];
2203
+ return ctx.transport.callTool("physics-joint-add", args, toolCallOptionsFromCli(opts));
2204
+ })();
2205
+ });
2206
+ }
2207
+ // Physics / Joint / Configure
2208
+ {
2209
+ const cmd = program
2210
+ .command("physics-joint-configure")
2211
+ .description("Configure an existing 3D or 2D Joint on a GameObject. Only provided (non-null) parameters are written. Use 'jointIndex' + 'jointType' to disambiguate multi-joint GameObjects.");
2212
+ cmd.addOption(new Option("--anchor <x,y,z|json>", "Anchor (local space).").argParser(coerceVec3));
2213
+ cmd.addOption(new Option("--angularXMotion <string>", "ConfigurableJoint angularXMotion: Locked / Limited / Free."));
2214
+ cmd.addOption(new Option("--angularYMotion <string>", "ConfigurableJoint angularYMotion: Locked / Limited / Free."));
2215
+ cmd.addOption(new Option("--angularZMotion <string>", "ConfigurableJoint angularZMotion: Locked / Limited / Free."));
2216
+ cmd.addOption(new Option("--axis <x,y,z|json>", "Axis (3D joints only — HingeJoint/ConfigurableJoint/CharacterJoint).").argParser(coerceVec3));
2217
+ cmd.addOption(new Option("--breakForce <num>", "3D-only: force threshold above which the joint breaks. Float.PositiveInfinity = unbreakable.").argParser(coerceNumber));
2218
+ cmd.addOption(new Option("--breakTorque <num>", "3D-only: torque threshold above which the joint breaks.").argParser(coerceNumber));
2219
+ cmd.addOption(new Option("--connectedAnchor <x,y,z|json>", "Connected anchor (connected body's local space).").argParser(coerceVec3));
2220
+ cmd.addOption(new Option("--connectedBody <ref>", "GameObject providing the connected Rigidbody / Rigidbody2D. Pass an unresolved ref to leave unchanged.").argParser(coerceGameObjectRef));
2221
+ cmd.addOption(new Option("--damper <num>", "SpringJoint(2D): damper coefficient.").argParser(coerceNumber));
2222
+ cmd.addOption(new Option("--dampingRatio <num>", "2D spring-style joints: damping ratio.").argParser(coerceNumber));
2223
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2224
+ cmd.addOption(new Option("--distance <num>", "DistanceJoint2D / SliderJoint2D / SpringJoint2D: target distance.").argParser(coerceNumber));
2225
+ cmd.addOption(new Option("--frequency <num>", "2D spring-style joints: oscillation frequency (Hz).").argParser(coerceNumber));
2226
+ cmd.addOption(new Option("--jointIndex <int>", "Index of the joint on the GameObject (0-based, in component-order). Defaults to 0.").argParser(coerceInteger));
2227
+ cmd.addOption(new Option("--jointType <string>", "Optional joint-type filter (case-insensitive alias). 3D: fixed/hinge/spring/character/configurable. 2D: distance/fixed/friction/hinge/relative/slider/spring/target/wheel."));
2228
+ cmd.addOption(new Option("--limitMax <num>", "Hinge limit maximum (degrees).").argParser(coerceNumber));
2229
+ cmd.addOption(new Option("--limitMin <num>", "Hinge limit minimum (degrees).").argParser(coerceNumber));
2230
+ cmd.addOption(new Option("--maxDistance <num>", "3D SpringJoint: maximum distance.").argParser(coerceNumber));
2231
+ cmd.addOption(new Option("--minDistance <num>", "3D SpringJoint: minimum distance.").argParser(coerceNumber));
2232
+ cmd.addOption(new Option("--motorForce <num>", "3D HingeJoint motor.force.").argParser(coerceNumber));
2233
+ cmd.addOption(new Option("--motorMaxTorque <num>", "2D HingeJoint / WheelJoint motor.maxMotorTorque.").argParser(coerceNumber));
2234
+ cmd.addOption(new Option("--motorTargetVelocity <num>", "Hinge/Wheel motor: target angular velocity.").argParser(coerceNumber));
2235
+ cmd.addOption(new Option("--spring <num>", "SpringJoint(2D): spring stiffness.").argParser(coerceNumber));
2236
+ cmd.addOption(new Option("--springDamper <num>", "Hinge spring damper.").argParser(coerceNumber));
2237
+ cmd.addOption(new Option("--springForce <num>", "Hinge spring stiffness (3D 'spring' / 2D analogous field).").argParser(coerceNumber));
2238
+ cmd.addOption(new Option("--target <ref>", "GameObject hosting the joint. Required.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
2239
+ cmd.addOption(new Option("--tolerance <num>", "3D SpringJoint: tolerance.").argParser(coerceNumber));
2240
+ cmd.addOption(new Option("--useLimits <bool>", "Hinge: enable angular limits.").argParser(coerceBoolean));
2241
+ cmd.addOption(new Option("--useMotor <bool>", "Hinge/Wheel: enable the motor.").argParser(coerceBoolean));
2242
+ cmd.addOption(new Option("--useSpring <bool>", "Hinge: enable the spring.").argParser(coerceBoolean));
2243
+ cmd.addOption(new Option("--wheelDamping <num>", "WheelJoint2D suspension: damping ratio.").argParser(coerceNumber));
2244
+ cmd.addOption(new Option("--wheelFrequency <num>", "WheelJoint2D suspension: frequency (Hz).").argParser(coerceNumber));
2245
+ cmd.addOption(new Option("--xMotion <string>", "ConfigurableJoint xMotion: Locked / Limited / Free (case-insensitive)."));
2246
+ cmd.addOption(new Option("--yMotion <string>", "ConfigurableJoint yMotion: Locked / Limited / Free."));
2247
+ cmd.addOption(new Option("--zMotion <string>", "ConfigurableJoint zMotion: Locked / Limited / Free."));
2248
+ addToolCallControlOptions(cmd);
2249
+ cmd.action(function (_opts) {
2250
+ return runCommand(this, async (ctx) => {
2251
+ const opts = this.opts();
2252
+ const args = {};
2253
+ if (opts["anchor"] !== undefined)
2254
+ args["anchor"] = opts["anchor"];
2255
+ if (opts["angularXMotion"] !== undefined)
2256
+ args["angularXMotion"] = opts["angularXMotion"];
2257
+ if (opts["angularYMotion"] !== undefined)
2258
+ args["angularYMotion"] = opts["angularYMotion"];
2259
+ if (opts["angularZMotion"] !== undefined)
2260
+ args["angularZMotion"] = opts["angularZMotion"];
2261
+ if (opts["axis"] !== undefined)
2262
+ args["axis"] = opts["axis"];
2263
+ if (opts["breakForce"] !== undefined)
2264
+ args["breakForce"] = opts["breakForce"];
2265
+ if (opts["breakTorque"] !== undefined)
2266
+ args["breakTorque"] = opts["breakTorque"];
2267
+ if (opts["connectedAnchor"] !== undefined)
2268
+ args["connectedAnchor"] = opts["connectedAnchor"];
2269
+ if (opts["connectedBody"] !== undefined)
2270
+ args["connectedBody"] = opts["connectedBody"];
2271
+ if (opts["damper"] !== undefined)
2272
+ args["damper"] = opts["damper"];
2273
+ if (opts["dampingRatio"] !== undefined)
2274
+ args["dampingRatio"] = opts["dampingRatio"];
2275
+ if (opts["dimension"] !== undefined)
2276
+ args["dimension"] = opts["dimension"];
2277
+ if (opts["distance"] !== undefined)
2278
+ args["distance"] = opts["distance"];
2279
+ if (opts["frequency"] !== undefined)
2280
+ args["frequency"] = opts["frequency"];
2281
+ if (opts["jointIndex"] !== undefined)
2282
+ args["jointIndex"] = opts["jointIndex"];
2283
+ if (opts["jointType"] !== undefined)
2284
+ args["jointType"] = opts["jointType"];
2285
+ if (opts["limitMax"] !== undefined)
2286
+ args["limitMax"] = opts["limitMax"];
2287
+ if (opts["limitMin"] !== undefined)
2288
+ args["limitMin"] = opts["limitMin"];
2289
+ if (opts["maxDistance"] !== undefined)
2290
+ args["maxDistance"] = opts["maxDistance"];
2291
+ if (opts["minDistance"] !== undefined)
2292
+ args["minDistance"] = opts["minDistance"];
2293
+ if (opts["motorForce"] !== undefined)
2294
+ args["motorForce"] = opts["motorForce"];
2295
+ if (opts["motorMaxTorque"] !== undefined)
2296
+ args["motorMaxTorque"] = opts["motorMaxTorque"];
2297
+ if (opts["motorTargetVelocity"] !== undefined)
2298
+ args["motorTargetVelocity"] = opts["motorTargetVelocity"];
2299
+ if (opts["spring"] !== undefined)
2300
+ args["spring"] = opts["spring"];
2301
+ if (opts["springDamper"] !== undefined)
2302
+ args["springDamper"] = opts["springDamper"];
2303
+ if (opts["springForce"] !== undefined)
2304
+ args["springForce"] = opts["springForce"];
2305
+ if (opts["target"] !== undefined)
2306
+ args["target"] = opts["target"];
2307
+ if (opts["tolerance"] !== undefined)
2308
+ args["tolerance"] = opts["tolerance"];
2309
+ if (opts["useLimits"] !== undefined)
2310
+ args["useLimits"] = opts["useLimits"];
2311
+ if (opts["useMotor"] !== undefined)
2312
+ args["useMotor"] = opts["useMotor"];
2313
+ if (opts["useSpring"] !== undefined)
2314
+ args["useSpring"] = opts["useSpring"];
2315
+ if (opts["wheelDamping"] !== undefined)
2316
+ args["wheelDamping"] = opts["wheelDamping"];
2317
+ if (opts["wheelFrequency"] !== undefined)
2318
+ args["wheelFrequency"] = opts["wheelFrequency"];
2319
+ if (opts["xMotion"] !== undefined)
2320
+ args["xMotion"] = opts["xMotion"];
2321
+ if (opts["yMotion"] !== undefined)
2322
+ args["yMotion"] = opts["yMotion"];
2323
+ if (opts["zMotion"] !== undefined)
2324
+ args["zMotion"] = opts["zMotion"];
2325
+ return ctx.transport.callTool("physics-joint-configure", args, toolCallOptionsFromCli(opts));
2326
+ })();
2327
+ });
2328
+ }
2329
+ // Physics / Joint / Remove
2330
+ {
2331
+ const cmd = program
2332
+ .command("physics-joint-remove")
2333
+ .description("Remove one or all Joint / Joint2D components from a GameObject. Pass jointIndex=-1 to remove every match.");
2334
+ cmd.addOption(new Option("--jointIndex <int>", "Index 0-based, or -1 to remove all matching joints. Default 0.").argParser(coerceInteger));
2335
+ cmd.addOption(new Option("--jointType <string>", "Optional joint-type filter (case-insensitive alias). 3D: fixed/hinge/spring/character/configurable. 2D: distance/fixed/friction/hinge/relative/slider/spring/target/wheel."));
2336
+ cmd.addOption(new Option("--target <ref>", "GameObject hosting the joint(s) to remove. Required.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
2337
+ addToolCallControlOptions(cmd);
2338
+ cmd.action(function (_opts) {
2339
+ return runCommand(this, async (ctx) => {
2340
+ const opts = this.opts();
2341
+ const args = {};
2342
+ if (opts["jointIndex"] !== undefined)
2343
+ args["jointIndex"] = opts["jointIndex"];
2344
+ if (opts["jointType"] !== undefined)
2345
+ args["jointType"] = opts["jointType"];
2346
+ if (opts["target"] !== undefined)
2347
+ args["target"] = opts["target"];
2348
+ return ctx.transport.callTool("physics-joint-remove", args, toolCallOptionsFromCli(opts));
2349
+ })();
2350
+ });
2351
+ }
2352
+ // Physics / Linecast
2353
+ {
2354
+ const cmd = program
2355
+ .command("physics-linecast")
2356
+ .description("Linecast between two world-space points (3D or 2D).");
2357
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2358
+ cmd.addOption(new Option("--from <x,y,z|json>", "Segment start in world space.").argParser(coerceVec3).makeOptionMandatory(true));
2359
+ cmd.addOption(new Option("--layerMask <int>", "Layer mask bitmask. Defaults to all (~0) when null or -1.").argParser(coerceInteger));
2360
+ cmd.addOption(new Option("--to <x,y,z|json>", "Segment end in world space.").argParser(coerceVec3).makeOptionMandatory(true));
2361
+ addToolCallControlOptions(cmd);
2362
+ cmd.action(function (_opts) {
2363
+ return runCommand(this, async (ctx) => {
2364
+ const opts = this.opts();
2365
+ const args = {};
2366
+ if (opts["dimension"] !== undefined)
2367
+ args["dimension"] = opts["dimension"];
2368
+ if (opts["from"] !== undefined)
2369
+ args["from"] = opts["from"];
2370
+ if (opts["layerMask"] !== undefined)
2371
+ args["layerMask"] = opts["layerMask"];
2372
+ if (opts["to"] !== undefined)
2373
+ args["to"] = opts["to"];
2374
+ return ctx.transport.callTool("physics-linecast", args, toolCallOptionsFromCli(opts));
2375
+ })();
2376
+ });
2377
+ }
2378
+ // Physics / Material / Assign
2379
+ {
2380
+ const cmd = program
2381
+ .command("physics-material-assign")
2382
+ .description("Assign a physics material asset to a collider on a GameObject.");
2383
+ cmd.addOption(new Option("--materialPath <string>", "Asset path of the physics material to assign.").makeOptionMandatory(true));
2384
+ cmd.addOption(new Option("--target <ref>", "Target GameObject to receive the physics material.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
2385
+ addToolCallControlOptions(cmd);
2386
+ cmd.action(function (_opts) {
2387
+ return runCommand(this, async (ctx) => {
2388
+ const opts = this.opts();
2389
+ const args = {};
2390
+ if (opts["materialPath"] !== undefined)
2391
+ args["materialPath"] = opts["materialPath"];
2392
+ if (opts["target"] !== undefined)
2393
+ args["target"] = opts["target"];
2394
+ return ctx.transport.callTool("physics-material-assign", args, toolCallOptionsFromCli(opts));
2395
+ })();
2396
+ });
2397
+ }
2398
+ // Physics / Material / Configure
2399
+ {
2400
+ const cmd = program
2401
+ .command("physics-material-configure")
2402
+ .description("Mutate properties of an existing physics material asset.");
2403
+ cmd.addOption(new Option("--bounceCombine <string>", "Bounce combine mode (3D only): Average, Minimum, Multiply, Maximum."));
2404
+ cmd.addOption(new Option("--bounciness <num>", "Bounciness. Applies to both dimensions.").argParser(coerceNumber));
2405
+ cmd.addOption(new Option("--dimension <string>", "Dimension override: '3d' or '2d'. If omitted, inferred from the file extension."));
2406
+ cmd.addOption(new Option("--dynamicFriction <num>", "Dynamic friction (3D only).").argParser(coerceNumber));
2407
+ cmd.addOption(new Option("--friction <num>", "Combined friction value (2D only).").argParser(coerceNumber));
2408
+ cmd.addOption(new Option("--frictionCombine <string>", "Friction combine mode (3D only): Average, Minimum, Multiply, Maximum."));
2409
+ cmd.addOption(new Option("--path <string>", "Asset path of the existing physics material.").makeOptionMandatory(true));
2410
+ cmd.addOption(new Option("--staticFriction <num>", "Static friction (3D only).").argParser(coerceNumber));
2411
+ addToolCallControlOptions(cmd);
2412
+ cmd.action(function (_opts) {
2413
+ return runCommand(this, async (ctx) => {
2414
+ const opts = this.opts();
2415
+ const args = {};
2416
+ if (opts["bounceCombine"] !== undefined)
2417
+ args["bounceCombine"] = opts["bounceCombine"];
2418
+ if (opts["bounciness"] !== undefined)
2419
+ args["bounciness"] = opts["bounciness"];
2420
+ if (opts["dimension"] !== undefined)
2421
+ args["dimension"] = opts["dimension"];
2422
+ if (opts["dynamicFriction"] !== undefined)
2423
+ args["dynamicFriction"] = opts["dynamicFriction"];
2424
+ if (opts["friction"] !== undefined)
2425
+ args["friction"] = opts["friction"];
2426
+ if (opts["frictionCombine"] !== undefined)
2427
+ args["frictionCombine"] = opts["frictionCombine"];
2428
+ if (opts["path"] !== undefined)
2429
+ args["path"] = opts["path"];
2430
+ if (opts["staticFriction"] !== undefined)
2431
+ args["staticFriction"] = opts["staticFriction"];
2432
+ return ctx.transport.callTool("physics-material-configure", args, toolCallOptionsFromCli(opts));
2433
+ })();
2434
+ });
2435
+ }
2436
+ // Physics / Material / Create
2437
+ {
2438
+ const cmd = program
2439
+ .command("physics-material-create")
2440
+ .description("Create a new physics material asset (3D or 2D). Path must live under 'Assets/' and end with '.physicMaterial' (3D) or '.physicsMaterial2D' (2D).");
2441
+ cmd.addOption(new Option("--bounceCombine <string>", "Bounce combine mode (3D only): Average, Minimum, Multiply, Maximum."));
2442
+ cmd.addOption(new Option("--bounciness <num>", "Bounciness. Default 0. Applies to both dimensions.").argParser(coerceNumber));
2443
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2444
+ cmd.addOption(new Option("--dynamicFriction <num>", "Dynamic friction (3D only). Default 0.6.").argParser(coerceNumber));
2445
+ cmd.addOption(new Option("--friction <num>", "Combined friction value (2D only). Default 0.4.").argParser(coerceNumber));
2446
+ cmd.addOption(new Option("--frictionCombine <string>", "Friction combine mode (3D only): Average, Minimum, Multiply, Maximum."));
2447
+ cmd.addOption(new Option("--overwrite <bool>", "If true, overwrite an existing asset at the same path. Default false.").argParser(coerceBoolean));
2448
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.physicMaterial' (3D) or '.physicsMaterial2D' (2D).").makeOptionMandatory(true));
2449
+ cmd.addOption(new Option("--staticFriction <num>", "Static friction (3D only). Default 0.6.").argParser(coerceNumber));
2450
+ addToolCallControlOptions(cmd);
2451
+ cmd.action(function (_opts) {
2452
+ return runCommand(this, async (ctx) => {
2453
+ const opts = this.opts();
2454
+ const args = {};
2455
+ if (opts["bounceCombine"] !== undefined)
2456
+ args["bounceCombine"] = opts["bounceCombine"];
2457
+ if (opts["bounciness"] !== undefined)
2458
+ args["bounciness"] = opts["bounciness"];
2459
+ if (opts["dimension"] !== undefined)
2460
+ args["dimension"] = opts["dimension"];
2461
+ if (opts["dynamicFriction"] !== undefined)
2462
+ args["dynamicFriction"] = opts["dynamicFriction"];
2463
+ if (opts["friction"] !== undefined)
2464
+ args["friction"] = opts["friction"];
2465
+ if (opts["frictionCombine"] !== undefined)
2466
+ args["frictionCombine"] = opts["frictionCombine"];
2467
+ if (opts["overwrite"] !== undefined)
2468
+ args["overwrite"] = opts["overwrite"];
2469
+ if (opts["path"] !== undefined)
2470
+ args["path"] = opts["path"];
2471
+ if (opts["staticFriction"] !== undefined)
2472
+ args["staticFriction"] = opts["staticFriction"];
2473
+ return ctx.transport.callTool("physics-material-create", args, toolCallOptionsFromCli(opts));
2474
+ })();
2475
+ });
2476
+ }
2477
+ // Physics / Overlap
2478
+ {
2479
+ const cmd = program
2480
+ .command("physics-overlap")
2481
+ .description("Find all colliders overlapping a primitive volume (3D or 2D).");
2482
+ cmd.addOption(new Option("--center <x,y,z|json>", "Volume center in world space.").argParser(coerceVec3).makeOptionMandatory(true));
2483
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2484
+ cmd.addOption(new Option("--halfExtents <x,y,z|json>", "Box only: half-extents (Vector3).").argParser(coerceVec3));
2485
+ cmd.addOption(new Option("--layerMask <int>", "Layer mask bitmask. Defaults to all (~0) when null or -1.").argParser(coerceInteger));
2486
+ cmd.addOption(new Option("--radius <num>", "Sphere only: radius.").argParser(coerceNumber));
2487
+ cmd.addOption(new Option("--rotation <json>", "Box only: rotation (Quaternion). Identity when null.").argParser(coerceJson));
2488
+ cmd.addOption(new Option("--shape <string>", "Shape: 'box' | 'sphere'.").makeOptionMandatory(true));
2489
+ addToolCallControlOptions(cmd);
2490
+ cmd.action(function (_opts) {
2491
+ return runCommand(this, async (ctx) => {
2492
+ const opts = this.opts();
2493
+ const args = {};
2494
+ if (opts["center"] !== undefined)
2495
+ args["center"] = opts["center"];
2496
+ if (opts["dimension"] !== undefined)
2497
+ args["dimension"] = opts["dimension"];
2498
+ if (opts["halfExtents"] !== undefined)
2499
+ args["halfExtents"] = opts["halfExtents"];
2500
+ if (opts["layerMask"] !== undefined)
2501
+ args["layerMask"] = opts["layerMask"];
2502
+ if (opts["radius"] !== undefined)
2503
+ args["radius"] = opts["radius"];
2504
+ if (opts["rotation"] !== undefined)
2505
+ args["rotation"] = opts["rotation"];
2506
+ if (opts["shape"] !== undefined)
2507
+ args["shape"] = opts["shape"];
2508
+ return ctx.transport.callTool("physics-overlap", args, toolCallOptionsFromCli(opts));
2509
+ })();
2510
+ });
2511
+ }
2512
+ // Physics / Raycast
2513
+ {
2514
+ const cmd = program
2515
+ .command("physics-raycast")
2516
+ .description("Cast a ray and return the first hit (3D or 2D).");
2517
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2518
+ cmd.addOption(new Option("--direction <x,y,z|json>", "Ray direction (will be normalized).").argParser(coerceVec3).makeOptionMandatory(true));
2519
+ cmd.addOption(new Option("--layerMask <int>", "Layer mask bitmask. Defaults to all (~0) when null or -1.").argParser(coerceInteger));
2520
+ cmd.addOption(new Option("--maxDistance <num>", "Max distance. Defaults to Mathf.Infinity when null.").argParser(coerceNumber));
2521
+ cmd.addOption(new Option("--origin <x,y,z|json>", "Ray origin in world space.").argParser(coerceVec3).makeOptionMandatory(true));
2522
+ cmd.addOption(new Option("--queryTriggerInteraction <string>", "Query trigger interaction: 'UseGlobal' (default) | 'Collide' | 'Ignore'."));
2523
+ addToolCallControlOptions(cmd);
2524
+ cmd.action(function (_opts) {
2525
+ return runCommand(this, async (ctx) => {
2526
+ const opts = this.opts();
2527
+ const args = {};
2528
+ if (opts["dimension"] !== undefined)
2529
+ args["dimension"] = opts["dimension"];
2530
+ if (opts["direction"] !== undefined)
2531
+ args["direction"] = opts["direction"];
2532
+ if (opts["layerMask"] !== undefined)
2533
+ args["layerMask"] = opts["layerMask"];
2534
+ if (opts["maxDistance"] !== undefined)
2535
+ args["maxDistance"] = opts["maxDistance"];
2536
+ if (opts["origin"] !== undefined)
2537
+ args["origin"] = opts["origin"];
2538
+ if (opts["queryTriggerInteraction"] !== undefined)
2539
+ args["queryTriggerInteraction"] = opts["queryTriggerInteraction"];
2540
+ return ctx.transport.callTool("physics-raycast", args, toolCallOptionsFromCli(opts));
2541
+ })();
2542
+ });
2543
+ }
2544
+ // Physics / Raycast / All
2545
+ {
2546
+ const cmd = program
2547
+ .command("physics-raycast-all")
2548
+ .description("Cast a ray and return every collider it hits (3D or 2D).");
2549
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2550
+ cmd.addOption(new Option("--direction <x,y,z|json>", "Ray direction (will be normalized).").argParser(coerceVec3).makeOptionMandatory(true));
2551
+ cmd.addOption(new Option("--layerMask <int>", "Layer mask bitmask. Defaults to all (~0) when null or -1.").argParser(coerceInteger));
2552
+ cmd.addOption(new Option("--maxDistance <num>", "Max distance. Defaults to Mathf.Infinity when null.").argParser(coerceNumber));
2553
+ cmd.addOption(new Option("--origin <x,y,z|json>", "Ray origin in world space.").argParser(coerceVec3).makeOptionMandatory(true));
2554
+ cmd.addOption(new Option("--queryTriggerInteraction <string>", "Query trigger interaction: 'UseGlobal' (default) | 'Collide' | 'Ignore'."));
2555
+ addToolCallControlOptions(cmd);
2556
+ cmd.action(function (_opts) {
2557
+ return runCommand(this, async (ctx) => {
2558
+ const opts = this.opts();
2559
+ const args = {};
2560
+ if (opts["dimension"] !== undefined)
2561
+ args["dimension"] = opts["dimension"];
2562
+ if (opts["direction"] !== undefined)
2563
+ args["direction"] = opts["direction"];
2564
+ if (opts["layerMask"] !== undefined)
2565
+ args["layerMask"] = opts["layerMask"];
2566
+ if (opts["maxDistance"] !== undefined)
2567
+ args["maxDistance"] = opts["maxDistance"];
2568
+ if (opts["origin"] !== undefined)
2569
+ args["origin"] = opts["origin"];
2570
+ if (opts["queryTriggerInteraction"] !== undefined)
2571
+ args["queryTriggerInteraction"] = opts["queryTriggerInteraction"];
2572
+ return ctx.transport.callTool("physics-raycast-all", args, toolCallOptionsFromCli(opts));
2573
+ })();
2574
+ });
2575
+ }
2576
+ // Physics / Rigidbody / Configure
2577
+ {
2578
+ const cmd = program
2579
+ .command("physics-rigidbody-configure")
2580
+ .description("Mutate fields of a Rigidbody / Rigidbody2D on the target GameObject.");
2581
+ cmd.addOption(new Option("--angularDrag <num>", "Angular drag / damping. Maps to Unity 6 angularDamping.").argParser(coerceNumber));
2582
+ cmd.addOption(new Option("--bodyType <string>", "Body type (2D only): Dynamic, Kinematic, Static."));
2583
+ cmd.addOption(new Option("--collisionDetection <string>", "Collision detection mode. 3D: Discrete / Continuous / ContinuousDynamic / ContinuousSpeculative. 2D: Discrete / Continuous."));
2584
+ cmd.addOption(new Option("--constraints <string>", "Constraints flags. Comma-separated enum names (e.g. 'FreezePositionX, FreezeRotationY') or an integer bitmask."));
2585
+ cmd.addOption(new Option("--dimension <string>", "Dimension override: '3d' or '2d'. If omitted, inferred from the present component."));
2586
+ cmd.addOption(new Option("--drag <num>", "Linear drag / damping. Maps to Unity 6 linearDamping.").argParser(coerceNumber));
2587
+ cmd.addOption(new Option("--gravityScale <num>", "Gravity scale (2D only).").argParser(coerceNumber));
2588
+ cmd.addOption(new Option("--interpolation <string>", "Interpolation mode (3D only): None, Interpolate, Extrapolate."));
2589
+ cmd.addOption(new Option("--isKinematic <bool>", "Whether the body is kinematic.").argParser(coerceBoolean));
2590
+ cmd.addOption(new Option("--mass <num>", "Mass.").argParser(coerceNumber));
2591
+ cmd.addOption(new Option("--simulated <bool>", "Whether the 2D body is simulated.").argParser(coerceBoolean));
2592
+ cmd.addOption(new Option("--target <ref>", "Target GameObject with a Rigidbody or Rigidbody2D.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
2593
+ cmd.addOption(new Option("--useGravity <bool>", "Whether 3D gravity is applied (3D only).").argParser(coerceBoolean));
2594
+ addToolCallControlOptions(cmd);
2595
+ cmd.action(function (_opts) {
2596
+ return runCommand(this, async (ctx) => {
2597
+ const opts = this.opts();
2598
+ const args = {};
2599
+ if (opts["angularDrag"] !== undefined)
2600
+ args["angularDrag"] = opts["angularDrag"];
2601
+ if (opts["bodyType"] !== undefined)
2602
+ args["bodyType"] = opts["bodyType"];
2603
+ if (opts["collisionDetection"] !== undefined)
2604
+ args["collisionDetection"] = opts["collisionDetection"];
2605
+ if (opts["constraints"] !== undefined)
2606
+ args["constraints"] = opts["constraints"];
2607
+ if (opts["dimension"] !== undefined)
2608
+ args["dimension"] = opts["dimension"];
2609
+ if (opts["drag"] !== undefined)
2610
+ args["drag"] = opts["drag"];
2611
+ if (opts["gravityScale"] !== undefined)
2612
+ args["gravityScale"] = opts["gravityScale"];
2613
+ if (opts["interpolation"] !== undefined)
2614
+ args["interpolation"] = opts["interpolation"];
2615
+ if (opts["isKinematic"] !== undefined)
2616
+ args["isKinematic"] = opts["isKinematic"];
2617
+ if (opts["mass"] !== undefined)
2618
+ args["mass"] = opts["mass"];
2619
+ if (opts["simulated"] !== undefined)
2620
+ args["simulated"] = opts["simulated"];
2621
+ if (opts["target"] !== undefined)
2622
+ args["target"] = opts["target"];
2623
+ if (opts["useGravity"] !== undefined)
2624
+ args["useGravity"] = opts["useGravity"];
2625
+ return ctx.transport.callTool("physics-rigidbody-configure", args, toolCallOptionsFromCli(opts));
2626
+ })();
2627
+ });
2628
+ }
2629
+ // Physics / Rigidbody / Get
2630
+ {
2631
+ const cmd = program
2632
+ .command("physics-rigidbody-get")
2633
+ .description("Snapshot the Rigidbody / Rigidbody2D state on the target GameObject.");
2634
+ cmd.addOption(new Option("--dimension <string>", "Dimension override: '3d' or '2d'. If omitted, inferred from the present component."));
2635
+ cmd.addOption(new Option("--target <ref>", "Target GameObject with a Rigidbody or Rigidbody2D.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
2636
+ addToolCallControlOptions(cmd);
2637
+ cmd.action(function (_opts) {
2638
+ return runCommand(this, async (ctx) => {
2639
+ const opts = this.opts();
2640
+ const args = {};
2641
+ if (opts["dimension"] !== undefined)
2642
+ args["dimension"] = opts["dimension"];
2643
+ if (opts["target"] !== undefined)
2644
+ args["target"] = opts["target"];
2645
+ return ctx.transport.callTool("physics-rigidbody-get", args, toolCallOptionsFromCli(opts));
2646
+ })();
2647
+ });
2648
+ }
2649
+ // Physics / Settings / Get
2650
+ {
2651
+ const cmd = program
2652
+ .command("physics-settings-get")
2653
+ .description("Read current physics settings (gravity, solver iterations, thresholds, query flags) for the requested dimension.");
2654
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2655
+ addToolCallControlOptions(cmd);
2656
+ cmd.action(function (_opts) {
2657
+ return runCommand(this, async (ctx) => {
2658
+ const opts = this.opts();
2659
+ const args = {};
2660
+ if (opts["dimension"] !== undefined)
2661
+ args["dimension"] = opts["dimension"];
2662
+ return ctx.transport.callTool("physics-settings-get", args, toolCallOptionsFromCli(opts));
2663
+ })();
2664
+ });
2665
+ }
2666
+ // Physics / Settings / Set
2667
+ {
2668
+ const cmd = program
2669
+ .command("physics-settings-set")
2670
+ .description("Mutate physics settings for the requested dimension (gravity, thresholds, solver counts, global query flags). Only non-null arguments are applied.");
2671
+ cmd.addOption(new Option("--autoSimulation <bool>", "Auto-simulation enabled. Maps to Physics.simulationMode (3D) and Physics2D.simulationMode (2D).").argParser(coerceBoolean));
2672
+ cmd.addOption(new Option("--bounceThreshold <num>", "Bounce threshold velocity. Applies to both 2D and 3D.").argParser(coerceNumber));
2673
+ cmd.addOption(new Option("--defaultContactOffset <num>", "Default contact offset (3D only).").argParser(coerceNumber));
2674
+ cmd.addOption(new Option("--defaultMaxAngularSpeed <num>", "Default maximum angular speed (3D only).").argParser(coerceNumber));
2675
+ cmd.addOption(new Option("--defaultSolverIterations <int>", "Default solver iterations (3D only).").argParser(coerceInteger));
2676
+ cmd.addOption(new Option("--defaultSolverVelocityIterations <int>", "Default solver velocity iterations (3D only).").argParser(coerceInteger));
2677
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2678
+ cmd.addOption(new Option("--gravity <x,y,z|json>", "Gravity vector (x,y,z). For 2D the z component is ignored.").argParser(coerceVec3));
2679
+ cmd.addOption(new Option("--positionIterations <int>", "Number of position iterations per simulation step (2D only).").argParser(coerceInteger));
2680
+ cmd.addOption(new Option("--queriesHitBackfaces <bool>", "Whether queries hit back-faces globally (3D only).").argParser(coerceBoolean));
2681
+ cmd.addOption(new Option("--queriesHitTriggers <bool>", "Whether queries (raycast / overlap / cast) collide with triggers globally.").argParser(coerceBoolean));
2682
+ cmd.addOption(new Option("--sleepThreshold <num>", "Sleep threshold (3D only).").argParser(coerceNumber));
2683
+ cmd.addOption(new Option("--velocityIterations <int>", "Number of velocity iterations per simulation step (2D only).").argParser(coerceInteger));
2684
+ addToolCallControlOptions(cmd);
2685
+ cmd.action(function (_opts) {
2686
+ return runCommand(this, async (ctx) => {
2687
+ const opts = this.opts();
2688
+ const args = {};
2689
+ if (opts["autoSimulation"] !== undefined)
2690
+ args["autoSimulation"] = opts["autoSimulation"];
2691
+ if (opts["bounceThreshold"] !== undefined)
2692
+ args["bounceThreshold"] = opts["bounceThreshold"];
2693
+ if (opts["defaultContactOffset"] !== undefined)
2694
+ args["defaultContactOffset"] = opts["defaultContactOffset"];
2695
+ if (opts["defaultMaxAngularSpeed"] !== undefined)
2696
+ args["defaultMaxAngularSpeed"] = opts["defaultMaxAngularSpeed"];
2697
+ if (opts["defaultSolverIterations"] !== undefined)
2698
+ args["defaultSolverIterations"] = opts["defaultSolverIterations"];
2699
+ if (opts["defaultSolverVelocityIterations"] !== undefined)
2700
+ args["defaultSolverVelocityIterations"] = opts["defaultSolverVelocityIterations"];
2701
+ if (opts["dimension"] !== undefined)
2702
+ args["dimension"] = opts["dimension"];
2703
+ if (opts["gravity"] !== undefined)
2704
+ args["gravity"] = opts["gravity"];
2705
+ if (opts["positionIterations"] !== undefined)
2706
+ args["positionIterations"] = opts["positionIterations"];
2707
+ if (opts["queriesHitBackfaces"] !== undefined)
2708
+ args["queriesHitBackfaces"] = opts["queriesHitBackfaces"];
2709
+ if (opts["queriesHitTriggers"] !== undefined)
2710
+ args["queriesHitTriggers"] = opts["queriesHitTriggers"];
2711
+ if (opts["sleepThreshold"] !== undefined)
2712
+ args["sleepThreshold"] = opts["sleepThreshold"];
2713
+ if (opts["velocityIterations"] !== undefined)
2714
+ args["velocityIterations"] = opts["velocityIterations"];
2715
+ return ctx.transport.callTool("physics-settings-set", args, toolCallOptionsFromCli(opts));
2716
+ })();
2717
+ });
2718
+ }
2719
+ // Physics / Shapecast
2720
+ {
2721
+ const cmd = program
2722
+ .command("physics-shapecast")
2723
+ .description("Shapecast a primitive volume (box/sphere/capsule) and return the colliders it hits.");
2724
+ cmd.addOption(new Option("--capsulePoint2 <x,y,z|json>", "Capsule only: world-space position of the second end-cap (the first is `origin`).").argParser(coerceVec3));
2725
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2726
+ cmd.addOption(new Option("--direction <x,y,z|json>", "Cast direction (normalized internally).").argParser(coerceVec3).makeOptionMandatory(true));
2727
+ cmd.addOption(new Option("--halfExtents <x,y,z|json>", "Box only: half-extents (Vector3). For 2D capsule it is also used as the capsule size (x=width, y=height).").argParser(coerceVec3));
2728
+ cmd.addOption(new Option("--layerMask <int>", "Layer mask bitmask. Defaults to all (~0) when null or -1.").argParser(coerceInteger));
2729
+ cmd.addOption(new Option("--maxDistance <num>", "Max cast distance. Defaults to Mathf.Infinity when null.").argParser(coerceNumber));
2730
+ cmd.addOption(new Option("--origin <x,y,z|json>", "Shape center / start position in world space.").argParser(coerceVec3).makeOptionMandatory(true));
2731
+ cmd.addOption(new Option("--radius <num>", "Sphere / capsule radius.").argParser(coerceNumber));
2732
+ cmd.addOption(new Option("--returnAll <bool>", "When true, returns every hit along the cast. When false, returns at most the closest hit.").argParser(coerceBoolean));
2733
+ cmd.addOption(new Option("--rotation <json>", "Box only: rotation (Quaternion) of the box. Identity when null.").argParser(coerceJson));
2734
+ cmd.addOption(new Option("--shape <string>", "Shape: 'box' | 'sphere' | 'capsule'.").makeOptionMandatory(true));
2735
+ addToolCallControlOptions(cmd);
2736
+ cmd.action(function (_opts) {
2737
+ return runCommand(this, async (ctx) => {
2738
+ const opts = this.opts();
2739
+ const args = {};
2740
+ if (opts["capsulePoint2"] !== undefined)
2741
+ args["capsulePoint2"] = opts["capsulePoint2"];
2742
+ if (opts["dimension"] !== undefined)
2743
+ args["dimension"] = opts["dimension"];
2744
+ if (opts["direction"] !== undefined)
2745
+ args["direction"] = opts["direction"];
2746
+ if (opts["halfExtents"] !== undefined)
2747
+ args["halfExtents"] = opts["halfExtents"];
2748
+ if (opts["layerMask"] !== undefined)
2749
+ args["layerMask"] = opts["layerMask"];
2750
+ if (opts["maxDistance"] !== undefined)
2751
+ args["maxDistance"] = opts["maxDistance"];
2752
+ if (opts["origin"] !== undefined)
2753
+ args["origin"] = opts["origin"];
2754
+ if (opts["radius"] !== undefined)
2755
+ args["radius"] = opts["radius"];
2756
+ if (opts["returnAll"] !== undefined)
2757
+ args["returnAll"] = opts["returnAll"];
2758
+ if (opts["rotation"] !== undefined)
2759
+ args["rotation"] = opts["rotation"];
2760
+ if (opts["shape"] !== undefined)
2761
+ args["shape"] = opts["shape"];
2762
+ return ctx.transport.callTool("physics-shapecast", args, toolCallOptionsFromCli(opts));
2763
+ })();
2764
+ });
2765
+ }
2766
+ // Physics / Simulate / Step
2767
+ {
2768
+ const cmd = program
2769
+ .command("physics-simulate-step")
2770
+ .description("Advance the physics simulation by one step in Edit Mode (3D or 2D).");
2771
+ cmd.addOption(new Option("--deltaTime <num>", "Time step in seconds. Defaults to Time.fixedDeltaTime when null.").argParser(coerceNumber));
2772
+ cmd.addOption(new Option("--dimension <string>", "Dimension: '3d' (default) or '2d'."));
2773
+ addToolCallControlOptions(cmd);
2774
+ cmd.action(function (_opts) {
2775
+ return runCommand(this, async (ctx) => {
2776
+ const opts = this.opts();
2777
+ const args = {};
2778
+ if (opts["deltaTime"] !== undefined)
2779
+ args["deltaTime"] = opts["deltaTime"];
2780
+ if (opts["dimension"] !== undefined)
2781
+ args["dimension"] = opts["dimension"];
2782
+ return ctx.transport.callTool("physics-simulate-step", args, toolCallOptionsFromCli(opts));
2783
+ })();
2784
+ });
2785
+ }
2786
+ // Physics / Validate
2787
+ {
2788
+ const cmd = program
2789
+ .command("physics-validate")
2790
+ .description("Scan all loaded scenes for common physics misconfigurations and return a list of issues.");
2791
+ cmd.addOption(new Option("--includeInfo <bool>", "When true, also emit Info-severity findings. Default false.").argParser(coerceBoolean));
2792
+ addToolCallControlOptions(cmd);
2793
+ cmd.action(function (_opts) {
2794
+ return runCommand(this, async (ctx) => {
2795
+ const opts = this.opts();
2796
+ const args = {};
2797
+ if (opts["includeInfo"] !== undefined)
2798
+ args["includeInfo"] = opts["includeInfo"];
2799
+ return ctx.transport.callTool("physics-validate", args, toolCallOptionsFromCli(opts));
2800
+ })();
2801
+ });
2802
+ }
2803
+ // Profiler / Get Counters
2804
+ {
2805
+ const cmd = program
2806
+ .command("profiler-get-counters")
2807
+ .description("Sample ProfilerRecorder counters in a category. Pass explicit names or omit to enumerate all in the category.");
2808
+ cmd.addOption(new Option("--category <string>", "ProfilerCategory name. Examples: Render, Scripts, Memory, Physics, Animation, Audio.").makeOptionMandatory(true));
2809
+ cmd.addOption(new Option("--counters <json>", "Optional list of explicit counter names. Omit to read every counter available in the category.").argParser(coerceJson));
2810
+ addToolCallControlOptions(cmd);
2811
+ cmd.action(function (_opts) {
2812
+ return runCommand(this, async (ctx) => {
2813
+ const opts = this.opts();
2814
+ const args = {};
2815
+ if (opts["category"] !== undefined)
2816
+ args["category"] = opts["category"];
2817
+ if (opts["counters"] !== undefined)
2818
+ args["counters"] = opts["counters"];
2819
+ return ctx.transport.callTool("profiler-get-counters", args, toolCallOptionsFromCli(opts));
2820
+ })();
2821
+ });
2822
+ }
2823
+ // Profiler / Get Frame Timing
2824
+ {
2825
+ const cmd = program
2826
+ .command("profiler-get-frame-timing")
2827
+ .description("Capture the latest FrameTimingManager frame timing data.");
2828
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
2829
+ addToolCallControlOptions(cmd);
2830
+ cmd.action(function (_opts) {
2831
+ return runCommand(this, async (ctx) => {
2832
+ const opts = this.opts();
2833
+ const args = {};
2834
+ if (opts["nothing"] !== undefined)
2835
+ args["nothing"] = opts["nothing"];
2836
+ return ctx.transport.callTool("profiler-get-frame-timing", args, toolCallOptionsFromCli(opts));
2837
+ })();
2838
+ });
2839
+ }
2840
+ // Profiler / Get Object Memory
2841
+ {
2842
+ const cmd = program
2843
+ .command("profiler-get-object-memory")
2844
+ .description("Return runtime memory size for a scene or asset object via Profiler.GetRuntimeMemorySizeLong.");
2845
+ cmd.addOption(new Option("--objectPath <string>", "Scene hierarchy path (e.g. '/Player/Mesh') or asset path (e.g. 'Assets/Textures/hero.png').").makeOptionMandatory(true));
2846
+ addToolCallControlOptions(cmd);
2847
+ cmd.action(function (_opts) {
2848
+ return runCommand(this, async (ctx) => {
2849
+ const opts = this.opts();
2850
+ const args = {};
2851
+ if (opts["objectPath"] !== undefined)
2852
+ args["objectPath"] = opts["objectPath"];
2853
+ return ctx.transport.callTool("profiler-get-object-memory", args, toolCallOptionsFromCli(opts));
2854
+ })();
2855
+ });
2856
+ }
2857
+ // Profiler / Memory Snapshot / Compare
2858
+ {
2859
+ const cmd = program
2860
+ .command("profiler-memory-snapshot-compare")
2861
+ .description("Compare two .snap files at file-metadata level (size and creation-time delta).");
2862
+ cmd.addOption(new Option("--snapshotA <string>", "Path to the first .snap file.").makeOptionMandatory(true));
2863
+ cmd.addOption(new Option("--snapshotB <string>", "Path to the second .snap file.").makeOptionMandatory(true));
2864
+ addToolCallControlOptions(cmd);
2865
+ cmd.action(function (_opts) {
2866
+ return runCommand(this, async (ctx) => {
2867
+ const opts = this.opts();
2868
+ const args = {};
2869
+ if (opts["snapshotA"] !== undefined)
2870
+ args["snapshotA"] = opts["snapshotA"];
2871
+ if (opts["snapshotB"] !== undefined)
2872
+ args["snapshotB"] = opts["snapshotB"];
2873
+ return ctx.transport.callTool("profiler-memory-snapshot-compare", args, toolCallOptionsFromCli(opts));
2874
+ })();
2875
+ });
2876
+ }
2877
+ // Profiler / Memory Snapshot / List
2878
+ {
2879
+ const cmd = program
2880
+ .command("profiler-memory-snapshot-list")
2881
+ .description("List .snap memory snapshot files in known or supplied directories.");
2882
+ cmd.addOption(new Option("--searchPath <string>", "Optional directory to search for .snap files. When empty, scans the default snapshot directories."));
2883
+ addToolCallControlOptions(cmd);
2884
+ cmd.action(function (_opts) {
2885
+ return runCommand(this, async (ctx) => {
2886
+ const opts = this.opts();
2887
+ const args = {};
2888
+ if (opts["searchPath"] !== undefined)
2889
+ args["searchPath"] = opts["searchPath"];
2890
+ return ctx.transport.callTool("profiler-memory-snapshot-list", args, toolCallOptionsFromCli(opts));
2891
+ })();
2892
+ });
2893
+ }
2894
+ // Profiler / Memory Snapshot / Take
2895
+ {
2896
+ const cmd = program
2897
+ .command("profiler-memory-snapshot-take")
2898
+ .description("Capture a Unity memory snapshot to a .snap file (requires com.unity.memoryprofiler).");
2899
+ cmd.addOption(new Option("--snapshotPath <string>", "Output path for the .snap file. Optional — when empty, writes to Application.temporaryCachePath/MemoryCaptures/ with a timestamped name."));
2900
+ addToolCallControlOptions(cmd);
2901
+ cmd.action(function (_opts) {
2902
+ return runCommand(this, async (ctx) => {
2903
+ const opts = this.opts();
2904
+ const args = {};
2905
+ if (opts["snapshotPath"] !== undefined)
2906
+ args["snapshotPath"] = opts["snapshotPath"];
2907
+ return ctx.transport.callTool("profiler-memory-snapshot-take", args, toolCallOptionsFromCli(opts));
2908
+ })();
2909
+ });
2910
+ }
2911
+ // Profiler / Set Areas
2912
+ {
2913
+ const cmd = program
2914
+ .command("profiler-set-areas")
2915
+ .description("Toggle Unity ProfilerArea values via Profiler.SetAreaEnabled.");
2916
+ cmd.addOption(new Option("--areas <json>", "Dictionary of ProfilerArea name -> bool. Use 'profiler-status' for valid area names.").argParser(coerceJson).makeOptionMandatory(true));
2917
+ addToolCallControlOptions(cmd);
2918
+ cmd.action(function (_opts) {
2919
+ return runCommand(this, async (ctx) => {
2920
+ const opts = this.opts();
2921
+ const args = {};
2922
+ if (opts["areas"] !== undefined)
2923
+ args["areas"] = opts["areas"];
2924
+ return ctx.transport.callTool("profiler-set-areas", args, toolCallOptionsFromCli(opts));
2925
+ })();
2926
+ });
2927
+ }
2928
+ // Profiler / Start
2929
+ {
2930
+ const cmd = program
2931
+ .command("profiler-start")
2932
+ .description("Enable the Unity Profiler. Optionally record to a .raw file and enable allocation callstacks.");
2933
+ cmd.addOption(new Option("--enableCallstacks <bool>", "If true, enables Profiler.enableAllocationCallstacks. Default: false.").argParser(coerceBoolean));
2934
+ cmd.addOption(new Option("--logFile <string>", "Absolute path for an optional binary '.raw' profiler recording. The parent directory must exist."));
2935
+ addToolCallControlOptions(cmd);
2936
+ cmd.action(function (_opts) {
2937
+ return runCommand(this, async (ctx) => {
2938
+ const opts = this.opts();
2939
+ const args = {};
2940
+ if (opts["enableCallstacks"] !== undefined)
2941
+ args["enableCallstacks"] = opts["enableCallstacks"];
2942
+ if (opts["logFile"] !== undefined)
2943
+ args["logFile"] = opts["logFile"];
2944
+ return ctx.transport.callTool("profiler-start", args, toolCallOptionsFromCli(opts));
2945
+ })();
2946
+ });
2947
+ }
2948
+ // Profiler / Status
2949
+ {
2950
+ const cmd = program
2951
+ .command("profiler-status")
2952
+ .description("Return Unity Profiler state and the per-area enabled map.");
2953
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
2954
+ addToolCallControlOptions(cmd);
2955
+ cmd.action(function (_opts) {
2956
+ return runCommand(this, async (ctx) => {
2957
+ const opts = this.opts();
2958
+ const args = {};
2959
+ if (opts["nothing"] !== undefined)
2960
+ args["nothing"] = opts["nothing"];
2961
+ return ctx.transport.callTool("profiler-status", args, toolCallOptionsFromCli(opts));
2962
+ })();
2963
+ });
2964
+ }
2965
+ // Profiler / Stop
2966
+ {
2967
+ const cmd = program
2968
+ .command("profiler-stop")
2969
+ .description("Disable the Unity Profiler and stop recording.");
2970
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
2971
+ addToolCallControlOptions(cmd);
2972
+ cmd.action(function (_opts) {
2973
+ return runCommand(this, async (ctx) => {
2974
+ const opts = this.opts();
2975
+ const args = {};
2976
+ if (opts["nothing"] !== undefined)
2977
+ args["nothing"] = opts["nothing"];
2978
+ return ctx.transport.callTool("profiler-stop", args, toolCallOptionsFromCli(opts));
2979
+ })();
2980
+ });
2981
+ }
2982
+ // Method C# / Call
2983
+ {
2984
+ const cmd = program
2985
+ .command("reflection-method-call")
2986
+ .description("Call C# method. Any method could be called, even private methods. It requires to receive proper method schema. Use 'reflection-method-find' to find available method before using it. Receives input parameters and returns result.");
2987
+ cmd.addOption(new Option("--executeInMainThread <bool>", "Set to true if the method should be executed in the main thread. Otherwise, set to false.").argParser(coerceBoolean));
2988
+ cmd.addOption(new Option("--filter <json>", "Method reference. Used to find method in codebase of the project.").argParser(coerceJson).makeOptionMandatory(true));
2989
+ cmd.addOption(new Option("--inputParameters <json-array>", "Method input parameters. Per each parameter specify: type - full type name of the object to call method on, name - parameter name, value - serialized object value (it will be deserialized to the specified type).").argParser(coerceJson));
2990
+ cmd.addOption(new Option("--knownNamespace <bool>", "Set to true if 'Namespace' is known and full namespace name is specified in the 'filter.Namespace' property. Otherwise, set to false.").argParser(coerceBoolean));
2991
+ cmd.addOption(new Option("--methodNameMatchLevel <int>", "Minimal match level for 'MethodName'. 0 - ignore 'filter.MethodName', 1 - contains ignoring case (default value), 2 - contains case sensitive, 3 - starts with ignoring case, 4 - starts with case sensitive, 5 - equals ignoring case, 6 - equals case sensitive.").argParser(coerceInteger));
2992
+ cmd.addOption(new Option("--parametersMatchLevel <int>", "Minimal match level for 'Parameters'. 0 - ignore 'filter.Parameters', 1 - parameters count is the same, 2 - equals (default value).").argParser(coerceInteger));
2993
+ cmd.addOption(new Option("--targetObject <json>", "Specify target object to call method on. Should be null if the method is static or if there is no specific target instance. New instance of the specified class will be created if the method is instance method and the targetObject is null. Required: type - full type name of the object to call method on, value - serialized object value (it will be deserialized to the specified type).").argParser(coerceJson));
2994
+ cmd.addOption(new Option("--typeNameMatchLevel <int>", "Minimal match level for 'typeName'. 0 - ignore 'filter.typeName', 1 - contains ignoring case (default value), 2 - contains case sensitive, 3 - starts with ignoring case, 4 - starts with case sensitive, 5 - equals ignoring case, 6 - equals case sensitive.").argParser(coerceInteger));
2995
+ addToolCallControlOptions(cmd);
2996
+ cmd.action(function (_opts) {
2997
+ return runCommand(this, async (ctx) => {
2998
+ const opts = this.opts();
2999
+ const args = {};
3000
+ if (opts["executeInMainThread"] !== undefined)
3001
+ args["executeInMainThread"] = opts["executeInMainThread"];
3002
+ if (opts["filter"] !== undefined)
3003
+ args["filter"] = opts["filter"];
3004
+ if (opts["inputParameters"] !== undefined)
3005
+ args["inputParameters"] = opts["inputParameters"];
3006
+ if (opts["knownNamespace"] !== undefined)
3007
+ args["knownNamespace"] = opts["knownNamespace"];
3008
+ if (opts["methodNameMatchLevel"] !== undefined)
3009
+ args["methodNameMatchLevel"] = opts["methodNameMatchLevel"];
3010
+ if (opts["parametersMatchLevel"] !== undefined)
3011
+ args["parametersMatchLevel"] = opts["parametersMatchLevel"];
3012
+ if (opts["targetObject"] !== undefined)
3013
+ args["targetObject"] = opts["targetObject"];
3014
+ if (opts["typeNameMatchLevel"] !== undefined)
3015
+ args["typeNameMatchLevel"] = opts["typeNameMatchLevel"];
3016
+ return ctx.transport.callTool("reflection-method-call", args, toolCallOptionsFromCli(opts));
3017
+ })();
3018
+ });
3019
+ }
3020
+ // Method C# / Find
3021
+ {
3022
+ const cmd = program
3023
+ .command("reflection-method-find")
3024
+ .description("Find method in the project using C# Reflection. It looks for all assemblies in the project and finds method by its name, class name and parameters. Even private methods are available. Use 'reflection-method-call' to call the method after finding it.");
3025
+ cmd.addOption(new Option("--filter <json>", "Method reference. Used to find method in codebase of the project.").argParser(coerceJson).makeOptionMandatory(true));
3026
+ cmd.addOption(new Option("--knownNamespace <bool>", "Set to true if 'Namespace' is known and full namespace name is specified in the 'filter.Namespace' property. Otherwise, set to false.").argParser(coerceBoolean));
3027
+ cmd.addOption(new Option("--methodNameMatchLevel <int>", "Minimal match level for 'MethodName'. 0 - ignore 'filter.MethodName', 1 - contains ignoring case (default value), 2 - contains case sensitive, 3 - starts with ignoring case, 4 - starts with case sensitive, 5 - equals ignoring case, 6 - equals case sensitive.").argParser(coerceInteger));
3028
+ cmd.addOption(new Option("--parametersMatchLevel <int>", "Minimal match level for 'Parameters'. 0 - ignore 'filter.Parameters' (default value), 1 - parameters count is the same, 2 - equals.").argParser(coerceInteger));
3029
+ cmd.addOption(new Option("--typeNameMatchLevel <int>", "Minimal match level for 'typeName'. 0 - ignore 'filter.typeName', 1 - contains ignoring case (default value), 2 - contains case sensitive, 3 - starts with ignoring case, 4 - starts with case sensitive, 5 - equals ignoring case, 6 - equals case sensitive.").argParser(coerceInteger));
3030
+ addToolCallControlOptions(cmd);
3031
+ cmd.action(function (_opts) {
3032
+ return runCommand(this, async (ctx) => {
3033
+ const opts = this.opts();
3034
+ const args = {};
3035
+ if (opts["filter"] !== undefined)
3036
+ args["filter"] = opts["filter"];
3037
+ if (opts["knownNamespace"] !== undefined)
3038
+ args["knownNamespace"] = opts["knownNamespace"];
3039
+ if (opts["methodNameMatchLevel"] !== undefined)
3040
+ args["methodNameMatchLevel"] = opts["methodNameMatchLevel"];
3041
+ if (opts["parametersMatchLevel"] !== undefined)
3042
+ args["parametersMatchLevel"] = opts["parametersMatchLevel"];
3043
+ if (opts["typeNameMatchLevel"] !== undefined)
3044
+ args["typeNameMatchLevel"] = opts["typeNameMatchLevel"];
3045
+ return ctx.transport.callTool("reflection-method-find", args, toolCallOptionsFromCli(opts));
3046
+ })();
3047
+ });
3048
+ }
3049
+ // Scene / Create
3050
+ {
3051
+ const cmd = program
3052
+ .command("scene-create")
3053
+ .description("Create new scene in the project assets. Use 'scene-list-opened' tool to list all opened scenes after creation.");
3054
+ cmd.addOption(new Option("--newSceneMode <value>", "newSceneMode").choices(["Single", "Additive"]));
3055
+ cmd.addOption(new Option("--newSceneSetup <value>", "newSceneSetup").choices(["EmptyScene", "DefaultGameObjects"]));
3056
+ cmd.addOption(new Option("--path <string>", "Path to the scene file. Should end with \".unity\" extension.").makeOptionMandatory(true));
3057
+ addToolCallControlOptions(cmd);
3058
+ cmd.action(function (_opts) {
3059
+ return runCommand(this, async (ctx) => {
3060
+ const opts = this.opts();
3061
+ const args = {};
3062
+ if (opts["newSceneMode"] !== undefined)
3063
+ args["newSceneMode"] = opts["newSceneMode"];
3064
+ if (opts["newSceneSetup"] !== undefined)
3065
+ args["newSceneSetup"] = opts["newSceneSetup"];
3066
+ if (opts["path"] !== undefined)
3067
+ args["path"] = opts["path"];
3068
+ return ctx.transport.callTool("scene-create", args, toolCallOptionsFromCli(opts));
3069
+ })();
3070
+ });
3071
+ }
3072
+ // Scene / Get Data
3073
+ {
3074
+ const cmd = program
3075
+ .command("scene-get-data")
3076
+ .description("This tool retrieves the list of root GameObjects in the specified scene. Use 'scene-list-opened' tool to get the list of all opened scenes. Path-scoped reads (token-saving): supply 'paths' (a list of paths) to read only the listed fields/elements from the scene's root-GameObjects array via Reflector.TryReadAt, or 'viewQuery' (a ViewQuery) to navigate/filter the same array via Reflector.View. The result populates 'Data' on the returned SceneData. These two parameters are mutually exclusive. Path syntax: 'fieldName', 'nested/field', 'arrayField/[i]', 'dictField/[key]'. Leading '#/' is stripped. Example: paths=['[0]/name'] reads the name of the first root GameObject.");
3077
+ cmd.addOption(new Option("--includeBounds <bool>", "If true, includes bounding box information for GameObjects.").argParser(coerceBoolean));
3078
+ cmd.addOption(new Option("--includeChildrenDepth <int>", "Determines the depth of the hierarchy to include.").argParser(coerceInteger));
3079
+ cmd.addOption(new Option("--includeData <bool>", "If true, includes component data for GameObjects.").argParser(coerceBoolean));
3080
+ cmd.addOption(new Option("--includeRootGameObjects <bool>", "If true, includes root GameObjects in the scene data.").argParser(coerceBoolean));
3081
+ cmd.addOption(new Option("--openedSceneName <string>", "Name of the opened scene. If empty or null, the active scene will be used."));
3082
+ cmd.addOption(new Option("--paths <json>", "Optional. List of paths to read individually via Reflector.TryReadAt against the scene's root-GameObjects array. Path syntax: 'fieldName', '[i]/field', '[i]/component/[j]/property'. Mutually exclusive with 'viewQuery'.").argParser(coerceJson));
3083
+ cmd.addOption(new Option("--viewQuery <json>", "Optional. View-query filter routed through Reflector.View on the scene's root-GameObjects array. Mutually exclusive with 'paths'.").argParser(coerceJson));
3084
+ addToolCallControlOptions(cmd);
3085
+ cmd.action(function (_opts) {
3086
+ return runCommand(this, async (ctx) => {
3087
+ const opts = this.opts();
3088
+ const args = {};
3089
+ if (opts["includeBounds"] !== undefined)
3090
+ args["includeBounds"] = opts["includeBounds"];
3091
+ if (opts["includeChildrenDepth"] !== undefined)
3092
+ args["includeChildrenDepth"] = opts["includeChildrenDepth"];
3093
+ if (opts["includeData"] !== undefined)
3094
+ args["includeData"] = opts["includeData"];
3095
+ if (opts["includeRootGameObjects"] !== undefined)
3096
+ args["includeRootGameObjects"] = opts["includeRootGameObjects"];
3097
+ if (opts["openedSceneName"] !== undefined)
3098
+ args["openedSceneName"] = opts["openedSceneName"];
3099
+ if (opts["paths"] !== undefined)
3100
+ args["paths"] = opts["paths"];
3101
+ if (opts["viewQuery"] !== undefined)
3102
+ args["viewQuery"] = opts["viewQuery"];
3103
+ return ctx.transport.callTool("scene-get-data", args, toolCallOptionsFromCli(opts));
3104
+ })();
3105
+ });
3106
+ }
3107
+ // Scene / List Opened
3108
+ {
3109
+ const cmd = program
3110
+ .command("scene-list-opened")
3111
+ .description("Returns the list of currently opened scenes in Unity Editor. Use 'scene-get-data' tool to get detailed information about a specific scene.");
3112
+ cmd.addOption(new Option("--nothing <string>", "nothing"));
3113
+ addToolCallControlOptions(cmd);
3114
+ cmd.action(function (_opts) {
3115
+ return runCommand(this, async (ctx) => {
3116
+ const opts = this.opts();
3117
+ const args = {};
3118
+ if (opts["nothing"] !== undefined)
3119
+ args["nothing"] = opts["nothing"];
3120
+ return ctx.transport.callTool("scene-list-opened", args, toolCallOptionsFromCli(opts));
3121
+ })();
3122
+ });
3123
+ }
3124
+ // Scene / Open
3125
+ {
3126
+ const cmd = program
3127
+ .command("scene-open")
3128
+ .description("Open scene from the project asset file. Use 'assets-find' tool to find the scene asset first.");
3129
+ cmd.addOption(new Option("--loadSceneMode <value>", "Open scene mode. Single: closes the current scenes and opens a new one. Additive: keeps the current scene and opens additional one.").choices(["Single", "Additive", "AdditiveWithoutLoading"]));
3130
+ cmd.addOption(new Option("--sceneRef <json>", "Reference to UnityEngine.Object asset instance. It could be Material, ScriptableObject, Prefab, and any other Asset. Anything located in the Assets and Packages folders.").argParser(coerceJson).makeOptionMandatory(true));
3131
+ addToolCallControlOptions(cmd);
3132
+ cmd.action(function (_opts) {
3133
+ return runCommand(this, async (ctx) => {
3134
+ const opts = this.opts();
3135
+ const args = {};
3136
+ if (opts["loadSceneMode"] !== undefined)
3137
+ args["loadSceneMode"] = opts["loadSceneMode"];
3138
+ if (opts["sceneRef"] !== undefined)
3139
+ args["sceneRef"] = opts["sceneRef"];
3140
+ return ctx.transport.callTool("scene-open", args, toolCallOptionsFromCli(opts));
3141
+ })();
3142
+ });
3143
+ }
3144
+ // Scene / Save
3145
+ {
3146
+ const cmd = program
3147
+ .command("scene-save")
3148
+ .description("Save Opened scene to the asset file. Use 'scene-list-opened' tool to get the list of all opened scenes.");
3149
+ cmd.addOption(new Option("--openedSceneName <string>", "Name of the opened scene that should be saved. Could be empty if need to save the current active scene."));
3150
+ cmd.addOption(new Option("--path <string>", "Path to the scene file. Should end with \".unity\". If null or empty save to the existed scene asset file."));
3151
+ addToolCallControlOptions(cmd);
3152
+ cmd.action(function (_opts) {
3153
+ return runCommand(this, async (ctx) => {
3154
+ const opts = this.opts();
3155
+ const args = {};
3156
+ if (opts["openedSceneName"] !== undefined)
3157
+ args["openedSceneName"] = opts["openedSceneName"];
3158
+ if (opts["path"] !== undefined)
3159
+ args["path"] = opts["path"];
3160
+ return ctx.transport.callTool("scene-save", args, toolCallOptionsFromCli(opts));
3161
+ })();
3162
+ });
3163
+ }
3164
+ // Scene / Set Active
3165
+ {
3166
+ const cmd = program
3167
+ .command("scene-set-active")
3168
+ .description("Set the specified opened scene as the active scene. Use 'scene-list-opened' tool to get the list of all opened scenes.");
3169
+ cmd.addOption(new Option("--sceneRef <json>", "Reference to UnityEngine.Object asset instance. It could be Material, ScriptableObject, Prefab, and any other Asset. Anything located in the Assets and Packages folders.").argParser(coerceJson).makeOptionMandatory(true));
3170
+ addToolCallControlOptions(cmd);
3171
+ cmd.action(function (_opts) {
3172
+ return runCommand(this, async (ctx) => {
3173
+ const opts = this.opts();
3174
+ const args = {};
3175
+ if (opts["sceneRef"] !== undefined)
3176
+ args["sceneRef"] = opts["sceneRef"];
3177
+ return ctx.transport.callTool("scene-set-active", args, toolCallOptionsFromCli(opts));
3178
+ })();
3179
+ });
3180
+ }
3181
+ // Scene / Unload
3182
+ {
3183
+ const cmd = program
3184
+ .command("scene-unload")
3185
+ .description("Unload scene from the Opened scenes in Unity Editor. Use 'scene-list-opened' tool to get the list of all opened scenes.");
3186
+ cmd.addOption(new Option("--name <string>", "Name of the loaded scene.").makeOptionMandatory(true));
3187
+ addToolCallControlOptions(cmd);
3188
+ cmd.action(function (_opts) {
3189
+ return runCommand(this, async (ctx) => {
3190
+ const opts = this.opts();
3191
+ const args = {};
3192
+ if (opts["name"] !== undefined)
3193
+ args["name"] = opts["name"];
3194
+ return ctx.transport.callTool("scene-unload", args, toolCallOptionsFromCli(opts));
3195
+ })();
3196
+ });
3197
+ }
3198
+ // Screenshot / Camera
3199
+ {
3200
+ const cmd = program
3201
+ .command("screenshot-camera")
3202
+ .description("Captures a screenshot from a camera and returns it as an image. If no camera is specified, uses the Main Camera. Returns the image directly for visual inspection by the LLM.");
3203
+ cmd.addOption(new Option("--asynchronous <bool>", "Queue file/metadata capture as a durable operation. Inline image capture remains synchronous.").argParser(coerceBoolean));
3204
+ cmd.addOption(new Option("--cameraRef <ref>", "Reference to the camera GameObject. If not specified, uses the Main Camera.").argParser(coerceGameObjectRef));
3205
+ cmd.addOption(new Option("--height <int>", "Height of the screenshot in pixels.").argParser(coerceInteger));
3206
+ cmd.addOption(new Option("--metadataOnly <bool>", "Return bounded metadata without inline base64. Default false.").argParser(coerceBoolean));
3207
+ cmd.addOption(new Option("--outputFile <string>", "Project-relative PNG output path. When set, returns metadata without base64."));
3208
+ cmd.addOption(new Option("--width <int>", "Width of the screenshot in pixels.").argParser(coerceInteger));
3209
+ addToolCallControlOptions(cmd);
3210
+ cmd.action(function (_opts) {
3211
+ return runCommand(this, async (ctx) => {
3212
+ const opts = this.opts();
3213
+ const args = {};
3214
+ if (opts["asynchronous"] !== undefined)
3215
+ args["asynchronous"] = opts["asynchronous"];
3216
+ if (opts["cameraRef"] !== undefined)
3217
+ args["cameraRef"] = opts["cameraRef"];
3218
+ if (opts["height"] !== undefined)
3219
+ args["height"] = opts["height"];
3220
+ if (opts["metadataOnly"] !== undefined)
3221
+ args["metadataOnly"] = opts["metadataOnly"];
3222
+ if (opts["outputFile"] !== undefined)
3223
+ args["outputFile"] = opts["outputFile"];
3224
+ if (opts["width"] !== undefined)
3225
+ args["width"] = opts["width"];
3226
+ return ctx.transport.callTool("screenshot-camera", args, toolCallOptionsFromCli(opts));
3227
+ })();
3228
+ });
3229
+ }
3230
+ // Screenshot / Game View
3231
+ {
3232
+ const cmd = program
3233
+ .command("screenshot-game-view")
3234
+ .description("Captures a screenshot from the Unity Editor Game View and returns it as an image. Reads the Game View's own render texture directly via the Unity Editor API. The image size matches the current Game View resolution. Returns the image directly for visual inspection by the LLM.");
3235
+ cmd.addOption(new Option("--asynchronous <bool>", "Queue file/metadata capture as a durable operation. Inline image capture remains synchronous.").argParser(coerceBoolean));
3236
+ cmd.addOption(new Option("--metadataOnly <bool>", "Return bounded metadata without inline base64. Default false.").argParser(coerceBoolean));
3237
+ cmd.addOption(new Option("--outputFile <string>", "Project-relative PNG output path. When set, returns metadata without base64."));
3238
+ addToolCallControlOptions(cmd);
3239
+ cmd.action(function (_opts) {
3240
+ return runCommand(this, async (ctx) => {
3241
+ const opts = this.opts();
3242
+ const args = {};
3243
+ if (opts["asynchronous"] !== undefined)
3244
+ args["asynchronous"] = opts["asynchronous"];
3245
+ if (opts["metadataOnly"] !== undefined)
3246
+ args["metadataOnly"] = opts["metadataOnly"];
3247
+ if (opts["outputFile"] !== undefined)
3248
+ args["outputFile"] = opts["outputFile"];
3249
+ return ctx.transport.callTool("screenshot-game-view", args, toolCallOptionsFromCli(opts));
3250
+ })();
3251
+ });
3252
+ }
3253
+ // Screenshot / Isolated GameObject
3254
+ {
3255
+ const cmd = program
3256
+ .command("screenshot-isolated")
3257
+ .description("Renders a screenshot of a target GameObject with configurable isolation, background, camera angle, and lighting. When isolated=true (default), only the target object is visible via layer-based culling and inactive children of the target are temporarily activated for the render (their OnEnable callbacks may fire — restored in finally, but side effects like audio/network/animation events are not undoable). When isolated=false, the existing scene state is rendered as-is without activating inactive objects. Supports custom multi-light setups via JSON. Returns a base64-encoded PNG.");
3258
+ cmd.addOption(new Option("--asynchronous <bool>", "Queue file/metadata capture as a durable operation. Inline image capture remains synchronous.").argParser(coerceBoolean));
3259
+ cmd.addOption(new Option("--backgroundColor <string>", "Hex background color (e.g. '#404040'). Only used when backgroundMode is SolidColor."));
3260
+ cmd.addOption(new Option("--backgroundMode <json>", "Background mode. Default: SolidColor.").argParser(coerceJson));
3261
+ cmd.addOption(new Option("--cameraView <json>", "Camera angle relative to the target object's bounding box. Default: Front.").argParser(coerceJson));
3262
+ cmd.addOption(new Option("--farClipPlane <num>", "Camera far clip plane distance. Default: 1000.").argParser(coerceNumber));
3263
+ cmd.addOption(new Option("--fieldOfView <num>", "Camera vertical field of view in degrees. Default: 60.").argParser(coerceNumber));
3264
+ cmd.addOption(new Option("--gameObjectRef <ref>", "Reference to the target GameObject (by instanceId, path, or name).").argParser(coerceGameObjectRef).makeOptionMandatory(true));
3265
+ cmd.addOption(new Option("--includeChildren <bool>", "Include child GameObjects in the render. Default: true.").argParser(coerceBoolean));
3266
+ cmd.addOption(new Option("--isolated <bool>", "When true, renders only the target object using layer-based culling. When false, renders the full scene from the computed camera position. Default: true.").argParser(coerceBoolean));
3267
+ cmd.addOption(new Option("--lights <string>", "JSON array of light configurations. Each object defines type, color, intensity, rotation, position, range, spotAngle, shadows, etc. When null, a default white directional light at rotation (50,-30,0) is used. Example: [{\"type\":\"Directional\",\"color\":\"#FFF4E5\",\"intensity\":1.2,\"rotation\":[45,-45,0]}]"));
3268
+ cmd.addOption(new Option("--metadataOnly <bool>", "Return bounded metadata without inline base64. Default false.").argParser(coerceBoolean));
3269
+ cmd.addOption(new Option("--nearClipPlane <num>", "Camera near clip plane distance. Default: 0.01.").argParser(coerceNumber));
3270
+ cmd.addOption(new Option("--outputFile <string>", "Project-relative PNG output path. When set, returns metadata without base64."));
3271
+ cmd.addOption(new Option("--padding <num>", "Framing multiplier around the object. 1.0 = tight fit, 1.5 = 50% extra space. Default: 1.2.").argParser(coerceNumber));
3272
+ cmd.addOption(new Option("--resolution <int>", "Output image resolution in pixels (width = height). Default: 512.").argParser(coerceInteger));
3273
+ addToolCallControlOptions(cmd);
3274
+ cmd.action(function (_opts) {
3275
+ return runCommand(this, async (ctx) => {
3276
+ const opts = this.opts();
3277
+ const args = {};
3278
+ if (opts["asynchronous"] !== undefined)
3279
+ args["asynchronous"] = opts["asynchronous"];
3280
+ if (opts["backgroundColor"] !== undefined)
3281
+ args["backgroundColor"] = opts["backgroundColor"];
3282
+ if (opts["backgroundMode"] !== undefined)
3283
+ args["backgroundMode"] = opts["backgroundMode"];
3284
+ if (opts["cameraView"] !== undefined)
3285
+ args["cameraView"] = opts["cameraView"];
3286
+ if (opts["farClipPlane"] !== undefined)
3287
+ args["farClipPlane"] = opts["farClipPlane"];
3288
+ if (opts["fieldOfView"] !== undefined)
3289
+ args["fieldOfView"] = opts["fieldOfView"];
3290
+ if (opts["gameObjectRef"] !== undefined)
3291
+ args["gameObjectRef"] = opts["gameObjectRef"];
3292
+ if (opts["includeChildren"] !== undefined)
3293
+ args["includeChildren"] = opts["includeChildren"];
3294
+ if (opts["isolated"] !== undefined)
3295
+ args["isolated"] = opts["isolated"];
3296
+ if (opts["lights"] !== undefined)
3297
+ args["lights"] = opts["lights"];
3298
+ if (opts["metadataOnly"] !== undefined)
3299
+ args["metadataOnly"] = opts["metadataOnly"];
3300
+ if (opts["nearClipPlane"] !== undefined)
3301
+ args["nearClipPlane"] = opts["nearClipPlane"];
3302
+ if (opts["outputFile"] !== undefined)
3303
+ args["outputFile"] = opts["outputFile"];
3304
+ if (opts["padding"] !== undefined)
3305
+ args["padding"] = opts["padding"];
3306
+ if (opts["resolution"] !== undefined)
3307
+ args["resolution"] = opts["resolution"];
3308
+ return ctx.transport.callTool("screenshot-isolated", args, toolCallOptionsFromCli(opts));
3309
+ })();
3310
+ });
3311
+ }
3312
+ // Screenshot / Scene View
3313
+ {
3314
+ const cmd = program
3315
+ .command("screenshot-scene-view")
3316
+ .description("Captures a screenshot from the Unity Editor Scene View and returns it as an image. Returns the image directly for visual inspection by the LLM.");
3317
+ cmd.addOption(new Option("--asynchronous <bool>", "Queue file/metadata capture as a durable operation. Inline image capture remains synchronous.").argParser(coerceBoolean));
3318
+ cmd.addOption(new Option("--height <int>", "Height of the screenshot in pixels.").argParser(coerceInteger));
3319
+ cmd.addOption(new Option("--metadataOnly <bool>", "Return bounded metadata without inline base64. Default false.").argParser(coerceBoolean));
3320
+ cmd.addOption(new Option("--outputFile <string>", "Project-relative PNG output path. When set, returns metadata without base64."));
3321
+ cmd.addOption(new Option("--width <int>", "Width of the screenshot in pixels.").argParser(coerceInteger));
3322
+ addToolCallControlOptions(cmd);
3323
+ cmd.action(function (_opts) {
3324
+ return runCommand(this, async (ctx) => {
3325
+ const opts = this.opts();
3326
+ const args = {};
3327
+ if (opts["asynchronous"] !== undefined)
3328
+ args["asynchronous"] = opts["asynchronous"];
3329
+ if (opts["height"] !== undefined)
3330
+ args["height"] = opts["height"];
3331
+ if (opts["metadataOnly"] !== undefined)
3332
+ args["metadataOnly"] = opts["metadataOnly"];
3333
+ if (opts["outputFile"] !== undefined)
3334
+ args["outputFile"] = opts["outputFile"];
3335
+ if (opts["width"] !== undefined)
3336
+ args["width"] = opts["width"];
3337
+ return ctx.transport.callTool("screenshot-scene-view", args, toolCallOptionsFromCli(opts));
3338
+ })();
3339
+ });
3340
+ }
3341
+ // Script / Apply Edits
3342
+ {
3343
+ const cmd = program
3344
+ .command("script-apply-edits")
3345
+ .description("Apply LSP-style line/column ranged edits to a .cs file. Send only the diff, not the whole file. Optional SHA-based optimistic locking; Roslyn syntax validation before write.");
3346
+ cmd.addOption(new Option("--edits <json>", "Array of LSP-style edits. Each is { Range, NewText }. Applied in reverse-sorted order — caller need not compensate.").argParser(coerceJson).makeOptionMandatory(true));
3347
+ cmd.addOption(new Option("--expectedSha <string>", "Optional SHA-256 (hex, lower-case) of file content captured before edits via 'script-get-sha'. If set and mismatched, returns STALE_SHA without writing."));
3348
+ cmd.addOption(new Option("--filePath <string>", "Project-relative path to the .cs file. Must exist. Sample: \"Assets/Scripts/MyScript.cs\".").makeOptionMandatory(true));
3349
+ cmd.addOption(new Option("--validate <bool>", "Validate the post-edit text via Roslyn syntax parse before writing. Default true.").argParser(coerceBoolean));
3350
+ addToolCallControlOptions(cmd);
3351
+ cmd.action(function (_opts) {
3352
+ return runCommand(this, async (ctx) => {
3353
+ const opts = this.opts();
3354
+ const args = {};
3355
+ if (opts["edits"] !== undefined)
3356
+ args["edits"] = opts["edits"];
3357
+ if (opts["expectedSha"] !== undefined)
3358
+ args["expectedSha"] = opts["expectedSha"];
3359
+ if (opts["filePath"] !== undefined)
3360
+ args["filePath"] = opts["filePath"];
3361
+ if (opts["validate"] !== undefined)
3362
+ args["validate"] = opts["validate"];
3363
+ return ctx.transport.callTool("script-apply-edits", args, toolCallOptionsFromCli(opts));
3364
+ })();
3365
+ });
3366
+ }
3367
+ // Script / Delete
3368
+ {
3369
+ const cmd = program
3370
+ .command("script-delete")
3371
+ .description("Delete the script file(s). Does AssetDatabase.Refresh() and waits for Unity compilation to complete before reporting results. Use 'script-read' tool to read existing script files first.");
3372
+ cmd.addOption(new Option("--files <json>", "File paths to the files. Sample: \"Assets/Scripts/MyScript.cs\".").argParser(coerceJson).makeOptionMandatory(true));
3373
+ addToolCallControlOptions(cmd);
3374
+ cmd.action(function (_opts) {
3375
+ return runCommand(this, async (ctx) => {
3376
+ const opts = this.opts();
3377
+ const args = {};
3378
+ if (opts["files"] !== undefined)
3379
+ args["files"] = opts["files"];
3380
+ return ctx.transport.callTool("script-delete", args, toolCallOptionsFromCli(opts));
3381
+ })();
3382
+ });
3383
+ }
3384
+ // Script / Execute
3385
+ {
3386
+ const cmd = program
3387
+ .command("script-execute")
3388
+ .description("Compiles and executes C# code dynamically using Roslyn. Supports two modes: full code mode (default) requires a complete class definition, while body-only mode (isMethodBody=true) auto-generates the boilerplate so you only provide the method body. Unity objects (GameObject, Component, etc.) can be passed as parameters using their Ref types (GameObjectRef, ComponentRef, etc.) or directly by type.");
3389
+ cmd.addOption(new Option("--className <string>", "The name of the class containing the method to execute. In body-only mode this becomes the generated class name."));
3390
+ cmd.addOption(new Option("--csharpCode <string>", "C# code to compile and execute. In full code mode (default, isMethodBody=false): must define a complete class with a static method. Example: 'using UnityEngine; public class Script { public static void Main() { Debug.Log(\"Hello\"); } }'. Do NOT use top-level statements. In body-only mode (isMethodBody=true): provide only the method body statements. The tool auto-generates usings, class, and method header. Example body: 'go.SetActive(false);'. Custom helper classes can still be defined inline in the body-only string after the main logic, but for complex additional class definitions use full code mode instead."));
3391
+ cmd.addOption(new Option("--defines <json>", "Optional preprocessor symbols for the Roslyn compilation (e.g. ENABLE_PROFILER). Max 16, each a C# identifier of at most 128 characters; duplicates are removed. The Editor assemblies' own defines are NOT inherited by default — APIs guarded with [Conditional(\"DEFINE\")] or #if DEFINE are compiled out unless you pass the symbol here.").argParser(coerceJson));
3392
+ cmd.addOption(new Option("--isMethodBody <bool>", "When true, 'csharpCode' is treated as just the method body. The tool auto-generates standard using directives (System, UnityEngine, AIGD, com.AtelierAI.Unity.Copilot.Runtime.Extensions, UnityEditor), the class definition, and the method signature. Parameters from the 'parameters' list are automatically added to the method signature using their typeName and name. When false (default), 'csharpCode' must be a complete C# compilation unit with class and method definitions.").argParser(coerceBoolean));
3393
+ cmd.addOption(new Option("--methodName <string>", "The name of the method to execute. Must be a static method. In body-only mode this becomes the generated method name."));
3394
+ cmd.addOption(new Option("--parameters <json-array>", "Serialized parameters to pass to the method. Each entry must specify 'name' and 'typeName'. Supported parameter types include primitives, strings, and Unity object references: - 'UnityEngine.GameObject': resolves an actual GameObject from value '{\"instanceID\": N}', '{\"name\": \"...\"}', or '{\"path\": \"...\"}'. - 'UnityEngine.Component' (or any component subtype): resolves from '{\"instanceID\": N}'. - 'AIGD.GameObjectRef': passes a GameObjectRef POCO directly; the method body calls goRef.FindGameObject() to resolve it. - 'AIGD.ComponentRef': passes a ComponentRef POCO. - 'AIGD.ObjectRef': passes a base ObjectRef POCO. If the method does not require parameters, leave this empty.").argParser(coerceJson));
3395
+ cmd.addOption(new Option("--returnType <string>", "Return type of the generated method in body-only mode. Default 'void' = side-effect only, no return value. Set to a C# type name to return data: 'int', 'bool', 'string', 'UnityEngine.Vector3', 'System.Collections.Generic.List<string>', etc. When non-void, the body MUST end with a 'return <expr>;' statement; the returned value is serialized back to the caller. Full-code mode declares its own return type in the code; this is informational there."));
3396
+ cmd.addOption(new Option("--sandboxScene <bool>", "Execute inside a disposable sandbox scene: a new untitled scene is opened for the work, and the previously active scene setup, selection, and dirty state are restored afterwards. The result reports whether restoration succeeded. Default false.").argParser(coerceBoolean));
3397
+ cmd.addOption(new Option("--code-file <path>", "Read csharpCode as strict UTF-8 from a path or - (stdin)."));
3398
+ addToolCallControlOptions(cmd);
3399
+ cmd.action(function (_opts) {
3400
+ return runCommand(this, async (ctx) => {
3401
+ const opts = this.opts();
3402
+ const args = {};
3403
+ if (opts["className"] !== undefined)
3404
+ args["className"] = opts["className"];
3405
+ args["csharpCode"] = resolveTextInput(opts["csharpCode"], opts["codeFile"], "--csharpCode", "--code-file");
3406
+ if (opts["defines"] !== undefined)
3407
+ args["defines"] = opts["defines"];
3408
+ if (opts["isMethodBody"] !== undefined)
3409
+ args["isMethodBody"] = opts["isMethodBody"];
3410
+ if (opts["methodName"] !== undefined)
3411
+ args["methodName"] = opts["methodName"];
3412
+ if (opts["parameters"] !== undefined)
3413
+ args["parameters"] = opts["parameters"];
3414
+ if (opts["returnType"] !== undefined)
3415
+ args["returnType"] = opts["returnType"];
3416
+ if (opts["sandboxScene"] !== undefined)
3417
+ args["sandboxScene"] = opts["sandboxScene"];
3418
+ return ctx.transport.callTool("script-execute", args, toolCallOptionsFromCli(opts));
3419
+ })();
3420
+ });
3421
+ }
3422
+ // Script / Find In File
3423
+ {
3424
+ const cmd = program
3425
+ .command("script-find-in-file")
3426
+ .description("Search files under Assets/ or Packages/ for a regex or plain-text pattern (ripgrep-style). Returns matching lines with optional context.");
3427
+ cmd.addOption(new Option("--context <int>", "Lines of context before/after each match. Default 0, max 20.").argParser(coerceInteger));
3428
+ cmd.addOption(new Option("--glob <string>", "Glob to filter files, e.g. '*.cs', '**/*.uss'. Default '*.cs'."));
3429
+ cmd.addOption(new Option("--ignoreCase <bool>", "Case-insensitive match. Default false.").argParser(coerceBoolean));
3430
+ cmd.addOption(new Option("--maxFileBytes <int>", "Max bytes per file to scan. Default 5_000_000. Files larger are skipped.").argParser(coerceInteger));
3431
+ cmd.addOption(new Option("--maxResults <int>", "Max matches returned across all files. Default 200, hard cap 2000.").argParser(coerceInteger));
3432
+ cmd.addOption(new Option("--pattern <string>", "Search pattern (regex by default, plain text when 'plainText'=true).").makeOptionMandatory(true));
3433
+ cmd.addOption(new Option("--plainText <bool>", "Treat pattern as plain text (no regex metachars). Default false.").argParser(coerceBoolean));
3434
+ cmd.addOption(new Option("--root <string>", "Root path relative to project. Default 'Assets/'. Use 'Packages/' to search packages."));
3435
+ addToolCallControlOptions(cmd);
3436
+ cmd.action(function (_opts) {
3437
+ return runCommand(this, async (ctx) => {
3438
+ const opts = this.opts();
3439
+ const args = {};
3440
+ if (opts["context"] !== undefined)
3441
+ args["context"] = opts["context"];
3442
+ if (opts["glob"] !== undefined)
3443
+ args["glob"] = opts["glob"];
3444
+ if (opts["ignoreCase"] !== undefined)
3445
+ args["ignoreCase"] = opts["ignoreCase"];
3446
+ if (opts["maxFileBytes"] !== undefined)
3447
+ args["maxFileBytes"] = opts["maxFileBytes"];
3448
+ if (opts["maxResults"] !== undefined)
3449
+ args["maxResults"] = opts["maxResults"];
3450
+ if (opts["pattern"] !== undefined)
3451
+ args["pattern"] = opts["pattern"];
3452
+ if (opts["plainText"] !== undefined)
3453
+ args["plainText"] = opts["plainText"];
3454
+ if (opts["root"] !== undefined)
3455
+ args["root"] = opts["root"];
3456
+ return ctx.transport.callTool("script-find-in-file", args, toolCallOptionsFromCli(opts));
3457
+ })();
3458
+ });
3459
+ }
3460
+ // Script / Get SHA
3461
+ {
3462
+ const cmd = program
3463
+ .command("script-get-sha")
3464
+ .description("Compute the SHA-256 hash of a script file's raw bytes (hex, lower-case). Pair with 'script-apply-edits' as an optimistic-lock token.");
3465
+ cmd.addOption(new Option("--filePath <string>", "Project-relative path to the .cs file. Sample: \"Assets/Scripts/MyScript.cs\".").makeOptionMandatory(true));
3466
+ addToolCallControlOptions(cmd);
3467
+ cmd.action(function (_opts) {
3468
+ return runCommand(this, async (ctx) => {
3469
+ const opts = this.opts();
3470
+ const args = {};
3471
+ if (opts["filePath"] !== undefined)
3472
+ args["filePath"] = opts["filePath"];
3473
+ return ctx.transport.callTool("script-get-sha", args, toolCallOptionsFromCli(opts));
3474
+ })();
3475
+ });
3476
+ }
3477
+ // Script / Read
3478
+ {
3479
+ const cmd = program
3480
+ .command("script-read")
3481
+ .description("Reads the content of a script file and returns it as a string. Use 'script-update-or-create' tool to update or create script files.");
3482
+ cmd.addOption(new Option("--filePath <string>", "The path to the file. Sample: \"Assets/Scripts/MyScript.cs\".").makeOptionMandatory(true));
3483
+ cmd.addOption(new Option("--lineFrom <int>", "The line number to start reading from (1-based).").argParser(coerceInteger));
3484
+ cmd.addOption(new Option("--lineTo <int>", "The line number to stop reading at (1-based, -1 for all lines).").argParser(coerceInteger));
3485
+ addToolCallControlOptions(cmd);
3486
+ cmd.action(function (_opts) {
3487
+ return runCommand(this, async (ctx) => {
3488
+ const opts = this.opts();
3489
+ const args = {};
3490
+ if (opts["filePath"] !== undefined)
3491
+ args["filePath"] = opts["filePath"];
3492
+ if (opts["lineFrom"] !== undefined)
3493
+ args["lineFrom"] = opts["lineFrom"];
3494
+ if (opts["lineTo"] !== undefined)
3495
+ args["lineTo"] = opts["lineTo"];
3496
+ return ctx.transport.callTool("script-read", args, toolCallOptionsFromCli(opts));
3497
+ })();
3498
+ });
3499
+ }
3500
+ // Script / Update or Create
3501
+ {
3502
+ const cmd = program
3503
+ .command("script-update-or-create")
3504
+ .description("Updates or creates script file with the provided C# code. Does AssetDatabase.Refresh() at the end. Provides compilation error details if the code has syntax errors. Use 'script-read' tool to read existing script files first.");
3505
+ cmd.addOption(new Option("--content <string>", "C# code - content of the file.").makeOptionMandatory(true));
3506
+ cmd.addOption(new Option("--filePath <string>", "The path to the file. Sample: \"Assets/Scripts/MyScript.cs\".").makeOptionMandatory(true));
3507
+ addToolCallControlOptions(cmd);
3508
+ cmd.action(function (_opts) {
3509
+ return runCommand(this, async (ctx) => {
3510
+ const opts = this.opts();
3511
+ const args = {};
3512
+ if (opts["content"] !== undefined)
3513
+ args["content"] = opts["content"];
3514
+ if (opts["filePath"] !== undefined)
3515
+ args["filePath"] = opts["filePath"];
3516
+ return ctx.transport.callTool("script-update-or-create", args, toolCallOptionsFromCli(opts));
3517
+ })();
3518
+ });
3519
+ }
3520
+ // Script / Validate
3521
+ {
3522
+ const cmd = program
3523
+ .command("script-validate")
3524
+ .description("Validates C# source via Roslyn at Syntax / Semantic / Strict levels without compiling to an assembly or writing any file. Use as a pre-flight check before 'script-update-or-create'. Semantic/Strict catch references to unknown namespaces, types, and methods against the project's loaded assemblies.");
3525
+ cmd.addOption(new Option("--code <string>", "C# source code to validate (full file text).").makeOptionMandatory(true));
3526
+ cmd.addOption(new Option("--fileName <string>", "Optional file name shown in diagnostic locations. Defaults to 'Submitted.cs'."));
3527
+ cmd.addOption(new Option("--level <value>", "Validation strictness. 'Syntax' (default) = parser only. 'Semantic' = parser + project-assembly symbol resolution (catches unknown types/methods/namespaces). 'Strict' = Semantic + warnings-as-errors + nullable.").choices(["Syntax", "Semantic", "Strict"]));
3528
+ addToolCallControlOptions(cmd);
3529
+ cmd.action(function (_opts) {
3530
+ return runCommand(this, async (ctx) => {
3531
+ const opts = this.opts();
3532
+ const args = {};
3533
+ if (opts["code"] !== undefined)
3534
+ args["code"] = opts["code"];
3535
+ if (opts["fileName"] !== undefined)
3536
+ args["fileName"] = opts["fileName"];
3537
+ if (opts["level"] !== undefined)
3538
+ args["level"] = opts["level"];
3539
+ return ctx.transport.callTool("script-validate", args, toolCallOptionsFromCli(opts));
3540
+ })();
3541
+ });
3542
+ }
3543
+ // Tests / Cancel Job
3544
+ {
3545
+ const cmd = program
3546
+ .command("tests-job-cancel")
3547
+ .description("Request cooperative cancellation of a tests-run operation.");
3548
+ cmd.addOption(new Option("--jobId <string>", "jobId").makeOptionMandatory(true));
3549
+ addToolCallControlOptions(cmd);
3550
+ cmd.action(function (_opts) {
3551
+ return runCommand(this, async (ctx) => {
3552
+ const opts = this.opts();
3553
+ const args = {};
3554
+ if (opts["jobId"] !== undefined)
3555
+ args["jobId"] = opts["jobId"];
3556
+ return ctx.transport.callTool("tests-job-cancel", args, toolCallOptionsFromCli(opts));
3557
+ })();
3558
+ });
3559
+ }
3560
+ // Tests / Get Job
3561
+ {
3562
+ const cmd = program
3563
+ .command("tests-job-get")
3564
+ .description("Get one durable tests-run operation by ID.");
3565
+ cmd.addOption(new Option("--jobId <string>", "jobId").makeOptionMandatory(true));
3566
+ addToolCallControlOptions(cmd);
3567
+ cmd.action(function (_opts) {
3568
+ return runCommand(this, async (ctx) => {
3569
+ const opts = this.opts();
3570
+ const args = {};
3571
+ if (opts["jobId"] !== undefined)
3572
+ args["jobId"] = opts["jobId"];
3573
+ return ctx.transport.callTool("tests-job-get", args, toolCallOptionsFromCli(opts));
3574
+ })();
3575
+ });
3576
+ }
3577
+ // Tests / List Jobs
3578
+ {
3579
+ const cmd = program
3580
+ .command("tests-job-list")
3581
+ .description("List durable tests-run operations.");
3582
+ cmd.addOption(new Option("--includeTerminal <bool>", "includeTerminal").argParser(coerceBoolean));
3583
+ addToolCallControlOptions(cmd);
3584
+ cmd.action(function (_opts) {
3585
+ return runCommand(this, async (ctx) => {
3586
+ const opts = this.opts();
3587
+ const args = {};
3588
+ if (opts["includeTerminal"] !== undefined)
3589
+ args["includeTerminal"] = opts["includeTerminal"];
3590
+ return ctx.transport.callTool("tests-job-list", args, toolCallOptionsFromCli(opts));
3591
+ })();
3592
+ });
3593
+ }
3594
+ // Tests / Run
3595
+ {
3596
+ const cmd = program
3597
+ .command("tests-run")
3598
+ .description("Execute Unity tests and return detailed results. Supports filtering by test mode, assembly, namespace, class, and method. Recommended to use 'EditMode' for faster iteration during development. Precondition: every open scene MUST be saved (no unsaved changes). If any open scene is dirty, this tool throws an InvalidOperationException listing the dirty scenes; save them and retry.");
3599
+ cmd.addOption(new Option("--executionTimeoutSeconds <int>", "Maximum total test operation duration in seconds. Default 1800; valid range 1..86400.").argParser((raw) => coerceInteger(raw, 1, 86400)));
3600
+ cmd.addOption(new Option("--includeLogs <bool>", "Include console logs in the test results (default: false).").argParser(coerceBoolean));
3601
+ cmd.addOption(new Option("--includeLogsStacktrace <bool>", "Include stack traces for console logs in the test results (default: false). This is huge amount of data, use only if really needed.").argParser(coerceBoolean));
3602
+ cmd.addOption(new Option("--includeMessages <bool>", "Include test result messages in the test results (default: true). If you just need pass/fail status, set to false.").argParser(coerceBoolean));
3603
+ cmd.addOption(new Option("--includePassingTests <bool>", "Include details for all tests, both passing and failing (default: false). If you just need details for failing tests, set to false.").argParser(coerceBoolean));
3604
+ cmd.addOption(new Option("--includeStacktrace <bool>", "Include stack traces in the test results (default: false).").argParser(coerceBoolean));
3605
+ cmd.addOption(new Option("--logType <value>", "Log type filter for console logs. Options: 'Log', 'Warning', 'Assert', 'Error', 'Exception'. (default: 'Warning')").choices(["Error", "Assert", "Warning", "Log", "Exception"]));
3606
+ cmd.addOption(new Option("--sandboxScene <bool>", "Run the tests inside a disposable sandbox scene: a new untitled scene is opened for the run and the previously active scene setup, selection, and dirty state are restored afterwards. User scenes that were dirty before the call still block the run exactly as without sandbox mode. Default false.").argParser(coerceBoolean));
3607
+ cmd.addOption(new Option("--testAssembly <string>", "Specific test assembly name to run (optional). Example: 'Assembly-CSharp-Editor-testable'"));
3608
+ cmd.addOption(new Option("--testClass <string>", "Specific test class name to run (optional). Example: 'MyTestClass'"));
3609
+ cmd.addOption(new Option("--testMethod <string>", "Specific fully qualified test method to run (optional). Example: 'MyTestNamespace.FixtureName.TestName'"));
3610
+ cmd.addOption(new Option("--testMode <value>", "Test mode to run. Options: 'EditMode', 'PlayMode'. Default: 'EditMode'").choices(["EditMode", "PlayMode"]));
3611
+ cmd.addOption(new Option("--testNamespace <string>", "Specific test namespace to run (optional). Example: 'MyTestNamespace'"));
3612
+ cmd.addOption(new Option("--waitTimeoutSeconds <int>", "Maximum discovery/initial wait in seconds before returning a failed operation. Default 10; valid range 1..300.").argParser((raw) => coerceInteger(raw, 1, 300)));
3613
+ addToolCallControlOptions(cmd);
3614
+ cmd.action(function (_opts) {
3615
+ return runCommand(this, async (ctx) => {
3616
+ const opts = this.opts();
3617
+ const args = {};
3618
+ if (opts["executionTimeoutSeconds"] !== undefined)
3619
+ args["executionTimeoutSeconds"] = opts["executionTimeoutSeconds"];
3620
+ if (opts["includeLogs"] !== undefined)
3621
+ args["includeLogs"] = opts["includeLogs"];
3622
+ if (opts["includeLogsStacktrace"] !== undefined)
3623
+ args["includeLogsStacktrace"] = opts["includeLogsStacktrace"];
3624
+ if (opts["includeMessages"] !== undefined)
3625
+ args["includeMessages"] = opts["includeMessages"];
3626
+ if (opts["includePassingTests"] !== undefined)
3627
+ args["includePassingTests"] = opts["includePassingTests"];
3628
+ if (opts["includeStacktrace"] !== undefined)
3629
+ args["includeStacktrace"] = opts["includeStacktrace"];
3630
+ if (opts["logType"] !== undefined)
3631
+ args["logType"] = opts["logType"];
3632
+ if (opts["sandboxScene"] !== undefined)
3633
+ args["sandboxScene"] = opts["sandboxScene"];
3634
+ if (opts["testAssembly"] !== undefined)
3635
+ args["testAssembly"] = opts["testAssembly"];
3636
+ if (opts["testClass"] !== undefined)
3637
+ args["testClass"] = opts["testClass"];
3638
+ if (opts["testMethod"] !== undefined)
3639
+ args["testMethod"] = opts["testMethod"];
3640
+ if (opts["testMode"] !== undefined)
3641
+ args["testMode"] = opts["testMode"];
3642
+ if (opts["testNamespace"] !== undefined)
3643
+ args["testNamespace"] = opts["testNamespace"];
3644
+ if (opts["waitTimeoutSeconds"] !== undefined)
3645
+ args["waitTimeoutSeconds"] = opts["waitTimeoutSeconds"];
3646
+ return ctx.transport.callTool("tests-run", args, toolCallOptionsFromCli(opts));
3647
+ })();
3648
+ });
3649
+ }
3650
+ // Texture / Create Checker Pattern
3651
+ {
3652
+ const cmd = program
3653
+ .command("texture-create-checker")
3654
+ .description("Generate a Texture2D with a two-color checkerboard pattern and save it as a PNG asset under 'Assets/'.");
3655
+ cmd.addOption(new Option("--color1 <json>", "Color of the (0,0) cell. RGBA channels in 0..1. Default opaque white.").argParser(coerceJson));
3656
+ cmd.addOption(new Option("--color2 <json>", "Color of the alternating cells. RGBA channels in 0..1. Default opaque black.").argParser(coerceJson));
3657
+ cmd.addOption(new Option("--height <int>", "Height in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3658
+ cmd.addOption(new Option("--overwrite <bool>", "Force overwrite if asset already exists. Default false.").argParser(coerceBoolean));
3659
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.png'.").makeOptionMandatory(true));
3660
+ cmd.addOption(new Option("--squareSize <int>", "Side length of a single checker cell in pixels. Must be >= 1.").argParser(coerceInteger));
3661
+ cmd.addOption(new Option("--width <int>", "Width in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3662
+ addToolCallControlOptions(cmd);
3663
+ cmd.action(function (_opts) {
3664
+ return runCommand(this, async (ctx) => {
3665
+ const opts = this.opts();
3666
+ const args = {};
3667
+ if (opts["color1"] !== undefined)
3668
+ args["color1"] = opts["color1"];
3669
+ if (opts["color2"] !== undefined)
3670
+ args["color2"] = opts["color2"];
3671
+ if (opts["height"] !== undefined)
3672
+ args["height"] = opts["height"];
3673
+ if (opts["overwrite"] !== undefined)
3674
+ args["overwrite"] = opts["overwrite"];
3675
+ if (opts["path"] !== undefined)
3676
+ args["path"] = opts["path"];
3677
+ if (opts["squareSize"] !== undefined)
3678
+ args["squareSize"] = opts["squareSize"];
3679
+ if (opts["width"] !== undefined)
3680
+ args["width"] = opts["width"];
3681
+ return ctx.transport.callTool("texture-create-checker", args, toolCallOptionsFromCli(opts));
3682
+ })();
3683
+ });
3684
+ }
3685
+ // Texture / Create Gradient
3686
+ {
3687
+ const cmd = program
3688
+ .command("texture-create-gradient")
3689
+ .description("Generate a Texture2D containing a linear gradient and save it as a PNG asset under 'Assets/'.");
3690
+ cmd.addOption(new Option("--direction <value>", "Gradient sweep direction: Horizontal, Vertical, Diagonal, or Radial.").choices(["Horizontal", "Vertical", "Diagonal", "Radial"]));
3691
+ cmd.addOption(new Option("--endColor <json>", "Color at t=1 (right/top/corner). RGBA channels in 0..1.").argParser(coerceJson).makeOptionMandatory(true));
3692
+ cmd.addOption(new Option("--height <int>", "Height in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3693
+ cmd.addOption(new Option("--overwrite <bool>", "Force overwrite if asset already exists. Default false.").argParser(coerceBoolean));
3694
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.png'.").makeOptionMandatory(true));
3695
+ cmd.addOption(new Option("--startColor <json>", "Color at t=0 (left/bottom/center). RGBA channels in 0..1.").argParser(coerceJson).makeOptionMandatory(true));
3696
+ cmd.addOption(new Option("--width <int>", "Width in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3697
+ addToolCallControlOptions(cmd);
3698
+ cmd.action(function (_opts) {
3699
+ return runCommand(this, async (ctx) => {
3700
+ const opts = this.opts();
3701
+ const args = {};
3702
+ if (opts["direction"] !== undefined)
3703
+ args["direction"] = opts["direction"];
3704
+ if (opts["endColor"] !== undefined)
3705
+ args["endColor"] = opts["endColor"];
3706
+ if (opts["height"] !== undefined)
3707
+ args["height"] = opts["height"];
3708
+ if (opts["overwrite"] !== undefined)
3709
+ args["overwrite"] = opts["overwrite"];
3710
+ if (opts["path"] !== undefined)
3711
+ args["path"] = opts["path"];
3712
+ if (opts["startColor"] !== undefined)
3713
+ args["startColor"] = opts["startColor"];
3714
+ if (opts["width"] !== undefined)
3715
+ args["width"] = opts["width"];
3716
+ return ctx.transport.callTool("texture-create-gradient", args, toolCallOptionsFromCli(opts));
3717
+ })();
3718
+ });
3719
+ }
3720
+ // Texture / Create Perlin Noise
3721
+ {
3722
+ const cmd = program
3723
+ .command("texture-create-noise")
3724
+ .description("Generate a Texture2D filled with Perlin / fBm noise and save it as a PNG asset under 'Assets/'.");
3725
+ cmd.addOption(new Option("--grayscale <bool>", "When true (default) the output RGB channels carry the same noise value. When false they are tint.rgb * sample.").argParser(coerceBoolean));
3726
+ cmd.addOption(new Option("--height <int>", "Height in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3727
+ cmd.addOption(new Option("--octaves <int>", "Number of fBm octaves in [1, 16]. Default 1 (single octave Perlin).").argParser(coerceInteger));
3728
+ cmd.addOption(new Option("--overwrite <bool>", "Force overwrite if asset already exists. Default false.").argParser(coerceBoolean));
3729
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.png'.").makeOptionMandatory(true));
3730
+ cmd.addOption(new Option("--persistence <num>", "Amplitude falloff per octave in [0, 1]. Default 0.5.").argParser(coerceNumber));
3731
+ cmd.addOption(new Option("--scale <num>", "Base frequency in tiles across the texture. Higher = finer detail. > 0.").argParser(coerceNumber));
3732
+ cmd.addOption(new Option("--seed <int>", "Integer offset applied to sample coordinates. Default 0.").argParser(coerceInteger));
3733
+ cmd.addOption(new Option("--tint <json>", "RGBA tint applied multiplicatively. Default opaque white.").argParser(coerceJson));
3734
+ cmd.addOption(new Option("--width <int>", "Width in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3735
+ addToolCallControlOptions(cmd);
3736
+ cmd.action(function (_opts) {
3737
+ return runCommand(this, async (ctx) => {
3738
+ const opts = this.opts();
3739
+ const args = {};
3740
+ if (opts["grayscale"] !== undefined)
3741
+ args["grayscale"] = opts["grayscale"];
3742
+ if (opts["height"] !== undefined)
3743
+ args["height"] = opts["height"];
3744
+ if (opts["octaves"] !== undefined)
3745
+ args["octaves"] = opts["octaves"];
3746
+ if (opts["overwrite"] !== undefined)
3747
+ args["overwrite"] = opts["overwrite"];
3748
+ if (opts["path"] !== undefined)
3749
+ args["path"] = opts["path"];
3750
+ if (opts["persistence"] !== undefined)
3751
+ args["persistence"] = opts["persistence"];
3752
+ if (opts["scale"] !== undefined)
3753
+ args["scale"] = opts["scale"];
3754
+ if (opts["seed"] !== undefined)
3755
+ args["seed"] = opts["seed"];
3756
+ if (opts["tint"] !== undefined)
3757
+ args["tint"] = opts["tint"];
3758
+ if (opts["width"] !== undefined)
3759
+ args["width"] = opts["width"];
3760
+ return ctx.transport.callTool("texture-create-noise", args, toolCallOptionsFromCli(opts));
3761
+ })();
3762
+ });
3763
+ }
3764
+ // Texture / Create Solid Color
3765
+ {
3766
+ const cmd = program
3767
+ .command("texture-create-solid")
3768
+ .description("Generate a Texture2D filled with a single RGBA color and save it as a PNG asset under 'Assets/'.");
3769
+ cmd.addOption(new Option("--color <json>", "RGBA color, each channel in 0..1. Default (1,1,1,1) = opaque white.").argParser(coerceJson));
3770
+ cmd.addOption(new Option("--height <int>", "Height in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3771
+ cmd.addOption(new Option("--overwrite <bool>", "Force overwrite if asset already exists. Default false.").argParser(coerceBoolean));
3772
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.png'.").makeOptionMandatory(true));
3773
+ cmd.addOption(new Option("--width <int>", "Width in pixels. 1..4096.").argParser(coerceInteger).makeOptionMandatory(true));
3774
+ addToolCallControlOptions(cmd);
3775
+ cmd.action(function (_opts) {
3776
+ return runCommand(this, async (ctx) => {
3777
+ const opts = this.opts();
3778
+ const args = {};
3779
+ if (opts["color"] !== undefined)
3780
+ args["color"] = opts["color"];
3781
+ if (opts["height"] !== undefined)
3782
+ args["height"] = opts["height"];
3783
+ if (opts["overwrite"] !== undefined)
3784
+ args["overwrite"] = opts["overwrite"];
3785
+ if (opts["path"] !== undefined)
3786
+ args["path"] = opts["path"];
3787
+ if (opts["width"] !== undefined)
3788
+ args["width"] = opts["width"];
3789
+ return ctx.transport.callTool("texture-create-solid", args, toolCallOptionsFromCli(opts));
3790
+ })();
3791
+ });
3792
+ }
3793
+ // Texture / Read Metadata
3794
+ {
3795
+ const cmd = program
3796
+ .command("texture-read")
3797
+ .description("Read metadata of an existing texture asset (.png / .jpg / .jpeg) under 'Assets/'.");
3798
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.png', '.jpg', or '.jpeg'.").makeOptionMandatory(true));
3799
+ addToolCallControlOptions(cmd);
3800
+ cmd.action(function (_opts) {
3801
+ return runCommand(this, async (ctx) => {
3802
+ const opts = this.opts();
3803
+ const args = {};
3804
+ if (opts["path"] !== undefined)
3805
+ args["path"] = opts["path"];
3806
+ return ctx.transport.callTool("texture-read", args, toolCallOptionsFromCli(opts));
3807
+ })();
3808
+ });
3809
+ }
3810
+ // Tool / Set Enabled State
3811
+ {
3812
+ const cmd = program
3813
+ .command("tool-set-enabled-state")
3814
+ .description("Enable or disable uco tools by name. Allows controlling which tools are available for the AI agent.");
3815
+ cmd.addOption(new Option("--includeLogs <bool>", "Include operation logs in the result. Default: false").argParser(coerceBoolean));
3816
+ cmd.addOption(new Option("--tools <json>", "Array of tools with their desired enabled state.").argParser(coerceJson).makeOptionMandatory(true));
3817
+ addToolCallControlOptions(cmd);
3818
+ cmd.action(function (_opts) {
3819
+ return runCommand(this, async (ctx) => {
3820
+ const opts = this.opts();
3821
+ const args = {};
3822
+ if (opts["includeLogs"] !== undefined)
3823
+ args["includeLogs"] = opts["includeLogs"];
3824
+ if (opts["tools"] !== undefined)
3825
+ args["tools"] = opts["tools"];
3826
+ return ctx.transport.callTool("tool-set-enabled-state", args, toolCallOptionsFromCli(opts));
3827
+ })();
3828
+ });
3829
+ }
3830
+ // Tools / List Groups
3831
+ {
3832
+ const cmd = program
3833
+ .command("tools-list-groups")
3834
+ .description("List all uco tool groups with current enabled state and tool membership. Pass includeTools=false to omit the per-group tool name arrays (ToolCount is still reported).");
3835
+ cmd.addOption(new Option("--includeTools <bool>", "Populate each group's Tools array with its member tool names (default true). Set false for a compact overview — ToolCount still reports the membership size.").argParser(coerceBoolean));
3836
+ addToolCallControlOptions(cmd);
3837
+ cmd.action(function (_opts) {
3838
+ return runCommand(this, async (ctx) => {
3839
+ const opts = this.opts();
3840
+ const args = {};
3841
+ if (opts["includeTools"] !== undefined)
3842
+ args["includeTools"] = opts["includeTools"];
3843
+ return ctx.transport.callTool("tools-list-groups", args, toolCallOptionsFromCli(opts));
3844
+ })();
3845
+ });
3846
+ }
3847
+ // Tools / Set Group Enabled
3848
+ {
3849
+ const cmd = program
3850
+ .command("tools-set-group-enabled")
3851
+ .description("Enable or disable an uco tool group at runtime, persisting the choice to EditorPrefs. Soft hint only — disabled tools remain callable through the upstream request pipeline.");
3852
+ cmd.addOption(new Option("--enabled <bool>", "True to enable the group, false to disable it.").argParser(coerceBoolean).makeOptionMandatory(true));
3853
+ cmd.addOption(new Option("--group <string>", "Group name. Use 'tools-list-groups' to discover valid group names.").makeOptionMandatory(true));
3854
+ addToolCallControlOptions(cmd);
3855
+ cmd.action(function (_opts) {
3856
+ return runCommand(this, async (ctx) => {
3857
+ const opts = this.opts();
3858
+ const args = {};
3859
+ if (opts["enabled"] !== undefined)
3860
+ args["enabled"] = opts["enabled"];
3861
+ if (opts["group"] !== undefined)
3862
+ args["group"] = opts["group"];
3863
+ return ctx.transport.callTool("tools-set-group-enabled", args, toolCallOptionsFromCli(opts));
3864
+ })();
3865
+ });
3866
+ }
3867
+ // Type / Get Json Schema
3868
+ {
3869
+ const cmd = program
3870
+ .command("type-get-json-schema")
3871
+ .description("Generates a JSON Schema for a given C# type name using reflection. Supports primitives, enums, arrays, generic collections, dictionaries, and complex objects. The type must be present in any loaded assembly. Use the full type name (e.g. 'UnityEngine.Vector3') for best results.");
3872
+ cmd.addOption(new Option("--descriptionMode <value>", "Controls the type-level 'description' field. Include: keep on the target type only. IncludeRecursively: keep on the target type and inside $defs entries. Ignore: strip all type-level descriptions. Default: Ignore.").choices(["Include", "IncludeRecursively", "Ignore"]));
3873
+ cmd.addOption(new Option("--includeNestedTypes <bool>", "When true, complex nested types are extracted into '$defs' and referenced via '$ref' instead of being inlined. Useful for large or recursive types. Default: false.").argParser(coerceBoolean));
3874
+ cmd.addOption(new Option("--propertyDescriptionMode <value>", "Controls 'description' fields on properties, fields, and array items. Include: keep on the target type's own properties/items only. IncludeRecursively: keep on all properties/items including those inside $defs entries. Ignore: strip all property/item descriptions. Default: Ignore.").choices(["Include", "IncludeRecursively", "Ignore"]));
3875
+ cmd.addOption(new Option("--typeName <string>", "Full C# type name to generate the schema for. Examples: 'System.String', 'UnityEngine.Vector3', 'System.Collections.Generic.List<System.Int32>'. Simple names like 'Vector3' are also accepted when unambiguous.").makeOptionMandatory(true));
3876
+ cmd.addOption(new Option("--writeIndented <bool>", "Whether to format the output JSON with indentation for readability. Default: false.").argParser(coerceBoolean));
3877
+ addToolCallControlOptions(cmd);
3878
+ cmd.action(function (_opts) {
3879
+ return runCommand(this, async (ctx) => {
3880
+ const opts = this.opts();
3881
+ const args = {};
3882
+ if (opts["descriptionMode"] !== undefined)
3883
+ args["descriptionMode"] = opts["descriptionMode"];
3884
+ if (opts["includeNestedTypes"] !== undefined)
3885
+ args["includeNestedTypes"] = opts["includeNestedTypes"];
3886
+ if (opts["propertyDescriptionMode"] !== undefined)
3887
+ args["propertyDescriptionMode"] = opts["propertyDescriptionMode"];
3888
+ if (opts["typeName"] !== undefined)
3889
+ args["typeName"] = opts["typeName"];
3890
+ if (opts["writeIndented"] !== undefined)
3891
+ args["writeIndented"] = opts["writeIndented"];
3892
+ return ctx.transport.callTool("type-get-json-schema", args, toolCallOptionsFromCli(opts));
3893
+ })();
3894
+ });
3895
+ }
3896
+ // UI / Document / Attach
3897
+ {
3898
+ const cmd = program
3899
+ .command("ui-document-attach")
3900
+ .description("Attach a UIDocument to a GameObject and wire it to a UXML asset.");
3901
+ cmd.addOption(new Option("--panelSettingsPath <string>", "Optional project-relative path to a PanelSettings .asset to assign to UIDocument.panelSettings."));
3902
+ cmd.addOption(new Option("--sortingOrder <num>", "Optional sorting order. When null, UIDocument.sortingOrder is left untouched.").argParser(coerceNumber));
3903
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting the UIDocument. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
3904
+ cmd.addOption(new Option("--visualTreeAssetPath <string>", "Project-relative path to .uxml source asset. Required.").makeOptionMandatory(true));
3905
+ addToolCallControlOptions(cmd);
3906
+ cmd.action(function (_opts) {
3907
+ return runCommand(this, async (ctx) => {
3908
+ const opts = this.opts();
3909
+ const args = {};
3910
+ if (opts["panelSettingsPath"] !== undefined)
3911
+ args["panelSettingsPath"] = opts["panelSettingsPath"];
3912
+ if (opts["sortingOrder"] !== undefined)
3913
+ args["sortingOrder"] = opts["sortingOrder"];
3914
+ if (opts["target"] !== undefined)
3915
+ args["target"] = opts["target"];
3916
+ if (opts["visualTreeAssetPath"] !== undefined)
3917
+ args["visualTreeAssetPath"] = opts["visualTreeAssetPath"];
3918
+ return ctx.transport.callTool("ui-document-attach", args, toolCallOptionsFromCli(opts));
3919
+ })();
3920
+ });
3921
+ }
3922
+ // UI / Document / Detach
3923
+ {
3924
+ const cmd = program
3925
+ .command("ui-document-detach")
3926
+ .description("Detach a UIDocument from a GameObject.");
3927
+ cmd.addOption(new Option("--target <ref>", "Target GameObject. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
3928
+ addToolCallControlOptions(cmd);
3929
+ cmd.action(function (_opts) {
3930
+ return runCommand(this, async (ctx) => {
3931
+ const opts = this.opts();
3932
+ const args = {};
3933
+ if (opts["target"] !== undefined)
3934
+ args["target"] = opts["target"];
3935
+ return ctx.transport.callTool("ui-document-detach", args, toolCallOptionsFromCli(opts));
3936
+ })();
3937
+ });
3938
+ }
3939
+ // UI / Element / Query
3940
+ {
3941
+ const cmd = program
3942
+ .command("ui-element-query")
3943
+ .description("Query VisualElements under a UIDocument's rootVisualElement by UQuery-style selector.");
3944
+ cmd.addOption(new Option("--maxResults <int>", "Maximum number of results to return. Default 50.").argParser(coerceInteger));
3945
+ cmd.addOption(new Option("--selector <string>", "UQuery selector. Sample: '.button-primary', '#title', 'Label.warning'.").makeOptionMandatory(true));
3946
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting a UIDocument. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
3947
+ addToolCallControlOptions(cmd);
3948
+ cmd.action(function (_opts) {
3949
+ return runCommand(this, async (ctx) => {
3950
+ const opts = this.opts();
3951
+ const args = {};
3952
+ if (opts["maxResults"] !== undefined)
3953
+ args["maxResults"] = opts["maxResults"];
3954
+ if (opts["selector"] !== undefined)
3955
+ args["selector"] = opts["selector"];
3956
+ if (opts["target"] !== undefined)
3957
+ args["target"] = opts["target"];
3958
+ return ctx.transport.callTool("ui-element-query", args, toolCallOptionsFromCli(opts));
3959
+ })();
3960
+ });
3961
+ }
3962
+ // UI / USS / Create
3963
+ {
3964
+ const cmd = program
3965
+ .command("ui-uss-create")
3966
+ .description("Create a new USS asset under 'Assets/'.");
3967
+ cmd.addOption(new Option("--content <string>", "Full USS content (CSS-like text).").makeOptionMandatory(true));
3968
+ cmd.addOption(new Option("--overwrite <bool>", "Force overwrite if the asset already exists. Default false.").argParser(coerceBoolean));
3969
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.uss'.").makeOptionMandatory(true));
3970
+ addToolCallControlOptions(cmd);
3971
+ cmd.action(function (_opts) {
3972
+ return runCommand(this, async (ctx) => {
3973
+ const opts = this.opts();
3974
+ const args = {};
3975
+ if (opts["content"] !== undefined)
3976
+ args["content"] = opts["content"];
3977
+ if (opts["overwrite"] !== undefined)
3978
+ args["overwrite"] = opts["overwrite"];
3979
+ if (opts["path"] !== undefined)
3980
+ args["path"] = opts["path"];
3981
+ return ctx.transport.callTool("ui-uss-create", args, toolCallOptionsFromCli(opts));
3982
+ })();
3983
+ });
3984
+ }
3985
+ // UI / USS / Modify
3986
+ {
3987
+ const cmd = program
3988
+ .command("ui-uss-modify")
3989
+ .description("Modify a USS file via text operations: 'append', 'replace-all', 'add-rule', 'remove-rule'.");
3990
+ cmd.addOption(new Option("--content <string>", "Content for 'append' or 'replace-all'."));
3991
+ cmd.addOption(new Option("--declarations <string>", "Body for 'add-rule' (declarations without curly braces). Sample: 'color: red; font-size: 14px;'."));
3992
+ cmd.addOption(new Option("--operation <string>", "Operation: 'append' | 'replace-all' | 'add-rule' | 'remove-rule'.").makeOptionMandatory(true));
3993
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.uss'.").makeOptionMandatory(true));
3994
+ cmd.addOption(new Option("--selector <string>", "CSS selector for 'add-rule' / 'remove-rule'. Sample: '.button-primary' or '#header'."));
3995
+ addToolCallControlOptions(cmd);
3996
+ cmd.action(function (_opts) {
3997
+ return runCommand(this, async (ctx) => {
3998
+ const opts = this.opts();
3999
+ const args = {};
4000
+ if (opts["content"] !== undefined)
4001
+ args["content"] = opts["content"];
4002
+ if (opts["declarations"] !== undefined)
4003
+ args["declarations"] = opts["declarations"];
4004
+ if (opts["operation"] !== undefined)
4005
+ args["operation"] = opts["operation"];
4006
+ if (opts["path"] !== undefined)
4007
+ args["path"] = opts["path"];
4008
+ if (opts["selector"] !== undefined)
4009
+ args["selector"] = opts["selector"];
4010
+ return ctx.transport.callTool("ui-uss-modify", args, toolCallOptionsFromCli(opts));
4011
+ })();
4012
+ });
4013
+ }
4014
+ // UI / USS / Read
4015
+ {
4016
+ const cmd = program
4017
+ .command("ui-uss-read")
4018
+ .description("Read USS content as a string.");
4019
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.uss'.").makeOptionMandatory(true));
4020
+ addToolCallControlOptions(cmd);
4021
+ cmd.action(function (_opts) {
4022
+ return runCommand(this, async (ctx) => {
4023
+ const opts = this.opts();
4024
+ const args = {};
4025
+ if (opts["path"] !== undefined)
4026
+ args["path"] = opts["path"];
4027
+ return ctx.transport.callTool("ui-uss-read", args, toolCallOptionsFromCli(opts));
4028
+ })();
4029
+ });
4030
+ }
4031
+ // UI / UXML / Create
4032
+ {
4033
+ const cmd = program
4034
+ .command("ui-uxml-create")
4035
+ .description("Create a new UXML asset under 'Assets/'. Validates XML before writing.");
4036
+ cmd.addOption(new Option("--content <string>", "Full UXML content (XML string).").makeOptionMandatory(true));
4037
+ cmd.addOption(new Option("--overwrite <bool>", "Force overwrite if the asset already exists. Default false.").argParser(coerceBoolean));
4038
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.uxml'.").makeOptionMandatory(true));
4039
+ addToolCallControlOptions(cmd);
4040
+ cmd.action(function (_opts) {
4041
+ return runCommand(this, async (ctx) => {
4042
+ const opts = this.opts();
4043
+ const args = {};
4044
+ if (opts["content"] !== undefined)
4045
+ args["content"] = opts["content"];
4046
+ if (opts["overwrite"] !== undefined)
4047
+ args["overwrite"] = opts["overwrite"];
4048
+ if (opts["path"] !== undefined)
4049
+ args["path"] = opts["path"];
4050
+ return ctx.transport.callTool("ui-uxml-create", args, toolCallOptionsFromCli(opts));
4051
+ })();
4052
+ });
4053
+ }
4054
+ // UI / UXML / Modify
4055
+ {
4056
+ const cmd = program
4057
+ .command("ui-uxml-modify")
4058
+ .description("Structurally modify a UXML file. Use 'ui-uxml-read' first to inspect existing content.");
4059
+ cmd.addOption(new Option("--attributeName <string>", "Attribute name (for 'set-attribute')."));
4060
+ cmd.addOption(new Option("--attributeValue <string>", "Attribute value (for 'set-attribute'). Pass empty string to clear; element keeps the attribute."));
4061
+ cmd.addOption(new Option("--newContent <string>", "New XML content (for 'replace') or child XML fragment (for 'append-child')."));
4062
+ cmd.addOption(new Option("--operation <string>", "Operation: 'replace' | 'append-child' | 'remove-element' | 'set-attribute'.").makeOptionMandatory(true));
4063
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.uxml'.").makeOptionMandatory(true));
4064
+ cmd.addOption(new Option("--selector <string>", "XPath-like selector for the target element. Use 'ui:' prefix for UnityEngine.UIElements (e.g. '//ui:Label[@name=\"title\"]') or 'uie:' prefix for UnityEditor.UIElements."));
4065
+ addToolCallControlOptions(cmd);
4066
+ cmd.action(function (_opts) {
4067
+ return runCommand(this, async (ctx) => {
4068
+ const opts = this.opts();
4069
+ const args = {};
4070
+ if (opts["attributeName"] !== undefined)
4071
+ args["attributeName"] = opts["attributeName"];
4072
+ if (opts["attributeValue"] !== undefined)
4073
+ args["attributeValue"] = opts["attributeValue"];
4074
+ if (opts["newContent"] !== undefined)
4075
+ args["newContent"] = opts["newContent"];
4076
+ if (opts["operation"] !== undefined)
4077
+ args["operation"] = opts["operation"];
4078
+ if (opts["path"] !== undefined)
4079
+ args["path"] = opts["path"];
4080
+ if (opts["selector"] !== undefined)
4081
+ args["selector"] = opts["selector"];
4082
+ return ctx.transport.callTool("ui-uxml-modify", args, toolCallOptionsFromCli(opts));
4083
+ })();
4084
+ });
4085
+ }
4086
+ // UI / UXML / Read
4087
+ {
4088
+ const cmd = program
4089
+ .command("ui-uxml-read")
4090
+ .description("Read UXML content as a string.");
4091
+ cmd.addOption(new Option("--path <string>", "Asset path under 'Assets/'. Must end with '.uxml'.").makeOptionMandatory(true));
4092
+ addToolCallControlOptions(cmd);
4093
+ cmd.action(function (_opts) {
4094
+ return runCommand(this, async (ctx) => {
4095
+ const opts = this.opts();
4096
+ const args = {};
4097
+ if (opts["path"] !== undefined)
4098
+ args["path"] = opts["path"];
4099
+ return ctx.transport.callTool("ui-uxml-read", args, toolCallOptionsFromCli(opts));
4100
+ })();
4101
+ });
4102
+ }
4103
+ // Tool / List
4104
+ {
4105
+ const cmd = program
4106
+ .command("unity-tool-list")
4107
+ .description("List all uco tools registered in the connected Unity Editor instance. Optionally filter by regex across tool names, descriptions, and arguments.");
4108
+ cmd.addOption(new Option("--includeDescription <bool>", "Include tool descriptions in the result. Default: false").argParser(coerceBoolean));
4109
+ cmd.addOption(new Option("--includeInputs <json>", "Include input arguments in the result. Default: None").argParser(coerceJson));
4110
+ cmd.addOption(new Option("--regexSearch <string>", "Regex pattern to filter tools. Matches against tool name, description, and argument names and descriptions."));
4111
+ addToolCallControlOptions(cmd);
4112
+ cmd.action(function (_opts) {
4113
+ return runCommand(this, async (ctx) => {
4114
+ const opts = this.opts();
4115
+ const args = {};
4116
+ if (opts["includeDescription"] !== undefined)
4117
+ args["includeDescription"] = opts["includeDescription"];
4118
+ if (opts["includeInputs"] !== undefined)
4119
+ args["includeInputs"] = opts["includeInputs"];
4120
+ if (opts["regexSearch"] !== undefined)
4121
+ args["regexSearch"] = opts["regexSearch"];
4122
+ return ctx.transport.callTool("unity-tool-list", args, toolCallOptionsFromCli(opts));
4123
+ })();
4124
+ });
4125
+ }
4126
+ // VFX / Graph / Configure
4127
+ {
4128
+ const cmd = program
4129
+ .command("vfx-graph-configure")
4130
+ .description("Set a single exposed property on a VFX Graph VisualEffect. Returns Ok=false when the VFX Graph package is not installed.");
4131
+ cmd.addOption(new Option("--propertyName <string>", "Property name in the VFX Graph asset (exposed parameter name).").makeOptionMandatory(true));
4132
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting the VisualEffect. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
4133
+ cmd.addOption(new Option("--valueJson <string>", "JSON-encoded value matching valueType. Examples: '1.5' (float), 'true' (bool), '[0.5, 1.0]' (vector2).").makeOptionMandatory(true));
4134
+ cmd.addOption(new Option("--valueType <string>", "Value type: 'float' | 'int' | 'bool' | 'vector2' | 'vector3' | 'vector4' | 'color'.").makeOptionMandatory(true));
4135
+ addToolCallControlOptions(cmd);
4136
+ cmd.action(function (_opts) {
4137
+ return runCommand(this, async (ctx) => {
4138
+ const opts = this.opts();
4139
+ const args = {};
4140
+ if (opts["propertyName"] !== undefined)
4141
+ args["propertyName"] = opts["propertyName"];
4142
+ if (opts["target"] !== undefined)
4143
+ args["target"] = opts["target"];
4144
+ if (opts["valueJson"] !== undefined)
4145
+ args["valueJson"] = opts["valueJson"];
4146
+ if (opts["valueType"] !== undefined)
4147
+ args["valueType"] = opts["valueType"];
4148
+ return ctx.transport.callTool("vfx-graph-configure", args, toolCallOptionsFromCli(opts));
4149
+ })();
4150
+ });
4151
+ }
4152
+ // VFX / Particle / Configure
4153
+ {
4154
+ const cmd = program
4155
+ .command("vfx-particle-configure")
4156
+ .description("Configure a ParticleSystem's most-common module fields. Only provided (non-null) parameters are written. Use 'vfx-particle-get' to inspect current values first.");
4157
+ cmd.addOption(new Option("--duration <num>", "Main: duration in seconds. Ignored when null.").argParser(coerceNumber));
4158
+ cmd.addOption(new Option("--emissionEnabled <bool>", "Emission: enabled flag. Ignored when null.").argParser(coerceBoolean));
4159
+ cmd.addOption(new Option("--emissionRateOverTime <num>", "Emission: rateOverTime constant value. Ignored when null.").argParser(coerceNumber));
4160
+ cmd.addOption(new Option("--gravityModifier <num>", "Main: gravityModifier constant value. Ignored when null.").argParser(coerceNumber));
4161
+ cmd.addOption(new Option("--looping <bool>", "Main: looping flag. Ignored when null.").argParser(coerceBoolean));
4162
+ cmd.addOption(new Option("--maxParticles <int>", "Main: maxParticles cap. Ignored when null.").argParser(coerceInteger));
4163
+ cmd.addOption(new Option("--shapeEnabled <bool>", "Shape: enabled flag. Ignored when null.").argParser(coerceBoolean));
4164
+ cmd.addOption(new Option("--shapeRadius <num>", "Shape: radius value. Ignored when null.").argParser(coerceNumber));
4165
+ cmd.addOption(new Option("--shapeType <string>", "Shape: shapeType — case-insensitive enum name ('Sphere', 'Hemisphere', 'Cone', 'Box', 'Donut', 'Circle', 'SingleSidedEdge', etc.). Ignored when null."));
4166
+ cmd.addOption(new Option("--simulationSpace <string>", "Main: simulationSpace — one of 'Local', 'World', 'Custom' (case-insensitive). Ignored when null."));
4167
+ cmd.addOption(new Option("--startColor <json>", "Main: startColor (RGBA in [0..1] as Vector4). Ignored when null.").argParser(coerceJson));
4168
+ cmd.addOption(new Option("--startLifetime <num>", "Main: startLifetime constant value. Ignored when null.").argParser(coerceNumber));
4169
+ cmd.addOption(new Option("--startSize <num>", "Main: startSize constant value. Ignored when null.").argParser(coerceNumber));
4170
+ cmd.addOption(new Option("--startSpeed <num>", "Main: startSpeed constant value. Ignored when null.").argParser(coerceNumber));
4171
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting the ParticleSystem. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
4172
+ cmd.addOption(new Option("--velocityEnabled <bool>", "Velocity over lifetime: enabled flag. Ignored when null.").argParser(coerceBoolean));
4173
+ cmd.addOption(new Option("--velocityLinear <x,y,z|json>", "Velocity over lifetime: linear x/y/z constants. Ignored when null.").argParser(coerceVec3));
4174
+ addToolCallControlOptions(cmd);
4175
+ cmd.action(function (_opts) {
4176
+ return runCommand(this, async (ctx) => {
4177
+ const opts = this.opts();
4178
+ const args = {};
4179
+ if (opts["duration"] !== undefined)
4180
+ args["duration"] = opts["duration"];
4181
+ if (opts["emissionEnabled"] !== undefined)
4182
+ args["emissionEnabled"] = opts["emissionEnabled"];
4183
+ if (opts["emissionRateOverTime"] !== undefined)
4184
+ args["emissionRateOverTime"] = opts["emissionRateOverTime"];
4185
+ if (opts["gravityModifier"] !== undefined)
4186
+ args["gravityModifier"] = opts["gravityModifier"];
4187
+ if (opts["looping"] !== undefined)
4188
+ args["looping"] = opts["looping"];
4189
+ if (opts["maxParticles"] !== undefined)
4190
+ args["maxParticles"] = opts["maxParticles"];
4191
+ if (opts["shapeEnabled"] !== undefined)
4192
+ args["shapeEnabled"] = opts["shapeEnabled"];
4193
+ if (opts["shapeRadius"] !== undefined)
4194
+ args["shapeRadius"] = opts["shapeRadius"];
4195
+ if (opts["shapeType"] !== undefined)
4196
+ args["shapeType"] = opts["shapeType"];
4197
+ if (opts["simulationSpace"] !== undefined)
4198
+ args["simulationSpace"] = opts["simulationSpace"];
4199
+ if (opts["startColor"] !== undefined)
4200
+ args["startColor"] = opts["startColor"];
4201
+ if (opts["startLifetime"] !== undefined)
4202
+ args["startLifetime"] = opts["startLifetime"];
4203
+ if (opts["startSize"] !== undefined)
4204
+ args["startSize"] = opts["startSize"];
4205
+ if (opts["startSpeed"] !== undefined)
4206
+ args["startSpeed"] = opts["startSpeed"];
4207
+ if (opts["target"] !== undefined)
4208
+ args["target"] = opts["target"];
4209
+ if (opts["velocityEnabled"] !== undefined)
4210
+ args["velocityEnabled"] = opts["velocityEnabled"];
4211
+ if (opts["velocityLinear"] !== undefined)
4212
+ args["velocityLinear"] = opts["velocityLinear"];
4213
+ return ctx.transport.callTool("vfx-particle-configure", args, toolCallOptionsFromCli(opts));
4214
+ })();
4215
+ });
4216
+ }
4217
+ // VFX / Particle / Control
4218
+ {
4219
+ const cmd = program
4220
+ .command("vfx-particle-control")
4221
+ .description("Control ParticleSystem playback (play / pause / stop / clear / emit). Use 'emit' to inject a one-shot burst of N particles.");
4222
+ cmd.addOption(new Option("--action <string>", "Action: 'play' | 'pause' | 'stop' | 'clear' | 'emit'.").makeOptionMandatory(true));
4223
+ cmd.addOption(new Option("--emitCount <int>", "Number of particles to inject when action='emit'. Ignored otherwise.").argParser(coerceInteger));
4224
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting the ParticleSystem. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
4225
+ addToolCallControlOptions(cmd);
4226
+ cmd.action(function (_opts) {
4227
+ return runCommand(this, async (ctx) => {
4228
+ const opts = this.opts();
4229
+ const args = {};
4230
+ if (opts["action"] !== undefined)
4231
+ args["action"] = opts["action"];
4232
+ if (opts["emitCount"] !== undefined)
4233
+ args["emitCount"] = opts["emitCount"];
4234
+ if (opts["target"] !== undefined)
4235
+ args["target"] = opts["target"];
4236
+ return ctx.transport.callTool("vfx-particle-control", args, toolCallOptionsFromCli(opts));
4237
+ })();
4238
+ });
4239
+ }
4240
+ // VFX / Particle / Get
4241
+ {
4242
+ const cmd = program
4243
+ .command("vfx-particle-get")
4244
+ .description("Read a ParticleSystem's main/emission/shape/velocity-over-lifetime modules. Pair with 'vfx-particle-configure' to write back.");
4245
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting the ParticleSystem. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
4246
+ addToolCallControlOptions(cmd);
4247
+ cmd.action(function (_opts) {
4248
+ return runCommand(this, async (ctx) => {
4249
+ const opts = this.opts();
4250
+ const args = {};
4251
+ if (opts["target"] !== undefined)
4252
+ args["target"] = opts["target"];
4253
+ return ctx.transport.callTool("vfx-particle-get", args, toolCallOptionsFromCli(opts));
4254
+ })();
4255
+ });
4256
+ }
4257
+ // VFX / Trail / Configure
4258
+ {
4259
+ const cmd = program
4260
+ .command("vfx-trail-configure")
4261
+ .description("Configure a TrailRenderer's most-common fields. Only provided (non-null) parameters are written.");
4262
+ cmd.addOption(new Option("--autoDestruct <bool>", "Whether the GameObject auto-destructs after the trail fades. Ignored when null.").argParser(coerceBoolean));
4263
+ cmd.addOption(new Option("--emitting <bool>", "Whether the trail is currently emitting new segments. Ignored when null.").argParser(coerceBoolean));
4264
+ cmd.addOption(new Option("--endColor <json>", "Trail end color (RGBA in [0..1] as Vector4). Ignored when null.").argParser(coerceJson));
4265
+ cmd.addOption(new Option("--endWidth <num>", "Trail end width (world units). Ignored when null.").argParser(coerceNumber));
4266
+ cmd.addOption(new Option("--minVertexDistance <num>", "Minimum distance between trail vertices. Ignored when null. Note: TrailRenderer.minVertexDistance is a float in Unity.").argParser(coerceNumber));
4267
+ cmd.addOption(new Option("--startColor <json>", "Trail start color (RGBA in [0..1] as Vector4). Ignored when null.").argParser(coerceJson));
4268
+ cmd.addOption(new Option("--startWidth <num>", "Trail start width (world units). Ignored when null.").argParser(coerceNumber));
4269
+ cmd.addOption(new Option("--target <ref>", "Target GameObject hosting the TrailRenderer. Use 'gameobject-find' to locate it.").argParser(coerceGameObjectRef).makeOptionMandatory(true));
4270
+ cmd.addOption(new Option("--time <num>", "Trail duration in seconds. Ignored when null.").argParser(coerceNumber));
4271
+ addToolCallControlOptions(cmd);
4272
+ cmd.action(function (_opts) {
4273
+ return runCommand(this, async (ctx) => {
4274
+ const opts = this.opts();
4275
+ const args = {};
4276
+ if (opts["autoDestruct"] !== undefined)
4277
+ args["autoDestruct"] = opts["autoDestruct"];
4278
+ if (opts["emitting"] !== undefined)
4279
+ args["emitting"] = opts["emitting"];
4280
+ if (opts["endColor"] !== undefined)
4281
+ args["endColor"] = opts["endColor"];
4282
+ if (opts["endWidth"] !== undefined)
4283
+ args["endWidth"] = opts["endWidth"];
4284
+ if (opts["minVertexDistance"] !== undefined)
4285
+ args["minVertexDistance"] = opts["minVertexDistance"];
4286
+ if (opts["startColor"] !== undefined)
4287
+ args["startColor"] = opts["startColor"];
4288
+ if (opts["startWidth"] !== undefined)
4289
+ args["startWidth"] = opts["startWidth"];
4290
+ if (opts["target"] !== undefined)
4291
+ args["target"] = opts["target"];
4292
+ if (opts["time"] !== undefined)
4293
+ args["time"] = opts["time"];
4294
+ return ctx.transport.callTool("vfx-trail-configure", args, toolCallOptionsFromCli(opts));
4295
+ })();
4296
+ });
4297
+ }
4298
+ }
4299
+ //# sourceMappingURL=tools.js.map