unity-open-mcp 0.1.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 (630) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +145 -0
  3. package/dist/batch-spawn.d.ts +33 -0
  4. package/dist/batch-spawn.js +329 -0
  5. package/dist/batch-spawn.js.map +1 -0
  6. package/dist/capabilities/build-capabilities.d.ts +155 -0
  7. package/dist/capabilities/build-capabilities.js +475 -0
  8. package/dist/capabilities/build-capabilities.js.map +1 -0
  9. package/dist/capabilities/list-rules.d.ts +45 -0
  10. package/dist/capabilities/list-rules.js +121 -0
  11. package/dist/capabilities/list-rules.js.map +1 -0
  12. package/dist/capabilities/rule-catalog.d.ts +44 -0
  13. package/dist/capabilities/rule-catalog.js +330 -0
  14. package/dist/capabilities/rule-catalog.js.map +1 -0
  15. package/dist/capabilities/tool-groups.d.ts +53 -0
  16. package/dist/capabilities/tool-groups.js +396 -0
  17. package/dist/capabilities/tool-groups.js.map +1 -0
  18. package/dist/cli/args.d.ts +36 -0
  19. package/dist/cli/args.js +239 -0
  20. package/dist/cli/args.js.map +1 -0
  21. package/dist/cli/cli.d.ts +23 -0
  22. package/dist/cli/cli.js +125 -0
  23. package/dist/cli/cli.js.map +1 -0
  24. package/dist/cli/commands.d.ts +37 -0
  25. package/dist/cli/commands.js +277 -0
  26. package/dist/cli/commands.js.map +1 -0
  27. package/dist/cli/ping-poller.d.ts +81 -0
  28. package/dist/cli/ping-poller.js +161 -0
  29. package/dist/cli/ping-poller.js.map +1 -0
  30. package/dist/compat.d.ts +32 -0
  31. package/dist/compat.js +121 -0
  32. package/dist/compat.js.map +1 -0
  33. package/dist/compiler-errors.d.ts +31 -0
  34. package/dist/compiler-errors.js +91 -0
  35. package/dist/compiler-errors.js.map +1 -0
  36. package/dist/compressible-router.d.ts +18 -0
  37. package/dist/compressible-router.js +191 -0
  38. package/dist/compressible-router.js.map +1 -0
  39. package/dist/compression/asset-model.d.ts +86 -0
  40. package/dist/compression/asset-model.js +15 -0
  41. package/dist/compression/asset-model.js.map +1 -0
  42. package/dist/compression/compact.d.ts +153 -0
  43. package/dist/compression/compact.js +501 -0
  44. package/dist/compression/compact.js.map +1 -0
  45. package/dist/dialog-dismiss.d.ts +197 -0
  46. package/dist/dialog-dismiss.js +533 -0
  47. package/dist/dialog-dismiss.js.map +1 -0
  48. package/dist/event-stream.d.ts +60 -0
  49. package/dist/event-stream.js +228 -0
  50. package/dist/event-stream.js.map +1 -0
  51. package/dist/gate-error.d.ts +18 -0
  52. package/dist/gate-error.js +11 -0
  53. package/dist/gate-error.js.map +1 -0
  54. package/dist/index.d.ts +3 -0
  55. package/dist/index.js +146 -0
  56. package/dist/index.js.map +1 -0
  57. package/dist/instance-discovery.d.ts +117 -0
  58. package/dist/instance-discovery.js +202 -0
  59. package/dist/instance-discovery.js.map +1 -0
  60. package/dist/live-client.d.ts +68 -0
  61. package/dist/live-client.js +583 -0
  62. package/dist/live-client.js.map +1 -0
  63. package/dist/offline.d.ts +75 -0
  64. package/dist/offline.js +1495 -0
  65. package/dist/offline.js.map +1 -0
  66. package/dist/package-version.d.ts +8 -0
  67. package/dist/package-version.js +41 -0
  68. package/dist/package-version.js.map +1 -0
  69. package/dist/ping-cache.d.ts +15 -0
  70. package/dist/ping-cache.js +10 -0
  71. package/dist/ping-cache.js.map +1 -0
  72. package/dist/project-health.d.ts +52 -0
  73. package/dist/project-health.js +177 -0
  74. package/dist/project-health.js.map +1 -0
  75. package/dist/resource-router.d.ts +26 -0
  76. package/dist/resource-router.js +143 -0
  77. package/dist/resource-router.js.map +1 -0
  78. package/dist/resources/index.d.ts +6 -0
  79. package/dist/resources/index.js +40 -0
  80. package/dist/resources/index.js.map +1 -0
  81. package/dist/results.d.ts +14 -0
  82. package/dist/results.js +22 -0
  83. package/dist/results.js.map +1 -0
  84. package/dist/router.d.ts +5 -0
  85. package/dist/router.js +2 -0
  86. package/dist/router.js.map +1 -0
  87. package/dist/routers.d.ts +44 -0
  88. package/dist/routers.js +73 -0
  89. package/dist/routers.js.map +1 -0
  90. package/dist/schema-defaults.d.ts +10 -0
  91. package/dist/schema-defaults.js +43 -0
  92. package/dist/schema-defaults.js.map +1 -0
  93. package/dist/skill/client-paths.d.ts +33 -0
  94. package/dist/skill/client-paths.js +131 -0
  95. package/dist/skill/client-paths.js.map +1 -0
  96. package/dist/skill/generate-skill.d.ts +38 -0
  97. package/dist/skill/generate-skill.js +389 -0
  98. package/dist/skill/generate-skill.js.map +1 -0
  99. package/dist/tool-router.d.ts +40 -0
  100. package/dist/tool-router.js +778 -0
  101. package/dist/tool-router.js.map +1 -0
  102. package/dist/tool-session-state.d.ts +55 -0
  103. package/dist/tool-session-state.js +116 -0
  104. package/dist/tool-session-state.js.map +1 -0
  105. package/dist/tools/agent-capabilities.d.ts +2 -0
  106. package/dist/tools/agent-capabilities.js +24 -0
  107. package/dist/tools/agent-capabilities.js.map +1 -0
  108. package/dist/tools/animation-create.d.ts +2 -0
  109. package/dist/tools/animation-create.js +31 -0
  110. package/dist/tools/animation-create.js.map +1 -0
  111. package/dist/tools/animation-get-data.d.ts +2 -0
  112. package/dist/tools/animation-get-data.js +23 -0
  113. package/dist/tools/animation-get-data.js.map +1 -0
  114. package/dist/tools/animation-modify.d.ts +2 -0
  115. package/dist/tools/animation-modify.js +45 -0
  116. package/dist/tools/animation-modify.js.map +1 -0
  117. package/dist/tools/animator-create.d.ts +2 -0
  118. package/dist/tools/animator-create.js +31 -0
  119. package/dist/tools/animator-create.js.map +1 -0
  120. package/dist/tools/animator-get-data.d.ts +2 -0
  121. package/dist/tools/animator-get-data.js +23 -0
  122. package/dist/tools/animator-get-data.js.map +1 -0
  123. package/dist/tools/animator-modify.d.ts +2 -0
  124. package/dist/tools/animator-modify.js +51 -0
  125. package/dist/tools/animator-modify.js.map +1 -0
  126. package/dist/tools/apply-fix.d.ts +2 -0
  127. package/dist/tools/apply-fix.js +39 -0
  128. package/dist/tools/apply-fix.js.map +1 -0
  129. package/dist/tools/assets-copy.d.ts +2 -0
  130. package/dist/tools/assets-copy.js +50 -0
  131. package/dist/tools/assets-copy.js.map +1 -0
  132. package/dist/tools/assets-create-folder.d.ts +2 -0
  133. package/dist/tools/assets-create-folder.js +53 -0
  134. package/dist/tools/assets-create-folder.js.map +1 -0
  135. package/dist/tools/assets-delete.d.ts +2 -0
  136. package/dist/tools/assets-delete.js +34 -0
  137. package/dist/tools/assets-delete.js.map +1 -0
  138. package/dist/tools/assets-move.d.ts +2 -0
  139. package/dist/tools/assets-move.js +50 -0
  140. package/dist/tools/assets-move.js.map +1 -0
  141. package/dist/tools/assets-refresh.d.ts +2 -0
  142. package/dist/tools/assets-refresh.js +37 -0
  143. package/dist/tools/assets-refresh.js.map +1 -0
  144. package/dist/tools/baseline-create.d.ts +2 -0
  145. package/dist/tools/baseline-create.js +20 -0
  146. package/dist/tools/baseline-create.js.map +1 -0
  147. package/dist/tools/bridge-status.d.ts +2 -0
  148. package/dist/tools/bridge-status.js +44 -0
  149. package/dist/tools/bridge-status.js.map +1 -0
  150. package/dist/tools/build-get-active-target.d.ts +2 -0
  151. package/dist/tools/build-get-active-target.js +16 -0
  152. package/dist/tools/build-get-active-target.js.map +1 -0
  153. package/dist/tools/build-get-defines.d.ts +2 -0
  154. package/dist/tools/build-get-defines.js +16 -0
  155. package/dist/tools/build-get-defines.js.map +1 -0
  156. package/dist/tools/build-get-scenes.d.ts +2 -0
  157. package/dist/tools/build-get-scenes.js +16 -0
  158. package/dist/tools/build-get-scenes.js.map +1 -0
  159. package/dist/tools/build-get-targets.d.ts +2 -0
  160. package/dist/tools/build-get-targets.js +18 -0
  161. package/dist/tools/build-get-targets.js.map +1 -0
  162. package/dist/tools/build-set-defines.d.ts +2 -0
  163. package/dist/tools/build-set-defines.js +50 -0
  164. package/dist/tools/build-set-defines.js.map +1 -0
  165. package/dist/tools/build-set-scenes.d.ts +2 -0
  166. package/dist/tools/build-set-scenes.js +60 -0
  167. package/dist/tools/build-set-scenes.js.map +1 -0
  168. package/dist/tools/build-set-target.d.ts +2 -0
  169. package/dist/tools/build-set-target.js +49 -0
  170. package/dist/tools/build-set-target.js.map +1 -0
  171. package/dist/tools/build-start.d.ts +2 -0
  172. package/dist/tools/build-start.js +64 -0
  173. package/dist/tools/build-start.js.map +1 -0
  174. package/dist/tools/capture-inline.d.ts +2 -0
  175. package/dist/tools/capture-inline.js +57 -0
  176. package/dist/tools/capture-inline.js.map +1 -0
  177. package/dist/tools/checkpoint-create.d.ts +2 -0
  178. package/dist/tools/checkpoint-create.js +16 -0
  179. package/dist/tools/checkpoint-create.js.map +1 -0
  180. package/dist/tools/compile-check.d.ts +2 -0
  181. package/dist/tools/compile-check.js +26 -0
  182. package/dist/tools/compile-check.js.map +1 -0
  183. package/dist/tools/component-add.d.ts +2 -0
  184. package/dist/tools/component-add.js +47 -0
  185. package/dist/tools/component-add.js.map +1 -0
  186. package/dist/tools/component-destroy.d.ts +2 -0
  187. package/dist/tools/component-destroy.js +46 -0
  188. package/dist/tools/component-destroy.js.map +1 -0
  189. package/dist/tools/component-get.d.ts +2 -0
  190. package/dist/tools/component-get.js +54 -0
  191. package/dist/tools/component-get.js.map +1 -0
  192. package/dist/tools/component-list-all.d.ts +2 -0
  193. package/dist/tools/component-list-all.js +38 -0
  194. package/dist/tools/component-list-all.js.map +1 -0
  195. package/dist/tools/component-modify.d.ts +2 -0
  196. package/dist/tools/component-modify.js +80 -0
  197. package/dist/tools/component-modify.js.map +1 -0
  198. package/dist/tools/console-clear.d.ts +2 -0
  199. package/dist/tools/console-clear.js +19 -0
  200. package/dist/tools/console-clear.js.map +1 -0
  201. package/dist/tools/console-log.d.ts +2 -0
  202. package/dist/tools/console-log.js +47 -0
  203. package/dist/tools/console-log.js.map +1 -0
  204. package/dist/tools/delta.d.ts +2 -0
  205. package/dist/tools/delta.js +17 -0
  206. package/dist/tools/delta.js.map +1 -0
  207. package/dist/tools/editor-add-layer.d.ts +2 -0
  208. package/dist/tools/editor-add-layer.js +51 -0
  209. package/dist/tools/editor-add-layer.js.map +1 -0
  210. package/dist/tools/editor-add-tag.d.ts +2 -0
  211. package/dist/tools/editor-add-tag.js +41 -0
  212. package/dist/tools/editor-add-tag.js.map +1 -0
  213. package/dist/tools/editor-get-layers.d.ts +2 -0
  214. package/dist/tools/editor-get-layers.js +22 -0
  215. package/dist/tools/editor-get-layers.js.map +1 -0
  216. package/dist/tools/editor-get-tags.d.ts +2 -0
  217. package/dist/tools/editor-get-tags.js +19 -0
  218. package/dist/tools/editor-get-tags.js.map +1 -0
  219. package/dist/tools/editor-redo.d.ts +2 -0
  220. package/dist/tools/editor-redo.js +27 -0
  221. package/dist/tools/editor-redo.js.map +1 -0
  222. package/dist/tools/editor-set-state.d.ts +2 -0
  223. package/dist/tools/editor-set-state.js +57 -0
  224. package/dist/tools/editor-set-state.js.map +1 -0
  225. package/dist/tools/editor-status.d.ts +2 -0
  226. package/dist/tools/editor-status.js +17 -0
  227. package/dist/tools/editor-status.js.map +1 -0
  228. package/dist/tools/editor-undo.d.ts +2 -0
  229. package/dist/tools/editor-undo.js +29 -0
  230. package/dist/tools/editor-undo.js.map +1 -0
  231. package/dist/tools/execute-csharp.d.ts +2 -0
  232. package/dist/tools/execute-csharp.js +74 -0
  233. package/dist/tools/execute-csharp.js.map +1 -0
  234. package/dist/tools/execute-menu.d.ts +2 -0
  235. package/dist/tools/execute-menu.js +40 -0
  236. package/dist/tools/execute-menu.js.map +1 -0
  237. package/dist/tools/find-members.d.ts +2 -0
  238. package/dist/tools/find-members.js +56 -0
  239. package/dist/tools/find-members.js.map +1 -0
  240. package/dist/tools/find-references.d.ts +2 -0
  241. package/dist/tools/find-references.js +29 -0
  242. package/dist/tools/find-references.js.map +1 -0
  243. package/dist/tools/gameobject-create.d.ts +2 -0
  244. package/dist/tools/gameobject-create.js +61 -0
  245. package/dist/tools/gameobject-create.js.map +1 -0
  246. package/dist/tools/gameobject-destroy.d.ts +2 -0
  247. package/dist/tools/gameobject-destroy.js +38 -0
  248. package/dist/tools/gameobject-destroy.js.map +1 -0
  249. package/dist/tools/gameobject-duplicate.d.ts +2 -0
  250. package/dist/tools/gameobject-duplicate.js +40 -0
  251. package/dist/tools/gameobject-duplicate.js.map +1 -0
  252. package/dist/tools/gameobject-find.d.ts +2 -0
  253. package/dist/tools/gameobject-find.js +59 -0
  254. package/dist/tools/gameobject-find.js.map +1 -0
  255. package/dist/tools/gameobject-modify.d.ts +2 -0
  256. package/dist/tools/gameobject-modify.js +76 -0
  257. package/dist/tools/gameobject-modify.js.map +1 -0
  258. package/dist/tools/gameobject-set-parent.d.ts +2 -0
  259. package/dist/tools/gameobject-set-parent.js +55 -0
  260. package/dist/tools/gameobject-set-parent.js.map +1 -0
  261. package/dist/tools/gate-budget-estimate.d.ts +2 -0
  262. package/dist/tools/gate-budget-estimate.js +59 -0
  263. package/dist/tools/gate-budget-estimate.js.map +1 -0
  264. package/dist/tools/generate-skill.d.ts +2 -0
  265. package/dist/tools/generate-skill.js +37 -0
  266. package/dist/tools/generate-skill.js.map +1 -0
  267. package/dist/tools/impact-preview.d.ts +2 -0
  268. package/dist/tools/impact-preview.js +50 -0
  269. package/dist/tools/impact-preview.js.map +1 -0
  270. package/dist/tools/index.d.ts +30 -0
  271. package/dist/tools/index.js +576 -0
  272. package/dist/tools/index.js.map +1 -0
  273. package/dist/tools/inputsystem-action-add.d.ts +2 -0
  274. package/dist/tools/inputsystem-action-add.js +61 -0
  275. package/dist/tools/inputsystem-action-add.js.map +1 -0
  276. package/dist/tools/inputsystem-actionmap-add.d.ts +2 -0
  277. package/dist/tools/inputsystem-actionmap-add.js +31 -0
  278. package/dist/tools/inputsystem-actionmap-add.js.map +1 -0
  279. package/dist/tools/inputsystem-asset-create.d.ts +2 -0
  280. package/dist/tools/inputsystem-asset-create.js +35 -0
  281. package/dist/tools/inputsystem-asset-create.js.map +1 -0
  282. package/dist/tools/inputsystem-binding-add.d.ts +2 -0
  283. package/dist/tools/inputsystem-binding-add.js +48 -0
  284. package/dist/tools/inputsystem-binding-add.js.map +1 -0
  285. package/dist/tools/inputsystem-binding-composite-add.d.ts +2 -0
  286. package/dist/tools/inputsystem-binding-composite-add.js +51 -0
  287. package/dist/tools/inputsystem-binding-composite-add.js.map +1 -0
  288. package/dist/tools/inputsystem-controlscheme-add.d.ts +2 -0
  289. package/dist/tools/inputsystem-controlscheme-add.js +43 -0
  290. package/dist/tools/inputsystem-controlscheme-add.js.map +1 -0
  291. package/dist/tools/inputsystem-get.d.ts +2 -0
  292. package/dist/tools/inputsystem-get.js +22 -0
  293. package/dist/tools/inputsystem-get.js.map +1 -0
  294. package/dist/tools/invoke-method.d.ts +2 -0
  295. package/dist/tools/invoke-method.js +104 -0
  296. package/dist/tools/invoke-method.js.map +1 -0
  297. package/dist/tools/list-assets.d.ts +2 -0
  298. package/dist/tools/list-assets.js +30 -0
  299. package/dist/tools/list-assets.js.map +1 -0
  300. package/dist/tools/list-rules.d.ts +2 -0
  301. package/dist/tools/list-rules.js +27 -0
  302. package/dist/tools/list-rules.js.map +1 -0
  303. package/dist/tools/manage-tools.d.ts +2 -0
  304. package/dist/tools/manage-tools.js +47 -0
  305. package/dist/tools/manage-tools.js.map +1 -0
  306. package/dist/tools/material-create.d.ts +2 -0
  307. package/dist/tools/material-create.js +37 -0
  308. package/dist/tools/material-create.js.map +1 -0
  309. package/dist/tools/material-get-keywords.d.ts +2 -0
  310. package/dist/tools/material-get-keywords.js +23 -0
  311. package/dist/tools/material-get-keywords.js.map +1 -0
  312. package/dist/tools/material-get-properties.d.ts +2 -0
  313. package/dist/tools/material-get-properties.js +32 -0
  314. package/dist/tools/material-get-properties.js.map +1 -0
  315. package/dist/tools/material-set-keyword.d.ts +2 -0
  316. package/dist/tools/material-set-keyword.js +42 -0
  317. package/dist/tools/material-set-keyword.js.map +1 -0
  318. package/dist/tools/material-set-property.d.ts +2 -0
  319. package/dist/tools/material-set-property.js +49 -0
  320. package/dist/tools/material-set-property.js.map +1 -0
  321. package/dist/tools/material-set-shader.d.ts +2 -0
  322. package/dist/tools/material-set-shader.js +39 -0
  323. package/dist/tools/material-set-shader.js.map +1 -0
  324. package/dist/tools/mutation-explain.d.ts +2 -0
  325. package/dist/tools/mutation-explain.js +44 -0
  326. package/dist/tools/mutation-explain.js.map +1 -0
  327. package/dist/tools/navigation-agent-add.d.ts +2 -0
  328. package/dist/tools/navigation-agent-add.js +38 -0
  329. package/dist/tools/navigation-agent-add.js.map +1 -0
  330. package/dist/tools/navigation-agent-set-destination.d.ts +2 -0
  331. package/dist/tools/navigation-agent-set-destination.js +33 -0
  332. package/dist/tools/navigation-agent-set-destination.js.map +1 -0
  333. package/dist/tools/navigation-get.d.ts +2 -0
  334. package/dist/tools/navigation-get.js +20 -0
  335. package/dist/tools/navigation-get.js.map +1 -0
  336. package/dist/tools/navigation-link-add.d.ts +2 -0
  337. package/dist/tools/navigation-link-add.js +57 -0
  338. package/dist/tools/navigation-link-add.js.map +1 -0
  339. package/dist/tools/navigation-list.d.ts +2 -0
  340. package/dist/tools/navigation-list.js +16 -0
  341. package/dist/tools/navigation-list.js.map +1 -0
  342. package/dist/tools/navigation-modifier-add.d.ts +2 -0
  343. package/dist/tools/navigation-modifier-add.js +42 -0
  344. package/dist/tools/navigation-modifier-add.js.map +1 -0
  345. package/dist/tools/navigation-modifier-volume-add.d.ts +2 -0
  346. package/dist/tools/navigation-modifier-volume-add.js +41 -0
  347. package/dist/tools/navigation-modifier-volume-add.js.map +1 -0
  348. package/dist/tools/navigation-modify.d.ts +2 -0
  349. package/dist/tools/navigation-modify.js +47 -0
  350. package/dist/tools/navigation-modify.js.map +1 -0
  351. package/dist/tools/navigation-set-bake-settings.d.ts +2 -0
  352. package/dist/tools/navigation-set-bake-settings.js +42 -0
  353. package/dist/tools/navigation-set-bake-settings.js.map +1 -0
  354. package/dist/tools/navigation-surface-add.d.ts +2 -0
  355. package/dist/tools/navigation-surface-add.js +62 -0
  356. package/dist/tools/navigation-surface-add.js.map +1 -0
  357. package/dist/tools/navigation-surface-bake.d.ts +2 -0
  358. package/dist/tools/navigation-surface-bake.js +30 -0
  359. package/dist/tools/navigation-surface-bake.js.map +1 -0
  360. package/dist/tools/object-get-data.d.ts +2 -0
  361. package/dist/tools/object-get-data.js +59 -0
  362. package/dist/tools/object-get-data.js.map +1 -0
  363. package/dist/tools/object-modify.d.ts +2 -0
  364. package/dist/tools/object-modify.js +73 -0
  365. package/dist/tools/object-modify.js.map +1 -0
  366. package/dist/tools/package-add.d.ts +2 -0
  367. package/dist/tools/package-add.js +42 -0
  368. package/dist/tools/package-add.js.map +1 -0
  369. package/dist/tools/package-check.d.ts +2 -0
  370. package/dist/tools/package-check.js +27 -0
  371. package/dist/tools/package-check.js.map +1 -0
  372. package/dist/tools/package-get-dependencies.d.ts +2 -0
  373. package/dist/tools/package-get-dependencies.js +17 -0
  374. package/dist/tools/package-get-dependencies.js.map +1 -0
  375. package/dist/tools/package-get-info.d.ts +2 -0
  376. package/dist/tools/package-get-info.js +33 -0
  377. package/dist/tools/package-get-info.js.map +1 -0
  378. package/dist/tools/package-list.d.ts +2 -0
  379. package/dist/tools/package-list.js +57 -0
  380. package/dist/tools/package-list.js.map +1 -0
  381. package/dist/tools/package-remove.d.ts +2 -0
  382. package/dist/tools/package-remove.js +40 -0
  383. package/dist/tools/package-remove.js.map +1 -0
  384. package/dist/tools/package-search.d.ts +2 -0
  385. package/dist/tools/package-search.js +42 -0
  386. package/dist/tools/package-search.js.map +1 -0
  387. package/dist/tools/particle-system-get.d.ts +2 -0
  388. package/dist/tools/particle-system-get.js +42 -0
  389. package/dist/tools/particle-system-get.js.map +1 -0
  390. package/dist/tools/particle-system-modify.d.ts +2 -0
  391. package/dist/tools/particle-system-modify.js +73 -0
  392. package/dist/tools/particle-system-modify.js.map +1 -0
  393. package/dist/tools/ping.d.ts +2 -0
  394. package/dist/tools/ping.js +10 -0
  395. package/dist/tools/ping.js.map +1 -0
  396. package/dist/tools/prefab-apply.d.ts +2 -0
  397. package/dist/tools/prefab-apply.js +39 -0
  398. package/dist/tools/prefab-apply.js.map +1 -0
  399. package/dist/tools/prefab-close.d.ts +2 -0
  400. package/dist/tools/prefab-close.js +29 -0
  401. package/dist/tools/prefab-close.js.map +1 -0
  402. package/dist/tools/prefab-create.d.ts +2 -0
  403. package/dist/tools/prefab-create.js +52 -0
  404. package/dist/tools/prefab-create.js.map +1 -0
  405. package/dist/tools/prefab-get-overrides.d.ts +2 -0
  406. package/dist/tools/prefab-get-overrides.js +27 -0
  407. package/dist/tools/prefab-get-overrides.js.map +1 -0
  408. package/dist/tools/prefab-instantiate.d.ts +2 -0
  409. package/dist/tools/prefab-instantiate.js +52 -0
  410. package/dist/tools/prefab-instantiate.js.map +1 -0
  411. package/dist/tools/prefab-open.d.ts +2 -0
  412. package/dist/tools/prefab-open.js +30 -0
  413. package/dist/tools/prefab-open.js.map +1 -0
  414. package/dist/tools/prefab-revert.d.ts +2 -0
  415. package/dist/tools/prefab-revert.js +37 -0
  416. package/dist/tools/prefab-revert.js.map +1 -0
  417. package/dist/tools/prefab-save.d.ts +2 -0
  418. package/dist/tools/prefab-save.js +24 -0
  419. package/dist/tools/prefab-save.js.map +1 -0
  420. package/dist/tools/prefab-status.d.ts +2 -0
  421. package/dist/tools/prefab-status.js +29 -0
  422. package/dist/tools/prefab-status.js.map +1 -0
  423. package/dist/tools/prefab-unpack.d.ts +2 -0
  424. package/dist/tools/prefab-unpack.js +43 -0
  425. package/dist/tools/prefab-unpack.js.map +1 -0
  426. package/dist/tools/probuilder-create-shape.d.ts +2 -0
  427. package/dist/tools/probuilder-create-shape.js +40 -0
  428. package/dist/tools/probuilder-create-shape.js.map +1 -0
  429. package/dist/tools/probuilder-delete-faces.d.ts +2 -0
  430. package/dist/tools/probuilder-delete-faces.js +47 -0
  431. package/dist/tools/probuilder-delete-faces.js.map +1 -0
  432. package/dist/tools/probuilder-extrude.d.ts +2 -0
  433. package/dist/tools/probuilder-extrude.js +58 -0
  434. package/dist/tools/probuilder-extrude.js.map +1 -0
  435. package/dist/tools/probuilder-get-mesh-info.d.ts +2 -0
  436. package/dist/tools/probuilder-get-mesh-info.js +21 -0
  437. package/dist/tools/probuilder-get-mesh-info.js.map +1 -0
  438. package/dist/tools/probuilder-set-face-material.d.ts +2 -0
  439. package/dist/tools/probuilder-set-face-material.js +53 -0
  440. package/dist/tools/probuilder-set-face-material.js.map +1 -0
  441. package/dist/tools/profiler-capture.d.ts +2 -0
  442. package/dist/tools/profiler-capture.js +84 -0
  443. package/dist/tools/profiler-capture.js.map +1 -0
  444. package/dist/tools/profiler-clear-data.d.ts +2 -0
  445. package/dist/tools/profiler-clear-data.js +20 -0
  446. package/dist/tools/profiler-clear-data.js.map +1 -0
  447. package/dist/tools/profiler-enable-module.d.ts +2 -0
  448. package/dist/tools/profiler-enable-module.js +32 -0
  449. package/dist/tools/profiler-enable-module.js.map +1 -0
  450. package/dist/tools/profiler-get-config.d.ts +2 -0
  451. package/dist/tools/profiler-get-config.js +21 -0
  452. package/dist/tools/profiler-get-config.js.map +1 -0
  453. package/dist/tools/profiler-get-script-stats.d.ts +2 -0
  454. package/dist/tools/profiler-get-script-stats.js +20 -0
  455. package/dist/tools/profiler-get-script-stats.js.map +1 -0
  456. package/dist/tools/profiler-get-status.d.ts +2 -0
  457. package/dist/tools/profiler-get-status.js +22 -0
  458. package/dist/tools/profiler-get-status.js.map +1 -0
  459. package/dist/tools/profiler-list-modules.d.ts +2 -0
  460. package/dist/tools/profiler-list-modules.js +20 -0
  461. package/dist/tools/profiler-list-modules.js.map +1 -0
  462. package/dist/tools/profiler-load-data.d.ts +2 -0
  463. package/dist/tools/profiler-load-data.js +38 -0
  464. package/dist/tools/profiler-load-data.js.map +1 -0
  465. package/dist/tools/profiler-memory.d.ts +2 -0
  466. package/dist/tools/profiler-memory.js +21 -0
  467. package/dist/tools/profiler-memory.js.map +1 -0
  468. package/dist/tools/profiler-rendering.d.ts +2 -0
  469. package/dist/tools/profiler-rendering.js +14 -0
  470. package/dist/tools/profiler-rendering.js.map +1 -0
  471. package/dist/tools/profiler-save-data.d.ts +2 -0
  472. package/dist/tools/profiler-save-data.js +38 -0
  473. package/dist/tools/profiler-save-data.js.map +1 -0
  474. package/dist/tools/profiler-set-config.d.ts +2 -0
  475. package/dist/tools/profiler-set-config.js +72 -0
  476. package/dist/tools/profiler-set-config.js.map +1 -0
  477. package/dist/tools/profiler-start.d.ts +2 -0
  478. package/dist/tools/profiler-start.js +31 -0
  479. package/dist/tools/profiler-start.js.map +1 -0
  480. package/dist/tools/profiler-stop.d.ts +2 -0
  481. package/dist/tools/profiler-stop.js +20 -0
  482. package/dist/tools/profiler-stop.js.map +1 -0
  483. package/dist/tools/pull-events.d.ts +2 -0
  484. package/dist/tools/pull-events.js +43 -0
  485. package/dist/tools/pull-events.js.map +1 -0
  486. package/dist/tools/read-asset.d.ts +2 -0
  487. package/dist/tools/read-asset.js +62 -0
  488. package/dist/tools/read-asset.js.map +1 -0
  489. package/dist/tools/read-compile-errors.d.ts +2 -0
  490. package/dist/tools/read-compile-errors.js +59 -0
  491. package/dist/tools/read-compile-errors.js.map +1 -0
  492. package/dist/tools/read-console.d.ts +2 -0
  493. package/dist/tools/read-console.js +57 -0
  494. package/dist/tools/read-console.js.map +1 -0
  495. package/dist/tools/regression-check.d.ts +2 -0
  496. package/dist/tools/regression-check.js +36 -0
  497. package/dist/tools/regression-check.js.map +1 -0
  498. package/dist/tools/reserialize.d.ts +2 -0
  499. package/dist/tools/reserialize.js +31 -0
  500. package/dist/tools/reserialize.js.map +1 -0
  501. package/dist/tools/run-tests.d.ts +2 -0
  502. package/dist/tools/run-tests.js +49 -0
  503. package/dist/tools/run-tests.js.map +1 -0
  504. package/dist/tools/scan-all.d.ts +2 -0
  505. package/dist/tools/scan-all.js +25 -0
  506. package/dist/tools/scan-all.js.map +1 -0
  507. package/dist/tools/scan-paths.d.ts +2 -0
  508. package/dist/tools/scan-paths.js +40 -0
  509. package/dist/tools/scan-paths.js.map +1 -0
  510. package/dist/tools/scene-create.d.ts +2 -0
  511. package/dist/tools/scene-create.js +47 -0
  512. package/dist/tools/scene-create.js.map +1 -0
  513. package/dist/tools/scene-focus.d.ts +2 -0
  514. package/dist/tools/scene-focus.js +55 -0
  515. package/dist/tools/scene-focus.js.map +1 -0
  516. package/dist/tools/scene-get-data.d.ts +2 -0
  517. package/dist/tools/scene-get-data.js +52 -0
  518. package/dist/tools/scene-get-data.js.map +1 -0
  519. package/dist/tools/scene-get-dirty-summary.d.ts +2 -0
  520. package/dist/tools/scene-get-dirty-summary.js +17 -0
  521. package/dist/tools/scene-get-dirty-summary.js.map +1 -0
  522. package/dist/tools/scene-list-opened.d.ts +2 -0
  523. package/dist/tools/scene-list-opened.js +16 -0
  524. package/dist/tools/scene-list-opened.js.map +1 -0
  525. package/dist/tools/scene-open.d.ts +2 -0
  526. package/dist/tools/scene-open.js +48 -0
  527. package/dist/tools/scene-open.js.map +1 -0
  528. package/dist/tools/scene-save.d.ts +2 -0
  529. package/dist/tools/scene-save.js +38 -0
  530. package/dist/tools/scene-save.js.map +1 -0
  531. package/dist/tools/scene-set-active.d.ts +2 -0
  532. package/dist/tools/scene-set-active.js +33 -0
  533. package/dist/tools/scene-set-active.js.map +1 -0
  534. package/dist/tools/scene-unload.d.ts +2 -0
  535. package/dist/tools/scene-unload.js +33 -0
  536. package/dist/tools/scene-unload.js.map +1 -0
  537. package/dist/tools/screenshot-camera.d.ts +2 -0
  538. package/dist/tools/screenshot-camera.js +59 -0
  539. package/dist/tools/screenshot-camera.js.map +1 -0
  540. package/dist/tools/screenshot-window.d.ts +2 -0
  541. package/dist/tools/screenshot-window.js +54 -0
  542. package/dist/tools/screenshot-window.js.map +1 -0
  543. package/dist/tools/screenshot.d.ts +2 -0
  544. package/dist/tools/screenshot.js +47 -0
  545. package/dist/tools/screenshot.js.map +1 -0
  546. package/dist/tools/script-delete.d.ts +2 -0
  547. package/dist/tools/script-delete.js +37 -0
  548. package/dist/tools/script-delete.js.map +1 -0
  549. package/dist/tools/script-read.d.ts +2 -0
  550. package/dist/tools/script-read.js +46 -0
  551. package/dist/tools/script-read.js.map +1 -0
  552. package/dist/tools/script-write.d.ts +2 -0
  553. package/dist/tools/script-write.js +56 -0
  554. package/dist/tools/script-write.js.map +1 -0
  555. package/dist/tools/search-assets.d.ts +2 -0
  556. package/dist/tools/search-assets.js +49 -0
  557. package/dist/tools/search-assets.js.map +1 -0
  558. package/dist/tools/selection-get.d.ts +2 -0
  559. package/dist/tools/selection-get.js +28 -0
  560. package/dist/tools/selection-get.js.map +1 -0
  561. package/dist/tools/selection-set.d.ts +2 -0
  562. package/dist/tools/selection-set.js +72 -0
  563. package/dist/tools/selection-set.js.map +1 -0
  564. package/dist/tools/settings-get-lighting.d.ts +2 -0
  565. package/dist/tools/settings-get-lighting.js +21 -0
  566. package/dist/tools/settings-get-lighting.js.map +1 -0
  567. package/dist/tools/settings-get-physics.d.ts +2 -0
  568. package/dist/tools/settings-get-physics.js +17 -0
  569. package/dist/tools/settings-get-physics.js.map +1 -0
  570. package/dist/tools/settings-get-player.d.ts +2 -0
  571. package/dist/tools/settings-get-player.js +16 -0
  572. package/dist/tools/settings-get-player.js.map +1 -0
  573. package/dist/tools/settings-get-quality.d.ts +2 -0
  574. package/dist/tools/settings-get-quality.js +16 -0
  575. package/dist/tools/settings-get-quality.js.map +1 -0
  576. package/dist/tools/settings-set-lighting.d.ts +2 -0
  577. package/dist/tools/settings-set-lighting.js +58 -0
  578. package/dist/tools/settings-set-lighting.js.map +1 -0
  579. package/dist/tools/settings-set-physics.d.ts +2 -0
  580. package/dist/tools/settings-set-physics.js +52 -0
  581. package/dist/tools/settings-set-physics.js.map +1 -0
  582. package/dist/tools/settings-set-player.d.ts +2 -0
  583. package/dist/tools/settings-set-player.js +62 -0
  584. package/dist/tools/settings-set-player.js.map +1 -0
  585. package/dist/tools/settings-set-quality.d.ts +2 -0
  586. package/dist/tools/settings-set-quality.js +51 -0
  587. package/dist/tools/settings-set-quality.js.map +1 -0
  588. package/dist/tools/shader-get-data.d.ts +2 -0
  589. package/dist/tools/shader-get-data.js +31 -0
  590. package/dist/tools/shader-get-data.js.map +1 -0
  591. package/dist/tools/shader-list-all.d.ts +2 -0
  592. package/dist/tools/shader-list-all.js +24 -0
  593. package/dist/tools/shader-list-all.js.map +1 -0
  594. package/dist/tools/spatial-query.d.ts +2 -0
  595. package/dist/tools/spatial-query.js +117 -0
  596. package/dist/tools/spatial-query.js.map +1 -0
  597. package/dist/tools/splines-add-knot.d.ts +2 -0
  598. package/dist/tools/splines-add-knot.js +44 -0
  599. package/dist/tools/splines-add-knot.js.map +1 -0
  600. package/dist/tools/splines-container-create.d.ts +2 -0
  601. package/dist/tools/splines-container-create.js +39 -0
  602. package/dist/tools/splines-container-create.js.map +1 -0
  603. package/dist/tools/splines-evaluate.d.ts +2 -0
  604. package/dist/tools/splines-evaluate.js +31 -0
  605. package/dist/tools/splines-evaluate.js.map +1 -0
  606. package/dist/tools/splines-get-knots.d.ts +2 -0
  607. package/dist/tools/splines-get-knots.js +25 -0
  608. package/dist/tools/splines-get-knots.js.map +1 -0
  609. package/dist/tools/splines-modify.d.ts +2 -0
  610. package/dist/tools/splines-modify.js +35 -0
  611. package/dist/tools/splines-modify.js.map +1 -0
  612. package/dist/tools/splines-set-knot.d.ts +2 -0
  613. package/dist/tools/splines-set-knot.js +41 -0
  614. package/dist/tools/splines-set-knot.js.map +1 -0
  615. package/dist/tools/splines-set-tangent-mode.d.ts +2 -0
  616. package/dist/tools/splines-set-tangent-mode.js +43 -0
  617. package/dist/tools/splines-set-tangent-mode.js.map +1 -0
  618. package/dist/tools/type-schema.d.ts +2 -0
  619. package/dist/tools/type-schema.js +62 -0
  620. package/dist/tools/type-schema.js.map +1 -0
  621. package/dist/tools/validate-edit.d.ts +2 -0
  622. package/dist/tools/validate-edit.js +43 -0
  623. package/dist/tools/validate-edit.js.map +1 -0
  624. package/dist/unity-install-discovery.d.ts +79 -0
  625. package/dist/unity-install-discovery.js +206 -0
  626. package/dist/unity-install-discovery.js.map +1 -0
  627. package/dist/unity-log.d.ts +35 -0
  628. package/dist/unity-log.js +110 -0
  629. package/dist/unity-log.js.map +1 -0
  630. package/package.json +54 -0
