agentworkshop 0.7.51 → 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 (259) 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 +1209 -967
  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 +2 -2
  228. package/README.md +2 -2
  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 +2 -2
  233. package/docs/cli.md +2 -2
  234. package/docs/plugins.en.md +1 -1
  235. package/docs/plugins.md +1 -1
  236. package/docs/sdk.en.md +1 -1
  237. package/docs/sdk.md +1 -1
  238. package/i18n/dicts/ctpl.json +37 -32
  239. package/i18n/locales/en.ts +5 -0
  240. package/i18n/locales/zh-CN.ts +5 -0
  241. package/package.json +1 -1
  242. package/scripts/_audit/kb-team-mock-e2e.mjs +146 -0
  243. package/scripts/_audit/kb-team-omp-e2e.mjs +229 -0
  244. package/server/api/workshop/agent-tools/bindings/grant.post.ts +45 -0
  245. package/server/api/workshop/agent-tools/bindings/revoke.post.ts +42 -0
  246. package/server/api/workshop/channel-templates/[id]/instantiate.post.ts +2 -1
  247. package/server/services/workshop/agents/host-tool-bridge/dispatch.ts +6 -1
  248. package/server/services/workshop/agents/host-tool-bridge/tools/tasks.ts +15 -2
  249. package/server/services/workshop/agents/host-tool-bridge/tools/team-delegation.ts +104 -0
  250. package/server/services/workshop/agents/node-bindings.repo.ts +10 -1
  251. package/server/services/workshop/agents/node-delegation.ts +150 -0
  252. package/server/services/workshop/agents/tool-classes.ts +2 -0
  253. package/server/services/workshop/db/database/seed.ts +20 -0
  254. package/server/services/workshop/runtime/manager/channel-templates.ts +26 -2
  255. package/server/services/workshop/runtime/manager/types.ts +2 -0
  256. package/.output/public/_nuxt/8FXd9As6.js +0 -1
  257. package/.output/public/_nuxt/builds/meta/912eb5bb-670e-4cc8-b21d-7fc097723466.json +0 -1
  258. package/.output/public/_nuxt/channel-templates.DplM1pJ3.css +0 -1
  259. package/.output/server/chunks/build/channel-templates-DjEsj0_v.mjs.map +0 -1
