unity-open-mcp 0.1.2 → 0.3.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 (447) hide show
  1. package/dist/agent-identity.d.ts +52 -0
  2. package/dist/agent-identity.js +115 -0
  3. package/dist/agent-identity.js.map +1 -0
  4. package/dist/batch-spawn.d.ts +7 -0
  5. package/dist/batch-spawn.js +155 -29
  6. package/dist/batch-spawn.js.map +1 -1
  7. package/dist/capabilities/build-capabilities.d.ts +45 -0
  8. package/dist/capabilities/build-capabilities.js +262 -27
  9. package/dist/capabilities/build-capabilities.js.map +1 -1
  10. package/dist/capabilities/cost-hints.d.ts +82 -0
  11. package/dist/capabilities/cost-hints.js +185 -0
  12. package/dist/capabilities/cost-hints.js.map +1 -0
  13. package/dist/capabilities/lifecycle.d.ts +40 -0
  14. package/dist/capabilities/lifecycle.js +353 -0
  15. package/dist/capabilities/lifecycle.js.map +1 -0
  16. package/dist/capabilities/rule-catalog.d.ts +13 -1
  17. package/dist/capabilities/rule-catalog.js +620 -75
  18. package/dist/capabilities/rule-catalog.js.map +1 -1
  19. package/dist/capabilities/tool-groups.d.ts +21 -0
  20. package/dist/capabilities/tool-groups.js +411 -14
  21. package/dist/capabilities/tool-groups.js.map +1 -1
  22. package/dist/cli/args.d.ts +32 -1
  23. package/dist/cli/args.js +201 -4
  24. package/dist/cli/args.js.map +1 -1
  25. package/dist/cli/cli.d.ts +21 -0
  26. package/dist/cli/cli.js +68 -5
  27. package/dist/cli/cli.js.map +1 -1
  28. package/dist/cli/commands.d.ts +33 -0
  29. package/dist/cli/commands.js +400 -0
  30. package/dist/cli/commands.js.map +1 -1
  31. package/dist/cli/exit-codes.d.ts +43 -0
  32. package/dist/cli/exit-codes.js +78 -0
  33. package/dist/cli/exit-codes.js.map +1 -0
  34. package/dist/compile-verify.d.ts +65 -0
  35. package/dist/compile-verify.js +94 -0
  36. package/dist/compile-verify.js.map +1 -0
  37. package/dist/compressible-router.js +64 -11
  38. package/dist/compressible-router.js.map +1 -1
  39. package/dist/compression/asset-model.d.ts +15 -0
  40. package/dist/compression/compact.d.ts +5 -4
  41. package/dist/compression/compact.js +13 -10
  42. package/dist/compression/compact.js.map +1 -1
  43. package/dist/dialog-dismiss.d.ts +127 -74
  44. package/dist/dialog-dismiss.js +427 -170
  45. package/dist/dialog-dismiss.js.map +1 -1
  46. package/dist/dialog-policy.d.ts +141 -0
  47. package/dist/dialog-policy.js +345 -0
  48. package/dist/dialog-policy.js.map +1 -0
  49. package/dist/gate-error.d.ts +6 -0
  50. package/dist/gate-error.js +13 -2
  51. package/dist/gate-error.js.map +1 -1
  52. package/dist/hub-control.d.ts +247 -0
  53. package/dist/hub-control.js +703 -0
  54. package/dist/hub-control.js.map +1 -0
  55. package/dist/index.d.ts +1 -1
  56. package/dist/index.js +46 -12
  57. package/dist/index.js.map +1 -1
  58. package/dist/live-client.d.ts +123 -3
  59. package/dist/live-client.js +526 -69
  60. package/dist/live-client.js.map +1 -1
  61. package/dist/offline.d.ts +105 -0
  62. package/dist/offline.js +816 -23
  63. package/dist/offline.js.map +1 -1
  64. package/dist/output-profile.d.ts +110 -0
  65. package/dist/output-profile.js +255 -0
  66. package/dist/output-profile.js.map +1 -0
  67. package/dist/retry-policy.d.ts +72 -0
  68. package/dist/retry-policy.js +146 -0
  69. package/dist/retry-policy.js.map +1 -0
  70. package/dist/routers.d.ts +4 -0
  71. package/dist/routers.js +2 -2
  72. package/dist/routers.js.map +1 -1
  73. package/dist/server-instructions.d.ts +18 -0
  74. package/dist/server-instructions.js +145 -0
  75. package/dist/server-instructions.js.map +1 -0
  76. package/dist/tool-router.d.ts +38 -1
  77. package/dist/tool-router.js +690 -37
  78. package/dist/tool-router.js.map +1 -1
  79. package/dist/tool-session-state.d.ts +37 -0
  80. package/dist/tool-session-state.js +78 -1
  81. package/dist/tool-session-state.js.map +1 -1
  82. package/dist/tools/apply-fix.js +16 -2
  83. package/dist/tools/apply-fix.js.map +1 -1
  84. package/dist/tools/asmdef-create.d.ts +2 -0
  85. package/dist/tools/asmdef-create.js +114 -0
  86. package/dist/tools/asmdef-create.js.map +1 -0
  87. package/dist/tools/asmdef-get.d.ts +2 -0
  88. package/dist/tools/asmdef-get.js +31 -0
  89. package/dist/tools/asmdef-get.js.map +1 -0
  90. package/dist/tools/asmdef-list.d.ts +2 -0
  91. package/dist/tools/asmdef-list.js +41 -0
  92. package/dist/tools/asmdef-list.js.map +1 -0
  93. package/dist/tools/asmdef-modify.d.ts +2 -0
  94. package/dist/tools/asmdef-modify.js +108 -0
  95. package/dist/tools/asmdef-modify.js.map +1 -0
  96. package/dist/tools/audio-listener-get.d.ts +2 -0
  97. package/dist/tools/audio-listener-get.js +16 -0
  98. package/dist/tools/audio-listener-get.js.map +1 -0
  99. package/dist/tools/audio-mixer-get-parameter.d.ts +2 -0
  100. package/dist/tools/audio-mixer-get-parameter.js +25 -0
  101. package/dist/tools/audio-mixer-get-parameter.js.map +1 -0
  102. package/dist/tools/audio-mixer-set-parameter.d.ts +2 -0
  103. package/dist/tools/audio-mixer-set-parameter.js +44 -0
  104. package/dist/tools/audio-mixer-set-parameter.js.map +1 -0
  105. package/dist/tools/audio-source-add.d.ts +2 -0
  106. package/dist/tools/audio-source-add.js +94 -0
  107. package/dist/tools/audio-source-add.js.map +1 -0
  108. package/dist/tools/audio-source-modify.d.ts +2 -0
  109. package/dist/tools/audio-source-modify.js +52 -0
  110. package/dist/tools/audio-source-modify.js.map +1 -0
  111. package/dist/tools/bridge-status.js +16 -6
  112. package/dist/tools/bridge-status.js.map +1 -1
  113. package/dist/tools/build-get-active-target.js +1 -2
  114. package/dist/tools/build-get-active-target.js.map +1 -1
  115. package/dist/tools/build-get-defines.js +1 -1
  116. package/dist/tools/build-get-defines.js.map +1 -1
  117. package/dist/tools/build-get-scenes.js +1 -2
  118. package/dist/tools/build-get-scenes.js.map +1 -1
  119. package/dist/tools/build-get-targets.js +1 -1
  120. package/dist/tools/build-get-targets.js.map +1 -1
  121. package/dist/tools/build-set-defines.js +1 -2
  122. package/dist/tools/build-set-defines.js.map +1 -1
  123. package/dist/tools/build-set-scenes.js +1 -1
  124. package/dist/tools/build-set-scenes.js.map +1 -1
  125. package/dist/tools/build-set-target.js +1 -1
  126. package/dist/tools/build-set-target.js.map +1 -1
  127. package/dist/tools/build-start.js +0 -1
  128. package/dist/tools/build-start.js.map +1 -1
  129. package/dist/tools/cinemachine-brain-ensure.d.ts +2 -0
  130. package/dist/tools/cinemachine-brain-ensure.js +27 -0
  131. package/dist/tools/cinemachine-brain-ensure.js.map +1 -0
  132. package/dist/tools/cinemachine-camera-list.d.ts +2 -0
  133. package/dist/tools/cinemachine-camera-list.js +15 -0
  134. package/dist/tools/cinemachine-camera-list.js.map +1 -0
  135. package/dist/tools/cinemachine-create-camera.d.ts +2 -0
  136. package/dist/tools/cinemachine-create-camera.js +55 -0
  137. package/dist/tools/cinemachine-create-camera.js.map +1 -0
  138. package/dist/tools/cinemachine-set-body.d.ts +2 -0
  139. package/dist/tools/cinemachine-set-body.js +33 -0
  140. package/dist/tools/cinemachine-set-body.js.map +1 -0
  141. package/dist/tools/cinemachine-set-lens.d.ts +2 -0
  142. package/dist/tools/cinemachine-set-lens.js +41 -0
  143. package/dist/tools/cinemachine-set-lens.js.map +1 -0
  144. package/dist/tools/cinemachine-set-noise.d.ts +2 -0
  145. package/dist/tools/cinemachine-set-noise.js +31 -0
  146. package/dist/tools/cinemachine-set-noise.js.map +1 -0
  147. package/dist/tools/cinemachine-set-targets.d.ts +2 -0
  148. package/dist/tools/cinemachine-set-targets.js +30 -0
  149. package/dist/tools/cinemachine-set-targets.js.map +1 -0
  150. package/dist/tools/console-log.js +2 -2
  151. package/dist/tools/console-log.js.map +1 -1
  152. package/dist/tools/constraint-add.d.ts +2 -0
  153. package/dist/tools/constraint-add.js +85 -0
  154. package/dist/tools/constraint-add.js.map +1 -0
  155. package/dist/tools/dependencies.d.ts +2 -0
  156. package/dist/tools/dependencies.js +76 -0
  157. package/dist/tools/dependencies.js.map +1 -0
  158. package/dist/tools/editor-add-tag.js +2 -3
  159. package/dist/tools/editor-add-tag.js.map +1 -1
  160. package/dist/tools/editor-clear-history.d.ts +2 -0
  161. package/dist/tools/editor-clear-history.js +25 -0
  162. package/dist/tools/editor-clear-history.js.map +1 -0
  163. package/dist/tools/editor-get-layers.js +3 -3
  164. package/dist/tools/editor-get-layers.js.map +1 -1
  165. package/dist/tools/editor-get-tags.js +2 -2
  166. package/dist/tools/editor-get-tags.js.map +1 -1
  167. package/dist/tools/editor-redo.js +2 -3
  168. package/dist/tools/editor-redo.js.map +1 -1
  169. package/dist/tools/editor-undo-history.d.ts +2 -0
  170. package/dist/tools/editor-undo-history.js +21 -0
  171. package/dist/tools/editor-undo-history.js.map +1 -0
  172. package/dist/tools/editor-undo.js +3 -3
  173. package/dist/tools/editor-undo.js.map +1 -1
  174. package/dist/tools/editorprefs-delete.d.ts +2 -0
  175. package/dist/tools/editorprefs-delete.js +23 -0
  176. package/dist/tools/editorprefs-delete.js.map +1 -0
  177. package/dist/tools/editorprefs-get.d.ts +2 -0
  178. package/dist/tools/editorprefs-get.js +28 -0
  179. package/dist/tools/editorprefs-get.js.map +1 -0
  180. package/dist/tools/editorprefs-set.d.ts +2 -0
  181. package/dist/tools/editorprefs-set.js +33 -0
  182. package/dist/tools/editorprefs-set.js.map +1 -0
  183. package/dist/tools/find-references.js +24 -4
  184. package/dist/tools/find-references.js.map +1 -1
  185. package/dist/tools/frame-debugger.d.ts +2 -0
  186. package/dist/tools/frame-debugger.js +48 -0
  187. package/dist/tools/frame-debugger.js.map +1 -0
  188. package/dist/tools/gameobject-modify.js +69 -2
  189. package/dist/tools/gameobject-modify.js.map +1 -1
  190. package/dist/tools/gate-budget-estimate.js +2 -1
  191. package/dist/tools/gate-budget-estimate.js.map +1 -1
  192. package/dist/tools/hub-available-releases.d.ts +2 -0
  193. package/dist/tools/hub-available-releases.js +23 -0
  194. package/dist/tools/hub-available-releases.js.map +1 -0
  195. package/dist/tools/hub-get-install-path.d.ts +2 -0
  196. package/dist/tools/hub-get-install-path.js +20 -0
  197. package/dist/tools/hub-get-install-path.js.map +1 -0
  198. package/dist/tools/hub-install-editor.d.ts +2 -0
  199. package/dist/tools/hub-install-editor.js +47 -0
  200. package/dist/tools/hub-install-editor.js.map +1 -0
  201. package/dist/tools/hub-install-modules.d.ts +2 -0
  202. package/dist/tools/hub-install-modules.js +44 -0
  203. package/dist/tools/hub-install-modules.js.map +1 -0
  204. package/dist/tools/hub-list-editors.d.ts +2 -0
  205. package/dist/tools/hub-list-editors.js +25 -0
  206. package/dist/tools/hub-list-editors.js.map +1 -0
  207. package/dist/tools/hub-set-install-path.d.ts +2 -0
  208. package/dist/tools/hub-set-install-path.js +30 -0
  209. package/dist/tools/hub-set-install-path.js.map +1 -0
  210. package/dist/tools/impact-preview.js +2 -2
  211. package/dist/tools/impact-preview.js.map +1 -1
  212. package/dist/tools/index.d.ts +14 -0
  213. package/dist/tools/index.js +534 -24
  214. package/dist/tools/index.js.map +1 -1
  215. package/dist/tools/light-add.d.ts +2 -0
  216. package/dist/tools/light-add.js +73 -0
  217. package/dist/tools/light-add.js.map +1 -0
  218. package/dist/tools/light-modify.d.ts +2 -0
  219. package/dist/tools/light-modify.js +36 -0
  220. package/dist/tools/light-modify.js.map +1 -0
  221. package/dist/tools/light-set.d.ts +2 -0
  222. package/dist/tools/light-set.js +54 -0
  223. package/dist/tools/light-set.js.map +1 -0
  224. package/dist/tools/list-assets-of-type.d.ts +2 -0
  225. package/dist/tools/list-assets-of-type.js +54 -0
  226. package/dist/tools/list-assets-of-type.js.map +1 -0
  227. package/dist/tools/lod-add-level.d.ts +2 -0
  228. package/dist/tools/lod-add-level.js +66 -0
  229. package/dist/tools/lod-add-level.js.map +1 -0
  230. package/dist/tools/lod-group-configure.d.ts +2 -0
  231. package/dist/tools/lod-group-configure.js +64 -0
  232. package/dist/tools/lod-group-configure.js.map +1 -0
  233. package/dist/tools/manage-tools.js +7 -5
  234. package/dist/tools/manage-tools.js.map +1 -1
  235. package/dist/tools/memory-snapshot-capture.d.ts +2 -0
  236. package/dist/tools/memory-snapshot-capture.js +61 -0
  237. package/dist/tools/memory-snapshot-capture.js.map +1 -0
  238. package/dist/tools/mutation-explain.js +2 -2
  239. package/dist/tools/mutation-explain.js.map +1 -1
  240. package/dist/tools/playerprefs-delete.d.ts +2 -0
  241. package/dist/tools/playerprefs-delete.js +24 -0
  242. package/dist/tools/playerprefs-delete.js.map +1 -0
  243. package/dist/tools/playerprefs-get.d.ts +2 -0
  244. package/dist/tools/playerprefs-get.js +28 -0
  245. package/dist/tools/playerprefs-get.js.map +1 -0
  246. package/dist/tools/playerprefs-set.d.ts +2 -0
  247. package/dist/tools/playerprefs-set.js +37 -0
  248. package/dist/tools/playerprefs-set.js.map +1 -0
  249. package/dist/tools/profiler-capture-frame.d.ts +2 -0
  250. package/dist/tools/profiler-capture-frame.js +75 -0
  251. package/dist/tools/profiler-capture-frame.js.map +1 -0
  252. package/dist/tools/profiler-clear-data.js +1 -2
  253. package/dist/tools/profiler-clear-data.js.map +1 -1
  254. package/dist/tools/profiler-enable-module.js +4 -5
  255. package/dist/tools/profiler-enable-module.js.map +1 -1
  256. package/dist/tools/profiler-get-status.js +5 -6
  257. package/dist/tools/profiler-get-status.js.map +1 -1
  258. package/dist/tools/profiler-load-data.js +4 -5
  259. package/dist/tools/profiler-load-data.js.map +1 -1
  260. package/dist/tools/profiler-save-data.js +3 -3
  261. package/dist/tools/profiler-save-data.js.map +1 -1
  262. package/dist/tools/profiler-set-config.js +5 -5
  263. package/dist/tools/profiler-set-config.js.map +1 -1
  264. package/dist/tools/profiler-start.js +4 -4
  265. package/dist/tools/profiler-start.js.map +1 -1
  266. package/dist/tools/profiler-stop.js +2 -3
  267. package/dist/tools/profiler-stop.js.map +1 -1
  268. package/dist/tools/read-asset.js +21 -3
  269. package/dist/tools/read-asset.js.map +1 -1
  270. package/dist/tools/reflection-probe-bake.d.ts +2 -0
  271. package/dist/tools/reflection-probe-bake.js +47 -0
  272. package/dist/tools/reflection-probe-bake.js.map +1 -0
  273. package/dist/tools/reflection-probe-get.d.ts +2 -0
  274. package/dist/tools/reflection-probe-get.js +19 -0
  275. package/dist/tools/reflection-probe-get.js.map +1 -0
  276. package/dist/tools/reimport-package.d.ts +2 -0
  277. package/dist/tools/reimport-package.js +53 -0
  278. package/dist/tools/reimport-package.js.map +1 -0
  279. package/dist/tools/scan-paths.js +19 -0
  280. package/dist/tools/scan-paths.js.map +1 -1
  281. package/dist/tools/scene-focus.js +1 -1
  282. package/dist/tools/scene-focus.js.map +1 -1
  283. package/dist/tools/scene-get-data.js +31 -13
  284. package/dist/tools/scene-get-data.js.map +1 -1
  285. package/dist/tools/scene-get-dirty-summary.js +1 -1
  286. package/dist/tools/scene-get-dirty-summary.js.map +1 -1
  287. package/dist/tools/sceneview-get-camera.d.ts +2 -0
  288. package/dist/tools/sceneview-get-camera.js +16 -0
  289. package/dist/tools/sceneview-get-camera.js.map +1 -0
  290. package/dist/tools/sceneview-set-camera.d.ts +2 -0
  291. package/dist/tools/sceneview-set-camera.js +58 -0
  292. package/dist/tools/sceneview-set-camera.js.map +1 -0
  293. package/dist/tools/script-write.js +2 -2
  294. package/dist/tools/script-write.js.map +1 -1
  295. package/dist/tools/scriptableobject-create.d.ts +2 -0
  296. package/dist/tools/scriptableobject-create.js +86 -0
  297. package/dist/tools/scriptableobject-create.js.map +1 -0
  298. package/dist/tools/search-assets.js +20 -3
  299. package/dist/tools/search-assets.js.map +1 -1
  300. package/dist/tools/settings-get-lighting.js +3 -4
  301. package/dist/tools/settings-get-lighting.js.map +1 -1
  302. package/dist/tools/settings-get-player.js +2 -2
  303. package/dist/tools/settings-get-player.js.map +1 -1
  304. package/dist/tools/settings-get-quality.js +1 -2
  305. package/dist/tools/settings-get-quality.js.map +1 -1
  306. package/dist/tools/settings-get-render-pipeline.d.ts +2 -0
  307. package/dist/tools/settings-get-render-pipeline.js +19 -0
  308. package/dist/tools/settings-get-render-pipeline.js.map +1 -0
  309. package/dist/tools/settings-get-time.d.ts +2 -0
  310. package/dist/tools/settings-get-time.js +18 -0
  311. package/dist/tools/settings-get-time.js.map +1 -0
  312. package/dist/tools/settings-set-lighting.js +5 -5
  313. package/dist/tools/settings-set-lighting.js.map +1 -1
  314. package/dist/tools/settings-set-physics.js +2 -2
  315. package/dist/tools/settings-set-physics.js.map +1 -1
  316. package/dist/tools/settings-set-player.js +2 -2
  317. package/dist/tools/settings-set-player.js.map +1 -1
  318. package/dist/tools/settings-set-quality-level.d.ts +2 -0
  319. package/dist/tools/settings-set-quality-level.js +44 -0
  320. package/dist/tools/settings-set-quality-level.js.map +1 -0
  321. package/dist/tools/settings-set-quality.js +2 -2
  322. package/dist/tools/settings-set-quality.js.map +1 -1
  323. package/dist/tools/settings-set-time.d.ts +2 -0
  324. package/dist/tools/settings-set-time.js +53 -0
  325. package/dist/tools/settings-set-time.js.map +1 -0
  326. package/dist/tools/shader-get-data.js +3 -3
  327. package/dist/tools/shader-get-data.js.map +1 -1
  328. package/dist/tools/shader-graph-create.d.ts +2 -0
  329. package/dist/tools/shader-graph-create.js +40 -0
  330. package/dist/tools/shader-graph-create.js.map +1 -0
  331. package/dist/tools/shader-graph-node-add.d.ts +2 -0
  332. package/dist/tools/shader-graph-node-add.js +50 -0
  333. package/dist/tools/shader-graph-node-add.js.map +1 -0
  334. package/dist/tools/shader-graph-node-connect.d.ts +2 -0
  335. package/dist/tools/shader-graph-node-connect.js +60 -0
  336. package/dist/tools/shader-graph-node-connect.js.map +1 -0
  337. package/dist/tools/shader-graph-open.d.ts +2 -0
  338. package/dist/tools/shader-graph-open.js +29 -0
  339. package/dist/tools/shader-graph-open.js.map +1 -0
  340. package/dist/tools/skybox-get.d.ts +2 -0
  341. package/dist/tools/skybox-get.js +13 -0
  342. package/dist/tools/skybox-get.js.map +1 -0
  343. package/dist/tools/skybox-set.d.ts +2 -0
  344. package/dist/tools/skybox-set.js +34 -0
  345. package/dist/tools/skybox-set.js.map +1 -0
  346. package/dist/tools/spriteatlas-add-packable.d.ts +2 -0
  347. package/dist/tools/spriteatlas-add-packable.js +40 -0
  348. package/dist/tools/spriteatlas-add-packable.js.map +1 -0
  349. package/dist/tools/spriteatlas-create.d.ts +2 -0
  350. package/dist/tools/spriteatlas-create.js +41 -0
  351. package/dist/tools/spriteatlas-create.js.map +1 -0
  352. package/dist/tools/spriteatlas-delete.d.ts +2 -0
  353. package/dist/tools/spriteatlas-delete.js +32 -0
  354. package/dist/tools/spriteatlas-delete.js.map +1 -0
  355. package/dist/tools/spriteatlas-get.d.ts +2 -0
  356. package/dist/tools/spriteatlas-get.js +23 -0
  357. package/dist/tools/spriteatlas-get.js.map +1 -0
  358. package/dist/tools/spriteatlas-list.d.ts +2 -0
  359. package/dist/tools/spriteatlas-list.js +21 -0
  360. package/dist/tools/spriteatlas-list.js.map +1 -0
  361. package/dist/tools/spriteatlas-modify.d.ts +2 -0
  362. package/dist/tools/spriteatlas-modify.js +55 -0
  363. package/dist/tools/spriteatlas-modify.js.map +1 -0
  364. package/dist/tools/spriteatlas-remove-packable.d.ts +2 -0
  365. package/dist/tools/spriteatlas-remove-packable.js +39 -0
  366. package/dist/tools/spriteatlas-remove-packable.js.map +1 -0
  367. package/dist/tools/terrain-create.d.ts +2 -0
  368. package/dist/tools/terrain-create.js +73 -0
  369. package/dist/tools/terrain-create.js.map +1 -0
  370. package/dist/tools/terrain-paint-layer.d.ts +2 -0
  371. package/dist/tools/terrain-paint-layer.js +85 -0
  372. package/dist/tools/terrain-paint-layer.js.map +1 -0
  373. package/dist/tools/terrain-place-trees.d.ts +2 -0
  374. package/dist/tools/terrain-place-trees.js +92 -0
  375. package/dist/tools/terrain-place-trees.js.map +1 -0
  376. package/dist/tools/terrain-set-heights.d.ts +2 -0
  377. package/dist/tools/terrain-set-heights.js +68 -0
  378. package/dist/tools/terrain-set-heights.js.map +1 -0
  379. package/dist/tools/terrain-set-neighbors.d.ts +2 -0
  380. package/dist/tools/terrain-set-neighbors.js +65 -0
  381. package/dist/tools/terrain-set-neighbors.js.map +1 -0
  382. package/dist/tools/texture-get-importer.d.ts +2 -0
  383. package/dist/tools/texture-get-importer.js +25 -0
  384. package/dist/tools/texture-get-importer.js.map +1 -0
  385. package/dist/tools/texture-get.d.ts +2 -0
  386. package/dist/tools/texture-get.js +23 -0
  387. package/dist/tools/texture-get.js.map +1 -0
  388. package/dist/tools/texture-reimport.d.ts +2 -0
  389. package/dist/tools/texture-reimport.js +33 -0
  390. package/dist/tools/texture-reimport.js.map +1 -0
  391. package/dist/tools/texture-set-import.d.ts +2 -0
  392. package/dist/tools/texture-set-import.js +52 -0
  393. package/dist/tools/texture-set-import.js.map +1 -0
  394. package/dist/tools/tilemap-box-fill.d.ts +2 -0
  395. package/dist/tools/tilemap-box-fill.js +32 -0
  396. package/dist/tools/tilemap-box-fill.js.map +1 -0
  397. package/dist/tools/tilemap-create-rule-tile.d.ts +2 -0
  398. package/dist/tools/tilemap-create-rule-tile.js +39 -0
  399. package/dist/tools/tilemap-create-rule-tile.js.map +1 -0
  400. package/dist/tools/tilemap-create-tile-asset.d.ts +2 -0
  401. package/dist/tools/tilemap-create-tile-asset.js +35 -0
  402. package/dist/tools/tilemap-create-tile-asset.js.map +1 -0
  403. package/dist/tools/tilemap-create.d.ts +2 -0
  404. package/dist/tools/tilemap-create.js +32 -0
  405. package/dist/tools/tilemap-create.js.map +1 -0
  406. package/dist/tools/tilemap-set-tile.d.ts +2 -0
  407. package/dist/tools/tilemap-set-tile.js +33 -0
  408. package/dist/tools/tilemap-set-tile.js.map +1 -0
  409. package/dist/tools/timeline-clip-add.d.ts +2 -0
  410. package/dist/tools/timeline-clip-add.js +43 -0
  411. package/dist/tools/timeline-clip-add.js.map +1 -0
  412. package/dist/tools/timeline-create.d.ts +2 -0
  413. package/dist/tools/timeline-create.js +32 -0
  414. package/dist/tools/timeline-create.js.map +1 -0
  415. package/dist/tools/timeline-director-bind.d.ts +2 -0
  416. package/dist/tools/timeline-director-bind.js +34 -0
  417. package/dist/tools/timeline-director-bind.js.map +1 -0
  418. package/dist/tools/timeline-modify.d.ts +2 -0
  419. package/dist/tools/timeline-modify.js +44 -0
  420. package/dist/tools/timeline-modify.js.map +1 -0
  421. package/dist/tools/timeline-track-add.d.ts +2 -0
  422. package/dist/tools/timeline-track-add.js +37 -0
  423. package/dist/tools/timeline-track-add.js.map +1 -0
  424. package/dist/tools/ui-canvas-add.d.ts +2 -0
  425. package/dist/tools/ui-canvas-add.js +66 -0
  426. package/dist/tools/ui-canvas-add.js.map +1 -0
  427. package/dist/tools/ui-element-add.d.ts +2 -0
  428. package/dist/tools/ui-element-add.js +65 -0
  429. package/dist/tools/ui-element-add.js.map +1 -0
  430. package/dist/tools/ui-element-modify.d.ts +2 -0
  431. package/dist/tools/ui-element-modify.js +59 -0
  432. package/dist/tools/ui-element-modify.js.map +1 -0
  433. package/dist/tools/ui-layout-group-add.d.ts +2 -0
  434. package/dist/tools/ui-layout-group-add.js +80 -0
  435. package/dist/tools/ui-layout-group-add.js.map +1 -0
  436. package/dist/tools/validate-edit.js +22 -1
  437. package/dist/tools/validate-edit.js.map +1 -1
  438. package/dist/tools/vfx-block-edit.d.ts +2 -0
  439. package/dist/tools/vfx-block-edit.js +51 -0
  440. package/dist/tools/vfx-block-edit.js.map +1 -0
  441. package/dist/tools/vfx-list.d.ts +2 -0
  442. package/dist/tools/vfx-list.js +31 -0
  443. package/dist/tools/vfx-list.js.map +1 -0
  444. package/dist/tools/vfx-open.d.ts +2 -0
  445. package/dist/tools/vfx-open.js +29 -0
  446. package/dist/tools/vfx-open.js.map +1 -0
  447. package/package.json +1 -1
