@vibesdotdev/control 0.0.0-stage → 1.0.0-rc.2

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 (523) hide show
  1. package/LICENSE +18 -0
  2. package/README.md +90 -2
  3. package/dist/browser/browser.cloud.plugin.d.ts +21 -0
  4. package/dist/browser/browser.cloud.plugin.d.ts.map +1 -0
  5. package/dist/browser/browser.cloud.plugin.js +37 -0
  6. package/dist/browser/browser.cloud.plugin.js.map +1 -0
  7. package/dist/browser/browser.consumer.plugin.d.ts +4 -0
  8. package/dist/browser/browser.consumer.plugin.d.ts.map +1 -0
  9. package/dist/browser/browser.consumer.plugin.js +77 -0
  10. package/dist/browser/browser.consumer.plugin.js.map +1 -0
  11. package/dist/browser/browser.plugin.d.ts +3 -0
  12. package/dist/browser/browser.plugin.d.ts.map +1 -0
  13. package/dist/browser/browser.plugin.js +3 -0
  14. package/dist/browser/browser.plugin.js.map +1 -0
  15. package/dist/browser/bun/webview.backend.d.ts +23 -0
  16. package/dist/browser/bun/webview.backend.d.ts.map +1 -0
  17. package/dist/browser/bun/webview.backend.js +262 -0
  18. package/dist/browser/bun/webview.backend.js.map +1 -0
  19. package/dist/browser/bun/webview.descriptor.d.ts +21 -0
  20. package/dist/browser/bun/webview.descriptor.d.ts.map +1 -0
  21. package/dist/browser/bun/webview.descriptor.js +21 -0
  22. package/dist/browser/bun/webview.descriptor.js.map +1 -0
  23. package/dist/browser/bun/webview.plugin.d.ts +3 -0
  24. package/dist/browser/bun/webview.plugin.d.ts.map +1 -0
  25. package/dist/browser/bun/webview.plugin.js +24 -0
  26. package/dist/browser/bun/webview.plugin.js.map +1 -0
  27. package/dist/browser/client/browser-client.d.ts +92 -0
  28. package/dist/browser/client/browser-client.d.ts.map +1 -0
  29. package/dist/browser/client/browser-client.js +138 -0
  30. package/dist/browser/client/browser-client.js.map +1 -0
  31. package/dist/browser/client/workspace-client.d.ts +29 -0
  32. package/dist/browser/client/workspace-client.d.ts.map +1 -0
  33. package/dist/browser/client/workspace-client.js +38 -0
  34. package/dist/browser/client/workspace-client.js.map +1 -0
  35. package/dist/browser/contracts.d.ts +246 -0
  36. package/dist/browser/contracts.d.ts.map +1 -0
  37. package/dist/browser/contracts.js +38 -0
  38. package/dist/browser/contracts.js.map +1 -0
  39. package/dist/browser/index.d.ts +6 -0
  40. package/dist/browser/index.d.ts.map +1 -0
  41. package/dist/browser/index.js +7 -0
  42. package/dist/browser/index.js.map +1 -0
  43. package/dist/browser/plugin.d.ts +3 -0
  44. package/dist/browser/plugin.d.ts.map +1 -0
  45. package/dist/browser/plugin.js +3 -0
  46. package/dist/browser/plugin.js.map +1 -0
  47. package/dist/browser/runtime/backend/kind.d.ts +23 -0
  48. package/dist/browser/runtime/backend/kind.d.ts.map +1 -0
  49. package/dist/browser/runtime/backend/kind.js +12 -0
  50. package/dist/browser/runtime/backend/kind.js.map +1 -0
  51. package/dist/browser/runtime/backend/playwright.descriptor.d.ts +20 -0
  52. package/dist/browser/runtime/backend/playwright.descriptor.d.ts.map +1 -0
  53. package/dist/browser/runtime/backend/playwright.descriptor.js +20 -0
  54. package/dist/browser/runtime/backend/playwright.descriptor.js.map +1 -0
  55. package/dist/browser/runtime/backend/resolve.d.ts +8 -0
  56. package/dist/browser/runtime/backend/resolve.d.ts.map +1 -0
  57. package/dist/browser/runtime/backend/resolve.js +43 -0
  58. package/dist/browser/runtime/backend/resolve.js.map +1 -0
  59. package/dist/browser/runtime/backend/types.d.ts +12 -0
  60. package/dist/browser/runtime/backend/types.d.ts.map +1 -0
  61. package/dist/browser/runtime/backend/types.js +12 -0
  62. package/dist/browser/runtime/backend/types.js.map +1 -0
  63. package/dist/browser/runtime/backends/playwright.backend.d.ts +71 -0
  64. package/dist/browser/runtime/backends/playwright.backend.d.ts.map +1 -0
  65. package/dist/browser/runtime/backends/playwright.backend.js +177 -0
  66. package/dist/browser/runtime/backends/playwright.backend.js.map +1 -0
  67. package/dist/browser/runtime/index.d.ts +3 -0
  68. package/dist/browser/runtime/index.d.ts.map +1 -0
  69. package/dist/browser/runtime/index.js +2 -0
  70. package/dist/browser/runtime/index.js.map +1 -0
  71. package/dist/browser/runtime/launcher.d.ts +18 -0
  72. package/dist/browser/runtime/launcher.d.ts.map +1 -0
  73. package/dist/browser/runtime/launcher.js +123 -0
  74. package/dist/browser/runtime/launcher.js.map +1 -0
  75. package/dist/browser/runtime/manager-host.d.ts +22 -0
  76. package/dist/browser/runtime/manager-host.d.ts.map +1 -0
  77. package/dist/browser/runtime/manager-host.js +102 -0
  78. package/dist/browser/runtime/manager-host.js.map +1 -0
  79. package/dist/browser/runtime/manager.context.d.ts +19 -0
  80. package/dist/browser/runtime/manager.context.d.ts.map +1 -0
  81. package/dist/browser/runtime/manager.context.descriptor.d.ts +30 -0
  82. package/dist/browser/runtime/manager.context.descriptor.d.ts.map +1 -0
  83. package/dist/browser/runtime/manager.context.descriptor.js +7 -0
  84. package/dist/browser/runtime/manager.context.descriptor.js.map +1 -0
  85. package/dist/browser/runtime/manager.context.impl.consumer.d.ts +6 -0
  86. package/dist/browser/runtime/manager.context.impl.consumer.d.ts.map +1 -0
  87. package/dist/browser/runtime/manager.context.impl.consumer.js +7 -0
  88. package/dist/browser/runtime/manager.context.impl.consumer.js.map +1 -0
  89. package/dist/browser/runtime/manager.context.js +19 -0
  90. package/dist/browser/runtime/manager.context.js.map +1 -0
  91. package/dist/browser/runtime/manager.d.ts +97 -0
  92. package/dist/browser/runtime/manager.d.ts.map +1 -0
  93. package/dist/browser/runtime/manager.js +731 -0
  94. package/dist/browser/runtime/manager.js.map +1 -0
  95. package/dist/browser/runtime/safe-url.d.ts +27 -0
  96. package/dist/browser/runtime/safe-url.d.ts.map +1 -0
  97. package/dist/browser/runtime/safe-url.js +77 -0
  98. package/dist/browser/runtime/safe-url.js.map +1 -0
  99. package/dist/browser/runtime/session-lease.d.ts +24 -0
  100. package/dist/browser/runtime/session-lease.d.ts.map +1 -0
  101. package/dist/browser/runtime/session-lease.js +65 -0
  102. package/dist/browser/runtime/session-lease.js.map +1 -0
  103. package/dist/browser/runtime/step-executor.d.ts +14 -0
  104. package/dist/browser/runtime/step-executor.d.ts.map +1 -0
  105. package/dist/browser/runtime/step-executor.js +97 -0
  106. package/dist/browser/runtime/step-executor.js.map +1 -0
  107. package/dist/browser/runtime/types.d.ts +54 -0
  108. package/dist/browser/runtime/types.d.ts.map +1 -0
  109. package/dist/browser/runtime/types.js +5 -0
  110. package/dist/browser/runtime/types.js.map +1 -0
  111. package/dist/browser/schemas/backend.d.ts +79 -0
  112. package/dist/browser/schemas/backend.d.ts.map +1 -0
  113. package/dist/browser/schemas/backend.js +33 -0
  114. package/dist/browser/schemas/backend.js.map +1 -0
  115. package/dist/browser/schemas/cli.d.ts +55 -0
  116. package/dist/browser/schemas/cli.d.ts.map +1 -0
  117. package/dist/browser/schemas/cli.js +37 -0
  118. package/dist/browser/schemas/cli.js.map +1 -0
  119. package/dist/browser/schemas/client.d.ts +28 -0
  120. package/dist/browser/schemas/client.d.ts.map +1 -0
  121. package/dist/browser/schemas/client.js +7 -0
  122. package/dist/browser/schemas/client.js.map +1 -0
  123. package/dist/browser/schemas/page.d.ts +71 -0
  124. package/dist/browser/schemas/page.d.ts.map +1 -0
  125. package/dist/browser/schemas/page.js +32 -0
  126. package/dist/browser/schemas/page.js.map +1 -0
  127. package/dist/browser/schemas/profile.d.ts +14 -0
  128. package/dist/browser/schemas/profile.d.ts.map +1 -0
  129. package/dist/browser/schemas/profile.js +14 -0
  130. package/dist/browser/schemas/profile.js.map +1 -0
  131. package/dist/browser/schemas/recipe.d.ts +218 -0
  132. package/dist/browser/schemas/recipe.d.ts.map +1 -0
  133. package/dist/browser/schemas/recipe.js +91 -0
  134. package/dist/browser/schemas/recipe.js.map +1 -0
  135. package/dist/browser/schemas/session.d.ts +42 -0
  136. package/dist/browser/schemas/session.d.ts.map +1 -0
  137. package/dist/browser/schemas/session.js +22 -0
  138. package/dist/browser/schemas/session.js.map +1 -0
  139. package/dist/browser/schemas/tab.d.ts +38 -0
  140. package/dist/browser/schemas/tab.d.ts.map +1 -0
  141. package/dist/browser/schemas/tab.js +20 -0
  142. package/dist/browser/schemas/tab.js.map +1 -0
  143. package/dist/browser/schemas/tool-card.d.ts +68 -0
  144. package/dist/browser/schemas/tool-card.d.ts.map +1 -0
  145. package/dist/browser/schemas/tool-card.js +29 -0
  146. package/dist/browser/schemas/tool-card.js.map +1 -0
  147. package/dist/browser/schemas/webview.d.ts +40 -0
  148. package/dist/browser/schemas/webview.d.ts.map +1 -0
  149. package/dist/browser/schemas/webview.js +5 -0
  150. package/dist/browser/schemas/webview.js.map +1 -0
  151. package/dist/browser/schemas/workspace.d.ts +8 -0
  152. package/dist/browser/schemas/workspace.d.ts.map +1 -0
  153. package/dist/browser/schemas/workspace.js +7 -0
  154. package/dist/browser/schemas/workspace.js.map +1 -0
  155. package/dist/browser/shared/ai-client.d.ts +26 -0
  156. package/dist/browser/shared/ai-client.d.ts.map +1 -0
  157. package/dist/browser/shared/ai-client.js +27 -0
  158. package/dist/browser/shared/ai-client.js.map +1 -0
  159. package/dist/browser/shared/ai-request.d.ts +26 -0
  160. package/dist/browser/shared/ai-request.d.ts.map +1 -0
  161. package/dist/browser/shared/ai-request.js +32 -0
  162. package/dist/browser/shared/ai-request.js.map +1 -0
  163. package/dist/browser/shared/cleanup.d.ts +5 -0
  164. package/dist/browser/shared/cleanup.d.ts.map +1 -0
  165. package/dist/browser/shared/cleanup.js +15 -0
  166. package/dist/browser/shared/cleanup.js.map +1 -0
  167. package/dist/browser/shared/constants.d.ts +19 -0
  168. package/dist/browser/shared/constants.d.ts.map +1 -0
  169. package/dist/browser/shared/constants.js +13 -0
  170. package/dist/browser/shared/constants.js.map +1 -0
  171. package/dist/browser/shared/json.d.ts +5 -0
  172. package/dist/browser/shared/json.d.ts.map +1 -0
  173. package/dist/browser/shared/json.js +3 -0
  174. package/dist/browser/shared/json.js.map +1 -0
  175. package/dist/browser/shared/paths.d.ts +33 -0
  176. package/dist/browser/shared/paths.d.ts.map +1 -0
  177. package/dist/browser/shared/paths.js +55 -0
  178. package/dist/browser/shared/paths.js.map +1 -0
  179. package/dist/browser/shared/steps.d.ts +82 -0
  180. package/dist/browser/shared/steps.d.ts.map +1 -0
  181. package/dist/browser/shared/steps.js +88 -0
  182. package/dist/browser/shared/steps.js.map +1 -0
  183. package/dist/browser/shared/storage-state.d.ts +23 -0
  184. package/dist/browser/shared/storage-state.d.ts.map +1 -0
  185. package/dist/browser/shared/storage-state.js +5 -0
  186. package/dist/browser/shared/storage-state.js.map +1 -0
  187. package/dist/browser/shared/tool-summary.d.ts +48 -0
  188. package/dist/browser/shared/tool-summary.d.ts.map +1 -0
  189. package/dist/browser/shared/tool-summary.js +183 -0
  190. package/dist/browser/shared/tool-summary.js.map +1 -0
  191. package/dist/browser/storage/browser-profile.record.descriptor.d.ts +28 -0
  192. package/dist/browser/storage/browser-profile.record.descriptor.d.ts.map +1 -0
  193. package/dist/browser/storage/browser-profile.record.descriptor.js +129 -0
  194. package/dist/browser/storage/browser-profile.record.descriptor.js.map +1 -0
  195. package/dist/browser/storage/browser-recipe.record.descriptor.d.ts +29 -0
  196. package/dist/browser/storage/browser-recipe.record.descriptor.d.ts.map +1 -0
  197. package/dist/browser/storage/browser-recipe.record.descriptor.js +103 -0
  198. package/dist/browser/storage/browser-recipe.record.descriptor.js.map +1 -0
  199. package/dist/browser/storage/browser-session.record.descriptor.d.ts +28 -0
  200. package/dist/browser/storage/browser-session.record.descriptor.d.ts.map +1 -0
  201. package/dist/browser/storage/browser-session.record.descriptor.js +147 -0
  202. package/dist/browser/storage/browser-session.record.descriptor.js.map +1 -0
  203. package/dist/browser/storage/browser-tab.record.descriptor.d.ts +28 -0
  204. package/dist/browser/storage/browser-tab.record.descriptor.d.ts.map +1 -0
  205. package/dist/browser/storage/browser-tab.record.descriptor.js +153 -0
  206. package/dist/browser/storage/browser-tab.record.descriptor.js.map +1 -0
  207. package/dist/browser/storage/database.d.ts +9 -0
  208. package/dist/browser/storage/database.d.ts.map +1 -0
  209. package/dist/browser/storage/database.js +16 -0
  210. package/dist/browser/storage/database.js.map +1 -0
  211. package/dist/browser/storage/index.d.ts +6 -0
  212. package/dist/browser/storage/index.d.ts.map +1 -0
  213. package/dist/browser/storage/index.js +5 -0
  214. package/dist/browser/storage/index.js.map +1 -0
  215. package/dist/browser/storage/types.d.ts +78 -0
  216. package/dist/browser/storage/types.d.ts.map +1 -0
  217. package/dist/browser/storage/types.js +5 -0
  218. package/dist/browser/storage/types.js.map +1 -0
  219. package/dist/browser/tools/cdp/implementation.d.ts +6 -0
  220. package/dist/browser/tools/cdp/implementation.d.ts.map +1 -0
  221. package/dist/browser/tools/cdp/implementation.js +20 -0
  222. package/dist/browser/tools/cdp/implementation.js.map +1 -0
  223. package/dist/browser/tools/control/implementation.d.ts +7 -0
  224. package/dist/browser/tools/control/implementation.d.ts.map +1 -0
  225. package/dist/browser/tools/control/implementation.js +185 -0
  226. package/dist/browser/tools/control/implementation.js.map +1 -0
  227. package/dist/browser/tools/control/prompts/index.d.ts +113 -0
  228. package/dist/browser/tools/control/prompts/index.d.ts.map +1 -0
  229. package/dist/browser/tools/control/prompts/index.js +5 -0
  230. package/dist/browser/tools/control/prompts/index.js.map +1 -0
  231. package/dist/browser/tools/control/prompts/plan-request.prompt.descriptor.d.ts +114 -0
  232. package/dist/browser/tools/control/prompts/plan-request.prompt.descriptor.d.ts.map +1 -0
  233. package/dist/browser/tools/control/prompts/plan-request.prompt.descriptor.js +57 -0
  234. package/dist/browser/tools/control/prompts/plan-request.prompt.descriptor.js.map +1 -0
  235. package/dist/browser/tools/control/prompts/planner.prompt.descriptor.d.ts +113 -0
  236. package/dist/browser/tools/control/prompts/planner.prompt.descriptor.d.ts.map +1 -0
  237. package/dist/browser/tools/control/prompts/planner.prompt.descriptor.js +15 -0
  238. package/dist/browser/tools/control/prompts/planner.prompt.descriptor.js.map +1 -0
  239. package/dist/browser/tools/control/schemas.d.ts +220 -0
  240. package/dist/browser/tools/control/schemas.d.ts.map +1 -0
  241. package/dist/browser/tools/control/schemas.js +49 -0
  242. package/dist/browser/tools/control/schemas.js.map +1 -0
  243. package/dist/browser/tools/direct/implementation.d.ts +7 -0
  244. package/dist/browser/tools/direct/implementation.d.ts.map +1 -0
  245. package/dist/browser/tools/direct/implementation.js +63 -0
  246. package/dist/browser/tools/direct/implementation.js.map +1 -0
  247. package/dist/browser/tools/direct/schemas.d.ts +209 -0
  248. package/dist/browser/tools/direct/schemas.d.ts.map +1 -0
  249. package/dist/browser/tools/direct/schemas.js +68 -0
  250. package/dist/browser/tools/direct/schemas.js.map +1 -0
  251. package/dist/browser/tools/index.d.ts +9 -0
  252. package/dist/browser/tools/index.d.ts.map +1 -0
  253. package/dist/browser/tools/index.js +9 -0
  254. package/dist/browser/tools/index.js.map +1 -0
  255. package/dist/browser/tools/observe/implementation.d.ts +7 -0
  256. package/dist/browser/tools/observe/implementation.d.ts.map +1 -0
  257. package/dist/browser/tools/observe/implementation.js +59 -0
  258. package/dist/browser/tools/observe/implementation.js.map +1 -0
  259. package/dist/browser/tools/observe/schemas.d.ts +63 -0
  260. package/dist/browser/tools/observe/schemas.d.ts.map +1 -0
  261. package/dist/browser/tools/observe/schemas.js +38 -0
  262. package/dist/browser/tools/observe/schemas.js.map +1 -0
  263. package/dist/browser/tools/observe/vision.d.ts +21 -0
  264. package/dist/browser/tools/observe/vision.d.ts.map +1 -0
  265. package/dist/browser/tools/observe/vision.js +73 -0
  266. package/dist/browser/tools/observe/vision.js.map +1 -0
  267. package/dist/browser/tools/recipe/implementation.d.ts +4 -0
  268. package/dist/browser/tools/recipe/implementation.d.ts.map +1 -0
  269. package/dist/browser/tools/recipe/implementation.js +259 -0
  270. package/dist/browser/tools/recipe/implementation.js.map +1 -0
  271. package/dist/browser/tools/recipe/schemas.d.ts +646 -0
  272. package/dist/browser/tools/recipe/schemas.d.ts.map +1 -0
  273. package/dist/browser/tools/recipe/schemas.js +126 -0
  274. package/dist/browser/tools/recipe/schemas.js.map +1 -0
  275. package/dist/browser/tools/session/implementation.d.ts +7 -0
  276. package/dist/browser/tools/session/implementation.d.ts.map +1 -0
  277. package/dist/browser/tools/session/implementation.js +111 -0
  278. package/dist/browser/tools/session/implementation.js.map +1 -0
  279. package/dist/browser/tools/session/index.d.ts +5 -0
  280. package/dist/browser/tools/session/index.d.ts.map +1 -0
  281. package/dist/browser/tools/session/index.js +6 -0
  282. package/dist/browser/tools/session/index.js.map +1 -0
  283. package/dist/browser/tools/session/schemas.d.ts +78 -0
  284. package/dist/browser/tools/session/schemas.d.ts.map +1 -0
  285. package/dist/browser/tools/session/schemas.js +60 -0
  286. package/dist/browser/tools/session/schemas.js.map +1 -0
  287. package/dist/browser/tools/unified/browser-recipe.prompt.descriptor.d.ts +114 -0
  288. package/dist/browser/tools/unified/browser-recipe.prompt.descriptor.d.ts.map +1 -0
  289. package/dist/browser/tools/unified/browser-recipe.prompt.descriptor.js +22 -0
  290. package/dist/browser/tools/unified/browser-recipe.prompt.descriptor.js.map +1 -0
  291. package/dist/browser/tools/unified/browser.impl.cloud.d.ts +8 -0
  292. package/dist/browser/tools/unified/browser.impl.cloud.d.ts.map +1 -0
  293. package/dist/browser/tools/unified/browser.impl.cloud.js +381 -0
  294. package/dist/browser/tools/unified/browser.impl.cloud.js.map +1 -0
  295. package/dist/browser/tools/unified/browser.impl.consumer.d.ts +14 -0
  296. package/dist/browser/tools/unified/browser.impl.consumer.d.ts.map +1 -0
  297. package/dist/browser/tools/unified/browser.impl.consumer.js +87 -0
  298. package/dist/browser/tools/unified/browser.impl.consumer.js.map +1 -0
  299. package/dist/browser/tools/unified/browser.unified.descriptor.d.ts +587 -0
  300. package/dist/browser/tools/unified/browser.unified.descriptor.d.ts.map +1 -0
  301. package/dist/browser/tools/unified/browser.unified.descriptor.js +54 -0
  302. package/dist/browser/tools/unified/browser.unified.descriptor.js.map +1 -0
  303. package/dist/browser/tools/unified/execution-binding.d.ts +5 -0
  304. package/dist/browser/tools/unified/execution-binding.d.ts.map +1 -0
  305. package/dist/browser/tools/unified/execution-binding.js +51 -0
  306. package/dist/browser/tools/unified/execution-binding.js.map +1 -0
  307. package/dist/browser/tools/unified/index.d.ts +5 -0
  308. package/dist/browser/tools/unified/index.d.ts.map +1 -0
  309. package/dist/browser/tools/unified/index.js +6 -0
  310. package/dist/browser/tools/unified/index.js.map +1 -0
  311. package/dist/browser/tools/unified/scan-cache-wiring.d.ts +16 -0
  312. package/dist/browser/tools/unified/scan-cache-wiring.d.ts.map +1 -0
  313. package/dist/browser/tools/unified/scan-cache-wiring.js +87 -0
  314. package/dist/browser/tools/unified/scan-cache-wiring.js.map +1 -0
  315. package/dist/browser/tools/unified/schemas.d.ts +786 -0
  316. package/dist/browser/tools/unified/schemas.d.ts.map +1 -0
  317. package/dist/browser/tools/unified/schemas.js +354 -0
  318. package/dist/browser/tools/unified/schemas.js.map +1 -0
  319. package/dist/browser/tools/webmcp/detection-script.d.ts +19 -0
  320. package/dist/browser/tools/webmcp/detection-script.d.ts.map +1 -0
  321. package/dist/browser/tools/webmcp/detection-script.js +104 -0
  322. package/dist/browser/tools/webmcp/detection-script.js.map +1 -0
  323. package/dist/browser/tools/webmcp/implementation.d.ts +18 -0
  324. package/dist/browser/tools/webmcp/implementation.d.ts.map +1 -0
  325. package/dist/browser/tools/webmcp/implementation.js +61 -0
  326. package/dist/browser/tools/webmcp/implementation.js.map +1 -0
  327. package/dist/cli/browser/browser.cli-group.descriptor.d.ts +17 -0
  328. package/dist/cli/browser/browser.cli-group.descriptor.d.ts.map +1 -0
  329. package/dist/cli/browser/browser.cli-group.descriptor.js +17 -0
  330. package/dist/cli/browser/browser.cli-group.descriptor.js.map +1 -0
  331. package/dist/cli/browser/browser.cli.plugin.d.ts +12 -0
  332. package/dist/cli/browser/browser.cli.plugin.d.ts.map +1 -0
  333. package/dist/cli/browser/browser.cli.plugin.js +179 -0
  334. package/dist/cli/browser/browser.cli.plugin.js.map +1 -0
  335. package/dist/cli/browser/browser.recipe.cli-group.descriptor.d.ts +18 -0
  336. package/dist/cli/browser/browser.recipe.cli-group.descriptor.d.ts.map +1 -0
  337. package/dist/cli/browser/browser.recipe.cli-group.descriptor.js +18 -0
  338. package/dist/cli/browser/browser.recipe.cli-group.descriptor.js.map +1 -0
  339. package/dist/cli/browser/browser.session.cli-group.descriptor.d.ts +18 -0
  340. package/dist/cli/browser/browser.session.cli-group.descriptor.d.ts.map +1 -0
  341. package/dist/cli/browser/browser.session.cli-group.descriptor.js +18 -0
  342. package/dist/cli/browser/browser.session.cli-group.descriptor.js.map +1 -0
  343. package/dist/cli/browser/commands/control/browser.control.cli-command.descriptor.d.ts +36 -0
  344. package/dist/cli/browser/commands/control/browser.control.cli-command.descriptor.d.ts.map +1 -0
  345. package/dist/cli/browser/commands/control/browser.control.cli-command.descriptor.js +29 -0
  346. package/dist/cli/browser/commands/control/browser.control.cli-command.descriptor.js.map +1 -0
  347. package/dist/cli/browser/commands/control/browser.control.impl.d.ts +7 -0
  348. package/dist/cli/browser/commands/control/browser.control.impl.d.ts.map +1 -0
  349. package/dist/cli/browser/commands/control/browser.control.impl.js +67 -0
  350. package/dist/cli/browser/commands/control/browser.control.impl.js.map +1 -0
  351. package/dist/cli/browser/commands/direct/browser.direct.cli-command.descriptor.d.ts +38 -0
  352. package/dist/cli/browser/commands/direct/browser.direct.cli-command.descriptor.d.ts.map +1 -0
  353. package/dist/cli/browser/commands/direct/browser.direct.cli-command.descriptor.js +28 -0
  354. package/dist/cli/browser/commands/direct/browser.direct.cli-command.descriptor.js.map +1 -0
  355. package/dist/cli/browser/commands/direct/browser.direct.impl.d.ts +7 -0
  356. package/dist/cli/browser/commands/direct/browser.direct.impl.d.ts.map +1 -0
  357. package/dist/cli/browser/commands/direct/browser.direct.impl.js +85 -0
  358. package/dist/cli/browser/commands/direct/browser.direct.impl.js.map +1 -0
  359. package/dist/cli/browser/commands/observe/browser.observe.cli-command.descriptor.d.ts +30 -0
  360. package/dist/cli/browser/commands/observe/browser.observe.cli-command.descriptor.d.ts.map +1 -0
  361. package/dist/cli/browser/commands/observe/browser.observe.cli-command.descriptor.js +22 -0
  362. package/dist/cli/browser/commands/observe/browser.observe.cli-command.descriptor.js.map +1 -0
  363. package/dist/cli/browser/commands/observe/browser.observe.impl.d.ts +7 -0
  364. package/dist/cli/browser/commands/observe/browser.observe.impl.d.ts.map +1 -0
  365. package/dist/cli/browser/commands/observe/browser.observe.impl.js +59 -0
  366. package/dist/cli/browser/commands/observe/browser.observe.impl.js.map +1 -0
  367. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.cli-command.descriptor.d.ts +38 -0
  368. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.cli-command.descriptor.d.ts.map +1 -0
  369. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.cli-command.descriptor.js +26 -0
  370. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.cli-command.descriptor.js.map +1 -0
  371. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.impl.d.ts +7 -0
  372. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.impl.d.ts.map +1 -0
  373. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.impl.js +60 -0
  374. package/dist/cli/browser/commands/recipe/create/browser.recipe.create.impl.js.map +1 -0
  375. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.cli-command.descriptor.d.ts +25 -0
  376. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.cli-command.descriptor.d.ts.map +1 -0
  377. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.cli-command.descriptor.js +22 -0
  378. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.cli-command.descriptor.js.map +1 -0
  379. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.impl.d.ts +7 -0
  380. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.impl.d.ts.map +1 -0
  381. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.impl.js +35 -0
  382. package/dist/cli/browser/commands/recipe/delete/browser.recipe.delete.impl.js.map +1 -0
  383. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.cli-command.descriptor.d.ts +25 -0
  384. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.cli-command.descriptor.d.ts.map +1 -0
  385. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.cli-command.descriptor.js +22 -0
  386. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.cli-command.descriptor.js.map +1 -0
  387. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.impl.d.ts +7 -0
  388. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.impl.d.ts.map +1 -0
  389. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.impl.js +88 -0
  390. package/dist/cli/browser/commands/recipe/get/browser.recipe.get.impl.js.map +1 -0
  391. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.cli-command.descriptor.d.ts +20 -0
  392. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.cli-command.descriptor.d.ts.map +1 -0
  393. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.cli-command.descriptor.js +19 -0
  394. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.cli-command.descriptor.js.map +1 -0
  395. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.impl.d.ts +7 -0
  396. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.impl.d.ts.map +1 -0
  397. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.impl.js +34 -0
  398. package/dist/cli/browser/commands/recipe/list/browser.recipe.list.impl.js.map +1 -0
  399. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.cli-command.descriptor.d.ts +37 -0
  400. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.cli-command.descriptor.d.ts.map +1 -0
  401. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.cli-command.descriptor.js +26 -0
  402. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.cli-command.descriptor.js.map +1 -0
  403. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.impl.d.ts +7 -0
  404. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.impl.d.ts.map +1 -0
  405. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.impl.js +88 -0
  406. package/dist/cli/browser/commands/recipe/run/browser.recipe.run.impl.js.map +1 -0
  407. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.cli-command.descriptor.d.ts +37 -0
  408. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.cli-command.descriptor.d.ts.map +1 -0
  409. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.cli-command.descriptor.js +26 -0
  410. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.cli-command.descriptor.js.map +1 -0
  411. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.impl.d.ts +7 -0
  412. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.impl.d.ts.map +1 -0
  413. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.impl.js +63 -0
  414. package/dist/cli/browser/commands/recipe/update/browser.recipe.update.impl.js.map +1 -0
  415. package/dist/cli/browser/commands/session/close/browser.session.close.cli-command.descriptor.d.ts +28 -0
  416. package/dist/cli/browser/commands/session/close/browser.session.close.cli-command.descriptor.d.ts.map +1 -0
  417. package/dist/cli/browser/commands/session/close/browser.session.close.cli-command.descriptor.js +23 -0
  418. package/dist/cli/browser/commands/session/close/browser.session.close.cli-command.descriptor.js.map +1 -0
  419. package/dist/cli/browser/commands/session/close/browser.session.close.impl.d.ts +35 -0
  420. package/dist/cli/browser/commands/session/close/browser.session.close.impl.d.ts.map +1 -0
  421. package/dist/cli/browser/commands/session/close/browser.session.close.impl.js +75 -0
  422. package/dist/cli/browser/commands/session/close/browser.session.close.impl.js.map +1 -0
  423. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.cli-command.descriptor.d.ts +16 -0
  424. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.cli-command.descriptor.d.ts.map +1 -0
  425. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.cli-command.descriptor.js +16 -0
  426. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.cli-command.descriptor.js.map +1 -0
  427. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.impl.d.ts +7 -0
  428. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.impl.d.ts.map +1 -0
  429. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.impl.js +14 -0
  430. package/dist/cli/browser/commands/session/dismiss/browser.session.dismiss.impl.js.map +1 -0
  431. package/dist/cli/browser/commands/session/get/browser.session.get.cli-command.descriptor.d.ts +25 -0
  432. package/dist/cli/browser/commands/session/get/browser.session.get.cli-command.descriptor.d.ts.map +1 -0
  433. package/dist/cli/browser/commands/session/get/browser.session.get.cli-command.descriptor.js +22 -0
  434. package/dist/cli/browser/commands/session/get/browser.session.get.cli-command.descriptor.js.map +1 -0
  435. package/dist/cli/browser/commands/session/get/browser.session.get.impl.d.ts +18 -0
  436. package/dist/cli/browser/commands/session/get/browser.session.get.impl.d.ts.map +1 -0
  437. package/dist/cli/browser/commands/session/get/browser.session.get.impl.js +61 -0
  438. package/dist/cli/browser/commands/session/get/browser.session.get.impl.js.map +1 -0
  439. package/dist/cli/browser/commands/session/list/browser.session.list.cli-command.descriptor.d.ts +27 -0
  440. package/dist/cli/browser/commands/session/list/browser.session.list.cli-command.descriptor.d.ts.map +1 -0
  441. package/dist/cli/browser/commands/session/list/browser.session.list.cli-command.descriptor.js +24 -0
  442. package/dist/cli/browser/commands/session/list/browser.session.list.cli-command.descriptor.js.map +1 -0
  443. package/dist/cli/browser/commands/session/list/browser.session.list.impl.d.ts +22 -0
  444. package/dist/cli/browser/commands/session/list/browser.session.list.impl.d.ts.map +1 -0
  445. package/dist/cli/browser/commands/session/list/browser.session.list.impl.js +73 -0
  446. package/dist/cli/browser/commands/session/list/browser.session.list.impl.js.map +1 -0
  447. package/dist/cli/browser/commands/session/present/browser.session.present.cli-command.descriptor.d.ts +25 -0
  448. package/dist/cli/browser/commands/session/present/browser.session.present.cli-command.descriptor.d.ts.map +1 -0
  449. package/dist/cli/browser/commands/session/present/browser.session.present.cli-command.descriptor.js +22 -0
  450. package/dist/cli/browser/commands/session/present/browser.session.present.cli-command.descriptor.js.map +1 -0
  451. package/dist/cli/browser/commands/session/present/browser.session.present.impl.d.ts +7 -0
  452. package/dist/cli/browser/commands/session/present/browser.session.present.impl.d.ts.map +1 -0
  453. package/dist/cli/browser/commands/session/present/browser.session.present.impl.js +29 -0
  454. package/dist/cli/browser/commands/session/present/browser.session.present.impl.js.map +1 -0
  455. package/dist/cli/browser/commands/session/resolve-session.d.ts +19 -0
  456. package/dist/cli/browser/commands/session/resolve-session.d.ts.map +1 -0
  457. package/dist/cli/browser/commands/session/resolve-session.js +11 -0
  458. package/dist/cli/browser/commands/session/resolve-session.js.map +1 -0
  459. package/dist/cli/browser/commands/session/session-age.d.ts +6 -0
  460. package/dist/cli/browser/commands/session/session-age.d.ts.map +1 -0
  461. package/dist/cli/browser/commands/session/session-age.js +34 -0
  462. package/dist/cli/browser/commands/session/session-age.js.map +1 -0
  463. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.cli-command.descriptor.d.ts +26 -0
  464. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.cli-command.descriptor.d.ts.map +1 -0
  465. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.cli-command.descriptor.js +24 -0
  466. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.cli-command.descriptor.js.map +1 -0
  467. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.impl.d.ts +32 -0
  468. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.impl.d.ts.map +1 -0
  469. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.impl.js +112 -0
  470. package/dist/cli/browser/commands/session/sweep/browser.session.sweep.impl.js.map +1 -0
  471. package/dist/index.d.ts +25 -0
  472. package/dist/index.d.ts.map +1 -0
  473. package/dist/index.js +24 -0
  474. package/dist/index.js.map +1 -0
  475. package/dist/svelte/browser/BrowserWorkspace.svelte +450 -0
  476. package/dist/svelte/browser/BrowserWorkspace.svelte.d.ts +20 -0
  477. package/dist/svelte/browser/BrowserWorkspace.svelte.d.ts.map +1 -0
  478. package/dist/svelte/browser/browser-automation-svelte.plugin.d.ts +3 -0
  479. package/dist/svelte/browser/browser-automation-svelte.plugin.d.ts.map +1 -0
  480. package/dist/svelte/browser/browser-automation-svelte.plugin.js +25 -0
  481. package/dist/svelte/browser/docs/browser-automation-svelte.docs.descriptor.d.ts +4 -0
  482. package/dist/svelte/browser/docs/browser-automation-svelte.docs.descriptor.d.ts.map +1 -0
  483. package/dist/svelte/browser/docs/browser-automation-svelte.docs.descriptor.js +55 -0
  484. package/dist/svelte/browser/index.d.ts +6 -0
  485. package/dist/svelte/browser/index.d.ts.map +1 -0
  486. package/dist/svelte/browser/index.js +4 -0
  487. package/dist/svelte/browser/state.svelte.d.ts +28 -0
  488. package/dist/svelte/browser/state.svelte.d.ts.map +1 -0
  489. package/dist/svelte/browser/state.svelte.js +87 -0
  490. package/dist/svelte/browser/styles.css +10 -0
  491. package/dist/svelte/browser/tool-widgets/BrowserToolCard.svelte +268 -0
  492. package/dist/svelte/browser/tool-widgets/BrowserToolCard.svelte.d.ts +10 -0
  493. package/dist/svelte/browser/tool-widgets/BrowserToolCard.svelte.d.ts.map +1 -0
  494. package/dist/svelte/browser/tool-widgets/index.d.ts +2 -0
  495. package/dist/svelte/browser/tool-widgets/index.d.ts.map +1 -0
  496. package/dist/svelte/browser/tool-widgets/index.js +1 -0
  497. package/dist/svelte/browser/tool-widgets/summary.d.ts +2 -0
  498. package/dist/svelte/browser/tool-widgets/summary.d.ts.map +1 -0
  499. package/dist/svelte/browser/tool-widgets/summary.js +1 -0
  500. package/dist/svelte/browser/types.d.ts +16 -0
  501. package/dist/svelte/browser/types.d.ts.map +1 -0
  502. package/dist/svelte/browser/types.js +1 -0
  503. package/dist/tui/browser/browser-sessions.app.descriptor.d.ts +33 -0
  504. package/dist/tui/browser/browser-sessions.app.descriptor.d.ts.map +1 -0
  505. package/dist/tui/browser/browser-sessions.app.descriptor.js +33 -0
  506. package/dist/tui/browser/browser-sessions.app.descriptor.js.map +1 -0
  507. package/dist/tui/browser/browser-sessions.app.impl.d.ts +4 -0
  508. package/dist/tui/browser/browser-sessions.app.impl.d.ts.map +1 -0
  509. package/dist/tui/browser/browser-sessions.app.impl.js +231 -0
  510. package/dist/tui/browser/browser-sessions.app.impl.js.map +1 -0
  511. package/dist/tui/browser/browser.tui.plugin.d.ts +13 -0
  512. package/dist/tui/browser/browser.tui.plugin.d.ts.map +1 -0
  513. package/dist/tui/browser/browser.tui.plugin.js +52 -0
  514. package/dist/tui/browser/browser.tui.plugin.js.map +1 -0
  515. package/dist/tui/browser/tool-widgets/BrowserToolWidget.impl.consumer.d.ts +4 -0
  516. package/dist/tui/browser/tool-widgets/BrowserToolWidget.impl.consumer.d.ts.map +1 -0
  517. package/dist/tui/browser/tool-widgets/BrowserToolWidget.impl.consumer.js +31 -0
  518. package/dist/tui/browser/tool-widgets/BrowserToolWidget.impl.consumer.js.map +1 -0
  519. package/dist/tui/browser/tool-widgets/summary.d.ts +40 -0
  520. package/dist/tui/browser/tool-widgets/summary.d.ts.map +1 -0
  521. package/dist/tui/browser/tool-widgets/summary.js +16 -0
  522. package/dist/tui/browser/tool-widgets/summary.js.map +1 -0
  523. package/package.json +212 -4
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Browser Automation Contracts — canonical owner: `@vibesdotdev/control`
3
+ *
4
+ * Provider-neutral browser client, cookie/storage state, backend/page and
5
+ * browser-session CRUD contracts. They live here, in the browser capability
6
+ * package's narrow, import-safe contract entrypoint (`./browser-automation/contracts`),
7
+ * because they are browser-domain contracts, not generic runtime-client
8
+ * machinery. This module imports only `zod` and a type-only kernel runtime
9
+ * reference plus the kernel's JSON schema types, so any package that already
10
+ * depends on the kernel can import it without loading the control
11
+ * implementation graph and without a kernel → control cycle.
12
+ *
13
+ * This is the only entrypoint for these contracts; the kernel neither exports
14
+ * nor imports them.
15
+ */
16
+ import * as z from 'zod/v4';
17
+ export const BrowserStorageCookieSchema = z.object({
18
+ name: z.string(),
19
+ value: z.string(),
20
+ domain: z.string(),
21
+ path: z.string(),
22
+ expires: z.number(),
23
+ httpOnly: z.boolean(),
24
+ secure: z.boolean(),
25
+ sameSite: z.enum(['Strict', 'Lax', 'None']).optional()
26
+ });
27
+ export const BrowserStorageOriginSchema = z.object({
28
+ origin: z.string(),
29
+ localStorage: z.array(z.object({
30
+ name: z.string(),
31
+ value: z.string()
32
+ }))
33
+ });
34
+ export const BrowserStorageStateSchema = z.object({
35
+ cookies: z.array(BrowserStorageCookieSchema),
36
+ origins: z.array(BrowserStorageOriginSchema)
37
+ });
38
+ //# sourceMappingURL=contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/browser/contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AA6B5B,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;IACnB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;CACtD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,YAAY,EAAE,CAAC,CAAC,KAAK,CACpB,CAAC,CAAC,MAAM,CAAC;QACR,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB,CAAC,CACF;CACD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;CAC5C,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { BrowserClient, getVibesBrowserClient, type BrowserClientDescriptor } from './client/browser-client.ts';
2
+ export { browserSessionRecordDescriptor, browserProfileRecordDescriptor, browserTabRecordDescriptor, browserRecipeRecordDescriptor, type BrowserSession, type BrowserProfile, type BrowserTab, type BrowserRecipe, type BrowserSessionStatus, type BrowserRecipeType, type BrowserRecipeParameter, type BrowserRecipeSuccessIndicator, type BrowserRecipeFailureIndicator, type BrowserStep } from './storage/index.ts';
3
+ export { BrowserRuntimeManager } from './runtime/index.ts';
4
+ export type { BrowserRuntimeSession, BrowserRuntimeTab, BrowserSessionOptions, BrowserTabOptions, BrowserLaunchOptions } from './runtime/types.ts';
5
+ export { default as browserPlugin } from './browser.plugin.ts';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,KAAK,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAEhH,OAAO,EACN,8BAA8B,EAC9B,8BAA8B,EAC9B,0BAA0B,EAC1B,6BAA6B,EAC7B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,EAClC,KAAK,6BAA6B,EAClC,KAAK,WAAW,EAChB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,qBAAqB,EACrB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EACX,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,7 @@
1
+ // Browser Automation Package
2
+ // Public API: BrowserClient, storage record descriptors, and schemas
3
+ export { BrowserClient, getVibesBrowserClient } from "./client/browser-client.js";
4
+ export { browserSessionRecordDescriptor, browserProfileRecordDescriptor, browserTabRecordDescriptor, browserRecipeRecordDescriptor } from "./storage/index.js";
5
+ export { BrowserRuntimeManager } from "./runtime/index.js";
6
+ export { default as browserPlugin } from "./browser.plugin.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,qEAAqE;AAErE,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAgC,MAAM,4BAA4B,CAAC;AAEhH,OAAO,EACN,8BAA8B,EAC9B,8BAA8B,EAC9B,0BAA0B,EAC1B,6BAA6B,EAW7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,qBAAqB,EACrB,MAAM,oBAAoB,CAAC;AAU5B,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Consumer-only browser automation composition. */
2
+ export { default } from './browser.consumer.plugin.ts';
3
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/browser/plugin.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Consumer-only browser automation composition. */
2
+ export { default } from "./browser.consumer.plugin.js";
3
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/browser/plugin.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { BrowserBackend } from './types.ts';
2
+ export * from '../../schemas/backend.ts';
3
+ /** Providers register against the runtime's hardware-scoped engine seam. */
4
+ export declare const browserBackendKind: import("@vibesdotdev/kernel").RuntimeKindDescriptorRecord<BrowserBackend<{
5
+ cookies: {
6
+ name: string;
7
+ value: string;
8
+ domain: string;
9
+ path: string;
10
+ expires: number;
11
+ httpOnly: boolean;
12
+ secure: boolean;
13
+ sameSite?: "Strict" | "Lax" | "None" | undefined;
14
+ }[];
15
+ origins: {
16
+ origin: string;
17
+ localStorage: {
18
+ name: string;
19
+ value: string;
20
+ }[];
21
+ }[];
22
+ }>>;
23
+ //# sourceMappingURL=kind.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kind.d.ts","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/kind.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,cAAc,0BAA0B,CAAC;AAEzC,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;GAM7B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { createRuntimeKind } from '@vibesdotdev/kernel';
2
+ import { BrowserBackendDescriptorSchema, BrowserBackendImplementationSchema } from "../../schemas/backend.js";
3
+ export * from "../../schemas/backend.js";
4
+ /** Providers register against the runtime's hardware-scoped engine seam. */
5
+ export const browserBackendKind = createRuntimeKind({
6
+ id: 'browser/backend',
7
+ descriptorSchema: BrowserBackendDescriptorSchema,
8
+ validateImplementation(value) {
9
+ return BrowserBackendImplementationSchema.safeParse(value).success;
10
+ }
11
+ });
12
+ //# sourceMappingURL=kind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kind.js","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/kind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,8BAA8B,EAAE,kCAAkC,EAAiC,MAAM,0BAA0B,CAAC;AAE7I,cAAc,0BAA0B,CAAC;AAEzC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,kBAAkB,GAAG,iBAAiB,CAA2C;IAC7F,EAAE,EAAE,iBAAiB;IACrB,gBAAgB,EAAE,8BAA8B;IAChD,sBAAsB,CAAC,KAAK;QAC3B,OAAO,kCAAkC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;IACpE,CAAC;CACD,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ declare const playwrightBrowserBackendDescriptor: {
2
+ id: string;
3
+ kind: "browser/backend";
4
+ name: string;
5
+ description: string;
6
+ hardware: "consumer"[];
7
+ engine: "chromium";
8
+ substrate: string;
9
+ stability: "stable";
10
+ capabilities: {
11
+ profiles: true;
12
+ present: true;
13
+ recording: true;
14
+ storageStateFile: true;
15
+ };
16
+ priority: number;
17
+ enabled: true;
18
+ };
19
+ export default playwrightBrowserBackendDescriptor;
20
+ //# sourceMappingURL=playwright.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright.descriptor.d.ts","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/playwright.descriptor.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,kCAAkC;;;;;;;;;;;;;;;;;CAiBJ,CAAC;AAErC,eAAe,kCAAkC,CAAC"}
@@ -0,0 +1,20 @@
1
+ const playwrightBrowserBackendDescriptor = {
2
+ id: 'browser.backend.playwright',
3
+ kind: 'browser/backend',
4
+ name: 'Playwright Browser Backend',
5
+ description: 'Local Chromium browser engine for consumer runtimes',
6
+ hardware: ['consumer'],
7
+ engine: 'chromium',
8
+ substrate: 'playwright',
9
+ stability: 'stable',
10
+ capabilities: {
11
+ profiles: true,
12
+ present: true,
13
+ recording: true,
14
+ storageStateFile: true
15
+ },
16
+ priority: 100,
17
+ enabled: true
18
+ };
19
+ export default playwrightBrowserBackendDescriptor;
20
+ //# sourceMappingURL=playwright.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright.descriptor.js","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/playwright.descriptor.ts"],"names":[],"mappings":"AAEA,MAAM,kCAAkC,GAAG;IAC1C,EAAE,EAAE,4BAA4B;IAChC,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,4BAA4B;IAClC,WAAW,EAAE,qDAAqD;IAClE,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,MAAM,EAAE,UAAU;IAClB,SAAS,EAAE,YAAY;IACvB,SAAS,EAAE,QAAQ;IACnB,YAAY,EAAE;QACb,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,IAAI;KACtB;IACD,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,IAAI;CACsB,CAAC;AAErC,eAAe,kCAAkC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { type VibesRuntime } from '@vibesdotdev/kernel';
2
+ import type { BrowserBackend } from './types.ts';
3
+ export declare const BROWSER_BACKEND_SCOPE_QUALIFIER: "browserBackend";
4
+ import { type ResolveBrowserBackendOptions } from '../../schemas/backend.ts';
5
+ export type { ResolveBrowserBackendOptions } from '../../schemas/backend.ts';
6
+ /** Resolve an enabled browser engine explicitly or by hardware and priority. */
7
+ export declare function resolveBrowserBackend(runtime: VibesRuntime, options?: ResolveBrowserBackendOptions): Promise<BrowserBackend>;
8
+ //# sourceMappingURL=resolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,eAAO,MAAM,+BAA+B,EAAG,gBAAyB,CAAC;AAEzE,OAAO,EAAsC,KAAK,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AACjH,YAAY,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAM7E,gFAAgF;AAChF,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,4BAAiC,GACxC,OAAO,CAAC,cAAc,CAAC,CA0CzB"}
@@ -0,0 +1,43 @@
1
+ import { CapabilityError, settle } from '@vibesdotdev/kernel';
2
+ export const BROWSER_BACKEND_SCOPE_QUALIFIER = 'browserBackend';
3
+ import { ResolveBrowserBackendOptionsSchema } from "../../schemas/backend.js";
4
+ function backendQuery(runtime) {
5
+ return runtime.query('browser/backend');
6
+ }
7
+ /** Resolve an enabled browser engine explicitly or by hardware and priority. */
8
+ export async function resolveBrowserBackend(runtime, options = {}) {
9
+ if (!runtime.hasKind('browser/backend')) {
10
+ throw new CapabilityError("Runtime kind 'browser/backend' is unavailable; compose the browser-automation plugin before invoking browser tools", 'UNAVAILABLE', { reason: 'browser-backend-kind-unavailable' });
11
+ }
12
+ const parsed = ResolveBrowserBackendOptionsSchema.parse(options);
13
+ const explicitId = parsed.explicitId ?? runtime.scope.qualifiers.browserBackend;
14
+ const hardware = runtime.scope.hardware;
15
+ if (explicitId) {
16
+ try {
17
+ return await backendQuery(runtime)
18
+ .withId(explicitId)
19
+ .enabled()
20
+ .filter((descriptor) => descriptor.hardware.includes(hardware))
21
+ .resolve();
22
+ }
23
+ catch (cause) {
24
+ throw new CapabilityError(`Browser backend '${explicitId}' is unavailable for ${hardware} hardware`, 'UNAVAILABLE', { reason: 'browser-backend-unavailable', details: { backendId: explicitId, hardware }, cause });
25
+ }
26
+ }
27
+ const candidates = backendQuery(runtime)
28
+ .enabled()
29
+ .filter((descriptor) => descriptor.hardware.includes(hardware))
30
+ .descriptors()
31
+ .sort((left, right) => right.priority - left.priority);
32
+ const failures = [];
33
+ for (const candidate of candidates) {
34
+ const resolved = await settle(() => backendQuery(runtime).withId(candidate.id).resolve());
35
+ if (resolved.ok)
36
+ return resolved.value;
37
+ failures.push(new CapabilityError(`Browser backend '${candidate.id}' failed to load`, 'UNAVAILABLE', {
38
+ reason: 'browser-backend-load-failed', details: { backendId: candidate.id }, cause: resolved.cause
39
+ }));
40
+ }
41
+ throw new CapabilityError(`No browser/backend implementation is registered for ${hardware} hardware${candidates.length > 0 ? ` (tried: ${candidates.map(({ id }) => id).join(', ')})` : ''}`, 'UNAVAILABLE', { reason: 'browser-backend-unavailable', details: { hardware, candidates: candidates.map(({ id }) => id) }, cause: new AggregateError(failures, 'Browser backend candidates failed') });
42
+ }
43
+ //# sourceMappingURL=resolve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/resolve.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Browser automation contracts — the canonical browser-domain contract
3
+ * declarations live in `./contracts.ts` (this package's narrow, import-safe
4
+ * contract entrypoint, exported as `./browser-automation/contracts`).
5
+ *
6
+ * This module forwards them from their owner for existing
7
+ * `./browser-automation/backend` importers; it loads no backend
8
+ * implementation, so importing the contracts never pulls the control
9
+ * implementation graph.
10
+ */
11
+ export * from '../../contracts.ts';
12
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Browser automation contracts — the canonical browser-domain contract
3
+ * declarations live in `./contracts.ts` (this package's narrow, import-safe
4
+ * contract entrypoint, exported as `./browser-automation/contracts`).
5
+ *
6
+ * This module forwards them from their owner for existing
7
+ * `./browser-automation/backend` importers; it loads no backend
8
+ * implementation, so importing the contracts never pulls the control
9
+ * implementation graph.
10
+ */
11
+ export * from "../../contracts.js";
12
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/browser/runtime/backend/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Playwright Browser Backend (consumer hardware)
3
+ *
4
+ * Wraps the existing local-Chromium Playwright launch/page surface in the
5
+ * hardware-neutral `BrowserBackend` interface. This is the behavior-preserving
6
+ * adapter for the consumer path — all existing session/profile/recording
7
+ * features stay available here.
8
+ */
9
+ import type { Browser, BrowserContext, Page } from 'playwright';
10
+ import { type RuntimeRef } from '@vibesdotdev/kernel';
11
+ import { launchBrowserContext } from '../launcher.ts';
12
+ import type { BrowserActionOptions, BrowserBackend, BrowserBackendContext, BrowserBackendLaunchInput, BrowserBackendLaunchResult, BrowserBackendPage, BrowserGotoOptions, BrowserScreenshotOptions, BrowserWaitForSelectorOptions } from '../backend/types.ts';
13
+ declare class PlaywrightBackendPage implements BrowserBackendPage {
14
+ private readonly page;
15
+ private readonly runtime;
16
+ private readonly trustedOrigins;
17
+ constructor(page: Page, runtime: RuntimeRef, trustedOrigins?: ReadonlySet<string>);
18
+ /** Escape hatch for consumer-only features (present/dismiss) that still need the raw page. */
19
+ get raw(): Page;
20
+ goto(url: string, options?: BrowserGotoOptions): Promise<void>;
21
+ click(selector: string, options?: BrowserActionOptions): Promise<void>;
22
+ fill(selector: string, value: string, options?: BrowserActionOptions): Promise<void>;
23
+ type(selector: string, text: string, options?: {
24
+ delay?: number;
25
+ }): Promise<void>;
26
+ press(key: string): Promise<void>;
27
+ waitForSelector(selector: string, options?: BrowserWaitForSelectorOptions): Promise<void>;
28
+ waitForTimeout(ms: number): Promise<void>;
29
+ selectOption(selector: string, value: string, options?: BrowserActionOptions): Promise<void>;
30
+ hover(selector: string, options?: BrowserActionOptions): Promise<void>;
31
+ screenshot(options: BrowserScreenshotOptions): Promise<Uint8Array | undefined>;
32
+ scrollIntoView(selector: string): Promise<void>;
33
+ scrollTo(x: number, y: number): Promise<void>;
34
+ evaluate<T = unknown>(script: string): Promise<T>;
35
+ content(): Promise<string>;
36
+ exists(selector: string): Promise<boolean>;
37
+ textContent(selector: string): Promise<string | null>;
38
+ url(): string;
39
+ video(): Promise<string | undefined>;
40
+ close(): Promise<void>;
41
+ }
42
+ declare class PlaywrightBackendContext implements BrowserBackendContext {
43
+ readonly context: BrowserContext;
44
+ readonly browser: Browser | null;
45
+ private readonly runtime;
46
+ private readonly trustedOrigins;
47
+ private contextClosed;
48
+ private browserClosed;
49
+ constructor(context: BrowserContext, browser: Browser | null, runtime: RuntimeRef, trustedOrigins?: ReadonlySet<string>);
50
+ newPage(): Promise<BrowserBackendPage>;
51
+ pages(): Promise<BrowserBackendPage[]>;
52
+ storageState(options?: {
53
+ path?: string;
54
+ }): Promise<import('../backend/types.ts').BrowserStorageState>;
55
+ close(): Promise<void>;
56
+ }
57
+ export declare class PlaywrightBackend implements BrowserBackend {
58
+ private readonly launchContext;
59
+ readonly id = "browser.backend.playwright";
60
+ readonly hardware: "consumer";
61
+ readonly capabilities: {
62
+ profiles: boolean;
63
+ present: boolean;
64
+ recording: boolean;
65
+ storageStateFile: boolean;
66
+ };
67
+ constructor(launchContext?: typeof launchBrowserContext);
68
+ launch(input: BrowserBackendLaunchInput): Promise<BrowserBackendLaunchResult>;
69
+ }
70
+ export { PlaywrightBackendPage, PlaywrightBackendContext };
71
+ //# sourceMappingURL=playwright.backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright.backend.d.ts","sourceRoot":"","sources":["../../../../src/browser/runtime/backends/playwright.backend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,177 @@
1
+ /**
2
+ * Playwright Browser Backend (consumer hardware)
3
+ *
4
+ * Wraps the existing local-Chromium Playwright launch/page surface in the
5
+ * hardware-neutral `BrowserBackend` interface. This is the behavior-preserving
6
+ * adapter for the consumer path — all existing session/profile/recording
7
+ * features stay available here.
8
+ */
9
+ import { settle } from '@vibesdotdev/kernel';
10
+ import { launchBrowserContext } from "../launcher.js";
11
+ import { assertSafeBrowserUrl, launchTrustedBrowserOrigins } from "../safe-url.js";
12
+ const DEFAULT_ACTION_TIMEOUT = 10_000;
13
+ class PlaywrightBackendPage {
14
+ page;
15
+ runtime;
16
+ trustedOrigins;
17
+ constructor(page, runtime, trustedOrigins = new Set()) {
18
+ this.page = page;
19
+ this.runtime = runtime;
20
+ this.trustedOrigins = trustedOrigins;
21
+ }
22
+ /** Escape hatch for consumer-only features (present/dismiss) that still need the raw page. */
23
+ get raw() {
24
+ return this.page;
25
+ }
26
+ async goto(url, options) {
27
+ const safe = assertSafeBrowserUrl(url, this.trustedOrigins);
28
+ await this.page.goto(safe, {
29
+ waitUntil: options?.waitUntil ?? 'domcontentloaded',
30
+ timeout: options?.timeout ?? 30_000
31
+ });
32
+ }
33
+ async click(selector, options) {
34
+ await this.page.click(selector, { timeout: options?.timeout ?? DEFAULT_ACTION_TIMEOUT });
35
+ }
36
+ async fill(selector, value, options) {
37
+ await this.page.fill(selector, value, { timeout: options?.timeout ?? DEFAULT_ACTION_TIMEOUT });
38
+ }
39
+ async type(selector, text, options) {
40
+ await this.page.locator(selector).pressSequentially(text, { delay: options?.delay ?? 50 });
41
+ }
42
+ async press(key) {
43
+ await this.page.keyboard.press(key);
44
+ }
45
+ async waitForSelector(selector, options) {
46
+ await this.page.waitForSelector(selector, {
47
+ state: options?.state ?? 'visible',
48
+ timeout: options?.timeout ?? 30_000
49
+ });
50
+ }
51
+ async waitForTimeout(ms) {
52
+ await this.page.waitForTimeout(ms);
53
+ }
54
+ async selectOption(selector, value, options) {
55
+ await this.page.selectOption(selector, value, {
56
+ timeout: options?.timeout ?? DEFAULT_ACTION_TIMEOUT
57
+ });
58
+ }
59
+ async hover(selector, options) {
60
+ await this.page.hover(selector, { timeout: options?.timeout ?? DEFAULT_ACTION_TIMEOUT });
61
+ }
62
+ async screenshot(options) {
63
+ const buffer = await this.page.screenshot({
64
+ path: options.path,
65
+ fullPage: options.fullPage ?? false
66
+ });
67
+ return options.path ? undefined : new Uint8Array(buffer);
68
+ }
69
+ async scrollIntoView(selector) {
70
+ await this.page.locator(selector).scrollIntoViewIfNeeded();
71
+ }
72
+ async scrollTo(x, y) {
73
+ await this.page.evaluate(`window.scrollTo(${x}, ${y})`);
74
+ }
75
+ async evaluate(script) {
76
+ // SAFETY: Playwright evaluates caller-authored code; the caller owns the result schema and generic contract.
77
+ return await this.page.evaluate(script);
78
+ }
79
+ async content() {
80
+ return this.page.content();
81
+ }
82
+ async exists(selector) {
83
+ return (await this.page.$(selector)) !== null;
84
+ }
85
+ async textContent(selector) {
86
+ return this.page.locator(selector).evaluateAll(elements => elements[0]?.textContent ?? null);
87
+ }
88
+ url() {
89
+ return this.page.url();
90
+ }
91
+ async video() {
92
+ const video = this.page.video();
93
+ if (!video)
94
+ return undefined;
95
+ return video.path();
96
+ }
97
+ async close() {
98
+ await this.page.close();
99
+ }
100
+ }
101
+ class PlaywrightBackendContext {
102
+ context;
103
+ browser;
104
+ runtime;
105
+ trustedOrigins;
106
+ contextClosed = false;
107
+ browserClosed = false;
108
+ constructor(context, browser, runtime, trustedOrigins = new Set()) {
109
+ this.context = context;
110
+ this.browser = browser;
111
+ this.runtime = runtime;
112
+ this.trustedOrigins = trustedOrigins;
113
+ }
114
+ async newPage() {
115
+ return new PlaywrightBackendPage(await this.context.newPage(), this.runtime, this.trustedOrigins);
116
+ }
117
+ async pages() {
118
+ return this.context.pages().map((p) => new PlaywrightBackendPage(p, this.runtime, this.trustedOrigins));
119
+ }
120
+ async storageState(options) {
121
+ return this.context.storageState(options?.path ? { path: options.path } : undefined);
122
+ }
123
+ async close() {
124
+ const failures = [];
125
+ if (!this.contextClosed) {
126
+ const closed = await settle(() => this.context.close());
127
+ if (closed.ok)
128
+ this.contextClosed = true;
129
+ else
130
+ failures.push(closed.cause);
131
+ }
132
+ if (this.browser && !this.browserClosed) {
133
+ const browser = this.browser;
134
+ const closed = await settle(() => browser.close());
135
+ if (closed.ok)
136
+ this.browserClosed = true;
137
+ else
138
+ failures.push(closed.cause);
139
+ }
140
+ if (failures.length)
141
+ throw new AggregateError(failures, 'Playwright context and browser cleanup failed');
142
+ }
143
+ }
144
+ export class PlaywrightBackend {
145
+ launchContext;
146
+ id = 'browser.backend.playwright';
147
+ hardware = 'consumer';
148
+ capabilities = {
149
+ profiles: true,
150
+ present: true,
151
+ recording: true,
152
+ storageStateFile: true
153
+ };
154
+ constructor(launchContext = launchBrowserContext) {
155
+ this.launchContext = launchContext;
156
+ }
157
+ async launch(input) {
158
+ const { context, browser, persistent } = await this.launchContext(input.runtime, {
159
+ profileDir: input.profileDir,
160
+ extensions: input.extensions,
161
+ options: {
162
+ headless: input.headless,
163
+ viewport: input.viewport,
164
+ recordVideo: input.recordVideo
165
+ ? { enabled: true, dir: input.recordVideo.dir, size: input.recordVideo.size }
166
+ : undefined
167
+ },
168
+ storageStatePath: input.storageStatePath
169
+ });
170
+ return {
171
+ context: new PlaywrightBackendContext(context, browser, input.runtime, launchTrustedBrowserOrigins(input.runtime, input.trustedOrigins)),
172
+ persistent
173
+ };
174
+ }
175
+ }
176
+ export { PlaywrightBackendPage, PlaywrightBackendContext };
177
+ //# sourceMappingURL=playwright.backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playwright.backend.js","sourceRoot":"","sources":["../../../../src/browser/runtime/backends/playwright.backend.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,MAAM,EAAuC,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAYtD,OAAO,EACN,oBAAoB,EACpB,2BAA2B,EAC3B,MAAM,gBAAgB,CAAC;AAExB,MAAM,sBAAsB,GAAG,MAAM,CAAC;AACtC,MAAM,qBAAqB;IAER;IACA;IACA;IAHlB,YACkB,IAAU,EACV,OAAmB,EACnB,iBAAsC,IAAI,GAAG,EAAE;QAF/C,SAAI,GAAJ,IAAI,CAAM;QACV,YAAO,GAAP,OAAO,CAAY;QACnB,mBAAc,GAAd,cAAc,CAAiC;IAC9D,CAAC;IAEJ,8FAA8F;IAC9F,IAAI,GAAG;QACN,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,OAA4B;QACnD,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5D,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAC1B,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,kBAAkB;YACnD,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,MAAM;SACnC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,OAA8B;QAC3D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAAgB,EAAE,KAAa,EAAE,OAA8B;QACzE,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,CAAC,CAAC;IAChG,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAAgB,EAAE,IAAY,EAAE,OAA4B;QACtE,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW;QACtB,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,OAAuC;QAC9E,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE;YACzC,KAAK,EAAE,OAAO,EAAE,KAAK,IAAI,SAAS;YAClC,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,MAAM;SACnC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,KAAa,EAAE,OAA8B;QACjF,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE;YAC7C,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,sBAAsB;SACnD,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,OAA8B;QAC3D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAiC;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACzC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,KAAK;SACnC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAgB;QACpC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,sBAAsB,EAAE,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,CAAS,EAAE,CAAS;QAClC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAc,MAAc;QACzC,6GAA6G;QAC7G,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAI,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,OAAO;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC5B,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,IAAI,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAgB;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,IAAI,IAAI,CAAC,CAAC;IAC9F,CAAC;IAED,GAAG;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,KAAK;QACV,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,KAAK;QACV,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CACD;AAED,MAAM,wBAAwB;IAInB;IACA;IACQ;IACA;IANV,aAAa,GAAG,KAAK,CAAC;IACtB,aAAa,GAAG,KAAK,CAAC;IAC9B,YACU,OAAuB,EACvB,OAAuB,EACf,OAAmB,EACnB,iBAAsC,IAAI,GAAG,EAAE;QAHvD,YAAO,GAAP,OAAO,CAAgB;QACvB,YAAO,GAAP,OAAO,CAAgB;QACf,YAAO,GAAP,OAAO,CAAY;QACnB,mBAAc,GAAd,cAAc,CAAiC;IAC9D,CAAC;IAEJ,KAAK,CAAC,OAAO;QACZ,OAAO,IAAI,qBAAqB,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACnG,CAAC;IAED,KAAK,CAAC,KAAK;QACV,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IACzG,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAA2B;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACtF,CAAC;IAED,KAAK,CAAC,KAAK;QACV,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YACxD,IAAI,MAAM,CAAC,EAAE;gBAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;;gBACpC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;YACnD,IAAI,MAAM,CAAC,EAAE;gBAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;;gBACpC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM;YAAE,MAAM,IAAI,cAAc,CAAC,QAAQ,EAAE,+CAA+C,CAAC,CAAC;IAC1G,CAAC;CACD;AAED,MAAM,OAAO,iBAAiB;IAUA;IATpB,EAAE,GAAG,4BAA4B,CAAC;IAClC,QAAQ,GAAG,UAAmB,CAAC;IAC/B,YAAY,GAAG;QACvB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,gBAAgB,EAAE,IAAI;KACtB,CAAC;IAEF,YAA6B,gBAA6C,oBAAoB;QAAjE,kBAAa,GAAb,aAAa,CAAoD;IAAG,CAAC;IAElG,KAAK,CAAC,MAAM,CAAC,KAAgC;QAC5C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE;YAChF,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,OAAO,EAAE;gBACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE;oBAC7E,CAAC,CAAC,SAAS;aACZ;YACD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;SACxC,CAAC,CAAC;QACH,OAAO;YACN,OAAO,EAAE,IAAI,wBAAwB,CACpC,OAAO,EACP,OAAO,EACP,KAAK,CAAC,OAAO,EACb,2BAA2B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAChE;YACD,UAAU;SACV,CAAC;IACH,CAAC;CACD;AAED,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type { BrowserSessionMode, BrowserProfileOptions, BrowserSessionOptions, BrowserTabOptions, BrowserVideoOptions, BrowserLaunchOptions, BrowserRuntimeSession, BrowserRuntimeTab } from './types.ts';
2
+ export { BrowserRuntimeManager } from './manager.ts';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/runtime/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { BrowserRuntimeManager } from "./manager.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browser/runtime/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Browser Launcher
3
+ */
4
+ import type { VibesRuntime } from "@vibesdotdev/kernel";
5
+ import type { Browser, BrowserContext } from "playwright";
6
+ import type { BrowserLaunchOptions } from "./types.ts";
7
+ export type ChromiumEngine = Pick<typeof import('playwright')['chromium'], 'launch' | 'launchPersistentContext'>;
8
+ export declare function launchBrowserContext(runtime: VibesRuntime, input: {
9
+ profileDir?: string;
10
+ extensions?: string[];
11
+ options?: BrowserLaunchOptions;
12
+ storageStatePath?: string;
13
+ }): Promise<{
14
+ context: BrowserContext;
15
+ browser: Browser | null;
16
+ persistent: boolean;
17
+ }>;
18
+ //# sourceMappingURL=launcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../../src/browser/runtime/launcher.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAQvD,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,YAAY,CAAC,CAAC,UAAU,CAAC,EAAE,QAAQ,GAAG,yBAAyB,CAAC,CAAC;AAwFjH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE;IACL,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GACA,OAAO,CAAC;IACT,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC,CAkED"}