opendevbrowser 0.0.28 → 0.0.30

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 (325) hide show
  1. package/README.md +2 -2
  2. package/dist/accessibility-snapshot-CQ4ZKWKC.js +39 -0
  3. package/dist/accessibility-snapshot-CQ4ZKWKC.js.map +1 -0
  4. package/dist/active-window-TD5HYJ72.js +37 -0
  5. package/dist/active-window-TD5HYJ72.js.map +1 -0
  6. package/dist/annotate-VTLFS2XV.js +205 -0
  7. package/dist/annotate-VTLFS2XV.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-BCI5KYCW.js +84 -0
  11. package/dist/attr-BCI5KYCW.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-5DFEEOKM.js +309 -0
  15. package/dist/canvas-5DFEEOKM.js.map +1 -0
  16. package/dist/capture-desktop-HFTTWY4Z.js +38 -0
  17. package/dist/capture-desktop-HFTTWY4Z.js.map +1 -0
  18. package/dist/capture-window-X63XPIFF.js +40 -0
  19. package/dist/capture-window-X63XPIFF.js.map +1 -0
  20. package/dist/check-LWAUY7GC.js +71 -0
  21. package/dist/check-LWAUY7GC.js.map +1 -0
  22. package/dist/checked-ZSOUKVYT.js +71 -0
  23. package/dist/checked-ZSOUKVYT.js.map +1 -0
  24. package/dist/chunk-2SIMIPLY.js +67 -0
  25. package/dist/chunk-2SIMIPLY.js.map +1 -0
  26. package/dist/chunk-37VSRUW4.js +141 -0
  27. package/dist/chunk-37VSRUW4.js.map +1 -0
  28. package/dist/{chunk-T3VVHJTK.js → chunk-4BEJVZRK.js} +1078 -1458
  29. package/dist/chunk-4BEJVZRK.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-AHEWXOKY.js +64 -0
  39. package/dist/chunk-AHEWXOKY.js.map +1 -0
  40. package/dist/chunk-ASMHEEKY.js +10 -0
  41. package/dist/chunk-ASMHEEKY.js.map +1 -0
  42. package/dist/chunk-COAOWH3G.js +3651 -0
  43. package/dist/chunk-COAOWH3G.js.map +1 -0
  44. package/dist/chunk-DBF5OKH3.js +111 -0
  45. package/dist/chunk-DBF5OKH3.js.map +1 -0
  46. package/dist/chunk-DW4TX7MU.js +54 -0
  47. package/dist/chunk-DW4TX7MU.js.map +1 -0
  48. package/dist/chunk-GQJ5S3BL.js +20 -0
  49. package/dist/chunk-GQJ5S3BL.js.map +1 -0
  50. package/dist/chunk-IPE7TF2P.js +54 -0
  51. package/dist/chunk-IPE7TF2P.js.map +1 -0
  52. package/dist/chunk-IQTJHXZJ.js +126 -0
  53. package/dist/chunk-IQTJHXZJ.js.map +1 -0
  54. package/dist/chunk-J47N77VG.js +2969 -0
  55. package/dist/chunk-J47N77VG.js.map +1 -0
  56. package/dist/chunk-JZXD6FWR.js +25 -0
  57. package/dist/chunk-JZXD6FWR.js.map +1 -0
  58. package/dist/{chunk-QVWOPIZJ.js → chunk-KDSNXS6N.js} +75 -149
  59. package/dist/chunk-KDSNXS6N.js.map +1 -0
  60. package/dist/chunk-KZ2IXVQT.js +219 -0
  61. package/dist/chunk-KZ2IXVQT.js.map +1 -0
  62. package/dist/chunk-MD655IPO.js +838 -0
  63. package/dist/chunk-MD655IPO.js.map +1 -0
  64. package/dist/chunk-MX3NFLCE.js +940 -0
  65. package/dist/chunk-MX3NFLCE.js.map +1 -0
  66. package/dist/chunk-OW5HMYMI.js +19 -0
  67. package/dist/chunk-OW5HMYMI.js.map +1 -0
  68. package/dist/chunk-PPUWQKIC.js +26 -0
  69. package/dist/chunk-PPUWQKIC.js.map +1 -0
  70. package/dist/{chunk-I5ZCOZZV.js → chunk-QOMWCRE3.js} +1202 -9561
  71. package/dist/chunk-QOMWCRE3.js.map +1 -0
  72. package/dist/chunk-RCZZGGJS.js +226 -0
  73. package/dist/chunk-RCZZGGJS.js.map +1 -0
  74. package/dist/chunk-RJNI3BHT.js +1 -0
  75. package/dist/chunk-RPXWUCQQ.js +112 -0
  76. package/dist/chunk-RPXWUCQQ.js.map +1 -0
  77. package/dist/chunk-S5KZQJJI.js +107 -0
  78. package/dist/chunk-S5KZQJJI.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-2AILSEIZ.js +81 -0
  102. package/dist/click-2AILSEIZ.js.map +1 -0
  103. package/dist/clone-component-TPJS3PEG.js +82 -0
  104. package/dist/clone-component-TPJS3PEG.js.map +1 -0
  105. package/dist/clone-page-LE74CIFC.js +69 -0
  106. package/dist/clone-page-LE74CIFC.js.map +1 -0
  107. package/dist/close-HN4YI47K.js +63 -0
  108. package/dist/close-HN4YI47K.js.map +1 -0
  109. package/dist/close-WFERRHX6.js +63 -0
  110. package/dist/close-WFERRHX6.js.map +1 -0
  111. package/dist/connect-RWBV2UCQ.js +107 -0
  112. package/dist/connect-RWBV2UCQ.js.map +1 -0
  113. package/dist/console-poll-PP4YYPDF.js +76 -0
  114. package/dist/console-poll-PP4YYPDF.js.map +1 -0
  115. package/dist/cookie-import-6IP776FC.js +177 -0
  116. package/dist/cookie-import-6IP776FC.js.map +1 -0
  117. package/dist/cookie-list-O2KG6DPU.js +117 -0
  118. package/dist/cookie-list-O2KG6DPU.js.map +1 -0
  119. package/dist/daemon-2BSAZXLT.js +194 -0
  120. package/dist/daemon-2BSAZXLT.js.map +1 -0
  121. package/dist/daemon-fingerprint.json +1 -1
  122. package/dist/debug-trace-snapshot-F3BDVZXS.js +136 -0
  123. package/dist/debug-trace-snapshot-F3BDVZXS.js.map +1 -0
  124. package/dist/dialog-6JQYUWMQ.js +75 -0
  125. package/dist/dialog-6JQYUWMQ.js.map +1 -0
  126. package/dist/disconnect-763TP7GH.js +58 -0
  127. package/dist/disconnect-763TP7GH.js.map +1 -0
  128. package/dist/enabled-DLYQFNIP.js +71 -0
  129. package/dist/enabled-DLYQFNIP.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-S346TJJH.js +98 -0
  135. package/dist/goto-S346TJJH.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-6JVJFGO7.js +71 -0
  139. package/dist/hover-6JVJFGO7.js.map +1 -0
  140. package/dist/html-EVOSPBIT.js +84 -0
  141. package/dist/html-EVOSPBIT.js.map +1 -0
  142. package/dist/index.d.ts.map +1 -1
  143. package/dist/index.js +87 -38
  144. package/dist/index.js.map +1 -1
  145. package/dist/inspector-H57BVUJP.js +62 -0
  146. package/dist/inspector-H57BVUJP.js.map +1 -0
  147. package/dist/inspector-audit-NQBAJWC7.js +84 -0
  148. package/dist/inspector-audit-NQBAJWC7.js.map +1 -0
  149. package/dist/inspector-plan-ZDIQVND3.js +69 -0
  150. package/dist/inspector-plan-ZDIQVND3.js.map +1 -0
  151. package/dist/inspiredesign-IEUL4PX3.js +234 -0
  152. package/dist/inspiredesign-IEUL4PX3.js.map +1 -0
  153. package/dist/install-autostart-output-5DOMKCQL.js +41 -0
  154. package/dist/install-autostart-output-5DOMKCQL.js.map +1 -0
  155. package/dist/install-autostart-reconciliation-NHKOFYTD.js +73 -0
  156. package/dist/install-autostart-reconciliation-NHKOFYTD.js.map +1 -0
  157. package/dist/launch-EK66VQPF.js +225 -0
  158. package/dist/launch-EK66VQPF.js.map +1 -0
  159. package/dist/list-ADZAQ2IU.js +51 -0
  160. package/dist/list-ADZAQ2IU.js.map +1 -0
  161. package/dist/list-KKUKN467.js +54 -0
  162. package/dist/list-KKUKN467.js.map +1 -0
  163. package/dist/local-HXJLUUNT.js +54 -0
  164. package/dist/local-HXJLUUNT.js.map +1 -0
  165. package/dist/macro-resolve-6DOQJ7CA.js +253 -0
  166. package/dist/macro-resolve-6DOQJ7CA.js.map +1 -0
  167. package/dist/macros/execute-runtime.d.ts +3 -1
  168. package/dist/macros/execute-runtime.d.ts.map +1 -1
  169. package/dist/macros/execute.d.ts +2 -0
  170. package/dist/macros/execute.d.ts.map +1 -1
  171. package/dist/native-UPLVQ2SG.js +22 -0
  172. package/dist/native-UPLVQ2SG.js.map +1 -0
  173. package/dist/network-poll-NUL4PDPY.js +76 -0
  174. package/dist/network-poll-NUL4PDPY.js.map +1 -0
  175. package/dist/new-5NKYPEFT.js +69 -0
  176. package/dist/new-5NKYPEFT.js.map +1 -0
  177. package/dist/onboarding-metadata-7E3KLYSZ.js +27 -0
  178. package/dist/onboarding-metadata-7E3KLYSZ.js.map +1 -0
  179. package/dist/open-NR3BPLXV.js +81 -0
  180. package/dist/open-NR3BPLXV.js.map +1 -0
  181. package/dist/opendevbrowser.d.ts.map +1 -1
  182. package/dist/opendevbrowser.js +87 -38
  183. package/dist/opendevbrowser.js.map +1 -1
  184. package/dist/perf-HJ36ZI6H.js +58 -0
  185. package/dist/perf-HJ36ZI6H.js.map +1 -0
  186. package/dist/pointer-down-IYTTQWXZ.js +55 -0
  187. package/dist/pointer-down-IYTTQWXZ.js.map +1 -0
  188. package/dist/pointer-drag-A2YC5PWI.js +54 -0
  189. package/dist/pointer-drag-A2YC5PWI.js.map +1 -0
  190. package/dist/pointer-move-W5K5FUI4.js +52 -0
  191. package/dist/pointer-move-W5K5FUI4.js.map +1 -0
  192. package/dist/pointer-up-6GWVO64Y.js +55 -0
  193. package/dist/pointer-up-6GWVO64Y.js.map +1 -0
  194. package/dist/press-A3V5WB3S.js +83 -0
  195. package/dist/press-A3V5WB3S.js.map +1 -0
  196. package/dist/product-video-52REKWF3.js +235 -0
  197. package/dist/product-video-52REKWF3.js.map +1 -0
  198. package/dist/providers/artifacts.d.ts +0 -2
  199. package/dist/providers/artifacts.d.ts.map +1 -1
  200. package/dist/providers/blocker.d.ts.map +1 -1
  201. package/dist/providers/bounded-map.d.ts +2 -0
  202. package/dist/providers/bounded-map.d.ts.map +1 -0
  203. package/dist/providers/community/index.d.ts.map +1 -1
  204. package/dist/providers/constraint.d.ts.map +1 -1
  205. package/dist/providers/index.d.ts +1 -0
  206. package/dist/providers/index.d.ts.map +1 -1
  207. package/dist/providers/renderer.d.ts.map +1 -1
  208. package/dist/providers/research-compiler.d.ts +1 -1
  209. package/dist/providers/research-compiler.d.ts.map +1 -1
  210. package/dist/providers/research-executor.d.ts.map +1 -1
  211. package/dist/providers/runtime-factory.d.ts.map +1 -1
  212. package/dist/providers/shared/traversal-url.d.ts +3 -0
  213. package/dist/providers/shared/traversal-url.d.ts.map +1 -1
  214. package/dist/providers/shopping/index.d.ts.map +1 -1
  215. package/dist/providers/social/search-quality.d.ts.map +1 -1
  216. package/dist/providers/workflow-handoff.d.ts +4 -0
  217. package/dist/providers/workflow-handoff.d.ts.map +1 -1
  218. package/dist/providers/workflow-output-root.d.ts +6 -0
  219. package/dist/providers/workflow-output-root.d.ts.map +1 -0
  220. package/dist/providers/workflows.d.ts.map +1 -1
  221. package/dist/{providers-QF2RFB4J.js → providers-IMFYMMHQ.js} +19 -14
  222. package/dist/providers-IMFYMMHQ.js.map +1 -0
  223. package/dist/public-surface/generated-manifest.d.ts +2 -2
  224. package/dist/public-surface/generated-manifest.d.ts.map +1 -1
  225. package/dist/public-surface/source.d.ts +2 -2
  226. package/dist/public-surface/source.d.ts.map +1 -1
  227. package/dist/relay/protocol.d.ts +3 -1
  228. package/dist/relay/protocol.d.ts.map +1 -1
  229. package/dist/relay/relay-server.d.ts +6 -0
  230. package/dist/relay/relay-server.d.ts.map +1 -1
  231. package/dist/research-WB6BBCDD.js +295 -0
  232. package/dist/research-WB6BBCDD.js.map +1 -0
  233. package/dist/review-BGWVY4RA.js +48 -0
  234. package/dist/review-BGWVY4RA.js.map +1 -0
  235. package/dist/review-desktop-LEORC5VS.js +54 -0
  236. package/dist/review-desktop-LEORC5VS.js.map +1 -0
  237. package/dist/rpc-4TSKSFGC.js +159 -0
  238. package/dist/rpc-4TSKSFGC.js.map +1 -0
  239. package/dist/run-3NBLVWXD.js +180 -0
  240. package/dist/run-3NBLVWXD.js.map +1 -0
  241. package/dist/screencast-start-UZVIT3IN.js +67 -0
  242. package/dist/screencast-start-UZVIT3IN.js.map +1 -0
  243. package/dist/screencast-stop-NOSJSIUO.js +59 -0
  244. package/dist/screencast-stop-NOSJSIUO.js.map +1 -0
  245. package/dist/screenshot-LARG4JQG.js +68 -0
  246. package/dist/screenshot-LARG4JQG.js.map +1 -0
  247. package/dist/scroll-VNFMV6TW.js +84 -0
  248. package/dist/scroll-VNFMV6TW.js.map +1 -0
  249. package/dist/scroll-into-view-VYRT3JPT.js +71 -0
  250. package/dist/scroll-into-view-VYRT3JPT.js.map +1 -0
  251. package/dist/select-KJTUZDVO.js +86 -0
  252. package/dist/select-KJTUZDVO.js.map +1 -0
  253. package/dist/serve-EV7K4HKR.js +498 -0
  254. package/dist/serve-EV7K4HKR.js.map +1 -0
  255. package/dist/shopping-DTXHVQ2X.js +273 -0
  256. package/dist/shopping-DTXHVQ2X.js.map +1 -0
  257. package/dist/skill-lifecycle-5UAZGKSN.js +89 -0
  258. package/dist/skill-lifecycle-5UAZGKSN.js.map +1 -0
  259. package/dist/skills-NSXDX6YM.js +26 -0
  260. package/dist/skills-NSXDX6YM.js.map +1 -0
  261. package/dist/snapshot-3XQMCMRJ.js +113 -0
  262. package/dist/snapshot-3XQMCMRJ.js.map +1 -0
  263. package/dist/status-OXSYA5XD.js +35 -0
  264. package/dist/status-OXSYA5XD.js.map +1 -0
  265. package/dist/status-YUMDP5KY.js +132 -0
  266. package/dist/status-YUMDP5KY.js.map +1 -0
  267. package/dist/status-capabilities-P4KDSE2Y.js +57 -0
  268. package/dist/status-capabilities-P4KDSE2Y.js.map +1 -0
  269. package/dist/text-V3B7UVIH.js +84 -0
  270. package/dist/text-V3B7UVIH.js.map +1 -0
  271. package/dist/tools/deps.d.ts +1 -0
  272. package/dist/tools/deps.d.ts.map +1 -1
  273. package/dist/tools/inspiredesign_run.d.ts.map +1 -1
  274. package/dist/tools/macro_resolve.d.ts.map +1 -1
  275. package/dist/tools/product_video_run.d.ts.map +1 -1
  276. package/dist/tools/research_run.d.ts.map +1 -1
  277. package/dist/tools/shopping_run.d.ts.map +1 -1
  278. package/dist/tools/workflow-output.d.ts +3 -0
  279. package/dist/tools/workflow-output.d.ts.map +1 -0
  280. package/dist/type-IYBN3ZLR.js +94 -0
  281. package/dist/type-IYBN3ZLR.js.map +1 -0
  282. package/dist/uncheck-SG737EGI.js +71 -0
  283. package/dist/uncheck-SG737EGI.js.map +1 -0
  284. package/dist/uninstall-KYKGJAX7.js +91 -0
  285. package/dist/uninstall-KYKGJAX7.js.map +1 -0
  286. package/dist/update-SMXPYGXS.js +305 -0
  287. package/dist/update-SMXPYGXS.js.map +1 -0
  288. package/dist/update-skill-modes-BVX7IVMW.js +38 -0
  289. package/dist/update-skill-modes-BVX7IVMW.js.map +1 -0
  290. package/dist/upload-KH6ZABJA.js +56 -0
  291. package/dist/upload-KH6ZABJA.js.map +1 -0
  292. package/dist/use-7YDKO3U4.js +63 -0
  293. package/dist/use-7YDKO3U4.js.map +1 -0
  294. package/dist/value-RZBWSKKM.js +71 -0
  295. package/dist/value-RZBWSKKM.js.map +1 -0
  296. package/dist/visible-BSFTAKXR.js +71 -0
  297. package/dist/visible-BSFTAKXR.js.map +1 -0
  298. package/dist/wait-TMTEAYOP.js +109 -0
  299. package/dist/wait-TMTEAYOP.js.map +1 -0
  300. package/dist/windows-HIZ23OHS.js +37 -0
  301. package/dist/windows-HIZ23OHS.js.map +1 -0
  302. package/extension/dist/background.js +99 -22
  303. package/extension/dist/ops/ops-runtime.js +85 -7
  304. package/extension/dist/ops/ops-session-store.js +3 -0
  305. package/extension/dist/ops/target-session-coordinator.js +3 -0
  306. package/extension/dist/services/CDPRouter.js +9 -0
  307. package/extension/manifest.json +1 -1
  308. package/package.json +1 -1
  309. package/skills/opendevbrowser-best-practices/SKILL.md +8 -6
  310. package/skills/opendevbrowser-best-practices/artifacts/skill-runtime-surface-matrix.md +1 -1
  311. package/skills/opendevbrowser-best-practices/scripts/odb-workflow.sh +3 -2
  312. package/skills/opendevbrowser-best-practices/scripts/validator-fixture-cli.sh +39 -2
  313. package/skills/opendevbrowser-research/SKILL.md +64 -12
  314. package/skills/opendevbrowser-research/artifacts/research-workflows.md +56 -19
  315. package/skills/opendevbrowser-research/assets/templates/compact.md +31 -5
  316. package/skills/opendevbrowser-research/assets/templates/context.json +52 -1
  317. package/skills/opendevbrowser-research/assets/templates/report.md +57 -4
  318. package/skills/opendevbrowser-research/examples/sample-input.json +1 -1
  319. package/skills/opendevbrowser-research/examples/sample-output.md +27 -2
  320. package/skills/opendevbrowser-research/scripts/run-research.sh +2 -6
  321. package/skills/opendevbrowser-research/scripts/validate-skill-assets.sh +115 -1
  322. package/dist/chunk-I5ZCOZZV.js.map +0 -1
  323. package/dist/chunk-QVWOPIZJ.js.map +0 -1
  324. package/dist/chunk-T3VVHJTK.js.map +0 -1
  325. /package/dist/{providers-QF2RFB4J.js.map → chunk-RJNI3BHT.js.map} +0 -0
