opendevbrowser 0.0.28 → 0.0.29

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 (313) hide show
  1. package/README.md +2 -2
  2. package/dist/accessibility-snapshot-PA6NWNS7.js +39 -0
  3. package/dist/accessibility-snapshot-PA6NWNS7.js.map +1 -0
  4. package/dist/active-window-YNYTIPZN.js +37 -0
  5. package/dist/active-window-YNYTIPZN.js.map +1 -0
  6. package/dist/annotate-STYHXZYJ.js +205 -0
  7. package/dist/annotate-STYHXZYJ.js.map +1 -0
  8. package/dist/artifacts-KJ6RNDO2.js +120 -0
  9. package/dist/artifacts-KJ6RNDO2.js.map +1 -0
  10. package/dist/attr-GHFZZ4SA.js +84 -0
  11. package/dist/attr-GHFZZ4SA.js.map +1 -0
  12. package/dist/browser/ops-client.d.ts +1 -0
  13. package/dist/browser/ops-client.d.ts.map +1 -1
  14. package/dist/canvas-54FBOEGP.js +309 -0
  15. package/dist/canvas-54FBOEGP.js.map +1 -0
  16. package/dist/capture-desktop-SNABC24E.js +38 -0
  17. package/dist/capture-desktop-SNABC24E.js.map +1 -0
  18. package/dist/capture-window-UJSB5AMP.js +40 -0
  19. package/dist/capture-window-UJSB5AMP.js.map +1 -0
  20. package/dist/check-ST5UQ2F5.js +71 -0
  21. package/dist/check-ST5UQ2F5.js.map +1 -0
  22. package/dist/checked-IEMWI5CU.js +71 -0
  23. package/dist/checked-IEMWI5CU.js.map +1 -0
  24. package/dist/chunk-2CG4SW3E.js +64 -0
  25. package/dist/chunk-2CG4SW3E.js.map +1 -0
  26. package/dist/chunk-2SIMIPLY.js +67 -0
  27. package/dist/chunk-2SIMIPLY.js.map +1 -0
  28. package/dist/chunk-37VSRUW4.js +141 -0
  29. package/dist/chunk-37VSRUW4.js.map +1 -0
  30. package/dist/chunk-5SWZDVOW.js +144 -0
  31. package/dist/chunk-5SWZDVOW.js.map +1 -0
  32. package/dist/chunk-6PVZ2ABC.js +429 -0
  33. package/dist/chunk-6PVZ2ABC.js.map +1 -0
  34. package/dist/chunk-7GVOUZMQ.js +64 -0
  35. package/dist/chunk-7GVOUZMQ.js.map +1 -0
  36. package/dist/chunk-7THCPS52.js +84 -0
  37. package/dist/chunk-7THCPS52.js.map +1 -0
  38. package/dist/chunk-ASMHEEKY.js +10 -0
  39. package/dist/chunk-ASMHEEKY.js.map +1 -0
  40. package/dist/chunk-DBF5OKH3.js +111 -0
  41. package/dist/chunk-DBF5OKH3.js.map +1 -0
  42. package/dist/chunk-DW4TX7MU.js +54 -0
  43. package/dist/chunk-DW4TX7MU.js.map +1 -0
  44. package/dist/chunk-IPE7TF2P.js +54 -0
  45. package/dist/chunk-IPE7TF2P.js.map +1 -0
  46. package/dist/chunk-IQTJHXZJ.js +126 -0
  47. package/dist/chunk-IQTJHXZJ.js.map +1 -0
  48. package/dist/chunk-J47N77VG.js +2969 -0
  49. package/dist/chunk-J47N77VG.js.map +1 -0
  50. package/dist/chunk-JZXD6FWR.js +25 -0
  51. package/dist/chunk-JZXD6FWR.js.map +1 -0
  52. package/dist/{chunk-QVWOPIZJ.js → chunk-KDSNXS6N.js} +75 -149
  53. package/dist/chunk-KDSNXS6N.js.map +1 -0
  54. package/dist/chunk-KZ2IXVQT.js +219 -0
  55. package/dist/chunk-KZ2IXVQT.js.map +1 -0
  56. package/dist/chunk-LBPELU7L.js +3649 -0
  57. package/dist/chunk-LBPELU7L.js.map +1 -0
  58. package/dist/chunk-MX3NFLCE.js +940 -0
  59. package/dist/chunk-MX3NFLCE.js.map +1 -0
  60. package/dist/chunk-N44UXKIB.js +26 -0
  61. package/dist/chunk-N44UXKIB.js.map +1 -0
  62. package/dist/chunk-OW5HMYMI.js +19 -0
  63. package/dist/chunk-OW5HMYMI.js.map +1 -0
  64. package/dist/chunk-OYNLAZQU.js +838 -0
  65. package/dist/chunk-OYNLAZQU.js.map +1 -0
  66. package/dist/chunk-PDPJN2OP.js +17 -0
  67. package/dist/chunk-PDPJN2OP.js.map +1 -0
  68. package/dist/chunk-RCZZGGJS.js +226 -0
  69. package/dist/chunk-RCZZGGJS.js.map +1 -0
  70. package/dist/chunk-RJNI3BHT.js +1 -0
  71. package/dist/chunk-RPXWUCQQ.js +112 -0
  72. package/dist/chunk-RPXWUCQQ.js.map +1 -0
  73. package/dist/chunk-S5KZQJJI.js +107 -0
  74. package/dist/chunk-S5KZQJJI.js.map +1 -0
  75. package/dist/{chunk-T3VVHJTK.js → chunk-S6S2UP6U.js} +1074 -1459
  76. package/dist/chunk-S6S2UP6U.js.map +1 -0
  77. package/dist/{chunk-I5ZCOZZV.js → chunk-SXAGSEKZ.js} +1202 -9561
  78. package/dist/chunk-SXAGSEKZ.js.map +1 -0
  79. package/dist/chunk-T4GMCW6Z.js +46 -0
  80. package/dist/chunk-T4GMCW6Z.js.map +1 -0
  81. package/dist/chunk-WHQZBUNY.js +982 -0
  82. package/dist/chunk-WHQZBUNY.js.map +1 -0
  83. package/dist/chunk-WOXBLP7V.js +610 -0
  84. package/dist/chunk-WOXBLP7V.js.map +1 -0
  85. package/dist/cli/commands/inspiredesign.d.ts.map +1 -1
  86. package/dist/cli/commands/macro-resolve.d.ts +4 -1
  87. package/dist/cli/commands/macro-resolve.d.ts.map +1 -1
  88. package/dist/cli/commands/product-video.d.ts.map +1 -1
  89. package/dist/cli/commands/research.d.ts.map +1 -1
  90. package/dist/cli/commands/serve.d.ts.map +1 -1
  91. package/dist/cli/commands/shopping.d.ts.map +1 -1
  92. package/dist/cli/commands/workflow-output.d.ts +2 -0
  93. package/dist/cli/commands/workflow-output.d.ts.map +1 -0
  94. package/dist/cli/daemon-commands.d.ts.map +1 -1
  95. package/dist/cli/daemon.d.ts.map +1 -1
  96. package/dist/cli/index.js +204 -8123
  97. package/dist/cli/index.js.map +1 -1
  98. package/dist/cli/installers/postinstall-skill-sync.js +2 -1
  99. package/dist/cli/installers/postinstall-skill-sync.js.map +1 -1
  100. package/dist/cli/remote-relay.d.ts.map +1 -1
  101. package/dist/click-TENZA3Y6.js +81 -0
  102. package/dist/click-TENZA3Y6.js.map +1 -0
  103. package/dist/clone-component-STH5AR6M.js +82 -0
  104. package/dist/clone-component-STH5AR6M.js.map +1 -0
  105. package/dist/clone-page-BSTWAPAJ.js +69 -0
  106. package/dist/clone-page-BSTWAPAJ.js.map +1 -0
  107. package/dist/close-CEMMAAM7.js +63 -0
  108. package/dist/close-CEMMAAM7.js.map +1 -0
  109. package/dist/close-QCWUNRAI.js +63 -0
  110. package/dist/close-QCWUNRAI.js.map +1 -0
  111. package/dist/connect-J3RVSEZF.js +107 -0
  112. package/dist/connect-J3RVSEZF.js.map +1 -0
  113. package/dist/console-poll-HL7BVIVX.js +76 -0
  114. package/dist/console-poll-HL7BVIVX.js.map +1 -0
  115. package/dist/cookie-import-WMUCIIHN.js +177 -0
  116. package/dist/cookie-import-WMUCIIHN.js.map +1 -0
  117. package/dist/cookie-list-PB2N4RPH.js +117 -0
  118. package/dist/cookie-list-PB2N4RPH.js.map +1 -0
  119. package/dist/daemon-5KSVMGN4.js +194 -0
  120. package/dist/daemon-5KSVMGN4.js.map +1 -0
  121. package/dist/daemon-fingerprint.json +1 -1
  122. package/dist/debug-trace-snapshot-RK7KDXA5.js +136 -0
  123. package/dist/debug-trace-snapshot-RK7KDXA5.js.map +1 -0
  124. package/dist/dialog-P6P4U7XE.js +75 -0
  125. package/dist/dialog-P6P4U7XE.js.map +1 -0
  126. package/dist/disconnect-32F7IDIP.js +58 -0
  127. package/dist/disconnect-32F7IDIP.js.map +1 -0
  128. package/dist/enabled-A6C6ZM2O.js +71 -0
  129. package/dist/enabled-A6C6ZM2O.js.map +1 -0
  130. package/dist/extension-extractor-GKWSFHPN.js +11 -0
  131. package/dist/extension-extractor-GKWSFHPN.js.map +1 -0
  132. package/dist/global-D6WLWBXA.js +56 -0
  133. package/dist/global-D6WLWBXA.js.map +1 -0
  134. package/dist/goto-ULTSABDM.js +98 -0
  135. package/dist/goto-ULTSABDM.js.map +1 -0
  136. package/dist/help-EKKKEDL5.js +491 -0
  137. package/dist/help-EKKKEDL5.js.map +1 -0
  138. package/dist/hover-UF2ZUMTQ.js +71 -0
  139. package/dist/hover-UF2ZUMTQ.js.map +1 -0
  140. package/dist/html-B6TX7GK7.js +84 -0
  141. package/dist/html-B6TX7GK7.js.map +1 -0
  142. package/dist/index.js +68 -34
  143. package/dist/index.js.map +1 -1
  144. package/dist/inspector-6S5FKUZQ.js +62 -0
  145. package/dist/inspector-6S5FKUZQ.js.map +1 -0
  146. package/dist/inspector-audit-ARGEGOS7.js +84 -0
  147. package/dist/inspector-audit-ARGEGOS7.js.map +1 -0
  148. package/dist/inspector-plan-CSG5HZOC.js +69 -0
  149. package/dist/inspector-plan-CSG5HZOC.js.map +1 -0
  150. package/dist/inspiredesign-7VRMMZN4.js +234 -0
  151. package/dist/inspiredesign-7VRMMZN4.js.map +1 -0
  152. package/dist/install-autostart-output-5DOMKCQL.js +41 -0
  153. package/dist/install-autostart-output-5DOMKCQL.js.map +1 -0
  154. package/dist/install-autostart-reconciliation-NHKOFYTD.js +73 -0
  155. package/dist/install-autostart-reconciliation-NHKOFYTD.js.map +1 -0
  156. package/dist/launch-REYCIR3Z.js +225 -0
  157. package/dist/launch-REYCIR3Z.js.map +1 -0
  158. package/dist/list-NPRXRQY2.js +51 -0
  159. package/dist/list-NPRXRQY2.js.map +1 -0
  160. package/dist/list-STYD2ZWA.js +54 -0
  161. package/dist/list-STYD2ZWA.js.map +1 -0
  162. package/dist/local-HXJLUUNT.js +54 -0
  163. package/dist/local-HXJLUUNT.js.map +1 -0
  164. package/dist/macro-resolve-ZIJZ65QI.js +253 -0
  165. package/dist/macro-resolve-ZIJZ65QI.js.map +1 -0
  166. package/dist/macros/execute-runtime.d.ts +3 -1
  167. package/dist/macros/execute-runtime.d.ts.map +1 -1
  168. package/dist/macros/execute.d.ts +2 -0
  169. package/dist/macros/execute.d.ts.map +1 -1
  170. package/dist/native-UPLVQ2SG.js +22 -0
  171. package/dist/native-UPLVQ2SG.js.map +1 -0
  172. package/dist/network-poll-HLDOSC72.js +76 -0
  173. package/dist/network-poll-HLDOSC72.js.map +1 -0
  174. package/dist/new-HXLLN6UT.js +69 -0
  175. package/dist/new-HXLLN6UT.js.map +1 -0
  176. package/dist/onboarding-metadata-7E3KLYSZ.js +27 -0
  177. package/dist/onboarding-metadata-7E3KLYSZ.js.map +1 -0
  178. package/dist/open-KDR25LQZ.js +81 -0
  179. package/dist/open-KDR25LQZ.js.map +1 -0
  180. package/dist/opendevbrowser.js +68 -34
  181. package/dist/opendevbrowser.js.map +1 -1
  182. package/dist/perf-EM6SWFJ6.js +58 -0
  183. package/dist/perf-EM6SWFJ6.js.map +1 -0
  184. package/dist/pointer-down-ZYWRZNCH.js +55 -0
  185. package/dist/pointer-down-ZYWRZNCH.js.map +1 -0
  186. package/dist/pointer-drag-LVEAVJO4.js +54 -0
  187. package/dist/pointer-drag-LVEAVJO4.js.map +1 -0
  188. package/dist/pointer-move-7SRKUS66.js +52 -0
  189. package/dist/pointer-move-7SRKUS66.js.map +1 -0
  190. package/dist/pointer-up-KLDBSK37.js +55 -0
  191. package/dist/pointer-up-KLDBSK37.js.map +1 -0
  192. package/dist/press-UIIXFTD7.js +83 -0
  193. package/dist/press-UIIXFTD7.js.map +1 -0
  194. package/dist/product-video-PYOXJVAI.js +235 -0
  195. package/dist/product-video-PYOXJVAI.js.map +1 -0
  196. package/dist/providers/artifacts.d.ts +0 -2
  197. package/dist/providers/artifacts.d.ts.map +1 -1
  198. package/dist/providers/blocker.d.ts.map +1 -1
  199. package/dist/providers/bounded-map.d.ts +2 -0
  200. package/dist/providers/bounded-map.d.ts.map +1 -0
  201. package/dist/providers/community/index.d.ts.map +1 -1
  202. package/dist/providers/constraint.d.ts.map +1 -1
  203. package/dist/providers/index.d.ts +1 -0
  204. package/dist/providers/index.d.ts.map +1 -1
  205. package/dist/providers/renderer.d.ts.map +1 -1
  206. package/dist/providers/research-compiler.d.ts +1 -1
  207. package/dist/providers/research-compiler.d.ts.map +1 -1
  208. package/dist/providers/research-executor.d.ts.map +1 -1
  209. package/dist/providers/runtime-factory.d.ts.map +1 -1
  210. package/dist/providers/shared/traversal-url.d.ts +3 -0
  211. package/dist/providers/shared/traversal-url.d.ts.map +1 -1
  212. package/dist/providers/shopping/index.d.ts.map +1 -1
  213. package/dist/providers/social/search-quality.d.ts.map +1 -1
  214. package/dist/providers/workflow-handoff.d.ts +4 -0
  215. package/dist/providers/workflow-handoff.d.ts.map +1 -1
  216. package/dist/providers/workflows.d.ts.map +1 -1
  217. package/dist/{providers-QF2RFB4J.js → providers-4YY2BLXG.js} +19 -14
  218. package/dist/providers-4YY2BLXG.js.map +1 -0
  219. package/dist/public-surface/generated-manifest.d.ts +2 -2
  220. package/dist/public-surface/generated-manifest.d.ts.map +1 -1
  221. package/dist/public-surface/source.d.ts +2 -2
  222. package/dist/public-surface/source.d.ts.map +1 -1
  223. package/dist/relay/protocol.d.ts +3 -1
  224. package/dist/relay/protocol.d.ts.map +1 -1
  225. package/dist/relay/relay-server.d.ts +6 -0
  226. package/dist/relay/relay-server.d.ts.map +1 -1
  227. package/dist/research-CKXMJ2DK.js +295 -0
  228. package/dist/research-CKXMJ2DK.js.map +1 -0
  229. package/dist/review-7HWJPZOD.js +48 -0
  230. package/dist/review-7HWJPZOD.js.map +1 -0
  231. package/dist/review-desktop-2IBJHFB5.js +54 -0
  232. package/dist/review-desktop-2IBJHFB5.js.map +1 -0
  233. package/dist/rpc-3HGIEJUO.js +159 -0
  234. package/dist/rpc-3HGIEJUO.js.map +1 -0
  235. package/dist/run-ADRYI3MS.js +180 -0
  236. package/dist/run-ADRYI3MS.js.map +1 -0
  237. package/dist/screencast-start-DTLUHD5H.js +67 -0
  238. package/dist/screencast-start-DTLUHD5H.js.map +1 -0
  239. package/dist/screencast-stop-54C5LRSS.js +59 -0
  240. package/dist/screencast-stop-54C5LRSS.js.map +1 -0
  241. package/dist/screenshot-HOAKR7P7.js +68 -0
  242. package/dist/screenshot-HOAKR7P7.js.map +1 -0
  243. package/dist/scroll-IAOO5COY.js +84 -0
  244. package/dist/scroll-IAOO5COY.js.map +1 -0
  245. package/dist/scroll-into-view-RKWSLAPH.js +71 -0
  246. package/dist/scroll-into-view-RKWSLAPH.js.map +1 -0
  247. package/dist/select-IGD3T6X4.js +86 -0
  248. package/dist/select-IGD3T6X4.js.map +1 -0
  249. package/dist/serve-7X4INUCU.js +498 -0
  250. package/dist/serve-7X4INUCU.js.map +1 -0
  251. package/dist/shopping-FC6DRW76.js +273 -0
  252. package/dist/shopping-FC6DRW76.js.map +1 -0
  253. package/dist/skill-lifecycle-5UAZGKSN.js +89 -0
  254. package/dist/skill-lifecycle-5UAZGKSN.js.map +1 -0
  255. package/dist/skills-NSXDX6YM.js +26 -0
  256. package/dist/skills-NSXDX6YM.js.map +1 -0
  257. package/dist/snapshot-X22GG324.js +113 -0
  258. package/dist/snapshot-X22GG324.js.map +1 -0
  259. package/dist/status-SP55LMNW.js +132 -0
  260. package/dist/status-SP55LMNW.js.map +1 -0
  261. package/dist/status-VH2WXIDG.js +35 -0
  262. package/dist/status-VH2WXIDG.js.map +1 -0
  263. package/dist/status-capabilities-YBERLRRA.js +57 -0
  264. package/dist/status-capabilities-YBERLRRA.js.map +1 -0
  265. package/dist/text-6TB5WNLI.js +84 -0
  266. package/dist/text-6TB5WNLI.js.map +1 -0
  267. package/dist/tools/macro_resolve.d.ts.map +1 -1
  268. package/dist/type-3UI3TQH3.js +94 -0
  269. package/dist/type-3UI3TQH3.js.map +1 -0
  270. package/dist/uncheck-5L3D2D4U.js +71 -0
  271. package/dist/uncheck-5L3D2D4U.js.map +1 -0
  272. package/dist/uninstall-KYKGJAX7.js +91 -0
  273. package/dist/uninstall-KYKGJAX7.js.map +1 -0
  274. package/dist/update-SMXPYGXS.js +305 -0
  275. package/dist/update-SMXPYGXS.js.map +1 -0
  276. package/dist/update-skill-modes-BVX7IVMW.js +38 -0
  277. package/dist/update-skill-modes-BVX7IVMW.js.map +1 -0
  278. package/dist/upload-YG4J2EMI.js +56 -0
  279. package/dist/upload-YG4J2EMI.js.map +1 -0
  280. package/dist/use-V3LGFP3K.js +63 -0
  281. package/dist/use-V3LGFP3K.js.map +1 -0
  282. package/dist/value-3247D57X.js +71 -0
  283. package/dist/value-3247D57X.js.map +1 -0
  284. package/dist/visible-A7HEV36U.js +71 -0
  285. package/dist/visible-A7HEV36U.js.map +1 -0
  286. package/dist/wait-UZPP4Y4R.js +109 -0
  287. package/dist/wait-UZPP4Y4R.js.map +1 -0
  288. package/dist/windows-76TR3AIP.js +37 -0
  289. package/dist/windows-76TR3AIP.js.map +1 -0
  290. package/extension/dist/background.js +99 -22
  291. package/extension/dist/ops/ops-runtime.js +85 -7
  292. package/extension/dist/ops/ops-session-store.js +3 -0
  293. package/extension/dist/ops/target-session-coordinator.js +3 -0
  294. package/extension/dist/services/CDPRouter.js +9 -0
  295. package/extension/manifest.json +1 -1
  296. package/package.json +1 -1
  297. package/skills/opendevbrowser-best-practices/SKILL.md +8 -6
  298. package/skills/opendevbrowser-best-practices/artifacts/skill-runtime-surface-matrix.md +1 -1
  299. package/skills/opendevbrowser-best-practices/scripts/odb-workflow.sh +3 -2
  300. package/skills/opendevbrowser-best-practices/scripts/validator-fixture-cli.sh +39 -2
  301. package/skills/opendevbrowser-research/SKILL.md +64 -12
  302. package/skills/opendevbrowser-research/artifacts/research-workflows.md +56 -19
  303. package/skills/opendevbrowser-research/assets/templates/compact.md +31 -5
  304. package/skills/opendevbrowser-research/assets/templates/context.json +52 -1
  305. package/skills/opendevbrowser-research/assets/templates/report.md +57 -4
  306. package/skills/opendevbrowser-research/examples/sample-input.json +1 -1
  307. package/skills/opendevbrowser-research/examples/sample-output.md +27 -2
  308. package/skills/opendevbrowser-research/scripts/run-research.sh +2 -6
  309. package/skills/opendevbrowser-research/scripts/validate-skill-assets.sh +115 -1
  310. package/dist/chunk-I5ZCOZZV.js.map +0 -1
  311. package/dist/chunk-QVWOPIZJ.js.map +0 -1
  312. package/dist/chunk-T3VVHJTK.js.map +0 -1
  313. /package/dist/{providers-QF2RFB4J.js.map → chunk-RJNI3BHT.js.map} +0 -0