@@ -0,0 +1,150 @@
1
+ /**
2
+ * node-delegation —— lead → worker 节点权限委派(核心校验面,宿主工具与 REST 共用)。
3
+ *
4
+ * 语义:lead 把**自己已绑定**的 DAQ/DCW 节点授权给同 Channel 的 worker:
5
+ * - 节点必须是 leader 本人已有绑定的节点(权限不可超越授予者,hard rule);
6
+ * - 目标必须是同 Channel 的启用 worker(不能授给 lead 自己/其他频道成员);
7
+ * - 绑定逐 (nodeId, kind) 复制 leader 的 kind/tuning;mode 缺省随 leader,
8
+ * 显式传 mode 可覆盖(auto↔manual 均允许 —— mode 只决定是否走 HITL,不放大节点面);
9
+ * - 委派产生的绑定带 grantedByAgentId/grantedAt 溯源;撤销时 leader 只能撤
10
+ * 「自己授予的」或「自己也持有的」绑定。
11
+ * 校验全部 fail-closed:任何节点不满足 → 整单拒绝并列出明细,不做部分授予。
12
+ */
13
+ import { AppError, ErrorCodes } from '../../../utils/errors'
14
+ import { getAgentNodeBindingRepo, type AgentNodeBinding, type AgentNodeBindingMode } from './node-bindings.repo'
15
+
16
+ export interface DelegationMember {
17
+ id: string
18
+ role: 'lead' | 'worker'
19
+ enabled?: number
20
+ }
21
+
22
+ export interface DelegationGrantInput {
23
+ leaderAgentId: string
24
+ channelId: string
25
+ targetAgentId: string
26
+ nodeIds: string[]
27
+ members: DelegationMember[]
28
+ mode?: AgentNodeBindingMode
29
+ }
30
+
31
+ export interface DelegationPlanItem {
32
+ nodeId: string
33
+ kind: 'dcw' | 'daq'
34
+ mode: AgentNodeBindingMode
35
+ tuning?: AgentNodeBinding['tuning']
36
+ }
37
+
38
+ export interface DelegationPlan {
39
+ targetAgentId: string
40
+ grants: DelegationPlanItem[]
41
+ }
42
+
43
+ /** 前置校验 + 逐节点计划(fail-closed;不落库 —— 落库由调用方按计划执行) */
44
+ export function planDelegation(input: DelegationGrantInput): DelegationPlan {
45
+ const leaderAgentId = String(input.leaderAgentId ?? '')
46
+ const targetAgentId = String(input.targetAgentId ?? '')
47
+ const nodeIds = (Array.isArray(input.nodeIds) ? input.nodeIds : []).map(x => String(x ?? '').trim()).filter(Boolean)
48
+ if (!leaderAgentId || !targetAgentId) throw new AppError(400, ErrorCodes.VALIDATION_ERROR, 'leaderAgentId 与 targetAgentId 必填')
49
+ if (!nodeIds.length) throw new AppError(400, ErrorCodes.VALIDATION_ERROR, 'node_ids 必填(要授予的节点 id 列表)')
50
+
51
+ const members = Array.isArray(input.members) ? input.members : []
52
+ const leader = members.find(m => m.id === leaderAgentId)
53
+ if (!leader || leader.role !== 'lead') {
54
+ throw new AppError(403, 'DELEGATION_NOT_LEAD', '只有频道 lead 可以分发节点权限')
55
+ }
56
+ const target = members.find(m => m.id === targetAgentId)
57
+ if (!target) {
58
+ throw new AppError(404, ErrorCodes.NOT_FOUND, `目标成员不在本频道: ${targetAgentId}(需传频道成员实例 id,可经 GET /api/workshop/channels/:id/agents 获取)`)
59
+ }
60
+ if (target.id === leaderAgentId) {
61
+ throw new AppError(400, ErrorCodes.VALIDATION_ERROR, '不能把节点权限授予 lead 自己(绑定面在 lead 名下已存在)')
62
+ }
63
+ if (target.role !== 'worker') {
64
+ throw new AppError(400, ErrorCodes.VALIDATION_ERROR, '只能向 worker 分发节点权限')
65
+ }
66
+ if (target.enabled === 0) {
67
+ throw new AppError(400, ErrorCodes.VALIDATION_ERROR, `目标成员已被停用: ${targetAgentId}`)
68
+ }
69
+
70
+ const repo = getAgentNodeBindingRepo()
71
+ const leaderBindings = repo.byAgent(leaderAgentId)
72
+ const missing: string[] = []
73
+ const grants: DelegationPlanItem[] = []
74
+ const seen = new Set<string>()
75
+ for (const nodeId of nodeIds) {
76
+ if (seen.has(nodeId)) continue
77
+ seen.add(nodeId)
78
+ const held = leaderBindings.filter(b => b.nodeId === nodeId)
79
+ if (!held.length) {
80
+ missing.push(nodeId)
81
+ continue
82
+ }
83
+ for (const h of held) {
84
+ grants.push({
85
+ nodeId,
86
+ kind: h.kind,
87
+ mode: input.mode ?? h.mode,
88
+ tuning: h.tuning ? { ...h.tuning } : undefined,
89
+ })
90
+ }
91
+ }
92
+ if (missing.length) {
93
+ throw new AppError(403, 'DELEGATION_NOT_OWNED', `以下节点不在 lead 的绑定面内,拒绝授予(权限不可超越授予者):${missing.join('、')}`)
94
+ }
95
+ return { targetAgentId, grants }
96
+ }
97
+
98
+ /** 执行授予:按计划逐条落库(已存在的绑定更新 mode/溯源,不重复建行) */
99
+ export function applyDelegation(plan: DelegationPlan, leaderAgentId: string): AgentNodeBinding[] {
100
+ const repo = getAgentNodeBindingRepo()
101
+ return plan.grants.map((g) => {
102
+ const binding = repo.bind(plan.targetAgentId, g.nodeId, g.kind, g.mode, g.tuning, { grantedByAgentId: leaderAgentId })
103
+ return binding
104
+ })
105
+ }
106
+
107
+ export interface DelegationRevokeInput {
108
+ leaderAgentId: string
109
+ targetAgentId: string
110
+ nodeIds: string[]
111
+ members: DelegationMember[]
112
+ }
113
+
114
+ /** 撤销授予:可撤「自己授予的」或「自己也持有的」绑定;两者都不是 → 拒绝该节点 */
115
+ export function revokeDelegation(input: DelegationRevokeInput): Array<{ nodeId: string, kind: 'dcw' | 'daq', revoked: boolean }> {
116
+ const leaderAgentId = String(input.leaderAgentId ?? '')
117
+ const targetAgentId = String(input.targetAgentId ?? '')
118
+ const nodeIds = (Array.isArray(input.nodeIds) ? input.nodeIds : []).map(x => String(x ?? '').trim()).filter(Boolean)
119
+ if (!leaderAgentId || !targetAgentId || !nodeIds.length) {
120
+ throw new AppError(400, ErrorCodes.VALIDATION_ERROR, 'leaderAgentId / targetAgentId / node_ids 必填')
121
+ }
122
+ const members = Array.isArray(input.members) ? input.members : []
123
+ const leader = members.find(m => m.id === leaderAgentId)
124
+ if (!leader || leader.role !== 'lead') {
125
+ throw new AppError(403, 'DELEGATION_NOT_LEAD', '只有频道 lead 可以撤销节点权限')
126
+ }
127
+ if (!members.some(m => m.id === targetAgentId)) {
128
+ throw new AppError(404, ErrorCodes.NOT_FOUND, `目标成员不在本频道: ${targetAgentId}`)
129
+ }
130
+
131
+ const repo = getAgentNodeBindingRepo()
132
+ const leaderNodes = new Set(repo.byAgent(leaderAgentId).map(b => b.nodeId))
133
+ const out: Array<{ nodeId: string, kind: 'dcw' | 'daq', revoked: boolean }> = []
134
+ for (const nodeId of nodeIds) {
135
+ const workerBindings = repo.byAgent(targetAgentId).filter(b => b.nodeId === nodeId)
136
+ if (!workerBindings.length) {
137
+ for (const kind of ['dcw', 'daq'] as const) out.push({ nodeId, kind, revoked: false })
138
+ continue
139
+ }
140
+ for (const b of workerBindings) {
141
+ const allowed = b.grantedByAgentId === leaderAgentId || leaderNodes.has(nodeId)
142
+ if (!allowed) {
143
+ out.push({ nodeId, kind: b.kind, revoked: false })
144
+ continue
145
+ }
146
+ out.push({ nodeId, kind: b.kind, revoked: repo.unbind(b.id) })
147
+ }
148
+ }
149
+ return out
150
+ }
@@ -16,6 +16,8 @@ export const LEAD_ONLY_TOOL_NAMES = new Set([
16
16
  'update_team_agent',
17
17
  'remove_team_agent',
18
18
  'aml_model_promote',
19
+ 'team_grant_nodes',
20
+ 'team_revoke_nodes',
19
21
  ])
