agentworkshop 0.7.50 → 0.7.52

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 (263) hide show
  1. package/.AgentWorkShop/prompts/host-tools.json +2028 -1955
  2. package/.output/.AgentWorkShop/prompts/host-tools.json +2028 -1955
  3. package/.output/nitro.json +1 -1
  4. package/.output/public/_nuxt/{CdIsmU5a2.js → 4wrEQ3np2.js} +1 -1
  5. package/.output/public/_nuxt/{asmJ99nX2.js → B8zP7kaj2.js} +1 -1
  6. package/.output/public/_nuxt/{D89BUtx6.js → B9cGf8mg.js} +1 -1
  7. package/.output/public/_nuxt/{CP0I2l-6.js → BVzw5a_0.js} +1 -1
  8. package/.output/public/_nuxt/{CFQSjB1h.js → B_opxrHJ.js} +1 -1
  9. package/.output/public/_nuxt/{BGAaKBeo2.js → BiUhxH3t2.js} +1 -1
  10. package/.output/public/_nuxt/{B7jlMWsz.js → C00Rd6Cg.js} +1 -1
  11. package/.output/public/_nuxt/{BOmDHp5L.js → CGQvF-Gg.js} +3 -3
  12. package/.output/public/_nuxt/CTvh8v4T.js +1 -0
  13. package/.output/public/_nuxt/{B9QzrmgE.js → Cbeifv55.js} +1 -1
  14. package/.output/public/_nuxt/{BWU1pvLL.js → CcGuXiOa.js} +1 -1
  15. package/.output/public/_nuxt/{zh-S_7rN2.js → CkPxL4UX2.js} +1 -1
  16. package/.output/public/_nuxt/{DzfVS8N72.js → D_Ce9Fon2.js} +1 -1
  17. package/.output/public/_nuxt/{DClNt1uS.js → Da90gveK.js} +1 -1
  18. package/.output/public/_nuxt/builds/latest.json +1 -1
  19. package/.output/public/_nuxt/builds/meta/c64014ca-3595-4b7a-a5ca-055687c83ba2.json +1 -0
  20. package/.output/public/_nuxt/channel-templates.DkNZg-lF.css +1 -0
  21. package/.output/public/_nuxt/{JAM4aNC_.js → evt5VGDh.js} +1 -1
  22. package/.output/public/_nuxt/{DhFv8S2Z.js → mNnuUoSy.js} +1 -1
  23. package/.output/public/_nuxt/{CU-mhG0-.js → mgWHSRc8.js} +1 -1
  24. package/.output/public/_nuxt/{jRTz0hjN2.js → qPsch_ny2.js} +1 -1
  25. package/.output/public/_nuxt/{lWYQbIR3.js → ty5W5QwO.js} +1 -1
  26. package/.output/public/_nuxt/{DMYYS5sK.js → xQX5r6tW.js} +1 -1
  27. package/.output/server/chunks/_/character-asset.repo.mjs +1 -1
  28. package/.output/server/chunks/_/entity.mjs +1 -1
  29. package/.output/server/chunks/_/host-bindings.mjs +1 -1
  30. package/.output/server/chunks/_/nitro.mjs +1123 -881
  31. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  32. package/.output/server/chunks/_/scene-layout.repo.mjs +1 -1
  33. package/.output/server/chunks/build/TownView-fP9BiALv.mjs +1 -1
  34. package/.output/server/chunks/build/{_wsId_-DPy2BXRd.mjs → _wsId_-C4L9fVHC.mjs} +2 -2
  35. package/.output/server/chunks/build/{_wsId_-DPy2BXRd.mjs.map → _wsId_-C4L9fVHC.mjs.map} +1 -1
  36. package/.output/server/chunks/build/{agents-CDLcboCv.mjs → agents-ydYu-Ol9.mjs} +6 -6
  37. package/.output/server/chunks/build/{agents-CDLcboCv.mjs.map → agents-ydYu-Ol9.mjs.map} +1 -1
  38. package/.output/server/chunks/build/{channel-templates-DjEsj0_v.mjs → channel-templates-DP1ndA5K.mjs} +114 -25
  39. package/.output/server/chunks/build/channel-templates-DP1ndA5K.mjs.map +1 -0
  40. package/.output/server/chunks/build/daq-N69AOtgw.mjs +1 -1
  41. package/.output/server/chunks/build/dcw-CN9d3Rs7.mjs +1 -1
  42. package/.output/server/chunks/build/{pages-rZKH72eC.mjs → pages-BzmrmLL_.mjs} +3 -3
  43. package/.output/server/chunks/build/{pages-rZKH72eC.mjs.map → pages-BzmrmLL_.mjs.map} +1 -1
  44. package/.output/server/chunks/build/{schedules-lo4bfgVt.mjs → schedules-BYR-lA1k.mjs} +2 -2
  45. package/.output/server/chunks/build/{schedules-lo4bfgVt.mjs.map → schedules-BYR-lA1k.mjs.map} +1 -1
  46. package/.output/server/chunks/build/{settings-CAJWvul5.mjs → settings-UyZ78w2e.mjs} +2 -2
  47. package/.output/server/chunks/build/{settings-CAJWvul5.mjs.map → settings-UyZ78w2e.mjs.map} +1 -1
  48. package/.output/server/chunks/build/{teams-DBBvIToa.mjs → teams-D-Y5mzU7.mjs} +8 -8
  49. package/.output/server/chunks/build/{teams-DBBvIToa.mjs.map → teams-D-Y5mzU7.mjs.map} +1 -1
  50. package/.output/server/chunks/build/types-D6J7slEa.mjs +1 -1
  51. package/.output/server/chunks/build/{useAgentHarnessOptions-D6SJ_uUr.mjs → useAgentHarnessOptions-CRyQYYY0.mjs} +2 -2
  52. package/.output/server/chunks/build/{useAgentHarnessOptions-D6SJ_uUr.mjs.map → useAgentHarnessOptions-CRyQYYY0.mjs.map} +1 -1
  53. package/.output/server/chunks/build/{useAgentTemplateActions-CdG4g_PF.mjs → useAgentTemplateActions-CaRsOBmB.mjs} +2 -2
  54. package/.output/server/chunks/build/{useAgentTemplateActions-CdG4g_PF.mjs.map → useAgentTemplateActions-CaRsOBmB.mjs.map} +1 -1
  55. package/.output/server/chunks/build/{useAgentTemplateForm-a5y-N5sB.mjs → useAgentTemplateForm-ChiIuPYr.mjs} +2 -2
  56. package/.output/server/chunks/build/{useAgentTemplateForm-a5y-N5sB.mjs.map → useAgentTemplateForm-ChiIuPYr.mjs.map} +1 -1
  57. package/.output/server/chunks/build/{useAgentTemplatesCatalog-pBVcUuN3.mjs → useAgentTemplatesCatalog-Bf5hk6Jf.mjs} +2 -2
  58. package/.output/server/chunks/build/{useAgentTemplatesCatalog-pBVcUuN3.mjs.map → useAgentTemplatesCatalog-Bf5hk6Jf.mjs.map} +1 -1
  59. package/.output/server/chunks/build/useDaqAddNode-kW7uTSMQ.mjs +1 -1
  60. package/.output/server/chunks/build/useDaqDetailNode-D_vhG0jF.mjs +1 -1
  61. package/.output/server/chunks/build/useDaqDetailParams-JfqHvTxr.mjs +1 -1
  62. package/.output/server/chunks/build/useDaqFilters-BUQtZ82a.mjs +1 -1
  63. package/.output/server/chunks/build/useDaqStream-wOxZcMDA.mjs +1 -1
  64. package/.output/server/chunks/build/useDaqTemplates-BqQRdrIm.mjs +1 -1
  65. package/.output/server/chunks/build/{useDashboardData-Do_Vsepa.mjs → useDashboardData-CNOY4Bi3.mjs} +2 -2
  66. package/.output/server/chunks/build/{useDashboardData-Do_Vsepa.mjs.map → useDashboardData-CNOY4Bi3.mjs.map} +1 -1
  67. package/.output/server/chunks/build/useDcwAddNode-C1HDP3yG.mjs +1 -1
  68. package/.output/server/chunks/build/useDcwStream-D04kCV3J.mjs +1 -1
  69. package/.output/server/chunks/build/{useTeamActions-C4n-taBk.mjs → useTeamActions-C51ciLb0.mjs} +2 -2
  70. package/.output/server/chunks/build/{useTeamActions-C4n-taBk.mjs.map → useTeamActions-C51ciLb0.mjs.map} +1 -1
  71. package/.output/server/chunks/build/{useTeamAddMemberDialog-Cp_z3nMa.mjs → useTeamAddMemberDialog-DthpCMP8.mjs} +2 -2
  72. package/.output/server/chunks/build/{useTeamAddMemberDialog-Cp_z3nMa.mjs.map → useTeamAddMemberDialog-DthpCMP8.mjs.map} +1 -1
  73. package/.output/server/chunks/build/{useTeamCreateDialog-C8LKUoe2.mjs → useTeamCreateDialog-Dc2KTwyg.mjs} +2 -2
  74. package/.output/server/chunks/build/{useTeamCreateDialog-C8LKUoe2.mjs.map → useTeamCreateDialog-Dc2KTwyg.mjs.map} +1 -1
  75. package/.output/server/chunks/build/{useTeamDeployDialog-wdBVsNWY.mjs → useTeamDeployDialog-CXpvPnJD.mjs} +2 -2
  76. package/.output/server/chunks/build/{useTeamDeployDialog-wdBVsNWY.mjs.map → useTeamDeployDialog-CXpvPnJD.mjs.map} +1 -1
  77. package/.output/server/chunks/build/{useTeamPluginDialog-CIk8G8nI.mjs → useTeamPluginDialog-DTs-7SSm.mjs} +2 -2
  78. package/.output/server/chunks/build/{useTeamPluginDialog-CIk8G8nI.mjs.map → useTeamPluginDialog-DTs-7SSm.mjs.map} +1 -1
  79. package/.output/server/chunks/build/{useTeamsCatalog-D6TULzmS.mjs → useTeamsCatalog-CcpetYyW.mjs} +2 -2
  80. package/.output/server/chunks/build/{useTeamsCatalog-D6TULzmS.mjs.map → useTeamsCatalog-CcpetYyW.mjs.map} +1 -1
  81. package/.output/server/chunks/build/{useWorkshopApi-B1B9vd4m.mjs → useWorkshopApi-CO3ophqt.mjs} +5 -2
  82. package/.output/server/chunks/build/{useWorkshopApi-B1B9vd4m.mjs.map → useWorkshopApi-CO3ophqt.mjs.map} +1 -1
  83. package/.output/server/chunks/routes/api/mcp/workshop.mjs +1 -1
  84. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs +54 -0
  85. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/grant.post.mjs.map +1 -0
  86. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs +51 -0
  87. package/.output/server/chunks/routes/api/workshop/agent-tools/bindings/revoke.post.mjs.map +1 -0
  88. package/.output/server/chunks/routes/api/workshop/agent-tools/index2.get.mjs +1 -1
  89. package/.output/server/chunks/routes/api/workshop/agent-tools/invoke.post.mjs +1 -1
  90. package/.output/server/chunks/routes/api/workshop/agent-tools/list.get.mjs +1 -1
  91. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id/preview.get.mjs +1 -1
  92. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.delete.mjs +1 -1
  93. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.get.mjs +1 -1
  94. package/.output/server/chunks/routes/api/workshop/aml/datasets/_id_.patch.mjs +1 -1
  95. package/.output/server/chunks/routes/api/workshop/aml/entities/prune.post.mjs +1 -1
  96. package/.output/server/chunks/routes/api/workshop/aml/env/recheck.post.mjs +1 -1
  97. package/.output/server/chunks/routes/api/workshop/aml/env/uv.post.mjs +1 -1
  98. package/.output/server/chunks/routes/api/workshop/aml/env/venv.post.mjs +1 -1
  99. package/.output/server/chunks/routes/api/workshop/aml/index.get.mjs +1 -1
  100. package/.output/server/chunks/routes/api/workshop/aml/index.post.mjs +1 -1
  101. package/.output/server/chunks/routes/api/workshop/aml/index2.post.mjs +1 -1
  102. package/.output/server/chunks/routes/api/workshop/aml/index3.get.mjs +1 -1
  103. package/.output/server/chunks/routes/api/workshop/aml/index3.post.mjs +1 -1
  104. package/.output/server/chunks/routes/api/workshop/aml/index4.get.mjs +1 -1
  105. package/.output/server/chunks/routes/api/workshop/aml/index5.get.mjs +1 -1
  106. package/.output/server/chunks/routes/api/workshop/aml/index6.get.mjs +1 -1
  107. package/.output/server/chunks/routes/api/workshop/aml/index7.get.mjs +1 -1
  108. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/cancel.post.mjs +1 -1
  109. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/logs.get.mjs +1 -1
  110. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id/retry.post.mjs +1 -1
  111. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.delete.mjs +1 -1
  112. package/.output/server/chunks/routes/api/workshop/aml/jobs/_id_.get.mjs +1 -1
  113. package/.output/server/chunks/routes/api/workshop/aml/models/_id/predict.post.mjs +1 -1
  114. package/.output/server/chunks/routes/api/workshop/aml/models/_id/promote.post.mjs +1 -1
  115. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.delete.mjs +1 -1
  116. package/.output/server/chunks/routes/api/workshop/aml/models/_id_.patch.mjs +1 -1
  117. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id/train.post.mjs +1 -1
  118. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.delete.mjs +1 -1
  119. package/.output/server/chunks/routes/api/workshop/aml/training-plans/_id_.patch.mjs +1 -1
  120. package/.output/server/chunks/routes/api/workshop/aml/twin/providers.get.mjs +1 -1
  121. package/.output/server/chunks/routes/api/workshop/assets/index.post.mjs +1 -1
  122. package/.output/server/chunks/routes/api/workshop/assets/index2.post.mjs +1 -1
  123. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +5 -4
  124. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs.map +1 -1
  125. package/.output/server/chunks/routes/api/workshop/channels/_id/activate.post.mjs +1 -1
  126. package/.output/server/chunks/routes/api/workshop/channels/_id/chat/index.post.mjs +1 -1
  127. package/.output/server/chunks/routes/api/workshop/channels/_id/index.post.mjs +1 -1
  128. package/.output/server/chunks/routes/api/workshop/channels/_id/index.put.mjs +1 -1
  129. package/.output/server/chunks/routes/api/workshop/channels/_id/index3.post.mjs +1 -1
  130. package/.output/server/chunks/routes/api/workshop/channels/_id/index4.post.mjs +1 -1
  131. package/.output/server/chunks/routes/api/workshop/channels/_id/index5.get.mjs +1 -1
  132. package/.output/server/chunks/routes/api/workshop/channels/_id/terminals.get.mjs +1 -1
  133. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.get.mjs +1 -1
  134. package/.output/server/chunks/routes/api/workshop/channels/_id/twin-profile.patch.mjs +1 -1
  135. package/.output/server/chunks/routes/api/workshop/channels/index.get.mjs +1 -1
  136. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +4 -4
  137. package/.output/server/chunks/routes/api/workshop/daq/_id/bind.post.mjs +1 -1
  138. package/.output/server/chunks/routes/api/workshop/daq/_id/bindings.put.mjs +1 -1
  139. package/.output/server/chunks/routes/api/workshop/daq/_id/frames/content.get.mjs +1 -1
  140. package/.output/server/chunks/routes/api/workshop/daq/_id/frames.get.mjs +1 -1
  141. package/.output/server/chunks/routes/api/workshop/daq/_id/samples.get.mjs +1 -1
  142. package/.output/server/chunks/routes/api/workshop/daq/_id/test.post.mjs +1 -1
  143. package/.output/server/chunks/routes/api/workshop/daq/_id_.delete.mjs +1 -1
  144. package/.output/server/chunks/routes/api/workshop/daq/_id_.patch.mjs +1 -1
  145. package/.output/server/chunks/routes/api/workshop/daq/alarms/_id/ack.post.mjs +1 -1
  146. package/.output/server/chunks/routes/api/workshop/daq/controller.post.mjs +1 -1
  147. package/.output/server/chunks/routes/api/workshop/daq/index.post.mjs +1 -1
  148. package/.output/server/chunks/routes/api/workshop/daq/infra/reconnect.post.mjs +1 -1
  149. package/.output/server/chunks/routes/api/workshop/daq/infra.get.mjs +1 -1
  150. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.delete.mjs +1 -1
  151. package/.output/server/chunks/routes/api/workshop/daq/templates/_key_.patch.mjs +1 -1
  152. package/.output/server/chunks/routes/api/workshop/daq/test-driver.post.mjs +1 -1
  153. package/.output/server/chunks/routes/api/workshop/dcw/_id/bind.post.mjs +1 -1
  154. package/.output/server/chunks/routes/api/workshop/dcw/_id/bindings.put.mjs +1 -1
  155. package/.output/server/chunks/routes/api/workshop/dcw/_id/param-ledger.get.mjs +1 -1
  156. package/.output/server/chunks/routes/api/workshop/dcw/_id/read.post.mjs +1 -1
  157. package/.output/server/chunks/routes/api/workshop/dcw/_id/test.post.mjs +1 -1
  158. package/.output/server/chunks/routes/api/workshop/dcw/_id/write.post.mjs +1 -1
  159. package/.output/server/chunks/routes/api/workshop/dcw/_id_.delete.mjs +1 -1
  160. package/.output/server/chunks/routes/api/workshop/dcw/_id_.patch.mjs +1 -1
  161. package/.output/server/chunks/routes/api/workshop/dcw/controller.post.mjs +1 -1
  162. package/.output/server/chunks/routes/api/workshop/dcw/index.get.mjs +1 -1
  163. package/.output/server/chunks/routes/api/workshop/dcw/index.post.mjs +1 -1
  164. package/.output/server/chunks/routes/api/workshop/dcw/index2.get.mjs +1 -1
  165. package/.output/server/chunks/routes/api/workshop/dcw/index2.post.mjs +1 -1
  166. package/.output/server/chunks/routes/api/workshop/dcw/index3.get.mjs +1 -1
  167. package/.output/server/chunks/routes/api/workshop/dcw/index3.post.mjs +1 -1
  168. package/.output/server/chunks/routes/api/workshop/dcw/index4.get.mjs +1 -1
  169. package/.output/server/chunks/routes/api/workshop/dcw/index4.post.mjs +1 -1
  170. package/.output/server/chunks/routes/api/workshop/dcw/index5.get.mjs +1 -1
  171. package/.output/server/chunks/routes/api/workshop/dcw/index5.post.mjs +1 -1
  172. package/.output/server/chunks/routes/api/workshop/dcw/index6.get.mjs +1 -1
  173. package/.output/server/chunks/routes/api/workshop/dcw/journal/node/_nodeId/rollback.post.mjs +1 -1
  174. package/.output/server/chunks/routes/api/workshop/dcw/line/query.get.mjs +1 -1
  175. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/start.post.mjs +1 -1
  176. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id/stop.post.mjs +1 -1
  177. package/.output/server/chunks/routes/api/workshop/dcw/lines/_id_.delete.mjs +1 -1
  178. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/judge.post.mjs +1 -1
  179. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/rollback.post.mjs +1 -1
  180. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id/series.get.mjs +1 -1
  181. package/.output/server/chunks/routes/api/workshop/dcw/optimizations/_id_.get.mjs +1 -1
  182. package/.output/server/chunks/routes/api/workshop/dcw/params/_id/read.post.mjs +1 -1
  183. package/.output/server/chunks/routes/api/workshop/dcw/params/_id/write.post.mjs +1 -1
  184. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.delete.mjs +1 -1
  185. package/.output/server/chunks/routes/api/workshop/dcw/params/_id_.patch.mjs +1 -1
  186. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.delete.mjs +1 -1
  187. package/.output/server/chunks/routes/api/workshop/dcw/products/_id_.patch.mjs +1 -1
  188. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/apply.post.mjs +1 -1
  189. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/mark-good.post.mjs +1 -1
  190. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id/rollback-good.post.mjs +1 -1
  191. package/.output/server/chunks/routes/api/workshop/dcw/recipes/_id_.delete.mjs +1 -1
  192. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/close.post.mjs +1 -1
  193. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/data.get.mjs +1 -1
  194. package/.output/server/chunks/routes/api/workshop/dcw/runs/_id/rollback.post.mjs +1 -1
  195. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.delete.mjs +1 -1
  196. package/.output/server/chunks/routes/api/workshop/dcw/templates/_key_.patch.mjs +1 -1
  197. package/.output/server/chunks/routes/api/workshop/dcw/test-driver.post.mjs +1 -1
  198. package/.output/server/chunks/routes/api/workshop/device-twins/_id/control.post.mjs +1 -1
  199. package/.output/server/chunks/routes/api/workshop/device-twins/_id/telemetry.post.mjs +1 -1
  200. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.delete.mjs +1 -1
  201. package/.output/server/chunks/routes/api/workshop/device-twins/_id_.patch.mjs +1 -1
  202. package/.output/server/chunks/routes/api/workshop/harnesses/_id/providers.get.mjs +1 -1
  203. package/.output/server/chunks/routes/api/workshop/harnesses.get.mjs +1 -1
  204. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +1 -1
  205. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +1 -1
  206. package/.output/server/chunks/routes/api/workshop/index.put.mjs +1 -1
  207. package/.output/server/chunks/routes/api/workshop/index2.get.mjs +1 -1
  208. package/.output/server/chunks/routes/api/workshop/index3.post.mjs +1 -1
  209. package/.output/server/chunks/routes/api/workshop/index4.post.mjs +1 -1
  210. package/.output/server/chunks/routes/api/workshop/index5.get.mjs +1 -1
  211. package/.output/server/chunks/routes/api/workshop/index5.post.mjs +1 -1
  212. package/.output/server/chunks/routes/api/workshop/index6.get.mjs +1 -1
  213. package/.output/server/chunks/routes/api/workshop/index6.post.mjs +1 -1
  214. package/.output/server/chunks/routes/api/workshop/index7.get.mjs +1 -1
  215. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
  216. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
  217. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  218. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  219. package/.output/server/chunks/routes/api/workshop/teams/_id/deploy.post.mjs +1 -1
  220. package/.output/server/chunks/routes/api/workshop/teams/_id/index.put.mjs +1 -1
  221. package/.output/server/chunks/routes/api/workshop/teams/_id/index2.get.mjs +1 -1
  222. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +2 -2
  223. package/.output/server/chunks/routes/renderer.mjs +2 -2
  224. package/.output/server/chunks/virtual/entry.mjs +29 -19
  225. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  226. package/.output/server/package.json +1 -1
  227. package/README-zh.md +829 -829
  228. package/README.md +839 -839
  229. package/app/composables/workshop/useWorkshopApi.ts +4 -2
  230. package/app/pages/workshop/channel-templates.vue +43 -4
  231. package/config.yml +1 -1
  232. package/docs/cli.en.md +447 -447
  233. package/docs/cli.md +412 -412
  234. package/docs/mcp.en.md +27 -0
  235. package/docs/mcp.md +108 -0
  236. package/docs/plugins.en.md +1 -1
  237. package/docs/plugins.md +1 -1
  238. package/docs/sdk.en.md +1 -1
  239. package/docs/sdk.md +1 -1
  240. package/i18n/dicts/ctpl.json +37 -32
  241. package/i18n/locales/en.ts +5 -0
  242. package/i18n/locales/zh-CN.ts +5 -0
  243. package/mcp/aw-mcp-server.mjs +796 -0
  244. package/mcp/discovery.mjs +227 -0
  245. package/package.json +4 -1
  246. package/scripts/_audit/kb-team-mock-e2e.mjs +146 -0
  247. package/scripts/_audit/kb-team-omp-e2e.mjs +229 -0
  248. package/server/api/workshop/agent-tools/bindings/grant.post.ts +45 -0
  249. package/server/api/workshop/agent-tools/bindings/revoke.post.ts +42 -0
  250. package/server/api/workshop/channel-templates/[id]/instantiate.post.ts +2 -1
  251. package/server/services/workshop/agents/host-tool-bridge/dispatch.ts +6 -1
  252. package/server/services/workshop/agents/host-tool-bridge/tools/tasks.ts +15 -2
  253. package/server/services/workshop/agents/host-tool-bridge/tools/team-delegation.ts +104 -0
  254. package/server/services/workshop/agents/node-bindings.repo.ts +10 -1
  255. package/server/services/workshop/agents/node-delegation.ts +150 -0
  256. package/server/services/workshop/agents/tool-classes.ts +2 -0
  257. package/server/services/workshop/db/database/seed.ts +20 -0
  258. package/server/services/workshop/runtime/manager/channel-templates.ts +26 -2
  259. package/server/services/workshop/runtime/manager/types.ts +2 -0
  260. package/.output/public/_nuxt/8FXd9As6.js +0 -1
  261. package/.output/public/_nuxt/builds/meta/08ba670b-7512-426b-a0ae-b10cbeb1c985.json +0 -1
  262. package/.output/public/_nuxt/channel-templates.DplM1pJ3.css +0 -1
  263. package/.output/server/chunks/build/channel-templates-DjEsj0_v.mjs.map +0 -1
