@xopcai/xopc 0.0.251 → 0.0.252

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 (329) hide show
  1. package/README.md +8 -5
  2. package/README.zh-CN.md +8 -5
  3. package/dist/browser-ext/dist/background.js +358 -768
  4. package/dist/browser-ext/manifest.json +1 -2
  5. package/dist/extensions/telegram/xopc.extension.json +1 -1
  6. package/dist/gateway/static/root/assets/{activity-store-DfBjTSo9.js → activity-store-w3eq3YpP.js} +1 -1
  7. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Bo_dmLv8.js → agent-avatar-dicebear-k039rbUz.js} +1 -1
  8. package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-kILWelNb.js → agent-defaults-settings-panel-D4J4oq8p.js} +1 -1
  9. package/dist/gateway/static/root/assets/{agents-yuUn8n-f.js → agents-Bmth_bSQ.js} +1 -1
  10. package/dist/gateway/static/root/assets/{api-zxpcJfgj.js → api-2joIfbrH.js} +1 -1
  11. package/dist/gateway/static/root/assets/{app-management-settings-panel-Cz56nrVF.js → app-management-settings-panel-ByJ4kiD0.js} +1 -1
  12. package/dist/gateway/static/root/assets/{appearance-settings-DxSws5U4.js → appearance-settings-BK2Jga-B.js} +1 -1
  13. package/dist/gateway/static/root/assets/apps-page-B3ky7cWU.js +1 -0
  14. package/dist/gateway/static/root/assets/{archive-plugin-7k15-hqo.js → archive-plugin-DMDKtYpi.js} +1 -1
  15. package/dist/gateway/static/root/assets/{attachment-load-B-SFpjd9.js → attachment-load-B764Ql3Z.js} +1 -1
  16. package/dist/gateway/static/root/assets/{automations-page-Qy36j19q.js → automations-page-D-sO8CZe.js} +1 -1
  17. package/dist/gateway/static/root/assets/automations-workspace-Ds5-_-9z.js +6 -0
  18. package/dist/gateway/static/root/assets/{binary-plugins-CPOZQt8F.js → binary-plugins-fxtzYRpv.js} +1 -1
  19. package/dist/gateway/static/root/assets/{block-editor-DhvVlIp9.js → block-editor-Bcjtvckh.js} +3 -3
  20. package/dist/gateway/static/root/assets/browser-automation-inputs-BSmnusjD.js +1 -0
  21. package/dist/gateway/static/root/assets/browser-automations-page-DC_OQIBk.js +3 -0
  22. package/dist/gateway/static/root/assets/browser-settings-page-C1FojyG6.js +3 -0
  23. package/dist/gateway/static/root/assets/capabilities-settings-panel-Bs59UCut.js +7 -0
  24. package/dist/gateway/static/root/assets/channels-settings-CM9vNmoo.js +1 -0
  25. package/dist/gateway/static/root/assets/{channels-status-swr-CX-yWwLD.js → channels-status-swr-BuWjIG_a.js} +1 -1
  26. package/dist/gateway/static/root/assets/{chat-terminal-dock-1PJoxRuV.js → chat-terminal-dock-5SevEo_I.js} +2 -2
  27. package/dist/gateway/static/root/assets/connectors-page-BPZ44D-V.js +2 -0
  28. package/dist/gateway/static/root/assets/{cron-expression-CBCc6zFA.js → cron-expression-DtsfalBM.js} +1 -1
  29. package/dist/gateway/static/root/assets/{date-picker-u8K5Kt_N.js → date-picker-tDEQV5TP.js} +1 -1
  30. package/dist/gateway/static/root/assets/{dependency-picker-y_i_cnpz.js → dependency-picker-HhNwg0Y2.js} +1 -1
  31. package/dist/gateway/static/root/assets/{desktop-pet-DyL0JxLm.js → desktop-pet-acU4Li-C.js} +1 -1
  32. package/dist/gateway/static/root/assets/{desktop-pet-settings-d2d_IsyP.js → desktop-pet-settings-R84AR0Pe.js} +1 -1
  33. package/dist/gateway/static/root/assets/{extension-debug-page-DqIBKJwl.js → extension-debug-page-CrLlRkSN.js} +1 -1
  34. package/dist/gateway/static/root/assets/{extension-page-DUW1xxj2.js → extension-page-BH5lmZXE.js} +1 -1
  35. package/dist/gateway/static/root/assets/{extension-settings-page-BHY9qaNw.js → extension-settings-page-BscjNAd1.js} +1 -1
  36. package/dist/gateway/static/root/assets/{gateway-config-swr-CMNbl0FZ.js → gateway-config-swr-9HidFZUd.js} +1 -1
  37. package/dist/gateway/static/root/assets/gateway-settings-BxLcW6ij.js +1 -0
  38. package/dist/gateway/static/root/assets/{gateway-startup-retry-CR7Xg8As.js → gateway-startup-retry-DRCPXONr.js} +1 -1
  39. package/dist/gateway/static/root/assets/{heartbeat-settings-7CD9iPR7.js → heartbeat-settings-K5Zhl2rx.js} +1 -1
  40. package/dist/gateway/static/root/assets/home-page-CZAg9RBv.js +1 -0
  41. package/dist/gateway/static/root/assets/{image-generation-api-C5mn73ca.js → image-generation-api-CR6Kle8H.js} +1 -1
  42. package/dist/gateway/static/root/assets/index-D4Ykja-U.js +72 -0
  43. package/dist/gateway/static/root/assets/index-zIJ3AXgR.css +2 -0
  44. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-BtlqMleF.js → keyboard-shortcuts-settings-B1QR49-7.js} +1 -1
  45. package/dist/gateway/static/root/assets/{local-app-workbench-page-BjxfkjxE.js → local-app-workbench-page-wicoV-ti.js} +2 -2
  46. package/dist/gateway/static/root/assets/{local-apps-page-B7xqQe2s.js → local-apps-page-C74It-T8.js} +1 -1
  47. package/dist/gateway/static/root/assets/{locale-store-CF4erhjB.js → locale-store-BfZGZKSs.js} +1 -1
  48. package/dist/gateway/static/root/assets/{logs-page-kACaPZKL.js → logs-page-xX-7S49A.js} +2 -2
  49. package/dist/gateway/static/root/assets/{management-settings-A432siER.js → management-settings-1kNnYL97.js} +1 -1
  50. package/dist/gateway/static/root/assets/{markdown-view-CQvzsE24.js → markdown-view-DjiwT28p.js} +2 -2
  51. package/dist/gateway/static/root/assets/{media-plugins-CpvYiauZ.js → media-plugins-B5c0AoS1.js} +1 -1
  52. package/dist/gateway/static/root/assets/messages-DaIwVWar.js +3 -0
  53. package/dist/gateway/static/root/assets/{mobile-pairing-wizard-DyjVGngO.js → mobile-pairing-wizard-CsIZqK51.js} +1 -1
  54. package/dist/gateway/static/root/assets/note-detail-panel-CfWxopl4.js +5 -0
  55. package/dist/gateway/static/root/assets/notes-page-CYN-LCHJ.js +8 -0
  56. package/dist/gateway/static/root/assets/{page-tabs-B3FKzjR6.js → page-tabs-CqJN6Ljz.js} +1 -1
  57. package/dist/gateway/static/root/assets/{preview-open-alternatives-DnjrwAHD.js → preview-open-alternatives-DqRIGxf4.js} +1 -1
  58. package/dist/gateway/static/root/assets/{product-open-page-COcr_NUJ.js → product-open-page-DE2nPE_K.js} +1 -1
  59. package/dist/gateway/static/root/assets/project-detail-page-B5G3LzDq.js +1 -0
  60. package/dist/gateway/static/root/assets/{projects-page-BzH8pjEz.js → projects-page-CuVK2mKu.js} +1 -1
  61. package/dist/gateway/static/root/assets/{registry-api-BsRBlji7.js → registry-api-Bpy8XX-5.js} +1 -1
  62. package/dist/gateway/static/root/assets/remote-access-hub-Dnd73xWt.js +1 -0
  63. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-LO4wZ_dO.js → runtime-tools-settings-panel-Bb4b74-P.js} +2 -2
  64. package/dist/gateway/static/root/assets/{schema-form-crcj4-Pm.js → schema-form-DoPU5j3J.js} +1 -1
  65. package/dist/gateway/static/root/assets/sessions-page-XL4LyKZe.js +1 -0
  66. package/dist/gateway/static/root/assets/settings-advanced-gate-0ForzDSS.js +1 -0
  67. package/dist/gateway/static/root/assets/{settings-form-section-Bl4MvTmq.js → settings-form-section-Ci-9WajJ.js} +1 -1
  68. package/dist/gateway/static/root/assets/{settings-page-DplrjZ6x.js → settings-page-CL_2F95D.js} +1 -1
  69. package/dist/gateway/static/root/assets/setup-status-panel-DVws6XZc.js +1 -0
  70. package/dist/gateway/static/root/assets/{share-preview-page-CJP1kURj.js → share-preview-page-XUA3oKQX.js} +1 -1
  71. package/dist/gateway/static/root/assets/shares-settings-BwDvcacF.js +1 -0
  72. package/dist/gateway/static/root/assets/skill-reload-api-BJjrATqE.js +1 -0
  73. package/dist/gateway/static/root/assets/{skills-page-DsjcKg9Q.js → skills-page-sXXAZDc9.js} +1 -1
  74. package/dist/gateway/static/root/assets/{skills-page.utils-D6gWBbvy.js → skills-page.utils-DD79Bl1I.js} +1 -1
  75. package/dist/gateway/static/root/assets/{system-settings-panel-_eCXfqCo.js → system-settings-panel-BEH64qBV.js} +1 -1
  76. package/dist/gateway/static/root/assets/task-detail-page-0jxMi75O.js +1 -0
  77. package/dist/gateway/static/root/assets/{theme-store-BOgkc_9D.js → theme-store-CISSxU1c.js} +1 -1
  78. package/dist/gateway/static/root/assets/{tunnel-api-W5mktxl1.js → tunnel-api-DrKDhnJm.js} +1 -1
  79. package/dist/gateway/static/root/assets/{use-autosave-Na2DYzT3.js → use-autosave-CPYePL-Q.js} +1 -1
  80. package/dist/gateway/static/root/assets/user-model-page-B6zLDfDl.js +2 -0
  81. package/dist/gateway/static/root/assets/{voice-api-key-field-OXweUxS_.js → voice-api-key-field-DKqzrCXx.js} +1 -1
  82. package/dist/gateway/static/root/assets/{voice-config-api-C-ryeIxj.js → voice-config-api-e9xWjwBX.js} +1 -1
  83. package/dist/gateway/static/root/assets/{work-discovery-overlay-BqOsO47I.js → work-discovery-overlay-kTQug6bq.js} +1 -1
  84. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-B9S_lfT1.js → workflow-run-setup-panel-m9SKj_GT.js} +2 -2
  85. package/dist/gateway/static/root/assets/workflows-page-Bcd1XqP7.js +5 -0
  86. package/dist/gateway/static/root/index.html +10 -10
  87. package/dist/package.js +1 -1
  88. package/dist/packages/gateway-contract/src/new-session.js +9 -0
  89. package/dist/src/agent/agent-manager.d.ts +2 -1
  90. package/dist/src/agent/agent-manager.js +6 -5
  91. package/dist/src/agent/background-review/run-background-review.js +1 -1
  92. package/dist/src/agent/coding/repository-instructions.js +2 -2
  93. package/dist/src/agent/coding/workspace-revision.js +2 -2
  94. package/dist/src/agent/commands/command-isolation.js +2 -2
  95. package/dist/src/agent/embedded/model-runtime.js +1 -1
  96. package/dist/src/agent/embedded/run-for-session.js +1 -1
  97. package/dist/src/agent/external-tools/composio-provider.d.ts +1 -0
  98. package/dist/src/agent/external-tools/composio-provider.js +64 -34
  99. package/dist/src/agent/external-tools/search-error.js +5 -3
  100. package/dist/src/agent/image/tool-model-config.js +1 -1
  101. package/dist/src/agent/mcp/oauth/mcp-oauth-store.js +1 -1
  102. package/dist/src/agent/service.js +4 -3
  103. package/dist/src/agent/service.types.d.ts +2 -1
  104. package/dist/src/agent/session/session-inspector.js +1 -1
  105. package/dist/src/agent/skills/hub-lock.js +1 -1
  106. package/dist/src/agent/skills/marketplace/adapters/store/store-api-client.js +4 -0
  107. package/dist/src/agent/tasks/task-judge-service.js +3 -3
  108. package/dist/src/agent/tool-manuals/browser.d.ts +1 -1
  109. package/dist/src/agent/tool-manuals/browser.js +15 -226
  110. package/dist/src/agent/tools/browser/tool/browser-use-tool.d.ts +4 -21
  111. package/dist/src/agent/tools/browser/tool/browser-use-tool.js +48 -165
  112. package/dist/src/agent/tools/browser/tool/schemas.d.ts +203 -16
  113. package/dist/src/agent/tools/browser/tool/schemas.js +146 -16
  114. package/dist/src/agent/tools/browser-automation-tool.d.ts +121 -0
  115. package/dist/src/agent/tools/browser-automation-tool.js +197 -0
  116. package/dist/src/agent/tools/factory.d.ts +6 -9
  117. package/dist/src/agent/tools/factory.js +28 -55
  118. package/dist/src/agent/tools/index.d.ts +2 -2
  119. package/dist/src/agent/tools/index.js +3 -3
  120. package/dist/src/agent/tools/review-workspace.js +2 -2
  121. package/dist/src/ai-assist/text-assist.js +1 -1
  122. package/dist/src/auth/credentials.js +2 -2
  123. package/dist/src/auth/oauth/xopc-cloud.js +3 -1
  124. package/dist/src/auth/profiles/store.js +1 -1
  125. package/dist/src/auth/sync-provider-auth.js +2 -2
  126. package/dist/src/automations/domain/defaults.js +1 -1
  127. package/dist/src/automations/domain/types.d.ts +5 -5
  128. package/dist/src/automations/domain/validation.d.ts +12 -12
  129. package/dist/src/automations/domain/validation.js +3 -3
  130. package/dist/src/automations/draft/automation-draft-validator.d.ts +3 -3
  131. package/dist/src/automations/draft/automation-draft-validator.js +1 -1
  132. package/dist/src/automations/service/action-executor.d.ts +1 -1
  133. package/dist/src/automations/service/action-executor.js +7 -7
  134. package/dist/src/browser/{recipes → automations}/index.d.ts +1 -0
  135. package/dist/src/browser/automations/index.js +4 -0
  136. package/dist/src/browser/automations/repository.d.ts +13 -0
  137. package/dist/src/browser/automations/repository.js +60 -0
  138. package/dist/src/browser/automations/runner.d.ts +17 -0
  139. package/dist/src/browser/automations/runner.js +173 -0
  140. package/dist/src/browser/automations/runtime-service.d.ts +6 -0
  141. package/dist/src/browser/automations/runtime-service.js +37 -0
  142. package/dist/src/browser/automations/schema.d.ts +144 -0
  143. package/dist/src/browser/automations/schema.js +135 -0
  144. package/dist/src/browser/automations/service.d.ts +146 -0
  145. package/dist/src/browser/automations/service.js +168 -0
  146. package/dist/src/browser/automations/types.d.ts +90 -0
  147. package/dist/src/browser/cache-dir-policy.d.ts +1 -1
  148. package/dist/src/browser/cache-dir-policy.js +1 -4
  149. package/dist/src/browser/drivers/browser-driver.d.ts +17 -0
  150. package/dist/src/browser/drivers/create-driver.d.ts +3 -0
  151. package/dist/src/browser/drivers/create-driver.js +84 -0
  152. package/dist/src/browser/drivers/extension-driver.d.ts +20 -0
  153. package/dist/src/browser/drivers/extension-driver.js +47 -0
  154. package/dist/src/browser/drivers/playwright-driver.d.ts +38 -0
  155. package/dist/src/browser/drivers/playwright-driver.js +406 -0
  156. package/dist/src/browser/index.d.ts +10 -15
  157. package/dist/src/browser/index.js +10 -15
  158. package/dist/src/browser/install-lock.d.ts +1 -2
  159. package/dist/src/browser/install-lock.js +3 -9
  160. package/dist/src/browser/install-progress.d.ts +1 -1
  161. package/dist/src/browser/observation/format.d.ts +2 -0
  162. package/dist/src/browser/observation/format.js +26 -0
  163. package/dist/src/browser/policy/approval-store.d.ts +17 -0
  164. package/dist/src/browser/policy/approval-store.js +62 -0
  165. package/dist/src/browser/policy/browser-policy.d.ts +3 -0
  166. package/dist/src/browser/policy/browser-policy.js +27 -0
  167. package/dist/src/browser/providers/browser-ext-install.d.ts +1 -1
  168. package/dist/src/browser/providers/browser-ext-install.js +4 -6
  169. package/dist/src/browser/providers/browser-use.js +1 -1
  170. package/dist/src/browser/providers/browserbase.js +1 -1
  171. package/dist/src/browser/providers/extension-ws-acquire.d.ts +1 -4
  172. package/dist/src/browser/providers/extension-ws-acquire.js +1 -13
  173. package/dist/src/browser/providers/extension.d.ts +3 -22
  174. package/dist/src/browser/providers/extension.js +7 -15
  175. package/dist/src/browser/providers/index.d.ts +2 -2
  176. package/dist/src/browser/providers/index.js +3 -3
  177. package/dist/src/browser/providers/types.d.ts +0 -94
  178. package/dist/src/browser/readiness.d.ts +4 -22
  179. package/dist/src/browser/readiness.js +55 -118
  180. package/dist/src/browser/runtime/browser-runtime.d.ts +30 -0
  181. package/dist/src/browser/runtime/browser-runtime.js +362 -0
  182. package/dist/src/browser/url-policy.d.ts +3 -3
  183. package/dist/src/browser/url-policy.js +7 -6
  184. package/dist/src/browser/verification/expectation.d.ts +2 -0
  185. package/dist/src/browser/verification/expectation.js +17 -0
  186. package/dist/src/cli/command-loaders.js +1 -0
  187. package/dist/src/cli/command-manifest.js +5 -1
  188. package/dist/src/cli/commands/browser-cli-helpers.d.ts +0 -6
  189. package/dist/src/cli/commands/browser-cli-helpers.js +11 -144
  190. package/dist/src/cli/commands/browser.d.ts +0 -5
  191. package/dist/src/cli/commands/browser.js +11 -152
  192. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  193. package/dist/src/cli/commands/doctor/checks/node-version.js +25 -9
  194. package/dist/src/cli/commands/doctor/checks/provider-auth.js +1 -1
  195. package/dist/src/cli/commands/models.js +1 -1
  196. package/dist/src/cli/commands/platform.d.ts +1 -0
  197. package/dist/src/cli/commands/platform.js +111 -0
  198. package/dist/src/config/index.js +4 -4
  199. package/dist/src/config/loader.js +10 -4
  200. package/dist/src/config/models-json.js +1 -1
  201. package/dist/src/config/schema.d.ts +131 -84
  202. package/dist/src/config/schema.js +112 -59
  203. package/dist/src/connectors/composio-sessions.js +1 -3
  204. package/dist/src/extensions/lockfile.js +1 -1
  205. package/dist/src/extensions/marketplace.js +4 -0
  206. package/dist/src/gateway/agents-admin.js +1 -1
  207. package/dist/src/gateway/file-path-classifier.js +1 -1
  208. package/dist/src/gateway/heartbeat/service.js +1 -1
  209. package/dist/src/gateway/hono/lib/config-payload.d.ts +12 -26
  210. package/dist/src/gateway/hono/lib/config-payload.js +11 -40
  211. package/dist/src/gateway/hono/routes/browser-automations.d.ts +3 -0
  212. package/dist/src/gateway/hono/routes/browser-automations.js +77 -0
  213. package/dist/src/gateway/hono/routes/browser-install.js +0 -32
  214. package/dist/src/gateway/hono/routes/browser.d.ts +0 -17
  215. package/dist/src/gateway/hono/routes/browser.js +46 -568
  216. package/dist/src/gateway/hono/routes/config-patch/misc.js +8 -1
  217. package/dist/src/gateway/hono/routes/config.js +0 -11
  218. package/dist/src/gateway/hono/routes/lazy-bundles.js +5 -5
  219. package/dist/src/gateway/hono/routes/models.js +1 -1
  220. package/dist/src/gateway/service/config-coordinator.js +1 -1
  221. package/dist/src/gateway/service.d.ts +4 -6
  222. package/dist/src/gateway/service.js +24 -27
  223. package/dist/src/heartbeat/index.js +1 -1
  224. package/dist/src/platform/client.d.ts +121 -0
  225. package/dist/src/platform/client.js +108 -0
  226. package/dist/src/platform/contracts.d.ts +194 -0
  227. package/dist/src/platform/contracts.js +150 -0
  228. package/dist/src/platform/index.d.ts +4 -0
  229. package/dist/src/platform/index.js +9 -0
  230. package/dist/src/platform/resolution.d.ts +4 -0
  231. package/dist/src/platform/resolution.js +16 -0
  232. package/dist/src/platform/worker.d.ts +6 -0
  233. package/dist/src/platform/worker.js +75 -0
  234. package/dist/src/providers/auth-runtime/resolve-auth.js +1 -1
  235. package/dist/src/providers/index.js +2 -2
  236. package/dist/src/providers/model-registry.js +1 -1
  237. package/dist/src/providers/register-runtime-providers.js +1 -1
  238. package/dist/src/providers/xopc-cloud-config.js +3 -1
  239. package/dist/src/session/session-context-for-llm.js +41 -1
  240. package/dist/src/share/hosted-session-share.js +3 -1
  241. package/dist/src/share/share-thumbnail.js +1 -1
  242. package/dist/src/storage/sqlite/migrations/153_browser_control_v2.sql +45 -0
  243. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  244. package/dist/src/storage/sqlite/migrations/runner.js +3 -3
  245. package/dist/src/storage/sqlite/migrations/runner.ts +1 -1
  246. package/dist/src/storage/sqlite/schema.js +1 -1
  247. package/dist/src/storage/sqlite/schema.sql +16 -20
  248. package/dist/src/tasks/home-query-service.js +1 -1
  249. package/dist/src/tui/tui-startup-resources.js +1 -1
  250. package/dist/src/tui/tui.js +1 -1
  251. package/dist/src/tunnel/env.js +3 -1
  252. package/dist/src/work-discovery/service.js +1 -1
  253. package/dist/src/workflows/service/workflow-run-service.js +1 -1
  254. package/package.json +6 -6
  255. package/dist/gateway/static/root/assets/apps-page-BnizTdgs.js +0 -1
  256. package/dist/gateway/static/root/assets/automations-workspace-CZRKqSqY.js +0 -6
  257. package/dist/gateway/static/root/assets/browser-settings-page-pN5LbChY.js +0 -8
  258. package/dist/gateway/static/root/assets/browser-workflow-inputs-BX1-uM9L.js +0 -1
  259. package/dist/gateway/static/root/assets/browser-workflows-page-C65MI57t.js +0 -3
  260. package/dist/gateway/static/root/assets/capabilities-settings-panel-CJw2e16J.js +0 -7
  261. package/dist/gateway/static/root/assets/channels-settings-CRgjb4Ck.js +0 -1
  262. package/dist/gateway/static/root/assets/connectors-page-Dcpdy06y.js +0 -2
  263. package/dist/gateway/static/root/assets/gateway-config-api-e3BRcgDx.js +0 -1
  264. package/dist/gateway/static/root/assets/gateway-settings-Cheo0Rkc.js +0 -1
  265. package/dist/gateway/static/root/assets/home-page-DVrTRqNc.js +0 -1
  266. package/dist/gateway/static/root/assets/index-B7CX4Qob.css +0 -2
  267. package/dist/gateway/static/root/assets/index-BHrpyJ4t.js +0 -72
  268. package/dist/gateway/static/root/assets/messages-Cf5hpZE6.js +0 -3
  269. package/dist/gateway/static/root/assets/note-detail-panel-CUd8O4K7.js +0 -5
  270. package/dist/gateway/static/root/assets/notes-page-BLQwd39W.js +0 -8
  271. package/dist/gateway/static/root/assets/project-detail-page-NttW338u.js +0 -1
  272. package/dist/gateway/static/root/assets/remote-access-hub-BxpjSDnL.js +0 -1
  273. package/dist/gateway/static/root/assets/sessions-page-BLMaibOb.js +0 -1
  274. package/dist/gateway/static/root/assets/settings-advanced-gate-BRvvKhoH.js +0 -1
  275. package/dist/gateway/static/root/assets/setup-status-panel-DTOsxQC1.js +0 -1
  276. package/dist/gateway/static/root/assets/shares-settings-CemgzEi4.js +0 -1
  277. package/dist/gateway/static/root/assets/skill-reload-api-BWYanBlQ.js +0 -1
  278. package/dist/gateway/static/root/assets/task-detail-page-D0Z_K5JT.js +0 -1
  279. package/dist/gateway/static/root/assets/user-model-page-B_-SNat-.js +0 -2
  280. package/dist/gateway/static/root/assets/workflows-page-CNOT2Coo.js +0 -5
  281. package/dist/src/agent/tools/browser-recipe-tool.d.ts +0 -12
  282. package/dist/src/agent/tools/browser-recipe-tool.js +0 -113
  283. package/dist/src/browser/actions/extension-registry-bridge.d.ts +0 -5
  284. package/dist/src/browser/actions/extension-registry-bridge.js +0 -312
  285. package/dist/src/browser/actions/registry.d.ts +0 -5
  286. package/dist/src/browser/actions/registry.js +0 -741
  287. package/dist/src/browser/actions/types.d.ts +0 -65
  288. package/dist/src/browser/backend-from-config.d.ts +0 -22
  289. package/dist/src/browser/backend-from-config.js +0 -99
  290. package/dist/src/browser/browser-command-timeout.d.ts +0 -2
  291. package/dist/src/browser/browser-command-timeout.js +0 -11
  292. package/dist/src/browser/cdp-local-launcher.d.ts +0 -35
  293. package/dist/src/browser/cdp-local-launcher.js +0 -154
  294. package/dist/src/browser/cdp-supervisor.d.ts +0 -58
  295. package/dist/src/browser/cdp-supervisor.js +0 -133
  296. package/dist/src/browser/humanize.d.ts +0 -80
  297. package/dist/src/browser/humanize.js +0 -363
  298. package/dist/src/browser/manager.d.ts +0 -50
  299. package/dist/src/browser/manager.js +0 -251
  300. package/dist/src/browser/pipeline/output.d.ts +0 -35
  301. package/dist/src/browser/pipeline/output.js +0 -74
  302. package/dist/src/browser/pipeline/runner.d.ts +0 -27
  303. package/dist/src/browser/pipeline/runner.js +0 -453
  304. package/dist/src/browser/pipeline/schema.d.ts +0 -42
  305. package/dist/src/browser/pipeline/schema.js +0 -116
  306. package/dist/src/browser/pipeline/template.d.ts +0 -30
  307. package/dist/src/browser/pipeline/template.js +0 -112
  308. package/dist/src/browser/providers/cloakbrowser.d.ts +0 -83
  309. package/dist/src/browser/providers/cloakbrowser.js +0 -612
  310. package/dist/src/browser/recipes/index.js +0 -3
  311. package/dist/src/browser/recipes/repository.d.ts +0 -13
  312. package/dist/src/browser/recipes/repository.js +0 -81
  313. package/dist/src/browser/recipes/runtime-service.d.ts +0 -6
  314. package/dist/src/browser/recipes/runtime-service.js +0 -30
  315. package/dist/src/browser/recipes/service.d.ts +0 -36
  316. package/dist/src/browser/recipes/service.js +0 -186
  317. package/dist/src/browser/recipes/types.d.ts +0 -36
  318. package/dist/src/browser/schemas.d.ts +0 -53
  319. package/dist/src/browser/schemas.js +0 -68
  320. package/dist/src/browser/session-lifecycle.d.ts +0 -40
  321. package/dist/src/browser/session-lifecycle.js +0 -136
  322. package/dist/src/browser/snapshot-helpers.d.ts +0 -24
  323. package/dist/src/browser/snapshot-helpers.js +0 -70
  324. package/dist/src/browser/stealth.d.ts +0 -46
  325. package/dist/src/browser/stealth.js +0 -163
  326. package/dist/src/gateway/hono/routes/browser-workflows.d.ts +0 -3
  327. package/dist/src/gateway/hono/routes/browser-workflows.js +0 -78
  328. /package/dist/src/browser/{actions → automations}/types.js +0 -0
  329. /package/dist/src/browser/{recipes/types.js → drivers/browser-driver.js} +0 -0