20
22
 
21
23
  /** Hybrid Twin 的直接写入工具:权限面(permission-scope)与目录注入面(host-tool-bridge/catalog)fail-closed 同源于本集合;dispatch 分发层的同款守卫为并行在飞改动,待其收敛后接入(勿在此重复第三份清单)。 */
@@ -118,6 +118,26 @@ export const DEFAULT_CHANNEL_TEMPLATES: Array<{
118
118
  { inline: { name: '优化执行器', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是工艺参数优化执行器:按 goal 与节点物理意义规划探索方向与步长;用 optimization_explore 真实下发激励并读回目标响应;绑定模型后用 twin_trial_run 验证候选、twin_bayes_optimize 收敛寻优;所有写入遵守治理审批。结论必须引用带单位的数据。' } }, role: 'worker' },
119
119
  ],
120
120
  },
121
+ {
122
+ id: 'chtpl-generic-optimize-default',
123
+ name: '通用闭环优化频道(标准)',
124
+ description: '标准 goal 驱动闭环优化团队,适配任意已建模产线(注塑/污水/退火/流延/双拉等):lead 编排(可选知识库检索与经验沉淀,支持把 lead 已绑定节点授权给 worker),工艺工程师治理下发,数据分析师证据判读。实例化时可开知识库集成(enableKnowledgeBase)。',
125
+ scenarioPrompt: `## 通用闭环优化作业(标准流程)
126
+ 你是产线闭环优化团队,围绕用户 goal 对**任意已接入产线**做「取证 → 寻优 → 治理下发 → 复测收口」的闭环优化。开工前先用 my_industrial_nodes 与 line_context 弄清本频道持有的节点授权、产线/产品/配方与安全量程,不假设场景。
127
+
128
+ ## 团队分工
129
+ - 生产主管(lead):把 goal 拆解为「数据分析」与「参数调整」子任务并派发(worker 缺节点权限时,用 team_grant_nodes 把 lead 已绑定的节点授予对应 worker,或在 dispatch_task 里带 grant_node_ids 随任务授予;只授予自己绑定的节点);复核成员结论(必须带数据证据)→ 汇总收口;对拿不准的现象先查知识库(若已启用)。
130
+ - 工艺工程师(worker):持有数控节点授权 —— daq_query 取证 → 判定设定-响应关系 → 在「安全量程 ∩ 配方窗口 ∩ 单步限幅」内用 dcw_control/param_control 小步幅下发(单变量);manual 模式节点先说明理由等用户批准;调整后等工艺惯性响应再复测;把「调整↔响应」证据回报 lead。
131
+ - 数据分析师(worker):持有数采节点授权 —— daq_query 时序取证(按批次/时间窗过滤),输出趋势/均值/越限统计与工况判读;异常第一时间通报 lead 与工艺工程师。
132
+
133
+ ## 作业纪律
134
+ 数据先行 → 窗口内小步幅(单次 ≤ 量程 2%)→ 单变量调整 → 复测闭环 → 结论必附带单位与时间窗的数据证据;不得操作未授权节点;治理审批与硬约束(步长限幅/写入间隔)被拒时按指引降步重试,不绕行。`,
135
+ members: [
136
+ { inline: { name: '生产主管', harness: 'omp', config: { rpcMode: 'rpc', role: 'lead', systemPromptPrefix: '你是通用闭环优化团队的生产主管(lead):把用户 goal 拆解为「数据分析」「参数调整」子任务并用 dispatch_task 派发(可带 grant_node_ids 随任务把你自己已绑定的节点授权给 worker,或用 team_grant_nodes 执行中授予;只能授予自己绑定的节点);复核成员结论(必须带数据证据)后 complete 收口;若知识库已启用,开工前先用 kb_agent(mode=sync) 检索场景相关数据分析与物理机理,收口后用 kb_agent(mode=async) 沉淀本次经验(标题/类别/问题/解决方案/关键数据)。' } }, role: 'lead' },
137
+ { inline: { name: '工艺工程师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是通用闭环优化团队的工艺工程师,按节点物理意义做治理参数下发:my_industrial_nodes 确认授权 → daq_query 取证 → dcw_control/param_control 在「安全量程 ∩ 配方窗口 ∩ 单步限幅」内小步幅下发(单变量)→ 等待工艺惯性后 daq_query 复测。你的节点授权可能由 lead 在派发时或执行中授予(权限变化以 my_industrial_nodes 实时查询为准)。manual 模式节点下发前说明理由等批准。结论一律引用带单位与时间窗的数据。' } }, role: 'worker' },
138
+ { inline: { name: '数据分析师', harness: 'omp', config: { rpcMode: 'rpc', systemPromptPrefix: '你是通用闭环优化团队的数据分析师,擅长时序取证与工况判读:用 daq_query 获取授权数采节点数据(按批次/时间窗),输出趋势/均值/极值/越限统计,结合数控设定考虑设定-响应滞后;发现越限或异常趋势立即用 send_message_to_agent 通报 lead 与工艺工程师。结论一律引用具体数值。' } }, role: 'worker' },
139
+ ],
140
+ },
121
141
  ]
