opendevbrowser 0.0.15 → 0.0.17

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 (646) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +262 -43
  3. package/dist/annotate/direct-annotator.d.ts +22 -0
  4. package/dist/annotate/direct-annotator.d.ts.map +1 -0
  5. package/dist/annotate/output.d.ts +10 -0
  6. package/dist/annotate/output.d.ts.map +1 -0
  7. package/dist/browser/annotation-manager.d.ts +33 -0
  8. package/dist/browser/annotation-manager.d.ts.map +1 -0
  9. package/dist/browser/browser-manager.d.ts +402 -0
  10. package/dist/browser/browser-manager.d.ts.map +1 -0
  11. package/dist/browser/canvas-client.d.ts +53 -0
  12. package/dist/browser/canvas-client.d.ts.map +1 -0
  13. package/dist/browser/canvas-code-sync-manager.d.ts +79 -0
  14. package/dist/browser/canvas-code-sync-manager.d.ts.map +1 -0
  15. package/dist/browser/canvas-manager.d.ts +94 -0
  16. package/dist/browser/canvas-manager.d.ts.map +1 -0
  17. package/dist/browser/canvas-runtime-preview-bridge.d.ts +20 -0
  18. package/dist/browser/canvas-runtime-preview-bridge.d.ts.map +1 -0
  19. package/dist/browser/canvas-session-sync-manager.d.ts +21 -0
  20. package/dist/browser/canvas-session-sync-manager.d.ts.map +1 -0
  21. package/dist/browser/fingerprint/adapters.d.ts +26 -0
  22. package/dist/browser/fingerprint/adapters.d.ts.map +1 -0
  23. package/dist/browser/fingerprint/canary.d.ts +25 -0
  24. package/dist/browser/fingerprint/canary.d.ts.map +1 -0
  25. package/dist/browser/fingerprint/profiles.d.ts +16 -0
  26. package/dist/browser/fingerprint/profiles.d.ts.map +1 -0
  27. package/dist/browser/fingerprint/tier1-coherence.d.ts +36 -0
  28. package/dist/browser/fingerprint/tier1-coherence.d.ts.map +1 -0
  29. package/dist/browser/fingerprint/tier2-runtime.d.ts +40 -0
  30. package/dist/browser/fingerprint/tier2-runtime.d.ts.map +1 -0
  31. package/dist/browser/fingerprint/tier3-adaptive.d.ts +30 -0
  32. package/dist/browser/fingerprint/tier3-adaptive.d.ts.map +1 -0
  33. package/dist/browser/manager-types.d.ts +15 -0
  34. package/dist/browser/manager-types.d.ts.map +1 -0
  35. package/dist/browser/ops-browser-manager.d.ts +141 -0
  36. package/dist/browser/ops-browser-manager.d.ts.map +1 -0
  37. package/dist/browser/ops-client.d.ts +56 -0
  38. package/dist/browser/ops-client.d.ts.map +1 -0
  39. package/dist/browser/parallelism-governor.d.ts +31 -0
  40. package/dist/browser/parallelism-governor.d.ts.map +1 -0
  41. package/dist/browser/script-runner.d.ts +23 -0
  42. package/dist/browser/script-runner.d.ts.map +1 -0
  43. package/dist/browser/session-store.d.ts +63 -0
  44. package/dist/browser/session-store.d.ts.map +1 -0
  45. package/dist/browser/target-manager.d.ts +36 -0
  46. package/dist/browser/target-manager.d.ts.map +1 -0
  47. package/dist/cache/chrome-locator.d.ts +2 -0
  48. package/dist/cache/chrome-locator.d.ts.map +1 -0
  49. package/dist/cache/downloader.d.ts +6 -0
  50. package/dist/cache/downloader.d.ts.map +1 -0
  51. package/dist/cache/paths.d.ts +9 -0
  52. package/dist/cache/paths.d.ts.map +1 -0
  53. package/dist/canvas/code-sync/apply-tsx.d.ts +23 -0
  54. package/dist/canvas/code-sync/apply-tsx.d.ts.map +1 -0
  55. package/dist/canvas/code-sync/graph.d.ts +5 -0
  56. package/dist/canvas/code-sync/graph.d.ts.map +1 -0
  57. package/dist/canvas/code-sync/hash.d.ts +3 -0
  58. package/dist/canvas/code-sync/hash.d.ts.map +1 -0
  59. package/dist/canvas/code-sync/import.d.ts +18 -0
  60. package/dist/canvas/code-sync/import.d.ts.map +1 -0
  61. package/dist/canvas/code-sync/manifest.d.ts +5 -0
  62. package/dist/canvas/code-sync/manifest.d.ts.map +1 -0
  63. package/dist/canvas/code-sync/tsx-adapter.d.ts +8 -0
  64. package/dist/canvas/code-sync/tsx-adapter.d.ts.map +1 -0
  65. package/dist/canvas/code-sync/types.d.ts +152 -0
  66. package/dist/canvas/code-sync/types.d.ts.map +1 -0
  67. package/dist/canvas/code-sync/write.d.ts +9 -0
  68. package/dist/canvas/code-sync/write.d.ts.map +1 -0
  69. package/dist/canvas/document-store.d.ts +81 -0
  70. package/dist/canvas/document-store.d.ts.map +1 -0
  71. package/dist/canvas/export.d.ts +12 -0
  72. package/dist/canvas/export.d.ts.map +1 -0
  73. package/dist/canvas/repo-store.d.ts +10 -0
  74. package/dist/canvas/repo-store.d.ts.map +1 -0
  75. package/dist/canvas/surface-palette.d.ts +15 -0
  76. package/dist/canvas/surface-palette.d.ts.map +1 -0
  77. package/dist/canvas/types.d.ts +255 -0
  78. package/dist/canvas/types.d.ts.map +1 -0
  79. package/dist/canvas-runtime-preview-bridge-HBEHXM4T.js +7 -0
  80. package/dist/canvas-runtime-preview-bridge-HBEHXM4T.js.map +1 -0
  81. package/dist/chunk-5J3IFL3X.js +16706 -0
  82. package/dist/chunk-5J3IFL3X.js.map +1 -0
  83. package/dist/chunk-D633UO34.js +8149 -0
  84. package/dist/chunk-D633UO34.js.map +1 -0
  85. package/dist/chunk-FUSXMW3G.js +169 -0
  86. package/dist/chunk-FUSXMW3G.js.map +1 -0
  87. package/dist/chunk-TBUCZX4A.js +34 -0
  88. package/dist/chunk-TBUCZX4A.js.map +1 -0
  89. package/dist/chunk-V7KUDHDG.js +276 -0
  90. package/dist/chunk-V7KUDHDG.js.map +1 -0
  91. package/dist/chunk-Y2KL55OG.js +59 -0
  92. package/dist/chunk-Y2KL55OG.js.map +1 -0
  93. package/dist/cli/args.d.ts +25 -0
  94. package/dist/cli/args.d.ts.map +1 -0
  95. package/dist/cli/client.d.ts +2 -0
  96. package/dist/cli/client.d.ts.map +1 -0
  97. package/dist/cli/commands/annotate.d.ts +38 -0
  98. package/dist/cli/commands/annotate.d.ts.map +1 -0
  99. package/dist/cli/commands/artifacts.d.ts +24 -0
  100. package/dist/cli/commands/artifacts.d.ts.map +1 -0
  101. package/dist/cli/commands/canvas.d.ts +45 -0
  102. package/dist/cli/commands/canvas.d.ts.map +1 -0
  103. package/dist/cli/commands/daemon.d.ts +35 -0
  104. package/dist/cli/commands/daemon.d.ts.map +1 -0
  105. package/dist/cli/commands/devtools/console-poll.d.ts +7 -0
  106. package/dist/cli/commands/devtools/console-poll.d.ts.map +1 -0
  107. package/dist/cli/commands/devtools/debug-trace-snapshot.d.ts +20 -0
  108. package/dist/cli/commands/devtools/debug-trace-snapshot.d.ts.map +1 -0
  109. package/dist/cli/commands/devtools/network-poll.d.ts +7 -0
  110. package/dist/cli/commands/devtools/network-poll.d.ts.map +1 -0
  111. package/dist/cli/commands/devtools/perf.d.ts +7 -0
  112. package/dist/cli/commands/devtools/perf.d.ts.map +1 -0
  113. package/dist/cli/commands/devtools/screenshot.d.ts +18 -0
  114. package/dist/cli/commands/devtools/screenshot.d.ts.map +1 -0
  115. package/dist/cli/commands/dom/attr.d.ts +7 -0
  116. package/dist/cli/commands/dom/attr.d.ts.map +1 -0
  117. package/dist/cli/commands/dom/checked.d.ts +7 -0
  118. package/dist/cli/commands/dom/checked.d.ts.map +1 -0
  119. package/dist/cli/commands/dom/enabled.d.ts +7 -0
  120. package/dist/cli/commands/dom/enabled.d.ts.map +1 -0
  121. package/dist/cli/commands/dom/html.d.ts +7 -0
  122. package/dist/cli/commands/dom/html.d.ts.map +1 -0
  123. package/dist/cli/commands/dom/text.d.ts +7 -0
  124. package/dist/cli/commands/dom/text.d.ts.map +1 -0
  125. package/dist/cli/commands/dom/value.d.ts +7 -0
  126. package/dist/cli/commands/dom/value.d.ts.map +1 -0
  127. package/dist/cli/commands/dom/visible.d.ts +7 -0
  128. package/dist/cli/commands/dom/visible.d.ts.map +1 -0
  129. package/dist/cli/commands/export/clone-component.d.ts +16 -0
  130. package/dist/cli/commands/export/clone-component.d.ts.map +1 -0
  131. package/dist/cli/commands/export/clone-page.d.ts +15 -0
  132. package/dist/cli/commands/export/clone-page.d.ts.map +1 -0
  133. package/dist/cli/commands/interact/check.d.ts +7 -0
  134. package/dist/cli/commands/interact/check.d.ts.map +1 -0
  135. package/dist/cli/commands/interact/click.d.ts +7 -0
  136. package/dist/cli/commands/interact/click.d.ts.map +1 -0
  137. package/dist/cli/commands/interact/hover.d.ts +7 -0
  138. package/dist/cli/commands/interact/hover.d.ts.map +1 -0
  139. package/dist/cli/commands/interact/press.d.ts +7 -0
  140. package/dist/cli/commands/interact/press.d.ts.map +1 -0
  141. package/dist/cli/commands/interact/scroll-into-view.d.ts +7 -0
  142. package/dist/cli/commands/interact/scroll-into-view.d.ts.map +1 -0
  143. package/dist/cli/commands/interact/scroll.d.ts +7 -0
  144. package/dist/cli/commands/interact/scroll.d.ts.map +1 -0
  145. package/dist/cli/commands/interact/select.d.ts +7 -0
  146. package/dist/cli/commands/interact/select.d.ts.map +1 -0
  147. package/dist/cli/commands/interact/type.d.ts +7 -0
  148. package/dist/cli/commands/interact/type.d.ts.map +1 -0
  149. package/dist/cli/commands/interact/uncheck.d.ts +7 -0
  150. package/dist/cli/commands/interact/uncheck.d.ts.map +1 -0
  151. package/dist/cli/commands/macro-resolve.d.ts +18 -0
  152. package/dist/cli/commands/macro-resolve.d.ts.map +1 -0
  153. package/dist/cli/commands/native.d.ts +93 -0
  154. package/dist/cli/commands/native.d.ts.map +1 -0
  155. package/dist/cli/commands/nav/goto.d.ts +7 -0
  156. package/dist/cli/commands/nav/goto.d.ts.map +1 -0
  157. package/dist/cli/commands/nav/snapshot.d.ts +7 -0
  158. package/dist/cli/commands/nav/snapshot.d.ts.map +1 -0
  159. package/dist/cli/commands/nav/wait.d.ts +7 -0
  160. package/dist/cli/commands/nav/wait.d.ts.map +1 -0
  161. package/dist/cli/commands/pages/close.d.ts +6 -0
  162. package/dist/cli/commands/pages/close.d.ts.map +1 -0
  163. package/dist/cli/commands/pages/list.d.ts +7 -0
  164. package/dist/cli/commands/pages/list.d.ts.map +1 -0
  165. package/dist/cli/commands/pages/open.d.ts +7 -0
  166. package/dist/cli/commands/pages/open.d.ts.map +1 -0
  167. package/dist/cli/commands/product-video.d.ts +25 -0
  168. package/dist/cli/commands/product-video.d.ts.map +1 -0
  169. package/dist/cli/commands/registry.d.ts +5 -0
  170. package/dist/cli/commands/registry.d.ts.map +1 -0
  171. package/dist/cli/commands/research.d.ts +27 -0
  172. package/dist/cli/commands/research.d.ts.map +1 -0
  173. package/dist/cli/commands/rpc.d.ts +28 -0
  174. package/dist/cli/commands/rpc.d.ts.map +1 -0
  175. package/dist/cli/commands/run.d.ts +17 -0
  176. package/dist/cli/commands/run.d.ts.map +1 -0
  177. package/dist/cli/commands/serve.d.ts +64 -0
  178. package/dist/cli/commands/serve.d.ts.map +1 -0
  179. package/dist/cli/commands/session/connect.d.ts +9 -0
  180. package/dist/cli/commands/session/connect.d.ts.map +1 -0
  181. package/dist/cli/commands/session/cookie-import.d.ts +31 -0
  182. package/dist/cli/commands/session/cookie-import.d.ts.map +1 -0
  183. package/dist/cli/commands/session/cookie-list.d.ts +17 -0
  184. package/dist/cli/commands/session/cookie-list.d.ts.map +1 -0
  185. package/dist/cli/commands/session/disconnect.d.ts +6 -0
  186. package/dist/cli/commands/session/disconnect.d.ts.map +1 -0
  187. package/dist/cli/commands/session/launch.d.ts +29 -0
  188. package/dist/cli/commands/session/launch.d.ts.map +1 -0
  189. package/dist/cli/commands/session/status.d.ts +7 -0
  190. package/dist/cli/commands/session/status.d.ts.map +1 -0
  191. package/dist/cli/commands/shopping.d.ts +25 -0
  192. package/dist/cli/commands/shopping.d.ts.map +1 -0
  193. package/dist/cli/commands/status.d.ts +24 -0
  194. package/dist/cli/commands/status.d.ts.map +1 -0
  195. package/dist/cli/commands/targets/close.d.ts +6 -0
  196. package/dist/cli/commands/targets/close.d.ts.map +1 -0
  197. package/dist/cli/commands/targets/list.d.ts +7 -0
  198. package/dist/cli/commands/targets/list.d.ts.map +1 -0
  199. package/dist/cli/commands/targets/new.d.ts +7 -0
  200. package/dist/cli/commands/targets/new.d.ts.map +1 -0
  201. package/dist/cli/commands/targets/use.d.ts +7 -0
  202. package/dist/cli/commands/targets/use.d.ts.map +1 -0
  203. package/dist/cli/commands/types.d.ts +13 -0
  204. package/dist/cli/commands/types.d.ts.map +1 -0
  205. package/dist/cli/commands/uninstall.d.ts +14 -0
  206. package/dist/cli/commands/uninstall.d.ts.map +1 -0
  207. package/dist/cli/commands/update.d.ts +7 -0
  208. package/dist/cli/commands/update.d.ts.map +1 -0
  209. package/dist/cli/daemon-autostart.d.ts +46 -0
  210. package/dist/cli/daemon-autostart.d.ts.map +1 -0
  211. package/dist/cli/daemon-client.d.ts +33 -0
  212. package/dist/cli/daemon-client.d.ts.map +1 -0
  213. package/dist/cli/daemon-commands.d.ts +7 -0
  214. package/dist/cli/daemon-commands.d.ts.map +1 -0
  215. package/dist/cli/daemon-state.d.ts +56 -0
  216. package/dist/cli/daemon-state.d.ts.map +1 -0
  217. package/dist/cli/daemon-status.d.ts +19 -0
  218. package/dist/cli/daemon-status.d.ts.map +1 -0
  219. package/dist/cli/daemon.d.ts +29 -0
  220. package/dist/cli/daemon.d.ts.map +1 -0
  221. package/dist/cli/errors.d.ts +20 -0
  222. package/dist/cli/errors.d.ts.map +1 -0
  223. package/dist/cli/help.d.ts +33 -0
  224. package/dist/cli/help.d.ts.map +1 -0
  225. package/dist/cli/index.d.ts +2 -0
  226. package/dist/cli/index.d.ts.map +1 -0
  227. package/dist/cli/index.js +2825 -326
  228. package/dist/cli/index.js.map +1 -1
  229. package/dist/cli/installers/global.d.ts +9 -0
  230. package/dist/cli/installers/global.d.ts.map +1 -0
  231. package/dist/cli/installers/local.d.ts +9 -0
  232. package/dist/cli/installers/local.d.ts.map +1 -0
  233. package/dist/cli/installers/skills.d.ts +19 -0
  234. package/dist/cli/installers/skills.d.ts.map +1 -0
  235. package/dist/cli/output.d.ts +7 -0
  236. package/dist/cli/output.d.ts.map +1 -0
  237. package/dist/cli/remote-canvas-manager.d.ts +8 -0
  238. package/dist/cli/remote-canvas-manager.d.ts.map +1 -0
  239. package/dist/cli/remote-manager.d.ts +98 -0
  240. package/dist/cli/remote-manager.d.ts.map +1 -0
  241. package/dist/cli/remote-relay.d.ts +19 -0
  242. package/dist/cli/remote-relay.d.ts.map +1 -0
  243. package/dist/cli/templates/config.d.ts +7 -0
  244. package/dist/cli/templates/config.d.ts.map +1 -0
  245. package/dist/cli/utils/config.d.ts +20 -0
  246. package/dist/cli/utils/config.d.ts.map +1 -0
  247. package/dist/cli/utils/http.d.ts +5 -0
  248. package/dist/cli/utils/http.d.ts.map +1 -0
  249. package/dist/cli/utils/parse.d.ts +9 -0
  250. package/dist/cli/utils/parse.d.ts.map +1 -0
  251. package/dist/cli/utils/skills.d.ts +12 -0
  252. package/dist/cli/utils/skills.d.ts.map +1 -0
  253. package/dist/config.d.ts +208 -0
  254. package/dist/config.d.ts.map +1 -0
  255. package/dist/core/bootstrap.d.ts +3 -0
  256. package/dist/core/bootstrap.d.ts.map +1 -0
  257. package/dist/core/index.d.ts +3 -0
  258. package/dist/core/index.d.ts.map +1 -0
  259. package/dist/core/logging.d.ts +34 -0
  260. package/dist/core/logging.d.ts.map +1 -0
  261. package/dist/core/types.d.ts +36 -0
  262. package/dist/core/types.d.ts.map +1 -0
  263. package/dist/devtools/console-tracker.d.ts +44 -0
  264. package/dist/devtools/console-tracker.d.ts.map +1 -0
  265. package/dist/devtools/exception-tracker.d.ts +42 -0
  266. package/dist/devtools/exception-tracker.d.ts.map +1 -0
  267. package/dist/devtools/network-tracker.d.ts +34 -0
  268. package/dist/devtools/network-tracker.d.ts.map +1 -0
  269. package/dist/export/css-extract.d.ts +5 -0
  270. package/dist/export/css-extract.d.ts.map +1 -0
  271. package/dist/export/dom-capture.d.ts +15 -0
  272. package/dist/export/dom-capture.d.ts.map +1 -0
  273. package/dist/export/react-emitter.d.ts +11 -0
  274. package/dist/export/react-emitter.d.ts.map +1 -0
  275. package/dist/extension-extractor.d.ts +3 -0
  276. package/dist/extension-extractor.d.ts.map +1 -0
  277. package/dist/fs-UMRKOBNN.js +7 -0
  278. package/dist/fs-UMRKOBNN.js.map +1 -0
  279. package/dist/index.d.ts +3 -4
  280. package/dist/index.d.ts.map +1 -0
  281. package/dist/index.js +1028 -123
  282. package/dist/index.js.map +1 -1
  283. package/dist/macros/execute.d.ts +44 -0
  284. package/dist/macros/execute.d.ts.map +1 -0
  285. package/dist/macros/index.d.ts +9 -0
  286. package/dist/macros/index.d.ts.map +1 -0
  287. package/dist/macros/packs/core.d.ts +3 -0
  288. package/dist/macros/packs/core.d.ts.map +1 -0
  289. package/dist/macros/registry.d.ts +48 -0
  290. package/dist/macros/registry.d.ts.map +1 -0
  291. package/dist/macros-ND2M7LWU.js +399 -0
  292. package/dist/macros-ND2M7LWU.js.map +1 -0
  293. package/dist/opendevbrowser.d.ts +3 -4
  294. package/dist/opendevbrowser.d.ts.map +1 -0
  295. package/dist/opendevbrowser.js +1028 -123
  296. package/dist/opendevbrowser.js.map +1 -1
  297. package/dist/providers/adaptive-concurrency.d.ts +42 -0
  298. package/dist/providers/adaptive-concurrency.d.ts.map +1 -0
  299. package/dist/providers/artifacts.d.ts +34 -0
  300. package/dist/providers/artifacts.d.ts.map +1 -0
  301. package/dist/providers/blocker.d.ts +47 -0
  302. package/dist/providers/blocker.d.ts.map +1 -0
  303. package/dist/providers/community/index.d.ts +44 -0
  304. package/dist/providers/community/index.d.ts.map +1 -0
  305. package/dist/providers/enrichment.d.ts +33 -0
  306. package/dist/providers/enrichment.d.ts.map +1 -0
  307. package/dist/providers/errors.d.ts +41 -0
  308. package/dist/providers/errors.d.ts.map +1 -0
  309. package/dist/providers/index.d.ts +121 -0
  310. package/dist/providers/index.d.ts.map +1 -0
  311. package/dist/providers/normalize.d.ts +39 -0
  312. package/dist/providers/normalize.d.ts.map +1 -0
  313. package/dist/providers/policy.d.ts +5 -0
  314. package/dist/providers/policy.d.ts.map +1 -0
  315. package/dist/providers/registry.d.ts +22 -0
  316. package/dist/providers/registry.d.ts.map +1 -0
  317. package/dist/providers/renderer.d.ts +49 -0
  318. package/dist/providers/renderer.d.ts.map +1 -0
  319. package/dist/providers/runtime-factory.d.ts +20 -0
  320. package/dist/providers/runtime-factory.d.ts.map +1 -0
  321. package/dist/providers/safety/prompt-guard.d.ts +34 -0
  322. package/dist/providers/safety/prompt-guard.d.ts.map +1 -0
  323. package/dist/providers/shared/anti-bot-policy.d.ts +51 -0
  324. package/dist/providers/shared/anti-bot-policy.d.ts.map +1 -0
  325. package/dist/providers/shared/post-policy.d.ts +31 -0
  326. package/dist/providers/shared/post-policy.d.ts.map +1 -0
  327. package/dist/providers/shared/request-headers.d.ts +5 -0
  328. package/dist/providers/shared/request-headers.d.ts.map +1 -0
  329. package/dist/providers/shared/traversal-url.d.ts +2 -0
  330. package/dist/providers/shared/traversal-url.d.ts.map +1 -0
  331. package/dist/providers/shopping/index.d.ts +63 -0
  332. package/dist/providers/shopping/index.d.ts.map +1 -0
  333. package/dist/providers/social/bluesky.d.ts +3 -0
  334. package/dist/providers/social/bluesky.d.ts.map +1 -0
  335. package/dist/providers/social/facebook.d.ts +3 -0
  336. package/dist/providers/social/facebook.d.ts.map +1 -0
  337. package/dist/providers/social/index.d.ts +31 -0
  338. package/dist/providers/social/index.d.ts.map +1 -0
  339. package/dist/providers/social/instagram.d.ts +3 -0
  340. package/dist/providers/social/instagram.d.ts.map +1 -0
  341. package/dist/providers/social/linkedin.d.ts +3 -0
  342. package/dist/providers/social/linkedin.d.ts.map +1 -0
  343. package/dist/providers/social/platform.d.ts +40 -0
  344. package/dist/providers/social/platform.d.ts.map +1 -0
  345. package/dist/providers/social/reddit.d.ts +3 -0
  346. package/dist/providers/social/reddit.d.ts.map +1 -0
  347. package/dist/providers/social/threads.d.ts +3 -0
  348. package/dist/providers/social/threads.d.ts.map +1 -0
  349. package/dist/providers/social/tiktok.d.ts +3 -0
  350. package/dist/providers/social/tiktok.d.ts.map +1 -0
  351. package/dist/providers/social/x.d.ts +3 -0
  352. package/dist/providers/social/x.d.ts.map +1 -0
  353. package/dist/providers/social/youtube-resolver.d.ts +78 -0
  354. package/dist/providers/social/youtube-resolver.d.ts.map +1 -0
  355. package/dist/providers/social/youtube.d.ts +34 -0
  356. package/dist/providers/social/youtube.d.ts.map +1 -0
  357. package/dist/providers/tier-router.d.ts +30 -0
  358. package/dist/providers/tier-router.d.ts.map +1 -0
  359. package/dist/providers/timebox.d.ts +20 -0
  360. package/dist/providers/timebox.d.ts.map +1 -0
  361. package/dist/providers/types.d.ts +344 -0
  362. package/dist/providers/types.d.ts.map +1 -0
  363. package/dist/providers/web/crawl-worker.d.ts +36 -0
  364. package/dist/providers/web/crawl-worker.d.ts.map +1 -0
  365. package/dist/providers/web/crawler.d.ts +101 -0
  366. package/dist/providers/web/crawler.d.ts.map +1 -0
  367. package/dist/providers/web/extract.d.ts +11 -0
  368. package/dist/providers/web/extract.d.ts.map +1 -0
  369. package/dist/providers/web/index.d.ts +24 -0
  370. package/dist/providers/web/index.d.ts.map +1 -0
  371. package/dist/providers/web/policy.d.ts +14 -0
  372. package/dist/providers/web/policy.d.ts.map +1 -0
  373. package/dist/providers/workflows.d.ts +67 -0
  374. package/dist/providers/workflows.d.ts.map +1 -0
  375. package/dist/providers-G3LRHQXX.js +121 -0
  376. package/dist/providers-G3LRHQXX.js.map +1 -0
  377. package/dist/relay/protocol.d.ts +399 -0
  378. package/dist/relay/protocol.d.ts.map +1 -0
  379. package/dist/relay/relay-endpoints.d.ts +16 -0
  380. package/dist/relay/relay-endpoints.d.ts.map +1 -0
  381. package/dist/relay/relay-server.d.ts +124 -0
  382. package/dist/relay/relay-server.d.ts.map +1 -0
  383. package/dist/relay/relay-types.d.ts +12 -0
  384. package/dist/relay/relay-types.d.ts.map +1 -0
  385. package/dist/runtime-factory-BICHDPE7.js +13 -0
  386. package/dist/runtime-factory-BICHDPE7.js.map +1 -0
  387. package/dist/skills/continuity-nudge.d.ts +12 -0
  388. package/dist/skills/continuity-nudge.d.ts.map +1 -0
  389. package/dist/skills/skill-loader.d.ts +20 -0
  390. package/dist/skills/skill-loader.d.ts.map +1 -0
  391. package/dist/skills/skill-nudge.d.ts +18 -0
  392. package/dist/skills/skill-nudge.d.ts.map +1 -0
  393. package/dist/skills/types.d.ts +12 -0
  394. package/dist/skills/types.d.ts.map +1 -0
  395. package/dist/snapshot/ops-snapshot.d.ts +16 -0
  396. package/dist/snapshot/ops-snapshot.d.ts.map +1 -0
  397. package/dist/snapshot/refs.d.ts +23 -0
  398. package/dist/snapshot/refs.d.ts.map +1 -0
  399. package/dist/snapshot/snapshotter.d.ts +27 -0
  400. package/dist/snapshot/snapshotter.d.ts.map +1 -0
  401. package/dist/tools/annotate.d.ts +4 -0
  402. package/dist/tools/annotate.d.ts.map +1 -0
  403. package/dist/tools/canvas.d.ts +4 -0
  404. package/dist/tools/canvas.d.ts.map +1 -0
  405. package/dist/tools/check.d.ts +4 -0
  406. package/dist/tools/check.d.ts.map +1 -0
  407. package/dist/tools/click.d.ts +4 -0
  408. package/dist/tools/click.d.ts.map +1 -0
  409. package/dist/tools/clone_component.d.ts +4 -0
  410. package/dist/tools/clone_component.d.ts.map +1 -0
  411. package/dist/tools/clone_page.d.ts +4 -0
  412. package/dist/tools/clone_page.d.ts.map +1 -0
  413. package/dist/tools/close.d.ts +4 -0
  414. package/dist/tools/close.d.ts.map +1 -0
  415. package/dist/tools/connect.d.ts +4 -0
  416. package/dist/tools/connect.d.ts.map +1 -0
  417. package/dist/tools/console_poll.d.ts +4 -0
  418. package/dist/tools/console_poll.d.ts.map +1 -0
  419. package/dist/tools/cookie_import.d.ts +25 -0
  420. package/dist/tools/cookie_import.d.ts.map +1 -0
  421. package/dist/tools/cookie_list.d.ts +9 -0
  422. package/dist/tools/cookie_list.d.ts.map +1 -0
  423. package/dist/tools/debug_trace_snapshot.d.ts +4 -0
  424. package/dist/tools/debug_trace_snapshot.d.ts.map +1 -0
  425. package/dist/tools/deps.d.ts +28 -0
  426. package/dist/tools/deps.d.ts.map +1 -0
  427. package/dist/tools/disconnect.d.ts +4 -0
  428. package/dist/tools/disconnect.d.ts.map +1 -0
  429. package/dist/tools/dom_get_html.d.ts +4 -0
  430. package/dist/tools/dom_get_html.d.ts.map +1 -0
  431. package/dist/tools/dom_get_text.d.ts +4 -0
  432. package/dist/tools/dom_get_text.d.ts.map +1 -0
  433. package/dist/tools/get_attr.d.ts +4 -0
  434. package/dist/tools/get_attr.d.ts.map +1 -0
  435. package/dist/tools/get_value.d.ts +4 -0
  436. package/dist/tools/get_value.d.ts.map +1 -0
  437. package/dist/tools/goto.d.ts +4 -0
  438. package/dist/tools/goto.d.ts.map +1 -0
  439. package/dist/tools/hover.d.ts +4 -0
  440. package/dist/tools/hover.d.ts.map +1 -0
  441. package/dist/tools/index.d.ts +4 -0
  442. package/dist/tools/index.d.ts.map +1 -0
  443. package/dist/tools/is_checked.d.ts +4 -0
  444. package/dist/tools/is_checked.d.ts.map +1 -0
  445. package/dist/tools/is_enabled.d.ts +4 -0
  446. package/dist/tools/is_enabled.d.ts.map +1 -0
  447. package/dist/tools/is_visible.d.ts +4 -0
  448. package/dist/tools/is_visible.d.ts.map +1 -0
  449. package/dist/tools/launch.d.ts +4 -0
  450. package/dist/tools/launch.d.ts.map +1 -0
  451. package/dist/tools/list.d.ts +4 -0
  452. package/dist/tools/list.d.ts.map +1 -0
  453. package/dist/tools/macro_resolve.d.ts +25 -0
  454. package/dist/tools/macro_resolve.d.ts.map +1 -0
  455. package/dist/tools/network_poll.d.ts +4 -0
  456. package/dist/tools/network_poll.d.ts.map +1 -0
  457. package/dist/tools/page.d.ts +4 -0
  458. package/dist/tools/page.d.ts.map +1 -0
  459. package/dist/tools/perf.d.ts +4 -0
  460. package/dist/tools/perf.d.ts.map +1 -0
  461. package/dist/tools/press.d.ts +4 -0
  462. package/dist/tools/press.d.ts.map +1 -0
  463. package/dist/tools/product_video_run.d.ts +4 -0
  464. package/dist/tools/product_video_run.d.ts.map +1 -0
  465. package/dist/tools/prompting_guide.d.ts +4 -0
  466. package/dist/tools/prompting_guide.d.ts.map +1 -0
  467. package/dist/tools/research_run.d.ts +4 -0
  468. package/dist/tools/research_run.d.ts.map +1 -0
  469. package/dist/tools/response.d.ts +19 -0
  470. package/dist/tools/response.d.ts.map +1 -0
  471. package/dist/tools/run.d.ts +4 -0
  472. package/dist/tools/run.d.ts.map +1 -0
  473. package/dist/tools/screenshot.d.ts +4 -0
  474. package/dist/tools/screenshot.d.ts.map +1 -0
  475. package/dist/tools/scroll.d.ts +4 -0
  476. package/dist/tools/scroll.d.ts.map +1 -0
  477. package/dist/tools/scroll_into_view.d.ts +4 -0
  478. package/dist/tools/scroll_into_view.d.ts.map +1 -0
  479. package/dist/tools/select.d.ts +4 -0
  480. package/dist/tools/select.d.ts.map +1 -0
  481. package/dist/tools/shopping_run.d.ts +4 -0
  482. package/dist/tools/shopping_run.d.ts.map +1 -0
  483. package/dist/tools/skill_list.d.ts +4 -0
  484. package/dist/tools/skill_list.d.ts.map +1 -0
  485. package/dist/tools/skill_load.d.ts +4 -0
  486. package/dist/tools/skill_load.d.ts.map +1 -0
  487. package/dist/tools/snapshot.d.ts +4 -0
  488. package/dist/tools/snapshot.d.ts.map +1 -0
  489. package/dist/tools/status.d.ts +4 -0
  490. package/dist/tools/status.d.ts.map +1 -0
  491. package/dist/tools/target_close.d.ts +4 -0
  492. package/dist/tools/target_close.d.ts.map +1 -0
  493. package/dist/tools/target_new.d.ts +4 -0
  494. package/dist/tools/target_new.d.ts.map +1 -0
  495. package/dist/tools/target_use.d.ts +4 -0
  496. package/dist/tools/target_use.d.ts.map +1 -0
  497. package/dist/tools/targets_list.d.ts +4 -0
  498. package/dist/tools/targets_list.d.ts.map +1 -0
  499. package/dist/tools/type.d.ts +4 -0
  500. package/dist/tools/type.d.ts.map +1 -0
  501. package/dist/tools/uncheck.d.ts +4 -0
  502. package/dist/tools/uncheck.d.ts.map +1 -0
  503. package/dist/tools/wait.d.ts +4 -0
  504. package/dist/tools/wait.d.ts.map +1 -0
  505. package/dist/tools/workflow-runtime.d.ts +3 -0
  506. package/dist/tools/workflow-runtime.d.ts.map +1 -0
  507. package/dist/utils/crypto.d.ts +2 -0
  508. package/dist/utils/crypto.d.ts.map +1 -0
  509. package/dist/utils/endpoint-validation.d.ts +2 -0
  510. package/dist/utils/endpoint-validation.d.ts.map +1 -0
  511. package/dist/utils/fs.d.ts +5 -0
  512. package/dist/utils/fs.d.ts.map +1 -0
  513. package/dist/utils/hub-enabled.d.ts +3 -0
  514. package/dist/utils/hub-enabled.d.ts.map +1 -0
  515. package/extension/canvas.html +636 -0
  516. package/extension/dist/annotate-content.css +15 -6
  517. package/extension/dist/annotate-content.js +119 -9
  518. package/extension/dist/annotation-payload.js +163 -0
  519. package/extension/dist/background.js +158 -22
  520. package/extension/dist/canvas/canvas-runtime.js +1061 -0
  521. package/extension/dist/canvas/model.js +213 -0
  522. package/extension/dist/canvas/viewport-fit.js +67 -0
  523. package/extension/dist/canvas-page.js +1801 -0
  524. package/extension/dist/ops/dom-bridge.js +116 -3
  525. package/extension/dist/ops/ops-runtime.js +1014 -48
  526. package/extension/dist/ops/ops-session-store.js +37 -116
  527. package/extension/dist/ops/parallelism-governor.js +117 -0
  528. package/extension/dist/ops/snapshot-shared.js +21 -5
  529. package/extension/dist/ops/target-session-coordinator.js +157 -0
  530. package/extension/dist/popup.js +155 -31
  531. package/extension/dist/services/CDPRouter.js +70 -5
  532. package/extension/dist/services/ConnectionManager.js +22 -3
  533. package/extension/dist/services/RelayClient.js +9 -0
  534. package/extension/dist/services/TabManager.js +35 -12
  535. package/extension/dist/types.js +2 -0
  536. package/extension/icons/icon128.png +0 -0
  537. package/extension/icons/icon16.png +0 -0
  538. package/extension/icons/icon32.png +0 -0
  539. package/extension/icons/icon48.png +0 -0
  540. package/extension/manifest.json +1 -1
  541. package/extension/popup.html +52 -0
  542. package/package.json +30 -19
  543. package/scripts/native/host.cjs +230 -0
  544. package/scripts/native/install.ps1 +73 -0
  545. package/scripts/native/install.sh +66 -0
  546. package/scripts/native/uninstall.ps1 +25 -0
  547. package/scripts/native/uninstall.sh +26 -0
  548. package/skills/AGENTS.md +20 -8
  549. package/skills/opendevbrowser-best-practices/SKILL.md +248 -74
  550. package/skills/opendevbrowser-best-practices/artifacts/browser-agent-known-issues-matrix.md +44 -0
  551. package/skills/opendevbrowser-best-practices/artifacts/canvas-governance-playbook.md +141 -0
  552. package/skills/opendevbrowser-best-practices/artifacts/command-channel-reference.md +191 -0
  553. package/skills/opendevbrowser-best-practices/artifacts/debug-trace-playbook.md +36 -0
  554. package/skills/opendevbrowser-best-practices/artifacts/fingerprint-tiers.md +36 -0
  555. package/skills/opendevbrowser-best-practices/artifacts/macro-workflows.md +43 -0
  556. package/skills/opendevbrowser-best-practices/artifacts/parity-gates.md +36 -0
  557. package/skills/opendevbrowser-best-practices/artifacts/provider-workflows.md +89 -0
  558. package/skills/opendevbrowser-best-practices/assets/templates/canvas-blocker-checklist.json +70 -0
  559. package/skills/opendevbrowser-best-practices/assets/templates/canvas-feedback-eval.json +73 -0
  560. package/skills/opendevbrowser-best-practices/assets/templates/canvas-generation-plan.v1.json +67 -0
  561. package/skills/opendevbrowser-best-practices/assets/templates/canvas-handshake-example.json +126 -0
  562. package/skills/opendevbrowser-best-practices/assets/templates/cdp-forward-envelope.json +11 -0
  563. package/skills/opendevbrowser-best-practices/assets/templates/mode-flag-matrix.json +56 -0
  564. package/skills/opendevbrowser-best-practices/assets/templates/ops-request-envelope.json +9 -0
  565. package/skills/opendevbrowser-best-practices/assets/templates/robustness-checklist.json +136 -0
  566. package/skills/opendevbrowser-best-practices/assets/templates/surface-audit-checklist.json +28 -0
  567. package/skills/opendevbrowser-best-practices/scripts/odb-workflow.sh +170 -0
  568. package/skills/opendevbrowser-best-practices/scripts/run-robustness-audit.sh +164 -0
  569. package/skills/opendevbrowser-best-practices/scripts/validate-skill-assets.sh +234 -0
  570. package/skills/opendevbrowser-continuity-ledger/SKILL.md +10 -0
  571. package/skills/opendevbrowser-data-extraction/SKILL.md +126 -0
  572. package/skills/opendevbrowser-data-extraction/artifacts/extraction-workflows.md +31 -0
  573. package/skills/opendevbrowser-data-extraction/assets/templates/compliance-checklist.md +7 -0
  574. package/skills/opendevbrowser-data-extraction/assets/templates/extraction-schema.json +17 -0
  575. package/skills/opendevbrowser-data-extraction/assets/templates/pagination-state.json +11 -0
  576. package/skills/opendevbrowser-data-extraction/assets/templates/quality-gates.json +10 -0
  577. package/skills/opendevbrowser-data-extraction/examples/sample-schema.json +19 -0
  578. package/skills/opendevbrowser-data-extraction/scripts/run-extraction-workflow.sh +83 -0
  579. package/skills/opendevbrowser-data-extraction/scripts/validate-skill-assets.sh +49 -0
  580. package/skills/opendevbrowser-form-testing/SKILL.md +143 -0
  581. package/skills/opendevbrowser-form-testing/artifacts/form-workflows.md +37 -0
  582. package/skills/opendevbrowser-form-testing/assets/templates/a11y-assertions.md +7 -0
  583. package/skills/opendevbrowser-form-testing/assets/templates/challenge-decision-tree.json +16 -0
  584. package/skills/opendevbrowser-form-testing/assets/templates/multi-step-state.json +11 -0
  585. package/skills/opendevbrowser-form-testing/assets/templates/validation-matrix.json +24 -0
  586. package/skills/opendevbrowser-form-testing/examples/sample-validation-matrix.json +29 -0
  587. package/skills/opendevbrowser-form-testing/scripts/run-form-workflow.sh +82 -0
  588. package/skills/opendevbrowser-form-testing/scripts/validate-skill-assets.sh +49 -0
  589. package/skills/opendevbrowser-login-automation/SKILL.md +159 -0
  590. package/skills/opendevbrowser-login-automation/artifacts/login-workflows.md +39 -0
  591. package/skills/opendevbrowser-login-automation/assets/templates/auth-signals.json +21 -0
  592. package/skills/opendevbrowser-login-automation/assets/templates/challenge-checkpoint.md +10 -0
  593. package/skills/opendevbrowser-login-automation/assets/templates/login-scenario-matrix.json +26 -0
  594. package/skills/opendevbrowser-login-automation/examples/sample-auth-signals.json +14 -0
  595. package/skills/opendevbrowser-login-automation/scripts/record-auth-signals.sh +18 -0
  596. package/skills/opendevbrowser-login-automation/scripts/run-login-workflow.sh +99 -0
  597. package/skills/opendevbrowser-login-automation/scripts/validate-skill-assets.sh +50 -0
  598. package/skills/opendevbrowser-product-presentation-asset/SKILL.md +98 -0
  599. package/skills/opendevbrowser-product-presentation-asset/artifacts/asset-pack-assembly.md +23 -0
  600. package/skills/opendevbrowser-product-presentation-asset/artifacts/ugc-creative-guide.md +21 -0
  601. package/skills/opendevbrowser-product-presentation-asset/assets/templates/claims-evidence-map.md +5 -0
  602. package/skills/opendevbrowser-product-presentation-asset/assets/templates/copy.md +5 -0
  603. package/skills/opendevbrowser-product-presentation-asset/assets/templates/features.md +4 -0
  604. package/skills/opendevbrowser-product-presentation-asset/assets/templates/manifest.schema.json +14 -0
  605. package/skills/opendevbrowser-product-presentation-asset/assets/templates/shot-list.md +7 -0
  606. package/skills/opendevbrowser-product-presentation-asset/assets/templates/ugc-concepts.md +17 -0
  607. package/skills/opendevbrowser-product-presentation-asset/assets/templates/user-actions.md +7 -0
  608. package/skills/opendevbrowser-product-presentation-asset/assets/templates/video-assembly.md +18 -0
  609. package/skills/opendevbrowser-product-presentation-asset/examples/sample-input.json +6 -0
  610. package/skills/opendevbrowser-product-presentation-asset/examples/sample-manifest.json +18 -0
  611. package/skills/opendevbrowser-product-presentation-asset/scripts/capture-screenshots.sh +9 -0
  612. package/skills/opendevbrowser-product-presentation-asset/scripts/collect-product.sh +14 -0
  613. package/skills/opendevbrowser-product-presentation-asset/scripts/download-images.sh +9 -0
  614. package/skills/opendevbrowser-product-presentation-asset/scripts/render-video-brief.sh +96 -0
  615. package/skills/opendevbrowser-product-presentation-asset/scripts/validate-skill-assets.sh +56 -0
  616. package/skills/opendevbrowser-product-presentation-asset/scripts/write-manifest.sh +43 -0
  617. package/skills/opendevbrowser-research/SKILL.md +73 -0
  618. package/skills/opendevbrowser-research/artifacts/research-workflows.md +29 -0
  619. package/skills/opendevbrowser-research/assets/templates/compact.md +7 -0
  620. package/skills/opendevbrowser-research/assets/templates/context.json +18 -0
  621. package/skills/opendevbrowser-research/assets/templates/report.md +9 -0
  622. package/skills/opendevbrowser-research/examples/sample-input.json +6 -0
  623. package/skills/opendevbrowser-research/examples/sample-output.md +4 -0
  624. package/skills/opendevbrowser-research/scripts/render-output.sh +12 -0
  625. package/skills/opendevbrowser-research/scripts/run-research.sh +23 -0
  626. package/skills/opendevbrowser-research/scripts/validate-skill-assets.sh +48 -0
  627. package/skills/opendevbrowser-research/scripts/write-artifacts.sh +29 -0
  628. package/skills/opendevbrowser-shopping/SKILL.md +118 -0
  629. package/skills/opendevbrowser-shopping/artifacts/deal-hunting-workflows.md +37 -0
  630. package/skills/opendevbrowser-shopping/assets/templates/deal-thresholds.json +8 -0
  631. package/skills/opendevbrowser-shopping/assets/templates/deals-context.json +9 -0
  632. package/skills/opendevbrowser-shopping/assets/templates/deals-table.md +4 -0
  633. package/skills/opendevbrowser-shopping/assets/templates/market-analysis.json +30 -0
  634. package/skills/opendevbrowser-shopping/examples/sample-deals.md +4 -0
  635. package/skills/opendevbrowser-shopping/examples/sample-query.json +5 -0
  636. package/skills/opendevbrowser-shopping/scripts/analyze-market.sh +307 -0
  637. package/skills/opendevbrowser-shopping/scripts/normalize-offers.sh +28 -0
  638. package/skills/opendevbrowser-shopping/scripts/render-deals.sh +13 -0
  639. package/skills/opendevbrowser-shopping/scripts/run-deal-hunt.sh +32 -0
  640. package/skills/opendevbrowser-shopping/scripts/run-shopping.sh +19 -0
  641. package/skills/opendevbrowser-shopping/scripts/validate-skill-assets.sh +53 -0
  642. package/dist/chunk-JVBMT2O5.js +0 -7173
  643. package/dist/chunk-JVBMT2O5.js.map +0 -1
  644. package/skills/data-extraction/SKILL.md +0 -128
  645. package/skills/form-testing/SKILL.md +0 -106
  646. package/skills/login-automation/SKILL.md +0 -108