@@ -0,0 +1,132 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ assessNativeStatus,
4
+ getNativeStatusSnapshot
5
+ } from "./chunk-6PVZ2ABC.js";
6
+ import {
7
+ callDaemon
8
+ } from "./chunk-MD655IPO.js";
9
+ import {
10
+ DEFAULT_DAEMON_STATUS_FETCH_OPTIONS,
11
+ fetchDaemonStatusFromMetadata
12
+ } from "./chunk-COAOWH3G.js";
13
+ import "./chunk-QOMWCRE3.js";
14
+ import "./chunk-MX3NFLCE.js";
15
+ import "./chunk-ASMHEEKY.js";
16
+ import {
17
+ createDisconnectedError,
18
+ createUsageError
19
+ } from "./chunk-IPE7TF2P.js";
20
+ import "./chunk-STGGGVYT.js";
21
+ import "./chunk-3ILXPKSJ.js";
22
+ import "./chunk-TBUCZX4A.js";
23
+ import "./chunk-Y2KL55OG.js";
24
+ import "./chunk-5SWZDVOW.js";
25
+ import "./chunk-4BEJVZRK.js";
26
+ import "./chunk-S5KZQJJI.js";
27
+ import "./chunk-KZ2IXVQT.js";
28
+ import "./chunk-WHQZBUNY.js";
29
+ import "./chunk-FUSXMW3G.js";
30
+
31
+ // src/cli/commands/session/status.ts
32
+ function parseStatusArgs(rawArgs) {
33
+ const parsed = {};
34
+ for (let i = 0; i < rawArgs.length; i += 1) {
35
+ const arg = rawArgs[i];
36
+ if (arg === "--session-id") {
37
+ const value = rawArgs[i + 1];
38
+ if (!value) throw createUsageError("Missing value for --session-id");
39
+ parsed.sessionId = value;
40
+ i += 1;
41
+ continue;
42
+ }
43
+ if (arg?.startsWith("--session-id=")) {
44
+ parsed.sessionId = arg.split("=", 2)[1];
45
+ continue;
46
+ }
47
+ }
48
+ return parsed;
49
+ }
50
+ async function runSessionStatus(args) {
51
+ const { sessionId } = parseStatusArgs(args.rawArgs);
52
+ if (!sessionId) {
53
+ throw createUsageError("Missing --session-id");
54
+ }
55
+ const result = await callDaemon("session.status", { sessionId });
56
+ return { success: true, message: `Session status: ${sessionId}`, data: result };
57
+ }
58
+
59
+ // src/cli/commands/status.ts
60
+ var parseStatusArgs2 = (rawArgs) => {
61
+ const parsed = { daemon: false };
62
+ for (let i = 0; i < rawArgs.length; i += 1) {
63
+ const arg = rawArgs[i];
64
+ if (arg === "--daemon") {
65
+ parsed.daemon = true;
66
+ continue;
67
+ }
68
+ if (arg === "--session-id") {
69
+ const value = rawArgs[i + 1];
70
+ if (!value) throw createUsageError("Missing value for --session-id");
71
+ parsed.sessionId = value;
72
+ i += 1;
73
+ continue;
74
+ }
75
+ if (arg?.startsWith("--session-id=")) {
76
+ parsed.sessionId = arg.split("=", 2)[1];
77
+ continue;
78
+ }
79
+ }
80
+ return parsed;
81
+ };
82
+ async function runStatus(args) {
83
+ const { sessionId, daemon } = parseStatusArgs2(args.rawArgs);
84
+ if (sessionId && daemon) {
85
+ throw createUsageError("Use --session-id or --daemon, not both.");
86
+ }
87
+ if (sessionId) {
88
+ return runSessionStatus(args);
89
+ }
90
+ if (!daemon && args.transport === "native") {
91
+ const nativeStatus2 = getNativeStatusSnapshot();
92
+ const assessment = assessNativeStatus(nativeStatus2);
93
+ return {
94
+ success: assessment.success,
95
+ message: assessment.message,
96
+ data: nativeStatus2,
97
+ exitCode: assessment.exitCode ?? void 0
98
+ };
99
+ }
100
+ const daemonStatus = await fetchDaemonStatusFromMetadata(void 0, DEFAULT_DAEMON_STATUS_FETCH_OPTIONS);
101
+ if (!daemonStatus) {
102
+ throw createDisconnectedError("Daemon not running. Start with `opendevbrowser serve`.");
103
+ }
104
+ const nativeStatus = getNativeStatusSnapshot();
105
+ const nativeAssessment = assessNativeStatus(nativeStatus);
106
+ const fingerprintLine = daemonStatus.fingerprintCurrent === false ? "Daemon fingerprint: mismatch with current build" : "Daemon fingerprint: current";
107
+ const baseLines = [
108
+ `Daemon OK (pid=${daemonStatus.pid})`,
109
+ fingerprintLine,
110
+ `Relay: port=${daemonStatus.relay.port ?? "n/a"} ext=${daemonStatus.relay.extensionConnected ? "on" : "off"} handshake=${daemonStatus.relay.extensionHandshakeComplete ? "on" : "off"} cdp=${daemonStatus.relay.cdpConnected ? "on" : "off"} annotate=${daemonStatus.relay.annotationConnected ? "on" : "off"} ops=${daemonStatus.relay.opsConnected ? "on" : "off"} canvas=${daemonStatus.relay.canvasConnected ? "on" : "off"} pairing=${daemonStatus.relay.pairingRequired ? "on" : "off"} health=${daemonStatus.relay.health?.reason ?? "n/a"}`,
111
+ `Native: ${nativeAssessment.summary}`,
112
+ daemonStatus.relay.lastHandshakeError ? `Relay last handshake error: ${daemonStatus.relay.lastHandshakeError.code} (${daemonStatus.relay.lastHandshakeError.message})` : "Relay last handshake error: none",
113
+ "Legend: ext=extension websocket, handshake=extension handshake, cdp=active /cdp client, annotate=annotation channel, ops=ops clients, canvas=canvas clients, pairing=token required, health=relay status"
114
+ ];
115
+ if (!nativeAssessment.success) {
116
+ baseLines.splice(4, 0, `Native detail: ${nativeAssessment.message}`);
117
+ }
118
+ const baseMessage = baseLines.join("\n");
119
+ const message = daemon || args.outputFormat !== "text" ? baseMessage : [
120
+ "Warning: `status` defaults to daemon status. Use --daemon explicitly or --session-id for session status.",
121
+ baseMessage
122
+ ].join("\n");
123
+ return {
124
+ success: true,
125
+ message,
126
+ data: { ...daemonStatus, native: nativeStatus }
127
+ };
128
+ }
129
+ export {
130
+ runStatus
131
+ };
132
+ //# sourceMappingURL=status-YUMDP5KY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/session/status.ts","../src/cli/commands/status.ts"],"sourcesContent":["import type { ParsedArgs } from \"../../args\";\nimport { callDaemon } from \"../../client\";\nimport { createUsageError } from \"../../errors\";\n\nfunction parseStatusArgs(rawArgs: string[]): { sessionId?: string } {\n const parsed: { sessionId?: 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 }\n return parsed;\n}\n\nexport async function runSessionStatus(args: ParsedArgs) {\n const { sessionId } = parseStatusArgs(args.rawArgs);\n if (!sessionId) {\n throw createUsageError(\"Missing --session-id\");\n }\n const result = await callDaemon(\"session.status\", { sessionId });\n return { success: true, message: `Session status: ${sessionId}`, data: result };\n}\n","import type { ParsedArgs } from \"../args\";\nimport { createDisconnectedError, createUsageError } from \"../errors\";\nimport { fetchDaemonStatusFromMetadata } from \"../daemon-status\";\nimport { DEFAULT_DAEMON_STATUS_FETCH_OPTIONS } from \"../daemon-status-policy\";\nimport { runSessionStatus } from \"./session/status\";\nimport { assessNativeStatus, getNativeStatusSnapshot } from \"./native\";\n\ntype StatusArgs = {\n sessionId?: string;\n daemon: boolean;\n};\n\nconst parseStatusArgs = (rawArgs: string[]): StatusArgs => {\n const parsed: StatusArgs = { daemon: false };\n for (let i = 0; i < rawArgs.length; i += 1) {\n const arg = rawArgs[i];\n if (arg === \"--daemon\") {\n parsed.daemon = true;\n continue;\n }\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 }\n return parsed;\n};\n\nexport async function runStatus(args: ParsedArgs) {\n const { sessionId, daemon } = parseStatusArgs(args.rawArgs);\n if (sessionId && daemon) {\n throw createUsageError(\"Use --session-id or --daemon, not both.\");\n }\n\n if (sessionId) {\n return runSessionStatus(args);\n }\n\n if (!daemon && args.transport === \"native\") {\n const nativeStatus = getNativeStatusSnapshot();\n const assessment = assessNativeStatus(nativeStatus);\n return {\n success: assessment.success,\n message: assessment.message,\n data: nativeStatus,\n exitCode: assessment.exitCode ?? undefined\n };\n }\n\n const daemonStatus = await fetchDaemonStatusFromMetadata(undefined, DEFAULT_DAEMON_STATUS_FETCH_OPTIONS);\n if (!daemonStatus) {\n throw createDisconnectedError(\"Daemon not running. Start with `opendevbrowser serve`.\");\n }\n\n const nativeStatus = getNativeStatusSnapshot();\n const nativeAssessment = assessNativeStatus(nativeStatus);\n const fingerprintLine = daemonStatus.fingerprintCurrent === false\n ? \"Daemon fingerprint: mismatch with current build\"\n : \"Daemon fingerprint: current\";\n\n const baseLines = [\n `Daemon OK (pid=${daemonStatus.pid})`,\n fingerprintLine,\n `Relay: port=${daemonStatus.relay.port ?? \"n/a\"} ext=${daemonStatus.relay.extensionConnected ? \"on\" : \"off\"} ` +\n `handshake=${daemonStatus.relay.extensionHandshakeComplete ? \"on\" : \"off\"} ` +\n `cdp=${daemonStatus.relay.cdpConnected ? \"on\" : \"off\"} ` +\n `annotate=${daemonStatus.relay.annotationConnected ? \"on\" : \"off\"} ` +\n `ops=${daemonStatus.relay.opsConnected ? \"on\" : \"off\"} ` +\n `canvas=${daemonStatus.relay.canvasConnected ? \"on\" : \"off\"} ` +\n `pairing=${daemonStatus.relay.pairingRequired ? \"on\" : \"off\"} ` +\n `health=${daemonStatus.relay.health?.reason ?? \"n/a\"}`,\n `Native: ${nativeAssessment.summary}`,\n daemonStatus.relay.lastHandshakeError\n ? `Relay last handshake error: ${daemonStatus.relay.lastHandshakeError.code} (${daemonStatus.relay.lastHandshakeError.message})`\n : \"Relay last handshake error: none\",\n \"Legend: ext=extension websocket, handshake=extension handshake, cdp=active /cdp client, annotate=annotation channel, ops=ops clients, canvas=canvas clients, pairing=token required, health=relay status\"\n ];\n if (!nativeAssessment.success) {\n baseLines.splice(4, 0, `Native detail: ${nativeAssessment.message}`);\n }\n const baseMessage = baseLines.join(\"\\n\");\n\n const message = daemon || args.outputFormat !== \"text\"\n ? baseMessage\n : [\n \"Warning: `status` defaults to daemon status. Use --daemon explicitly or --session-id for session status.\",\n baseMessage\n ].join(\"\\n\");\n\n return {\n success: true,\n message,\n data: { ...daemonStatus, native: nativeStatus }\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAAS,gBAAgB,SAA2C;AAClE,QAAM,SAAiC,CAAC;AACxC,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;AAAA,EACF;AACA,SAAO;AACT;AAEA,eAAsB,iBAAiB,MAAkB;AACvD,QAAM,EAAE,UAAU,IAAI,gBAAgB,KAAK,OAAO;AAClD,MAAI,CAAC,WAAW;AACd,UAAM,iBAAiB,sBAAsB;AAAA,EAC/C;AACA,QAAM,SAAS,MAAM,WAAW,kBAAkB,EAAE,UAAU,CAAC;AAC/D,SAAO,EAAE,SAAS,MAAM,SAAS,mBAAmB,SAAS,IAAI,MAAM,OAAO;AAChF;;;AClBA,IAAMA,mBAAkB,CAAC,YAAkC;AACzD,QAAM,SAAqB,EAAE,QAAQ,MAAM;AAC3C,WAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAAK,GAAG;AAC1C,UAAM,MAAM,QAAQ,CAAC;AACrB,QAAI,QAAQ,YAAY;AACtB,aAAO,SAAS;AAChB;AAAA,IACF;AACA,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;AAAA,EACF;AACA,SAAO;AACT;AAEA,eAAsB,UAAU,MAAkB;AAChD,QAAM,EAAE,WAAW,OAAO,IAAIA,iBAAgB,KAAK,OAAO;AAC1D,MAAI,aAAa,QAAQ;AACvB,UAAM,iBAAiB,yCAAyC;AAAA,EAClE;AAEA,MAAI,WAAW;AACb,WAAO,iBAAiB,IAAI;AAAA,EAC9B;AAEA,MAAI,CAAC,UAAU,KAAK,cAAc,UAAU;AAC1C,UAAMC,gBAAe,wBAAwB;AAC7C,UAAM,aAAa,mBAAmBA,aAAY;AAClD,WAAO;AAAA,MACL,SAAS,WAAW;AAAA,MACpB,SAAS,WAAW;AAAA,MACpB,MAAMA;AAAA,MACN,UAAU,WAAW,YAAY;AAAA,IACnC;AAAA,EACF;AAEA,QAAM,eAAe,MAAM,8BAA8B,QAAW,mCAAmC;AACvG,MAAI,CAAC,cAAc;AACjB,UAAM,wBAAwB,wDAAwD;AAAA,EACxF;AAEA,QAAM,eAAe,wBAAwB;AAC7C,QAAM,mBAAmB,mBAAmB,YAAY;AACxD,QAAM,kBAAkB,aAAa,uBAAuB,QACxD,oDACA;AAEJ,QAAM,YAAY;AAAA,IAChB,kBAAkB,aAAa,GAAG;AAAA,IAClC;AAAA,IACA,eAAe,aAAa,MAAM,QAAQ,KAAK,QAAQ,aAAa,MAAM,qBAAqB,OAAO,KAAK,cAC5F,aAAa,MAAM,6BAA6B,OAAO,KAAK,QAClE,aAAa,MAAM,eAAe,OAAO,KAAK,aACzC,aAAa,MAAM,sBAAsB,OAAO,KAAK,QAC1D,aAAa,MAAM,eAAe,OAAO,KAAK,WAC3C,aAAa,MAAM,kBAAkB,OAAO,KAAK,YAChD,aAAa,MAAM,kBAAkB,OAAO,KAAK,WAClD,aAAa,MAAM,QAAQ,UAAU,KAAK;AAAA,IACtD,WAAW,iBAAiB,OAAO;AAAA,IACnC,aAAa,MAAM,qBACf,+BAA+B,aAAa,MAAM,mBAAmB,IAAI,KAAK,aAAa,MAAM,mBAAmB,OAAO,MAC3H;AAAA,IACJ;AAAA,EACF;AACA,MAAI,CAAC,iBAAiB,SAAS;AAC7B,cAAU,OAAO,GAAG,GAAG,kBAAkB,iBAAiB,OAAO,EAAE;AAAA,EACrE;AACA,QAAM,cAAc,UAAU,KAAK,IAAI;AAEvC,QAAM,UAAU,UAAU,KAAK,iBAAiB,SAC5C,cACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,EAAE,KAAK,IAAI;AAEb,SAAO;AAAA,IACL,SAAS;AAAA,IACT;AAAA,IACA,MAAM,EAAE,GAAG,cAAc,QAAQ,aAAa;AAAA,EAChD;AACF;","names":["parseStatusArgs","nativeStatus"]}
@@ -0,0 +1,57 @@
1
+ import {
2
+ parseOptionalChallengeAutomationMode
3
+ } from "./chunk-PPUWQKIC.js";
4
+ import "./chunk-RJNI3BHT.js";
5
+ import {
6
+ parseNumberFlag,
7
+ parseOptionalStringFlag
8
+ } from "./chunk-RPXWUCQQ.js";
9
+ import {
10
+ DEFAULT_REVIEW_TRANSPORT_TIMEOUT_MS
11
+ } from "./chunk-OW5HMYMI.js";
12
+ import {
13
+ callDaemon
14
+ } from "./chunk-MD655IPO.js";
15
+ import "./chunk-COAOWH3G.js";
16
+ import "./chunk-QOMWCRE3.js";
17
+ import "./chunk-MX3NFLCE.js";
18
+ import "./chunk-ASMHEEKY.js";
19
+ import "./chunk-IPE7TF2P.js";
20
+ import "./chunk-STGGGVYT.js";
21
+ import "./chunk-3ILXPKSJ.js";
22
+ import "./chunk-TBUCZX4A.js";
23
+ import "./chunk-Y2KL55OG.js";
24
+ import "./chunk-5SWZDVOW.js";
25
+ import "./chunk-4BEJVZRK.js";
26
+ import "./chunk-S5KZQJJI.js";
27
+ import "./chunk-KZ2IXVQT.js";
28
+ import "./chunk-WHQZBUNY.js";
29
+ import "./chunk-FUSXMW3G.js";
30
+
31
+ // src/cli/commands/status-capabilities.ts
32
+ function parseOptionalTimeoutMs(rawArgs) {
33
+ const value = parseOptionalStringFlag(rawArgs, "--timeout-ms");
34
+ return typeof value === "string" ? parseNumberFlag(value, "--timeout-ms", { min: 1 }) : void 0;
35
+ }
36
+ async function runStatusCapabilities(args) {
37
+ const sessionId = parseOptionalStringFlag(args.rawArgs, "--session-id");
38
+ const targetId = parseOptionalStringFlag(args.rawArgs, "--target-id");
39
+ const challengeAutomationMode = parseOptionalChallengeAutomationMode(args.rawArgs);
40
+ const timeoutMs = parseOptionalTimeoutMs(args.rawArgs);
41
+ const result = await callDaemon("status.capabilities", {
42
+ ...typeof sessionId === "string" ? { sessionId } : {},
43
+ ...typeof targetId === "string" ? { targetId } : {},
44
+ ...challengeAutomationMode ? { challengeAutomationMode } : {}
45
+ }, {
46
+ timeoutMs: timeoutMs ?? DEFAULT_REVIEW_TRANSPORT_TIMEOUT_MS
47
+ });
48
+ return {
49
+ success: true,
50
+ message: "Capability discovery captured.",
51
+ data: result
52
+ };
53
+ }
54
+ export {
55
+ runStatusCapabilities
56
+ };
57
+ //# sourceMappingURL=status-capabilities-P4KDSE2Y.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/status-capabilities.ts"],"sourcesContent":["import type { ParsedArgs } from \"../args\";\nimport { callDaemon } from \"../client\";\nimport { DEFAULT_REVIEW_TRANSPORT_TIMEOUT_MS } from \"../transport-timeouts\";\nimport { parseOptionalStringFlag, parseNumberFlag } from \"../utils/parse\";\nimport { parseOptionalChallengeAutomationMode } from \"./challenge-automation-mode\";\n\nfunction parseOptionalTimeoutMs(rawArgs: string[]): number | undefined {\n const value = parseOptionalStringFlag(rawArgs, \"--timeout-ms\");\n return typeof value === \"string\"\n ? parseNumberFlag(value, \"--timeout-ms\", { min: 1 })\n : undefined;\n}\n\nexport async function runStatusCapabilities(args: ParsedArgs) {\n const sessionId = parseOptionalStringFlag(args.rawArgs, \"--session-id\");\n const targetId = parseOptionalStringFlag(args.rawArgs, \"--target-id\");\n const challengeAutomationMode = parseOptionalChallengeAutomationMode(args.rawArgs);\n const timeoutMs = parseOptionalTimeoutMs(args.rawArgs);\n const result = await callDaemon(\"status.capabilities\", {\n ...(typeof sessionId === \"string\" ? { sessionId } : {}),\n ...(typeof targetId === \"string\" ? { targetId } : {}),\n ...(challengeAutomationMode ? { challengeAutomationMode } : {})\n }, {\n timeoutMs: timeoutMs ?? DEFAULT_REVIEW_TRANSPORT_TIMEOUT_MS\n });\n return {\n success: true,\n message: \"Capability discovery captured.\",\n data: result\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,SAAS,uBAAuB,SAAuC;AACrE,QAAM,QAAQ,wBAAwB,SAAS,cAAc;AAC7D,SAAO,OAAO,UAAU,WACpB,gBAAgB,OAAO,gBAAgB,EAAE,KAAK,EAAE,CAAC,IACjD;AACN;AAEA,eAAsB,sBAAsB,MAAkB;AAC5D,QAAM,YAAY,wBAAwB,KAAK,SAAS,cAAc;AACtE,QAAM,WAAW,wBAAwB,KAAK,SAAS,aAAa;AACpE,QAAM,0BAA0B,qCAAqC,KAAK,OAAO;AACjF,QAAM,YAAY,uBAAuB,KAAK,OAAO;AACrD,QAAM,SAAS,MAAM,WAAW,uBAAuB;AAAA,IACrD,GAAI,OAAO,cAAc,WAAW,EAAE,UAAU,IAAI,CAAC;AAAA,IACrD,GAAI,OAAO,aAAa,WAAW,EAAE,SAAS,IAAI,CAAC;AAAA,IACnD,GAAI,0BAA0B,EAAE,wBAAwB,IAAI,CAAC;AAAA,EAC/D,GAAG;AAAA,IACD,WAAW,aAAa;AAAA,EAC1B,CAAC;AACD,SAAO;AAAA,IACL,SAAS;AAAA,IACT,SAAS;AAAA,IACT,MAAM;AAAA,EACR;AACF;","names":[]}
@@ -0,0 +1,84 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ parseNumberFlag,
4
+ parseOptionalStringFlag
5
+ } from "./chunk-RPXWUCQQ.js";
6
+ import {
7
+ callDaemon
8
+ } from "./chunk-MD655IPO.js";
9
+ import "./chunk-COAOWH3G.js";
10
+ import "./chunk-QOMWCRE3.js";
11
+ import "./chunk-MX3NFLCE.js";
12
+ import "./chunk-ASMHEEKY.js";
13
+ import {
14
+ createUsageError
15
+ } from "./chunk-IPE7TF2P.js";
16
+ import "./chunk-STGGGVYT.js";
17
+ import "./chunk-3ILXPKSJ.js";
18
+ import "./chunk-TBUCZX4A.js";
19
+ import "./chunk-Y2KL55OG.js";
20
+ import "./chunk-5SWZDVOW.js";
21
+ import "./chunk-4BEJVZRK.js";
22
+ import "./chunk-S5KZQJJI.js";
23
+ import "./chunk-KZ2IXVQT.js";
24
+ import "./chunk-WHQZBUNY.js";
25
+ import "./chunk-FUSXMW3G.js";
26
+
27
+ // src/cli/commands/dom/text.ts
28
+ function parseDomTextArgs(rawArgs) {
29
+ const parsed = {};
30
+ for (let i = 0; i < rawArgs.length; i += 1) {
31
+ const arg = rawArgs[i];
32
+ if (arg === "--session-id") {
33
+ const value = rawArgs[i + 1];
34
+ if (!value) throw createUsageError("Missing value for --session-id");
35
+ parsed.sessionId = value;
36
+ i += 1;
37
+ continue;
38
+ }
39
+ if (arg?.startsWith("--session-id=")) {
40
+ parsed.sessionId = arg.split("=", 2)[1];
41
+ continue;
42
+ }
43
+ if (arg === "--ref") {
44
+ const value = rawArgs[i + 1];
45
+ if (!value) throw createUsageError("Missing value for --ref");
46
+ parsed.ref = value;
47
+ i += 1;
48
+ continue;
49
+ }
50
+ if (arg?.startsWith("--ref=")) {
51
+ parsed.ref = arg.split("=", 2)[1];
52
+ continue;
53
+ }
54
+ if (arg === "--max-chars") {
55
+ const value = rawArgs[i + 1];
56
+ if (!value) throw createUsageError("Missing value for --max-chars");
57
+ parsed.maxChars = parseNumberFlag(value, "--max-chars", { min: 1 });
58
+ i += 1;
59
+ continue;
60
+ }
61
+ if (arg?.startsWith("--max-chars=")) {
62
+ parsed.maxChars = parseNumberFlag(arg.split("=", 2)[1] ?? "", "--max-chars", { min: 1 });
63
+ continue;
64
+ }
65
+ }
66
+ return parsed;
67
+ }
68
+ async function runDomText(args) {
69
+ const { sessionId, ref, maxChars } = parseDomTextArgs(args.rawArgs);
70
+ const targetId = parseOptionalStringFlag(args.rawArgs, "--target-id");
71
+ if (!sessionId) throw createUsageError("Missing --session-id");
72
+ if (!ref) throw createUsageError("Missing --ref");
73
+ const result = await callDaemon("dom.getText", {
74
+ sessionId,
75
+ ref,
76
+ maxChars,
77
+ ...typeof targetId === "string" ? { targetId } : {}
78
+ });
79
+ return { success: true, message: "DOM text captured.", data: result };
80
+ }
81
+ export {
82
+ runDomText
83
+ };
84
+ //# sourceMappingURL=text-V3B7UVIH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/dom/text.ts"],"sourcesContent":["import type { ParsedArgs } from \"../../args\";\nimport { callDaemon } from \"../../client\";\nimport { createUsageError } from \"../../errors\";\nimport { parseNumberFlag, parseOptionalStringFlag } from \"../../utils/parse\";\n\nfunction parseDomTextArgs(rawArgs: string[]): { sessionId?: string; ref?: string; maxChars?: number } {\n const parsed: { sessionId?: string; ref?: string; maxChars?: 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 === \"--ref\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --ref\");\n parsed.ref = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--ref=\")) {\n parsed.ref = arg.split(\"=\", 2)[1];\n continue;\n }\n if (arg === \"--max-chars\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --max-chars\");\n parsed.maxChars = parseNumberFlag(value, \"--max-chars\", { min: 1 });\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--max-chars=\")) {\n parsed.maxChars = parseNumberFlag(arg.split(\"=\", 2)[1] ?? \"\", \"--max-chars\", { min: 1 });\n continue;\n }\n }\n return parsed;\n}\n\nexport async function runDomText(args: ParsedArgs) {\n const { sessionId, ref, maxChars } = parseDomTextArgs(args.rawArgs);\n const targetId = parseOptionalStringFlag(args.rawArgs, \"--target-id\");\n if (!sessionId) throw createUsageError(\"Missing --session-id\");\n if (!ref) throw createUsageError(\"Missing --ref\");\n const result = await callDaemon(\"dom.getText\", {\n sessionId,\n ref,\n maxChars,\n ...(typeof targetId === \"string\" ? { targetId } : {})\n });\n return { success: true, message: \"DOM text captured.\", data: result };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,iBAAiB,SAA4E;AACpG,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,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;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;AAAA,EACF;AACA,SAAO;AACT;AAEA,eAAsB,WAAW,MAAkB;AACjD,QAAM,EAAE,WAAW,KAAK,SAAS,IAAI,iBAAiB,KAAK,OAAO;AAClE,QAAM,WAAW,wBAAwB,KAAK,SAAS,aAAa;AACpE,MAAI,CAAC,UAAW,OAAM,iBAAiB,sBAAsB;AAC7D,MAAI,CAAC,IAAK,OAAM,iBAAiB,eAAe;AAChD,QAAM,SAAS,MAAM,WAAW,eAAe;AAAA,IAC7C;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAI,OAAO,aAAa,WAAW,EAAE,SAAS,IAAI,CAAC;AAAA,EACrD,CAAC;AACD,SAAO,EAAE,SAAS,MAAM,SAAS,sBAAsB,MAAM,OAAO;AACtE;","names":[]}
@@ -16,6 +16,7 @@ export type ProviderRuntimeLike = {
16
16
  };