@@ -0,0 +1,253 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ parseNumberFlag
4
+ } from "./chunk-RPXWUCQQ.js";
5
+ import {
6
+ DEFAULT_WORKFLOW_TRANSPORT_TIMEOUT_MS
7
+ } from "./chunk-OW5HMYMI.js";
8
+ import {
9
+ callDaemon
10
+ } from "./chunk-OYNLAZQU.js";
11
+ import "./chunk-LBPELU7L.js";
12
+ import "./chunk-SXAGSEKZ.js";
13
+ import "./chunk-MX3NFLCE.js";
14
+ import "./chunk-ASMHEEKY.js";
15
+ import {
16
+ buildNextStepMessage,
17
+ readFollowthroughSummary,
18
+ readWorkflowGuidanceNextStep
19
+ } from "./chunk-37VSRUW4.js";
20
+ import {
21
+ createUsageError
22
+ } from "./chunk-IPE7TF2P.js";
23
+ import "./chunk-STGGGVYT.js";
24
+ import "./chunk-3ILXPKSJ.js";
25
+ import "./chunk-TBUCZX4A.js";
26
+ import "./chunk-Y2KL55OG.js";
27
+ import "./chunk-5SWZDVOW.js";
28
+ import {
29
+ isChallengeAutomationMode
30
+ } from "./chunk-S6S2UP6U.js";
31
+ import "./chunk-S5KZQJJI.js";
32
+ import "./chunk-KZ2IXVQT.js";
33
+ import "./chunk-WHQZBUNY.js";
34
+ import "./chunk-FUSXMW3G.js";
35
+
36
+ // src/cli/commands/macro-resolve.ts
37
+ var MACRO_TRANSPORT_TIMEOUT_BUFFER_MS = 6e4;
38
+ var BROWSER_MODE_VALUES = /* @__PURE__ */ new Set(["auto", "extension", "managed"]);
39
+ var COOKIE_POLICY_VALUES = /* @__PURE__ */ new Set(["off", "auto", "required"]);
40
+ var deriveMacroTransportTimeoutMs = (timeoutMs) => {
41
+ return Math.max(
42
+ DEFAULT_WORKFLOW_TRANSPORT_TIMEOUT_MS,
43
+ timeoutMs + MACRO_TRANSPORT_TIMEOUT_BUFFER_MS
44
+ );
45
+ };
46
+ var requireValue = (value, flag) => {
47
+ if (!value) {
48
+ throw createUsageError(`Missing value for ${flag}`);
49
+ }
50
+ return value;
51
+ };
52
+ var parseBooleanFlag = (value, flag) => {
53
+ if (value === "true") return true;
54
+ if (value === "false") return false;
55
+ throw createUsageError(`Invalid ${flag}: ${value}`);
56
+ };
57
+ var parseOptionalBooleanFlag = (rawArgs, index, flag) => {
58
+ const next = rawArgs[index + 1];
59
+ if (typeof next !== "string" || next.startsWith("--")) {
60
+ return { value: true, nextIndex: index };
61
+ }
62
+ return {
63
+ value: parseBooleanFlag(next, flag),
64
+ nextIndex: index + 1
65
+ };
66
+ };
67
+ var splitEqualsFlag = (arg, candidates) => {
68
+ const flag = candidates.find((candidate) => arg.startsWith(`${candidate}=`));
69
+ if (!flag) {
70
+ throw createUsageError(`Unknown option: ${arg}`);
71
+ }
72
+ return {
73
+ flag,
74
+ value: requireValue(arg.slice(flag.length + 1), flag)
75
+ };
76
+ };
77
+ var asRecord = (value) => {
78
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
79
+ return null;
80
+ }
81
+ return value;
82
+ };
83
+ var hasExecutionBlocker = (result) => {
84
+ const execution = asRecord(asRecord(result)?.execution);
85
+ const meta = asRecord(execution?.meta);
86
+ return asRecord(meta?.blocker) !== null;
87
+ };
88
+ var buildMacroResolveMessage = (execute, result) => {
89
+ const summary = readFollowthroughSummary(result);
90
+ const nextStep = readWorkflowGuidanceNextStep(result);
91
+ if (summary) {
92
+ return buildNextStepMessage(summary, nextStep);
93
+ }
94
+ if (!execute) {
95
+ return "Macro resolved.";
96
+ }
97
+ if (hasExecutionBlocker(result)) {
98
+ return "Macro resolved, but execution is blocked and needs follow-up.";
99
+ }
100
+ return "Macro resolved and executed.";
101
+ };
102
+ var parseMacroResolveArgs = (rawArgs) => {
103
+ const parsed = {};
104
+ for (let index = 0; index < rawArgs.length; index += 1) {
105
+ const arg = rawArgs[index];
106
+ if (arg === "--expression") {
107
+ parsed.expression = requireValue(rawArgs[index + 1], "--expression");
108
+ index += 1;
109
+ continue;
110
+ }
111
+ if (arg?.startsWith("--expression=")) {
112
+ parsed.expression = requireValue(arg.split("=", 2)[1], "--expression");
113
+ continue;
114
+ }
115
+ if (arg === "--default-provider") {
116
+ parsed.defaultProvider = requireValue(rawArgs[index + 1], "--default-provider");
117
+ index += 1;
118
+ continue;
119
+ }
120
+ if (arg?.startsWith("--default-provider=")) {
121
+ parsed.defaultProvider = requireValue(arg.split("=", 2)[1], "--default-provider");
122
+ continue;
123
+ }
124
+ if (arg === "--include-catalog") {
125
+ parsed.includeCatalog = true;
126
+ continue;
127
+ }
128
+ if (arg === "--execute") {
129
+ parsed.execute = true;
130
+ continue;
131
+ }
132
+ if (arg === "--timeout-ms") {
133
+ const value = requireValue(rawArgs[index + 1], "--timeout-ms");
134
+ parsed.timeoutMs = parseNumberFlag(value, "--timeout-ms", { min: 1 });
135
+ index += 1;
136
+ continue;
137
+ }
138
+ if (arg?.startsWith("--timeout-ms=")) {
139
+ parsed.timeoutMs = parseNumberFlag(requireValue(arg.split("=", 2)[1], "--timeout-ms"), "--timeout-ms", { min: 1 });
140
+ continue;
141
+ }
142
+ if (arg === "--browser-mode") {
143
+ const value = requireValue(rawArgs[index + 1], "--browser-mode").toLowerCase();
144
+ if (!BROWSER_MODE_VALUES.has(value)) {
145
+ throw createUsageError(`Invalid --browser-mode: ${value}`);
146
+ }
147
+ parsed.browserMode = value;
148
+ index += 1;
149
+ continue;
150
+ }
151
+ if (arg?.startsWith("--browser-mode=")) {
152
+ const value = requireValue(arg.split("=", 2)[1], "--browser-mode").toLowerCase();
153
+ if (!BROWSER_MODE_VALUES.has(value)) {
154
+ throw createUsageError(`Invalid --browser-mode: ${value}`);
155
+ }
156
+ parsed.browserMode = value;
157
+ continue;
158
+ }
159
+ if (arg === "--use-cookies") {
160
+ const parsedFlag = parseOptionalBooleanFlag(rawArgs, index, "--use-cookies");
161
+ parsed.useCookies = parsedFlag.value;
162
+ index = parsedFlag.nextIndex;
163
+ continue;
164
+ }
165
+ if (arg?.startsWith("--use-cookies=")) {
166
+ parsed.useCookies = parseBooleanFlag(arg.split("=", 2)[1] ?? "", "--use-cookies");
167
+ continue;
168
+ }
169
+ if (arg === "--challenge-automation-mode") {
170
+ const value = requireValue(rawArgs[index + 1], "--challenge-automation-mode");
171
+ if (!isChallengeAutomationMode(value)) {
172
+ throw createUsageError(`Invalid --challenge-automation-mode: ${value}`);
173
+ }
174
+ parsed.challengeAutomationMode = value;
175
+ index += 1;
176
+ continue;
177
+ }
178
+ if (arg?.startsWith("--challenge-automation-mode=")) {
179
+ const value = requireValue(arg.split("=", 2)[1], "--challenge-automation-mode");
180
+ if (!isChallengeAutomationMode(value)) {
181
+ throw createUsageError(`Invalid --challenge-automation-mode: ${value}`);
182
+ }
183
+ parsed.challengeAutomationMode = value;
184
+ continue;
185
+ }
186
+ if (arg === "--cookie-policy-override" || arg === "--cookie-policy") {
187
+ const value = requireValue(rawArgs[index + 1], arg).toLowerCase();
188
+ if (!COOKIE_POLICY_VALUES.has(value)) {
189
+ throw createUsageError(`Invalid ${arg}: ${value}`);
190
+ }
191
+ parsed.cookiePolicyOverride = value;
192
+ parsed.cookiePolicyFlag = arg;
193
+ index += 1;
194
+ continue;
195
+ }
196
+ if (arg?.startsWith("--cookie-policy-override=") || arg?.startsWith("--cookie-policy=")) {
197
+ const { flag, value: rawValue } = splitEqualsFlag(arg, ["--cookie-policy-override", "--cookie-policy"]);
198
+ const value = rawValue.toLowerCase();
199
+ if (!COOKIE_POLICY_VALUES.has(value)) {
200
+ throw createUsageError(`Invalid ${flag}: ${value}`);
201
+ }
202
+ parsed.cookiePolicyOverride = value;
203
+ parsed.cookiePolicyFlag = flag;
204
+ continue;
205
+ }
206
+ }
207
+ return parsed;
208
+ };
209
+ async function runMacroResolve(args) {
210
+ const parsed = parseMacroResolveArgs(args.rawArgs);
211
+ if (!parsed.expression) {
212
+ throw createUsageError("Missing --expression");
213
+ }
214
+ if (!parsed.execute && parsed.browserMode) {
215
+ throw createUsageError("--browser-mode requires --execute for macro-resolve");
216
+ }
217
+ if (!parsed.execute && typeof parsed.useCookies === "boolean") {
218
+ throw createUsageError("--use-cookies requires --execute for macro-resolve");
219
+ }
220
+ if (!parsed.execute && parsed.challengeAutomationMode) {
221
+ throw createUsageError("--challenge-automation-mode requires --execute for macro-resolve");
222
+ }
223
+ if (!parsed.execute && parsed.cookiePolicyOverride) {
224
+ throw createUsageError(`${parsed.cookiePolicyFlag ?? "--cookie-policy-override"} requires --execute for macro-resolve`);
225
+ }
226
+ const params = {
227
+ expression: parsed.expression,
228
+ defaultProvider: parsed.defaultProvider,
229
+ includeCatalog: parsed.includeCatalog ?? false,
230
+ execute: parsed.execute ?? false,
231
+ ...typeof parsed.timeoutMs === "number" ? { timeoutMs: parsed.timeoutMs } : {},
232
+ ...parsed.browserMode ? { browserMode: parsed.browserMode } : {},
233
+ ...typeof parsed.useCookies === "boolean" ? { useCookies: parsed.useCookies } : {},
234
+ ...parsed.challengeAutomationMode ? { challengeAutomationMode: parsed.challengeAutomationMode } : {},
235
+ ...parsed.cookiePolicyOverride ? { cookiePolicyOverride: parsed.cookiePolicyOverride } : {}
236
+ };
237
+ const result = typeof parsed.timeoutMs === "number" ? await callDaemon("macro.resolve", params, {
238
+ timeoutMs: deriveMacroTransportTimeoutMs(parsed.timeoutMs)
239
+ }) : await callDaemon("macro.resolve", params);
240
+ return {
241
+ success: true,
242
+ message: buildMacroResolveMessage(parsed.execute ?? false, result),
243
+ data: result
244
+ };
245
+ }
246
+ var __test__ = {
247
+ parseMacroResolveArgs
248
+ };
249
+ export {
250
+ __test__,
251
+ runMacroResolve
252
+ };
253
+ //# sourceMappingURL=macro-resolve-ZIJZ65QI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/macro-resolve.ts"],"sourcesContent":["import type { ParsedArgs } from \"../args\";\nimport { callDaemon } from \"../client\";\nimport { createUsageError } from \"../errors\";\nimport { DEFAULT_WORKFLOW_TRANSPORT_TIMEOUT_MS } from \"../transport-timeouts\";\nimport { parseNumberFlag } from \"../utils/parse\";\nimport {\n buildNextStepMessage,\n readFollowthroughSummary,\n readWorkflowGuidanceNextStep\n} from \"../utils/workflow-message\";\nimport { isChallengeAutomationMode, type ChallengeAutomationMode } from \"../../challenges/types\";\nimport type { ProviderCookiePolicy, WorkflowBrowserMode } from \"../../providers/types\";\n\ntype MacroResolveArgs = {\n expression?: string;\n defaultProvider?: string;\n includeCatalog?: boolean;\n execute?: boolean;\n timeoutMs?: number;\n browserMode?: WorkflowBrowserMode;\n useCookies?: boolean;\n challengeAutomationMode?: ChallengeAutomationMode;\n cookiePolicyOverride?: ProviderCookiePolicy;\n cookiePolicyFlag?: \"--cookie-policy\" | \"--cookie-policy-override\";\n};\n\nconst MACRO_TRANSPORT_TIMEOUT_BUFFER_MS = 60_000;\nconst BROWSER_MODE_VALUES = new Set([\"auto\", \"extension\", \"managed\"]);\nconst COOKIE_POLICY_VALUES = new Set([\"off\", \"auto\", \"required\"]);\n\nconst deriveMacroTransportTimeoutMs = (timeoutMs: number): number => {\n return Math.max(\n DEFAULT_WORKFLOW_TRANSPORT_TIMEOUT_MS,\n timeoutMs + MACRO_TRANSPORT_TIMEOUT_BUFFER_MS\n );\n};\n\nconst requireValue = (value: string | undefined, flag: string): string => {\n if (!value) {\n throw createUsageError(`Missing value for ${flag}`);\n }\n return value;\n};\n\nconst parseBooleanFlag = (value: string, flag: string): boolean => {\n if (value === \"true\") return true;\n if (value === \"false\") return false;\n throw createUsageError(`Invalid ${flag}: ${value}`);\n};\n\nconst parseOptionalBooleanFlag = (\n rawArgs: string[],\n index: number,\n flag: string\n): { value: boolean; nextIndex: number } => {\n const next = rawArgs[index + 1];\n if (typeof next !== \"string\" || next.startsWith(\"--\")) {\n return { value: true, nextIndex: index };\n }\n return {\n value: parseBooleanFlag(next, flag),\n nextIndex: index + 1\n };\n};\n\nconst splitEqualsFlag = (\n arg: string,\n candidates: readonly [\"--cookie-policy-override\", \"--cookie-policy\"]\n): { flag: \"--cookie-policy\" | \"--cookie-policy-override\"; value: string } => {\n const flag = candidates.find((candidate) => arg.startsWith(`${candidate}=`));\n if (!flag) {\n throw createUsageError(`Unknown option: ${arg}`);\n }\n return {\n flag,\n value: requireValue(arg.slice(flag.length + 1), flag)\n };\n};\n\nconst asRecord = (value: unknown): Record<string, unknown> | null => {\n if (!value || typeof value !== \"object\" || Array.isArray(value)) {\n return null;\n }\n return value as Record<string, unknown>;\n};\n\nconst hasExecutionBlocker = (result: unknown): boolean => {\n const execution = asRecord(asRecord(result)?.execution);\n const meta = asRecord(execution?.meta);\n return asRecord(meta?.blocker) !== null;\n};\n\nconst buildMacroResolveMessage = (execute: boolean, result: unknown): string => {\n const summary = readFollowthroughSummary(result);\n const nextStep = readWorkflowGuidanceNextStep(result);\n if (summary) {\n return buildNextStepMessage(summary, nextStep);\n }\n if (!execute) {\n return \"Macro resolved.\";\n }\n if (hasExecutionBlocker(result)) {\n return \"Macro resolved, but execution is blocked and needs follow-up.\";\n }\n return \"Macro resolved and executed.\";\n};\n\nconst parseMacroResolveArgs = (rawArgs: string[]): MacroResolveArgs => {\n const parsed: MacroResolveArgs = {};\n\n for (let index = 0; index < rawArgs.length; index += 1) {\n const arg = rawArgs[index];\n\n if (arg === \"--expression\") {\n parsed.expression = requireValue(rawArgs[index + 1], \"--expression\");\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--expression=\")) {\n parsed.expression = requireValue(arg.split(\"=\", 2)[1], \"--expression\");\n continue;\n }\n\n if (arg === \"--default-provider\") {\n parsed.defaultProvider = requireValue(rawArgs[index + 1], \"--default-provider\");\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--default-provider=\")) {\n parsed.defaultProvider = requireValue(arg.split(\"=\", 2)[1], \"--default-provider\");\n continue;\n }\n\n if (arg === \"--include-catalog\") {\n parsed.includeCatalog = true;\n continue;\n }\n\n if (arg === \"--execute\") {\n parsed.execute = true;\n continue;\n }\n\n if (arg === \"--timeout-ms\") {\n const value = requireValue(rawArgs[index + 1], \"--timeout-ms\");\n parsed.timeoutMs = parseNumberFlag(value, \"--timeout-ms\", { min: 1 });\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--timeout-ms=\")) {\n parsed.timeoutMs = parseNumberFlag(requireValue(arg.split(\"=\", 2)[1], \"--timeout-ms\"), \"--timeout-ms\", { min: 1 });\n continue;\n }\n\n if (arg === \"--browser-mode\") {\n const value = requireValue(rawArgs[index + 1], \"--browser-mode\").toLowerCase();\n if (!BROWSER_MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --browser-mode: ${value}`);\n }\n parsed.browserMode = value as WorkflowBrowserMode;\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--browser-mode=\")) {\n const value = requireValue(arg.split(\"=\", 2)[1], \"--browser-mode\").toLowerCase();\n if (!BROWSER_MODE_VALUES.has(value)) {\n throw createUsageError(`Invalid --browser-mode: ${value}`);\n }\n parsed.browserMode = value as WorkflowBrowserMode;\n continue;\n }\n\n if (arg === \"--use-cookies\") {\n const parsedFlag = parseOptionalBooleanFlag(rawArgs, index, \"--use-cookies\");\n parsed.useCookies = parsedFlag.value;\n index = parsedFlag.nextIndex;\n continue;\n }\n if (arg?.startsWith(\"--use-cookies=\")) {\n parsed.useCookies = parseBooleanFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--use-cookies\");\n continue;\n }\n\n if (arg === \"--challenge-automation-mode\") {\n const value = requireValue(rawArgs[index + 1], \"--challenge-automation-mode\");\n if (!isChallengeAutomationMode(value)) {\n throw createUsageError(`Invalid --challenge-automation-mode: ${value}`);\n }\n parsed.challengeAutomationMode = value;\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--challenge-automation-mode=\")) {\n const value = requireValue(arg.split(\"=\", 2)[1], \"--challenge-automation-mode\");\n if (!isChallengeAutomationMode(value)) {\n throw createUsageError(`Invalid --challenge-automation-mode: ${value}`);\n }\n parsed.challengeAutomationMode = value;\n continue;\n }\n\n if (arg === \"--cookie-policy-override\" || arg === \"--cookie-policy\") {\n const value = requireValue(rawArgs[index + 1], arg).toLowerCase();\n if (!COOKIE_POLICY_VALUES.has(value)) {\n throw createUsageError(`Invalid ${arg}: ${value}`);\n }\n parsed.cookiePolicyOverride = value as ProviderCookiePolicy;\n parsed.cookiePolicyFlag = arg;\n index += 1;\n continue;\n }\n if (arg?.startsWith(\"--cookie-policy-override=\") || arg?.startsWith(\"--cookie-policy=\")) {\n const { flag, value: rawValue } = splitEqualsFlag(arg, [\"--cookie-policy-override\", \"--cookie-policy\"]);\n const value = rawValue.toLowerCase();\n if (!COOKIE_POLICY_VALUES.has(value)) {\n throw createUsageError(`Invalid ${flag}: ${value}`);\n }\n parsed.cookiePolicyOverride = value as ProviderCookiePolicy;\n parsed.cookiePolicyFlag = flag;\n continue;\n }\n }\n\n return parsed;\n};\n\nexport async function runMacroResolve(args: ParsedArgs) {\n const parsed = parseMacroResolveArgs(args.rawArgs);\n if (!parsed.expression) {\n throw createUsageError(\"Missing --expression\");\n }\n if (!parsed.execute && parsed.browserMode) {\n throw createUsageError(\"--browser-mode requires --execute for macro-resolve\");\n }\n if (!parsed.execute && typeof parsed.useCookies === \"boolean\") {\n throw createUsageError(\"--use-cookies requires --execute for macro-resolve\");\n }\n if (!parsed.execute && parsed.challengeAutomationMode) {\n throw createUsageError(\"--challenge-automation-mode requires --execute for macro-resolve\");\n }\n if (!parsed.execute && parsed.cookiePolicyOverride) {\n throw createUsageError(`${parsed.cookiePolicyFlag ?? \"--cookie-policy-override\"} requires --execute for macro-resolve`);\n }\n\n const params = {\n expression: parsed.expression,\n defaultProvider: parsed.defaultProvider,\n includeCatalog: parsed.includeCatalog ?? false,\n execute: parsed.execute ?? false,\n ...(typeof parsed.timeoutMs === \"number\" ? { timeoutMs: parsed.timeoutMs } : {}),\n ...(parsed.browserMode ? { browserMode: parsed.browserMode } : {}),\n ...(typeof parsed.useCookies === \"boolean\" ? { useCookies: parsed.useCookies } : {}),\n ...(parsed.challengeAutomationMode ? { challengeAutomationMode: parsed.challengeAutomationMode } : {}),\n ...(parsed.cookiePolicyOverride ? { cookiePolicyOverride: parsed.cookiePolicyOverride } : {})\n };\n const result = typeof parsed.timeoutMs === \"number\"\n ? await callDaemon(\"macro.resolve\", params, {\n timeoutMs: deriveMacroTransportTimeoutMs(parsed.timeoutMs)\n })\n : await callDaemon(\"macro.resolve\", params);\n\n return {\n success: true,\n message: buildMacroResolveMessage(parsed.execute ?? false, result),\n data: result\n };\n}\n\nexport const __test__ = {\n parseMacroResolveArgs\n};\n"],"mappings":"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","names":[]}
@@ -1,7 +1,7 @@
1
1
  import type { BrowserManagerLike } from "../browser/manager-types";