package/docs/mcp.en.md ADDED
@@ -0,0 +1,27 @@
1
+ # aw Industrial MCP Server (mcp/)
2
+
3
+ > Integration entry for external skills / MCP clients / engineer workbenches: exposes the
4
+ > platform's key REST methods as first-class MCP tools and **auto-discovers the port of the
5
+ > running local instance** — mount it and it just works, no manual port wiring.
6
+
7
+ See [docs/mcp.md](../mcp.md) (Chinese, authoritative) for the full reference. Summary:
8
+
9
+ - **Launch**: `aw mcp` (stdio) · `aw mcp --doctor` (diagnose) · `aw mcp --print-config`
10
+ - **Port discovery priority**: `AW_BASE_URL` → `AW_PORT` → `.runtime/aw.lock` lock files
11
+ (explicit `AW_HOME` wins over implicit cwd/home discovery) → `PORT`/`NUXT_PORT` →
12
+ `config.yml` `server.dev.port`/`server.prod.port` → defaults 3000/3001.
13
+ Health gate: `GET /api/health` must return `data.status === 'ok'`.
14
+ - **Self-healing**: network failures invalidate the cached base and trigger one re-discovery +
15
+ retry; 401 clears the token and lazy-relogins once. Bad credentials fail fast (no re-discovery).
16
+ - **Auth**: `AW_TOKEN`, or `AW_EMAIL` + `AW_PASSWORD` (lazy login), or the `aw_login` tool.
17
+ - **Tool surface (35)**: connection (`aw_status`, `aw_login`); lines/products/recipes
18
+ (`aw_line_*`, `aw_product_create`, `aw_recipe_create`); DCW nodes & parameter map
19
+ (`aw_dcw_*`, `aw_param_*`); DAQ (`aw_daq_*`); optimization channels
20
+ (`aw_channel_*`, `aw_channel_template_instantiate`, `aw_team_provision`,
21
+ `aw_agent_tool_bind/invoke`, `aw_twin_profile_get/patch`, `aw_task_*`, `aw_model_*`,
22
+ `aw_optimization_judge`); plugins (`aw_plugin_list`, `aw_plugin_toggle`);
23
+ escape hatch (`aw_request`, `/api/` prefix only).
24
+ - **Skills**: `skills/aw-node-bind`, `skills/aw-opt-channel`, `skills/aw-plugin-dev` are built
25
+ on top of this server (`npm run test:skills` validates cross-references).
26
+ - **Tests**: `npm run test:mcp` (unit, 12 test groups) · `npm run test:mcp-live`
27
+ (isolated-instance e2e, 34 assertions).
package/docs/mcp.md ADDED
@@ -0,0 +1,108 @@
1
+ # aw 工业 MCP 服务(mcp/)
2
+
3
+ > 面向外部 skill / MCP 客户端 / 工程师工作台的集成入口:把平台关键 REST 方法暴露为
4
+ > 一等 MCP 工具,并**自动发现本机运行实例的端口**——挂上就能用,不要求手填端口。
5
+
6
+ ## 一、它解决什么
7
+
8
+ 平台已有两个 MCP 面,分工如下:
9
+
10
+ | MCP 面 | 位置 | 面向 | 鉴权 |
11
+ | --- | --- | --- | --- |
12
+ | **aw 工业 MCP**(本文) | `mcp/aw-mcp-server.mjs`(stdio) | 外部 skill、桌面 MCP 客户端、CI 脚本 | 用户 token(AW_TOKEN 或 AW_EMAIL/AW_PASSWORD) |
13
+ | host tools 回程桥 | `server/harness/aw-mcp-bridge.mjs`(stdio) | 频道内 harness 引擎(codex/dsh/opencode…) | agent 实例 token |
14
+ | Workshop MCP(Streamable HTTP) | `POST /api/mcp/workshop` | 平台侧任务/消息/设备孪生 | Bearer token |
15
+
16
+ 工业 MCP 暴露的是**工程操作面**(产线/节点绑定/参数映射/配方/优化闭环频道/插件),
17
+ 与频道内 agent 的 host tool 面(`.AgentWorkShop/prompts/host-tools.json`)互补。
18
+
19
+ ## 二、快速开始
20
+
21
+ ```bash
22
+ aw mcp --doctor # 诊断:自动发现过程 → 健康 → 鉴权,一次讲清
23
+ aw mcp --print-config # 打印 MCP 客户端配置 JSON
24
+ aw mcp # 启动 stdio 服务(由 MCP 客户端作为子进程拉起)
25
+ ```
26
+
27
+ 客户端配置(claude_desktop_config.json / codex config.toml 通用形态):
28
+
29
+ ```json
30
+ { "mcpServers": { "aw": { "command": "node", "args": ["<仓库>/mcp/aw-mcp-server.mjs"], "env": {} } } }
31
+ ```
32
+
33
+ ## 三、端口自动发现(核心机制)
34
+
35
+ 发现优先级(逐级 `GET /api/health` 探活,`data.status==='ok'` 才算命中;全失败才报错):
36
+
37
+ 1. `AW_BASE_URL` —— 显式平台地址
38
+ 2. `AW_PORT` —— 多实例并存时钉住端口
39
+ 3. 锁文件 `<configRoot>/.runtime/aw.lock`(`{pid,port,mode}`,`aw start` 端口顺延后回写,
40
+ 是实例真实端口的唯一权威记录):
41
+ - 显式 `AW_HOME` 时:先 `AW_HOME/.runtime/aw.lock` 与 `AW_HOME/.AgentWorkShop/.runtime/aw.lock`,
42
+ 再 cwd 向上找 repo 锁(**显式 AW_HOME 压过隐式发现,且不回落全局 home 锁**——多实例隔离语义)
43
+ - 未设 `AW_HOME` 时:cwd 向上找 `.AgentWorkShop/.runtime/aw.lock`,再 `~/.AgentWorkShop/.runtime/aw.lock`
44
+ 4. `PORT` / `NUXT_PORT`(启动惯例变量)
45
+ 5. `config.yml` 的 `server.dev.port` / `server.prod.port`(零依赖轻量解析)
46
+ 6. 默认端口 3000(dev)/ 3001(prod)
47
+
48
+ **确保连接**:会话内缓存发现结果;任何工具调用遇到网络层失败,自动作废缓存重发现一次再重试
49
+ (实例顺延换端口后下一发即自愈)。401 时作废 token 懒重登录一次。
50
+ 登录失败(凭据错误)不触发重发现,直接报错。
51
+
52
+ ## 四、鉴权
53
+
54
+ - `AW_TOKEN`:直接携带(优先)。
55
+ - `AW_EMAIL` + `AW_PASSWORD`:首次鉴权调用时懒登录 `POST /api/users/login`,token 会话内缓存。
56
+ - 都没有:工具返回带补救指引的错误;客户端也可在会话里调 `aw_login` 工具显式登录。
57
+ - 实例从未初始化管理员:先走 Web `/setup` 注册(首注册即 admin),MCP 不代注册。
58
+
59
+ ## 四点五、集成开关(系统设置)
60
+
61
+ - 设置项:`系统设置 → MCP 集成 → 启动 MCP 集成`(`mcp.enabled`,live 键,默认**停用**)。
62
+ 也可用环境变量 `AW_MCP_ENABLED=true` 覆盖(CI/无人值守场景)。
63
+ - 语义:停用期间,除 `aw_status`(自诊断)外的**所有 MCP 工具调用被拒绝**,返回指引文本;
64
+ 平台 REST 与频道内 agent 的 host tools 不受影响。切换 ≤3s 传导到 MCP 服务,无需重启。
65
+ - 三个项目 skill(`skills/`)的前置步骤 0 都会检查该开关(`aw_status` 的 `mcpEnabled` 字段)。
66
+ - 注意:设置页出现「MCP 集成」分组需要实例运行带该描述符的构建(`shared/config/schema.json`,
67
+ 2026-09-27 加入);文件路径(写 `<configRoot>/runtime-settings.json`)与 env 路径不依赖构建。
68
+
69
+ ## 五、工具面(35 个)
70
+
71
+ | 分组 | 工具 |
72
+ | --- | --- |
73
+ | 连接 | `aw_status`(发现+健康+鉴权状态)、`aw_login` |
74
+ | 产线/产品/配方 | `aw_line_list/create/start/stop`、`aw_product_create`、`aw_recipe_create` |
75
+ | DCW 节点与参数映射 | `aw_dcw_snapshot/create/write/read`、`aw_param_list/write/read` |
76
+ | DAQ 数采 | `aw_daq_create`、`aw_daq_controller`、`aw_daq_samples` |
77
+ | 优化闭环频道 | `aw_channel_list/create`、`aw_channel_template_list/instantiate`、`aw_team_provision`(组合:建 agent→team→成员→deploy)、`aw_agent_tool_bind/invoke`、`aw_twin_profile_get/patch`、`aw_task_create/list`、`aw_model_list/promote`、`aw_optimization_judge` |
78
+ | 插件 | `aw_plugin_list`、`aw_plugin_toggle` |
79
+ | 逃生舱 | `aw_request`(通用 REST,path 必须以 `/api/` 开头) |
80
+
81
+ `aw_agent_tool_invoke` 可调用频道成员实例的全部宿主工具面
82
+ (`optimization_explore` / `mpc_optimize` / `twin_*` / `dcw_control` / `param_control` / `daq_query` 等),
83
+ 是探索/寻优闭环的执行通道。
84
+
85
+ ## 六、与 skills 的集成
86
+
87
+ 三个项目级 skill 以本服务为执行底座(`skills/` 目录):
88
+
89
+ - `skills/aw-node-bind/` —— 真实场景节点参数绑定(建线→绑执行点→参数映射→配方开跑→回环验收)
90
+ - `skills/aw-opt-channel/` —— 场景优化闭环频道(模板实例化→剧组→探索→AML 门禁→绑定→投用)
91
+ - `skills/aw-plugin-dev/` —— 插件开发(脚手架→setup(ctx)→热重载验证→发布清单)
92
+
93
+ 规范校验:`npm run test:skills`(含"skill 引用的工具必须真实存在于 MCP 工具面"的一致性检查)。
94
+
95
+ ## 七、测试
96
+
97
+ ```bash
98
+ npm run test:mcp # 单测(12 断言组):锁解析/发现优先级/RPC 面/懒登录/断线重发现/逃生舱守卫
99
+ npm run test:mcp-live # 真实实例 e2e(34 断言):隔离 home 实例 + 零端口提示自发现 + 全链业务
100
+ ```
101
+
102
+ live e2e 的隔离纪律:临时 `AW_HOME` + 端口 3461,结束 `taskkill //T` 清场,不碰真实库。
103
+
104
+ ## 八、已知边界(有意为之)
105
+
106
+ - `GET /api/workshop/plugins` 等少数端点是裸 `defineEventHandler`(无统一信封),服务端已做信封嗅探兼容。
107
+ - MCP 不代理模拟器 REST(presets/export);skill 流程里对模拟器的访问走直连(默认 `http://127.0.0.1:4010`)。
108
+ - `aw_request` 限制 method 白名单与 `/api/` 前缀,不代理任意外网。
@@ -9,7 +9,7 @@
9
9
  >