@@ -14,6 +14,7 @@ import { withSchemaDefaults } from "../schema-defaults.js";
14
14
  import { readInstanceLock, classifyInstance, lockPath, } from "../instance-discovery.js";
15
15
  import { pollUntilReady, singlePing, DEFAULT_WAIT_TIMEOUT_MS, DEFAULT_POLL_INTERVAL_MS, PING_FETCH_TIMEOUT_MS, } from "./ping-poller.js";
16
16
  import { checkBridgeCompat } from "../compat.js";
17
+ import { EXIT, classifyBySeverity, severityThreshold, withTimeout, } from "./exit-codes.js";
17
18
  const TOOL_BY_NAME = new Map(ALL_TOOLS.map((t) => [t.name, t]));
18
19
  export async function runPingCommand(stack, opts) {
19
20
  const poll = await singlePing(stack.live, opts.timeoutMs);
@@ -231,6 +232,380 @@ function wrapList(items, perLine = 4) {
231
232
  }
232
233
  return out.join("\n");
233
234
  }
235
+ export async function runStreamEventsCommand(stack, opts) {
236
+ const intervalMs = opts.intervalMs ?? DEFAULT_POLL_INTERVAL_MS;
237
+ const allEvents = [];
238
+ let firstPull = null;
239
+ let connected = false;
240
+ let lastError = null;
241
+ // First pull starts the subscription; subsequent pulls drain incrementally.
242
+ const pullOnce = async (maxEvents) => {
243
+ const result = await stack.router.route("unity_senses_pull_events", {
244
+ max_events: maxEvents,
245
+ });
246
+ const body = extractResultBody(result);
247
+ return body;
248
+ };
249
+ firstPull = await pullOnce(opts.maxEvents);
250
+ const firstBatch = extractEvents(firstPull);
251
+ connected = extractConnected(firstPull);
252
+ lastError = extractLastError(firstPull);
253
+ for (const evt of firstBatch)
254
+ allEvents.push(evt);
255
+ if (opts.follow) {
256
+ // Keep draining until interrupted. The dispatcher's stdout writes happen
257
+ // per-batch in JSON-lines shape so a CI log shows events as they arrive.
258
+ let moreToRead = true;
259
+ while (moreToRead) {
260
+ await sleep(intervalMs);
261
+ const batch = await pullOnce(opts.maxEvents);
262
+ connected = extractConnected(batch);
263
+ lastError = extractLastError(batch);
264
+ const events = extractEvents(batch);
265
+ for (const evt of events)
266
+ allEvents.push(evt);
267
+ // In follow mode the loop only ends on interruption (Ctrl-C → SIGINT →
268
+ // process.exit from the dispatcher). We do not break on bridge disconnect
269
+ // because the SSE reader auto-reconnects; surface the state in output.
270
+ }
271
+ }
272
+ const json = {
273
+ command: "stream-events",
274
+ connected,
275
+ lastError,
276
+ eventCount: allEvents.length,
277
+ events: allEvents,
278
+ };
279
+ // stream-events never fails the CI gate on event contents — it is a log
280
+ // tap. It exits non-zero only when the bridge was never reachable.
281
+ const unreachable = !connected && allEvents.length === 0 && lastError !== null;
282
+ const exitCode = unreachable ? EXIT.TIMEOUT : EXIT.SUCCESS;
283
+ return {
284
+ exitCode,
285
+ json,
286
+ human: formatStreamEventsHuman(json),
287
+ errorLabel: unreachable ? "bridge_unavailable" : undefined,
288
+ };
289
+ }
290
+ function extractEvents(body) {
291
+ if (body && typeof body === "object" && Array.isArray(body.events)) {
292
+ return body.events;
293
+ }
294
+ return [];
295
+ }
296
+ function extractConnected(body) {
297
+ if (body && typeof body === "object") {
298
+ return body.connected === true;
299
+ }
300
+ return false;
301
+ }
302
+ function extractLastError(body) {
303
+ if (body && typeof body === "object") {
304
+ const le = body.lastError;
305
+ return typeof le === "string" ? le : null;
306
+ }
307
+ return null;
308
+ }
309
+ function formatStreamEventsHuman(json) {
310
+ const lines = [
311
+ `connected: ${json.connected}`,
312
+ `events: ${json.eventCount}`,
313
+ ];
314
+ if (json.lastError)
315
+ lines.push(`lastError: ${json.lastError}`);
316
+ for (const evt of json.events) {
317
+ const e = evt;
318
+ if (typeof e === "object" && e !== null) {
319
+ const type = e.type ?? "event";
320
+ if (type === "log") {
321
+ lines.push(`[log ${e.logType ?? "log"}] ${e.message ?? ""}`);
322
+ }
323
+ else if (type === "editor_state") {
324
+ lines.push(`[state] ${e.state ?? ""}${e.isCompiling === true ? " (compiling)" : ""}${e.isPlaying === true ? " (playing)" : ""}`);
325
+ }
326
+ else {
327
+ lines.push(`[${type}] ${JSON.stringify(e)}`);
328
+ }
329
+ }
330
+ else {
331
+ lines.push(String(evt));
332
+ }
333
+ }
334
+ return lines.join("\n");
335
+ }
336
+ function sleep(ms) {
337
+ return new Promise((resolve) => setTimeout(resolve, ms));
338
+ }
339
+ export async function runVerifyCommand(stack, opts) {
340
+ const hasPaths = opts.paths.length > 0;
341
+ // Resolve which tool to call.
342
+ let toolName;
343
+ if (opts.mode === "validate-edit") {
344
+ if (!hasPaths) {
345
+ return verifyError("validate-edit mode requires at least one path.");
346
+ }
347
+ toolName = "unity_open_mcp_validate_edit";
348
+ }
349
+ else if (opts.mode === "scan-paths") {
350
+ if (!hasPaths) {
351
+ return verifyError("scan-paths mode requires at least one path.");
352
+ }
353
+ toolName = "unity_open_mcp_scan_paths";
354
+ }
355
+ else {
356
+ // auto: scan_paths when paths given, else scan_all (whole project).
357
+ toolName = hasPaths ? "unity_open_mcp_scan_paths" : "unity_open_mcp_scan_all";
358
+ }
359
+ const tool = TOOL_BY_NAME.get(toolName);
360
+ if (!tool) {
361
+ return verifyError(`Internal error: tool '${toolName}' not registered.`);
362
+ }
363
+ // Build args from the CLI flags, applying schema defaults for omitted keys.
364
+ const args = {};
365
+ if (hasPaths)
366
+ args.paths = opts.paths;
367
+ if (opts.failOnSeverity)
368
+ args.fail_on_severity = opts.failOnSeverity;
369
+ if (opts.profile)
370
+ args.profile = opts.profile;
371
+ if (opts.includeRules)
372
+ args.include_rules = opts.includeRules;
373
+ if (opts.excludeRules)
374
+ args.exclude_rules = opts.excludeRules;
375
+ if (opts.platformProfile)
376
+ args.platform_profile = opts.platformProfile;
377
+ // scan_all doesn't accept include/exclude/profile/paging — it's whole-project.
378
+ if (toolName === "unity_open_mcp_scan_all") {
379
+ delete args.include_rules;
380
+ delete args.exclude_rules;
381
+ delete args.profile;
382
+ }
383
+ const routedArgs = withSchemaDefaults(tool, args);
384
+ const result = await stack.router.route(toolName, routedArgs);
385
+ const body = extractResultBody(result);
386
+ const isError = result.isError === true;
387
+ // Classify the exit code from severity counts. The folded verify result
388
+ // carries `issuesBySeverity`; scan_all carries a `summary` with severity
389
+ // counts. Extract whichever shape we got.
390
+ const counts = extractSeverityCounts(body);
391
+ const threshold = severityThreshold(opts.failOnSeverity);
392
+ const unreachable = isUnreachableResult(body, isError);
393
+ let exitCode = isError
394
+ ? (isTimeoutError(body) ? EXIT.TIMEOUT : EXIT.ERRORS)
395
+ : classifyBySeverity(counts, threshold);
396
+ exitCode = withTimeout(exitCode, unreachable);
397
+ const json = {
398
+ command: "verify",
399
+ tool: toolName,
400
+ isError,
401
+ result: body,
402
+ severityCounts: counts,
403
+ exitLevel: exitCodeToLevel(exitCode),
404
+ };
405
+ return {
406
+ exitCode,
407
+ json,
408
+ human: formatVerifyHuman(json),
409
+ errorLabel: isError ? "tool_error" : undefined,
410
+ };
411
+ }
412
+ function verifyError(message) {
413
+ return {
414
+ exitCode: EXIT.ERRORS,
415
+ json: { command: "verify", error: { code: "verify_arg", message } },
416
+ human: `verify: ${message}`,
417
+ errorLabel: "verify_arg",
418
+ };
419
+ }
420
+ /** Pull {error,warn,info,verbose} counts from a verify/scan result body. */
421
+ function extractSeverityCounts(body) {
422
+ const counts = {};
423
+ if (!body || typeof body !== "object")
424
+ return counts;
425
+ const obj = body;
426
+ // scan_paths/validate_edit folded shape: issuesBySeverity directly.
427
+ if (obj.issuesBySeverity && typeof obj.issuesBySeverity === "object") {
428
+ Object.assign(counts, obj.issuesBySeverity);
429
+ }
430
+ // scan_all shape: nested under summary.counts or summary.severity.
431
+ if (obj.summary && typeof obj.summary === "object") {
432
+ const summary = obj.summary;
433
+ if (summary.counts && typeof summary.counts === "object") {
434
+ Object.assign(counts, summary.counts);
435
+ }
436
+ if (summary.severity && typeof summary.severity === "object") {
437
+ Object.assign(counts, summary.severity);
438
+ }
439
+ }
440
+ return counts;
441
+ }
442
+ /** Detect bridge-unreachable / timeout error envelopes in a tool result. */
443
+ function isUnreachableResult(body, isError) {
444
+ if (!isError || !body || typeof body !== "object")
445
+ return false;
446
+ const obj = body;
447
+ const err = obj.error;
448
+ if (err && typeof err === "object") {
449
+ const code = err.code;
450
+ if (typeof code === "string") {
451
+ return (code === "bridge_unavailable" ||
452
+ code === "bridge_compile_failed" ||
453
+ code === "timeout" ||
454
+ code === "request_timeout");
455
+ }
456
+ }
457
+ return false;
458
+ }
459
+ function isTimeoutError(body) {
460
+ if (!body || typeof body !== "object")
461
+ return false;
462
+ const obj = body;
463
+ const err = obj.error;
464
+ if (err && typeof err === "object") {
465
+ const code = err.code;
466
+ return code === "timeout" || code === "request_timeout";
467
+ }
468
+ return false;
469
+ }
470
+ function exitCodeToLevel(code) {
471
+ switch (code) {
472
+ case EXIT.SUCCESS:
473
+ return "success";
474
+ case EXIT.WARNINGS:
475
+ return "warnings";
476
+ case EXIT.ERRORS:
477
+ return "errors";
478
+ case EXIT.TIMEOUT:
479
+ return "timeout";
480
+ default:
481
+ return "unknown";
482
+ }
483
+ }
484
+ function formatVerifyHuman(json) {
485
+ const c = json.severityCounts;
486
+ const head = `verify (${json.tool}): ${json.isError ? "ERROR" : json.exitLevel.toUpperCase()} ` +
487
+ `[errors=${c.error ?? 0} warn=${c.warn ?? 0} info=${c.info ?? 0} verbose=${c.verbose ?? 0}]`;
488
+ const bodyStr = typeof json.result === "string"
489
+ ? json.result
490
+ : JSON.stringify(json.result, null, 2);
491
+ return `${head}\n${bodyStr}`;
492
+ }
493
+ export async function runBaselineCommand(stack, opts) {
494
+ const toolName = "unity_open_mcp_baseline_create";
495
+ const tool = TOOL_BY_NAME.get(toolName);
496
+ if (!tool) {
497
+ return baselineError(`Internal error: tool '${toolName}' not registered.`);
498
+ }
499
+ const args = {};
500
+ if (opts.baselinePath)
501
+ args.baseline_path = opts.baselinePath;
502
+ if (opts.platformProfile)
503
+ args.platform_profile = opts.platformProfile;
504
+ const routedArgs = withSchemaDefaults(tool, args);
505
+ const result = await stack.router.route(toolName, routedArgs);
506
+ const body = extractResultBody(result);
507
+ const isError = result.isError === true;
508
+ const unreachable = isUnreachableResult(body, isError);
509
+ const exitCode = withTimeout(isError ? EXIT.ERRORS : EXIT.SUCCESS, unreachable);
510
+ const json = {
511
+ command: "baseline",
512
+ subcommand: opts.subcommand,
513
+ tool: toolName,
514
+ isError,
515
+ result: body,
516
+ exitLevel: exitCodeToLevel(exitCode),
517
+ };
518
+ return {
519
+ exitCode,
520
+ json,
521
+ human: formatBaselineHuman(json),
522
+ errorLabel: isError ? "tool_error" : undefined,
523
+ };
524
+ }
525
+ function baselineError(message) {
526
+ return {
527
+ exitCode: EXIT.ERRORS,
528
+ json: { command: "baseline", error: { code: "baseline_arg", message } },
529
+ human: `baseline: ${message}`,
530
+ errorLabel: "baseline_arg",
531
+ };
532
+ }
533
+ function formatBaselineHuman(json) {
534
+ const head = `baseline ${json.subcommand}: ${json.isError ? "ERROR" : json.exitLevel.toUpperCase()}`;
535
+ const bodyStr = typeof json.result === "string"
536
+ ? json.result
537
+ : JSON.stringify(json.result, null, 2);
538
+ return `${head}\n${bodyStr}`;
539
+ }
540
+ export async function runRegressionCommand(stack, opts) {
541
+ const toolName = "unity_open_mcp_regression_check";
542
+ const tool = TOOL_BY_NAME.get(toolName);
543
+ if (!tool) {
544
+ return regressionError(`Internal error: tool '${toolName}' not registered.`);
545
+ }
546
+ const args = {
547
+ baseline_path: opts.baselinePath,
548
+ };
549
+ if (opts.regressionThreshold !== undefined) {
550
+ args.regression_threshold = opts.regressionThreshold;
551
+ }
552
+ if (opts.platformProfile)
553
+ args.platform_profile = opts.platformProfile;
554
+ const routedArgs = withSchemaDefaults(tool, args);
555
+ const result = await stack.router.route(toolName, routedArgs);
556
+ const body = extractResultBody(result);
557
+ const isError = result.isError === true;
558
+ const unreachable = isUnreachableResult(body, isError);
559
+ // The regression tool returns regressed=true when the error-count increase
560
+ // exceeded the threshold. A regression → ERRORS exit code.
561
+ const regressed = isRegressed(body);
562
+ let exitCode = isError
563
+ ? (isTimeoutError(body) ? EXIT.TIMEOUT : EXIT.ERRORS)
564
+ : regressed
565
+ ? EXIT.ERRORS
566
+ : EXIT.SUCCESS;
567
+ exitCode = withTimeout(exitCode, unreachable);
568
+ const json = {
569
+ command: "regression",
570
+ subcommand: "check",
571
+ tool: toolName,
572
+ isError,
573
+ regressed,
574
+ result: body,
575
+ exitLevel: exitCodeToLevel(exitCode),
576
+ };
577
+ return {
578
+ exitCode,
579
+ json,
580
+ human: formatRegressionHuman(json),
581
+ errorLabel: isError ? "tool_error" : undefined,
582
+ };
583
+ }
584
+ function isRegressed(body) {
585
+ if (!body || typeof body !== "object")
586
+ return false;
587
+ return body.regressed === true;
588
+ }
589
+ function regressionError(message) {
590
+ return {
591
+ exitCode: EXIT.ERRORS,
592
+ json: { command: "regression", error: { code: "regression_arg", message } },
593
+ human: `regression: ${message}`,
594
+ errorLabel: "regression_arg",
595
+ };
596
+ }
597
+ function formatRegressionHuman(json) {
598
+ const verdict = json.isError
599
+ ? "ERROR"
600
+ : json.regressed
601
+ ? "REGRESSED"
602
+ : "OK (no regression)";
603
+ const head = `regression check: ${verdict}`;
604
+ const bodyStr = typeof json.result === "string"
605
+ ? json.result
606
+ : JSON.stringify(json.result, null, 2);
607
+ return `${head}\n${bodyStr}`;
608
+ }
234
609
  // ---------------------------------------------------------------------------
