opendevbrowser 0.0.17 → 0.0.19

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 (529) hide show
  1. package/README.md +172 -73
  2. package/dist/annotate/agent-inbox-store.d.ts +58 -0
  3. package/dist/annotate/agent-inbox-store.d.ts.map +1 -0
  4. package/dist/annotate/agent-inbox.d.ts +25 -0
  5. package/dist/annotate/agent-inbox.d.ts.map +1 -0
  6. package/dist/annotate/direct-annotator.d.ts.map +1 -1
  7. package/dist/annotate/timeout-messages.d.ts +4 -0
  8. package/dist/annotate/timeout-messages.d.ts.map +1 -0
  9. package/dist/automation/coordinator.d.ts +55 -0
  10. package/dist/automation/coordinator.d.ts.map +1 -0
  11. package/dist/browser/annotation-manager.d.ts +4 -1
  12. package/dist/browser/annotation-manager.d.ts.map +1 -1
  13. package/dist/browser/browser-manager.d.ts +147 -47
  14. package/dist/browser/browser-manager.d.ts.map +1 -1
  15. package/dist/browser/canvas-client.d.ts +1 -0
  16. package/dist/browser/canvas-client.d.ts.map +1 -1
  17. package/dist/browser/canvas-code-sync-manager.d.ts +9 -1
  18. package/dist/browser/canvas-code-sync-manager.d.ts.map +1 -1
  19. package/dist/browser/canvas-manager.d.ts +29 -1
  20. package/dist/browser/canvas-manager.d.ts.map +1 -1
  21. package/dist/browser/global-challenge-coordinator.d.ts +27 -0
  22. package/dist/browser/global-challenge-coordinator.d.ts.map +1 -0
  23. package/dist/browser/manager-types.d.ts +167 -1
  24. package/dist/browser/manager-types.d.ts.map +1 -1
  25. package/dist/browser/ops-browser-manager.d.ts +103 -3
  26. package/dist/browser/ops-browser-manager.d.ts.map +1 -1
  27. package/dist/browser/ops-client.d.ts +17 -1
  28. package/dist/browser/ops-client.d.ts.map +1 -1
  29. package/dist/browser/playwright-runtime.d.ts +4 -0
  30. package/dist/browser/playwright-runtime.d.ts.map +1 -0
  31. package/dist/browser/review-surface.d.ts +9 -0
  32. package/dist/browser/review-surface.d.ts.map +1 -0
  33. package/dist/browser/screencast-recorder.d.ts +57 -0
  34. package/dist/browser/screencast-recorder.d.ts.map +1 -0
  35. package/dist/browser/session-inspector.d.ts +71 -0
  36. package/dist/browser/session-inspector.d.ts.map +1 -0
  37. package/dist/browser/session-store.d.ts +5 -1
  38. package/dist/browser/session-store.d.ts.map +1 -1
  39. package/dist/browser/system-chrome-cookies.d.ts +46 -0
  40. package/dist/browser/system-chrome-cookies.d.ts.map +1 -0
  41. package/dist/browser/target-manager.d.ts +1 -0
  42. package/dist/browser/target-manager.d.ts.map +1 -1
  43. package/dist/cache/chrome-locator.d.ts.map +1 -1
  44. package/dist/cache/chrome-user-data.d.ts +17 -0
  45. package/dist/cache/chrome-user-data.d.ts.map +1 -0
  46. package/dist/canvas/adapter-plugins/loader.d.ts +13 -0
  47. package/dist/canvas/adapter-plugins/loader.d.ts.map +1 -0
  48. package/dist/canvas/adapter-plugins/manifest.d.ts +146 -0
  49. package/dist/canvas/adapter-plugins/manifest.d.ts.map +1 -0
  50. package/dist/canvas/adapter-plugins/types.d.ts +83 -0
  51. package/dist/canvas/adapter-plugins/types.d.ts.map +1 -0
  52. package/dist/canvas/adapter-plugins/validator.d.ts +10 -0
  53. package/dist/canvas/adapter-plugins/validator.d.ts.map +1 -0
  54. package/dist/canvas/code-sync/apply-tsx.d.ts +3 -1
  55. package/dist/canvas/code-sync/apply-tsx.d.ts.map +1 -1
  56. package/dist/canvas/code-sync/import.d.ts +1 -0
  57. package/dist/canvas/code-sync/import.d.ts.map +1 -1
  58. package/dist/canvas/code-sync/manifest.d.ts +2 -1
  59. package/dist/canvas/code-sync/manifest.d.ts.map +1 -1
  60. package/dist/canvas/code-sync/tsx-adapter.d.ts.map +1 -1
  61. package/dist/canvas/code-sync/types.d.ts +102 -10
  62. package/dist/canvas/code-sync/types.d.ts.map +1 -1
  63. package/dist/canvas/document-store.d.ts +11 -1
  64. package/dist/canvas/document-store.d.ts.map +1 -1
  65. package/dist/canvas/export.d.ts.map +1 -1
  66. package/dist/canvas/framework-adapters/custom-elements-v1.d.ts +3 -0
  67. package/dist/canvas/framework-adapters/custom-elements-v1.d.ts.map +1 -0
  68. package/dist/canvas/framework-adapters/html-static-v1.d.ts +3 -0
  69. package/dist/canvas/framework-adapters/html-static-v1.d.ts.map +1 -0
  70. package/dist/canvas/framework-adapters/markup.d.ts +9 -0
  71. package/dist/canvas/framework-adapters/markup.d.ts.map +1 -0
  72. package/dist/canvas/framework-adapters/react-tsx-v2.d.ts +3 -0
  73. package/dist/canvas/framework-adapters/react-tsx-v2.d.ts.map +1 -0
  74. package/dist/canvas/framework-adapters/registry.d.ts +12 -0
  75. package/dist/canvas/framework-adapters/registry.d.ts.map +1 -0
  76. package/dist/canvas/framework-adapters/svelte-sfc-v1.d.ts +3 -0
  77. package/dist/canvas/framework-adapters/svelte-sfc-v1.d.ts.map +1 -0
  78. package/dist/canvas/framework-adapters/types.d.ts +57 -0
  79. package/dist/canvas/framework-adapters/types.d.ts.map +1 -0
  80. package/dist/canvas/framework-adapters/vue-sfc-v1.d.ts +3 -0
  81. package/dist/canvas/framework-adapters/vue-sfc-v1.d.ts.map +1 -0
  82. package/dist/canvas/kits/catalog.d.ts +5 -0
  83. package/dist/canvas/kits/catalog.d.ts.map +1 -0
  84. package/dist/canvas/library-adapters/react/index.d.ts +3 -0
  85. package/dist/canvas/library-adapters/react/index.d.ts.map +1 -0
  86. package/dist/canvas/library-adapters/registry.d.ts +11 -0
  87. package/dist/canvas/library-adapters/registry.d.ts.map +1 -0
  88. package/dist/canvas/library-adapters/types.d.ts +43 -0
  89. package/dist/canvas/library-adapters/types.d.ts.map +1 -0
  90. package/dist/canvas/repo-store.d.ts +2 -0
  91. package/dist/canvas/repo-store.d.ts.map +1 -1
  92. package/dist/canvas/starters/catalog.d.ts +34 -0
  93. package/dist/canvas/starters/catalog.d.ts.map +1 -0
  94. package/dist/canvas/token-references.d.ts +22 -0
  95. package/dist/canvas/token-references.d.ts.map +1 -0
  96. package/dist/canvas/types.d.ts +345 -6
  97. package/dist/canvas/types.d.ts.map +1 -1
  98. package/dist/challenges/action-loop.d.ts +13 -0
  99. package/dist/challenges/action-loop.d.ts.map +1 -0
  100. package/dist/challenges/capability-matrix.d.ts +3 -0
  101. package/dist/challenges/capability-matrix.d.ts.map +1 -0
  102. package/dist/challenges/evidence-bundle.d.ts +48 -0
  103. package/dist/challenges/evidence-bundle.d.ts.map +1 -0
  104. package/dist/challenges/governed-adapter-gateway.d.ts +4 -0
  105. package/dist/challenges/governed-adapter-gateway.d.ts.map +1 -0
  106. package/dist/challenges/human-yield-gate.d.ts +20 -0
  107. package/dist/challenges/human-yield-gate.d.ts.map +1 -0
  108. package/dist/challenges/index.d.ts +15 -0
  109. package/dist/challenges/index.d.ts.map +1 -0
  110. package/dist/challenges/interpreter.d.ts +3 -0
  111. package/dist/challenges/interpreter.d.ts.map +1 -0
  112. package/dist/challenges/optional-computer-use-bridge.d.ts +9 -0
  113. package/dist/challenges/optional-computer-use-bridge.d.ts.map +1 -0
  114. package/dist/challenges/orchestrator.d.ts +32 -0
  115. package/dist/challenges/orchestrator.d.ts.map +1 -0
  116. package/dist/challenges/outcome-recorder.d.ts +8 -0
  117. package/dist/challenges/outcome-recorder.d.ts.map +1 -0
  118. package/dist/challenges/owned-environment-lane.d.ts +3 -0
  119. package/dist/challenges/owned-environment-lane.d.ts.map +1 -0
  120. package/dist/challenges/policy-gate.d.ts +9 -0
  121. package/dist/challenges/policy-gate.d.ts.map +1 -0
  122. package/dist/challenges/sanctioned-identity-lane.d.ts +3 -0
  123. package/dist/challenges/sanctioned-identity-lane.d.ts.map +1 -0
  124. package/dist/challenges/service-adapter-lane.d.ts +3 -0
  125. package/dist/challenges/service-adapter-lane.d.ts.map +1 -0
  126. package/dist/challenges/strategy-selector.d.ts +10 -0
  127. package/dist/challenges/strategy-selector.d.ts.map +1 -0
  128. package/dist/challenges/types.d.ts +277 -0
  129. package/dist/challenges/types.d.ts.map +1 -0
  130. package/dist/challenges/verification-gate.d.ts +15 -0
  131. package/dist/challenges/verification-gate.d.ts.map +1 -0
  132. package/dist/chunk-5FZQJRBQ.js +15256 -0
  133. package/dist/chunk-5FZQJRBQ.js.map +1 -0
  134. package/dist/chunk-W4IHGDXV.js +33519 -0
  135. package/dist/chunk-W4IHGDXV.js.map +1 -0
  136. package/dist/chunk-YBQECXZX.js +409 -0
  137. package/dist/chunk-YBQECXZX.js.map +1 -0
  138. package/dist/cli/args.d.ts +4 -4
  139. package/dist/cli/args.d.ts.map +1 -1
  140. package/dist/cli/commands/artifacts.d.ts.map +1 -1
  141. package/dist/cli/commands/canvas.d.ts +7 -7
  142. package/dist/cli/commands/canvas.d.ts.map +1 -1
  143. package/dist/cli/commands/daemon.d.ts +7 -0
  144. package/dist/cli/commands/daemon.d.ts.map +1 -1
  145. package/dist/cli/commands/desktop/accessibility-snapshot.d.ts +3 -0
  146. package/dist/cli/commands/desktop/accessibility-snapshot.d.ts.map +1 -0
  147. package/dist/cli/commands/desktop/active-window.d.ts +3 -0
  148. package/dist/cli/commands/desktop/active-window.d.ts.map +1 -0
  149. package/dist/cli/commands/desktop/capture-desktop.d.ts +3 -0
  150. package/dist/cli/commands/desktop/capture-desktop.d.ts.map +1 -0
  151. package/dist/cli/commands/desktop/capture-window.d.ts +3 -0
  152. package/dist/cli/commands/desktop/capture-window.d.ts.map +1 -0
  153. package/dist/cli/commands/desktop/shared.d.ts +19 -0
  154. package/dist/cli/commands/desktop/shared.d.ts.map +1 -0
  155. package/dist/cli/commands/desktop/status.d.ts +3 -0
  156. package/dist/cli/commands/desktop/status.d.ts.map +1 -0
  157. package/dist/cli/commands/desktop/windows.d.ts +3 -0
  158. package/dist/cli/commands/desktop/windows.d.ts.map +1 -0
  159. package/dist/cli/commands/devtools/dialog.d.ts +19 -0
  160. package/dist/cli/commands/devtools/dialog.d.ts.map +1 -0
  161. package/dist/cli/commands/devtools/screencast-start.d.ts +20 -0
  162. package/dist/cli/commands/devtools/screencast-start.d.ts.map +1 -0
  163. package/dist/cli/commands/devtools/screencast-stop.d.ts +17 -0
  164. package/dist/cli/commands/devtools/screencast-stop.d.ts.map +1 -0
  165. package/dist/cli/commands/devtools/screenshot.d.ts +2 -0
  166. package/dist/cli/commands/devtools/screenshot.d.ts.map +1 -1
  167. package/dist/cli/commands/interact/click.d.ts.map +1 -1
  168. package/dist/cli/commands/interact/pointer-down.d.ts +7 -0
  169. package/dist/cli/commands/interact/pointer-down.d.ts.map +1 -0
  170. package/dist/cli/commands/interact/pointer-drag.d.ts +7 -0
  171. package/dist/cli/commands/interact/pointer-drag.d.ts.map +1 -0
  172. package/dist/cli/commands/interact/pointer-move.d.ts +7 -0
  173. package/dist/cli/commands/interact/pointer-move.d.ts.map +1 -0
  174. package/dist/cli/commands/interact/pointer-shared.d.ts +6 -0
  175. package/dist/cli/commands/interact/pointer-shared.d.ts.map +1 -0
  176. package/dist/cli/commands/interact/pointer-up.d.ts +7 -0
  177. package/dist/cli/commands/interact/pointer-up.d.ts.map +1 -0
  178. package/dist/cli/commands/interact/upload.d.ts +18 -0
  179. package/dist/cli/commands/interact/upload.d.ts.map +1 -0
  180. package/dist/cli/commands/macro-resolve.d.ts +2 -0
  181. package/dist/cli/commands/macro-resolve.d.ts.map +1 -1
  182. package/dist/cli/commands/native.d.ts +10 -7
  183. package/dist/cli/commands/native.d.ts.map +1 -1
  184. package/dist/cli/commands/nav/review.d.ts +7 -0
  185. package/dist/cli/commands/nav/review.d.ts.map +1 -0
  186. package/dist/cli/commands/nav/snapshot.d.ts.map +1 -1
  187. package/dist/cli/commands/pages/open.d.ts.map +1 -1
  188. package/dist/cli/commands/product-video.d.ts +2 -0
  189. package/dist/cli/commands/product-video.d.ts.map +1 -1
  190. package/dist/cli/commands/research.d.ts +3 -0
  191. package/dist/cli/commands/research.d.ts.map +1 -1
  192. package/dist/cli/commands/run.d.ts +14 -0
  193. package/dist/cli/commands/run.d.ts.map +1 -1
  194. package/dist/cli/commands/serve.d.ts +1 -26
  195. package/dist/cli/commands/serve.d.ts.map +1 -1
  196. package/dist/cli/commands/session/connect.d.ts.map +1 -1
  197. package/dist/cli/commands/session/disconnect.d.ts.map +1 -1
  198. package/dist/cli/commands/session/inspector.d.ts +21 -0
  199. package/dist/cli/commands/session/inspector.d.ts.map +1 -0
  200. package/dist/cli/commands/session/launch.d.ts.map +1 -1
  201. package/dist/cli/commands/shopping.d.ts +5 -0
  202. package/dist/cli/commands/shopping.d.ts.map +1 -1
  203. package/dist/cli/commands/status.d.ts +2 -14
  204. package/dist/cli/commands/status.d.ts.map +1 -1
  205. package/dist/cli/commands/targets/new.d.ts.map +1 -1
  206. package/dist/cli/daemon-autostart.d.ts +11 -0
  207. package/dist/cli/daemon-autostart.d.ts.map +1 -1
  208. package/dist/cli/daemon-client.d.ts +3 -0
  209. package/dist/cli/daemon-client.d.ts.map +1 -1
  210. package/dist/cli/daemon-commands.d.ts.map +1 -1
  211. package/dist/cli/daemon-state.d.ts +16 -0
  212. package/dist/cli/daemon-state.d.ts.map +1 -1
  213. package/dist/cli/daemon-status.d.ts +7 -2
  214. package/dist/cli/daemon-status.d.ts.map +1 -1
  215. package/dist/cli/daemon.d.ts +1 -0
  216. package/dist/cli/daemon.d.ts.map +1 -1
  217. package/dist/cli/help.d.ts +15 -4
  218. package/dist/cli/help.d.ts.map +1 -1
  219. package/dist/cli/index.js +2476 -1036
  220. package/dist/cli/index.js.map +1 -1
  221. package/dist/cli/install-autostart-output.d.ts +6 -0
  222. package/dist/cli/install-autostart-output.d.ts.map +1 -0
  223. package/dist/cli/install-autostart-reconciliation.d.ts +23 -0
  224. package/dist/cli/install-autostart-reconciliation.d.ts.map +1 -0
  225. package/dist/cli/installers/skills.d.ts +42 -6
  226. package/dist/cli/installers/skills.d.ts.map +1 -1
  227. package/dist/cli/output.d.ts +3 -0
  228. package/dist/cli/output.d.ts.map +1 -1
  229. package/dist/cli/remote-desktop-runtime.d.ts +15 -0
  230. package/dist/cli/remote-desktop-runtime.d.ts.map +1 -0
  231. package/dist/cli/remote-manager.d.ts +24 -2
  232. package/dist/cli/remote-manager.d.ts.map +1 -1
  233. package/dist/cli/transport-timeouts.d.ts +8 -0
  234. package/dist/cli/transport-timeouts.d.ts.map +1 -0
  235. package/dist/cli/utils/http.d.ts +9 -0
  236. package/dist/cli/utils/http.d.ts.map +1 -1
  237. package/dist/cli/utils/parse.d.ts +2 -0
  238. package/dist/cli/utils/parse.d.ts.map +1 -1
  239. package/dist/cli/utils/skills.d.ts +1 -2
  240. package/dist/cli/utils/skills.d.ts.map +1 -1
  241. package/dist/cli/utils/workflow-message.d.ts +2 -0
  242. package/dist/cli/utils/workflow-message.d.ts.map +1 -0
  243. package/dist/config.d.ts +47 -0
  244. package/dist/config.d.ts.map +1 -1
  245. package/dist/core/bootstrap.d.ts.map +1 -1
  246. package/dist/core/index.d.ts +1 -0
  247. package/dist/core/index.d.ts.map +1 -1
  248. package/dist/core/logging.d.ts +3 -1
  249. package/dist/core/logging.d.ts.map +1 -1
  250. package/dist/core/runtime-assemblies.d.ts +22 -0
  251. package/dist/core/runtime-assemblies.d.ts.map +1 -0
  252. package/dist/core/types.d.ts +15 -0
  253. package/dist/core/types.d.ts.map +1 -1
  254. package/dist/desktop/audit.d.ts +37 -0
  255. package/dist/desktop/audit.d.ts.map +1 -0
  256. package/dist/desktop/errors.d.ts +7 -0
  257. package/dist/desktop/errors.d.ts.map +1 -0
  258. package/dist/desktop/index.d.ts +6 -0
  259. package/dist/desktop/index.d.ts.map +1 -0
  260. package/dist/desktop/runtime.d.ts +26 -0
  261. package/dist/desktop/runtime.d.ts.map +1 -0
  262. package/dist/desktop/types.d.ts +76 -0
  263. package/dist/desktop/types.d.ts.map +1 -0
  264. package/dist/extension-extractor.d.ts +6 -0
  265. package/dist/extension-extractor.d.ts.map +1 -1
  266. package/dist/index.d.ts.map +1 -1
  267. package/dist/index.js +1103 -467
  268. package/dist/index.js.map +1 -1
  269. package/dist/integrations/figma/assets.d.ts +13 -0
  270. package/dist/integrations/figma/assets.d.ts.map +1 -0
  271. package/dist/integrations/figma/auth.d.ts +3 -0
  272. package/dist/integrations/figma/auth.d.ts.map +1 -0
  273. package/dist/integrations/figma/client.d.ts +42 -0
  274. package/dist/integrations/figma/client.d.ts.map +1 -0
  275. package/dist/integrations/figma/mappers.d.ts +23 -0
  276. package/dist/integrations/figma/mappers.d.ts.map +1 -0
  277. package/dist/integrations/figma/normalize.d.ts +99 -0
  278. package/dist/integrations/figma/normalize.d.ts.map +1 -0
  279. package/dist/integrations/figma/url.d.ts +17 -0
  280. package/dist/integrations/figma/url.d.ts.map +1 -0
  281. package/dist/integrations/figma/variables.d.ts +21 -0
  282. package/dist/integrations/figma/variables.d.ts.map +1 -0
  283. package/dist/macros/execute-runtime.d.ts +19 -0
  284. package/dist/macros/execute-runtime.d.ts.map +1 -0
  285. package/dist/macros/execute.d.ts +3 -1
  286. package/dist/macros/execute.d.ts.map +1 -1
  287. package/dist/opendevbrowser.d.ts.map +1 -1
  288. package/dist/opendevbrowser.js +1103 -467
  289. package/dist/opendevbrowser.js.map +1 -1
  290. package/dist/providers/blocker.d.ts.map +1 -1
  291. package/dist/providers/browser-fallback.d.ts +30 -0
  292. package/dist/providers/browser-fallback.d.ts.map +1 -0
  293. package/dist/providers/constraint.d.ts +45 -0
  294. package/dist/providers/constraint.d.ts.map +1 -0
  295. package/dist/providers/index.d.ts +11 -2
  296. package/dist/providers/index.d.ts.map +1 -1
  297. package/dist/providers/policy.d.ts.map +1 -1
  298. package/dist/providers/product-video-compiler.d.ts +92 -0
  299. package/dist/providers/product-video-compiler.d.ts.map +1 -0
  300. package/dist/providers/registry.d.ts +37 -1
  301. package/dist/providers/registry.d.ts.map +1 -1
  302. package/dist/providers/renderer.d.ts.map +1 -1
  303. package/dist/providers/research-compiler.d.ts +64 -0
  304. package/dist/providers/research-compiler.d.ts.map +1 -0
  305. package/dist/providers/research-executor.d.ts +27 -0
  306. package/dist/providers/research-executor.d.ts.map +1 -0
  307. package/dist/providers/runtime-bundle.d.ts +26 -0
  308. package/dist/providers/runtime-bundle.d.ts.map +1 -0
  309. package/dist/providers/runtime-factory.d.ts +6 -1
  310. package/dist/providers/runtime-factory.d.ts.map +1 -1
  311. package/dist/providers/runtime-policy.d.ts +24 -0
  312. package/dist/providers/runtime-policy.d.ts.map +1 -0
  313. package/dist/providers/shared/anti-bot-policy.d.ts +3 -2
  314. package/dist/providers/shared/anti-bot-policy.d.ts.map +1 -1
  315. package/dist/providers/shopping/index.d.ts +11 -1
  316. package/dist/providers/shopping/index.d.ts.map +1 -1
  317. package/dist/providers/shopping-compiler.d.ts +51 -0
  318. package/dist/providers/shopping-compiler.d.ts.map +1 -0
  319. package/dist/providers/shopping-executor.d.ts +18 -0
  320. package/dist/providers/shopping-executor.d.ts.map +1 -0
  321. package/dist/providers/shopping-postprocess.d.ts +46 -0
  322. package/dist/providers/shopping-postprocess.d.ts.map +1 -0
  323. package/dist/providers/shopping-workflow.d.ts +33 -0
  324. package/dist/providers/shopping-workflow.d.ts.map +1 -0
  325. package/dist/providers/social/platform.d.ts +2 -1
  326. package/dist/providers/social/platform.d.ts.map +1 -1
  327. package/dist/providers/social/search-quality.d.ts +16 -0
  328. package/dist/providers/social/search-quality.d.ts.map +1 -0
  329. package/dist/providers/social/youtube-resolver.d.ts +2 -1
  330. package/dist/providers/social/youtube-resolver.d.ts.map +1 -1
  331. package/dist/providers/social/youtube.d.ts.map +1 -1
  332. package/dist/providers/types.d.ts +116 -4
  333. package/dist/providers/types.d.ts.map +1 -1
  334. package/dist/providers/web/crawl-worker.d.ts.map +1 -1
  335. package/dist/providers/web/extract.d.ts +16 -0
  336. package/dist/providers/web/extract.d.ts.map +1 -1
  337. package/dist/providers/web/index.d.ts.map +1 -1
  338. package/dist/providers/workflow-contracts.d.ts +53 -0
  339. package/dist/providers/workflow-contracts.d.ts.map +1 -0
  340. package/dist/providers/workflows.d.ts +30 -6
  341. package/dist/providers/workflows.d.ts.map +1 -1
  342. package/dist/{providers-G3LRHQXX.js → providers-G36AM3Z2.js} +2 -2
  343. package/dist/public-surface/generated-manifest.d.ts +1168 -0
  344. package/dist/public-surface/generated-manifest.d.ts.map +1 -0
  345. package/dist/public-surface/source.d.ts +437 -0
  346. package/dist/public-surface/source.d.ts.map +1 -0
  347. package/dist/relay/protocol.d.ts +25 -3
  348. package/dist/relay/protocol.d.ts.map +1 -1
  349. package/dist/relay/relay-endpoints.d.ts +21 -0
  350. package/dist/relay/relay-endpoints.d.ts.map +1 -1
  351. package/dist/relay/relay-server.d.ts +18 -0
  352. package/dist/relay/relay-server.d.ts.map +1 -1
  353. package/dist/skills/bundled-skill-directories.d.ts +8 -0
  354. package/dist/skills/bundled-skill-directories.d.ts.map +1 -0
  355. package/dist/skills/skill-loader.d.ts +9 -1
  356. package/dist/skills/skill-loader.d.ts.map +1 -1
  357. package/dist/skills/skill-loader.js +7 -0
  358. package/dist/skills/skill-nudge.d.ts.map +1 -1
  359. package/dist/skills/types.d.ts +31 -0
  360. package/dist/skills/types.d.ts.map +1 -1
  361. package/dist/snapshot/ops-snapshot.d.ts +1 -1
  362. package/dist/snapshot/ops-snapshot.d.ts.map +1 -1
  363. package/dist/snapshot/refs.d.ts +6 -1
  364. package/dist/snapshot/refs.d.ts.map +1 -1
  365. package/dist/snapshot/snapshotter.d.ts.map +1 -1
  366. package/dist/tools/connect.d.ts.map +1 -1
  367. package/dist/tools/deps.d.ts +4 -0
  368. package/dist/tools/deps.d.ts.map +1 -1
  369. package/dist/tools/desktop-shared.d.ts +6 -0
  370. package/dist/tools/desktop-shared.d.ts.map +1 -0
  371. package/dist/tools/desktop_accessibility_snapshot.d.ts +4 -0
  372. package/dist/tools/desktop_accessibility_snapshot.d.ts.map +1 -0
  373. package/dist/tools/desktop_active_window.d.ts +4 -0
  374. package/dist/tools/desktop_active_window.d.ts.map +1 -0
  375. package/dist/tools/desktop_capture_desktop.d.ts +4 -0
  376. package/dist/tools/desktop_capture_desktop.d.ts.map +1 -0
  377. package/dist/tools/desktop_capture_window.d.ts +4 -0
  378. package/dist/tools/desktop_capture_window.d.ts.map +1 -0
  379. package/dist/tools/desktop_status.d.ts +4 -0
  380. package/dist/tools/desktop_status.d.ts.map +1 -0
  381. package/dist/tools/desktop_windows.d.ts +4 -0
  382. package/dist/tools/desktop_windows.d.ts.map +1 -0
  383. package/dist/tools/dialog.d.ts +4 -0
  384. package/dist/tools/dialog.d.ts.map +1 -0
  385. package/dist/tools/index.d.ts +3 -0
  386. package/dist/tools/index.d.ts.map +1 -1
  387. package/dist/tools/launch.d.ts.map +1 -1
  388. package/dist/tools/macro_resolve.d.ts.map +1 -1
  389. package/dist/tools/pointer_down.d.ts +4 -0
  390. package/dist/tools/pointer_down.d.ts.map +1 -0
  391. package/dist/tools/pointer_drag.d.ts +4 -0
  392. package/dist/tools/pointer_drag.d.ts.map +1 -0
  393. package/dist/tools/pointer_move.d.ts +4 -0
  394. package/dist/tools/pointer_move.d.ts.map +1 -0
  395. package/dist/tools/pointer_up.d.ts +4 -0
  396. package/dist/tools/pointer_up.d.ts.map +1 -0
  397. package/dist/tools/product_video_run.d.ts.map +1 -1
  398. package/dist/tools/prompting_guide.d.ts.map +1 -1
  399. package/dist/tools/research_run.d.ts.map +1 -1
  400. package/dist/tools/review.d.ts +4 -0
  401. package/dist/tools/review.d.ts.map +1 -0
  402. package/dist/tools/screencast_start.d.ts +4 -0
  403. package/dist/tools/screencast_start.d.ts.map +1 -0
  404. package/dist/tools/screencast_stop.d.ts +4 -0
  405. package/dist/tools/screencast_stop.d.ts.map +1 -0
  406. package/dist/tools/screenshot.d.ts.map +1 -1
  407. package/dist/tools/session_inspector.d.ts +4 -0
  408. package/dist/tools/session_inspector.d.ts.map +1 -0
  409. package/dist/tools/shopping_run.d.ts.map +1 -1
  410. package/dist/tools/skill_list.d.ts.map +1 -1
  411. package/dist/tools/skill_load.d.ts.map +1 -1
  412. package/dist/tools/upload.d.ts +4 -0
  413. package/dist/tools/upload.d.ts.map +1 -0
  414. package/dist/tools/workflow-runtime.d.ts +4 -1
  415. package/dist/tools/workflow-runtime.d.ts.map +1 -1
  416. package/dist/utils/package-assets.d.ts +4 -0
  417. package/dist/utils/package-assets.d.ts.map +1 -0
  418. package/extension/canvas.html +379 -9
  419. package/extension/dist/annotate-content.js +62 -32
  420. package/extension/dist/annotation-payload.js +57 -21
  421. package/extension/dist/background.js +406 -61
  422. package/extension/dist/canvas/canvas-runtime.js +481 -52
  423. package/extension/dist/canvas/model.js +129 -1
  424. package/extension/dist/canvas-page.js +1882 -74
  425. package/extension/dist/ops/dom-bridge.js +139 -0
  426. package/extension/dist/ops/ops-runtime.js +2854 -295
  427. package/extension/dist/ops/ops-session-store.js +83 -5
  428. package/extension/dist/ops/snapshot-builder.js +2 -2
  429. package/extension/dist/ops/snapshot-shared.js +2 -2
  430. package/extension/dist/ops/target-session-coordinator.js +5 -3
  431. package/extension/dist/popup.js +50 -15
  432. package/extension/dist/services/CDPRouter.js +1567 -63
  433. package/extension/dist/services/ConnectionManager.js +436 -78
  434. package/extension/dist/services/RelayClient.js +70 -30
  435. package/extension/dist/services/TabManager.js +83 -10
  436. package/extension/dist/services/TargetSessionMap.js +127 -3
  437. package/extension/dist/services/attach-errors.js +20 -0
  438. package/extension/dist/services/cdp-router-commands.js +135 -8
  439. package/extension/dist/services/url-restrictions.js +9 -13
  440. package/extension/manifest.json +2 -2
  441. package/extension/popup.html +7 -6
  442. package/package.json +15 -7
  443. package/skills/AGENTS.md +9 -8
  444. package/skills/opendevbrowser-best-practices/SKILL.md +118 -9
  445. package/skills/opendevbrowser-best-practices/artifacts/browser-agent-known-issues-matrix.md +1 -0
  446. package/skills/opendevbrowser-best-practices/artifacts/command-channel-reference.md +26 -12
  447. package/skills/opendevbrowser-best-practices/artifacts/parity-gates.md +9 -2
  448. package/skills/opendevbrowser-best-practices/artifacts/provider-workflows.md +6 -0
  449. package/skills/opendevbrowser-best-practices/artifacts/skill-runtime-surface-matrix.md +58 -0
  450. package/skills/opendevbrowser-best-practices/assets/templates/skill-runtime-pack-matrix.json +674 -0
  451. package/skills/opendevbrowser-best-practices/assets/templates/surface-audit-checklist.json +9 -4
  452. package/skills/opendevbrowser-best-practices/scripts/odb-workflow.sh +89 -20
  453. package/skills/opendevbrowser-best-practices/scripts/resolve-odb-cli.sh +100 -0
  454. package/skills/opendevbrowser-best-practices/scripts/run-robustness-audit.sh +1 -0
  455. package/skills/opendevbrowser-best-practices/scripts/validate-skill-assets.sh +256 -116
  456. package/skills/opendevbrowser-best-practices/scripts/validator-fixture-cli.sh +208 -0
  457. package/skills/opendevbrowser-continuity-ledger/SKILL.md +14 -1
  458. package/skills/opendevbrowser-continuity-ledger/scripts/validate-skill-assets.sh +61 -0
  459. package/skills/opendevbrowser-data-extraction/SKILL.md +6 -0
  460. package/skills/opendevbrowser-data-extraction/scripts/validate-skill-assets.sh +112 -0
  461. package/skills/opendevbrowser-design-agent/SKILL.md +275 -0
  462. package/skills/opendevbrowser-design-agent/artifacts/app-shell-and-state-wiring.md +84 -0
  463. package/skills/opendevbrowser-design-agent/artifacts/async-search-state-ownership.md +58 -0
  464. package/skills/opendevbrowser-design-agent/artifacts/component-pattern-index.md +130 -0
  465. package/skills/opendevbrowser-design-agent/artifacts/design-contract-playbook.md +157 -0
  466. package/skills/opendevbrowser-design-agent/artifacts/design-release-gate.md +40 -0
  467. package/skills/opendevbrowser-design-agent/artifacts/design-workflows.md +153 -0
  468. package/skills/opendevbrowser-design-agent/artifacts/existing-surface-adaptation.md +56 -0
  469. package/skills/opendevbrowser-design-agent/artifacts/external-pattern-synthesis.md +103 -0
  470. package/skills/opendevbrowser-design-agent/artifacts/frontend-evaluation-rubric.md +61 -0
  471. package/skills/opendevbrowser-design-agent/artifacts/implementation-anti-patterns.md +163 -0
  472. package/skills/opendevbrowser-design-agent/artifacts/isolated-preview-validation.md +68 -0
  473. package/skills/opendevbrowser-design-agent/artifacts/loading-and-feedback-surfaces.md +56 -0
  474. package/skills/opendevbrowser-design-agent/artifacts/opendevbrowser-ui-example-map.md +44 -0
  475. package/skills/opendevbrowser-design-agent/artifacts/performance-audit-playbook.md +70 -0
  476. package/skills/opendevbrowser-design-agent/artifacts/research-harvest-workflow.md +81 -0
  477. package/skills/opendevbrowser-design-agent/artifacts/scroll-reveal-surface-planning.md +64 -0
  478. package/skills/opendevbrowser-design-agent/artifacts/state-ownership-matrix.md +36 -0
  479. package/skills/opendevbrowser-design-agent/artifacts/theming-and-token-ownership.md +43 -0
  480. package/skills/opendevbrowser-design-agent/assets/templates/canvas-generation-plan.design.v1.json +58 -0
  481. package/skills/opendevbrowser-design-agent/assets/templates/design-audit-report.v1.md +34 -0
  482. package/skills/opendevbrowser-design-agent/assets/templates/design-brief.v1.md +40 -0
  483. package/skills/opendevbrowser-design-agent/assets/templates/design-contract.v1.json +226 -0
  484. package/skills/opendevbrowser-design-agent/assets/templates/design-release-gate.v1.json +35 -0
  485. package/skills/opendevbrowser-design-agent/assets/templates/design-review-checklist.json +57 -0
  486. package/skills/opendevbrowser-design-agent/assets/templates/real-surface-design-matrix.json +32 -0
  487. package/skills/opendevbrowser-design-agent/assets/templates/reference-pattern-board.v1.json +31 -0
  488. package/skills/opendevbrowser-design-agent/scripts/design-workflow.sh +171 -0
  489. package/skills/opendevbrowser-design-agent/scripts/extract-canvas-plan.sh +56 -0
  490. package/skills/opendevbrowser-design-agent/scripts/validate-skill-assets.sh +223 -0
  491. package/skills/opendevbrowser-form-testing/SKILL.md +19 -3
  492. package/skills/opendevbrowser-form-testing/artifacts/form-workflows.md +5 -4
  493. package/skills/opendevbrowser-form-testing/assets/templates/challenge-decision-tree.json +2 -0
  494. package/skills/opendevbrowser-form-testing/scripts/validate-skill-assets.sh +109 -0
  495. package/skills/opendevbrowser-login-automation/SKILL.md +21 -3
  496. package/skills/opendevbrowser-login-automation/artifacts/login-workflows.md +5 -4
  497. package/skills/opendevbrowser-login-automation/assets/templates/auth-signals.json +5 -0
  498. package/skills/opendevbrowser-login-automation/assets/templates/login-scenario-matrix.json +3 -2
  499. package/skills/opendevbrowser-login-automation/scripts/run-login-workflow.sh +17 -1
  500. package/skills/opendevbrowser-login-automation/scripts/validate-skill-assets.sh +133 -0
  501. package/skills/opendevbrowser-product-presentation-asset/SKILL.md +23 -11
  502. package/skills/opendevbrowser-product-presentation-asset/artifacts/asset-pack-assembly.md +5 -3
  503. package/skills/opendevbrowser-product-presentation-asset/assets/templates/shot-list.md +2 -0
  504. package/skills/opendevbrowser-product-presentation-asset/assets/templates/video-assembly.md +3 -2
  505. package/skills/opendevbrowser-product-presentation-asset/scripts/capture-screenshots.sh +5 -1
  506. package/skills/opendevbrowser-product-presentation-asset/scripts/collect-product.sh +6 -2
  507. package/skills/opendevbrowser-product-presentation-asset/scripts/download-images.sh +5 -1
  508. package/skills/opendevbrowser-product-presentation-asset/scripts/render-video-brief.sh +20 -7
  509. package/skills/opendevbrowser-product-presentation-asset/scripts/validate-skill-assets.sh +39 -0
  510. package/skills/opendevbrowser-product-presentation-asset/scripts/write-manifest.sh +5 -1
  511. package/skills/opendevbrowser-research/SKILL.md +14 -6
  512. package/skills/opendevbrowser-research/scripts/render-output.sh +5 -1
  513. package/skills/opendevbrowser-research/scripts/run-research.sh +5 -1
  514. package/skills/opendevbrowser-research/scripts/validate-skill-assets.sh +45 -0
  515. package/skills/opendevbrowser-research/scripts/write-artifacts.sh +5 -1
  516. package/skills/opendevbrowser-shopping/SKILL.md +20 -1
  517. package/skills/opendevbrowser-shopping/scripts/normalize-offers.sh +6 -2
  518. package/skills/opendevbrowser-shopping/scripts/run-deal-hunt.sh +5 -1
  519. package/skills/opendevbrowser-shopping/scripts/run-shopping.sh +5 -1
  520. package/skills/opendevbrowser-shopping/scripts/validate-skill-assets.sh +54 -0
  521. package/dist/chunk-5J3IFL3X.js +0 -16706
  522. package/dist/chunk-5J3IFL3X.js.map +0 -1
  523. package/dist/chunk-D633UO34.js +0 -8149
  524. package/dist/chunk-D633UO34.js.map +0 -1
  525. package/dist/chunk-V7KUDHDG.js +0 -276
  526. package/dist/chunk-V7KUDHDG.js.map +0 -1
  527. package/dist/runtime-factory-BICHDPE7.js +0 -13
  528. /package/dist/{providers-G3LRHQXX.js.map → providers-G36AM3Z2.js.map} +0 -0
  529. /package/dist/{runtime-factory-BICHDPE7.js.map → skills/skill-loader.js.map} +0 -0