10
10
  > Applies to: plugin system v2 has been available since **v0.7.29** (frontend component
11
11
  > injection / plugin settings / plugin i18n / runtime services surface); this document
12
- > describes **v0.7.50**. `ctx.sdkVersion` is currently `0.3.0`.
12
+ > describes **v0.7.52**. `ctx.sdkVersion` is currently `0.3.0`.
13
13
 
14
14
  ## 1. Folder layout & quick start
15
15
 
package/docs/plugins.md CHANGED
@@ -6,7 +6,7 @@
6
6
  > 本文是唯一权威参考;`docs/site/plugins/` 的分页文档与本文同源。
7
7
  >
8
8
  > 适用版本:插件系统 v2 自 **v0.7.29** 起可用(前端组件注入 / 插件设置 / 插件 i18n /
9
- > 运行时服务面);本文档对应当前版本 **v0.7.50**。`ctx.sdkVersion` 当前为 `0.3.0`。
9
+ > 运行时服务面);本文档对应当前版本 **v0.7.52**。`ctx.sdkVersion` 当前为 `0.3.0`。
10
10
 
11
11
  ## 一、目录结构与快速开始
12
12
 
package/docs/sdk.en.md CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  **SDK version constants**: server-side `SDK_VERSION = '0.3.0'`, browser-side `CLIENT_SDK_VERSION = '0.3.0'`.
9
9
  These two constants are the **interface version of the SDK itself** and evolve **independently**
