@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,129 @@
1
+ /**
2
+ * Browser Profile Storage Record Descriptor
3
+ *
4
+ * Runtime-aligned storage for browser profile tracking.
5
+ * Replaces direct database access functions with proper runtime integration.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const profiles = await runtime
10
+ * .query('storage/record')
11
+ * .withId('browser.profiles')
12
+ * .resolve();
13
+ *
14
+ * const profile = await profiles.create({
15
+ * id: 'profile-123',
16
+ * name: 'My Profile',
17
+ * dirPath: '/path/to/profile'
18
+ * });
19
+ * ```
20
+ */
21
+ import { BrowserProfileSchema } from "../schemas/profile.js";
22
+ export * from "../schemas/profile.js";
23
+ // STORAGE RECORD DESCRIPTOR
24
+ /**
25
+ * Storage Record Descriptor for Browser Profiles
26
+ */
27
+ export const browserProfileRecordDescriptor = {
28
+ kind: 'storage/record',
29
+ id: 'browser.profiles',
30
+ name: 'Browser Profiles',
31
+ description: 'Browser profile configuration and state tracking',
32
+ schema: BrowserProfileSchema,
33
+ tableName: 'browser_profiles',
34
+ primaryKey: 'id',
35
+ relations: {
36
+ sessions: {
37
+ type: 'has_many',
38
+ target: 'browser.sessions',
39
+ foreignKey: 'profileId',
40
+ optional: true,
41
+ cascadeDelete: false
42
+ }
43
+ },
44
+ indexes: [],
45
+ migrations: [
46
+ {
47
+ version: 1,
48
+ name: 'Create browser_profiles table',
49
+ up: `
50
+ CREATE TABLE IF NOT EXISTS browser_profiles (
51
+ id TEXT PRIMARY KEY,
52
+ name TEXT NOT NULL,
53
+ dir_path TEXT NOT NULL,
54
+ created_at TEXT NOT NULL,
55
+ last_used_at TEXT NOT NULL,
56
+ metadata TEXT
57
+ );
58
+
59
+ CREATE INDEX IF NOT EXISTS idx_browser_profiles_name ON browser_profiles(name);
60
+ CREATE INDEX IF NOT EXISTS idx_browser_profiles_used ON browser_profiles(last_used_at);
61
+ `,
62
+ down: `DROP TABLE IF EXISTS browser_profiles`
63
+ },
64
+ {
65
+ version: 2,
66
+ name: 'Convert browser_profiles to JSON record format',
67
+ up: `
68
+ CREATE TABLE IF NOT EXISTS browser_profiles_v2 (
69
+ id TEXT PRIMARY KEY,
70
+ data TEXT NOT NULL
71
+ );
72
+
73
+ INSERT OR REPLACE INTO browser_profiles_v2 (id, data)
74
+ SELECT
75
+ id,
76
+ json_object(
77
+ 'id', id,
78
+ 'name', name,
79
+ 'dirPath', dir_path,
80
+ 'createdAt', created_at,
81
+ 'lastUsedAt', last_used_at,
82
+ 'metadata',
83
+ CASE
84
+ WHEN metadata IS NULL THEN json('{}')
85
+ WHEN json_valid(metadata) THEN json(metadata)
86
+ ELSE json_object('raw', metadata)
87
+ END
88
+ )
89
+ FROM browser_profiles;
90
+
91
+ DROP TABLE browser_profiles;
92
+ ALTER TABLE browser_profiles_v2 RENAME TO browser_profiles;
93
+
94
+ CREATE INDEX IF NOT EXISTS idx_browser_profiles_name
95
+ ON browser_profiles(json_extract(data, '$.name'));
96
+ CREATE INDEX IF NOT EXISTS idx_browser_profiles_used
97
+ ON browser_profiles(json_extract(data, '$.lastUsedAt'));
98
+ `,
99
+ down: `DROP TABLE IF EXISTS browser_profiles`
100
+ }
101
+ ],
102
+ version: 2,
103
+ timestamps: { createdAt: 'createdAt', updatedAt: 'lastUsedAt' },
104
+ autoId: false,
105
+ softDelete: false,
106
+ allowedAdapters: ['storage.localdb'],
107
+ defaultAdapter: 'storage.localdb',
108
+ adapterConfig: {
109
+ 'storage.localdb': {
110
+ dbName: 'browser.db',
111
+ scope: 'project'
112
+ }
113
+ },
114
+ scope: 'project',
115
+ versioning: false,
116
+ audit: false,
117
+ changeTracking: false,
118
+ beforeUpdate: (data) => {
119
+ const record = BrowserProfileSchema.parse(data);
120
+ Object.assign(data, { ...record, lastUsedAt: new Date().toISOString() });
121
+ },
122
+ validateOnWrite: true,
123
+ validateOnRead: false,
124
+ internal: false,
125
+ namespace: 'browser.profiles',
126
+ tags: ['browser', 'profiles', 'automation']
127
+ };
128
+ export default browserProfileRecordDescriptor;
129
+ //# sourceMappingURL=browser-profile.record.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-profile.record.descriptor.js","sourceRoot":"","sources":["../../../src/browser/storage/browser-profile.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,cAAc,uBAAuB,CAAC;AAEtC,4BAA4B;AAE5B;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAiC;IAC3E,IAAI,EAAE,gBAAgB;IACtB,EAAE,EAAE,kBAAkB;IACtB,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,kDAAkD;IAC/D,MAAM,EAAE,oBAAoB;IAC5B,SAAS,EAAE,kBAAkB;IAC7B,UAAU,EAAE,IAAI;IAEhB,SAAS,EAAE;QACV,QAAQ,EAAE;YACT,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,kBAAkB;YAC1B,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,KAAK;SACpB;KACD;IAED,OAAO,EAAE,EAAE;IAEX,UAAU,EAAE;QACX;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,+BAA+B;YACrC,EAAE,EAAE;;;;;;;;;;;;IAYH;YACD,IAAI,EAAE,uCAAuC;SAC7C;QACD;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,gDAAgD;YACtD,EAAE,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+BH;YACD,IAAI,EAAE,uCAAuC;SAC7C;KACD;IAED,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE;IAC/D,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,KAAK;IAEjB,eAAe,EAAE,CAAC,iBAAiB,CAAC;IACpC,cAAc,EAAE,iBAAiB;IACjC,aAAa,EAAE;QACd,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,SAAS;SAChB;KACD;IACD,KAAK,EAAE,SAAS;IAEhB,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,cAAc,EAAE,KAAK;IAErB,YAAY,EAAE,CAAC,IAA0C,EAAE,EAAE;QAC5D,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,kBAAkB;IAC7B,IAAI,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC;CAC3C,CAAC;AAEF,eAAe,8BAA8B,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Browser Recipe Storage Record Descriptor
3
+ *
4
+ * Runtime-aligned storage for browser automation recipes.
5
+ * Replaces direct database access functions with proper runtime integration.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const recipes = await runtime
10
+ * .query('storage/record')
11
+ * .withId('browser.recipes')
12
+ * .resolve();
13
+ *
14
+ * const recipe = await recipes.create({
15
+ * id: 'recipe-123',
16
+ * name: 'Login Recipe',
17
+ * type: 'login',
18
+ * steps: [...]
19
+ * });
20
+ * ```
21
+ */
22
+ import type { StorageRecordDescriptorInput } from '@vibesdotdev/storage';
23
+ export * from '../schemas/recipe.ts';
24
+ /**
25
+ * Storage Record Descriptor for Browser Recipes
26
+ */
27
+ export declare const browserRecipeRecordDescriptor: StorageRecordDescriptorInput;
28
+ export default browserRecipeRecordDescriptor;
29
+ //# sourceMappingURL=browser-recipe.record.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-recipe.record.descriptor.d.ts","sourceRoot":"","sources":["../../../src/browser/storage/browser-recipe.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAGzE,cAAc,sBAAsB,CAAC;AAIrC;;GAEG;AACH,eAAO,MAAM,6BAA6B,EAAE,4BAkF3C,CAAC;AAEF,eAAe,6BAA6B,CAAC"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Browser Recipe Storage Record Descriptor
3
+ *
4
+ * Runtime-aligned storage for browser automation recipes.
5
+ * Replaces direct database access functions with proper runtime integration.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const recipes = await runtime
10
+ * .query('storage/record')
11
+ * .withId('browser.recipes')
12
+ * .resolve();
13
+ *
14
+ * const recipe = await recipes.create({
15
+ * id: 'recipe-123',
16
+ * name: 'Login Recipe',
17
+ * type: 'login',
18
+ * steps: [...]
19
+ * });
20
+ * ```
21
+ */
22
+ import { BrowserRecipeSchema, BrowserRecipeCreateSchema } from "../schemas/recipe.js";
23
+ export * from "../schemas/recipe.js";
24
+ // STORAGE RECORD DESCRIPTOR
25
+ /**
26
+ * Storage Record Descriptor for Browser Recipes
27
+ */
28
+ export const browserRecipeRecordDescriptor = {
29
+ kind: 'storage/record',
30
+ id: 'browser.recipes',
31
+ name: 'Browser Recipes',
32
+ description: 'Reusable browser automation workflows with parameterized steps',
33
+ schema: BrowserRecipeSchema,
34
+ tableName: 'browser_recipes',
35
+ primaryKey: 'id',
36
+ relations: {},
37
+ indexes: [
38
+ { fields: ['name'], unique: false },
39
+ { fields: ['type'], unique: false },
40
+ { fields: ['createdAt'], unique: false },
41
+ { fields: ['updatedAt'], unique: false }
42
+ ],
43
+ migrations: [
44
+ {
45
+ version: 1,
46
+ name: 'Create browser_recipes table',
47
+ up: `
48
+ CREATE TABLE IF NOT EXISTS browser_recipes (
49
+ id TEXT PRIMARY KEY,
50
+ name TEXT NOT NULL,
51
+ description TEXT,
52
+ type TEXT NOT NULL DEFAULT 'custom',
53
+ entry_url TEXT,
54
+ url_pattern TEXT,
55
+ parameters TEXT,
56
+ steps TEXT NOT NULL,
57
+ success_indicator TEXT,
58
+ failure_indicators TEXT,
59
+ tags TEXT,
60
+ created_at TEXT NOT NULL,
61
+ updated_at TEXT NOT NULL,
62
+ metadata TEXT
63
+ );
64
+
65
+ CREATE INDEX IF NOT EXISTS idx_browser_recipes_name ON browser_recipes(name);
66
+ CREATE INDEX IF NOT EXISTS idx_browser_recipes_type ON browser_recipes(type);
67
+ CREATE INDEX IF NOT EXISTS idx_browser_recipes_created ON browser_recipes(created_at);
68
+ CREATE INDEX IF NOT EXISTS idx_browser_recipes_updated ON browser_recipes(updated_at);
69
+ `,
70
+ down: `DROP TABLE IF EXISTS browser_recipes`
71
+ }
72
+ ],
73
+ version: 1,
74
+ timestamps: { createdAt: 'createdAt', updatedAt: 'updatedAt' },
75
+ autoId: false,
76
+ softDelete: false,
77
+ allowedAdapters: ['storage.localdb'],
78
+ defaultAdapter: 'storage.localdb',
79
+ adapterConfig: {
80
+ 'storage.localdb': {
81
+ dbName: 'browser.db',
82
+ scope: 'project'
83
+ }
84
+ },
85
+ scope: 'project',
86
+ versioning: false,
87
+ audit: false,
88
+ changeTracking: false,
89
+ beforeCreate: (data) => {
90
+ Object.assign(data, BrowserRecipeCreateSchema.parse(data));
91
+ },
92
+ beforeUpdate: (data) => {
93
+ const record = BrowserRecipeSchema.parse(data);
94
+ Object.assign(data, { ...record, updatedAt: new Date().toISOString() });
95
+ },
96
+ validateOnWrite: true,
97
+ validateOnRead: false,
98
+ internal: false,
99
+ namespace: 'browser.recipes',
100
+ tags: ['browser', 'recipes', 'automation']
101
+ };
102
+ export default browserRecipeRecordDescriptor;
103
+ //# sourceMappingURL=browser-recipe.record.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-recipe.record.descriptor.js","sourceRoot":"","sources":["../../../src/browser/storage/browser-recipe.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACtF,cAAc,sBAAsB,CAAC;AAErC,4BAA4B;AAE5B;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAiC;IAC1E,IAAI,EAAE,gBAAgB;IACtB,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,gEAAgE;IAC7E,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,IAAI;IAEhB,SAAS,EAAE,EAAE;IAEb,OAAO,EAAE;QACR,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE;QACnC,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE;QACnC,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE;QACxC,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE;KACxC;IAED,UAAU,EAAE;QACX;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,8BAA8B;YACpC,EAAE,EAAE;;;;;;;;;;;;;;;;;;;;;;IAsBH;YACD,IAAI,EAAE,sCAAsC;SAC5C;KACD;IAED,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE;IAC9D,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,KAAK;IAEjB,eAAe,EAAE,CAAC,iBAAiB,CAAC;IACpC,cAAc,EAAE,iBAAiB;IACjC,aAAa,EAAE;QACd,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,SAAS;SAChB;KACD;IACD,KAAK,EAAE,SAAS;IAEhB,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,cAAc,EAAE,KAAK;IAErB,YAAY,EAAE,CAAC,IAA+C,EAAE,EAAE;QACjE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,YAAY,EAAE,CAAC,IAAyC,EAAE,EAAE;QAC3D,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,iBAAiB;IAC5B,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;CAC1C,CAAC;AAEF,eAAe,6BAA6B,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Browser Session Storage Record Descriptor
3
+ *
4
+ * Runtime-aligned storage for browser session tracking.
5
+ * Replaces direct database access functions with proper runtime integration.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const sessions = await runtime
10
+ * .query('storage/record')
11
+ * .withId('browser.sessions')
12
+ * .resolve();
13
+ *
14
+ * const session = await sessions.create({
15
+ * id: 'session-123',
16
+ * name: 'My Session',
17
+ * baseUrl: 'https://example.com'
18
+ * });
19
+ * ```
20
+ */
21
+ import type { StorageRecordDescriptorInput } from '@vibesdotdev/storage';
22
+ export * from '../schemas/session.ts';
23
+ /**
24
+ * Storage Record Descriptor for Browser Sessions
25
+ */
26
+ export declare const browserSessionRecordDescriptor: StorageRecordDescriptorInput;
27
+ export default browserSessionRecordDescriptor;
28
+ //# sourceMappingURL=browser-session.record.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-session.record.descriptor.d.ts","sourceRoot":"","sources":["../../../src/browser/storage/browser-session.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAGzE,cAAc,uBAAuB,CAAC;AAItC;;GAEG;AACH,eAAO,MAAM,8BAA8B,EAAE,4BA8H5C,CAAC;AAEF,eAAe,8BAA8B,CAAC"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * Browser Session Storage Record Descriptor
3
+ *
4
+ * Runtime-aligned storage for browser session tracking.
5
+ * Replaces direct database access functions with proper runtime integration.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const sessions = await runtime
10
+ * .query('storage/record')
11
+ * .withId('browser.sessions')
12
+ * .resolve();
13
+ *
14
+ * const session = await sessions.create({
15
+ * id: 'session-123',
16
+ * name: 'My Session',
17
+ * baseUrl: 'https://example.com'
18
+ * });
19
+ * ```
20
+ */
21
+ import { BrowserSessionSchema, BrowserSessionCreateSchema } from "../schemas/session.js";
22
+ export * from "../schemas/session.js";
23
+ // STORAGE RECORD DESCRIPTOR
24
+ /**
25
+ * Storage Record Descriptor for Browser Sessions
26
+ */
27
+ export const browserSessionRecordDescriptor = {
28
+ kind: 'storage/record',
29
+ id: 'browser.sessions',
30
+ name: 'Browser Sessions',
31
+ description: 'Browser session tracking with state management',
32
+ schema: BrowserSessionSchema,
33
+ tableName: 'browser_sessions',
34
+ primaryKey: 'id',
35
+ relations: {
36
+ profile: {
37
+ type: 'belongs_to',
38
+ target: 'browser.profiles',
39
+ foreignKey: 'profileId',
40
+ optional: true,
41
+ cascadeDelete: false
42
+ },
43
+ tabs: {
44
+ type: 'has_many',
45
+ target: 'browser.tabs',
46
+ foreignKey: 'sessionId',
47
+ optional: true,
48
+ cascadeDelete: true
49
+ }
50
+ },
51
+ indexes: [],
52
+ migrations: [
53
+ {
54
+ version: 1,
55
+ name: 'Create browser_sessions table',
56
+ up: `
57
+ CREATE TABLE IF NOT EXISTS browser_sessions (
58
+ id TEXT PRIMARY KEY,
59
+ name TEXT NOT NULL,
60
+ base_url TEXT,
61
+ profile_id TEXT,
62
+ storage_state_path TEXT,
63
+ created_at TEXT NOT NULL,
64
+ last_used_at TEXT NOT NULL,
65
+ status TEXT NOT NULL DEFAULT 'active',
66
+ metadata TEXT
67
+ );
68
+
69
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_status ON browser_sessions(status);
70
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_last_used ON browser_sessions(last_used_at);
71
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_profile ON browser_sessions(profile_id);
72
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_name ON browser_sessions(name);
73
+ `,
74
+ down: `DROP TABLE IF EXISTS browser_sessions`
75
+ },
76
+ {
77
+ version: 2,
78
+ name: 'Convert browser_sessions to JSON record format',
79
+ up: `
80
+ CREATE TABLE IF NOT EXISTS browser_sessions_v2 (
81
+ id TEXT PRIMARY KEY,
82
+ data TEXT NOT NULL
83
+ );
84
+
85
+ INSERT OR REPLACE INTO browser_sessions_v2 (id, data)
86
+ SELECT
87
+ id,
88
+ json_object(
89
+ 'id', id,
90
+ 'name', name,
91
+ 'baseUrl', base_url,
92
+ 'profileId', profile_id,
93
+ 'storageStatePath', storage_state_path,
94
+ 'createdAt', created_at,
95
+ 'lastUsedAt', last_used_at,
96
+ 'status', status,
97
+ 'metadata',
98
+ CASE
99
+ WHEN metadata IS NULL THEN json('{}')
100
+ WHEN json_valid(metadata) THEN json(metadata)
101
+ ELSE json_object('raw', metadata)
102
+ END
103
+ )
104
+ FROM browser_sessions;
105
+
106
+ DROP TABLE browser_sessions;
107
+ ALTER TABLE browser_sessions_v2 RENAME TO browser_sessions;
108
+
109
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_status
110
+ ON browser_sessions(json_extract(data, '$.status'));
111
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_last_used
112
+ ON browser_sessions(json_extract(data, '$.lastUsedAt'));
113
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_profile
114
+ ON browser_sessions(json_extract(data, '$.profileId'));
115
+ CREATE INDEX IF NOT EXISTS idx_browser_sessions_name
116
+ ON browser_sessions(json_extract(data, '$.name'));
117
+ `,
118
+ down: `DROP TABLE IF EXISTS browser_sessions`
119
+ }
120
+ ],
121
+ version: 2,
122
+ timestamps: { createdAt: 'createdAt', updatedAt: 'lastUsedAt' },
123
+ autoId: false,
124
+ softDelete: false,
125
+ allowedAdapters: ['storage.localdb'],
126
+ defaultAdapter: 'storage.localdb',
127
+ adapterConfig: {
128
+ 'storage.localdb': {
129
+ dbName: 'browser.db',
130
+ scope: 'project'
131
+ }
132
+ },
133
+ scope: 'project',
134
+ versioning: false,
135
+ audit: false,
136
+ changeTracking: false,
137
+ beforeCreate: (data) => {
138
+ Object.assign(data, BrowserSessionCreateSchema.parse(data));
139
+ },
140
+ validateOnWrite: true,
141
+ validateOnRead: false,
142
+ internal: false,
143
+ namespace: 'browser.sessions',
144
+ tags: ['browser', 'sessions', 'automation']
145
+ };
146
+ export default browserSessionRecordDescriptor;
147
+ //# sourceMappingURL=browser-session.record.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-session.record.descriptor.js","sourceRoot":"","sources":["../../../src/browser/storage/browser-session.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACzF,cAAc,uBAAuB,CAAC;AAEtC,4BAA4B;AAE5B;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAiC;IAC3E,IAAI,EAAE,gBAAgB;IACtB,EAAE,EAAE,kBAAkB;IACtB,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,gDAAgD;IAC7D,MAAM,EAAE,oBAAoB;IAC5B,SAAS,EAAE,kBAAkB;IAC7B,UAAU,EAAE,IAAI;IAEhB,SAAS,EAAE;QACV,OAAO,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,kBAAkB;YAC1B,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,KAAK;SACpB;QACD,IAAI,EAAE;YACL,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,cAAc;YACtB,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,IAAI;SACnB;KACD;IAED,OAAO,EAAE,EAAE;IAEX,UAAU,EAAE;QACX;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,+BAA+B;YACrC,EAAE,EAAE;;;;;;;;;;;;;;;;;IAiBH;YACD,IAAI,EAAE,uCAAuC;SAC7C;QACD;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,gDAAgD;YACtD,EAAE,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsCH;YACD,IAAI,EAAE,uCAAuC;SAC7C;KACD;IAED,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE;IAC/D,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,KAAK;IAEjB,eAAe,EAAE,CAAC,iBAAiB,CAAC;IACpC,cAAc,EAAE,iBAAiB;IACjC,aAAa,EAAE;QACd,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,SAAS;SAChB;KACD;IACD,KAAK,EAAE,SAAS;IAEhB,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,cAAc,EAAE,KAAK;IAErB,YAAY,EAAE,CAAC,IAAgD,EAAE,EAAE;QAClE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,0BAA0B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,kBAAkB;IAC7B,IAAI,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC;CAC3C,CAAC;AAEF,eAAe,8BAA8B,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Browser Tab Storage Record Descriptor
3
+ *
4
+ * Runtime-aligned storage for browser tab tracking.
5
+ * Replaces direct database access functions with proper runtime integration.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const tabs = await runtime
10
+ * .query('storage/record')
11
+ * .withId('browser.tabs')
12
+ * .resolve();
13
+ *
14
+ * const tab = await tabs.create({
15
+ * id: 'tab-123',
16
+ * sessionId: 'session-456',
17
+ * url: 'https://example.com'
18
+ * });
19
+ * ```
20
+ */
21
+ import type { StorageRecordDescriptorInput } from '@vibesdotdev/storage';
22
+ export * from '../schemas/tab.ts';
23
+ /**
24
+ * Storage Record Descriptor for Browser Tabs
25
+ */
26
+ export declare const browserTabRecordDescriptor: StorageRecordDescriptorInput;
27
+ export default browserTabRecordDescriptor;
28
+ //# sourceMappingURL=browser-tab.record.descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-tab.record.descriptor.d.ts","sourceRoot":"","sources":["../../../src/browser/storage/browser-tab.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAGzE,cAAc,mBAAmB,CAAC;AAIlC;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,4BAqIxC,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,153 @@
1
+ /**
2
+ * Browser Tab Storage Record Descriptor
3
+ *
4
+ * Runtime-aligned storage for browser tab tracking.
5
+ * Replaces direct database access functions with proper runtime integration.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const tabs = await runtime
10
+ * .query('storage/record')
11
+ * .withId('browser.tabs')
12
+ * .resolve();
13
+ *
14
+ * const tab = await tabs.create({
15
+ * id: 'tab-123',
16
+ * sessionId: 'session-456',
17
+ * url: 'https://example.com'
18
+ * });
19
+ * ```
20
+ */
21
+ import { BrowserTabSchema, BrowserTabCreateSchema } from "../schemas/tab.js";
22
+ export * from "../schemas/tab.js";
23
+ // STORAGE RECORD DESCRIPTOR
24
+ /**
25
+ * Storage Record Descriptor for Browser Tabs
26
+ */
27
+ export const browserTabRecordDescriptor = {
28
+ kind: 'storage/record',
29
+ id: 'browser.tabs',
30
+ name: 'Browser Tabs',
31
+ description: 'Browser tab tracking within sessions',
32
+ schema: BrowserTabSchema,
33
+ tableName: 'browser_tabs',
34
+ primaryKey: 'id',
35
+ relations: {
36
+ session: {
37
+ type: 'belongs_to',
38
+ target: 'browser.sessions',
39
+ foreignKey: 'sessionId',
40
+ optional: false,
41
+ cascadeDelete: true
42
+ }
43
+ },
44
+ indexes: [],
45
+ migrations: [
46
+ {
47
+ version: 1,
48
+ name: 'Create browser_tabs table',
49
+ up: `
50
+ CREATE TABLE IF NOT EXISTS browser_tabs (
51
+ id TEXT PRIMARY KEY,
52
+ session_id TEXT NOT NULL,
53
+ url TEXT,
54
+ created_at TEXT NOT NULL,
55
+ last_active_at TEXT NOT NULL,
56
+ status TEXT NOT NULL DEFAULT 'open',
57
+ metadata TEXT,
58
+ FOREIGN KEY (session_id) REFERENCES browser_sessions(id) ON DELETE CASCADE
59
+ );
60
+
61
+ CREATE INDEX IF NOT EXISTS idx_browser_tabs_session ON browser_tabs(session_id);
62
+ CREATE INDEX IF NOT EXISTS idx_browser_tabs_status ON browser_tabs(status);
63
+ CREATE INDEX IF NOT EXISTS idx_browser_tabs_active ON browser_tabs(last_active_at);
64
+ `,
65
+ down: `DROP TABLE IF EXISTS browser_tabs`
66
+ },
67
+ {
68
+ version: 2,
69
+ name: 'Convert browser_tabs to JSON record format',
70
+ up: `
71
+ CREATE TABLE IF NOT EXISTS browser_tabs_v2 (
72
+ id TEXT PRIMARY KEY,
73
+ data TEXT NOT NULL
74
+ );
75
+
76
+ INSERT OR REPLACE INTO browser_tabs_v2 (id, data)
77
+ SELECT
78
+ id,
79
+ json_object(
80
+ 'id', id,
81
+ 'sessionId', session_id,
82
+ 'url', url,
83
+ 'createdAt', created_at,
84
+ 'lastActiveAt', last_active_at,
85
+ 'status', status,
86
+ 'metadata',
87
+ CASE
88
+ WHEN metadata IS NULL THEN json('{}')
89
+ WHEN json_valid(metadata) THEN json(metadata)
90
+ ELSE json_object('raw', metadata)
91
+ END
92
+ )
93
+ FROM browser_tabs;
94
+
95
+ DROP TABLE browser_tabs;
96
+ ALTER TABLE browser_tabs_v2 RENAME TO browser_tabs;
97
+
98
+ CREATE INDEX IF NOT EXISTS idx_browser_tabs_session
99
+ ON browser_tabs(json_extract(data, '$.sessionId'));
100
+ CREATE INDEX IF NOT EXISTS idx_browser_tabs_status
101
+ ON browser_tabs(json_extract(data, '$.status'));
102
+ CREATE INDEX IF NOT EXISTS idx_browser_tabs_active
103
+ ON browser_tabs(json_extract(data, '$.lastActiveAt'));
104
+ `,
105
+ down: `DROP TABLE IF EXISTS browser_tabs`
106
+ },
107
+ {
108
+ version: 3,
109
+ name: 'Add browser_tabs session delete cascade trigger',
110
+ up: `
111
+ CREATE TRIGGER IF NOT EXISTS trg_browser_tabs_session_delete
112
+ AFTER DELETE ON browser_sessions
113
+ BEGIN
114
+ DELETE FROM browser_tabs
115
+ WHERE json_extract(data, '$.sessionId') = OLD.id;
116
+ END;
117
+ `,
118
+ down: `
119
+ DROP TRIGGER IF EXISTS trg_browser_tabs_session_delete;
120
+ `
121
+ }
122
+ ],
123
+ version: 3,
124
+ timestamps: { createdAt: 'createdAt', updatedAt: 'lastActiveAt' },
125
+ autoId: false,
126
+ softDelete: false,
127
+ allowedAdapters: ['storage.localdb'],
128
+ defaultAdapter: 'storage.localdb',
129
+ adapterConfig: {
130
+ 'storage.localdb': {
131
+ dbName: 'browser.db',
132
+ scope: 'project'
133
+ }
134
+ },
135
+ scope: 'project',
136
+ versioning: false,
137
+ audit: false,
138
+ changeTracking: false,
139
+ beforeCreate: (data) => {
140
+ Object.assign(data, BrowserTabCreateSchema.parse(data));
141
+ },
142
+ beforeUpdate: (data) => {
143
+ const record = BrowserTabSchema.parse(data);
144
+ Object.assign(data, { ...record, lastActiveAt: new Date().toISOString() });
145
+ },
146
+ validateOnWrite: true,
147
+ validateOnRead: false,
148
+ internal: false,
149
+ namespace: 'browser.tabs',
150
+ tags: ['browser', 'tabs', 'automation']
151
+ };
152
+ export default browserTabRecordDescriptor;
153
+ //# sourceMappingURL=browser-tab.record.descriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-tab.record.descriptor.js","sourceRoot":"","sources":["../../../src/browser/storage/browser-tab.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,cAAc,mBAAmB,CAAC;AAElC,4BAA4B;AAE5B;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAiC;IACvE,IAAI,EAAE,gBAAgB;IACtB,EAAE,EAAE,cAAc;IAClB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,sCAAsC;IACnD,MAAM,EAAE,gBAAgB;IACxB,SAAS,EAAE,cAAc;IACzB,UAAU,EAAE,IAAI;IAEhB,SAAS,EAAE;QACV,OAAO,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,kBAAkB;YAC1B,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,KAAK;YACf,aAAa,EAAE,IAAI;SACnB;KACD;IAED,OAAO,EAAE,EAAE;IAEX,UAAU,EAAE;QACX;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,2BAA2B;YACjC,EAAE,EAAE;;;;;;;;;;;;;;;IAeH;YACD,IAAI,EAAE,mCAAmC;SACzC;QACD;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,4CAA4C;YAClD,EAAE,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkCH;YACD,IAAI,EAAE,mCAAmC;SACzC;QACD;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,iDAAiD;YACvD,EAAE,EAAE;;;;;;;IAOH;YACD,IAAI,EAAE;;IAEL;SACD;KACD;IAED,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE;IACjE,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,KAAK;IAEjB,eAAe,EAAE,CAAC,iBAAiB,CAAC;IACpC,cAAc,EAAE,iBAAiB;IACjC,aAAa,EAAE;QACd,iBAAiB,EAAE;YAClB,MAAM,EAAE,YAAY;YACpB,KAAK,EAAE,SAAS;SAChB;KACD;IACD,KAAK,EAAE,SAAS;IAEhB,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,cAAc,EAAE,KAAK;IAErB,YAAY,EAAE,CAAC,IAA4C,EAAE,EAAE;QAC9D,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,YAAY,EAAE,CAAC,IAAsC,EAAE,EAAE;QACxD,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,SAAS,EAAE,cAAc;IACzB,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC;CACvC,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Browser Storage Directory Helpers
3
+ *
4
+ * Ensures browser data directories exist.
5
+ * Storage access goes through runtime.query('storage/record') with browser.* descriptors.
6
+ */
7
+ import type { VibesRuntime } from '@vibesdotdev/kernel';
8
+ export declare function ensureBrowserDirs(runtime: VibesRuntime, workspacePath: string): Promise<void>;
9
+ //# sourceMappingURL=database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../src/browser/storage/database.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAQxD,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMnG"}