2
2
  import type { ChallengeAutomationMode } from "../challenges";
3
3
  import type { BundledProviderRuntime, ProviderRuntimeBundleConfig } from "../providers/runtime-bundle";
4
- import type { BrowserFallbackPort, WorkflowBrowserMode } from "../providers/types";
4
+ import type { BrowserFallbackPort, ProviderCookiePolicy, WorkflowBrowserMode } from "../providers/types";
5
5
  import type { RuntimeInit } from "../providers";
6
6
  import { type MacroExecutionPayload, type MacroResolution, type MacroRuntimeExecutor } from "./execute";
7
7
  export declare const clampMacroRuntimeTimeout: (timeoutMs: number | undefined) => number | null;
@@ -15,6 +15,8 @@ export declare const executeMacroWithRuntime: (args: {
15
15
  browserFallbackPort?: BrowserFallbackPort;
16
16
  timeoutMs?: number;
17
17
  browserMode?: WorkflowBrowserMode;
18
+ useCookies?: boolean;
18
19
  challengeAutomationMode?: ChallengeAutomationMode;
20
+ cookiePolicyOverride?: ProviderCookiePolicy;
19
21
  }) => Promise<MacroExecutionPayload>;
20
22
  //# sourceMappingURL=execute-runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execute-runtime.d.ts","sourceRoot":"","sources":["../../src/macros/execute-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAEvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC1B,MAAM,WAAW,CAAC;AAKnB,eAAO,MAAM,wBAAwB,GAAI,WAAW,MAAM,GAAG,SAAS,KAAG,MAAM,GAAG,IAMjF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,WAAW,MAAM,GAAG,SAAS,KAC5B,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,SAgBnC,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAU,MAAM;IAClD,UAAU,EAAE,eAAe,CAAC;IAC5B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,MAAM,CAAC,EAAE,2BAA2B,CAAC;IACrC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;CACnD,KAAG,OAAO,CAAC,qBAAqB,CAqBhC,CAAC"}