17
17
  export type ToolDeps = {
18
18
  manager: BrowserManagerLike;
19
+ workspaceRoot?: string;
19
20
  canvasManager?: CanvasManagerLike;
20
21
  annotationManager: AnnotationManager;
21
22
  runner: ScriptRunner;
@@ -1 +1 @@
1
- {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../src/tools/deps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,mBAAmB,GAAG;IAChC,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,QAAQ,GAAG;IACrB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,qBAAqB,CAAC,EAAE,yBAAyB,CAAC;IAClD,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC"}
1
+ {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../src/tools/deps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACvB,6BAA6B,EAC7B,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,mBAAmB,GAAG;IAChC,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,QAAQ,GAAG;IACrB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,kBAAkB,CAAC;IACpC,qBAAqB,CAAC,EAAE,yBAAyB,CAAC;IAClD,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"inspiredesign_run.d.ts","sourceRoot":"","sources":["../../src/tools/inspiredesign_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAevC,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAkDzE"}
1
+ {"version":3,"file":"inspiredesign_run.d.ts","sourceRoot":"","sources":["../../src/tools/inspiredesign_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAgBvC,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAkDzE"}
@@ -1 +1 @@
1
- {"version":3,"file":"macro_resolve.d.ts","sourceRoot":"","sources":["../../src/tools/macro_resolve.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAQvC,KAAK,kBAAkB,GAAG;IACxB,0BAA0B,CAAC,EAAE,MAAM;QACjC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;YAAE,eAAe,CAAC,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;QAClG,IAAI,EAAE,MAAM,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC1E,CAAC;CACH,CAAC;AAEF,KAAK,uBAAuB,GAAG,eAAe,CAAC;AAE/C,iBAAe,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAOpE;AAED,iBAAS,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,uBAAuB,CA4CjG;AAGD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAoFrE;AAED,eAAO,MAAM,QAAQ;;;CAGpB,CAAC"}
1
+ {"version":3,"file":"macro_resolve.d.ts","sourceRoot":"","sources":["../../src/tools/macro_resolve.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AASvC,KAAK,kBAAkB,GAAG;IACxB,0BAA0B,CAAC,EAAE,MAAM;QACjC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;YAAE,eAAe,CAAC,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;QAClG,IAAI,EAAE,MAAM,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC1E,CAAC;CACH,CAAC;AAEF,KAAK,uBAAuB,GAAG,eAAe,CAAC;AAE/C,iBAAe,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAOpE;AAED,iBAAS,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,uBAAuB,CA4CjG;AAGD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CA8FrE;AAED,eAAO,MAAM,QAAQ;;;CAGpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"product_video_run.d.ts","sourceRoot":"","sources":["../../src/tools/product_video_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAkCvC,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAiDxE"}
1
+ {"version":3,"file":"product_video_run.d.ts","sourceRoot":"","sources":["../../src/tools/product_video_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAmCvC,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAiDxE"}
@@ -1 +1 @@
1
- {"version":3,"file":"research_run.d.ts","sourceRoot":"","sources":["../../src/tools/research_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAavC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CA+CpE"}
1
+ {"version":3,"file":"research_run.d.ts","sourceRoot":"","sources":["../../src/tools/research_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAcvC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CA+CpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"shopping_run.d.ts","sourceRoot":"","sources":["../../src/tools/shopping_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAYvC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAyCpE"}
1
+ {"version":3,"file":"shopping_run.d.ts","sourceRoot":"","sources":["../../src/tools/shopping_run.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAavC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CAyCpE"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDeps } from "./deps";
2
+ export declare const resolveWorkflowToolOutputDir: (deps: Pick<ToolDeps, "workspaceRoot">, outputDir?: string) => string | undefined;
3
+ //# sourceMappingURL=workflow-output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-output.d.ts","sourceRoot":"","sources":["../../src/tools/workflow-output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGvC,eAAO,MAAM,4BAA4B,GACvC,MAAM,IAAI,CAAC,QAAQ,EAAE,eAAe,CAAC,EACrC,YAAY,MAAM,KACjB,MAAM,GAAG,SAQX,CAAC"}
@@ -0,0 +1,94 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ parseOptionalStringFlag
4
+ } from "./chunk-RPXWUCQQ.js";
5
+ import {
6
+ callDaemon
7
+ } from "./chunk-MD655IPO.js";
8
+ import "./chunk-COAOWH3G.js";
9
+ import "./chunk-QOMWCRE3.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-4BEJVZRK.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/interact/type.ts
27
+ function parseTypeArgs(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 === "--ref") {
43
+ const value = rawArgs[i + 1];
44
+ if (!value) throw createUsageError("Missing value for --ref");
45
+ parsed.ref = value;
46
+ i += 1;
47
+ continue;
48
+ }
49
+ if (arg?.startsWith("--ref=")) {
50
+ parsed.ref = arg.split("=", 2)[1];
51
+ continue;
52
+ }
53
+ if (arg === "--text") {
54
+ const value = rawArgs[i + 1];
55
+ if (!value) throw createUsageError("Missing value for --text");
56
+ parsed.text = value;
57
+ i += 1;
58
+ continue;
59
+ }
60
+ if (arg?.startsWith("--text=")) {
61
+ parsed.text = arg.split("=", 2)[1];
62
+ continue;
63
+ }
64
+ if (arg === "--clear") {
65
+ parsed.clear = true;
66
+ continue;
67
+ }
68
+ if (arg === "--submit") {
69
+ parsed.submit = true;
70
+ continue;
71
+ }
72
+ }
73
+ return parsed;
74
+ }
75
+ async function runType(args) {
76
+ const { sessionId, ref, text, clear, submit } = parseTypeArgs(args.rawArgs);
77
+ const targetId = parseOptionalStringFlag(args.rawArgs, "--target-id");
78
+ if (!sessionId) throw createUsageError("Missing --session-id");
79
+ if (!ref) throw createUsageError("Missing --ref");
80
+ if (!text) throw createUsageError("Missing --text");
81
+ const result = await callDaemon("interact.type", {
82
+ sessionId,
83
+ ref,
84
+ text,
85
+ clear,
86
+ submit,
87
+ ...typeof targetId === "string" ? { targetId } : {}
88
+ });
89
+ return { success: true, message: "Type complete.", data: result };
90
+ }
91
+ export {
92
+ runType
93
+ };
94
+ //# sourceMappingURL=type-IYBN3ZLR.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/interact/type.ts"],"sourcesContent":["import type { ParsedArgs } from \"../../args\";\nimport { callDaemon } from \"../../client\";\nimport { createUsageError } from \"../../errors\";\nimport { parseOptionalStringFlag } from \"../../utils/parse\";\n\nfunction parseTypeArgs(rawArgs: string[]): { sessionId?: string; ref?: string; text?: string; clear?: boolean; submit?: boolean } {\n const parsed: { sessionId?: string; ref?: string; text?: string; clear?: boolean; submit?: boolean } = {};\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 === \"--ref\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --ref\");\n parsed.ref = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--ref=\")) {\n parsed.ref = arg.split(\"=\", 2)[1];\n continue;\n }\n if (arg === \"--text\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --text\");\n parsed.text = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--text=\")) {\n parsed.text = arg.split(\"=\", 2)[1];\n continue;\n }\n if (arg === \"--clear\") {\n parsed.clear = true;\n continue;\n }\n if (arg === \"--submit\") {\n parsed.submit = true;\n continue;\n }\n }\n return parsed;\n}\n\nexport async function runType(args: ParsedArgs) {\n const { sessionId, ref, text, clear, submit } = parseTypeArgs(args.rawArgs);\n const targetId = parseOptionalStringFlag(args.rawArgs, \"--target-id\");\n if (!sessionId) throw createUsageError(\"Missing --session-id\");\n if (!ref) throw createUsageError(\"Missing --ref\");\n if (!text) throw createUsageError(\"Missing --text\");\n const result = await callDaemon(\"interact.type\", {\n sessionId,\n ref,\n text,\n clear,\n submit,\n ...(typeof targetId === \"string\" ? { targetId } : {})\n });\n return { success: true, message: \"Type complete.\", data: result };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,cAAc,SAA2G;AAChI,QAAM,SAAiG,CAAC;AACxG,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;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,WAAW;AACrB,aAAO,QAAQ;AACf;AAAA,IACF;AACA,QAAI,QAAQ,YAAY;AACtB,aAAO,SAAS;AAChB;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;AAEA,eAAsB,QAAQ,MAAkB;AAC9C,QAAM,EAAE,WAAW,KAAK,MAAM,OAAO,OAAO,IAAI,cAAc,KAAK,OAAO;AAC1E,QAAM,WAAW,wBAAwB,KAAK,SAAS,aAAa;AACpE,MAAI,CAAC,UAAW,OAAM,iBAAiB,sBAAsB;AAC7D,MAAI,CAAC,IAAK,OAAM,iBAAiB,eAAe;AAChD,MAAI,CAAC,KAAM,OAAM,iBAAiB,gBAAgB;AAClD,QAAM,SAAS,MAAM,WAAW,iBAAiB;AAAA,IAC/C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAI,OAAO,aAAa,WAAW,EAAE,SAAS,IAAI,CAAC;AAAA,EACrD,CAAC;AACD,SAAO,EAAE,SAAS,MAAM,SAAS,kBAAkB,MAAM,OAAO;AAClE;","names":[]}
@@ -0,0 +1,71 @@
1
+ import "./chunk-RJNI3BHT.js";
2
+ import {
3
+ parseOptionalStringFlag
4
+ } from "./chunk-RPXWUCQQ.js";
5
+ import {
6
+ callDaemon
7
+ } from "./chunk-MD655IPO.js";
8
+ import "./chunk-COAOWH3G.js";
9
+ import "./chunk-QOMWCRE3.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-4BEJVZRK.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/interact/uncheck.ts
27
+ function parseUncheckArgs(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 === "--ref") {
43
+ const value = rawArgs[i + 1];
44
+ if (!value) throw createUsageError("Missing value for --ref");
45
+ parsed.ref = value;
46
+ i += 1;
47
+ continue;
48
+ }
49
+ if (arg?.startsWith("--ref=")) {
50
+ parsed.ref = arg.split("=", 2)[1];
51
+ continue;
52
+ }
53
+ }
54
+ return parsed;
55
+ }
56
+ async function runUncheck(args) {
57
+ const { sessionId, ref } = parseUncheckArgs(args.rawArgs);
58
+ const targetId = parseOptionalStringFlag(args.rawArgs, "--target-id");
59
+ if (!sessionId) throw createUsageError("Missing --session-id");
60
+ if (!ref) throw createUsageError("Missing --ref");
61
+ const result = await callDaemon("interact.uncheck", {
62
+ sessionId,
63
+ ref,
64
+ ...typeof targetId === "string" ? { targetId } : {}
65
+ });
66
+ return { success: true, message: "Uncheck complete.", data: result };
67
+ }
68
+ export {
69
+ runUncheck
70
+ };
71
+ //# sourceMappingURL=uncheck-SG737EGI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/cli/commands/interact/uncheck.ts"],"sourcesContent":["import type { ParsedArgs } from \"../../args\";\nimport { callDaemon } from \"../../client\";\nimport { createUsageError } from \"../../errors\";\nimport { parseOptionalStringFlag } from \"../../utils/parse\";\n\nfunction parseUncheckArgs(rawArgs: string[]): { sessionId?: string; ref?: string } {\n const parsed: { sessionId?: string; ref?: 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 === \"--ref\") {\n const value = rawArgs[i + 1];\n if (!value) throw createUsageError(\"Missing value for --ref\");\n parsed.ref = value;\n i += 1;\n continue;\n }\n if (arg?.startsWith(\"--ref=\")) {\n parsed.ref = arg.split(\"=\", 2)[1];\n continue;\n }\n }\n return parsed;\n}\n\nexport async function runUncheck(args: ParsedArgs) {\n const { sessionId, ref } = parseUncheckArgs(args.rawArgs);\n const targetId = parseOptionalStringFlag(args.rawArgs, \"--target-id\");\n if (!sessionId) throw createUsageError(\"Missing --session-id\");\n if (!ref) throw createUsageError(\"Missing --ref\");\n const result = await callDaemon(\"interact.uncheck\", {\n sessionId,\n ref,\n ...(typeof targetId === \"string\" ? { targetId } : {})\n });\n return { success: true, message: \"Uncheck complete.\", data: result };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,iBAAiB,SAAyD;AACjF,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,WAAW,MAAkB;AACjD,QAAM,EAAE,WAAW,IAAI,IAAI,iBAAiB,KAAK,OAAO;AACxD,QAAM,WAAW,wBAAwB,KAAK,SAAS,aAAa;AACpE,MAAI,CAAC,UAAW,OAAM,iBAAiB,sBAAsB;AAC7D,MAAI,CAAC,IAAK,OAAM,iBAAiB,eAAe;AAChD,QAAM,SAAS,MAAM,WAAW,oBAAoB;AAAA,IAClD;AAAA,IACA;AAAA,IACA,GAAI,OAAO,aAAa,WAAW,EAAE,SAAS,IAAI,CAAC;AAAA,EACrD,CAAC;AACD,SAAO,EAAE,SAAS,MAAM,SAAS,qBAAqB,MAAM,OAAO;AACrE;","names":[]}
@@ -0,0 +1,91 @@
1
+ import {
2
+ hasBundledSkillArtifacts,
3
+ hasManagedBundledSkillInstall
4
+ } from "./chunk-KDSNXS6N.js";
5
+ import {
6
+ getGlobalConfigPath,
7
+ getLocalConfigPath,
8
+ hasPlugin,
9
+ readConfig,
10
+ removePluginFromContent
11
+ } from "./chunk-7THCPS52.js";
12
+ import "./chunk-3ILXPKSJ.js";
13
+ import "./chunk-TBUCZX4A.js";
14
+
15
+ // src/cli/commands/uninstall.ts
16
+ import * as fs from "fs";
17
+ import * as path from "path";
18
+ import * as os from "os";
19
+ function hasInstalledConfig(mode) {
20
+ const configPath = mode === "global" ? getGlobalConfigPath() : getLocalConfigPath();
21
+ try {
22
+ const { config } = readConfig(configPath);
23
+ return hasPlugin(config);
24
+ } catch {
25
+ return false;
26
+ }
27
+ }
28
+ function getPluginConfigPath(mode) {
29
+ if (mode === "global") {
30
+ const configDir = process.env.OPENCODE_CONFIG_DIR || path.join(os.homedir(), ".config", "opencode");
31
+ return path.join(configDir, "opendevbrowser.jsonc");
32
+ }
33
+ return path.join(process.cwd(), "opendevbrowser.jsonc");
34
+ }
35
+ function removePluginConfigFile(mode) {
36
+ const configPath = getPluginConfigPath(mode);
37
+ if (fs.existsSync(configPath)) {
38
+ fs.unlinkSync(configPath);
39
+ return true;
40
+ }
41
+ return false;
42
+ }
43
+ function runUninstall(mode, deleteConfigFile = false) {
44
+ const configPath = mode === "global" ? getGlobalConfigPath() : getLocalConfigPath();
45
+ try {
46
+ const { content, config } = readConfig(configPath);
47
+ if (!hasPlugin(config)) {
48
+ return {
49
+ success: true,
50
+ message: `No plugin config found in ${configPath}`,
51
+ configPath,
52
+ removed: false,
53
+ configFileDeleted: false
54
+ };
55
+ }
56
+ const newContent = removePluginFromContent(content, "opendevbrowser");
57
+ fs.writeFileSync(configPath, newContent, "utf-8");
58
+ let configFileDeleted = false;
59
+ if (deleteConfigFile) {
60
+ configFileDeleted = removePluginConfigFile(mode);
61
+ }
62
+ return {
63
+ success: true,
64
+ message: `Removed opendevbrowser from ${configPath}`,
65
+ configPath,
66
+ removed: true,
67
+ configFileDeleted
68
+ };
69
+ } catch (error) {
70
+ const message = error instanceof Error ? error.message : String(error);
71
+ return {
72
+ success: false,
73
+ message: `Failed to uninstall: ${message}`,
74
+ configPath,
75
+ removed: false,
76
+ configFileDeleted: false
77
+ };
78
+ }
79
+ }
80
+ function findInstalledConfigs() {
81
+ return {
82
+ global: hasInstalledConfig("global") || hasManagedBundledSkillInstall("global") || hasBundledSkillArtifacts("global"),
83
+ local: hasInstalledConfig("local") || hasManagedBundledSkillInstall("local") || hasBundledSkillArtifacts("local")
84
+ };
85
+ }
86
+ export {
87
+ findInstalledConfigs,
88
+ hasInstalledConfig,
89
+ runUninstall
90
+ };
91
+ //# sourceMappingURL=uninstall-KYKGJAX7.js.map