@@ -0,0 +1,155 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import type { RuleCapability, FixCapability, CapabilityStatus } from "./rule-catalog.js";
3
+ export type RoutePolicy = "live" | "offline" | "offline-first" | "compressible";
4
+ export interface PlannedTool {
5
+ name: string;
6
+ category: string;
7
+ description: string;
8
+ guidance: string;
9
+ }
10
+ export declare const PLANNED_TOOLS: PlannedTool[];
11
+ /**
12
+ * Static routing narrative. Mirrors `docs/api/mcp-tools.md` §Route
13
+ * policy + §Batch support + the `BATCH_TOOL_NAMES` / blocked-tool
14
+ * lists in `batch-spawn.ts`. Kept concise; per-tool `batchCapable`
15
+ * flags live on each {@link ToolCapability}.
16
+ */
17
+ export declare const ROUTING_SUMMARY: RoutingSummary;
18
+ export interface ToolCapability {
19
+ name: string;
20
+ implemented: boolean;
21
+ status: CapabilityStatus;
22
+ category: string;
23
+ description: string;
24
+ routePolicy: RoutePolicy;
25
+ batchCapable: boolean;
26
+ /** Input schema mirrored from the Tool definition. */
27
+ inputSchema: Tool["inputSchema"];
28
+ /** Present only for planned tools. */
29
+ guidance?: string;
30
+ /**
31
+ * M18 Plan 2 / T18.2.3 — group id (from tool-groups.ts). Tools with no
32
+ * group assignment (server meta-tools) carry `null`. Lets an agent learn
33
+ * which manage_tools group to activate to surface a planned tool.
34
+ */
35
+ group: string | null;
36
+ }
37
+ /**
38
+ * Per-group capability entry as it appears in the capabilities response.
39
+ *
40
+ * Compiled-state only — does NOT reflect per-session activation. The session
41
+ * activation state is exposed via manage_tools `list_groups`. The two concerns
42
+ * are intentionally split (see M18 execution-plan.md §resolved decisions).
43
+ */
44
+ export interface ToolGroupCapability {
45
+ /** Stable lowercase group id (e.g. `"core"`, `"navigation"`). */
46
+ id: string;
47
+ description: string;
48
+ /** True when the group is enabled by default for fresh sessions. */
49
+ defaultEnabled: boolean;
50
+ /** Count of compiled-in tools in the group. */
51
+ toolCount: number;
52
+ /** Compiled-in tool names in the group, sorted. */
53
+ tools: string[];
54
+ /**
55
+ * Whether the group's Unity domain dependency compiled in. `true` for
56
+ * groups without a domainDefine (always compiled in); `false` when the
57
+ * bridge did not compile the domain in. The bridge detection is the
58
+ * `availableBridgeTools` dependency — when absent (bridge offline),
59
+ * domain-gated groups report `null` (unknown) and the agent should treat
60
+ * them as "may or may not be available".
61
+ */
62
+ available: boolean | null;
63
+ /** Free-text reason for `available: false` (dependency missing) or null. */
64
+ availableReason: string | null;
65
+ /** Unity package the group depends on, for install guidance. */
66
+ unityPackage: string | null;
67
+ /** Bridge compile define that gates this group (null when not gated). */
68
+ domainDefine: string | null;
69
+ /**
70
+ * Usage hint surfaced to the agent. Always points at manage_tools so the
71
+ * agent knows to activate the group before invoking its tools.
72
+ */
73
+ usageHint: string;
74
+ }
75
+ export interface CapabilitiesResult {
76
+ tools: ToolCapability[];
77
+ rules: RuleCapability[];
78
+ fixes: FixCapability[];
79
+ /**
80
+ * M18 Plan 2 / T18.2.3 — tool-group catalog (compiled-state only). Lets an
81
+ * agent learn which groups exist, what they contain, and whether the
82
+ * domain dependency is compiled in — before any tool call. Per-session
83
+ * activation state is in manage_tools `list_groups`, not here.
84
+ */
85
+ toolGroups: ToolGroupCapability[];
86
+ counts: {
87
+ toolsImplemented: number;
88
+ toolsPlanned: number;
89
+ rulesImplemented: number;
90
+ rulesPlanned: number;
91
+ fixesImplemented: number;
92
+ fixesPlanned: number;
93
+ /** M18 Plan 2 — count of groups enabled by default (`core` only). */
94
+ toolGroupsDefaultEnabled: number;
95
+ /** M18 Plan 2 — total group count. */
96
+ toolGroupsTotal: number;
97
+ };
98
+ /**
99
+ * One-shot routing narrative for agents. Lets a batch-narrative
100
+ * agent learn how tool calls are routed without reading repo docs.
101
+ * Concise on purpose — per-tool details live on each
102
+ * {@link ToolCapability} entry, not here.
103
+ */
104
+ routing: RoutingSummary;
105
+ }
106
+ /**
107
+ * Compact routing summary embedded in the capabilities response. This
108
+ * is the agent-facing counterpart of `docs/api/mcp-tools.md` §Route
109
+ * policy / §Batch support — it does NOT duplicate the full prose.
110
+ */
111
+ export interface RoutingSummary {
112
+ /** Most tools prefer the live bridge when it is connected. */
113
+ liveDefault: boolean;
114
+ /**
115
+ * When the live bridge is unavailable, only `batchCapable` tools
116
+ * fall back to a headless Unity spawn.
117
+ */
118
+ batchFallback: boolean;
119
+ /** Env vars a headless batch spawn requires. */
120
+ batchRequirements: string[];
121
+ /** Mutating meta-tools that are intentionally blocked in batch. */
122
+ batchBlocked: {
123
+ tool: string;
124
+ reason: string;
125
+ }[];
126
+ /** Tool categories that are live-only (no batch fallback). */
127
+ liveOnlyCategories: string[];
128
+ /**
129
+ * Pointer back to the per-tool `batchCapable` flag — agents should
130
+ * read that flag on each tool, not scan this summary for the list.
131
+ */
132
+ perToolFlag: string;
133
+ }
134
+ export interface CapabilitiesFilter {
135
+ /** Filter to a single surface (`tools` | `rules` | `fixes`). Omit for all. */
136
+ kind?: "tools" | "rules" | "fixes";
137
+ /** When false, omit planned/unimplemented capabilities. */
138
+ includePlanned?: boolean;
139
+ }
140
+ export interface BuildCapabilitiesDeps {
141
+ tools: Tool[];
142
+ batchToolNames: ReadonlySet<string>;
143
+ rules: RuleCapability[];
144
+ fixes: FixCapability[];
145
+ /**
146
+ * M18 Plan 2 / T18.2.3 — optional: the set of tool names the bridge has
147
+ * compiled in. Used to report per-group compiled-state availability
148
+ * (`available: true/false` on each ToolGroupCapability). When omitted
149
+ * (bridge offline, local capability call), domain-gated groups report
150
+ * `available: null` (unknown) and the agent is directed at
151
+ * manage_tools(list_groups) which probes the live bridge.
152
+ */
153
+ availableBridgeTools?: ReadonlySet<string>;
154
+ }
155
+ export declare function buildCapabilities(deps: BuildCapabilitiesDeps, filter?: CapabilitiesFilter): CapabilitiesResult;
@@ -0,0 +1,475 @@
1
+ // Capability-discovery builder.
2
+ //
3
+ // Aggregates the full capability surface (tools + verify rules + fixes +
4
+ // tool groups) that `unity_open_mcp_capabilities` returns. Every registered
5
+ // tool ships as `implemented: true`; planned typed tools (the curated editor
6
+ // surface) are listed with `implemented: false` and guidance so agents get
7
+ // structured "not yet available" signals instead of discovering gaps by
8
+ // trial and error.
9
+ //
10
+ // Pure transformation module: dependencies (registered tools, batch allow-list,
11
+ // rule/fix catalogs) are passed in by the caller so this file has zero runtime
12
+ // cross-file imports and loads cleanly under `node --experimental-strip-types`.
13
+ import { TOOL_GROUPS, groupFor, } from "./tool-groups.js";
14
+ // ---------------------------------------------------------------------------
15
+ // Route metadata — mirrors tool-router.ts / compressible-router.ts decisions
16
+ // ---------------------------------------------------------------------------
17
+ const OFFLINE_TOOLS = new Set(["unity_open_mcp_list_assets"]);
18
+ const OFFLINE_FIRST_TOOLS = new Set([
19
+ "unity_open_mcp_find_references",
20
+ "unity_open_mcp_read_asset",
21
+ "unity_open_mcp_search_assets",
22
+ ]);
23
+ function routePolicyFor(toolName) {
24
+ if (OFFLINE_TOOLS.has(toolName))
25
+ return "offline";
26
+ if (OFFLINE_FIRST_TOOLS.has(toolName))
27
+ return "offline-first";
28
+ return "live";
29
+ }
30
+ // ---------------------------------------------------------------------------
31
+ // Tool categories — semantic grouping that does not leak milestone IDs
32
+ // ---------------------------------------------------------------------------
33
+ const TOOL_CATEGORY = {
34
+ unity_open_mcp_ping: "core",
35
+ unity_open_mcp_execute_csharp: "core",
36
+ unity_open_mcp_invoke_method: "core",
37
+ unity_open_mcp_execute_menu: "core",
38
+ unity_open_mcp_find_members: "core",
39
+ unity_open_mcp_compile_check: "diagnostics",
40
+ unity_open_mcp_editor_status: "core",
41
+ unity_open_mcp_validate_edit: "gate-and-verify",
42
+ unity_open_mcp_checkpoint_create: "gate-and-verify",
43
+ unity_open_mcp_delta: "gate-and-verify",
44
+ unity_open_mcp_find_references: "gate-and-verify",
45
+ unity_open_mcp_scan_paths: "gate-and-verify",
46
+ unity_open_mcp_apply_fix: "gate-and-verify",
47
+ unity_open_mcp_scan_all: "gate-and-verify",
48
+ unity_open_mcp_baseline_create: "gate-and-verify",
49
+ unity_open_mcp_regression_check: "gate-and-verify",
50
+ unity_open_mcp_reserialize: "asset-intelligence",
51
+ unity_open_mcp_read_asset: "asset-intelligence",
52
+ unity_open_mcp_search_assets: "asset-intelligence",
53
+ unity_open_mcp_list_assets: "asset-intelligence",
54
+ // M16 Plan 1 — typed project & asset management tools.
55
+ unity_open_mcp_assets_create_folder: "typed-editor",
56
+ unity_open_mcp_assets_copy: "typed-editor",
57
+ unity_open_mcp_assets_move: "typed-editor",
58
+ unity_open_mcp_assets_delete: "typed-editor",
59
+ unity_open_mcp_assets_refresh: "typed-editor",
60
+ unity_open_mcp_material_create: "typed-editor",
61
+ unity_open_mcp_material_get_properties: "typed-editor",
62
+ unity_open_mcp_material_set_property: "typed-editor",
63
+ unity_open_mcp_material_get_keywords: "typed-editor",
64
+ unity_open_mcp_material_set_keyword: "typed-editor",
65
+ unity_open_mcp_material_set_shader: "typed-editor",
66
+ unity_open_mcp_shader_list_all: "typed-editor",
67
+ unity_open_mcp_shader_get_data: "typed-editor",
68
+ unity_open_mcp_prefab_instantiate: "typed-editor",
69
+ unity_open_mcp_prefab_create: "typed-editor",
70
+ unity_open_mcp_prefab_open: "typed-editor",
71
+ unity_open_mcp_prefab_close: "typed-editor",
72
+ unity_open_mcp_prefab_save: "typed-editor",
73
+ unity_open_mcp_prefab_apply: "typed-editor",
74
+ unity_open_mcp_prefab_revert: "typed-editor",
75
+ unity_open_mcp_prefab_unpack: "typed-editor",
76
+ unity_open_mcp_prefab_get_overrides: "typed-editor",
77
+ unity_open_mcp_prefab_status: "typed-editor",
78
+ // M16 Plan 2 — typed GameObject & component tools.
79
+ unity_open_mcp_gameobject_create: "typed-editor",
80
+ unity_open_mcp_gameobject_destroy: "typed-editor",
81
+ unity_open_mcp_gameobject_duplicate: "typed-editor",
82
+ unity_open_mcp_gameobject_find: "typed-editor",
83
+ unity_open_mcp_gameobject_modify: "typed-editor",
84
+ unity_open_mcp_gameobject_set_parent: "typed-editor",
85
+ unity_open_mcp_component_add: "typed-editor",
86
+ unity_open_mcp_component_destroy: "typed-editor",
87
+ unity_open_mcp_component_get: "typed-editor",
88
+ unity_open_mcp_component_modify: "typed-editor",
89
+ unity_open_mcp_component_list_all: "typed-editor",
90
+ // M16 Plan 3 — typed scene management tools.
91
+ unity_open_mcp_scene_create: "typed-editor",
92
+ unity_open_mcp_scene_open: "typed-editor",
93
+ unity_open_mcp_scene_save: "typed-editor",
94
+ unity_open_mcp_scene_unload: "typed-editor",
95
+ unity_open_mcp_scene_set_active: "typed-editor",
96
+ unity_open_mcp_scene_list_opened: "typed-editor",
97
+ unity_open_mcp_scene_get_data: "typed-editor",
98
+ unity_open_mcp_scene_get_dirty_summary: "typed-editor",
99
+ unity_open_mcp_scene_focus: "typed-editor",
100
+ // M16 Plan 4 — typed Package Manager tools.
101
+ unity_open_mcp_package_list: "typed-editor",
102
+ unity_open_mcp_package_search: "typed-editor",
103
+ unity_open_mcp_package_add: "typed-editor",
104
+ unity_open_mcp_package_remove: "typed-editor",
105
+ unity_open_mcp_package_get_info: "typed-editor",
106
+ unity_open_mcp_package_get_dependencies: "typed-editor",
107
+ unity_open_mcp_package_check: "typed-editor",
108
+ // M16 Plan 5 — typed console / editor state / selection / undo / tags / layers.
109
+ unity_open_mcp_console_clear: "typed-editor",
110
+ unity_open_mcp_console_log: "typed-editor",
111
+ unity_open_mcp_editor_set_state: "typed-editor",
112
+ unity_open_mcp_selection_get: "typed-editor",
113
+ unity_open_mcp_selection_set: "typed-editor",
114
+ unity_open_mcp_editor_undo: "typed-editor",
115
+ unity_open_mcp_editor_redo: "typed-editor",
116
+ unity_open_mcp_editor_get_tags: "typed-editor",
117
+ unity_open_mcp_editor_get_layers: "typed-editor",
118
+ unity_open_mcp_editor_add_tag: "typed-editor",
119
+ unity_open_mcp_editor_add_layer: "typed-editor",
120
+ // M16 Plan 6 — typed reflection / scripts / object data tools.
121
+ // type_schema / script_read / object_get_data are read-only; script_write /
122
+ // script_delete / object_modify are mutating (paths_hint scoped).
123
+ unity_open_mcp_type_schema: "typed-editor",
124
+ unity_open_mcp_script_read: "typed-editor",
125
+ unity_open_mcp_script_write: "typed-editor",
126
+ unity_open_mcp_script_delete: "typed-editor",
127
+ unity_open_mcp_object_get_data: "typed-editor",
128
+ unity_open_mcp_object_modify: "typed-editor",
129
+ // M16 Plan 7 — typed profiler session / diagnostics tools. Most mutate
130
+ // editor state (no asset writes) — gate-free direct-response tools.
131
+ // profiler_save_data is the lone asset-writing mutator (paths_hint scoped
132
+ // to the destination .json).
133
+ unity_open_mcp_profiler_start: "diagnostics",
134
+ unity_open_mcp_profiler_stop: "diagnostics",
135
+ unity_open_mcp_profiler_get_status: "diagnostics",
136
+ unity_open_mcp_profiler_get_config: "diagnostics",
137
+ unity_open_mcp_profiler_set_config: "diagnostics",
138
+ unity_open_mcp_profiler_list_modules: "diagnostics",
139
+ unity_open_mcp_profiler_enable_module: "diagnostics",
140
+ unity_open_mcp_profiler_clear_data: "diagnostics",
141
+ unity_open_mcp_profiler_save_data: "diagnostics",
142
+ unity_open_mcp_profiler_load_data: "diagnostics",
143
+ unity_open_mcp_profiler_get_script_stats: "diagnostics",
144
+ // M16 Plan 8 — typed gate intelligence tools. All read-only, gate-free
145
+ // direct-response tools that compose checkpoint / validate / delta / verify
146
+ // / run-history foundations. impact_preview + gate_budget_estimate are
147
+ // pre-mutation; mutation_explain is post-mutation.
148
+ unity_open_mcp_impact_preview: "gate-intelligence",
149
+ unity_open_mcp_gate_budget_estimate: "gate-intelligence",
150
+ unity_open_mcp_mutation_explain: "gate-intelligence",
151
+ // M16 Plan 9 — typed build pipeline + project-settings tools. Reads are
152
+ // gate-free; build_set_target / build_set_scenes / build_set_defines /
153
+ // build_start / settings_set_* run the full gate path (build_start also
154
+ // requires the deny bypass — BuildPipeline.BuildPlayer is on the deny list).
155
+ unity_open_mcp_build_get_targets: "build-settings",
156
+ unity_open_mcp_build_get_active_target: "build-settings",
157
+ unity_open_mcp_build_set_target: "build-settings",
158
+ unity_open_mcp_build_get_scenes: "build-settings",
159
+ unity_open_mcp_build_set_scenes: "build-settings",
160
+ unity_open_mcp_build_start: "build-settings",
161
+ unity_open_mcp_build_get_defines: "build-settings",
162
+ unity_open_mcp_build_set_defines: "build-settings",
163
+ unity_open_mcp_settings_get_player: "build-settings",
164
+ unity_open_mcp_settings_set_player: "build-settings",
165
+ unity_open_mcp_settings_get_quality: "build-settings",
166
+ unity_open_mcp_settings_set_quality: "build-settings",
167
+ unity_open_mcp_settings_get_physics: "build-settings",
168
+ unity_open_mcp_settings_set_physics: "build-settings",
169
+ unity_open_mcp_settings_get_lighting: "build-settings",
170
+ unity_open_mcp_settings_set_lighting: "build-settings",
171
+ // M16 Plan 10 / T6.6.2 — Navigation (NavMesh) extension tools. Extension
172
+ // pack tools ship tool definitions in the core MCP server (so capabilities
173
+ // advertises the surface) but require the matching extension UPM package
174
+ // installed in the target project for the bridge-side handler to exist.
175
+ unity_open_mcp_navigation_surface_add: "navigation",
176
+ unity_open_mcp_navigation_set_bake_settings: "navigation",
177
+ unity_open_mcp_navigation_surface_bake: "navigation",
178
+ unity_open_mcp_navigation_modifier_add: "navigation",
179
+ unity_open_mcp_navigation_modifier_volume_add: "navigation",
180
+ unity_open_mcp_navigation_link_add: "navigation",
181
+ unity_open_mcp_navigation_agent_add: "navigation",
182
+ unity_open_mcp_navigation_agent_set_destination: "navigation",
183
+ unity_open_mcp_navigation_list: "navigation",
184
+ unity_open_mcp_navigation_get: "navigation",
185
+ unity_open_mcp_navigation_modify: "navigation",
186
+ // M16 Plan 10 / T6.6.4 — Input System extension tools. Extension pack tools
187
+ // ship tool definitions in the core MCP server (so capabilities advertises
188
+ // the surface) but require the matching extension UPM package installed in
189
+ // the target project for the bridge-side handler to exist.
190
+ unity_open_mcp_inputsystem_asset_create: "input-system",
191
+ unity_open_mcp_inputsystem_actionmap_add: "input-system",
192
+ unity_open_mcp_inputsystem_action_add: "input-system",
193
+ unity_open_mcp_inputsystem_binding_add: "input-system",
194
+ unity_open_mcp_inputsystem_binding_composite_add: "input-system",
195
+ unity_open_mcp_inputsystem_controlscheme_add: "input-system",
196
+ unity_open_mcp_inputsystem_get: "input-system",
197
+ // M16 Plan 10 / T6.6.5 — ProBuilder extension tools.
198
+ unity_open_mcp_probuilder_create_shape: "probuilder",
199
+ unity_open_mcp_probuilder_get_mesh_info: "probuilder",
200
+ unity_open_mcp_probuilder_extrude: "probuilder",
201
+ unity_open_mcp_probuilder_delete_faces: "probuilder",
202
+ unity_open_mcp_probuilder_set_face_material: "probuilder",
203
+ // M16 Plan 10 / T6.6.9 — Particle System extension tools. Extension pack
204
+ // tools ship tool definitions in the core MCP server (so capabilities
205
+ // advertises the surface) but require the matching extension UPM package
206
+ // installed in the target project for the bridge-side handler to exist.
207
+ unity_open_mcp_particle_system_get: "particle-system",
208
+ unity_open_mcp_particle_system_modify: "particle-system",
209
+ // M16 Plan 10 / T6.6.10 — Animation extension tools (AnimationClip +
210
+ // AnimatorController). Extension pack tools ship tool definitions in the
211
+ // core MCP server (so capabilities advertises the surface) but require the
212
+ // matching extension UPM package installed in the target project for the
213
+ // bridge-side handler to exist.
214
+ unity_open_mcp_animation_create: "animation",
215
+ unity_open_mcp_animation_get_data: "animation",
216
+ unity_open_mcp_animation_modify: "animation",
217
+ unity_open_mcp_animator_create: "animation",
218
+ unity_open_mcp_animator_get_data: "animation",
219
+ unity_open_mcp_animator_modify: "animation",
220
+ // M18 Plan 7 / T18.7.3 — Splines extension tools. First backlog domain
221
+ // shipped under the embedded + grouped model. Compile-gated on
222
+ // com.unity.splines in the bridge; the tool definitions live in core so
223
+ // capabilities discovery advertises the surface even before the package is
224
+ // installed. Mutating members (container_create / add_knot / set_knot /
225
+ // set_tangent_mode / modify) run the full gate path; read-only members
226
+ // (evaluate / get_knots) are gate-free.
227
+ unity_open_mcp_splines_container_create: "splines",
228
+ unity_open_mcp_splines_add_knot: "splines",
229
+ unity_open_mcp_splines_set_knot: "splines",
230
+ unity_open_mcp_splines_set_tangent_mode: "splines",
231
+ unity_open_mcp_splines_evaluate: "splines",
232
+ unity_open_mcp_splines_get_knots: "splines",
233
+ unity_open_mcp_splines_modify: "splines",
234
+ unity_open_mcp_capabilities: "capability-discovery",
235
+ unity_open_mcp_list_rules: "capability-discovery",
236
+ unity_open_mcp_generate_skill: "capability-discovery",
237
+ unity_senses_run_tests: "agent-senses",
238
+ unity_senses_screenshot: "agent-senses",
239
+ // M20 Plan 1 / T20.1.1 — senses parity residual. Two new read-only senses
240
+ // tools extending the screenshot surface.
241
+ unity_senses_screenshot_camera: "agent-senses",
242
+ unity_senses_capture_inline: "agent-senses",
243
+ // M20 Plan 1 / T20.1.2 — EditorWindow capture (Win-only full-fidelity,
244
+ // cross-platform best-effort readback).
245
+ unity_senses_screenshot_window: "agent-senses",
246
+ unity_senses_read_console: "agent-senses",
247
+ unity_senses_profiler_capture: "agent-senses",
248
+ unity_senses_profiler_memory: "agent-senses",
249
+ unity_senses_profiler_rendering: "agent-senses",
250
+ unity_senses_spatial_query: "agent-senses",
251
+ };
252
+ function categoryFor(toolName) {
253
+ return TOOL_CATEGORY[toolName] ?? "other";
254
+ }
255
+ // Generic guidance reused across many planned typed tools.
256
+ const MUTATE_VIA_EXECUTE_CSHARP = "Planned typed surface. Use execute_csharp / invoke_method today.";
257
+ export const PLANNED_TOOLS = [
258
+ // --- Plan 1: Assets -----------------------------------------------------
259
+ // Plan 1 typed tools are now implemented (see mcp-server/src/tools/).
260
+ // The entries that used to live here have been removed; the remaining
261
+ // Plan 1 references (none) live as real Tool definitions.
262
+ // --- Plan 2: GameObject & Components ------------------------------------
263
+ // Plan 2 typed tools are now implemented (see mcp-server/src/tools/).
264
+ // The entries that used to live here have been removed.
265
+ // --- Plan 3: Scene ------------------------------------------------------
266
+ // Plan 3 typed tools are now implemented (see mcp-server/src/tools/).
267
+ // The entries that used to live here have been removed.
268
+ // --- Plan 4: Packages ---------------------------------------------------
269
+ // Plan 4 typed tools are now implemented (see mcp-server/src/tools/).
270
+ // The entries that used to live here have been removed.
271
+ // --- Plan 5: Console + Editor state/selection/tags/layers/undo ----------
272
+ // Plan 5 typed tools are now implemented (see mcp-server/src/tools/).
273
+ // The entries that used to live here have been removed.
274
+ // --- Plan 6: Reflection, scripts, objects -------------------------------
275
+ // Plan 6 typed tools are now implemented (see mcp-server/src/tools/).
276
+ // The entries that used to live here have been removed.
277
+ // --- Plan 7: Profiler session ------------------------------------------
278
+ // Plan 7 typed tools are now implemented (see mcp-server/src/tools/).
279
+ // The entries that used to live here have been removed.
280
+ // --- Plan 8: Gate intelligence -----------------------------------------
281
+ // Plan 8 typed tools are now implemented (see mcp-server/src/tools/).
282
+ // The entries that used to live here have been removed.
283
+ // --- Plan 9: Build & Settings ------------------------------------------
284
+ // Plan 9 typed tools are now implemented (see mcp-server/src/tools/).
285
+ // The entries that used to live here have been removed; the remaining
286
+ // Plan 9 references (none) live as real Tool definitions.
287
+ ];
288
+ // ---------------------------------------------------------------------------
289
+ // Capability descriptors
290
+ // ---------------------------------------------------------------------------
291
+ /**
292
+ * Static routing narrative. Mirrors `docs/api/mcp-tools.md` §Route
293
+ * policy + §Batch support + the `BATCH_TOOL_NAMES` / blocked-tool
294
+ * lists in `batch-spawn.ts`. Kept concise; per-tool `batchCapable`
295
+ * flags live on each {@link ToolCapability}.
296
+ */
297
+ export const ROUTING_SUMMARY = {
298
+ liveDefault: true,
299
+ batchFallback: true,
300
+ batchRequirements: ["UNITY_PATH", "UNITY_PROJECT_PATH"],
301
+ // Mutating meta-tools that need an interactive Editor UI or live
302
+ // compilation; intentionally rejected by the batch entry point.
303
+ batchBlocked: [
304
+ {
305
+ tool: "unity_open_mcp_execute_csharp",
306
+ reason: "Requires a live Editor compile context.",
307
+ },
308
+ {
309
+ tool: "unity_open_mcp_invoke_method",
310
+ reason: "Requires a live Editor reflection context.",
311
+ },
312
+ {
313
+ tool: "unity_open_mcp_execute_menu",
314
+ reason: "Menu execution needs the Editor UI; most menus fail in -batchmode.",
315
+ },
316
+ ],
317
+ // Agent senses (screenshots, profiler, console, spatial, run_tests)
318
+ // and gate mutations need a live Editor — they have no batch form.
319
+ liveOnlyCategories: ["agent-senses"],
320
+ perToolFlag: "batchCapable",
321
+ };
322
+ export function buildCapabilities(deps, filter = {}) {
323
+ const includePlanned = filter.includePlanned !== false;
324
+ const implementedTools = deps.tools.map((tool) => ({
325
+ name: tool.name,
326
+ implemented: true,
327
+ status: "implemented",
328
+ category: categoryFor(tool.name),
329
+ description: tool.description ?? "",
330
+ routePolicy: routePolicyFor(tool.name),
331
+ batchCapable: deps.batchToolNames.has(tool.name),
332
+ inputSchema: tool.inputSchema,
333
+ group: groupFor(tool.name),
334
+ }));
335
+ const plannedTools = includePlanned
336
+ ? PLANNED_TOOLS.map((p) => ({
337
+ name: p.name,
338
+ implemented: false,
339
+ status: "planned",
340
+ category: p.category,
341
+ description: p.description,
342
+ routePolicy: "live",
343
+ batchCapable: false,
344
+ inputSchema: { type: "object", properties: {} },
345
+ guidance: p.guidance,
346
+ group: groupFor(p.name),
347
+ }))
348
+ : [];
349
+ const tools = [...implementedTools, ...plannedTools];
350
+ const rules = includePlanned
351
+ ? deps.rules
352
+ : deps.rules.filter((r) => r.implemented);
353
+ const fixes = includePlanned
354
+ ? deps.fixes
355
+ : deps.fixes.filter((f) => f.implemented);
356
+ const toolGroups = buildToolGroups(implementedTools.map((t) => t.name), deps.availableBridgeTools);
357
+ return {
358
+ tools: filter.kind === "rules" || filter.kind === "fixes" ? [] : tools,
359
+ rules: filter.kind === "tools" || filter.kind === "fixes" ? [] : rules,
360
+ fixes: filter.kind === "tools" || filter.kind === "rules" ? [] : fixes,
361
+ // toolGroups is independent of the kind filter — agents that ask for
362
+ // `kind: "rules"` still benefit from the group catalog.
363
+ toolGroups,
364
+ counts: {
365
+ toolsImplemented: implementedTools.length,
366
+ toolsPlanned: plannedTools.length,
367
+ rulesImplemented: deps.rules.filter((r) => r.implemented).length,
368
+ rulesPlanned: includePlanned
369
+ ? deps.rules.filter((r) => !r.implemented).length
370
+ : 0,
371
+ fixesImplemented: deps.fixes.filter((f) => f.implemented).length,
372
+ fixesPlanned: includePlanned
373
+ ? deps.fixes.filter((f) => !f.implemented).length
374
+ : 0,
375
+ toolGroupsDefaultEnabled: TOOL_GROUPS.filter((g) => g.defaultEnabled).length,
376
+ toolGroupsTotal: TOOL_GROUPS.length,
377
+ },
378
+ // The routing summary is independent of the kind filter — agents
379
+ // that ask for `kind: "rules"` still benefit from the routing
380
+ // narrative. It is constant, so no per-call computation.
381
+ routing: ROUTING_SUMMARY,
382
+ };
383
+ }
384
+ // ---------------------------------------------------------------------------
385
+ // M18 Plan 2 / T18.2.3 — build the toolGroups catalog block (compiled-state
386
+ // only). Per-session activation lives in manage_tools; this surface reports
387
+ // what compiled in, not what is currently active.
388
+ // ---------------------------------------------------------------------------
389
+ function buildToolGroups(implementedToolNames, availableBridgeTools) {
390
+ // Bucket the implemented tool names by group. groupFor returns null for
391
+ // meta-tools; those are intentionally absent from any group block.
392
+ const toolsByGroup = new Map();
393
+ for (const name of implementedToolNames) {
394
+ const g = groupFor(name);
395
+ if (g === null)
396
+ continue;
397
+ const list = toolsByGroup.get(g) ?? [];
398
+ list.push(name);
399
+ toolsByGroup.set(g, list);
400
+ }
401
+ return TOOL_GROUPS.map((g) => {
402
+ const tools = (toolsByGroup.get(g.id) ?? []).slice().sort();
403
+ return buildOneGroup(g, tools, availableBridgeTools);
404
+ });
405
+ }
406
+ function buildOneGroup(group, tools, availableBridgeTools) {
407
+ // No domainDefine → the group is always compiled in (core, gate-and-verify,
408
+ // typed-editor, etc.).
409
+ if (!group.domainDefine) {
410
+ return {
411
+ id: group.id,
412
+ description: group.description,
413
+ defaultEnabled: group.defaultEnabled,
414
+ toolCount: tools.length,
415
+ tools,
416
+ available: true,
417
+ availableReason: null,
418
+ unityPackage: null,
419
+ domainDefine: null,
420
+ usageHint: buildUsageHint(group),
421
+ };
422
+ }
423
+ // Domain-gated group. The bridge signals whether the domain compiled in by
424
+ // exposing (or not) the group's tool names in its compiled-tool set. When
425
+ // availableBridgeTools is undefined (bridge offline on a local capability
426
+ // call), availability is unknown — the agent is directed at manage_tools
427
+ // (which probes the live bridge) for the authoritative answer.
428
+ if (availableBridgeTools === undefined) {
429
+ return {
430
+ id: group.id,
431
+ description: group.description,
432
+ defaultEnabled: group.defaultEnabled,
433
+ toolCount: tools.length,
434
+ tools,
435
+ available: null,
436
+ availableReason: "Bridge offline — compiled-state availability unknown. Call " +
437
+ "manage_tools(action=\"list_groups\") when the bridge is up, or " +
438
+ "install the Unity package to make the group compile in.",
439
+ unityPackage: group.unityPackage ?? null,
440
+ domainDefine: group.domainDefine,
441
+ usageHint: buildUsageHint(group),
442
+ };
443
+ }
444
+ // Bridge reachable — infer availability from whether any of the group's
445
+ // compiled-in tool names appear in the bridge tool set. A single tool
446
+ // present is enough; we don't need every tool (the bridge may have
447
+ // disabled one via toggle policy).
448
+ const anyToolCompiledIn = tools.length === 0 ? false : tools.some((t) => availableBridgeTools.has(t));
449
+ return {
450
+ id: group.id,
451
+ description: group.description,
452
+ defaultEnabled: group.defaultEnabled,
453
+ toolCount: tools.length,
454
+ tools,
455
+ available: anyToolCompiledIn,
456
+ availableReason: anyToolCompiledIn
457
+ ? null
458
+ : `Unity package '${group.unityPackage}' not installed — the bridge ` +
459
+ `did not compile the ${group.domainDefine} domain. Install the ` +
460
+ `package to make the group's tools available.`,
461
+ unityPackage: group.unityPackage ?? null,
462
+ domainDefine: group.domainDefine,
463
+ usageHint: buildUsageHint(group),
464
+ };
465
+ }
466
+ function buildUsageHint(group) {
467
+ if (group.defaultEnabled) {
468
+ return ("Default-on group. Its tools are visible in a fresh session without " +
469
+ "calling manage_tools.");
470
+ }
471
+ return (`Call unity_open_mcp_manage_tools(action=\"activate\", group=\"${group.id}\") ` +
472
+ "before invoking this group's tools — fresh sessions start with only " +
473
+ "`core` enabled.");
474
+ }
475
+ //# sourceMappingURL=build-capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-capabilities.js","sourceRoot":"","sources":["../../src/capabilities/build-capabilities.ts"],"names":[],"mappings":"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"}