@@ -0,0 +1,159 @@
1
+ ---
2
+ name: opendevbrowser-login-automation
3
+ description: This skill should be used when the user asks to "automate login", "test authentication", "sign in programmatically", "validate login errors", or "verify session persistence" with OpenDevBrowser.
4
+ version: 2.0.0
5
+ ---
6
+
7
+ # Login Automation Skill
8
+
9
+ Use this skill for deterministic auth testing that handles MFA and anti-bot checkpoints without unsafe bypass patterns.
10
+
11
+ ## Pack Contents
12
+
13
+ - `artifacts/login-workflows.md`
14
+ - `assets/templates/login-scenario-matrix.json`
15
+ - `assets/templates/challenge-checkpoint.md`
16
+ - `assets/templates/auth-signals.json`
17
+ - `scripts/run-login-workflow.sh`
18
+ - `scripts/record-auth-signals.sh`
19
+ - `scripts/validate-skill-assets.sh`
20
+ - Shared robustness matrix: `../opendevbrowser-best-practices/artifacts/browser-agent-known-issues-matrix.md`
21
+
22
+ ## Fast Start
23
+
24
+ 1. Validate pack integrity.
25
+
26
+ ```bash
27
+ ./skills/opendevbrowser-login-automation/scripts/validate-skill-assets.sh
28
+ ```
29
+
30
+ 2. Print a ready workflow.
31
+
32
+ ```bash
33
+ ./skills/opendevbrowser-login-automation/scripts/run-login-workflow.sh password
34
+ ./skills/opendevbrowser-login-automation/scripts/run-login-workflow.sh mfa
35
+ ./skills/opendevbrowser-login-automation/scripts/run-login-workflow.sh challenge-checkpoint
36
+ ```
37
+
38
+ ## Core Rules
39
+
40
+ - Use snapshot refs, not ad-hoc selectors.
41
+ - Run one decision loop at a time: snapshot -> action -> snapshot.
42
+ - Never store credentials in skill files, logs, screenshots, or committed fixtures.
43
+ - Treat anti-bot challenges as checkpoints (manual solve or approved test keys), not bypass targets.
44
+ - Keep a bounded retry budget (max 2 automated retries) and honor `Retry-After` when present.
45
+
46
+ ## Parallel Multitab Alignment
47
+
48
+ - Apply shared concurrency policy from `../opendevbrowser-best-practices/SKILL.md` ("Parallel Operations").
49
+ - Validate login paths across `managed`, `extension`, and `cdpConnect` before parity sign-off.
50
+ - Treat extension headless attempts as expected `unsupported_mode`; do not force unsupported auth runs.
51
+
52
+ ## Robustness Coverage (Known-Issue Matrix)
53
+
54
+ Matrix source: `../opendevbrowser-best-practices/artifacts/browser-agent-known-issues-matrix.md`
55
+
56
+ - `ISSUE-01`: stale refs / DOM churn
57
+ - `ISSUE-02`: challenge or SSO iframe boundaries
58
+ - `ISSUE-03`: popup/new-tab SSO redirects
59
+ - `ISSUE-04`: MFA/session step-up branching
60
+ - `ISSUE-05`: anti-bot challenge loops
61
+ - `ISSUE-06`: 429/backoff discipline
62
+ - `ISSUE-07`: extension readiness on resume
63
+
64
+ ## Challenge-Aware Flow
65
+
66
+ 1. Preflight: goto login page, wait, snapshot actionables.
67
+ 2. Enter identifier and password.
68
+ 3. Submit once.
69
+ 4. Branch by observed state:
70
+ - authenticated shell appears -> success validation
71
+ - MFA prompt appears -> continue MFA branch
72
+ - popup/new-tab SSO appears -> switch target and continue auth branch
73
+ - anti-bot challenge appears -> checkpoint branch
74
+ - invalid credentials or lockout message -> failure branch
75
+
76
+ ```text
77
+ opendevbrowser_goto sessionId="<session-id>" url="https://example.com/login"
78
+ opendevbrowser_wait sessionId="<session-id>" until="networkidle"
79
+ opendevbrowser_snapshot sessionId="<session-id>" format="actionables"
80
+ opendevbrowser_type sessionId="<session-id>" ref="<identifier-ref>" text="<resolved-identifier>"
81
+ opendevbrowser_type sessionId="<session-id>" ref="<password-ref>" text="<resolved-password>"
82
+ opendevbrowser_click sessionId="<session-id>" ref="<submit-ref>"
83
+ opendevbrowser_wait sessionId="<session-id>" until="networkidle"
84
+ opendevbrowser_snapshot sessionId="<session-id>" format="outline"
85
+ ```
86
+
87
+ ## Anti-Bot Checkpoint Pattern
88
+
89
+ Use this when CAPTCHA/turnstile/challenge pages appear.
90
+
91
+ 1. Detect challenge UI from snapshot refs or page text.
92
+ 2. Pause automation and mark checkpoint in run log.
93
+ 3. Complete challenge manually (or with provider-approved test key in non-production).
94
+ 4. Resume from a fresh snapshot and continue auth validation.
95
+
96
+ Signals to monitor:
97
+ - challenge iframe/widget visible
98
+ - error copy like "verify you are human"
99
+ - repeated 403/429 responses on auth endpoints
100
+ - repeated challenge pages after resume (loop condition)
101
+
102
+ Challenge loop guardrail:
103
+ - After 2 challenge checkpoints without success, stop automation and escalate.
104
+ - If `Retry-After` is available, wait at least that duration before any retry.
105
+
106
+ ## MFA Pattern
107
+
108
+ 1. Submit primary credentials.
109
+ 2. Wait for OTP/passkey/TOTP ref visibility.
110
+ 3. Enter second factor.
111
+ 4. Submit and validate authenticated state.
112
+
113
+ ```text
114
+ opendevbrowser_wait sessionId="<session-id>" ref="<mfa-input-ref>" state="visible"
115
+ opendevbrowser_type sessionId="<session-id>" ref="<mfa-input-ref>" text="<resolved-otp>"
116
+ opendevbrowser_click sessionId="<session-id>" ref="<mfa-submit-ref>"
117
+ opendevbrowser_wait sessionId="<session-id>" until="networkidle"
118
+ ```
119
+
120
+ ## Validation Signals
121
+
122
+ Validate at least two independent signals:
123
+
124
+ - URL/route transition to authenticated area.
125
+ - Auth-only element visible (`opendevbrowser_is_visible`).
126
+ - Auth request success from `opendevbrowser_network_poll`.
127
+
128
+ ```text
129
+ opendevbrowser_network_poll sessionId="<session-id>" max=50
130
+ ```
131
+
132
+ ## Session Persistence and Reauth
133
+
134
+ Use persistent profiles for remember-me checks:
135
+
136
+ ```text
137
+ opendevbrowser_launch profile="auth-test" persistProfile=true noExtension=true
138
+ ```
139
+
140
+ Close and relaunch, then confirm one of:
141
+ - still authenticated without credential prompt
142
+ - intentionally forced reauth policy was applied
143
+
144
+ ## Failure Modes
145
+
146
+ - Invalid credentials: assert explicit field/banner errors.
147
+ - Rate limit/lockout: stop retries, apply cooldown, rotate test account.
148
+ - Challenge loop: escalate as anti-bot pressure issue.
149
+ - MFA unavailable for test account: mark incomplete test prerequisite.
150
+
151
+ ## References
152
+
153
+ Use these sources when tuning login automation behavior:
154
+ - Playwright auth guide: https://playwright.dev/docs/auth
155
+ - OWASP Authentication Cheat Sheet: https://cheatsheetseries.owasp.org/cheatsheets/Authentication_Cheat_Sheet.html
156
+ - NIST SP 800-63B (Digital Identity): https://pages.nist.gov/800-63-4/sp800-63b.html
157
+ - Cloudflare Turnstile testing keys: https://developers.cloudflare.com/turnstile/tutorials/testing/
158
+ - reCAPTCHA v2 testing keys: https://developers.google.com/recaptcha/docs/faq
159
+ - hCaptcha test keys: https://docs.hcaptcha.com/
@@ -0,0 +1,39 @@
1
+ # Login Workflows
2
+
3
+ ## Password-only workflow
4
+
5
+ 1. Preflight snapshot
6
+ 2. Type identifier/password
7
+ 3. Submit
8
+ 4. Validate URL + auth-only ref + network status
9
+ 5. Re-snapshot before any follow-up action
10
+
11
+ ## MFA workflow
12
+
13
+ 1. Run password-only steps
14
+ 2. Wait for MFA field
15
+ 3. Submit second factor
16
+ 4. Validate session issuance
17
+
18
+ ## SSO popup/new-tab workflow
19
+
20
+ 1. Trigger SSO action from login page
21
+ 2. Detect target/page change
22
+ 3. Continue auth on active SSO target
23
+ 4. Validate return to original app shell
24
+ 5. Rebind refs from fresh snapshot
25
+
26
+ ## Challenge checkpoint workflow
27
+
28
+ 1. Detect challenge state
29
+ 2. Record checkpoint with timestamp and trigger
30
+ 3. Pause automated actions
31
+ 4. Resume after challenge completion from fresh snapshot
32
+ 5. If challenge repeats twice, stop and escalate as anti-bot pressure
33
+
34
+ ## Lockout recovery workflow
35
+
36
+ 1. Detect lockout or throttling banner
37
+ 2. Stop retry loop
38
+ 3. Record cooldown window/account status and `Retry-After` if present
39
+ 4. Resume with different account or after wait window
@@ -0,0 +1,21 @@
1
+ {
2
+ "session_id": "",
3
+ "url_before": "",
4
+ "url_after": "",
5
+ "auth_element_ref": "",
6
+ "auth_element_visible": false,
7
+ "network": {
8
+ "login_request_seen": false,
9
+ "status_codes": [],
10
+ "retry_after_seconds": 0
11
+ },
12
+ "frames_seen": 0,
13
+ "popup_detected": false,
14
+ "challenge_detected": false,
15
+ "challenge_type": "none",
16
+ "challenge_checkpoint_count": 0,
17
+ "mfa_detected": false,
18
+ "mfa_method": "unknown",
19
+ "issue_ids": [],
20
+ "result": "unknown"
21
+ }
@@ -0,0 +1,10 @@
1
+ # Challenge Checkpoint
2
+
3
+ - Session ID:
4
+ - URL:
5
+ - Timestamp (UTC):
6
+ - Challenge type (turnstile/recaptcha/hcaptcha/other):
7
+ - Trigger signal:
8
+ - Manual action taken:
9
+ - Resume timestamp:
10
+ - Post-resume outcome:
@@ -0,0 +1,26 @@
1
+ {
2
+ "scenario": "",
3
+ "steps": [],
4
+ "issue_ids": [
5
+ "ISSUE-01",
6
+ "ISSUE-02",
7
+ "ISSUE-03",
8
+ "ISSUE-04",
9
+ "ISSUE-05",
10
+ "ISSUE-06",
11
+ "ISSUE-07"
12
+ ],
13
+ "expected_signals": [
14
+ "url_changed",
15
+ "auth_shell_visible",
16
+ "auth_network_success"
17
+ ],
18
+ "failure_signals": [
19
+ "invalid_credentials",
20
+ "anti_bot_challenge",
21
+ "rate_limited",
22
+ "lockout"
23
+ ],
24
+ "max_automated_retries": 2,
25
+ "requires_manual_checkpoint": false
26
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "session_id": "session-123",
3
+ "url_before": "https://example.com/login",
4
+ "url_after": "https://example.com/app",
5
+ "auth_element_ref": "r42",
6
+ "auth_element_visible": true,
7
+ "network": {
8
+ "login_request_seen": true,
9
+ "status_codes": [200]
10
+ },
11
+ "challenge_detected": false,
12
+ "mfa_detected": true,
13
+ "result": "authenticated"
14
+ }
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ if [[ $# -lt 2 ]]; then
5
+ echo "Usage: record-auth-signals.sh <template-json> <output-json>" >&2
6
+ exit 1
7
+ fi
8
+
9
+ template="$1"
10
+ output="$2"
11
+
12
+ if [[ ! -f "$template" ]]; then
13
+ echo "Missing template: $template" >&2
14
+ exit 1
15
+ fi
16
+
17
+ cp "$template" "$output"
18
+ echo "Auth signal template copied to $output"
@@ -0,0 +1,99 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ print_help() {
5
+ cat <<'HELP'
6
+ Login automation workflow router
7
+
8
+ Usage:
9
+ ./skills/opendevbrowser-login-automation/scripts/run-login-workflow.sh <workflow>
10
+
11
+ Workflows:
12
+ password
13
+ mfa
14
+ sso-popup
15
+ challenge-checkpoint
16
+ challenge-loop-guard
17
+ lockout-recovery
18
+ session-persistence
19
+ list
20
+ HELP
21
+ }
22
+
23
+ workflow="${1:-list}"
24
+
25
+ case "$workflow" in
26
+ list)
27
+ print_help
28
+ ;;
29
+ password)
30
+ cat <<'FLOW'
31
+ opendevbrowser_goto sessionId="<session-id>" url="<login-url>"
32
+ opendevbrowser_wait sessionId="<session-id>" until="networkidle"
33
+ opendevbrowser_snapshot sessionId="<session-id>" format="actionables"
34
+ opendevbrowser_type sessionId="<session-id>" ref="<identifier-ref>" text="<identifier>"
35
+ opendevbrowser_type sessionId="<session-id>" ref="<password-ref>" text="<password>"
36
+ opendevbrowser_click sessionId="<session-id>" ref="<submit-ref>"
37
+ opendevbrowser_wait sessionId="<session-id>" until="networkidle"
38
+ opendevbrowser_snapshot sessionId="<session-id>" format="outline"
39
+ opendevbrowser_network_poll sessionId="<session-id>" max=50
40
+ FLOW
41
+ ;;
42
+ mfa)
43
+ cat <<'FLOW'
44
+ # Run password workflow first.
45
+ opendevbrowser_wait sessionId="<session-id>" ref="<mfa-input-ref>" state="visible"
46
+ opendevbrowser_type sessionId="<session-id>" ref="<mfa-input-ref>" text="<otp>"
47
+ opendevbrowser_click sessionId="<session-id>" ref="<mfa-submit-ref>"
48
+ opendevbrowser_wait sessionId="<session-id>" until="networkidle"
49
+ opendevbrowser_snapshot sessionId="<session-id>" format="outline"
50
+ FLOW
51
+ ;;
52
+ sso-popup)
53
+ cat <<'FLOW'
54
+ opendevbrowser_snapshot sessionId="<session-id>" format="actionables"
55
+ opendevbrowser_click sessionId="<session-id>" ref="<sso-provider-ref>"
56
+ # Rebind to popup/new target before continuing auth steps.
57
+ opendevbrowser_targets_list sessionId="<session-id>"
58
+ opendevbrowser_snapshot sessionId="<session-id>" format="actionables"
59
+ FLOW
60
+ ;;
61
+ challenge-checkpoint)
62
+ cat <<'FLOW'
63
+ # Detect challenge state, then pause automated actions.
64
+ opendevbrowser_snapshot sessionId="<session-id>" format="outline"
65
+ # Manual checkpoint required: solve challenge with approved flow/test keys.
66
+ # Resume only after challenge is solved.
67
+ opendevbrowser_snapshot sessionId="<session-id>" format="actionables"
68
+ opendevbrowser_click sessionId="<session-id>" ref="<continue-ref>"
69
+ opendevbrowser_wait sessionId="<session-id>" until="networkidle"
70
+ FLOW
71
+ ;;
72
+ challenge-loop-guard)
73
+ cat <<'FLOW'
74
+ # If challenge reappears twice, stop and escalate.
75
+ opendevbrowser_network_poll sessionId="<session-id>" max=100
76
+ # Honor Retry-After before any retry when present.
77
+ opendevbrowser_snapshot sessionId="<session-id>" format="outline"
78
+ FLOW
79
+ ;;
80
+ lockout-recovery)
81
+ cat <<'FLOW'
82
+ opendevbrowser_snapshot sessionId="<session-id>" format="outline"
83
+ # If lockout/rate-limit banner present: stop retries and cooldown.
84
+ opendevbrowser_network_poll sessionId="<session-id>" max=50
85
+ FLOW
86
+ ;;
87
+ session-persistence)
88
+ cat <<'FLOW'
89
+ opendevbrowser_launch profile="auth-test" persistProfile=true noExtension=true
90
+ # Authenticate once, close, relaunch same profile, then assert auth state.
91
+ opendevbrowser_snapshot sessionId="<session-id>" format="outline"
92
+ FLOW
93
+ ;;
94
+ *)
95
+ echo "Unknown workflow: $workflow" >&2
96
+ print_help
97
+ exit 2
98
+ ;;
99
+ esac
@@ -0,0 +1,50 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
5
+ skill_file="$root/SKILL.md"
6
+
7
+ required=(
8
+ "artifacts/login-workflows.md"
9
+ "assets/templates/login-scenario-matrix.json"
10
+ "assets/templates/challenge-checkpoint.md"
11
+ "assets/templates/auth-signals.json"
12
+ "scripts/run-login-workflow.sh"
13
+ "scripts/record-auth-signals.sh"
14
+ "scripts/validate-skill-assets.sh"
15
+ )
16
+
17
+ status=0
18
+
19
+ for rel in "${required[@]}"; do
20
+ if [[ ! -f "$root/$rel" ]]; then
21
+ echo "Missing required asset: $rel" >&2
22
+ status=1
23
+ fi
24
+ if ! grep -Fq "$rel" "$skill_file"; then
25
+ echo "SKILL.md missing reference: $rel" >&2
26
+ status=1
27
+ fi
28
+ done
29
+
30
+ for rel in scripts/run-login-workflow.sh scripts/record-auth-signals.sh scripts/validate-skill-assets.sh; do
31
+ if [[ -f "$root/$rel" && ! -x "$root/$rel" ]]; then
32
+ echo "Script is not executable: $rel" >&2
33
+ status=1
34
+ fi
35
+ done
36
+
37
+ for rel in assets/templates/login-scenario-matrix.json assets/templates/auth-signals.json; do
38
+ if [[ -f "$root/$rel" ]]; then
39
+ if ! node -e 'const fs=require("fs"); JSON.parse(fs.readFileSync(process.argv[1], "utf8"));' "$root/$rel" >/dev/null 2>&1; then
40
+ echo "Invalid JSON template: $rel" >&2
41
+ status=1
42
+ fi
43
+ fi
44
+ done
45
+
46
+ if [[ $status -ne 0 ]]; then
47
+ exit $status
48
+ fi
49
+
50
+ echo "Login automation skill assets validated."
@@ -0,0 +1,98 @@
1
+ ---
2
+ name: opendevbrowser-product-presentation-asset
3
+ description: Collects product screenshots, images, copy, and metadata into a local folder pack for video workflows.
4
+ version: 2.0.0
5
+ ---
6
+
7
+ # Product Presentation Asset Skill
8
+
9
+ Use this skill to build complete product-video input packs and assembly instructions for UGC-style content production.
10
+
11
+ ## Pack Contents
12
+
13
+ - `artifacts/asset-pack-assembly.md`
14
+ - `artifacts/ugc-creative-guide.md`
15
+ - `assets/templates/manifest.schema.json`
16
+ - `assets/templates/copy.md`
17
+ - `assets/templates/features.md`
18
+ - `assets/templates/video-assembly.md`
19
+ - `assets/templates/user-actions.md`
20
+ - `assets/templates/ugc-concepts.md`
21
+ - `assets/templates/shot-list.md`
22
+ - `assets/templates/claims-evidence-map.md`
23
+ - `scripts/collect-product.sh`
24
+ - `scripts/capture-screenshots.sh`
25
+ - `scripts/download-images.sh`
26
+ - `scripts/write-manifest.sh`
27
+ - `scripts/render-video-brief.sh`
28
+ - `scripts/validate-skill-assets.sh`
29
+ - Shared robustness matrix: `../opendevbrowser-best-practices/artifacts/browser-agent-known-issues-matrix.md`
30
+
31
+ ## Fast Start
32
+
33
+ ```bash
34
+ ./skills/opendevbrowser-product-presentation-asset/scripts/validate-skill-assets.sh
35
+ ./skills/opendevbrowser-product-presentation-asset/scripts/collect-product.sh "https://example.com/product/123"
36
+ ./skills/opendevbrowser-product-presentation-asset/scripts/render-video-brief.sh /path/to/manifest.json /tmp/product-video-brief
37
+ ```
38
+
39
+ ## Final Assets Produced
40
+
41
+ Expected output pack includes:
42
+ - `manifest.json` with canonical product metadata
43
+ - `product.json` and `pricing.json`
44
+ - `images/` for product stills
45
+ - `screenshots/` for page context and UI proof
46
+ - `copy.md` and `features.md`
47
+ - `raw/source-record.json` for auditability
48
+
49
+ The `render-video-brief.sh` helper adds:
50
+ - `video-brief.md`
51
+ - `shot-list.md`
52
+ - `ugc-brief.md`
53
+ - `claims-evidence-map.md`
54
+
55
+ ## What the User Should Do
56
+
57
+ 1. Pick product URL or product name.
58
+ 2. Run collection workflow and confirm output pack path.
59
+ 3. Review generated manifest/copy/features for accuracy.
60
+ 4. Run `render-video-brief.sh` to generate production instructions.
61
+ 5. Hand the brief and assets to editor/creator pipeline.
62
+
63
+ ## Parallel Multitab Alignment
64
+
65
+ - Apply shared concurrency policy from `../opendevbrowser-best-practices/SKILL.md` ("Parallel Operations").
66
+ - Validate asset capture flows across `managed`, `extension`, and `cdpConnect` when browser capture is involved.
67
+ - Keep one session per worker for concurrent product-page captures; avoid target-switch thrash in one session.
68
+
69
+ ## How to Combine the Assets
70
+
71
+ 1. Use `manifest.json` as source of truth.
72
+ 2. Build hooks and claims from `copy.md` + `features.md`.
73
+ 3. Pair each claim with supporting asset (`images` or `screenshots`).
74
+ 4. Sequence assets using `shot-list.md`.
75
+ 5. Validate pricing/availability freshness before publishing.
76
+ 6. Validate every claim appears in `claims-evidence-map.md` before publish.
77
+
78
+ ## Robustness Coverage (Known-Issue Matrix)
79
+
80
+ Matrix source: `../opendevbrowser-best-practices/artifacts/browser-agent-known-issues-matrix.md`
81
+
82
+ - `ISSUE-10`: normalized price/currency fields for claims
83
+ - `ISSUE-11`: anchor discount context for pricing claims
84
+ - `ISSUE-12`: stale price and unsupported-claim prevention via evidence mapping
85
+
86
+ ## UGC Key Concepts
87
+
88
+ - Hook in first 2 seconds with user problem + payoff.
89
+ - Show real product usage context before polished close-ups.
90
+ - Keep claims concrete and verifiable from captured assets.
91
+ - Use one CTA and one primary value proposition per short clip.
92
+ - Preserve authenticity: avoid over-produced voice/style mismatches.
93
+
94
+ ## References
95
+
96
+ - FTC pricing guidance (deceptive pricing): https://www.ecfr.gov/current/title-16/chapter-I/subchapter-B/part-233
97
+ - Schema.org Offer metadata: https://schema.org/Offer
98
+ - NIST unit pricing/value comparison guide: https://www.nist.gov/publications/unit-pricing-guide
@@ -0,0 +1,23 @@
1
+ # Asset Pack Assembly
2
+
3
+ ## Inputs
4
+
5
+ - product URL or product name
6
+ - provider hint (optional)
7
+ - output directory (optional)
8
+
9
+ ## Build sequence
10
+
11
+ 1. Collect base product pack (`collect-product.sh`)
12
+ 2. Ensure screenshots/images exist
13
+ 3. Validate manifest schema fields
14
+ 4. Generate video brief (`render-video-brief.sh`)
15
+ 5. Review claim-to-evidence mapping (`claims-evidence-map.md`)
16
+ 6. Review shot sequence and CTA consistency
17
+
18
+ ## Release checks
19
+
20
+ - pricing timestamp is recent
21
+ - screenshot/image files are present and readable
22
+ - copy claims map to feature evidence
23
+ - every promoted claim is backed by a concrete asset path
@@ -0,0 +1,21 @@
1
+ # UGC Creative Guide
2
+
3
+ ## Creative pillars
4
+
5
+ - Authenticity over polish
6
+ - Problem-first storytelling
7
+ - Demonstrable product proof
8
+
9
+ ## Shot rhythm
10
+
11
+ 1. Hook (problem + promise)
12
+ 2. Product reveal
13
+ 3. Feature demonstration
14
+ 4. Outcome proof
15
+ 5. CTA
16
+
17
+ ## Message constraints
18
+
19
+ - Keep one primary benefit per short
20
+ - Keep language conversational
21
+ - Avoid unsupported superlatives
@@ -0,0 +1,5 @@
1
+ # Claims Evidence Map
2
+
3
+ | Claim | Evidence Asset | Source Field | Verified |
4
+ |---|---|---|---|
5
+ | | | | no |
@@ -0,0 +1,5 @@
1
+ # Product Copy
2
+
3
+ - Headline:
4
+ - Value proposition:
5
+ - CTA:
@@ -0,0 +1,4 @@
1
+ # Product Features
2
+
3
+ - Feature 1
4
+ - Feature 2
@@ -0,0 +1,14 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "ProductAssetManifest",
4
+ "type": "object",
5
+ "required": ["run_id", "created_at", "source_url", "provider", "product", "assets"],
6
+ "properties": {
7
+ "run_id": { "type": "string" },
8
+ "created_at": { "type": "string", "format": "date-time" },
9
+ "source_url": { "type": "string" },
10
+ "provider": { "type": "string" },
11
+ "product": { "type": "object" },
12
+ "assets": { "type": "object" }
13
+ }
14
+ }
@@ -0,0 +1,7 @@
1
+ # Shot List
2
+
3
+ | Scene | Goal | Asset | Voiceover | Duration |
4
+ |---|---|---|---|---:|
5
+ | 1 | Hook | screenshots/screenshot-01.png | | 2s |
6
+ | 2 | Feature proof | images/image-01.jpg | | 4s |
7
+ | 3 | Outcome + CTA | images/image-02.jpg | | 4s |
@@ -0,0 +1,17 @@
1
+ # UGC Concepts
2
+
3
+ ## Hook ideas
4
+
5
+ - "I wish I had this earlier for <problem>."
6
+ - "This fixed my <pain point> in minutes."
7
+
8
+ ## Proof patterns
9
+
10
+ - before/after usage
11
+ - side-by-side comparison
12
+ - time-to-result demonstration
13
+
14
+ ## CTA patterns
15
+
16
+ - direct value CTA
17
+ - urgency tied to verified pricing window
@@ -0,0 +1,7 @@
1
+ # User Action Checklist
2
+
3
+ - [ ] Collected assets from target product
4
+ - [ ] Reviewed manifest fields for correctness
5
+ - [ ] Generated video brief files
6
+ - [ ] Confirmed pricing recency and currency
7
+ - [ ] Approved shot order and CTA