235
610
  // help / version
236
611
  // ---------------------------------------------------------------------------
@@ -246,9 +621,19 @@ export function helpText(binName) {
246
621
  " wait-for-ready Poll /ping until the bridge is ready; exit 0/non-zero.",
247
622
  " status Show resolved bridge port, instance lock, and readiness.",
248
623
  " run-tool <name> Invoke an MCP tool by name; print its JSON result.",
624
+ " stream-events Drain bridge SSE events (console logs + state) to stdout.",
625
+ " verify [paths...] Run a verify scan; exit code reflects severity (4-level).",
626
+ " baseline create|update Create/refresh the regression baseline JSON file.",
627
+ " regression check Compare current scan against the baseline; exit on regression.",
249
628
  " --help, -h Show this help.",
250
629
  " --version, -V Print the package version.",
251
630
  "",
631
+ "Exit codes (verify / baseline / regression):",
632
+ " 0 success no issues / no regression.",
633
+ " 1 warnings only warnings/info below the fail threshold.",
634
+ " 2 errors errors present, or a regression was detected.",
635
+ " 3 timeout bridge never became reachable, or a call timed out.",
636
+ "",
252
637
  "Options:",
253
638
  " --json Emit JSON instead of human-readable output (all commands).",
254
639
  " --project <path>, -P <path> Unity project path (default: UNITY_PROJECT_PATH).",
@@ -257,6 +642,16 @@ export function helpText(binName) {
257
642
  " --interval-ms <n> wait-for-ready poll interval in ms.",
258
643
  " --args '<json>' JSON object of tool args (run-tool).",
259
644
  " --arg key=value One tool arg (run-tool, repeatable; JSON-parsed if valid).",
645
+ " --max-events <n> stream-events: max events to drain per pull.",
646
+ " --follow stream-events: keep polling until interrupted (CI log tap).",
647
+ " --mode <m> verify: auto (default) | scan-paths | validate-edit.",
648
+ " --fail-on-severity <s> verify: error | warn | info | verbose | never.",
649
+ " --profile <p> verify: compact (default) | balanced | full.",
650
+ " --include-rules <a,b> verify: comma-separated rule allow-list.",
651
+ " --exclude-rules <a,b> verify: comma-separated rule deny-list.",
652
+ " --platform-profile <p> verify/baseline/regression: mobile | console | desktop.",
653
+ " --baseline-path <path> baseline/regression: path to the baseline JSON file.",
654
+ " --regression-threshold <n> regression: max allowed error-count increase (default 0).",
260
655
  "",
261
656
  "Environment:",
262
657
  " UNITY_PROJECT_PATH Required for every command.",
@@ -267,6 +662,11 @@ export function helpText(binName) {
267
662
  ` ${binName} wait-for-ready`,
268
663
  ` ${binName} run-tool unity_open_mcp_ping --json`,
269
664
  ` ${binName} run-tool unity_open_mcp_list_assets --arg folder=Assets --arg max_per_folder=10`,
665
+ ` ${binName} stream-events --follow`,
666
+ ` ${binName} verify Assets/Prefabs --fail-on-severity warn`,
667
+ ` ${binName} verify --mode scan-paths Assets/Scripts --profile balanced`,
668
+ ` ${binName} baseline create --baseline-path CI/baseline.json`,
669
+ ` ${binName} regression check --baseline-path CI/baseline.json --json`,
270
670
  ` ${binName} status --json`,
271
671
  ].join("\n");
272
672
  }
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /** Canonical CLI exit codes. */
2
+ export declare const EXIT: {
3
+ readonly SUCCESS: 0;
4
+ readonly WARNINGS: 1;
5
+ readonly ERRORS: 2;
6
+ readonly TIMEOUT: 3;
7
+ };
8
+ /** Severity ordering used to classify verify/regression outcomes. */
9
+ export type Severity = "error" | "warn" | "info" | "verbose";
10
+ /** Threshold level a fail_on_severity value resolves to. */
11
+ export type SeverityLevel = 0 | 1 | 2 | 3 | 4;
12
+ /** Per-issue severity counts from a folded verify result. */
13
+ export interface SeverityCounts {
14
+ error?: number;
15
+ warn?: number;
16
+ info?: number;
17
+ verbose?: number;
18
+ }
19
+ /**
20
+ * Resolve a `fail_on_severity` string to a numeric level so counts can be
21
+ * compared against it. Lower level = stricter. Default threshold (omitted or
22
+ * the verify default) is "error" — i.e. only errors fail the exit code.
23
+ */
24
+ export declare function severityThreshold(failOnSeverity: string | undefined, fallback?: Severity): SeverityLevel;
25
+ /**
26
+ * Classify a verify/regression outcome into an exit code from its severity
27
+ * counts and resolved threshold. The threshold decides which severities count
28
+ * as "failing" (errors vs warnings-only):
29
+ *
30
+ * - any severity >= threshold present → EXIT.ERRORS (2)
31
+ * - only severities < threshold present → EXIT.WARNINGS (1)
32
+ * - no issues at all → EXIT.SUCCESS (0)
33
+ *
34
+ * `timeout`/`unreachable` outcomes are caller-supplied (they cannot be inferred
35
+ * from counts) — see withTimeout below.
36
+ */
37
+ export declare function classifyBySeverity(counts: SeverityCounts, threshold: SeverityLevel): number;
38
+ /**
39
+ * Promote an exit code to the timeout code when the bridge was unreachable.
40
+ * Timeout always wins: even if the tool returned a body, an unreachable bridge
41
+ * means the result is not trustworthy for CI gating.
42
+ */
43
+ export declare function withTimeout(exitCode: number, unreachable: boolean): number;
@@ -0,0 +1,78 @@
1
+ // M26 Plan 1 — CLI exit-code contract.
2
+ //
3
+ // The automation CLI exposes a deterministic 4-level exit-code scheme so CI
4
+ // pipelines can branch on outcome without parsing JSON:
5
+ //
6
+ // 0 success — no issues (or no regression).
7
+ // 1 warnings-only — only warnings/info below the fail threshold.
8
+ // 2 errors — errors present (or a regression was detected).
9
+ // 3 timeout/unreachable — the bridge never became reachable, or a tool
10
+ // call timed out.
11
+ //
12
+ // Per execution-plan-1-cli-surface.md scope §2, this 4-level scheme is net-new
13
+ // design (UCP's reference contract is binary 0/1; we adopt the `--json`
14
+ // everywhere model from it, not the exit-code model).
15
+ //
16
+ // Helpers here centralize the mapping so every command agrees on the codes and
17
+ // the docs can reference one source of truth.
18
+ /** Canonical CLI exit codes. */
19
+ export const EXIT = {
20
+ SUCCESS: 0,
21
+ WARNINGS: 1,
22
+ ERRORS: 2,
23
+ TIMEOUT: 3,
24
+ };
25
+ const SEVERITY_LEVEL = {
26
+ verbose: 0,
27
+ info: 1,
28
+ warn: 2,
29
+ error: 3,
30
+ };
31
+ /**
32
+ * Resolve a `fail_on_severity` string to a numeric level so counts can be
33
+ * compared against it. Lower level = stricter. Default threshold (omitted or
34
+ * the verify default) is "error" — i.e. only errors fail the exit code.
35
+ */
36
+ export function severityThreshold(failOnSeverity, fallback = "error") {
37
+ const sev = failOnSeverity ?? fallback;
38
+ return SEVERITY_LEVEL[sev] ?? SEVERITY_LEVEL[fallback];
39
+ }
40
+ /**
41
+ * Classify a verify/regression outcome into an exit code from its severity
42
+ * counts and resolved threshold. The threshold decides which severities count
43
+ * as "failing" (errors vs warnings-only):
44
+ *
45
+ * - any severity >= threshold present → EXIT.ERRORS (2)
46
+ * - only severities < threshold present → EXIT.WARNINGS (1)
47
+ * - no issues at all → EXIT.SUCCESS (0)
48
+ *
49
+ * `timeout`/`unreachable` outcomes are caller-supplied (they cannot be inferred
50
+ * from counts) — see withTimeout below.
51
+ */
52
+ export function classifyBySeverity(counts, threshold) {
53
+ const errorCount = counts.error ?? 0;
54
+ const warnCount = counts.warn ?? 0;
55
+ const infoCount = counts.info ?? 0;
56
+ const verboseCount = counts.verbose ?? 0;
57
+ // Failing severities are those at or above the threshold.
58
+ const failing = (threshold <= SEVERITY_LEVEL.error ? errorCount : 0) +
59
+ (threshold <= SEVERITY_LEVEL.warn ? warnCount : 0) +
60
+ (threshold <= SEVERITY_LEVEL.info ? infoCount : 0) +
61
+ (threshold <= SEVERITY_LEVEL.verbose ? verboseCount : 0);
62
+ if (failing > 0)
63
+ return EXIT.ERRORS;
64
+ // Any non-failing issue present → warnings-only exit code.
65
+ if (errorCount + warnCount + infoCount + verboseCount > 0) {
66
+ return EXIT.WARNINGS;
67
+ }
68
+ return EXIT.SUCCESS;
69
+ }
70
+ /**
71
+ * Promote an exit code to the timeout code when the bridge was unreachable.
72
+ * Timeout always wins: even if the tool returned a body, an unreachable bridge
73
+ * means the result is not trustworthy for CI gating.
74
+ */
75
+ export function withTimeout(exitCode, unreachable) {
76
+ return unreachable ? EXIT.TIMEOUT : exitCode;
77
+ }
78
+ //# sourceMappingURL=exit-codes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exit-codes.js","sourceRoot":"","sources":["../../src/cli/exit-codes.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,EAAE;AACF,4EAA4E;AAC5E,wDAAwD;AACxD,EAAE;AACF,yDAAyD;AACzD,wEAAwE;AACxE,0EAA0E;AAC1E,0EAA0E;AAC1E,6CAA6C;AAC7C,EAAE;AACF,+EAA+E;AAC/E,wEAAwE;AACxE,sDAAsD;AACtD,EAAE;AACF,+EAA+E;AAC/E,8CAA8C;AAE9C,gCAAgC;AAChC,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,OAAO,EAAE,CAAC;CACF,CAAC;AAQX,MAAM,cAAc,GAAoC;IACtD,OAAO,EAAE,CAAC;IACV,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;CACT,CAAC;AAUF;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,cAAkC,EAClC,WAAqB,OAAO;IAE5B,MAAM,GAAG,GAAI,cAA2B,IAAI,QAAQ,CAAC;IACrD,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAChC,MAAsB,EACtB,SAAwB;IAExB,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;IACrC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IACnC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;IAEzC,0DAA0D;IAC1D,MAAM,OAAO,GACX,CAAC,SAAS,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC,SAAS,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3D,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC;IACpC,2DAA2D;IAC3D,IAAI,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,QAAgB,EAAE,WAAoB;IAChE,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC/C,CAAC"}