@@ -0,0 +1,130 @@
1
+ # Component Pattern Index
2
+
3
+ Use this index before inventing a new screen structure from scratch. Pick one dominant pattern family, justify it in the design contract, then adapt it to the repo's product language.
4
+
5
+ ## 1. App Shells And Navigation
6
+
7
+ Use when the page has repeatable navigation, toolbars, inspectors, or multistep depth.
8
+
9
+ - Preferred families:
10
+ - top bar + primary content + optional inspector rail
11
+ - split navigation with list/detail content
12
+ - dense workspace shell with command row, canvas pane, and secondary panels
13
+ - Web guidance:
14
+ - keep route navigation and panel toggles separate
15
+ - treat command bars, breadcrumbs, and tab rows as one system
16
+ - collapse secondary rails deliberately on tablet and mobile
17
+ - Failure signals:
18
+ - toolbar actions compete with global navigation
19
+ - left rail, tabs, and breadcrumbs all claim the same hierarchy
20
+
21
+ ## 2. Search, Filters, And Segmentation
22
+
23
+ Use when the user must narrow or switch views quickly.
24
+
25
+ - Preferred families:
26
+ - search plus token filters
27
+ - segmented control plus summary count
28
+ - stacked refinement rail for dense datasets
29
+ - Web guidance:
30
+ - keep search query, filter state, and sort state addressable in URL params when the view should survive refresh or sharing
31
+ - separate quick toggles from advanced filters
32
+ - Failure signals:
33
+ - filter chips, tabs, and sort dropdown all mutate the same state without a clear owner
34
+
35
+ ## 3. Collections, Cards, And Feeds
36
+
37
+ Use when the UI is primarily about scanning repeated items.
38
+
39
+ - Preferred families:
40
+ - editorial card stacks
41
+ - compact data cards with one clear primary action
42
+ - masonry or asymmetric feature grids only when the content supports it
43
+ - Web guidance:
44
+ - define card anatomy once: media, eyebrow, title, metadata, actions
45
+ - keep empty, loading, and error states visually related to the collection pattern
46
+ - declare the scan unit and stable item identity before adding per-card motion or toolbar complexity
47
+ - choose progressive reveal, lazy containers, or virtualization intentionally when realistic data volume will make the surface heavy
48
+ - Failure signals:
49
+ - each card variant invents its own spacing, radius, or action order
50
+ - card identity or expansion state is index-based and collapses during reordering or filtering
51
+
52
+ ## 4. Forms, Settings, And Editors
53
+
54
+ Use when the interface collects or edits structured input.
55
+
56
+ - Preferred families:
57
+ - grouped settings sections with clear save semantics
58
+ - single-column editor with sticky action bar
59
+ - split preview/editor only when the comparison is essential
60
+ - Web guidance:
61
+ - state whether the flow autosaves, batches, or requires explicit submit
62
+ - keep validation, hint text, and irreversible actions visually distinct
63
+ - Failure signals:
64
+ - field-level save and page-level save coexist without clear precedence
65
+
66
+ ## 5. Dashboards, Tables, And Detail Panes
67
+
68
+ Use when the screen mixes overview metrics with drill-down detail.
69
+
70
+ - Preferred families:
71
+ - summary strip plus focused detail pane
72
+ - table with sticky controls and adjacent record inspector
73
+ - dashboard sections ordered by operator task frequency, not by visual symmetry
74
+ - Web guidance:
75
+ - choose whether the primary scan unit is a row, card, or metric tile
76
+ - keep dense tables readable before adding ornamental styling
77
+ - keep inspectors, previews, and secondary panels lazy when the primary task is scanning or triage
78
+ - Failure signals:
79
+ - cards, charts, and tables all have equal prominence and no scan path
80
+
81
+ ## 6. Overlays, Drawers, Sheets, And Menus
82
+
83
+ Use when work must happen without leaving the current context.
84
+
85
+ - Preferred families:
86
+ - item-owned detail drawer
87
+ - single modal for confirmation or destructive review
88
+ - contextual menu for low-commitment actions
89
+ - Web guidance:
90
+ - use one owner for overlay visibility
91
+ - prefer item-based presentation over multiple booleans
92
+ - define escape, backdrop, and focus-return behavior up front
93
+ - Failure signals:
94
+ - sibling components toggle the same modal independently
95
+ - multiple overlays can stack accidentally
96
+
97
+ ## 7. Empty, Loading, Success, And Error States
98
+
99
+ Treat state surfaces as first-class components, not afterthoughts.
100
+
101
+ - Required questions:
102
+ - what reassures the user while data loads
103
+ - what action is possible from the empty state
104
+ - what recovery path exists from the error state
105
+ - Web guidance:
106
+ - reuse the same layout skeleton as the successful state whenever possible
107
+ - success states should confirm progress without hijacking the next action
108
+
109
+ ## 8. Scroll-Driven Storytelling And Motion
110
+
111
+ Use only when motion improves comprehension or narrative sequencing.
112
+
113
+ - Preferred families:
114
+ - section reveal with normalized progress
115
+ - pinned explainer with explicit stage transitions
116
+ - lightweight parallax reserved for emphasis, not default decoration
117
+ - Web guidance:
118
+ - drive the effect from one progress model, not many competing observers
119
+ - define reduced-motion fallbacks before implementation
120
+ - Failure signals:
121
+ - every section animates differently
122
+ - motion blocks reading or keyboard interaction
123
+
124
+ ## Reference Routine
125
+
126
+ 1. Pick one dominant pattern family.
127
+ 2. Write the choice into the design contract and explain why it fits the task.
128
+ 3. Declare the required states and state ownership before component code.
129
+ 4. Validate the pattern in isolation or in `/canvas` preview before broad rollout.
130
+ 5. Validate the integrated screen on a real browser surface.
@@ -0,0 +1,157 @@
1
+ # Design Contract Playbook
2
+
3
+ The design contract is the single source of truth for frontend decisions in this skill.
4
+
5
+ ## 1. Intent
6
+
7
+ Capture why the design exists.
8
+
9
+ - `audience`: who is this for
10
+ - `task`: what must they accomplish
11
+ - `successCriteria`: how the UI proves it succeeded
12
+ - `trustPosture`: conservative, neutral, bold, editorial, etc.
13
+
14
+ If the task does not have a crisp audience or job-to-be-done, stop and define it before styling anything.
15
+
16
+ ## 2. Design Language
17
+
18
+ Choose one coherent direction.
19
+
20
+ - `direction`: a named visual family
21
+ - `styleAxes`: contrast, density, warmth, shape language, texture, depth, motion
22
+ - `semanticTokenSource`: which shell or provider owns semantic color, spacing, radius, shadow, and motion tokens
23
+ - `approvedLibraries`: allowed component, icon, and styling libraries
24
+
25
+ Do not mix multiple unrelated directions inside one screen.
26
+
27
+ ## 3. Content Model
28
+
29
+ Content is part of the design system, not filler.
30
+
31
+ - define the primary message
32
+ - define the supporting messages
33
+ - require real content when possible
34
+ - list the UI states that must exist
35
+ - define loading, empty, error, and transient feedback behavior
36
+ - avoid placeholder copy unless the task explicitly needs scaffolding
37
+
38
+ ## 4. Async Model
39
+
40
+ State how async work begins, restarts, and stops.
41
+
42
+ - `owner`: which layer owns query, result, and status transitions
43
+ - `loadTrigger`: load-on-enter, restart-on-input, or long-lived workflow
44
+ - `restartTriggers`: query, scope, sort, selection, or route changes
45
+ - `debounceMs`: the delay for user-driven restarts
46
+ - `emptyQueryBehavior`: what happens when the query clears
47
+ - `cancellationPolicy`: how stale work is ignored
48
+ - `urlOwnership`: when query, scope, or sort belongs in the URL
49
+
50
+ If async ownership is unclear, the design contract is incomplete even if the visual direction is strong.
51
+
52
+ ## 5. Navigation Model
53
+
54
+ State how routes, tabs, overlays, and deep links are translated into UI state.
55
+
56
+ - `owner`: which shell or controller owns route resolution
57
+ - `primaryRouteModel`: the canonical route, tab, or view map
58
+ - `deepLinkPolicy`: which params survive refresh, sharing, or external entry
59
+ - `invalidRouteFallback`: what happens when params are missing, stale, or malformed
60
+ - `overlayEntryPoints`: which routes or actions are allowed to open drawers, sheets, or modal review states
61
+
62
+ Do not let buttons, tabs, and row actions invent route strings independently. One navigation owner should translate external entry points into screen state.
63
+
64
+ ## 6. Layout System
65
+
66
+ State the page architecture, not just the component list.
67
+
68
+ - grid type
69
+ - container strategy
70
+ - spacing rhythm
71
+ - alignment rules
72
+ - section sequencing
73
+ - scan unit for dense collections or dashboards
74
+
75
+ ## 7. Typography System
76
+
77
+ Decide typography deliberately.
78
+
79
+ - primary and secondary families
80
+ - scale
81
+ - measure
82
+ - fallback policy
83
+ - loading strategy
84
+
85
+ ## 8. Motion System
86
+
87
+ Motion must help comprehension.
88
+
89
+ - timing and easing
90
+ - where motion is allowed
91
+ - reduced-motion posture
92
+ - whether depth, 3D, or parallax are justified
93
+
94
+ ## 9. Performance Model
95
+
96
+ State the performance posture before interaction regressions appear.
97
+
98
+ - `renderHotspots`: which subtree is most likely to churn
99
+ - `stableIdentityPolicy`: how rows, cards, tabs, or stages keep stable ids
100
+ - `listStrategy`: static list, lazy container, progressive reveal, or virtualization threshold
101
+ - `secondaryPanelPolicy`: whether inspectors, previews, or editors load eagerly or on demand
102
+ - `measurementPlan`: which profiler or browser evidence proves the screen is healthy under realistic data
103
+
104
+ If scan-heavy or motion-heavy screens have no performance model, the design contract is incomplete.
105
+
106
+ ## 10. Responsive System
107
+
108
+ Responsive behavior is an authored outcome.
109
+
110
+ - breakpoints
111
+ - layout changes by breakpoint
112
+ - touch targets
113
+ - overflow rules
114
+ - collapsed navigation or panel behavior
115
+
116
+ ## 11. Accessibility Policy
117
+
118
+ Accessibility must be explicit.
119
+
120
+ - WCAG target
121
+ - keyboard requirements
122
+ - focus visibility rules
123
+ - semantic structure requirements
124
+ - color contrast expectations
125
+
126
+ ## 12. Generation Plan
127
+
128
+ This is the mutation-safe subset used by `/canvas`.
129
+
130
+ Required keys:
131
+
132
+ - `targetOutcome`
133
+ - `visualDirection`
134
+ - `layoutStrategy`
135
+ - `contentStrategy`
136
+ - `componentStrategy`
137
+ - `motionPosture`
138
+ - `responsivePosture`
139
+ - `accessibilityPosture`
140
+ - `validationTargets`
141
+
142
+ Use `scripts/extract-canvas-plan.sh` to derive this from the full contract.
143
+
144
+ ## Review Questions
145
+
146
+ Before implementation, answer:
147
+
148
+ 1. What should the user notice first?
149
+ 2. What should they do second?
150
+ 3. What content is real, and what still needs product input?
151
+ 4. Which layer owns async restarts, query state, and stale-request handling?
152
+ 5. Which layer owns route translation, deep-link recovery, and overlay entry points?
153
+ 6. What loading, empty, error, and transient feedback surfaces are required?
154
+ 7. Where is the canonical theme or token source?
155
+ 8. Which list, grid, or pane is most likely to become render-heavy under realistic data?
156
+ 9. What part of the design is most likely to regress on mobile?
157
+ 10. What evidence will prove the design works on a real browser surface?
@@ -0,0 +1,40 @@
1
+ # Design Release Gate
2
+
3
+ Use this before calling a design task shipped.
4
+
5
+ ## Blocking Checks
6
+
7
+ - The design contract is complete and still matches the implemented screen.
8
+ - A reference pattern board exists when external inspiration shaped the work.
9
+ - Default, empty, loading, success, and error states were checked when relevant.
10
+ - Responsive behavior was validated intentionally.
11
+ - Accessibility posture was reviewed against the contract.
12
+ - Real-browser evidence exists for the primary surface.
13
+ - Cross-surface parity was checked when the acceptance criteria require it.
14
+ - `/canvas` work obeyed the session handshake and saved only after required governance blocks were satisfied.
15
+ - Docs, AGENTS guidance, and skill references were updated in the same pass when the design surface changed.
16
+
17
+ ## Required Artifacts
18
+
19
+ Record the gate in `assets/templates/design-release-gate.v1.json` and keep it aligned with:
20
+
21
+ - `assets/templates/design-review-checklist.json`
22
+ - `assets/templates/real-surface-design-matrix.json`
23
+ - `assets/templates/reference-pattern-board.v1.json` when research harvest was used
24
+
25
+ ## Minimum Shipping Loop
26
+
27
+ 1. Re-read the design contract.
28
+ 2. Compare the shipped UI against the contract and the pattern board.
29
+ 3. Run the real-surface matrix on the required modes.
30
+ 4. Record evidence and blockers in the release-gate JSON.
31
+ 5. Fix gaps.
32
+ 6. Repeat until every required check is `pass` or explicitly `not_applicable` with evidence.
33
+
34
+ ## Do Not Ship If
35
+
36
+ - the direction drifted away from the contract
37
+ - the visual language mixes unrelated patterns
38
+ - feedback/loading states still cause layout reflow or state confusion
39
+ - the design relies on unsupported libraries or hidden runtime assumptions
40
+ - the final answer claims parity or design quality that the browser evidence does not prove
@@ -0,0 +1,153 @@
1
+ # Design Workflows
2
+
3
+ This file turns the design-agent skill into repeatable execution paths.
4
+
5
+ ## Workflow A — Contract-First Frontend Delivery
6
+
7
+ Use when the task starts from a PRD, issue, or user request.
8
+
9
+ 1. Fill `assets/templates/design-brief.v1.md`.
10
+ 2. Translate the brief into `assets/templates/design-contract.v1.json`.
11
+ 3. Check `artifacts/opendevbrowser-ui-example-map.md` for nearby repo patterns worth reusing.
12
+ 4. If a nearby shipped surface exists, review `artifacts/existing-surface-adaptation.md` before changing shells or component anatomy.
13
+ 5. Pick the dominant screen family from `artifacts/component-pattern-index.md`.
14
+ 6. Declare shell and route ownership with `artifacts/app-shell-and-state-wiring.md`.
15
+ 7. Declare state ownership using `artifacts/state-ownership-matrix.md`.
16
+ 8. Declare navigation and deep-link ownership in the contract before route-changing controls are wired.
17
+ 9. Declare async and search ownership with `artifacts/async-search-state-ownership.md`.
18
+ 10. Declare theme and token ownership with `artifacts/theming-and-token-ownership.md`.
19
+ 11. Declare loading, empty/error, and transient feedback behavior with `artifacts/loading-and-feedback-surfaces.md`.
20
+ 12. If the surface is scan-heavy or pane-heavy, declare the performance posture with `artifacts/performance-audit-playbook.md` before implementation.
21
+ 13. If motion depends on scroll or pinned stages, add `artifacts/scroll-reveal-surface-planning.md` to the contract inputs.
22
+ 14. Confirm the contract answers:
23
+ - audience and task
24
+ - primary and secondary message
25
+ - route owner, deep-link policy, and invalid-route fallback
26
+ - async trigger, query ownership, and restart policy
27
+ - layout approach
28
+ - list identity and heavy-surface strategy
29
+ - theme and token source
30
+ - type system
31
+ - motion posture
32
+ - responsive rules
33
+ - accessibility target
34
+ - loading, empty, error, and transient feedback plan
35
+ - validation plan
36
+ 15. Review `artifacts/frontend-evaluation-rubric.md` and `artifacts/implementation-anti-patterns.md`.
37
+ 16. Implement the smallest coherent slice that satisfies the contract.
38
+ 17. Validate in an isolated fixture first, then in a real browser before declaring the work complete.
39
+
40
+ ## Workflow B — Screenshot Or Existing-Page Audit
41
+
42
+ Use when a screenshot, mock, or live page is the starting point.
43
+
44
+ 1. Identify the visible structure:
45
+ - information hierarchy
46
+ - grid or container model
47
+ - spacing rhythm
48
+ - typography scale
49
+ - color, contrast, and token system
50
+ - interaction states
51
+ - loading and transient feedback surfaces
52
+ 2. Convert those observations into the shared design contract.
53
+ 3. Map the screen to one dominant family from `artifacts/component-pattern-index.md`.
54
+ 4. If the repo already ships a related shell or surface, review `artifacts/existing-surface-adaptation.md`.
55
+ 5. Flag gaps explicitly:
56
+ - unknown mobile behavior
57
+ - unknown route, deep-link, or invalid-param fallback behavior
58
+ - unknown query, filter, or sort ownership
59
+ - missing empty/loading/error states
60
+ - layout-shifting placeholders or spinner stacking
61
+ - unstable row or card identity under filtering, sorting, or refresh
62
+ - raw-value token drift across repeated components
63
+ - inaccessible focus treatment
64
+ - inconsistent spacing or type rules
65
+ 6. If search, async work, theming, transient feedback, or scroll-driven motion matter to the task, cross-check:
66
+ - `artifacts/async-search-state-ownership.md`
67
+ - `artifacts/theming-and-token-ownership.md`
68
+ - `artifacts/loading-and-feedback-surfaces.md`
69
+ - `artifacts/scroll-reveal-surface-planning.md`
70
+ 7. Check `artifacts/implementation-anti-patterns.md` for ownership or pattern drift traps.
71
+ 8. Record the audit in `assets/templates/design-audit-report.v1.md`.
72
+ 9. Implement changes only after the contract reflects the intended end state.
73
+
74
+ ## Workflow C — `/canvas` Contract-Governed Iteration
75
+
76
+ Use when the work should flow through the OpenDevBrowser design canvas.
77
+
78
+ 1. Open a canvas session.
79
+ 2. Read the handshake and document context.
80
+ 3. Fill the full design contract.
81
+ 4. Extract the `generationPlan`.
82
+ 5. Send `canvas.plan.set`.
83
+ 6. Mutate with `canvas.document.patch`.
84
+ 7. Poll feedback and refresh preview until the contract and runtime match.
85
+
86
+ Canonical command order:
87
+
88
+ ```bash
89
+ npx opendevbrowser canvas --command canvas.session.open --params '{"requestId":"req_open_01","browserSessionId":"<browser-session-id>","documentId":null,"repoPath":null,"mode":"dual-track"}'
90
+ npx opendevbrowser canvas --command canvas.plan.set --params-file ./tmp/canvas-plan.json
91
+ npx opendevbrowser canvas --command canvas.document.patch --params-file ./tmp/canvas-patch.json
92
+ npx opendevbrowser canvas --command canvas.feedback.poll --params '{"requestId":"req_feedback_01","canvasSessionId":"<canvas-session-id>","documentId":"<document-id>","targetId":"<target-id>","afterCursor":null}'
93
+ npx opendevbrowser canvas --command canvas.preview.render --params '{"requestId":"req_preview_01","canvasSessionId":"<canvas-session-id>","leaseId":"<lease-id>","targetId":"<target-id>","projection":"canvas_html"}'
94
+ ```
95
+
96
+ ## Workflow D — Real-Surface Validation
97
+
98
+ Use when design quality must be demonstrated, not inferred.
99
+
100
+ 1. Validate the final or intermediate UI in a real browser session.
101
+ 2. Validate the same state matrix in an isolated preview or fixture when the component family is still moving.
102
+ 3. Confirm the preview installs deterministic data and the same theme or token dependencies the real surface expects.
103
+ 4. If the interaction is scroll-driven, confirm the live surface still matches `artifacts/scroll-reveal-surface-planning.md`.
104
+ 5. Capture:
105
+ - snapshots for structure
106
+ - screenshots for visual output
107
+ - debug traces when behavior or styling is dynamic
108
+ 6. Confirm:
109
+ - expected layout at mobile, tablet, and desktop widths
110
+ - focus visibility and keyboard reachability
111
+ - loading, error, success, and empty states where relevant
112
+ - search, filter, or sort transitions do not surface stale or duplicated results
113
+ - no console or network regressions caused by the UI change
114
+ 7. If parity matters, repeat across supported surfaces before sign-off.
115
+
116
+ ## Workflow E — Performance Audit
117
+
118
+ Use when the screen is visually correct but interaction quality is poor.
119
+
120
+ 1. Describe the slow interaction, viewport, and data size.
121
+ 2. Capture a baseline with the framework profiler or browser performance tooling.
122
+ 3. Use `artifacts/performance-audit-playbook.md` to classify the problem.
123
+ 4. If scroll progression is part of the issue, verify the single progress owner with `artifacts/scroll-reveal-surface-planning.md`.
124
+ 5. Record evidence and fixes in `assets/templates/design-audit-report.v1.md`.
125
+ 6. Re-measure before declaring the issue fixed.
126
+
127
+ Recommended command sequence:
128
+
129
+ ```bash
130
+ npx opendevbrowser launch --no-extension --start-url https://example.com
131
+ npx opendevbrowser snapshot --session-id <session-id>
132
+ npx opendevbrowser screenshot --session-id <session-id>
133
+ npx opendevbrowser debug-trace-snapshot --session-id <session-id>
134
+ ```
135
+
136
+ ## Workflow F — Ship Audit
137
+
138
+ Use after implementation and before final sign-off.
139
+
140
+ 1. Re-read the design contract.
141
+ 2. Compare the shipped output against the contract and the rubric.
142
+ 3. Re-check shell and route ownership against `artifacts/app-shell-and-state-wiring.md`.
143
+ 4. Re-check whether the work extended the nearest shipped surface appropriately with `artifacts/existing-surface-adaptation.md`.
144
+ 5. Re-check state and overlay ownership against `artifacts/state-ownership-matrix.md`.
145
+ 6. Re-check:
146
+ - `artifacts/async-search-state-ownership.md`
147
+ - `artifacts/theming-and-token-ownership.md`
148
+ - `artifacts/loading-and-feedback-surfaces.md`
149
+ - `artifacts/scroll-reveal-surface-planning.md`
150
+ 7. Re-scan `artifacts/implementation-anti-patterns.md` for any regressions introduced during polishing.
151
+ 8. Re-run the relevant skill validators.
152
+ 9. Update README, CLI docs, architecture docs, AGENTS, and skill docs if any user-visible behavior changed.
153
+ 10. Record blockers explicitly; do not convert uncertainty into a pass.
@@ -0,0 +1,56 @@
1
+ # Existing Surface Adaptation
2
+
3
+ Use this when the repo already has a nearby screen, shell, or component family and the goal is to evolve it instead of inventing a parallel UI language.
4
+
5
+ ## 1. Start With The Nearest Shipped Surface
6
+
7
+ Before drafting a new structure:
8
+
9
+ - read `artifacts/opendevbrowser-ui-example-map.md`
10
+ - identify the closest shipped shell, editor, list/detail, or overlay pattern
11
+ - inspect the existing state owner, route owner, and token owner before changing visuals
12
+
13
+ If the repo already has the right family, extend it. Do not build a second shell that solves the same navigation or ownership problem.
14
+
15
+ ## 2. Read The Surface In This Order
16
+
17
+ 1. shell and route ownership
18
+ 2. state ownership and async ownership
19
+ 3. token and theme ownership
20
+ 4. component anatomy
21
+ 5. loading, empty, success, and error states
22
+ 6. preview or fixture coverage
23
+
24
+ This keeps structural decisions ahead of styling polish.
25
+
26
+ ## 3. Reuse Before Recompose
27
+
28
+ Prefer:
29
+
30
+ - refining existing component anatomy
31
+ - tightening spacing, hierarchy, and state handling
32
+ - widening deterministic preview coverage
33
+ - extracting a shared primitive only when two real surfaces need it
34
+
35
+ Avoid:
36
+
37
+ - forking a near-duplicate shell
38
+ - replacing a working component family with a generic new one
39
+ - moving ownership upward without a concrete cross-surface need
40
+
41
+ ## 4. Review Prompts
42
+
43
+ Before implementation, answer:
44
+
45
+ 1. Which shipped surface is the closest reference?
46
+ 2. What should stay structurally stable?
47
+ 3. Which ownership boundary actually needs to move?
48
+ 4. Which visual or interaction debt is being corrected?
49
+ 5. Which preview or browser proof needs to be updated with the change?
50
+
51
+ ## Failure Signals
52
+
53
+ - a new shell is introduced when an existing one already fits
54
+ - component names and files diverge from the shipped family for cosmetic reasons
55
+ - previews still prove only the old behavior after a real structural change
56
+ - the work claims to preserve the design system while silently bypassing its token or state owners
@@ -0,0 +1,103 @@
1
+ # External Pattern Synthesis
2
+
3
+ This file captures the external patterns that shaped the OpenDevBrowser design-agent skill.
4
+
5
+ ## Official Anthropic Patterns
6
+
7
+ Sources:
8
+
9
+ - Claude Code subagents: https://docs.anthropic.com/en/docs/claude-code/sub-agents
10
+ - Claude Code settings: https://docs.anthropic.com/en/docs/claude-code/settings
11
+
12
+ Patterns carried into this skill:
13
+
14
+ - keep the agent focused on one domain instead of making a general prompt larger
15
+ - be explicit about tool access, scope, and success criteria
16
+ - preload reusable expertise so repeated tasks are faster and more consistent
17
+ - use concrete examples and deterministic workflows instead of vague stylistic advice
18
+
19
+ ## Official Vercel v0 Patterns
20
+
21
+ Source:
22
+
23
+ - v0 prompting guide: https://v0.dev/docs/prompting/text
24
+
25
+ Patterns carried into this skill:
26
+
27
+ - specify stack, layout intent, and UI constraints directly
28
+ - describe structure, state, and interaction, not just mood adjectives
29
+ - break large UI requests into staged prompts and refinements
30
+ - include enough design detail that the system does not invent critical behavior
31
+ - collect concrete visual references before direction lock instead of treating "modern" or "premium" as sufficient input
32
+
33
+ ## Official Lovable Patterns
34
+
35
+ Source:
36
+
37
+ - Lovable prompting best practices: https://docs.lovable.dev/prompting/prompting-best-practices
38
+
39
+ Patterns carried into this skill:
40
+
41
+ - use real content and real workflows whenever possible
42
+ - prompt by component and user flow, not by abstract buzzwords
43
+ - keep iterations narrow and intentional
44
+ - write prompts that explain what should improve and why it matters
45
+ - keep inspiration grounded in screenshots and product references instead of text-only taste claims
46
+
47
+ ## Public Frontend-Designer Agent Patterns
48
+
49
+ Source:
50
+
51
+ - Public claude-agents repository: https://github.com/iannuttall/claude-agents
52
+
53
+ Patterns carried into this skill:
54
+
55
+ - assess the current stack and available assets before proposing UI direction
56
+ - turn observations into a repeatable design schema
57
+ - include an explicit review and feedback loop
58
+ - combine aesthetics, accessibility, and implementation practicality in the same agent
59
+ - split work into analyze, specify, and generate phases so direction-setting and implementation stay distinct
60
+
61
+ ## Dimillian SwiftUI UI Pattern Library
62
+
63
+ Source:
64
+
65
+ - Dimillian Skills repo: https://github.com/Dimillian/Skills/tree/main
66
+ - SwiftUI UI patterns skill: https://github.com/Dimillian/Skills/blob/main/swiftui-ui-patterns/SKILL.md
67
+
68
+ Patterns carried into this skill:
69
+
70
+ - keep a component and screen-pattern index so the agent starts from proven families instead of inventing a structure every time
71
+ - start from the closest existing surface when the repo already ships the right family, then adapt instead of forking a parallel shell
72
+ - declare state ownership before component implementation, especially for navigation, overlays, async data, and editing flows
73
+ - keep route translation and deep-link handling centralized instead of spreading string-based navigation across controls
74
+ - prefer item-driven or enum-driven sheet and overlay routing so modal state stays typed and recoverable
75
+ - define async restart, debounce, and cancellation behavior explicitly when user input can restart work
76
+ - keep search-query ownership narrow and make URL ownership deliberate instead of accidental
77
+ - preserve layout during loading with deterministic placeholder counts instead of spinner-heavy state drift
78
+ - keep one semantic theme or token source so leaf components stay visual consumers instead of token owners
79
+ - use overlays for transient banners or toasts so feedback does not reflow the main layout
80
+ - document app wiring and shell boundaries explicitly so route, overlay, and shared-service ownership stay coherent
81
+ - treat isolated previews and deterministic fixtures as a required stop before full integration
82
+ - keep a reusable performance-audit path with baseline measurement, symptom classification, and evidence-backed fixes
83
+ - give scroll-reveal and pinned-stage UIs one explicit progress owner plus a reduced-motion contract
84
+ - keep scan-heavy screens fast by deciding stable identity, lazy container posture, and progressive reveal before polishing each item
85
+ - include explicit anti-patterns so the skill blocks weak implementation habits instead of only describing ideal outcomes
86
+ - treat previews, examples, and isolated validation as part of frontend engineering, not optional polish
87
+ - document app wiring concerns such as shells, routing depth, overlay ownership, scroll drivers, and performance restraint alongside visual direction
88
+
89
+ ## OpenDevBrowser-Specific Adaptation
90
+
91
+ The external patterns above are not copied verbatim into this pack. They are adapted to OpenDevBrowser's shipped capabilities:
92
+
93
+ - `/canvas` governance handshake and `canvas.plan.set`
94
+ - extension, managed, and CDP-backed validation
95
+ - repo-local docs and AGENTS sync requirements
96
+ - repeated audit/fix loops before sign-off
97
+ - real-browser proof instead of purely textual design claims
98
+ - web-first component families in `artifacts/component-pattern-index.md`
99
+ - explicit ownership decisions in `artifacts/state-ownership-matrix.md`
100
+ - async and query ownership decisions in `artifacts/async-search-state-ownership.md`
101
+ - semantic token ownership in `artifacts/theming-and-token-ownership.md`
102
+ - loading and transient feedback discipline in `artifacts/loading-and-feedback-surfaces.md`
103
+ - failure shields in `artifacts/implementation-anti-patterns.md`