@@ -1,116 +0,0 @@
1
- import { z } from "zod";
2
- import yaml from "js-yaml";
3
- //#region src/browser/pipeline/schema.ts
4
- const BROWSER_RECIPE_API_VERSION = "xopc.ai/browser-recipe/v1";
5
- const IdSchema = z.string().regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/).max(100);
6
- const JsonValueSchema = z.lazy(() => z.union([
7
- z.string(),
8
- z.number(),
9
- z.boolean(),
10
- z.null(),
11
- z.array(JsonValueSchema),
12
- z.record(z.string(), JsonValueSchema)
13
- ]));
14
- const PipelineArgSchema = z.object({
15
- type: z.enum([
16
- "string",
17
- "number",
18
- "integer",
19
- "boolean"
20
- ]),
21
- required: z.boolean().optional(),
22
- default: JsonValueSchema.optional(),
23
- description: z.string().max(500).optional(),
24
- choices: z.array(JsonValueSchema).optional()
25
- }).strict().superRefine((definition, ctx) => {
26
- const matchesType = (value) => {
27
- if (definition.type === "string") return typeof value === "string";
28
- if (definition.type === "boolean") return typeof value === "boolean";
29
- if (definition.type === "integer") return typeof value === "number" && Number.isInteger(value);
30
- return typeof value === "number" && Number.isFinite(value);
31
- };
32
- if (definition.default !== void 0 && !matchesType(definition.default)) ctx.addIssue({
33
- code: "custom",
34
- path: ["default"],
35
- message: `Default must match arg type ${definition.type}.`
36
- });
37
- definition.choices?.forEach((choice, index) => {
38
- if (!matchesType(choice)) ctx.addIssue({
39
- code: "custom",
40
- path: ["choices", index],
41
- message: `Choice must match arg type ${definition.type}.`
42
- });
43
- });
44
- });
45
- const DomainSchema = z.string().trim().toLowerCase().regex(/^[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/, "Domain must be a hostname without scheme, path, port, or wildcard.");
46
- const StepSchema = z.record(z.string(), z.record(z.string(), z.unknown())).superRefine((step, ctx) => {
47
- if (Object.keys(step).length !== 1) ctx.addIssue({
48
- code: "custom",
49
- message: "Each step must contain exactly one action."
50
- });
51
- });
52
- const RecipeSchema = z.object({
53
- apiVersion: z.literal(BROWSER_RECIPE_API_VERSION),
54
- id: IdSchema,
55
- name: z.string().trim().min(1).max(200),
56
- description: z.string().max(2e3).optional(),
57
- risk: z.enum([
58
- "read_only",
59
- "account_write",
60
- "sensitive"
61
- ]),
62
- domains: z.array(DomainSchema).min(1),
63
- timeoutSeconds: z.number().int().min(1).max(3600).optional(),
64
- args: z.record(z.string(), PipelineArgSchema).default({}),
65
- pipeline: z.array(StepSchema).min(1),
66
- on_error: z.array(StepSchema).optional()
67
- }).strict();
68
- function stepsFromRaw(steps) {
69
- return steps.map((step) => {
70
- const [action, args] = Object.entries(step)[0];
71
- return {
72
- action,
73
- args
74
- };
75
- });
76
- }
77
- function parseBrowserPipeline(yamlSource) {
78
- let raw;
79
- try {
80
- raw = yaml.load(yamlSource);
81
- } catch (error) {
82
- return {
83
- ok: false,
84
- errors: [{
85
- path: "",
86
- message: `YAML parse error: ${error instanceof Error ? error.message : String(error)}`
87
- }]
88
- };
89
- }
90
- const parsed = RecipeSchema.safeParse(raw);
91
- if (!parsed.success) return {
92
- ok: false,
93
- errors: parsed.error.issues.map((issue) => ({
94
- path: issue.path.join("."),
95
- message: issue.message
96
- }))
97
- };
98
- return {
99
- ok: true,
100
- document: {
101
- apiVersion: parsed.data.apiVersion,
102
- id: parsed.data.id,
103
- name: parsed.data.name,
104
- description: parsed.data.description,
105
- risk: parsed.data.risk,
106
- domains: parsed.data.domains,
107
- timeoutSeconds: parsed.data.timeoutSeconds,
108
- args: parsed.data.args,
109
- pipeline: stepsFromRaw(parsed.data.pipeline),
110
- onError: parsed.data.on_error ? stepsFromRaw(parsed.data.on_error) : void 0
111
- },
112
- errors: []
113
- };
114
- }
115
- //#endregion
116
- export { BROWSER_RECIPE_API_VERSION, parseBrowserPipeline };
@@ -1,30 +0,0 @@
1
- /**
2
- * Pipeline template expression engine.
3
- *
4
- * Supports: ${{ args.xxx }}, ${{ last }}, ${{ outputs.0 }}, ${{ vars.name }},
5
- * ${{ error.message }} and simple pipe filters.
6
- * Does NOT execute arbitrary JavaScript — only whitelisted expressions.
7
- */
8
- export interface TemplateContext {
9
- args: Record<string, unknown>;
10
- last: unknown;
11
- outputs: unknown[];
12
- vars: Record<string, unknown>;
13
- error?: {
14
- code?: string;
15
- message?: string;
16
- };
17
- }
18
- export declare function resolvePath(obj: unknown, path: string): unknown;
19
- export declare function isTruthyValue(value: unknown): boolean;
20
- export declare function valueContains(actual: unknown, expected: unknown): boolean;
21
- export declare function evaluateRawExpression(expr: string, ctx: TemplateContext): unknown;
22
- /**
23
- * Resolve all `${{ ... }}` expressions in a string.
24
- */
25
- export declare function resolveTemplate(template: string, ctx: TemplateContext): string;
26
- export declare function resolveTemplateValue(value: string, ctx: TemplateContext): unknown;
27
- /**
28
- * Deep-resolve templates in an object/array/string value.
29
- */
30
- export declare function resolveTemplateDeep(value: unknown, ctx: TemplateContext): unknown;
@@ -1,112 +0,0 @@
1
- //#region src/browser/pipeline/template.ts
2
- /**
3
- * Pipeline template expression engine.
4
- *
5
- * Supports: ${{ args.xxx }}, ${{ last }}, ${{ outputs.0 }}, ${{ vars.name }},
6
- * ${{ error.message }} and simple pipe filters.
7
- * Does NOT execute arbitrary JavaScript — only whitelisted expressions.
8
- */
9
- const TEMPLATE_RE = /\$\{\{\s*(.+?)\s*\}\}/g;
10
- function parsePath(path) {
11
- return path.replace(/\[(\d+)\]/g, ".$1").split(".").map((part) => part.trim()).filter(Boolean);
12
- }
13
- function resolvePath(obj, path) {
14
- const parts = parsePath(path);
15
- let current = obj;
16
- for (const part of parts) {
17
- if (current === null || current === void 0) return void 0;
18
- if (Array.isArray(current)) {
19
- const index = Number(part);
20
- if (!Number.isInteger(index)) return void 0;
21
- current = current[index];
22
- } else if (typeof current === "object") current = current[part];
23
- else return;
24
- }
25
- return current;
26
- }
27
- function applyFilter(value, filter) {
28
- switch (filter.trim()) {
29
- case "json": return JSON.stringify(value, null, 2) ?? "null";
30
- case "string": return String(value ?? "");
31
- case "number": return String(Number(value));
32
- case "boolean": return String(Boolean(value));
33
- case "urlencode": return encodeURIComponent(String(value ?? ""));
34
- default: return String(value ?? "");
35
- }
36
- }
37
- function isTruthyValue(value) {
38
- if (value === null || value === void 0 || value === false) return false;
39
- if (typeof value === "number") return Number.isFinite(value) && value !== 0;
40
- if (typeof value === "string") return value.length > 0 && value !== "false" && value !== "0";
41
- if (Array.isArray(value)) return value.length > 0;
42
- return true;
43
- }
44
- function valueContains(actual, expected) {
45
- if (typeof actual === "string") return actual.includes(String(expected));
46
- if (Array.isArray(actual)) return actual.some((item) => JSON.stringify(item) === JSON.stringify(expected));
47
- if (actual && typeof actual === "object") return JSON.stringify(actual).includes(String(expected));
48
- return String(actual ?? "").includes(String(expected));
49
- }
50
- function evaluateRawExpression(expr, ctx) {
51
- const pipeIdx = expr.indexOf("|");
52
- let path = expr;
53
- let filter;
54
- if (pipeIdx > 0) {
55
- path = expr.slice(0, pipeIdx).trim();
56
- filter = expr.slice(pipeIdx + 1).trim();
57
- }
58
- let value;
59
- if (path === "last") value = ctx.last;
60
- else if (path.startsWith("last.")) value = resolvePath(ctx.last, path.slice(5));
61
- else if (path.startsWith("args.")) value = resolvePath(ctx.args, path.slice(5));
62
- else if (path === "outputs") value = ctx.outputs;
63
- else if (path.startsWith("outputs.")) value = resolvePath(ctx.outputs, path.slice(8));
64
- else if (path === "vars") value = ctx.vars;
65
- else if (path.startsWith("vars.")) value = resolvePath(ctx.vars, path.slice(5));
66
- else if (path.startsWith("error.")) value = resolvePath(ctx.error, path.slice(6));
67
- else if (path === "error") value = ctx.error?.message ?? "";
68
- else {
69
- value = resolvePath(ctx.args, path);
70
- if (value === void 0) return `\${{ ${expr} }}`;
71
- }
72
- if (filter) return applyFilter(value, filter);
73
- return value;
74
- }
75
- function stringifyTemplateValue(value) {
76
- if (value === void 0 || value === null) return "";
77
- if (typeof value === "string") return value;
78
- if (typeof value === "number" || typeof value === "boolean") return String(value);
79
- return JSON.stringify(value);
80
- }
81
- function evaluateExpression(expr, ctx) {
82
- return stringifyTemplateValue(evaluateRawExpression(expr, ctx));
83
- }
84
- /**
85
- * Resolve all `${{ ... }}` expressions in a string.
86
- */
87
- function resolveTemplate(template, ctx) {
88
- return template.replace(TEMPLATE_RE, (_match, expr) => {
89
- return evaluateExpression(expr.trim(), ctx);
90
- });
91
- }
92
- function resolveTemplateValue(value, ctx) {
93
- const trimmed = value.trim();
94
- const match = /^\$\{\{\s*(.+?)\s*\}\}$/.exec(trimmed);
95
- if (!match) return resolveTemplate(value, ctx);
96
- return evaluateRawExpression(match[1].trim(), ctx);
97
- }
98
- /**
99
- * Deep-resolve templates in an object/array/string value.
100
- */
101
- function resolveTemplateDeep(value, ctx) {
102
- if (typeof value === "string") return resolveTemplateValue(value, ctx);
103
- if (Array.isArray(value)) return value.map((item) => resolveTemplateDeep(item, ctx));
104
- if (value && typeof value === "object") {
105
- const result = {};
106
- for (const [k, v] of Object.entries(value)) result[resolveTemplate(k, ctx)] = resolveTemplateDeep(v, ctx);
107
- return result;
108
- }
109
- return value;
110
- }
111
- //#endregion
112
- export { evaluateRawExpression, isTruthyValue, resolvePath, resolveTemplate, resolveTemplateDeep, resolveTemplateValue, valueContains };
@@ -1,83 +0,0 @@
1
- /**
2
- * CloakBrowser provider — anti-fingerprint Chromium with stealth capabilities.
3
- *
4
- * Manages CloakBrowser binary download, stealth launch, CDP connection,
5
- * keep-open process reuse, and temporary profile lifecycle.
6
- *
7
- * Ported from brocli's cloak.rs to TypeScript, using Playwright's connectOverCDP
8
- * to produce a standard Browser/BrowserContext pair.
9
- */
10
- import { ChildProcess } from 'node:child_process';
11
- import type { Browser, BrowserContext } from 'playwright-core';
12
- import type { CloakBrowserConfig } from './types.js';
13
- interface PlatformInfo {
14
- tag: string;
15
- chromiumVersion: string;
16
- archiveExt: string;
17
- executableRelativePath: string;
18
- fingerprintPlatform: string;
19
- /**
20
- * Expected SHA-256 of the downloaded archive (lowercase hex). Empty string =
21
- * verification opt-out for this platform; warned but not fatal. To populate:
22
- * download the archive once, run `shasum -a 256 <file>`, paste here.
23
- */
24
- expectedSha256: string;
25
- }
26
- /** Test-only: enumerate platform manifests. */
27
- export declare function listCloakBrowserPlatforms(): PlatformInfo[];
28
- /** Test-only: resolved download URLs for a platform manifest (proxy first). */
29
- export declare function cloakBrowserArchiveDownloadUrls(platformInfo: PlatformInfo): string[];
30
- /** Default CloakBrowser home: ~/.xopc/bin/cloakbrowser (chromium-v*, profiles/, …). */
31
- export declare function defaultCloakBrowserCacheDir(): string;
32
- /** Resolve configured or default CloakBrowser cache root. */
33
- export declare function resolveCloakBrowserCacheDir(configured?: string): string;
34
- export interface CloakBrowserLaunchResult {
35
- browser?: Browser;
36
- context?: BrowserContext;
37
- childProcess: ChildProcess | null;
38
- temporaryProfileDir: string | null;
39
- cdpPort: number;
40
- userDataDir: string;
41
- reused: boolean;
42
- pid: number | null;
43
- }
44
- /** Resolve the persistent profile directory agents use (not ephemeral temp dirs). */
45
- export declare function resolveCloakBrowserPersistentProfileDir(config?: CloakBrowserConfig): string;
46
- export interface CloakBrowserRuntimeStatus {
47
- running: boolean;
48
- port: number;
49
- userDataDir: string;
50
- temporaryProfile: boolean;
51
- }
52
- /** Probe whether CloakBrowser CDP is listening on the configured keep-open port. */
53
- export declare function probeCloakBrowserRuntime(config?: CloakBrowserConfig): Promise<CloakBrowserRuntimeStatus>;
54
- /**
55
- * Launch or connect to a CloakBrowser instance and return a Playwright Browser + Context.
56
- */
57
- export declare function launchCloakBrowser(config?: CloakBrowserConfig): Promise<CloakBrowserLaunchResult>;
58
- /**
59
- * Cleanup a CloakBrowser session — kill process and remove temp profile if applicable.
60
- */
61
- export declare function cleanupCloakBrowser(childProcess: ChildProcess | null, temporaryProfileDir: string | null): Promise<void>;
62
- export interface CloakBrowserDoctorResult {
63
- installed: boolean;
64
- version: string | null;
65
- binaryPath: string | null;
66
- platform: string;
67
- cacheDir: string;
68
- expectedSha256: string;
69
- /** Primary URL the install flow would fetch from. */
70
- downloadUrl: string;
71
- /** Fallback URLs (rendered as alternatives in the install confirm dialog). */
72
- fallbackUrls: string[];
73
- /** True when `binaryPath` was user-supplied (UI should surface a warning). */
74
- customBinaryPath: boolean;
75
- }
76
- /**
77
- * Download (if needed), launch headlessly to verify, then return doctor status.
78
- * Used by gateway install endpoints and CLI.
79
- */
80
- export declare function installCloakBrowser(config?: CloakBrowserConfig): Promise<CloakBrowserDoctorResult>;
81
- /** Check CloakBrowser installation status. */
82
- export declare function cloakBrowserDoctor(config?: CloakBrowserConfig): Promise<CloakBrowserDoctorResult>;
83
- export {};