122
142
 
123
143
  /**
@@ -11,6 +11,19 @@ import { KNOWN_HARNESSES } from './helpers'
11
11
  import { parseJson } from '../../db/database'
12
12
  import { setHybridChannelProfile } from '../../aml/twin/channel-profile'
13
13
  import { defaultInjectionScene } from '../../aml/twin/physics-runtime'
14
+ import { getChannelPluginsRepo } from '../../db/channel-plugins.repo'
15
+
16
+ /** 携带「知识库集成」选项的模板:实例化时可显式启停 rag-bridge(开 → 注入 KB 作业段提示词) */
17
+ export const KNOWLEDGE_BASE_TEMPLATE_IDS = new Set(['chtpl-aml-optimization-default', 'chtpl-generic-optimize-default'])
18
+
19
+ /** 知识库集成开启时追加到频道场景提示词的作业段(教 lead 先检索后沉淀) */
20
+ export const KNOWLEDGE_BASE_PROMPT_SECTION = `
21
+
22
+ ## 知识库集成(已启用 rag-bridge)
23
+ 本频道接入了 rag-knowledge 知识库,优化作业遵循「先检索、后行动、再沉淀」:
24
+ 1. 优化启动前,lead 先用 kb_agent(mode=sync) 检索知识库中与本场景相关的**数据分析结论**与**物理机理知识**(检索词带上产线/产品/关键物理量,如「注塑 保压 克重 波动」「烘箱温度 膜厚 滞后」);把检索所得的机理关系、历史阈值与经验教训作为探索方向、步长与安全边界的依据;
25
+ 2. 优化过程中,若对某个现象拿不准,先查知识库再动手;worker 也可各自检索,但入库/沉淀由 lead 统一收口;
26
+ 3. 优化闭环收口后(目标达标或 judge 判定 keep),lead 用 kb_agent(mode=async) 把本次经验沉淀入知识库:标题、类别(工艺经验/数据分析/故障案例)、问题、解决方案、关键数据(带单位的参数调整↔响应变化)。异步提交后无需等待,可继续汇报。`
14
27
 
