@xopcai/xopc 0.0.329 → 0.0.330

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 (257) hide show
  1. package/dist/browser-ext/manifest.json +1 -1
  2. package/dist/extensions/telegram/xopc.extension.json +1 -1
  3. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Bs1qnnhD.js → agent-avatar-dicebear-BDG0hI-J.js} +1 -1
  4. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-ArM6Sm9S.js +1 -0
  5. package/dist/gateway/static/root/assets/agent-plugin-dialog-BX_Bhre1.js +1 -0
  6. package/dist/gateway/static/root/assets/agents-BiQqpMw0.js +70 -0
  7. package/dist/gateway/static/root/assets/{app-management-settings-panel-BrIji9B5.js → app-management-settings-panel-DgttzUCG.js} +1 -1
  8. package/dist/gateway/static/root/assets/{appearance-settings-Uts-MQ7K.js → appearance-settings-CHpyWV8Z.js} +1 -1
  9. package/dist/gateway/static/root/assets/apps-page-BhfYQcm8.js +1 -0
  10. package/dist/gateway/static/root/assets/{archive-plugin-_EzRfBuI.js → archive-plugin-B7Q7Oeo7.js} +1 -1
  11. package/dist/gateway/static/root/assets/{attachment-load-CHg7_XFl.js → attachment-load-BYwqQ8qN.js} +1 -1
  12. package/dist/gateway/static/root/assets/{automations-page-CGMErk_w.js → automations-page-CsvAtTNd.js} +1 -1
  13. package/dist/gateway/static/root/assets/automations-workspace-DMH_1Ped.js +7 -0
  14. package/dist/gateway/static/root/assets/{binary-plugins-D3WB-tVn.js → binary-plugins-DdgWCI-M.js} +1 -1
  15. package/dist/gateway/static/root/assets/{block-editor-Cm1W-14I.js → block-editor-DyOagNnn.js} +53 -53
  16. package/dist/gateway/static/root/assets/{browser-automation-inputs-VnvK-GQP.js → browser-automation-inputs-CwF8OQFN.js} +1 -1
  17. package/dist/gateway/static/root/assets/browser-automations-page-D_EQjiiu.js +3 -0
  18. package/dist/gateway/static/root/assets/browser-settings-page-BE6691Jz.js +3 -0
  19. package/dist/gateway/static/root/assets/capabilities-page-MweWNrC1.js +2 -0
  20. package/dist/gateway/static/root/assets/capabilities-settings-panel-CdSWkh89.js +8 -0
  21. package/dist/gateway/static/root/assets/{capability-header-actions-C3chJDQu.js → capability-header-actions-C5F2GNE9.js} +1 -1
  22. package/dist/gateway/static/root/assets/channels-NGfwR3He.js +1 -0
  23. package/dist/gateway/static/root/assets/{chat-terminal-dock-ClbmjCL2.js → chat-terminal-dock-C6tl9Rfw.js} +2 -2
  24. package/dist/gateway/static/root/assets/{computer-settings-page-BfZaf516.js → computer-settings-page-C0MsVw4l.js} +1 -1
  25. package/dist/gateway/static/root/assets/{connector-service-page-F-fYNIx8.js → connector-service-page-DsF60pPs.js} +1 -1
  26. package/dist/gateway/static/root/assets/connectors-page-BE8NdQcR.js +2 -0
  27. package/dist/gateway/static/root/assets/date-picker-CELKKqYN.js +1 -0
  28. package/dist/gateway/static/root/assets/{dependency-picker-B_z3zihW.js → dependency-picker-BcEwCnI5.js} +1 -1
  29. package/dist/gateway/static/root/assets/{desktop-pet-C1TZzKS3.js → desktop-pet-Ww7Gm8-x.js} +1 -1
  30. package/dist/gateway/static/root/assets/desktop-pet-settings-D-dbAxGu.js +1 -0
  31. package/dist/gateway/static/root/assets/device-pairing-wizard-DsYY6szg.js +1 -0
  32. package/dist/gateway/static/root/assets/{directory-picker-path-field-BfxaNwMB.js → directory-picker-path-field-CVmuCRyO.js} +1 -1
  33. package/dist/gateway/static/root/assets/{extension-debug-page-Bs8_FYCm.js → extension-debug-page-UUHNJj-d.js} +1 -1
  34. package/dist/gateway/static/root/assets/{extension-page-DH5vFbBw.js → extension-page-BvL452mX.js} +1 -1
  35. package/dist/gateway/static/root/assets/{extension-settings-page-hGKovxxC.js → extension-settings-page-CrNnUSOs.js} +1 -1
  36. package/dist/gateway/static/root/assets/{gateway-config-swr-BYMrbKZE.js → gateway-config-swr-DMm1vU51.js} +1 -1
  37. package/dist/gateway/static/root/assets/gateway-settings-DrHhtZqv.js +1 -0
  38. package/dist/gateway/static/root/assets/{gateway-startup-retry-DMqYXHAn.js → gateway-startup-retry-Ck6tj6yE.js} +1 -1
  39. package/dist/gateway/static/root/assets/home-page-YgI6jfGA.js +1 -0
  40. package/dist/gateway/static/root/assets/{image-generation-api-D1sQGaJz.js → image-generation-api-BOh6j0BF.js} +1 -1
  41. package/dist/gateway/static/root/assets/imports-page-BuqdzA7h.js +1 -0
  42. package/dist/gateway/static/root/assets/index-DJmO2VAY.css +1 -0
  43. package/dist/gateway/static/root/assets/index-vCIBfJp7.js +121 -0
  44. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-CMitbles.js → keyboard-shortcuts-settings-D9L7IdUg.js} +1 -1
  45. package/dist/gateway/static/root/assets/local-app-workbench-page-DO8uUtos.js +1 -0
  46. package/dist/gateway/static/root/assets/local-apps-page-BEvyufm7.js +1 -0
  47. package/dist/gateway/static/root/assets/locale-store-DAOwT3Zp.js +1 -0
  48. package/dist/gateway/static/root/assets/logs-page-Jev1m9sS.js +2 -0
  49. package/dist/gateway/static/root/assets/management-settings-41i7B1RO.js +1 -0
  50. package/dist/gateway/static/root/assets/{markdown-view-DXubGEic.js → markdown-view-nL4xzvI8.js} +1 -1
  51. package/dist/gateway/static/root/assets/{media-plugins-DLJrmU9J.js → media-plugins-dHbcqMan.js} +1 -1
  52. package/dist/gateway/static/root/assets/{messages-D0G_sZvA.js → messages-BZbt9x1y.js} +3 -3
  53. package/dist/gateway/static/root/assets/note-detail-panel-DonP0E6Q.js +5 -0
  54. package/dist/gateway/static/root/assets/notes-page-CYHMeVKo.js +8 -0
  55. package/dist/gateway/static/root/assets/{page-context-capture-button-C3JiQEKD.js → page-context-capture-button-BKsMcPOy.js} +1 -1
  56. package/dist/gateway/static/root/assets/{preview-open-alternatives-buk_gdip.js → preview-open-alternatives-Du18QgWc.js} +1 -1
  57. package/dist/gateway/static/root/assets/{product-open-page-DwEEO0Ak.js → product-open-page-IY1QL6s0.js} +1 -1
  58. package/dist/gateway/static/root/assets/project-detail-page-Bpw9mxfV.js +1 -0
  59. package/dist/gateway/static/root/assets/projects-page-BdYbDNUn.js +1 -0
  60. package/dist/gateway/static/root/assets/{registry-api-tx8XCHOs.js → registry-api-DCFXWBOt.js} +1 -1
  61. package/dist/gateway/static/root/assets/remote-access-hub-CLhbz3TF.js +1 -0
  62. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-De7HmmBu.js → runtime-tools-settings-panel-CuTFmXyj.js} +2 -2
  63. package/dist/gateway/static/root/assets/scenes-page-XwK2IEmr.js +2 -0
  64. package/dist/gateway/static/root/assets/{schema-form-DPMEuj5D.js → schema-form-qWQii8IU.js} +1 -1
  65. package/dist/gateway/static/root/assets/sessions-page-4-QoiDES.js +1 -0
  66. package/dist/gateway/static/root/assets/settings-advanced-gate-BggQVM1y.js +1 -0
  67. package/dist/gateway/static/root/assets/{settings-form-section-DM0D-BQ_.js → settings-form-section-B0ZBr0L9.js} +1 -1
  68. package/dist/gateway/static/root/assets/{settings-page-CWS9yOH3.js → settings-page-DpII4NO3.js} +1 -1
  69. package/dist/gateway/static/root/assets/setup-status-panel-HPpC7EE0.js +1 -0
  70. package/dist/gateway/static/root/assets/{share-preview-page-CcRi2yGy.js → share-preview-page-B2CGYZHc.js} +1 -1
  71. package/dist/gateway/static/root/assets/shares-settings-DhVCRYGP.js +1 -0
  72. package/dist/gateway/static/root/assets/skill-api-_ddww47C.js +1 -0
  73. package/dist/gateway/static/root/assets/skill-reload-api-XPZkWJJe.js +1 -0
  74. package/dist/gateway/static/root/assets/skills-page-uF7DkJMC.js +2 -0
  75. package/dist/gateway/static/root/assets/system-settings-panel-25ABVt7H.js +1 -0
  76. package/dist/gateway/static/root/assets/task-detail-page-gepxhO4j.js +1 -0
  77. package/dist/gateway/static/root/assets/tunnel-api-CwQGBI_4.js +1 -0
  78. package/dist/gateway/static/root/assets/{use-autosave-ZTHe1zCM.js → use-autosave-CL3wytbs.js} +1 -1
  79. package/dist/gateway/static/root/assets/user-model-page-DldQW9Wh.js +2 -0
  80. package/dist/gateway/static/root/assets/{voice-api-key-field-C8Kpkct-.js → voice-api-key-field-zjAzQrx4.js} +1 -1
  81. package/dist/gateway/static/root/assets/{voice-config-api-BvzxINUk.js → voice-config-api-DvzQ-128.js} +1 -1
  82. package/dist/gateway/static/root/assets/{work-discovery-overlay-ClB6T-dm.js → work-discovery-overlay-MaPPjWwl.js} +1 -1
  83. package/dist/gateway/static/root/assets/workflow-run-setup-panel-C3dQN1fE.js +3 -0
  84. package/dist/gateway/static/root/assets/workflows-page-B9lnTU3U.js +6 -0
  85. package/dist/gateway/static/root/index.html +8 -14
  86. package/dist/package.js +1 -1
  87. package/dist/src/agent/agent-manager.d.ts +1 -0
  88. package/dist/src/agent/agent-manager.js +19 -4
  89. package/dist/src/agent/background-review/run-background-review.js +1 -1
  90. package/dist/src/agent/bootstrap/filter-bootstrap-files.js +1 -1
  91. package/dist/src/agent/capabilities/definitions.d.ts +3 -2
  92. package/dist/src/agent/capabilities/definitions.js +3 -2
  93. package/dist/src/agent/external-tools/endpoint-provider.js +2 -2
  94. package/dist/src/agent/image/tool-model-config.js +1 -1
  95. package/dist/src/agent/orchestration/llm-turn-retry.js +2 -15
  96. package/dist/src/agent/service.d.ts +1 -0
  97. package/dist/src/agent/service.js +5 -2
  98. package/dist/src/agent/tasks/task-judge-service.js +1 -1
  99. package/dist/src/agent/tools/factory.js +3 -2
  100. package/dist/src/agent/tools/index.d.ts +1 -0
  101. package/dist/src/agent/tools/index.js +2 -1
  102. package/dist/src/agent/tools/workflow-manage-tool.d.ts +2 -0
  103. package/dist/src/agent/tools/workflow-manage-tool.js +225 -0
  104. package/dist/src/agent/tools/xopc-use-tool.js +1 -1
  105. package/dist/src/agent-catalog/capabilities.js +2 -2
  106. package/dist/src/auth/credentials.js +1 -1
  107. package/dist/src/auth/oauth-provider-lock.js +1 -1
  108. package/dist/src/auth/sync-provider-auth.js +1 -1
  109. package/dist/src/automations/capabilities/drafts.js +1 -1
  110. package/dist/src/automations/draft/automation-draft-service.js +13 -4
  111. package/dist/src/bootstrap/application-state.js +1 -1
  112. package/dist/src/capabilities/runtime/dispatcher.js +1 -1
  113. package/dist/src/capabilities/runtime/product.js +1 -1
  114. package/dist/src/chat-commands/agent-edit.js +1 -1
  115. package/dist/src/chat-commands/builtins/config.js +1 -1
  116. package/dist/src/chat-previews/service.js +1 -2
  117. package/dist/src/cli/commands/agent.js +1 -1
  118. package/dist/src/cli/commands/agents.js +1 -1
  119. package/dist/src/cli/commands/models.js +1 -1
  120. package/dist/src/cli/commands/onboard/model.js +2 -2
  121. package/dist/src/cli/utils/init-workspace-core.js +1 -1
  122. package/dist/src/config/index.js +4 -4
  123. package/dist/src/config/loader.js +2 -2
  124. package/dist/src/config/models-json.js +1 -1
  125. package/dist/src/config/schema.js +1 -1
  126. package/dist/src/extensions/agent-plugins/validation.js +1 -1
  127. package/dist/src/extensions/bundled-extension-activation.d.ts +3 -1
  128. package/dist/src/extensions/bundled-extension-activation.js +5 -8
  129. package/dist/src/gateway/agents-admin.js +2 -2
  130. package/dist/src/gateway/file-path-classifier.js +1 -1
  131. package/dist/src/gateway/gateway-workflow-host.types.d.ts +1 -0
  132. package/dist/src/gateway/hono/lib/config-payload.js +1 -1
  133. package/dist/src/gateway/hono/routes/auth-registry-extensions.js +27 -5
  134. package/dist/src/gateway/hono/routes/config-patch/misc.js +2 -2
  135. package/dist/src/gateway/hono/routes/notes.js +2 -2
  136. package/dist/src/gateway/hono/routes/projects.js +2 -2
  137. package/dist/src/gateway/hono/routes/session-input-handler.js +1 -1
  138. package/dist/src/gateway/hono/routes/tasks.js +1 -1
  139. package/dist/src/gateway/hono/routes/workflows.js +1 -23
  140. package/dist/src/gateway/image-generation-setup.js +2 -2
  141. package/dist/src/gateway/lock.js +1 -1
  142. package/dist/src/gateway/service/config-coordinator.d.ts +4 -4
  143. package/dist/src/gateway/service/config-coordinator.js +6 -6
  144. package/dist/src/gateway/service/marketplace-service.js +8 -6
  145. package/dist/src/gateway/service.d.ts +1 -1
  146. package/dist/src/gateway/service.js +14 -14
  147. package/dist/src/gateway/xopc-cloud-capability-setup.js +1 -1
  148. package/dist/src/home-intelligence/generator.js +7 -6
  149. package/dist/src/home-intelligence/host.js +1 -1
  150. package/dist/src/local-apps/service.js +1 -1
  151. package/dist/src/providers/model-catalog-persistence.js +1 -1
  152. package/dist/src/providers/model-response.d.ts +2 -0
  153. package/dist/src/providers/model-response.js +24 -1
  154. package/dist/src/tasks/capabilities/read.js +2 -2
  155. package/dist/src/tui/backends/embedded-backend.js +6 -3
  156. package/dist/src/tui/tui-commands.js +2 -2
  157. package/dist/src/tui/tui-startup-resources.js +1 -1
  158. package/dist/src/tui/tui.js +3 -3
  159. package/dist/src/voice/platform-streams.js +15 -7
  160. package/dist/src/voice/realtime/agentEngine.js +19 -3
  161. package/dist/src/voice/realtime/pcmFrameBuffer.js +2 -1
  162. package/dist/src/voice/realtime/persona-context.js +1 -1
  163. package/dist/src/voice/realtime/playback-echo.js +16 -1
  164. package/dist/src/workflows/authoring/index.d.ts +1 -0
  165. package/dist/src/workflows/authoring/index.js +2 -1
  166. package/dist/src/workflows/authoring/workflow-draft-defaults.d.ts +3 -0
  167. package/dist/src/workflows/authoring/workflow-draft-defaults.js +63 -0
  168. package/dist/src/workflows/domain/index.js +1 -1
  169. package/dist/src/workflows/engine/workflow-engine.js +1 -1
  170. package/dist/src/workflows/index.js +2 -2
  171. package/dist/src/workflows/service/workflow-run-service.d.ts +1 -1
  172. package/dist/src/workflows/service/workflow-run-service.js +34 -11
  173. package/dist/src/workflows/service/workflow-session-bridge.js +2 -2
  174. package/package.json +4 -4
  175. package/skills/engineering/workflow-authoring/SKILL.md +32 -0
  176. package/dist/gateway/static/root/assets/agent-defaults-settings-panel-DHJyAT7t.js +0 -1
  177. package/dist/gateway/static/root/assets/agent-plugin-dialog-DLKj_iIh.js +0 -1
  178. package/dist/gateway/static/root/assets/agents-SXZ5O0g4.js +0 -70
  179. package/dist/gateway/static/root/assets/apps-page-DcclVdxW.js +0 -1
  180. package/dist/gateway/static/root/assets/automations-workspace-Cc4yqiF6.js +0 -7
  181. package/dist/gateway/static/root/assets/box-DvYoGszj.js +0 -1
  182. package/dist/gateway/static/root/assets/braces-Cfmtagno.js +0 -1
  183. package/dist/gateway/static/root/assets/browser-automations-page-CZYCvSSU.js +0 -3
  184. package/dist/gateway/static/root/assets/browser-settings-page-DDz9PE6m.js +0 -3
  185. package/dist/gateway/static/root/assets/calendar-clock-D-quYVPe.js +0 -1
  186. package/dist/gateway/static/root/assets/capabilities-page-DH3aDk53.js +0 -2
  187. package/dist/gateway/static/root/assets/capabilities-settings-panel-C8jMZAJl.js +0 -8
  188. package/dist/gateway/static/root/assets/capability-discover-page-CgGvsf3t.js +0 -1
  189. package/dist/gateway/static/root/assets/channels-CuVS_KsY.js +0 -1
  190. package/dist/gateway/static/root/assets/chevron-left-DqFhpbvK.js +0 -1
  191. package/dist/gateway/static/root/assets/clock-3-DnrAnuyZ.js +0 -1
  192. package/dist/gateway/static/root/assets/connectors-page-B4SLpvSL.js +0 -2
  193. package/dist/gateway/static/root/assets/date-picker-DXQTsUJn.js +0 -1
  194. package/dist/gateway/static/root/assets/desktop-pet-settings-B5JGIfqn.js +0 -1
  195. package/dist/gateway/static/root/assets/device-pairing-wizard-DFYK_Ywf.js +0 -1
  196. package/dist/gateway/static/root/assets/extension-marketplace-api-DqV4YRYs.js +0 -1
  197. package/dist/gateway/static/root/assets/gateway-settings-BIsiP-JI.js +0 -1
  198. package/dist/gateway/static/root/assets/gauge-C78eD2BA.js +0 -1
  199. package/dist/gateway/static/root/assets/git-branch-Dh9uxTot.js +0 -1
  200. package/dist/gateway/static/root/assets/home-page-CoBivEvx.js +0 -1
  201. package/dist/gateway/static/root/assets/image-Cwyalflz.js +0 -1
  202. package/dist/gateway/static/root/assets/imports-page-rssb4rjP.js +0 -1
  203. package/dist/gateway/static/root/assets/inbox-DNoSz682.js +0 -1
  204. package/dist/gateway/static/root/assets/index-C4QN4gCi.css +0 -1
  205. package/dist/gateway/static/root/assets/index-Cr4SINLG.js +0 -121
  206. package/dist/gateway/static/root/assets/is-masked-secret-DOkL5b_X.js +0 -1
  207. package/dist/gateway/static/root/assets/layout-grid-CEVZdVFU.js +0 -1
  208. package/dist/gateway/static/root/assets/list-BBGUdmkF.js +0 -1
  209. package/dist/gateway/static/root/assets/local-app-workbench-page-Di82Oacm.js +0 -1
  210. package/dist/gateway/static/root/assets/local-apps-page-CCvA9d9L.js +0 -1
  211. package/dist/gateway/static/root/assets/locale-store-BSkKhYkc.js +0 -1
  212. package/dist/gateway/static/root/assets/lock-keyhole-DEK5kH0u.js +0 -1
  213. package/dist/gateway/static/root/assets/logs-page-BK8ol1q0.js +0 -2
  214. package/dist/gateway/static/root/assets/management-settings-CebXkEtB.js +0 -1
  215. package/dist/gateway/static/root/assets/message-circle-Badhj-4D.js +0 -1
  216. package/dist/gateway/static/root/assets/message-square-fVE7Ghj1.js +0 -1
  217. package/dist/gateway/static/root/assets/models-hub-cache-B0EUPwTv.js +0 -1
  218. package/dist/gateway/static/root/assets/network-BUQLY1BV.js +0 -1
  219. package/dist/gateway/static/root/assets/note-detail-panel-xsKDIJdK.js +0 -5
  220. package/dist/gateway/static/root/assets/notes-page-BFm7XnWH.js +0 -8
  221. package/dist/gateway/static/root/assets/paperclip-f1HujQY1.js +0 -1
  222. package/dist/gateway/static/root/assets/power-ZI-pBczI.js +0 -1
  223. package/dist/gateway/static/root/assets/project-detail-page-CRQGCRSU.js +0 -1
  224. package/dist/gateway/static/root/assets/projects-page-DcqylysA.js +0 -1
  225. package/dist/gateway/static/root/assets/remote-access-hub-Cq5MaiRW.js +0 -1
  226. package/dist/gateway/static/root/assets/scenes-page-GXJ-b3dO.js +0 -2
  227. package/dist/gateway/static/root/assets/server-BlHCBjiE.js +0 -1
  228. package/dist/gateway/static/root/assets/sessions-page-C6FwYIRA.js +0 -1
  229. package/dist/gateway/static/root/assets/settings-advanced-gate-BEyQiZs0.js +0 -1
  230. package/dist/gateway/static/root/assets/setup-status-panel-BhGKiTPf.js +0 -1
  231. package/dist/gateway/static/root/assets/shares-settings-DNmcCBfX.js +0 -1
  232. package/dist/gateway/static/root/assets/skill-api-BCAV_F1P.js +0 -1
  233. package/dist/gateway/static/root/assets/skill-card-icon-BrrpZ3Mw.js +0 -1
  234. package/dist/gateway/static/root/assets/skill-reload-api-BEV2WXGk.js +0 -1
  235. package/dist/gateway/static/root/assets/skills-page-C8zOGpKw.js +0 -2
  236. package/dist/gateway/static/root/assets/star-BUWJqJ5c.js +0 -1
  237. package/dist/gateway/static/root/assets/stethoscope-DRqTAtjD.js +0 -1
  238. package/dist/gateway/static/root/assets/store-SzD1Jvgm.js +0 -1
  239. package/dist/gateway/static/root/assets/system-settings-panel-C_lajq9u.js +0 -1
  240. package/dist/gateway/static/root/assets/task-detail-page-Dk8Bmlhw.js +0 -1
  241. package/dist/gateway/static/root/assets/tunnel-api-CYvKiE_f.js +0 -1
  242. package/dist/gateway/static/root/assets/upload-rrb46c3c.js +0 -1
  243. package/dist/gateway/static/root/assets/user-model-page-C_SPNZbP.js +0 -2
  244. package/dist/gateway/static/root/assets/user-round-C9jxPhMR.js +0 -1
  245. package/dist/gateway/static/root/assets/wand-sparkles-DWuJz5ya.js +0 -1
  246. package/dist/gateway/static/root/assets/workflow-run-setup-panel-X0Cyh2AR.js +0 -3
  247. package/dist/gateway/static/root/assets/workflows-page-BrL6dzf0.js +0 -6
  248. package/dist/src/workflows/draft/index.d.ts +0 -3
  249. package/dist/src/workflows/draft/index.js +0 -3
  250. package/dist/src/workflows/draft/workflow-draft-prompt.d.ts +0 -22
  251. package/dist/src/workflows/draft/workflow-draft-prompt.js +0 -54
  252. package/dist/src/workflows/draft/workflow-draft-service.d.ts +0 -12
  253. package/dist/src/workflows/draft/workflow-draft-service.js +0 -125
  254. package/dist/src/workflows/draft/workflow-draft-validator.d.ts +0 -4
  255. package/dist/src/workflows/draft/workflow-draft-validator.js +0 -123
  256. package/dist/src/workflows/draft/workflow-draft.types.d.ts +0 -44
  257. package/dist/src/workflows/draft/workflow-draft.types.js +0 -1