10
- from the npm package version (the `version` field in `package.json`, currently 0.7.50) —
10
+ from the npm package version (the `version` field in `package.json`, currently 0.7.52) —
11
11
  them being out of sync is expected. Never use `SDK_VERSION` to infer the package version, or the reverse.
12
12
  **Module format**: ESM only (only `import` / `export`; there is no CJS entry).
13
13
  **Types**: `sdk/index.d.mts` and `sdk/client.d.mts` ship with the package, so TypeScript projects
package/docs/sdk.md CHANGED
@@ -5,7 +5,7 @@
5
5
  > 零第三方运行时依赖,Node ≥ 23.4 与现代浏览器双端可用。
6
6
 
7
7
  **SDK 版本常量**:服务端 `SDK_VERSION = '0.3.0'`,浏览器端 `CLIENT_SDK_VERSION = '0.3.0'`。
8
- 这两个常量是 **SDK 自身接口的版本号**,与 npm 包版本(`package.json` 的 `version`,当前 0.7.50)
8
+ 这两个常量是 **SDK 自身接口的版本号**,与 npm 包版本(`package.json` 的 `version`,当前 0.7.52)
9
9
  **各自独立演进** —— 常数不同步是预期行为,不要拿 `SDK_VERSION` 去推断包版本,反之亦然。