15
28
  export abstract class ManagerChannelTemplates extends ManagerTeams {
16
29
  /** 可见性感知 Channel 模板列表:普通用户 = 本人 + public(含内置);admin = 全量 */
@@ -101,21 +114,31 @@ export abstract class ManagerChannelTemplates extends ManagerTeams {
101
114
  * 场景/工作目录照搬;lead 内联创建;成员逐个克隆(引用模板时校验操作者可读)。
102
115
  * 返回 createChannel 同构结果 + 成员实例数。
103
116
  */
104
- async instantiateChannelTemplate(templateId: string, user: ActingUser, nameOverride?: string, options?: { scene?: Record<string, unknown>, promptVariables?: Record<string, unknown>, objective?: Record<string, unknown>, toolProfile?: string, controlPolicy?: 'recommendation_only' | 'hitl_governed' | 'bounded_auto', providerId?: string, providerVersion?: string, providerHash?: string, scenePackId?: string, optimizationMode?: 'exploration' | 'aml', boundModelId?: string }): Promise<{ channelId: string, workspace: string, agentCount: number, leadAgentId?: string, agents: Array<{ id: string, templateId?: string | null, name: string, role: string }> }> {
117
+ async instantiateChannelTemplate(templateId: string, user: ActingUser, nameOverride?: string, options?: { scene?: Record<string, unknown>, promptVariables?: Record<string, unknown>, objective?: Record<string, unknown>, toolProfile?: string, controlPolicy?: 'recommendation_only' | 'hitl_governed' | 'bounded_auto', providerId?: string, providerVersion?: string, providerHash?: string, scenePackId?: string, optimizationMode?: 'exploration' | 'aml', boundModelId?: string, enableKnowledgeBase?: boolean }): Promise<{ channelId: string, workspace: string, agentCount: number, leadAgentId?: string, agents: Array<{ id: string, templateId?: string | null, name: string, role: string }> }> {
105
118
  const tpl = this.deps.repos.channelTemplates.findById(templateId)
106
119
  if (!tpl) throw new AppError(404, 'NOT_FOUND', `Channel 模板不存在: ${templateId}`)
107
120
  this.requireTemplateReadable(tpl, user, 'Channel 模板')
108
121
  const lead = tpl.leadJson
109
122
  ? parseJson<{ name: string, harness: string, config?: Record<string, unknown> } | null>(tpl.leadJson, null)
110
123
  : null
124
+ // 知识库集成:显式 true → 启用 rag-bridge 并在场景提示词追加 KB 作业段;
125
+ // 显式 false → 显式停用(频道内 kb_* 工具不注入);缺省 → 不写开关行(平台默认)。
126
+ const kb = options?.enableKnowledgeBase
127
+ const kbOn = kb === true
128
+ const scenarioPrompt = kbOn && KNOWLEDGE_BASE_TEMPLATE_IDS.has(tpl.id)
129
+ ? (tpl.scenarioPrompt ?? '') + KNOWLEDGE_BASE_PROMPT_SECTION
130
+ : tpl.scenarioPrompt
111
131
  const created = await this.createChannel({
112
132
  name: (nameOverride && nameOverride.trim()) || tpl.name,
113
133
  description: tpl.description,
114
- scenarioPrompt: tpl.scenarioPrompt,
134
+ scenarioPrompt,
115
135
  workspace: tpl.workspace || undefined,
116
136
  leadAgent: lead ? { name: lead.name, harness: lead.harness, config: lead.config } : undefined,
117
137
  ownerUserId: user.id,
118
138
  })
139
+ if (kb !== undefined) {
140
+ getChannelPluginsRepo().setMany(created.channelId, [{ name: 'rag-bridge', enabled: kbOn }])
141
+ }
119
142
  const members = parseJson<ChannelTemplateMember[]>(tpl.membersJson, [])
120
143
  const agents: Array<{ id: string, templateId?: string | null, name: string, role: string }> = []
121
144
  if (created.leadAgentId) agents.push({ id: created.leadAgentId, name: lead?.name ?? 'lead', role: 'lead' })
@@ -189,6 +212,7 @@ export abstract class ManagerChannelTemplates extends ManagerTeams {
189
212
  visibility: row.ownerUserId === null ? 'public' : row.visibility,
190
213
  isBuiltin: row.ownerUserId === null,
191
214
  ownerUserId: row.ownerUserId ?? null,
215
+ knowledgeBaseCapable: KNOWLEDGE_BASE_TEMPLATE_IDS.has(row.id),
192
216
  createdAt: row.createdAt,
193
217
  updatedAt: row.updatedAt,
194
218
  }
@@ -122,6 +122,8 @@ export interface ChannelTemplateDetail {
122
122
  visibility: string
123
123
  isBuiltin: boolean
124
124
  ownerUserId: string | null
125
+ /** 模板支持「知识库集成」选项(实例化可传 enableKnowledgeBase 启停 rag-bridge) */
126
+ knowledgeBaseCapable?: boolean
125
127
  createdAt: string
126
128
  updatedAt: string
127
129
  }
@@ -1 +0,0 @@
1
- import{N as e,dt as t,g as n,mt as r,u as i,v as a}from"./CavpkQb0.js";import{S as o,V as s,W as ee,b as c,d as l,f as u,h as d,i as f,m as p,nt as m,p as h,y as g}from"./ByMj6e7s.js";import{d as te}from"./Br3AySNQ.js";import{n as _}from"./DkpmSnHX.js";import{n as v}from"./Cnrmlixo.js";import{t as ne}from"./Bub2P5me.js";import{a as y,c as re,n as ie}from"./wDPc4SSR.js";import{n as ae,t as oe}from"./k5K6Jj6g.js";import{t as se}from"./eutnXI4F.js";import{t as ce}from"./CAaSPBqk.js";import{i as le,n as ue,t as de}from"./DppqsiPC.js";import{t as fe}from"./B2x8SKRO2.js";import{t as pe}from"./CPeZNE4S2.js";import{t as me}from"./DzBbYWrw2.js";import{t as he}from"./DqtnqNgL2.js";import{t as ge}from"./CfLUvgr32.js";import{t as b}from"./CI2yXRr42.js";import{t as x}from"./BDNMzG2s2.js";import{t as S}from"./JgheoP3e.js";import{t as C}from"./CNs_Ozdc.js";import{t as w}from"./BWU1pvLL.js";import{i as T,n as E}from"./Du9v6qGB2.js";var _e={class:`page`},D={class:`head`},O={class:`sub`},k={class:`toolbar`},A={key:0,class:`admin-note`},j={class:`grid`},M={class:`card-head`},N={class:`name`},P={class:`owner`},F={key:0,class:`desc`},I={class:`member-line`},ve={class:`lead-name`},ye={key:0,class:`count`},L={key:1,class:`count`},be=[`title`],xe={class:`card-foot`},Se=[`title`],R=x(o({__name:`channel-templates`,setup(o){let{t:x}=v(),R=e=>E[e.id]?.desc?x(E[e.id].desc):e.description,z=e=>E[e.id]?.scenario?x(E[e.id].scenario):e.scenarioPrompt;C({layout:`default`});let B=w(),V=b(),H=a([]),U=a([]),W=a(!1),G=async()=>{W.value=!0;try{let[e,t]=await Promise.all([B.listChannelTemplates(),B.listTemplates()]);H.value=e?.data??[],U.value=t?.data??[]}finally{W.value=!1}};G();let K=a(`all`),q=l(()=>{let e=V.user?.id;switch(K.value){case`mine`:return H.value.filter(t=>t.ownerUserId===e);case`public`:return H.value.filter(e=>e.visibility===`public`);case`builtin`:return H.value.filter(e=>e.isBuiltin);default:return H.value}}),J=e=>!e.isBuiltin&&(e.ownerUserId===V.user?.id||V.isAdmin),Y=e=>e.isBuiltin?{text:x(`ctpl.k3x23c021`),color:`default`,icon:`i-tabler-lock`}:e.visibility===`public`?{text:x(`ctpl.k3wv1t022`),color:`green`}:{text:x(`ctpl.k447jj023`),color:`default`},Ce=e=>`templateId`in e?T(x,U.value.find(t=>t.id===e.templateId)??{id:e.templateId,name:e.templateId.slice(0,8)}):e.inline.name,X=a(!1),Z=n({name:``,description:``,scenarioPrompt:``,workspace:``,visibility:`private`,leadId:``,memberIds:[]}),Q=()=>{Z.name=``,Z.description=``,Z.scenarioPrompt=``,Z.workspace=``,Z.visibility=`private`,Z.leadId=``,Z.memberIds=[],X.value=!0},we=async()=>{if(!Z.name.trim()){y.warning(x(`ctpl.k1i0ji0y024`));return}let e=Z.leadId?U.value.find(e=>e.id===Z.leadId):void 0,t=Z.memberIds.filter(e=>e!==Z.leadId).map(e=>({templateId:e,role:`worker`}));try{await B.createChannelTemplate({name:Z.name.trim(),description:Z.description||void 0,scenarioPrompt:Z.scenarioPrompt||void 0,workspace:Z.workspace||void 0,lead:e?{name:e.name,harness:e.harness,config:e.config}:null,members:t,visibility:Z.visibility}),y.success(x(`ctpl.kyppebc025`)),X.value=!1,G()}catch(e){y.error(S(e))}},Te=async(e,t)=>{try{await B.updateChannelTemplate(e.id,{visibility:t?`public`:`private`}),y.success(x(t?`ctpl.kkziya3026`:`ctpl.k1xxabaf027`)),G()}catch(e){y.error(S(e))}},$=a(null),Ee=async e=>{$.value=e.id;try{let t=(await B.instantiateChannelTemplate(e.id))?.data;y.success(x(`ctpl.kefkfnl030`,{p0:e.name,p1:t?.agentCount??0}))}catch(e){y.error(S(e))}finally{$.value=null}},De=async e=>{await B.deleteChannelTemplate(e.id),y.success(x(`ctpl.k1oxfuqj028`)),G()};return _({title:()=>x(`titles.ctpl`)}),(n,a)=>{let o=re,l=pe,_=ge,v=de,y=he,b=fe,S=me,C=ce,w=ae,E=se,B=ne,G=ue,Oe=le,ke=oe,Ae=ie;return s(),d(`div`,_e,[u(`div`,D,[u(`div`,null,[u(`h2`,null,`Channel `+r(n.$t(`ctpl.k1f54iqd029`)),1),u(`p`,O,r(n.$t(`ctpl.k18gglgp011`)),1)]),c(l,null,{default:m(()=>[c(o,{onClick:a[0]||=t=>(`navigateTo`in n?n.navigateTo:e(te))(`/workshop`)},{default:m(()=>[g(r(n.$t(`ctpl.krpx6qa012`)),1)]),_:1}),c(o,{type:`primary`,onClick:Q},{default:m(()=>[g(r(n.$t(`ctpl.k1efixrj013`)),1)]),_:1})]),_:1})]),u(`div`,k,[c(_,{value:e(K),"onUpdate:value":a[1]||=e=>i(K)?K.value=e:null,size:`small`,options:[{value:`all`,label:n.$t(`chips.chipAll`,{n:e(H).length})},{value:`mine`,label:n.$t(`chips.mine`)},{value:`public`,label:n.$t(`chips.public`)},{value:`builtin`,label:n.$t(`chips.builtin`)}]},null,8,[`value`,`options`]),e(V).isAdmin?(s(),d(`span`,A,[a[10]||=u(`span`,{class:`i-tabler-shield-check`},null,-1),g(` `+r(n.$t(`ctpl.ka1gpdj014`)),1)])):p(``,!0)]),c(S,{spinning:e(W)},{default:m(()=>[u(`div`,j,[(s(!0),d(f,null,ee(e(q),i=>(s(),d(`div`,{key:i.id,class:`card`},[u(`div`,M,[u(`span`,N,r((`seedName`in n?n.seedName:e(T))(e(x),i)),1),c(v,{color:Y(i).color,class:`vis-tag`},{default:m(()=>[Y(i).icon?(s(),d(`span`,{key:0,class:t(Y(i).icon)},null,2)):p(``,!0),g(r(Y(i).text),1)]),_:2},1032,[`color`]),!i.isBuiltin&&J(i)?(s(),h(y,{key:0,checked:i.visibility===`public`,size:`small`,"checked-children":n.$t(`ctpl.visPublic`),"un-checked-children":n.$t(`ctpl.visPrivate`),onChange:e=>Te(i,e===!0)},null,8,[`checked`,`checked-children`,`un-checked-children`,`onChange`])):p(``,!0),u(`span`,P,r(i.ownerName??`-`),1)]),i.description?(s(),d(`p`,F,r(R(i)),1)):p(``,!0),u(`div`,I,[a[12]||=u(`span`,{class:`i-tabler-users-group`},null,-1),i.lead||i.members.length>0?(s(),d(f,{key:0},[c(v,{color:`gold`},{default:m(()=>[...a[11]||=[g(` lead `,-1)]]),_:1}),u(`span`,ve,r(i.lead?.name??Ce(i.members.find(e=>e.role===`lead`)??i.members[0])),1),i.members.filter(e=>e.role!==`lead`).length>0?(s(),d(`span`,ye,`+ `+r(i.members.filter(e=>e.role!==`lead`).length)+` worker`,1)):p(``,!0)],64)):(s(),d(`span`,L,r(n.$t(`ctpl.k3rx4ps015`)),1))]),i.scenarioPrompt?(s(),d(`div`,{key:1,class:`scenario`,title:i.scenarioPrompt},r(z(i).slice(0,90))+r(z(i).length>90?`…`:``),9,be)):p(``,!0),u(`div`,xe,[i.workspace?(s(),d(`span`,{key:0,class:`ws`,title:i.workspace},[a[13]||=u(`span`,{class:`i-tabler-folder`},null,-1),g(` `+r(i.workspace),1)],8,Se)):p(``,!0),a[14]||=u(`span`,{class:`spacer`},null,-1),J(i)?(s(),h(b,{key:1,title:n.$t(`ctpl.k117jag9001`),onConfirm:e=>De(i)},{default:m(()=>[c(o,{size:`small`,type:`text`,danger:``},{default:m(()=>[g(r(n.$t(`ctpl.k3xakp016`)),1)]),_:1})]),_:1},8,[`title`,`onConfirm`])):p(``,!0),c(o,{size:`small`,type:`primary`,ghost:``,loading:e($)===i.id,title:n.$t(`ctpl.knjomku002`),onClick:e=>Ee(i)},{default:m(()=>[g(r(n.$t(`ctpl.k3mr1fo017`)),1)]),_:1},8,[`loading`,`title`,`onClick`])])]))),128)),e(q).length===0?(s(),d(`div`,{key:0,class:`card placeholder`,onClick:Q},[a[15]||=u(`span`,{class:`i-tabler-layout-grid-add big`},null,-1),u(`span`,null,r(n.$t(`ctpl.k19fglby018`)),1)])):p(``,!0)])]),_:1},8,[`spinning`]),c(Ae,{open:e(X),"onUpdate:open":a[9]||=e=>i(X)?X.value=e:null,title:n.$t(`ctpl.newTplTitle`),"ok-text":n.$t(`common.create`),"cancel-text":n.$t(`common.cancel`),onOk:we},{default:m(()=>[c(ke,{layout:`vertical`},{default:m(()=>[c(w,{label:n.$t(`ctpl.k1f55q76003`)},{default:m(()=>[c(C,{value:e(Z).name,"onUpdate:value":a[2]||=t=>e(Z).name=t},null,8,[`value`])]),_:1},8,[`label`]),c(w,{label:n.$t(`ctpl.k40gkk004`)},{default:m(()=>[c(C,{value:e(Z).description,"onUpdate:value":a[3]||=t=>e(Z).description=t},null,8,[`value`])]),_:1},8,[`label`]),c(w,{label:n.$t(`ctpl.leadTplLabel`)},{default:m(()=>[c(E,{value:e(Z).leadId,"onUpdate:value":a[4]||=t=>e(Z).leadId=t,"allow-clear":``,placeholder:n.$t(`ctpl.k1ju32o7005`),options:e(U).map(e=>({value:e.id,label:`${e.name}(${e.harness})`}))},null,8,[`value`,`placeholder`,`options`])]),_:1},8,[`label`]),c(w,{label:n.$t(`ctpl.k5uq1js006`)},{default:m(()=>[c(E,{value:e(Z).memberIds,"onUpdate:value":a[5]||=t=>e(Z).memberIds=t,mode:`multiple`,placeholder:n.$t(`ctpl.kqmdkc9007`),options:e(U).filter(t=>t.id!==e(Z).leadId).map(e=>({value:e.id,label:`${e.name}(${e.harness})`}))},null,8,[`value`,`placeholder`,`options`])]),_:1},8,[`label`]),c(w,{label:n.$t(`ctpl.k1q87yho008`)},{default:m(()=>[c(B,{value:e(Z).scenarioPrompt,"onUpdate:value":a[6]||=t=>e(Z).scenarioPrompt=t,rows:3},null,8,[`value`])]),_:1},8,[`label`]),c(w,{label:n.$t(`ctpl.kk4u5cr009`)},{default:m(()=>[c(C,{value:e(Z).workspace,"onUpdate:value":a[7]||=t=>e(Z).workspace=t,placeholder:`data/workspaces/<channelId>`},null,8,[`value`])]),_:1},8,[`label`]),c(w,{label:n.$t(`ctpl.k3lrqn0010`)},{default:m(()=>[c(Oe,{value:e(Z).visibility,"onUpdate:value":a[8]||=t=>e(Z).visibility=t},{default:m(()=>[c(G,{value:`private`},{default:m(()=>[g(r(n.$t(`ctpl.k17jfge3019`)),1)]),_:1}),c(G,{value:`public`},{default:m(()=>[g(r(n.$t(`ctpl.k191u0u5020`)),1)]),_:1})]),_:1},8,[`value`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`open`,`title`,`ok-text`,`cancel-text`])])}}}),[[`__scopeId`,`data-v-2c33b698`]]);export{R as default};
@@ -1 +0,0 @@
1
- {"id":"912eb5bb-670e-4cc8-b21d-7fc097723466","timestamp":1790571208142,"prerendered":[]}
@@ -1 +0,0 @@
1
- .page[data-v-2c33b698]{padding:4px}.head[data-v-2c33b698]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}h2[data-v-2c33b698]{margin:0 0 4px}.sub[data-v-2c33b698]{opacity:.55;margin:0;font-size:12px}.toolbar[data-v-2c33b698]{align-items:center;gap:12px;margin-bottom:12px;display:flex}.admin-note[data-v-2c33b698]{color:var(--ink-faint);align-items:center;gap:5px;font-size:11px;display:inline-flex}.grid[data-v-2c33b698]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.card[data-v-2c33b698]{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-panel);transition:border-color var(--transition-fast);flex-direction:column;gap:8px;padding:14px;display:flex}.card[data-v-2c33b698]:hover{border-color:var(--line-strong)}.card-head[data-v-2c33b698]{align-items:center;gap:8px;display:flex}.name[data-v-2c33b698]{text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:15px;font-weight:600;overflow:hidden}.vis-tag[data-v-2c33b698]{margin-right:2px}.owner[data-v-2c33b698]{color:var(--ink-faint);font-size:11px}.desc[data-v-2c33b698]{color:var(--ink-soft);margin:0;font-size:12px}.member-line[data-v-2c33b698]{align-items:center;gap:6px;font-size:12px;display:flex}.lead-name[data-v-2c33b698]{font-weight:500}.count[data-v-2c33b698]{font-family:var(--font-mono);color:var(--ink-faint);font-size:11px}.scenario[data-v-2c33b698]{font-family:var(--font-mono);color:var(--ink-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.card-foot[data-v-2c33b698]{align-items:center;gap:6px;margin-top:2px;display:flex}.ws[data-v-2c33b698]{max-width:60%;font-family:var(--font-mono);color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:10.5px;display:inline-flex;overflow:hidden}.spacer[data-v-2c33b698]{flex:auto}.card.placeholder[data-v-2c33b698]{opacity:.55;cursor:pointer;border-style:dashed;justify-content:center;align-items:center;min-height:160px;font-size:13px}.big[data-v-2c33b698]{font-size:28px}@media (width<=900px){.head[data-v-2c33b698]{flex-direction:column;align-items:stretch;gap:12px}.head>div[data-v-2c33b698]{min-width:0}.head h2[data-v-2c33b698]{font-size:21px;line-height:1.25}.head[data-v-2c33b698] .ant-space{flex-direction:column;align-items:stretch;gap:8px;width:100%;display:flex}.head[data-v-2c33b698] .ant-space-item{width:100%}.head[data-v-2c33b698] .ant-btn{width:100%;min-height:40px}.toolbar[data-v-2c33b698]{flex-wrap:wrap;gap:8px}.toolbar[data-v-2c33b698] .ant-segmented{flex:100%;min-width:0}.admin-note[data-v-2c33b698]{flex:100%;min-width:0;font-size:11.5px;line-height:1.5}.grid[data-v-2c33b698]{grid-template-columns:1fr}.card-head[data-v-2c33b698],.member-line[data-v-2c33b698],.card-foot[data-v-2c33b698]{flex-wrap:wrap}.ws[data-v-2c33b698]{max-width:100%}}@media (width<=640px){.page[data-v-2c33b698]{padding:0}.head h2[data-v-2c33b698]{font-size:19px}.sub[data-v-2c33b698]{font-size:11.5px;line-height:1.5}.scenario[data-v-2c33b698]{font-size:11.5px}}
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel-templates-DjEsj0_v.mjs","sources":["../../../../app/pages/workshop/channel-templates.vue"],"names":["api$1","api","useHead","$t","navigateTo","seedName"],"mappings":"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"}