@@ -1,125 +0,0 @@
1
- import { createLogger } from "../../utils/logger/index.js";
2
- import { init_logger } from "../../utils/logger.js";
3
- import { getAgentDefaultModelRef, init_schema } from "../../config/schema.js";
4
- import { getDefaultModelSync, init_providers, resolveModel } from "../../providers/index.js";
5
- import { completeWithResolvedCredentials } from "../../providers/model-call.js";
6
- import { resolveModelSelector } from "../../config/agent-model-intents.js";
7
- import { buildWorkflowDraftPrompt, buildWorkflowDraftRepairPrompt } from "./workflow-draft-prompt.js";
8
- import { buildWorkflowDraftResponse, parseGeneratedWorkflowDraft } from "./workflow-draft-validator.js";
9
- //#region src/workflows/draft/workflow-draft-service.ts
10
- init_schema();
11
- init_providers();
12
- init_logger();
13
- const log = createLogger("WorkflowDraft");
14
- const DEFAULT_MAX_REPAIR_ATTEMPTS = 2;
15
- var WorkflowDraftService = class {
16
- constructor(options) {
17
- this.options = options;
18
- }
19
- async createDraft(request, signal) {
20
- const prompt = request.prompt.trim();
21
- if (!prompt) throw new Error("prompt is required");
22
- const modelRef = resolveDraftModelRef(this.options.config, request.agentId);
23
- const model = resolveModel(modelRef);
24
- const maxRepairAttempts = this.options.maxRepairAttempts ?? DEFAULT_MAX_REPAIR_ATTEMPTS;
25
- let messageContent = buildWorkflowDraftPrompt({
26
- prompt,
27
- language: request.language,
28
- mode: request.mode ?? (request.existingGraph ? "improve" : "create"),
29
- existingGraph: request.existingGraph,
30
- constraints: request.constraints
31
- });
32
- let lastIssues = [];
33
- let lastText = "";
34
- for (let attempt = 0; attempt <= maxRepairAttempts; attempt += 1) {
35
- lastText = extractText(await completeWithResolvedCredentials(model, { messages: [{
36
- role: "user",
37
- content: messageContent,
38
- timestamp: Date.now()
39
- }] }, {
40
- maxTokens: 4096,
41
- temperature: attempt === 0 ? .25 : .1,
42
- signal
43
- }));
44
- try {
45
- const response = buildWorkflowDraftResponse(parseGeneratedWorkflowDraft(lastText), request.constraints);
46
- const blockingIssues = getBlockingDraftIssues(response);
47
- if (blockingIssues.length === 0) return {
48
- ...response,
49
- repairAttempts: attempt
50
- };
51
- lastIssues = blockingIssues;
52
- } catch (err) {
53
- lastIssues = [{
54
- source: "parse",
55
- severity: "error",
56
- code: "invalid_model_output",
57
- message: err instanceof Error ? err.message : String(err)
58
- }];
59
- }
60
- if (attempt >= maxRepairAttempts) break;
61
- log.warn({
62
- modelRef,
63
- attempt: attempt + 1,
64
- issueCount: lastIssues.length,
65
- preview: lastText.slice(0, 500)
66
- }, "Workflow draft validation failed; asking model to repair");
67
- messageContent = buildWorkflowDraftRepairPrompt({
68
- prompt,
69
- language: request.language,
70
- constraints: request.constraints,
71
- previousOutput: lastText,
72
- issues: lastIssues
73
- });
74
- }
75
- const message = `Unable to generate a valid workflow draft after ${maxRepairAttempts + 1} attempts: ${formatRepairIssues(lastIssues)}`;
76
- log.warn({
77
- modelRef,
78
- issues: lastIssues,
79
- preview: lastText.slice(0, 500)
80
- }, message);
81
- throw new Error(message);
82
- }
83
- };
84
- function resolveDraftModelRef(config, agentId) {
85
- try {
86
- return resolveModelSelector(config, agentId, "reasoning");
87
- } catch {
88
- return getAgentDefaultModelRef() ?? getDefaultModelSync(config);
89
- }
90
- }
91
- function extractText(result) {
92
- const content = result.content;
93
- if (typeof content === "string") return content;
94
- if (Array.isArray(content)) return content.map((item) => {
95
- if (item && typeof item === "object" && item.type === "text") return String(item.text ?? "");
96
- return "";
97
- }).join("");
98
- return "";
99
- }
100
- function getBlockingDraftIssues(response) {
101
- const validationIssues = [...response.validation.errors.map((issue) => ({
102
- source: "validation",
103
- severity: "error",
104
- code: issue.code,
105
- message: issue.message
106
- })), ...response.validation.warnings.map((issue) => ({
107
- source: "validation",
108
- severity: "warning",
109
- code: issue.code,
110
- message: issue.message
111
- }))];
112
- const lintIssues = response.lint.filter((issue) => issue.severity === "error").map((issue) => ({
113
- source: "lint",
114
- severity: issue.severity,
115
- code: issue.code,
116
- message: issue.message
117
- }));
118
- return [...validationIssues, ...lintIssues];
119
- }
120
- function formatRepairIssues(issues) {
121
- if (issues.length === 0) return "unknown validation failure";
122
- return issues.slice(0, 5).map((issue) => `${issue.source}:${issue.code}: ${issue.message}`).join("; ");
123
- }
124
- //#endregion
125
- export { WorkflowDraftService, resolveDraftModelRef };
@@ -1,4 +0,0 @@
1
- import type { GeneratedWorkflowDraft, WorkflowDraftConstraints, WorkflowDraftLintIssue, WorkflowDraftResponse } from './workflow-draft.types.js';
2
- export declare function parseGeneratedWorkflowDraft(raw: string): GeneratedWorkflowDraft;
3
- export declare function buildWorkflowDraftResponse(draft: GeneratedWorkflowDraft, constraints?: WorkflowDraftConstraints): WorkflowDraftResponse;
4
- export declare function lintWorkflowDraft(draft: GeneratedWorkflowDraft, constraints?: WorkflowDraftConstraints): WorkflowDraftLintIssue[];
@@ -1,123 +0,0 @@
1
- import { validateWorkflowDefinitionInput } from "../domain/validation.js";
2
- import { randomUUID } from "node:crypto";
3
- //#region src/workflows/draft/workflow-draft-validator.ts
4
- function parseGeneratedWorkflowDraft(raw) {
5
- const parsed = JSON.parse(extractJsonObject(raw));
6
- return {
7
- name: normalizeWorkflowName(String(parsed.name ?? "custom_workflow")),
8
- graph: normalizeGraph(parsed.graph),
9
- manifest: normalizeManifest(parsed.manifest),
10
- explanation: String(parsed.explanation ?? ""),
11
- assumptions: stringArray(parsed.assumptions),
12
- risks: stringArray(parsed.risks)
13
- };
14
- }
15
- function buildWorkflowDraftResponse(draft, constraints) {
16
- const validation = validateWorkflowDefinitionInput({
17
- name: draft.name,
18
- graph: draft.graph
19
- });
20
- return {
21
- draftId: randomUUID(),
22
- repairAttempts: 0,
23
- ...draft,
24
- permissionsSummary: summarizePermissions(draft.manifest),
25
- validation,
26
- lint: lintWorkflowDraft(draft, constraints),
27
- suggestedInputs: suggestedInputsFromManifest(draft.manifest)
28
- };
29
- }
30
- function lintWorkflowDraft(draft, constraints) {
31
- const issues = [];
32
- const { manifest, graph } = draft;
33
- if (!manifest.inputSchema) issues.push({
34
- severity: "warning",
35
- code: "missing_input_schema",
36
- message: "Draft does not define an input schema."
37
- });
38
- if (!manifest.outputSchema) issues.push({
39
- severity: "warning",
40
- code: "missing_output_schema",
41
- message: "Draft does not define an output schema."
42
- });
43
- if (manifest.permissions?.network && constraints?.allowNetwork === false) issues.push({
44
- severity: "error",
45
- code: "unsafe_permission",
46
- message: "Draft requests network access, but network is disabled."
47
- });
48
- if (manifest.permissions?.fileSystem === "write" && constraints?.fileSystem !== "write") issues.push({
49
- severity: "warning",
50
- code: "unsafe_permission",
51
- message: "Draft requests filesystem write access."
52
- });
53
- const phases = new Set(graph.nodes.map((node) => node.phaseId).filter(Boolean));
54
- if (constraints?.maxPhases && phases.size > constraints.maxPhases) issues.push({
55
- severity: "warning",
56
- code: "too_many_agents",
57
- message: `Draft has ${phases.size} phases, above the requested maximum.`
58
- });
59
- const agents = graph.nodes.filter((node) => node.kind === "agent");
60
- if (constraints?.maxSubagents && agents.length > constraints.maxSubagents) issues.push({
61
- severity: "warning",
62
- code: "too_many_agents",
63
- message: `Draft has ${agents.length} agents, above the requested maximum.`
64
- });
65
- if (constraints?.allowedTools?.length) {
66
- const unknown = agents.flatMap((node) => node.config.toolset ?? []).filter((tool) => !constraints.allowedTools.includes(tool));
67
- for (const tool of [...new Set(unknown)]) issues.push({
68
- severity: "warning",
69
- code: "unknown_tool",
70
- message: `Tool '${tool}' is outside the requested allowlist.`
71
- });
72
- }
73
- return issues;
74
- }
75
- function extractJsonObject(raw) {
76
- const trimmed = raw.trim();
77
- if (trimmed.startsWith("{") && trimmed.endsWith("}")) return trimmed;
78
- const fenced = trimmed.match(/```(?:json)?\s*([\s\S]*?)```/i)?.[1]?.trim();
79
- if (fenced?.startsWith("{")) return fenced;
80
- const start = trimmed.indexOf("{");
81
- const end = trimmed.lastIndexOf("}");
82
- if (start >= 0 && end > start) return trimmed.slice(start, end + 1);
83
- throw new Error("Model did not return a JSON object.");
84
- }
85
- function normalizeGraph(value) {
86
- if (!value || typeof value !== "object" || Array.isArray(value)) return {
87
- schemaVersion: 1,
88
- nodes: [],
89
- edges: []
90
- };
91
- return value;
92
- }
93
- function normalizeManifest(value) {
94
- return value && typeof value === "object" && !Array.isArray(value) ? value : {};
95
- }
96
- function stringArray(value) {
97
- return Array.isArray(value) ? value.map(String).filter(Boolean) : [];
98
- }
99
- function normalizeWorkflowName(value) {
100
- const normalized = value.trim().toLowerCase().replace(/[^a-z0-9]+/g, "_").replace(/^_+|_+$/g, "");
101
- return /^[a-z]/.test(normalized) ? normalized : `workflow_${normalized || "draft"}`;
102
- }
103
- function summarizePermissions(manifest) {
104
- const permissions = manifest.permissions;
105
- if (!permissions) return ["No explicit permissions requested."];
106
- const values = [];
107
- if (permissions.tools?.length) values.push(`Tools: ${permissions.tools.join(", ")}`);
108
- if (permissions.network != null) values.push(`Network: ${permissions.network ? "enabled" : "disabled"}`);
109
- if (permissions.fileSystem) values.push(`Filesystem: ${permissions.fileSystem}`);
110
- if (permissions.approvalRequired) values.push("Approval required");
111
- return values.length ? values : ["No explicit permissions requested."];
112
- }
113
- function suggestedInputsFromManifest(manifest) {
114
- const properties = manifest.inputSchema?.properties;
115
- if (!properties) return void 0;
116
- return Object.entries(properties).slice(0, 8).map(([key, schema]) => ({
117
- key,
118
- label: typeof schema.title === "string" ? schema.title : key,
119
- example: typeof schema.default === "string" ? schema.default : schema.description ?? ""
120
- }));
121
- }
122
- //#endregion
123
- export { buildWorkflowDraftResponse, lintWorkflowDraft, parseGeneratedWorkflowDraft };
@@ -1,44 +0,0 @@
1
- import type { WorkflowDefinitionManifest, WorkflowGraph } from '../domain/definition.js';
2
- import type { WorkflowDefinitionValidationResult } from '../domain/validation.js';
3
- export type WorkflowDraftMode = 'create' | 'improve';
4
- export interface WorkflowDraftConstraints {
5
- allowedTools?: string[];
6
- allowNetwork?: boolean;
7
- fileSystem?: 'none' | 'read' | 'write';
8
- maxPhases?: number;
9
- maxSubagents?: number;
10
- outputFormat?: 'report' | 'json' | 'actions';
11
- }
12
- export interface CreateWorkflowDraftRequest {
13
- prompt: string;
14
- agentId: string;
15
- language?: 'en' | 'zh';
16
- mode?: WorkflowDraftMode;
17
- existingGraph?: WorkflowGraph;
18
- constraints?: WorkflowDraftConstraints;
19
- }
20
- export interface WorkflowDraftLintIssue {
21
- severity: 'error' | 'warning';
22
- code: 'missing_input_schema' | 'missing_output_schema' | 'unsafe_permission' | 'too_many_agents' | 'unknown_tool' | 'weak_phase_names';
23
- message: string;
24
- }
25
- export interface GeneratedWorkflowDraft {
26
- name: string;
27
- graph: WorkflowGraph;
28
- manifest: WorkflowDefinitionManifest;
29
- explanation: string;
30
- assumptions: string[];
31
- risks: string[];
32
- }
33
- export interface WorkflowDraftResponse extends GeneratedWorkflowDraft {
34
- draftId: string;
35
- repairAttempts: number;
36
- permissionsSummary: string[];
37
- validation: WorkflowDefinitionValidationResult;
38
- lint: WorkflowDraftLintIssue[];
39
- suggestedInputs?: Array<{
40
- key: string;
41
- label: string;
42
- example: string;
43
- }>;
44
- }
@@ -1 +0,0 @@
1
- export {};