1
+ {"version":3,"file":"execute-runtime.d.ts","sourceRoot":"","sources":["../../src/macros/execute-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAEvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAGL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC1B,MAAM,WAAW,CAAC;AAKnB,eAAO,MAAM,wBAAwB,GAAI,WAAW,MAAM,GAAG,SAAS,KAAG,MAAM,GAAG,IAMjF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,WAAW,MAAM,GAAG,SAAS,KAC5B,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,SAgBnC,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAU,MAAM;IAClD,UAAU,EAAE,eAAe,CAAC;IAC5B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,MAAM,CAAC,EAAE,2BAA2B,CAAC;IACrC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C,KAAG,OAAO,CAAC,qBAAqB,CA0BhC,CAAC"}
@@ -41,6 +41,8 @@ export type MacroExecutionPayload = {
41
41
  };
42
42
  type MacroExecutionOverrides = Pick<ProviderRunOptions, "challengeAutomationMode"> & {
43
43
  browserMode?: WorkflowBrowserMode;
44
+ useCookies?: boolean;
45
+ cookiePolicyOverride?: ProviderRunOptions["cookiePolicyOverride"];
44
46
  };
45
47
  export declare const executeMacroResolution: (resolution: MacroResolution, runtime: MacroRuntimeExecutor, overrides?: MacroExecutionOverrides) => Promise<ProviderAggregateResult>;
46
48
  export declare const shapeExecutionPayload: (result: ProviderAggregateResult) => MacroExecutionPayload;
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/macros/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,uBAAuB,EACvB,6BAA6B,EAC7B,yBAAyB,EACzB,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,oBAAoB,CAAC;AAI5B,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE;QACN,MAAM,EAAE,iBAAiB,CAAC;QAC1B,SAAS,EAAE,iBAAiB,CAAC;QAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,CAAC;IACF,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE;YACJ,UAAU,EAAE,MAAM,EAAE,CAAC;YACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SAC/B,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,CACN,KAAK,EAAE,6BAA6B,CAAC,QAAQ,CAAC,EAC9C,OAAO,CAAC,EAAE,kBAAkB,KACzB,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACtC,KAAK,EAAE,CACL,KAAK,EAAE,6BAA6B,CAAC,OAAO,CAAC,EAC7C,OAAO,CAAC,EAAE,kBAAkB,KACzB,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACtC,KAAK,EAAE,CACL,KAAK,EAAE,6BAA6B,CAAC,OAAO,CAAC,EAC7C,OAAO,CAAC,EAAE,kBAAkB,KACzB,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACtC,IAAI,EAAE,CACJ,KAAK,EAAE,6BAA6B,CAAC,MAAM,CAAC,EAC5C,OAAO,CAAC,EAAE,kBAAkB,KACzB,OAAO,CAAC,uBAAuB,CAAC,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC5C,QAAQ,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC9C,OAAO,EAAE,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,EAAE;QACJ,EAAE,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAClC,OAAO,EAAE,uBAAuB,CAAC,SAAS,CAAC,CAAC;QAC5C,eAAe,EAAE,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;QAC5D,aAAa,EAAE,uBAAuB,CAAC,eAAe,CAAC,CAAC;QACxD,KAAK,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACzC,UAAU,CAAC,EAAE,yBAAyB,CAAC,YAAY,CAAC,CAAC;QACrD,OAAO,CAAC,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAC/C,KAAK,CAAC,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC;KAC1C,CAAC;IACF,WAAW,CAAC,EAAE,uBAAuB,CAAC,aAAa,CAAC,CAAC;CACtD,CAAC;AAEF,KAAK,uBAAuB,GAAG,IAAI,CAAC,kBAAkB,EAAE,yBAAyB,CAAC,GAAG;IACnF,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC,CAAC;AAySF,eAAO,MAAM,sBAAsB,GACjC,YAAY,eAAe,EAC3B,SAAS,oBAAoB,EAC7B,YAAY,uBAAuB,KAClC,OAAO,CAAC,uBAAuB,CA2BjC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,QAAQ,uBAAuB,KAAG,qBAkBvE,CAAC"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/macros/execute.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import {
2
+ __test__,
3
+ assessNativeStatus,
4
+ discoverExtensionId,
5
+ getNativeStatusSnapshot,
6
+ installNativeHost,
7
+ runNativeCommand
8
+ } from "./chunk-6PVZ2ABC.js";
9
+ import "./chunk-MX3NFLCE.js";
10
+ import "./chunk-ASMHEEKY.js";
11
+ import "./chunk-IPE7TF2P.js";
12
+ import "./chunk-TBUCZX4A.js";
13
+ import "./chunk-5SWZDVOW.js";
14
+ export {
15
+ __test__,
16
+ assessNativeStatus,
17
+ discoverExtensionId,
18
+ getNativeStatusSnapshot,
19
+ installNativeHost,
20
+ runNativeCommand
21
+ };
22
+ //# sourceMappingURL=native-UPLVQ2SG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,76 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ parseNumberFlag
4
+ } from "./chunk-RPXWUCQQ.js";
5
+ import {
6
+ callDaemon
7
+ } from "./chunk-OYNLAZQU.js";
8
+ import "./chunk-LBPELU7L.js";
9
+ import "./chunk-SXAGSEKZ.js";
10
+ import "./chunk-MX3NFLCE.js";
11
+ import "./chunk-ASMHEEKY.js";
12
+ import {
13
+ createUsageError
14
+ } from "./chunk-IPE7TF2P.js";
15
+ import "./chunk-STGGGVYT.js";
16
+ import "./chunk-3ILXPKSJ.js";
17
+ import "./chunk-TBUCZX4A.js";
18
+ import "./chunk-Y2KL55OG.js";
19
+ import "./chunk-5SWZDVOW.js";
20
+ import "./chunk-S6S2UP6U.js";
21
+ import "./chunk-S5KZQJJI.js";
22
+ import "./chunk-KZ2IXVQT.js";
23
+ import "./chunk-WHQZBUNY.js";
24
+ import "./chunk-FUSXMW3G.js";
25
+
26
+ // src/cli/commands/devtools/network-poll.ts
27
+ function parseNetworkPollArgs(rawArgs) {
28
+ const parsed = {};
29
+ for (let i = 0; i < rawArgs.length; i += 1) {
30
+ const arg = rawArgs[i];
31
+ if (arg === "--session-id") {
32
+ const value = rawArgs[i + 1];
33
+ if (!value) throw createUsageError("Missing value for --session-id");
34
+ parsed.sessionId = value;
35
+ i += 1;
36
+ continue;
37
+ }
38
+ if (arg?.startsWith("--session-id=")) {
39
+ parsed.sessionId = arg.split("=", 2)[1];
40
+ continue;
41
+ }
42
+ if (arg === "--since-seq") {
43
+ const value = rawArgs[i + 1];
44
+ if (!value) throw createUsageError("Missing value for --since-seq");
45
+ parsed.sinceSeq = parseNumberFlag(value, "--since-seq", { min: 0 });
46
+ i += 1;
47
+ continue;
48
+ }
49
+ if (arg?.startsWith("--since-seq=")) {
50
+ parsed.sinceSeq = parseNumberFlag(arg.split("=", 2)[1] ?? "", "--since-seq", { min: 0 });
51
+ continue;
52
+ }
53
+ if (arg === "--max") {
54
+ const value = rawArgs[i + 1];
55
+ if (!value) throw createUsageError("Missing value for --max");
56
+ parsed.max = parseNumberFlag(value, "--max", { min: 1 });
57
+ i += 1;
58
+ continue;
59
+ }
60
+ if (arg?.startsWith("--max=")) {
61
+ parsed.max = parseNumberFlag(arg.split("=", 2)[1] ?? "", "--max", { min: 1 });
62
+ continue;
63
+ }
64
+ }
65
+ return parsed;
66
+ }
67
+ async function runNetworkPoll(args) {
68
+ const { sessionId, sinceSeq, max } = parseNetworkPollArgs(args.rawArgs);
69
+ if (!sessionId) throw createUsageError("Missing --session-id");
70
+ const result = await callDaemon("devtools.networkPoll", { sessionId, sinceSeq, max });
71
+ return { success: true, message: "Network events polled.", data: result };
72
+ }
73
+ export {
74
+ runNetworkPoll
75
+ };
76
+ //# sourceMappingURL=network-poll-HLDOSC72.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/devtools/network-poll.ts"],"sourcesContent":["import type { ParsedArgs } from \"../../args\";\nimport { callDaemon } from \"../../client\";\nimport { createUsageError } from \"../../errors\";\nimport { parseNumberFlag } from \"../../utils/parse\";\n\nfunction parseNetworkPollArgs(rawArgs: string[]): { sessionId?: string; sinceSeq?: number; max?: number } {\n const parsed: { sessionId?: string; sinceSeq?: number; max?: number } = {};\n for (let i = 0; i < rawArgs.length; i += 1) {\n const arg = rawArgs[i];\n if (arg === \"--session-id\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --session-id\");\n parsed.sessionId = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--session-id=\")) {\n parsed.sessionId = arg.split(\"=\", 2)[1];\n continue;\n }\n if (arg === \"--since-seq\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --since-seq\");\n parsed.sinceSeq = parseNumberFlag(value, \"--since-seq\", { min: 0 });\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--since-seq=\")) {\n parsed.sinceSeq = parseNumberFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--since-seq\", { min: 0 });\n continue;\n }\n if (arg === \"--max\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --max\");\n parsed.max = parseNumberFlag(value, \"--max\", { min: 1 });\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--max=\")) {\n parsed.max = parseNumberFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--max\", { min: 1 });\n continue;\n }\n }\n return parsed;\n}\n\nexport async function runNetworkPoll(args: ParsedArgs) {\n const { sessionId, sinceSeq, max } = parseNetworkPollArgs(args.rawArgs);\n if (!sessionId) throw createUsageError(\"Missing --session-id\");\n const result = await callDaemon(\"devtools.networkPoll\", { sessionId, sinceSeq, max });\n return { success: true, message: \"Network events polled.\", data: result };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,qBAAqB,SAA4E;AACxG,QAAM,SAAkE,CAAC;AACzE,WAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK,GAAG;AAC1C,UAAM,MAAM,QAAQ,CAAC;AACrB,QAAI,QAAQ,gBAAgB;AAC1B,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,gCAAgC;AACnE,aAAO,YAAY;AACnB,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,eAAe,GAAG;AACpC,aAAO,YAAY,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;AACtC;AAAA,IACF;AACA,QAAI,QAAQ,eAAe;AACzB,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,+BAA+B;AAClE,aAAO,WAAW,gBAAgB,OAAO,eAAe,EAAE,KAAK,EAAE,CAAC;AAClE,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,cAAc,GAAG;AACnC,aAAO,WAAW,gBAAgB,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,eAAe,EAAE,KAAK,EAAE,CAAC;AACvF;AAAA,IACF;AACA,QAAI,QAAQ,SAAS;AACnB,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,yBAAyB;AAC5D,aAAO,MAAM,gBAAgB,OAAO,SAAS,EAAE,KAAK,EAAE,CAAC;AACvD,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,QAAQ,GAAG;AAC7B,aAAO,MAAM,gBAAgB,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC,KAAK,IAAI,SAAS,EAAE,KAAK,EAAE,CAAC;AAC5E;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;AAEA,eAAsB,eAAe,MAAkB;AACrD,QAAM,EAAE,WAAW,UAAU,IAAI,IAAI,qBAAqB,KAAK,OAAO;AACtE,MAAI,CAAC,UAAW,OAAM,iBAAiB,sBAAsB;AAC7D,QAAM,SAAS,MAAM,WAAW,wBAAwB,EAAE,WAAW,UAAU,IAAI,CAAC;AACpF,SAAO,EAAE,SAAS,MAAM,SAAS,0BAA0B,MAAM,OAAO;AAC1E;","names":[]}
@@ -0,0 +1,69 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS
4
+ } from "./chunk-OW5HMYMI.js";
5
+ import {
6
+ callDaemon
7
+ } from "./chunk-OYNLAZQU.js";
8
+ import "./chunk-LBPELU7L.js";
9
+ import "./chunk-SXAGSEKZ.js";
10
+ import "./chunk-MX3NFLCE.js";
11
+ import "./chunk-ASMHEEKY.js";
12
+ import {
13
+ createUsageError
14
+ } from "./chunk-IPE7TF2P.js";
15
+ import "./chunk-STGGGVYT.js";
16
+ import "./chunk-3ILXPKSJ.js";
17
+ import "./chunk-TBUCZX4A.js";
18
+ import "./chunk-Y2KL55OG.js";
19
+ import "./chunk-5SWZDVOW.js";
20
+ import "./chunk-S6S2UP6U.js";
21
+ import "./chunk-S5KZQJJI.js";
22
+ import "./chunk-KZ2IXVQT.js";
23
+ import "./chunk-WHQZBUNY.js";
24
+ import "./chunk-FUSXMW3G.js";
25
+
26
+ // src/cli/commands/targets/new.ts
27
+ function parseTargetNewArgs(rawArgs) {
28
+ const parsed = {};
29
+ for (let i = 0; i < rawArgs.length; i += 1) {
30
+ const arg = rawArgs[i];
31
+ if (arg === "--session-id") {
32
+ const value = rawArgs[i + 1];
33
+ if (!value) throw createUsageError("Missing value for --session-id");
34
+ parsed.sessionId = value;
35
+ i += 1;
36
+ continue;
37
+ }
38
+ if (arg?.startsWith("--session-id=")) {
39
+ parsed.sessionId = arg.split("=", 2)[1];
40
+ continue;
41
+ }
42
+ if (arg === "--url") {
43
+ const value = rawArgs[i + 1];
44
+ if (!value) throw createUsageError("Missing value for --url");
45
+ parsed.url = value;
46
+ i += 1;
47
+ continue;
48
+ }
49
+ if (arg?.startsWith("--url=")) {
50
+ parsed.url = arg.split("=", 2)[1];
51
+ continue;
52
+ }
53
+ }
54
+ return parsed;
55
+ }
56
+ async function runTargetNew(args) {
57
+ const { sessionId, url } = parseTargetNewArgs(args.rawArgs);
58
+ if (!sessionId) throw createUsageError("Missing --session-id");
59
+ const result = await callDaemon(
60
+ "targets.new",
61
+ { sessionId, url },
62
+ { timeoutMs: DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS }
63
+ );
64
+ return { success: true, message: "Target created.", data: result };
65
+ }
66
+ export {
67
+ runTargetNew
68
+ };
69
+ //# sourceMappingURL=new-HXLLN6UT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/targets/new.ts"],"sourcesContent":["import type { ParsedArgs } from \"../../args\";\nimport { callDaemon } from \"../../client\";\nimport { createUsageError } from \"../../errors\";\nimport { DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS } from \"../../transport-timeouts\";\n\nfunction parseTargetNewArgs(rawArgs: string[]): { sessionId?: string; url?: string } {\n const parsed: { sessionId?: string; url?: string } = {};\n for (let i = 0; i < rawArgs.length; i += 1) {\n const arg = rawArgs[i];\n if (arg === \"--session-id\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --session-id\");\n parsed.sessionId = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--session-id=\")) {\n parsed.sessionId = arg.split(\"=\", 2)[1];\n continue;\n }\n if (arg === \"--url\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --url\");\n parsed.url = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--url=\")) {\n parsed.url = arg.split(\"=\", 2)[1];\n continue;\n }\n }\n return parsed;\n}\n\nexport async function runTargetNew(args: ParsedArgs) {\n const { sessionId, url } = parseTargetNewArgs(args.rawArgs);\n if (!sessionId) throw createUsageError(\"Missing --session-id\");\n const result = await callDaemon(\n \"targets.new\",\n { sessionId, url },\n { timeoutMs: DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS }\n );\n return { success: true, message: \"Target created.\", data: result };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,mBAAmB,SAAyD;AACnF,QAAM,SAA+C,CAAC;AACtD,WAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK,GAAG;AAC1C,UAAM,MAAM,QAAQ,CAAC;AACrB,QAAI,QAAQ,gBAAgB;AAC1B,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,gCAAgC;AACnE,aAAO,YAAY;AACnB,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,eAAe,GAAG;AACpC,aAAO,YAAY,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;AACtC;AAAA,IACF;AACA,QAAI,QAAQ,SAAS;AACnB,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,yBAAyB;AAC5D,aAAO,MAAM;AACb,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,QAAQ,GAAG;AAC7B,aAAO,MAAM,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;AAChC;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;AAEA,eAAsB,aAAa,MAAkB;AACnD,QAAM,EAAE,WAAW,IAAI,IAAI,mBAAmB,KAAK,OAAO;AAC1D,MAAI,CAAC,UAAW,OAAM,iBAAiB,sBAAsB;AAC7D,QAAM,SAAS,MAAM;AAAA,IACnB;AAAA,IACA,EAAE,WAAW,IAAI;AAAA,IACjB,EAAE,WAAW,6CAA6C;AAAA,EAC5D;AACA,SAAO,EAAE,SAAS,MAAM,SAAS,mBAAmB,MAAM,OAAO;AACnE;","names":[]}
@@ -0,0 +1,27 @@
1
+ import {
2
+ designSkillName,
3
+ designSkillTopic,
4
+ localOnlyToolNames,
5
+ onboarding_metadata_default,
6
+ quickStartCommands,
7
+ referencePaths,
8
+ sectionSummary,
9
+ sectionTitle,
10
+ skillName,
11
+ skillTopic,
12
+ validatedSkillTopic
13
+ } from "./chunk-DW4TX7MU.js";
14
+ export {
15
+ onboarding_metadata_default as default,
16
+ designSkillName,
17
+ designSkillTopic,
18
+ localOnlyToolNames,
19
+ quickStartCommands,
20
+ referencePaths,
21
+ sectionSummary,
22
+ sectionTitle,
23
+ skillName,
24
+ skillTopic,
25
+ validatedSkillTopic
26
+ };
27
+ //# sourceMappingURL=onboarding-metadata-7E3KLYSZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,81 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS
4
+ } from "./chunk-OW5HMYMI.js";
5
+ import {
6
+ callDaemon
7
+ } from "./chunk-OYNLAZQU.js";
8
+ import "./chunk-LBPELU7L.js";
9
+ import "./chunk-SXAGSEKZ.js";
10
+ import "./chunk-MX3NFLCE.js";
11
+ import "./chunk-ASMHEEKY.js";
12
+ import {
13
+ createUsageError
14
+ } from "./chunk-IPE7TF2P.js";
15
+ import "./chunk-STGGGVYT.js";
16
+ import "./chunk-3ILXPKSJ.js";
17
+ import "./chunk-TBUCZX4A.js";
18
+ import "./chunk-Y2KL55OG.js";
19
+ import "./chunk-5SWZDVOW.js";
20
+ import "./chunk-S6S2UP6U.js";
21
+ import "./chunk-S5KZQJJI.js";
22
+ import "./chunk-KZ2IXVQT.js";
23
+ import "./chunk-WHQZBUNY.js";
24
+ import "./chunk-FUSXMW3G.js";
25
+
26
+ // src/cli/commands/pages/open.ts
27
+ function parsePageOpenArgs(rawArgs) {
28
+ const parsed = {};
29
+ for (let i = 0; i < rawArgs.length; i += 1) {
30
+ const arg = rawArgs[i];
31
+ if (arg === "--session-id") {
32
+ const value = rawArgs[i + 1];
33
+ if (!value) throw createUsageError("Missing value for --session-id");
34
+ parsed.sessionId = value;
35
+ i += 1;
36
+ continue;
37
+ }
38
+ if (arg?.startsWith("--session-id=")) {
39
+ parsed.sessionId = arg.split("=", 2)[1];
40
+ continue;
41
+ }
42
+ if (arg === "--name") {
43
+ const value = rawArgs[i + 1];
44
+ if (!value) throw createUsageError("Missing value for --name");
45
+ parsed.name = value;
46
+ i += 1;
47
+ continue;
48
+ }
49
+ if (arg?.startsWith("--name=")) {
50
+ parsed.name = arg.split("=", 2)[1];
51
+ continue;
52
+ }
53
+ if (arg === "--url") {
54
+ const value = rawArgs[i + 1];
55
+ if (!value) throw createUsageError("Missing value for --url");
56
+ parsed.url = value;
57
+ i += 1;
58
+ continue;
59
+ }
60
+ if (arg?.startsWith("--url=")) {
61
+ parsed.url = arg.split("=", 2)[1];
62
+ continue;
63
+ }
64
+ }
65
+ return parsed;
66
+ }
67
+ async function runPageOpen(args) {
68
+ const { sessionId, name, url } = parsePageOpenArgs(args.rawArgs);
69
+ if (!sessionId) throw createUsageError("Missing --session-id");
70
+ if (!name) throw createUsageError("Missing --name");
71
+ const result = await callDaemon(
72
+ "page.open",
73
+ { sessionId, name, url },
74
+ { timeoutMs: DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS }
75
+ );
76
+ return { success: true, message: `Page ready: ${name}`, data: result };
77
+ }
78
+ export {
79
+ runPageOpen
80
+ };
81
+ //# sourceMappingURL=open-KDR25LQZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/pages/open.ts"],"sourcesContent":["import type { ParsedArgs } from \"../../args\";\nimport { callDaemon } from \"../../client\";\nimport { createUsageError } from \"../../errors\";\nimport { DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS } from \"../../transport-timeouts\";\n\nfunction parsePageOpenArgs(rawArgs: string[]): { sessionId?: string; name?: string; url?: string } {\n const parsed: { sessionId?: string; name?: string; url?: string } = {};\n for (let i = 0; i < rawArgs.length; i += 1) {\n const arg = rawArgs[i];\n if (arg === \"--session-id\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --session-id\");\n parsed.sessionId = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--session-id=\")) {\n parsed.sessionId = arg.split(\"=\", 2)[1];\n continue;\n }\n if (arg === \"--name\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --name\");\n parsed.name = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--name=\")) {\n parsed.name = arg.split(\"=\", 2)[1];\n continue;\n }\n if (arg === \"--url\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --url\");\n parsed.url = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--url=\")) {\n parsed.url = arg.split(\"=\", 2)[1];\n continue;\n }\n }\n return parsed;\n}\n\nexport async function runPageOpen(args: ParsedArgs) {\n const { sessionId, name, url } = parsePageOpenArgs(args.rawArgs);\n if (!sessionId) throw createUsageError(\"Missing --session-id\");\n if (!name) throw createUsageError(\"Missing --name\");\n const result = await callDaemon(\n \"page.open\",\n { sessionId, name, url },\n { timeoutMs: DEFAULT_TARGET_CREATION_TRANSPORT_TIMEOUT_MS }\n );\n return { success: true, message: `Page ready: ${name}`, data: result };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,kBAAkB,SAAwE;AACjG,QAAM,SAA8D,CAAC;AACrE,WAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK,GAAG;AAC1C,UAAM,MAAM,QAAQ,CAAC;AACrB,QAAI,QAAQ,gBAAgB;AAC1B,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,gCAAgC;AACnE,aAAO,YAAY;AACnB,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,eAAe,GAAG;AACpC,aAAO,YAAY,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;AACtC;AAAA,IACF;AACA,QAAI,QAAQ,UAAU;AACpB,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,0BAA0B;AAC7D,aAAO,OAAO;AACd,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,SAAS,GAAG;AAC9B,aAAO,OAAO,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;AACjC;AAAA,IACF;AACA,QAAI,QAAQ,SAAS;AACnB,YAAM,QAAQ,QAAQ,IAAI,CAAC;AAC3B,UAAI,CAAC,MAAO,OAAM,iBAAiB,yBAAyB;AAC5D,aAAO,MAAM;AACb,WAAK;AACL;AAAA,IACF;AACA,QAAI,KAAK,WAAW,QAAQ,GAAG;AAC7B,aAAO,MAAM,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;AAChC;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;AAEA,eAAsB,YAAY,MAAkB;AAClD,QAAM,EAAE,WAAW,MAAM,IAAI,IAAI,kBAAkB,KAAK,OAAO;AAC/D,MAAI,CAAC,UAAW,OAAM,iBAAiB,sBAAsB;AAC7D,MAAI,CAAC,KAAM,OAAM,iBAAiB,gBAAgB;AAClD,QAAM,SAAS,MAAM;AAAA,IACnB;AAAA,IACA,EAAE,WAAW,MAAM,IAAI;AAAA,IACvB,EAAE,WAAW,6CAA6C;AAAA,EAC5D;AACA,SAAO,EAAE,SAAS,MAAM,SAAS,eAAe,IAAI,IAAI,MAAM,OAAO;AACvE;","names":[]}