10
10
  **模块形态**:ESM only(只有 `import` / `export`,没有 CJS 入口)。
11
11
  **类型**:`sdk/index.d.mts`、`sdk/client.d.mts` 随包发布,TS 项目零配置获得提示(覆盖范围见 §7)。
@@ -1,32 +1,37 @@
1
- {
2
- "k117jag9001": "删除模板?(已实例化的 Channel 不受影响)",
3
- "knjomku002": "按模板新建 Channel(成员自动装配)",
4
- "k1f55q76003": "模板名称",
5
- "k40gkk004": "描述",
6
- "k1ju32o7005": "选择 lead 模板(可空)",
7
- "k5uq1js006": "Worker 成员模板(实例化时逐个克隆)",
8
- "kqmdkc9007": "选择成员模板(可空)",
9
- "k1q87yho008": "作业场景 Prompt(注入全部成员)",
10
- "kk4u5cr009": "工作目录(留空 = 实例化时默认)",
11
- "k3lrqn0010": "可见性",
12
- "k18gglgp011": "场景 + 工作目录 + 团队的组合模板;一键实例化为 Channel(成员自动装配)。模板按用户隔离,公开后全员可用。",
13
- "krpx6qa012": "返回工作区",
14
- "k1efixrj013": "新建模板",
15
- "ka1gpdj014": "admin 视图:可见全部用户的模板与创建者",
16
- "k3rx4ps015": "空团队",
17
- "k3xakp016": "删除",
18
- "k3mr1fo017": "实例化",
19
- "k19fglby018": "新建第一个 Channel 模板",
20
- "k17jfge3019": "私有(仅本人可见)",
21
- "k191u0u5020": "公开(全员可实例化,仅本人可修改)",
22
- "k3x23c021": "内置",
23
- "k3wv1t022": "公开",
24
- "k447jj023": "私有",
25
- "k1i0ji0y024": "模板名必填",
26
- "kyppebc025": "模板已创建;可在工作区左侧会话栏一键实例化挂载",
27
- "kkziya3026": "已公开:全员可实例化",
28
- "k1xxabaf027": "已转为私有",
29
- "k1oxfuqj028": "已删除模板",
30
- "k1f54iqd029": "模板中心",
31
- "kefkfnl030": "已实例化:{p0}(成员 {p1} 个),到工作区挂载使用"
32
- }
1
+ {
2
+ "k117jag9001": "删除模板?(已实例化的 Channel 不受影响)",
3
+ "knjomku002": "按模板新建 Channel(成员自动装配)",
4
+ "k1f55q76003": "模板名称",
5
+ "k40gkk004": "描述",
6
+ "k1ju32o7005": "选择 lead 模板(可空)",
7
+ "k5uq1js006": "Worker 成员模板(实例化时逐个克隆)",
8
+ "kqmdkc9007": "选择成员模板(可空)",
9
+ "k1q87yho008": "作业场景 Prompt(注入全部成员)",
10
+ "kk4u5cr009": "工作目录(留空 = 实例化时默认)",
11
+ "k3lrqn0010": "可见性",
12
+ "k18gglgp011": "场景 + 工作目录 + 团队的组合模板;一键实例化为 Channel(成员自动装配)。模板按用户隔离,公开后全员可用。",
13
+ "krpx6qa012": "返回工作区",
14
+ "k1efixrj013": "新建模板",
15
+ "ka1gpdj014": "admin 视图:可见全部用户的模板与创建者",
16
+ "k3rx4ps015": "空团队",
17
+ "k3xakp016": "删除",
18
+ "k3mr1fo017": "实例化",
19
+ "k19fglby018": "新建第一个 Channel 模板",
20
+ "k17jfge3019": "私有(仅本人可见)",
21
+ "k191u0u5020": "公开(全员可实例化,仅本人可修改)",
22
+ "k3x23c021": "内置",
23
+ "k3wv1t022": "公开",
24
+ "k447jj023": "私有",
25
+ "k1i0ji0y024": "模板名必填",
26
+ "kyppebc025": "模板已创建;可在工作区左侧会话栏一键实例化挂载",
27
+ "kkziya3026": "已公开:全员可实例化",
28
+ "k1xxabaf027": "已转为私有",
29
+ "k1oxfuqj028": "已删除模板",
30
+ "k1f54iqd029": "模板中心",
31
+ "kefkfnl030": "已实例化:{p0}(成员 {p1} 个),到工作区挂载使用",
32
+ "kbInstTitle": "实例化 {p0}",
33
+ "kbOption": "知识库集成(rag-bridge)",
34
+ "kbHint": "开启后本频道加载知识库插件:优化前先检索场景数据分析与物理机理,收口后由 lead 把经验沉淀入知识库;lead 还可用 team_grant_nodes 把自己绑定的节点授权给 worker。",
35
+ "kbOn": "开启",
36
+ "kbOff": "关闭"
37
+ }
@@ -471,6 +471,11 @@ export default {
471
471
  newTplTitle: 'New channel template',
472
472
  leadTplLabel: 'Lead template (cloned as the channel lead when instantiated)',
473
473
  kefkfnl030: 'Instantiated: {p0} ({p1} members); mount it from the workspace',
474
+ kbInstTitle: 'Instantiate {p0}',
475
+ kbOption: 'Knowledge base integration (rag-bridge)',
476
+ kbHint: 'When on, this channel loads the KB plugin: search scene data-analysis & physics knowledge before optimizing, and the lead sinks experience back after the loop closes; the lead can also grant its own bound nodes to workers via team_grant_nodes.',
477
+ kbOn: 'On',
478
+ kbOff: 'Off',
474
479
  k1f54iqd029: 'Template Hub',
475
480
  k117jag9001: 'Delete template? (Instantiated Channels are not affected)',
476
481
  knjomku002: 'Create Channel from template (members auto-assembled)',
@@ -471,6 +471,11 @@ export default {
471
471
  newTplTitle: '新建 Channel 模板',
472
472
  leadTplLabel: 'Lead 模板(实例化时克隆为 channel lead)',
473
473
  kefkfnl030: '已实例化:{p0}(成员 {p1} 个),到工作区挂载使用',
474
+ kbInstTitle: '实例化 {p0}',
475
+ kbOption: '知识库集成(rag-bridge)',
476
+ kbHint: '开启后本频道加载知识库插件:优化前先检索场景数据分析与物理机理,收口后由 lead 把经验沉淀入知识库;lead 还可用 team_grant_nodes 把自己绑定的节点授权给 worker。',
477
+ kbOn: '开启',
478
+ kbOff: '关闭',
474
479
  k1f54iqd029: '模板中心',
475
480
  k117jag9001: '删除模板?(已实例化的 Channel 不受影响)',
476
481
  knjomku002: '按模板新建 Channel(成员自动装配)',