opendevbrowser 0.0.33 → 0.0.34
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.
- package/README.md +1 -1
- package/dist/{accessibility-snapshot-JSPFVWZ6.js → accessibility-snapshot-VCBXK47S.js} +7 -7
- package/dist/{active-window-2OB2MSCR.js → active-window-7EUN36LZ.js} +7 -7
- package/dist/{annotate-VDZBZBKZ.js → annotate-VLBK7YB6.js} +6 -6
- package/dist/{attr-7XIO4MCH.js → attr-JNANQKM6.js} +6 -6
- package/dist/browser/browser-manager.d.ts.map +1 -1
- package/dist/browser/manager-types.d.ts +3 -0
- package/dist/browser/manager-types.d.ts.map +1 -1
- package/dist/browser/ops-browser-manager.d.ts.map +1 -1
- package/dist/browser/screencast-recorder.d.ts +1 -0
- package/dist/browser/screencast-recorder.d.ts.map +1 -1
- package/dist/{canvas-N4PAA274.js → canvas-V5LO4JVL.js} +6 -6
- package/dist/{capture-desktop-T5YO3EBI.js → capture-desktop-FKVDWTVG.js} +7 -7
- package/dist/{capture-window-UKEUBWKH.js → capture-window-QVPM2DN2.js} +7 -7
- package/dist/{check-PQB6KKMN.js → check-V3CWZ56S.js} +6 -6
- package/dist/{checked-RNZIMCU6.js → checked-Q27Q6YZN.js} +6 -6
- package/dist/{chunk-FBKPDILE.js → chunk-5FDXH4CS.js} +315 -37
- package/dist/chunk-5FDXH4CS.js.map +1 -0
- package/dist/{chunk-J3KYGJRQ.js → chunk-G6NQ7WYD.js} +2 -2
- package/dist/{chunk-27W46IKI.js → chunk-GC2FWISX.js} +22 -11
- package/dist/chunk-GC2FWISX.js.map +1 -0
- package/dist/{chunk-MJF67OTH.js → chunk-NX2XYJP5.js} +2 -2
- package/dist/{chunk-FDBUB7BM.js → chunk-OJAUKABV.js} +2 -2
- package/dist/{chunk-HMRANSDX.js → chunk-QXJDJDSZ.js} +34 -13
- package/dist/chunk-QXJDJDSZ.js.map +1 -0
- package/dist/{chunk-SKFB5ICF.js → chunk-TI5I6UWY.js} +8 -3
- package/dist/chunk-TI5I6UWY.js.map +1 -0
- package/dist/{chunk-W6YPVNDX.js → chunk-VTGG5ZU2.js} +2 -2
- package/dist/{chunk-YRRRUGSQ.js → chunk-VX47SJZM.js} +2 -2
- package/dist/{chunk-JROW6ZNN.js → chunk-VY47VKXU.js} +3 -3
- package/dist/{chunk-NURQB55J.js → chunk-WY72GYAH.js} +2 -2
- package/dist/{chunk-EOX6U6Q4.js → chunk-XRDCSHKZ.js} +158 -110
- package/dist/chunk-XRDCSHKZ.js.map +1 -0
- package/dist/{chunk-52ZIOWVU.js → chunk-Z3HIX2SE.js} +3 -3
- package/dist/cli/commands/inspiredesign.d.ts.map +1 -1
- package/dist/cli/daemon-commands.d.ts.map +1 -1
- package/dist/cli/index.js +75 -75
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/utils/parse.d.ts +1 -0
- package/dist/cli/utils/parse.d.ts.map +1 -1
- package/dist/{click-U7ZFKSB4.js → click-EQDRSLR3.js} +6 -6
- package/dist/{clone-component-SWYAORTU.js → clone-component-SISUXTJS.js} +5 -5
- package/dist/{clone-page-WJ6UJOJG.js → clone-page-MLDPCBOY.js} +5 -5
- package/dist/{close-VKIGIKVT.js → close-2LQMJVOA.js} +5 -5
- package/dist/{close-NAVIHZ2T.js → close-7J7EV237.js} +5 -5
- package/dist/{connect-XVG2MOZL.js → connect-JFRSIW5M.js} +6 -6
- package/dist/{console-poll-XI5BZPL7.js → console-poll-NSVVUNEC.js} +6 -6
- package/dist/{cookie-import-QELKE7TK.js → cookie-import-B7IQTGTN.js} +5 -5
- package/dist/{cookie-list-QDA6KWIY.js → cookie-list-YHG7JCZZ.js} +5 -5
- package/dist/{daemon-CA4UIIZQ.js → daemon-ENU4FOV4.js} +4 -4
- package/dist/daemon-fingerprint.json +1 -1
- package/dist/{debug-trace-snapshot-AT4GAO57.js → debug-trace-snapshot-KLGU2AWY.js} +6 -6
- package/dist/{dialog-O3V2IBFH.js → dialog-MUVQIERS.js} +6 -6
- package/dist/{disconnect-NAX5TPTG.js → disconnect-KELQJ45J.js} +5 -5
- package/dist/{enabled-VT4FJXDX.js → enabled-SF6UU5HG.js} +6 -6
- package/dist/{goto-GBJG5NC4.js → goto-AZQWXYPG.js} +6 -6
- package/dist/guidance/context.d.ts.map +1 -1
- package/dist/guidance/recipes/generic.d.ts.map +1 -1
- package/dist/guidance/recipes/pinterest.d.ts.map +1 -1
- package/dist/guidance/recipes/site-recipe-validation.d.ts +27 -0
- package/dist/guidance/recipes/site-recipe-validation.d.ts.map +1 -0
- package/dist/guidance/types.d.ts +1 -0
- package/dist/guidance/types.d.ts.map +1 -1
- package/dist/{help-SUI4H77K.js → help-B44IBHXL.js} +3 -3
- package/dist/{hover-476ZNQZE.js → hover-MQRAKKVU.js} +6 -6
- package/dist/{html-5C4TXOV3.js → html-PLRTU2WS.js} +6 -6
- package/dist/index.js +49 -14
- package/dist/index.js.map +1 -1
- package/dist/{inspector-73ARPCIV.js → inspector-IY4GBIT6.js} +7 -7
- package/dist/{inspector-audit-QT6QY7KS.js → inspector-audit-7MQCRJHD.js} +9 -9
- package/dist/{inspector-plan-JRNSGN2Z.js → inspector-plan-ZAUDHBET.js} +7 -7
- package/dist/inspiredesign/contract.d.ts +1 -0
- package/dist/inspiredesign/contract.d.ts.map +1 -1
- package/dist/inspiredesign/reference-pattern-board.d.ts +5 -0
- package/dist/inspiredesign/reference-pattern-board.d.ts.map +1 -1
- package/dist/{inspiredesign-IPVZDLSQ.js → inspiredesign-VHPEO3UK.js} +80 -27
- package/dist/inspiredesign-VHPEO3UK.js.map +1 -0
- package/dist/{launch-B35YDRQC.js → launch-OCTWPTV5.js} +6 -6
- package/dist/{list-YETWKTKY.js → list-HUSYADUS.js} +5 -5
- package/dist/{list-JV55JVGB.js → list-JWKAMAUA.js} +5 -5
- package/dist/{macro-resolve-DQK4B3W3.js → macro-resolve-WOXMPZDQ.js} +6 -6
- package/dist/{network-poll-4GWHCJXI.js → network-poll-WHB62OEF.js} +6 -6
- package/dist/{new-XDCQPIEG.js → new-IKZBYBNK.js} +5 -5
- package/dist/{open-GIM3ZCSV.js → open-UA2VI6ZP.js} +5 -5
- package/dist/opendevbrowser.js +49 -14
- package/dist/opendevbrowser.js.map +1 -1
- package/dist/{perf-26VBXDPI.js → perf-DICS3VKH.js} +6 -6
- package/dist/{pointer-down-O3VSNAXW.js → pointer-down-2XPRZFJC.js} +7 -7
- package/dist/{pointer-drag-WQ5QGE6J.js → pointer-drag-7NY4BOLH.js} +7 -7
- package/dist/{pointer-move-4N4D7JY2.js → pointer-move-FWEXMH37.js} +7 -7
- package/dist/{pointer-up-CQC4NPDX.js → pointer-up-VU2OHK5D.js} +7 -7
- package/dist/{press-XGJD45CU.js → press-W7IZ3FCX.js} +6 -6
- package/dist/{product-video-HD4ZOUI7.js → product-video-XCZ6CHR5.js} +7 -7
- package/dist/providers/browser-output-artifacts.d.ts +13 -0
- package/dist/providers/browser-output-artifacts.d.ts.map +1 -0
- package/dist/providers/renderer.d.ts.map +1 -1
- package/dist/providers/workflows.d.ts.map +1 -1
- package/dist/{providers-KKNPJSQK.js → providers-XCNSU3T6.js} +2 -2
- package/dist/public-surface/generated-manifest.d.ts +3 -3
- package/dist/public-surface/generated-manifest.d.ts.map +1 -1
- package/dist/public-surface/source.d.ts.map +1 -1
- package/dist/{research-VUWWEQ4R.js → research-AYCKHOWK.js} +7 -7
- package/dist/{review-LZ3TA7U7.js → review-PP2UNSMJ.js} +7 -7
- package/dist/{review-desktop-LAO7U7T3.js → review-desktop-3JOJFUEJ.js} +7 -7
- package/dist/{rpc-HKNIVFGC.js → rpc-7EPTJQQ6.js} +6 -6
- package/dist/{run-SHCF53FO.js → run-P6UJS3D4.js} +4 -4
- package/dist/{screencast-start-JHMQZVWJ.js → screencast-start-ZZYNH2HT.js} +6 -6
- package/dist/{screencast-stop-RWQTWWQS.js → screencast-stop-Y6ADFOFA.js} +6 -6
- package/dist/{screenshot-QHFYO6PB.js → screenshot-CJB7PMAF.js} +6 -6
- package/dist/{scroll-L3FTMAV4.js → scroll-BP5MA4ZT.js} +6 -6
- package/dist/{scroll-into-view-JVDHX4WU.js → scroll-into-view-O3RDWLM2.js} +6 -6
- package/dist/{select-X4BO7GTB.js → select-QLCNRI36.js} +6 -6
- package/dist/{serve-JIMIBCNO.js → serve-OO2MQWGL.js} +5 -5
- package/dist/{shopping-EGSDP2GL.js → shopping-UYHCYPAH.js} +7 -7
- package/dist/{snapshot-QGJ7RDNV.js → snapshot-SXYZ3CMC.js} +6 -6
- package/dist/{status-CKGPNYIH.js → status-AL2AHVA5.js} +5 -5
- package/dist/{status-LEBY2X7N.js → status-QQW7REK4.js} +7 -7
- package/dist/{status-capabilities-6QTWNGKM.js → status-capabilities-AVHJYQQQ.js} +7 -7
- package/dist/{text-VUZU7D3L.js → text-B6Z47EOA.js} +6 -6
- package/dist/tools/inspiredesign_run.d.ts.map +1 -1
- package/dist/tools/product_video_run.d.ts.map +1 -1
- package/dist/{type-N5SURP74.js → type-LR3F3SQY.js} +6 -6
- package/dist/{uncheck-JFMK3SSY.js → uncheck-5PJEHR7J.js} +6 -6
- package/dist/{upload-KFUYLL7M.js → upload-HQ3QN2OW.js} +6 -6
- package/dist/{use-CNMPP2ED.js → use-KFZLMRUH.js} +5 -5
- package/dist/{value-J335MPZE.js → value-TKUFUK5I.js} +6 -6
- package/dist/{visible-YQZWWPBZ.js → visible-P5Z2N2QR.js} +6 -6
- package/dist/{wait-IC7YJJPJ.js → wait-BYSHJPSC.js} +6 -6
- package/dist/{windows-AGVQ3KX3.js → windows-6GTD25EU.js} +7 -7
- package/extension/manifest.json +1 -1
- package/package.json +1 -1
- package/dist/chunk-27W46IKI.js.map +0 -1
- package/dist/chunk-EOX6U6Q4.js.map +0 -1
- package/dist/chunk-FBKPDILE.js.map +0 -1
- package/dist/chunk-HMRANSDX.js.map +0 -1
- package/dist/chunk-SKFB5ICF.js.map +0 -1
- package/dist/inspiredesign-IPVZDLSQ.js.map +0 -1
- /package/dist/{accessibility-snapshot-JSPFVWZ6.js.map → accessibility-snapshot-VCBXK47S.js.map} +0 -0
- /package/dist/{active-window-2OB2MSCR.js.map → active-window-7EUN36LZ.js.map} +0 -0
- /package/dist/{annotate-VDZBZBKZ.js.map → annotate-VLBK7YB6.js.map} +0 -0
- /package/dist/{attr-7XIO4MCH.js.map → attr-JNANQKM6.js.map} +0 -0
- /package/dist/{canvas-N4PAA274.js.map → canvas-V5LO4JVL.js.map} +0 -0
- /package/dist/{capture-desktop-T5YO3EBI.js.map → capture-desktop-FKVDWTVG.js.map} +0 -0
- /package/dist/{capture-window-UKEUBWKH.js.map → capture-window-QVPM2DN2.js.map} +0 -0
- /package/dist/{check-PQB6KKMN.js.map → check-V3CWZ56S.js.map} +0 -0
- /package/dist/{checked-RNZIMCU6.js.map → checked-Q27Q6YZN.js.map} +0 -0
- /package/dist/{chunk-J3KYGJRQ.js.map → chunk-G6NQ7WYD.js.map} +0 -0
- /package/dist/{chunk-MJF67OTH.js.map → chunk-NX2XYJP5.js.map} +0 -0
- /package/dist/{chunk-FDBUB7BM.js.map → chunk-OJAUKABV.js.map} +0 -0
- /package/dist/{chunk-W6YPVNDX.js.map → chunk-VTGG5ZU2.js.map} +0 -0
- /package/dist/{chunk-YRRRUGSQ.js.map → chunk-VX47SJZM.js.map} +0 -0
- /package/dist/{chunk-JROW6ZNN.js.map → chunk-VY47VKXU.js.map} +0 -0
- /package/dist/{chunk-NURQB55J.js.map → chunk-WY72GYAH.js.map} +0 -0
- /package/dist/{chunk-52ZIOWVU.js.map → chunk-Z3HIX2SE.js.map} +0 -0
- /package/dist/{click-U7ZFKSB4.js.map → click-EQDRSLR3.js.map} +0 -0
- /package/dist/{clone-component-SWYAORTU.js.map → clone-component-SISUXTJS.js.map} +0 -0
- /package/dist/{clone-page-WJ6UJOJG.js.map → clone-page-MLDPCBOY.js.map} +0 -0
- /package/dist/{close-VKIGIKVT.js.map → close-2LQMJVOA.js.map} +0 -0
- /package/dist/{close-NAVIHZ2T.js.map → close-7J7EV237.js.map} +0 -0
- /package/dist/{connect-XVG2MOZL.js.map → connect-JFRSIW5M.js.map} +0 -0
- /package/dist/{console-poll-XI5BZPL7.js.map → console-poll-NSVVUNEC.js.map} +0 -0
- /package/dist/{cookie-import-QELKE7TK.js.map → cookie-import-B7IQTGTN.js.map} +0 -0
- /package/dist/{cookie-list-QDA6KWIY.js.map → cookie-list-YHG7JCZZ.js.map} +0 -0
- /package/dist/{daemon-CA4UIIZQ.js.map → daemon-ENU4FOV4.js.map} +0 -0
- /package/dist/{debug-trace-snapshot-AT4GAO57.js.map → debug-trace-snapshot-KLGU2AWY.js.map} +0 -0
- /package/dist/{dialog-O3V2IBFH.js.map → dialog-MUVQIERS.js.map} +0 -0
- /package/dist/{disconnect-NAX5TPTG.js.map → disconnect-KELQJ45J.js.map} +0 -0
- /package/dist/{enabled-VT4FJXDX.js.map → enabled-SF6UU5HG.js.map} +0 -0
- /package/dist/{goto-GBJG5NC4.js.map → goto-AZQWXYPG.js.map} +0 -0
- /package/dist/{help-SUI4H77K.js.map → help-B44IBHXL.js.map} +0 -0
- /package/dist/{hover-476ZNQZE.js.map → hover-MQRAKKVU.js.map} +0 -0
- /package/dist/{html-5C4TXOV3.js.map → html-PLRTU2WS.js.map} +0 -0
- /package/dist/{inspector-73ARPCIV.js.map → inspector-IY4GBIT6.js.map} +0 -0
- /package/dist/{inspector-audit-QT6QY7KS.js.map → inspector-audit-7MQCRJHD.js.map} +0 -0
- /package/dist/{inspector-plan-JRNSGN2Z.js.map → inspector-plan-ZAUDHBET.js.map} +0 -0
- /package/dist/{launch-B35YDRQC.js.map → launch-OCTWPTV5.js.map} +0 -0
- /package/dist/{list-YETWKTKY.js.map → list-HUSYADUS.js.map} +0 -0
- /package/dist/{list-JV55JVGB.js.map → list-JWKAMAUA.js.map} +0 -0
- /package/dist/{macro-resolve-DQK4B3W3.js.map → macro-resolve-WOXMPZDQ.js.map} +0 -0
- /package/dist/{network-poll-4GWHCJXI.js.map → network-poll-WHB62OEF.js.map} +0 -0
- /package/dist/{new-XDCQPIEG.js.map → new-IKZBYBNK.js.map} +0 -0
- /package/dist/{open-GIM3ZCSV.js.map → open-UA2VI6ZP.js.map} +0 -0
- /package/dist/{perf-26VBXDPI.js.map → perf-DICS3VKH.js.map} +0 -0
- /package/dist/{pointer-down-O3VSNAXW.js.map → pointer-down-2XPRZFJC.js.map} +0 -0
- /package/dist/{pointer-drag-WQ5QGE6J.js.map → pointer-drag-7NY4BOLH.js.map} +0 -0
- /package/dist/{pointer-move-4N4D7JY2.js.map → pointer-move-FWEXMH37.js.map} +0 -0
- /package/dist/{pointer-up-CQC4NPDX.js.map → pointer-up-VU2OHK5D.js.map} +0 -0
- /package/dist/{press-XGJD45CU.js.map → press-W7IZ3FCX.js.map} +0 -0
- /package/dist/{product-video-HD4ZOUI7.js.map → product-video-XCZ6CHR5.js.map} +0 -0
- /package/dist/{providers-KKNPJSQK.js.map → providers-XCNSU3T6.js.map} +0 -0
- /package/dist/{research-VUWWEQ4R.js.map → research-AYCKHOWK.js.map} +0 -0
- /package/dist/{review-LZ3TA7U7.js.map → review-PP2UNSMJ.js.map} +0 -0
- /package/dist/{review-desktop-LAO7U7T3.js.map → review-desktop-3JOJFUEJ.js.map} +0 -0
- /package/dist/{rpc-HKNIVFGC.js.map → rpc-7EPTJQQ6.js.map} +0 -0
- /package/dist/{run-SHCF53FO.js.map → run-P6UJS3D4.js.map} +0 -0
- /package/dist/{screencast-start-JHMQZVWJ.js.map → screencast-start-ZZYNH2HT.js.map} +0 -0
- /package/dist/{screencast-stop-RWQTWWQS.js.map → screencast-stop-Y6ADFOFA.js.map} +0 -0
- /package/dist/{screenshot-QHFYO6PB.js.map → screenshot-CJB7PMAF.js.map} +0 -0
- /package/dist/{scroll-L3FTMAV4.js.map → scroll-BP5MA4ZT.js.map} +0 -0
- /package/dist/{scroll-into-view-JVDHX4WU.js.map → scroll-into-view-O3RDWLM2.js.map} +0 -0
- /package/dist/{select-X4BO7GTB.js.map → select-QLCNRI36.js.map} +0 -0
- /package/dist/{serve-JIMIBCNO.js.map → serve-OO2MQWGL.js.map} +0 -0
- /package/dist/{shopping-EGSDP2GL.js.map → shopping-UYHCYPAH.js.map} +0 -0
- /package/dist/{snapshot-QGJ7RDNV.js.map → snapshot-SXYZ3CMC.js.map} +0 -0
- /package/dist/{status-CKGPNYIH.js.map → status-AL2AHVA5.js.map} +0 -0
- /package/dist/{status-LEBY2X7N.js.map → status-QQW7REK4.js.map} +0 -0
- /package/dist/{status-capabilities-6QTWNGKM.js.map → status-capabilities-AVHJYQQQ.js.map} +0 -0
- /package/dist/{text-VUZU7D3L.js.map → text-B6Z47EOA.js.map} +0 -0
- /package/dist/{type-N5SURP74.js.map → type-LR3F3SQY.js.map} +0 -0
- /package/dist/{uncheck-JFMK3SSY.js.map → uncheck-5PJEHR7J.js.map} +0 -0
- /package/dist/{upload-KFUYLL7M.js.map → upload-HQ3QN2OW.js.map} +0 -0
- /package/dist/{use-CNMPP2ED.js.map → use-KFZLMRUH.js.map} +0 -0
- /package/dist/{value-J335MPZE.js.map → value-TKUFUK5I.js.map} +0 -0
- /package/dist/{visible-YQZWWPBZ.js.map → visible-P5Z2N2QR.js.map} +0 -0
- /package/dist/{wait-IC7YJJPJ.js.map → wait-BYSHJPSC.js.map} +0 -0
- /package/dist/{windows-AGVQ3KX3.js.map → windows-6GTD25EU.js.map} +0 -0
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/cli/commands/registry.ts","../../package.json","../../src/cli/index.ts"],"sourcesContent":["import type { CommandDefinition } from \"./types\";\n\nconst registry = new Map<string, CommandDefinition>();\n\nexport function registerCommand(definition: CommandDefinition): void {\n registry.set(definition.name, definition);\n}\n\nexport function getCommand(name: string): CommandDefinition | undefined {\n return registry.get(name);\n}\n\nexport function listCommands(): CommandDefinition[] {\n return Array.from(registry.values());\n}\n","{\n \"name\": \"opendevbrowser\",\n \"version\": \"0.0.33\",\n \"description\": \"Browser automation runtime with snapshot-refs-actions, browser replay screencasts, public read-only desktop observation, and browser-scoped computer-use orchestration\",\n \"type\": \"module\",\n \"main\": \"dist/index.js\",\n \"types\": \"dist/index.d.ts\",\n \"bin\": {\n \"opendevbrowser\": \"dist/cli/index.js\"\n },\n \"files\": [\n \"dist\",\n \"skills\",\n \"scripts/postinstall-sync-skills.mjs\",\n \"scripts/native\",\n \"extension/canvas.html\",\n \"extension/manifest.json\",\n \"extension/popup.html\",\n \"extension/dist\",\n \"extension/icons\"\n ],\n \"keywords\": [\n \"opencode\",\n \"plugin\",\n \"browser\",\n \"automation\",\n \"cdp\",\n \"playwright\",\n \"testing\",\n \"web-scraping\",\n \"chrome\",\n \"annotation\",\n \"design-canvas\",\n \"screencast\",\n \"desktop-observation\",\n \"browser-replay\",\n \"computer-use\",\n \"challenge-automation\"\n ],\n \"license\": \"MIT\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/freshtechbro/opendevbrowser.git\"\n },\n \"engines\": {\n \"node\": \">=18\"\n },\n \"scripts\": {\n \"build\": \"node scripts/run-package-tool.mjs tsup --config tsup.config.ts && node scripts/run-package-tool.mjs tsc --emitDeclarationOnly --declaration --declarationMap -p tsconfig.json && node scripts/postbuild-dist.mjs\",\n \"dev\": \"node scripts/run-package-tool.mjs tsup --config tsup.config.ts --dts --watch\",\n \"lint\": \"node scripts/run-package-tool.mjs eslint \\\"src/**/*.ts\\\" \\\"tests/**/*.ts\\\"\",\n \"typecheck\": \"node scripts/run-package-tool.mjs tsc --noEmit -p tsconfig.json\",\n \"test\": \"node scripts/run-vitest-coverage.mjs\",\n \"test:release-gate\": \"node scripts/release-gate-test-groups.mjs\",\n \"test:release-gate:g1\": \"node scripts/release-gate-test-groups.mjs --group 1\",\n \"test:release-gate:g2\": \"node scripts/release-gate-test-groups.mjs --group 2\",\n \"test:release-gate:g3\": \"node scripts/release-gate-test-groups.mjs --group 3\",\n \"test:release-gate:g4\": \"node scripts/release-gate-test-groups.mjs --group 4\",\n \"test:release-gate:g5\": \"node scripts/release-gate-test-groups.mjs --group 5\",\n \"extension:sync\": \"node scripts/sync-extension-version.mjs\",\n \"extension:build\": \"npm run extension:sync && node scripts/run-package-tool.mjs tsc -p extension/tsconfig.json && node scripts/copy-extension-assets.mjs\",\n \"extension:pack\": \"cd extension && zip -r ../opendevbrowser-extension.zip manifest.json popup.html canvas.html dist/ icons/\",\n \"extension:store\": \"node scripts/chrome-store-publish.mjs\",\n \"version:check\": \"node scripts/verify-versions.mjs\",\n \"prepack\": \"npm run version:check && npm run build && npm run extension:build\",\n \"postinstall\": \"node scripts/postinstall-sync-skills.mjs\"\n },\n \"dependencies\": {\n \"@opencode-ai/plugin\": \"^1.2.25\",\n \"@puppeteer/browsers\": \"^2.13.0\",\n \"async-mutex\": \"^0.5.0\",\n \"jsonc-parser\": \"^3.2.0\",\n \"parse5\": \"^8.0.0\",\n \"playwright-core\": \"^1.58.2\",\n \"typescript\": \"^5.9.3\",\n \"ws\": \"^8.19.0\",\n \"yjs\": \"^13.6.29\",\n \"zod\": \"^3.25.76\"\n },\n \"devDependencies\": {\n \"@types/chrome\": \"^0.1.37\",\n \"@types/node\": \"^20.19.35\",\n \"@types/ws\": \"^8.18.1\",\n \"@typescript-eslint/eslint-plugin\": \"^8.56.1\",\n \"@typescript-eslint/parser\": \"^8.56.1\",\n \"@vitest/coverage-v8\": \"^4.0.18\",\n \"eslint\": \"^9.39.3\",\n \"happy-dom\": \"^20.7.0\",\n \"tsup\": \"^8.5.1\",\n \"vitest\": \"^4.0.18\"\n }\n}\n","#!/usr/bin/env node\n\nimport { parseArgs, detectOutputFormat } from \"./args\";\nimport type { InstallMode, OutputFormat, ParsedArgs } from \"./args\";\nimport { registerCommand, getCommand } from \"./commands/registry\";\nimport type { CommandResult } from \"./commands/types\";\nimport { setDefaultLogSink, stderrSink } from \"../core/logging\";\nimport { flushOutputAndExit, writeOutput } from \"./output\";\nimport { formatErrorPayload, resolveExitCode, toCliError, EXIT_EXECUTION, EXIT_USAGE } from \"./errors\";\nimport type { CliError } from \"./errors\";\nimport { buildProviderFollowupErrorMessage } from \"./utils/workflow-message\";\nimport packageJson from \"../../package.json\";\n\nconst VERSION = typeof packageJson.version === \"string\" ? packageJson.version : \"0.0.0\";\n\ntype CommandRunner = (args: ParsedArgs) => Promise<CommandResult> | CommandResult;\n\nasync function runLazyCommand<ExportName extends string>(\n args: ParsedArgs,\n loader: () => Promise<Record<ExportName, CommandRunner>>,\n exportName: ExportName\n): Promise<CommandResult> {\n const commandModule = await loader();\n return commandModule[exportName](args);\n}\n\nasync function promptInstallMode(): Promise<InstallMode> {\n if (!process.stdin.isTTY) {\n console.log(\"Non-interactive mode detected. Using global install.\");\n return \"global\";\n }\n\n return new Promise((resolve) => {\n console.log(\"\\nWhere would you like to install opendevbrowser?\\n\");\n console.log(\" 1. Global (~/.config/opencode/opencode.json)\");\n console.log(\" 2. Local (./opencode.json in this project)\\n\");\n\n process.stdout.write(\"Enter choice [1]: \");\n\n process.stdin.setEncoding(\"utf8\");\n let resolved = false;\n let timeoutId: ReturnType<typeof setTimeout> | null = null;\n\n const cleanup = () => {\n if (timeoutId !== null) {\n clearTimeout(timeoutId);\n timeoutId = null;\n }\n };\n\n process.stdin.once(\"data\", (data) => {\n cleanup();\n if (resolved) return;\n resolved = true;\n const input = data.toString().trim();\n if (input === \"2\") {\n resolve(\"local\");\n } else {\n resolve(\"global\");\n }\n });\n\n process.stdin.once(\"close\", () => {\n cleanup();\n if (resolved) return;\n resolved = true;\n resolve(\"global\");\n });\n\n timeoutId = setTimeout(() => {\n timeoutId = null;\n if (resolved) return;\n resolved = true;\n console.log(\"\\nTimeout - using global install.\");\n resolve(\"global\");\n }, 30000);\n });\n}\n\nasync function promptUninstallMode(): Promise<InstallMode | null> {\n const { findInstalledConfigs } = await import(\"./commands/uninstall\");\n const installed = findInstalledConfigs();\n\n if (!installed.global && !installed.local) {\n console.log(\"opendevbrowser is not installed in any config.\");\n return null;\n }\n\n if (installed.global && !installed.local) {\n return \"global\";\n }\n\n if (!installed.global && installed.local) {\n return \"local\";\n }\n\n if (!process.stdin.isTTY) {\n console.log(\"Plugin found in both global and local configs. Use --global or --local flag.\");\n return null;\n }\n\n return new Promise((resolve) => {\n console.log(\"\\nopendevbrowser is installed in multiple locations:\\n\");\n console.log(\" 1. Global (~/.config/opencode/opencode.json)\");\n console.log(\" 2. Local (./opencode.json)\");\n console.log(\" 3. Cancel\\n\");\n\n process.stdout.write(\"Which to uninstall? [3]: \");\n\n process.stdin.setEncoding(\"utf8\");\n process.stdin.once(\"data\", (data) => {\n const input = data.toString().trim();\n if (input === \"1\") {\n resolve(\"global\");\n } else if (input === \"2\") {\n resolve(\"local\");\n } else {\n resolve(null);\n }\n });\n\n process.stdin.once(\"close\", () => {\n resolve(null);\n });\n });\n}\n\nfunction emitFatalError(error: CliError, outputFormat: OutputFormat): void {\n const message = buildProviderFollowupErrorMessage(error.message);\n if (outputFormat === \"text\") {\n console.error(`Error: ${message}`);\n if (error.exitCode === EXIT_USAGE) {\n console.error(\"\\nFor help: npx opendevbrowser --help\");\n }\n return;\n }\n\n writeOutput({ ...formatErrorPayload(error), error: message }, { format: outputFormat });\n}\n\nasync function main(): Promise<void> {\n let outputFormat: OutputFormat | null = null;\n let parseSucceeded = false;\n try {\n const args = parseArgs(process.argv);\n parseSucceeded = true;\n outputFormat = args.outputFormat;\n setDefaultLogSink(stderrSink);\n const outputOptions = { format: args.outputFormat, quiet: args.quiet };\n\n const emitResult = (result: CommandResult, payload?: Record<string, unknown>) => {\n const suppressOutput = Boolean(\n result.data\n && typeof result.data === \"object\"\n && \"suppressOutput\" in result.data\n && (result.data as { suppressOutput?: boolean }).suppressOutput\n );\n if (suppressOutput) {\n return;\n }\n if (args.outputFormat === \"text\") {\n if (result.message) {\n writeOutput(result.message, outputOptions);\n }\n } else {\n const exitCode = resolveExitCode(result);\n writeOutput({\n success: result.success,\n message: result.message,\n ...(result.success || !result.message ? {} : { error: result.message }),\n ...(result.success || exitCode === null ? {} : { exitCode }),\n ...(result.reason ? { reason: result.reason } : {}),\n ...payload\n }, outputOptions);\n }\n };\n\n const finishCommand = async (result: CommandResult): Promise<void> => {\n emitResult(result, result.data ? { data: result.data } : undefined);\n const exitCode = resolveExitCode(result);\n if (exitCode === null) {\n return;\n }\n await flushOutputAndExit(exitCode);\n };\n\n if (args.command === \"help\") {\n const { getHelpText } = await import(\"./help\");\n await finishCommand({ success: true, message: getHelpText() });\n return;\n }\n\n if (args.command === \"version\") {\n await finishCommand({ success: true, message: `opendevbrowser v${VERSION}` });\n return;\n }\n\n registerCommand({\n name: \"help\",\n description: \"Show help\",\n run: async () => {\n const { getHelpText } = await import(\"./help\");\n return { success: true, message: getHelpText() };\n }\n });\n\n registerCommand({\n name: \"version\",\n description: \"Show version\",\n run: () => ({ success: true, message: `opendevbrowser v${VERSION}` })\n });\n\n registerCommand({\n name: \"update\",\n description: \"Repair OpenCode package caches and refresh managed skill packs\",\n run: async () => {\n const [\n { runUpdate },\n { resolveUpdateSkillModes },\n { hasInstalledConfig },\n {\n getBundledSkillTargets,\n getBundledSkillLifecycleTargets,\n hasBundledSkillArtifacts,\n syncBundledSkillsForTargets\n },\n { buildUpdateCommandResult }\n ] = await Promise.all([\n import(\"./commands/update\"),\n import(\"./update-skill-modes\"),\n import(\"./commands/uninstall\"),\n import(\"./installers/skills\"),\n import(\"./skill-lifecycle\")\n ]);\n\n return buildUpdateCommandResult(args, runUpdate(), {\n resolveUpdateSkillModes,\n hasInstalledConfig,\n hasBundledSkillArtifacts,\n getBundledSkillTargets,\n getBundledSkillLifecycleTargets,\n syncBundledSkillsForTargets\n });\n }\n });\n\n registerCommand({\n name: \"uninstall\",\n description: \"Remove plugin from config and clean managed skill packs\",\n run: async () => {\n let mode = args.mode;\n if (!mode && !args.noPrompt) {\n mode = await promptUninstallMode() ?? undefined;\n if (!mode) {\n return { success: true, message: \"Uninstall cancelled.\" };\n }\n }\n if (!mode) {\n return { success: false, message: \"Error: Please specify --global or --local for uninstall.\", exitCode: EXIT_USAGE };\n }\n const [\n { runUninstall },\n {\n getBundledSkillLifecycleTargets,\n hasBundledSkillArtifacts,\n removeBundledSkillsForTargets\n },\n { buildUninstallCommandResult }\n ] = await Promise.all([\n import(\"./commands/uninstall\"),\n import(\"./installers/skills\"),\n import(\"./skill-lifecycle\")\n ]);\n\n return buildUninstallCommandResult(args, mode, runUninstall(mode), {\n hasBundledSkillArtifacts,\n getBundledSkillLifecycleTargets,\n removeBundledSkillsForTargets\n });\n }\n });\n\n registerCommand({\n name: \"install\",\n description: \"Install the plugin and sync bundled skill packs\",\n run: async () => {\n const [\n { installGlobal },\n { installLocal },\n { syncBundledSkills },\n { reconcileInstallAutostart },\n {\n createInstallAutostartOutputPayload,\n formatAutostartReconciliationMessage\n },\n { extractExtension },\n { default: onboardingMetadata }\n ] = await Promise.all([\n import(\"./installers/global\"),\n import(\"./installers/local\"),\n import(\"./installers/skills\"),\n import(\"./install-autostart-reconciliation\"),\n import(\"./install-autostart-output\"),\n import(\"../extension-extractor\"),\n import(\"./onboarding-metadata.json\")\n ]);\n\n const log = (...values: unknown[]) => {\n if (args.quiet) return;\n console.log(...values);\n };\n const warn = (...values: unknown[]) => {\n if (args.quiet) return;\n console.warn(...values);\n };\n\n let mode = args.mode;\n if (!mode) {\n mode = await promptInstallMode();\n }\n\n const result = mode === \"global\"\n ? installGlobal(args.withConfig)\n : installLocal(args.withConfig);\n const autostart = result.success ? reconcileInstallAutostart(result) : undefined;\n const skillsResult = result.success && args.skillsMode !== \"none\"\n ? syncBundledSkills(args.skillsMode)\n : undefined;\n const installSuccess = result.success && (skillsResult?.success ?? true);\n\n if (args.outputFormat !== \"text\") {\n const payload: Record<string, unknown> = {\n alreadyInstalled: result.alreadyInstalled\n };\n\n if (skillsResult) {\n payload.skills = skillsResult;\n }\n\n if (args.fullInstall && result.success) {\n try {\n const extensionPath = extractExtension();\n payload.extensionPath = extensionPath;\n } catch (error) {\n payload.extensionError = error instanceof Error ? error.message : String(error);\n }\n }\n\n if (autostart) {\n Object.assign(payload, createInstallAutostartOutputPayload(autostart));\n }\n\n return { success: installSuccess, message: result.message, data: payload };\n }\n\n log(result.message);\n\n if (args.skillsMode === \"none\") {\n log(\"Skill installation skipped (--no-skills).\");\n } else if (skillsResult) {\n if (skillsResult.success) {\n log(skillsResult.message);\n } else {\n warn(skillsResult.message);\n }\n } else {\n warn(\"Skill installation skipped because plugin install failed.\");\n }\n\n if (args.fullInstall && result.success) {\n try {\n const extensionPath = extractExtension();\n if (extensionPath) {\n log(`Extension assets extracted to ${extensionPath}`);\n } else {\n warn(\"Extension assets not found; skipping extraction.\");\n }\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n warn(`Extension pre-extraction failed: ${message}`);\n }\n }\n\n if (autostart) {\n const autostartMessage = formatAutostartReconciliationMessage(autostart);\n if (autostartMessage) {\n if (autostart.autostartAction === \"repair_failed\") {\n warn(autostartMessage);\n } else {\n log(autostartMessage);\n }\n }\n }\n\n if (installSuccess && !result.alreadyInstalled) {\n log(\"\\nNext steps:\");\n log(\" 1. Start or restart OpenCode\");\n log(` 2. Read npx opendevbrowser --help and start with ${onboardingMetadata.quickStartCommands.promptingGuide}`);\n log(` 3. Or load ${onboardingMetadata.skillName} ${onboardingMetadata.skillTopic} directly via ${onboardingMetadata.quickStartCommands.skillLoad}`);\n log(\" 4. Use opendevbrowser_status to verify the plugin is loaded\");\n }\n\n return { success: installSuccess, message: result.message };\n }\n });\n\n registerCommand({\n name: \"serve\",\n description: \"Start or stop the local daemon\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/serve\"), \"runServe\")\n });\n\n registerCommand({\n name: \"daemon\",\n description: \"Install/uninstall/status daemon auto-start\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/daemon\"), \"runDaemonCommand\")\n });\n\n registerCommand({\n name: \"native\",\n description: \"Install/uninstall/status native messaging host\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/native\"), \"runNativeCommand\")\n });\n\n registerCommand({\n name: \"run\",\n description: \"Execute a JSON script in a single process\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/run\"), \"runScriptCommand\")\n });\n\n registerCommand({\n name: \"launch\",\n description: \"Launch a managed browser session via daemon\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/launch\"), \"runSessionLaunch\")\n });\n\n registerCommand({\n name: \"connect\",\n description: \"Connect to an existing browser via daemon\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/connect\"), \"runSessionConnect\")\n });\n\n registerCommand({\n name: \"disconnect\",\n description: \"Disconnect a daemon session\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/disconnect\"), \"runSessionDisconnect\")\n });\n\n registerCommand({\n name: \"status\",\n description: \"Get daemon or session status\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/status\"), \"runStatus\")\n });\n\n registerCommand({\n name: \"status-capabilities\",\n description: \"Inspect runtime capability discovery for the host and an optional session\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/status-capabilities\"), \"runStatusCapabilities\")\n });\n\n registerCommand({\n name: \"session-inspector\",\n description: \"Capture a session-first diagnostic summary with relay health and trace proof\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/inspector\"), \"runSessionInspector\")\n });\n\n registerCommand({\n name: \"session-inspector-plan\",\n description: \"Inspect browser-scoped computer-use policy and safe suggested steps\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/inspector-plan\"), \"runSessionInspectorPlan\")\n });\n\n registerCommand({\n name: \"session-inspector-audit\",\n description: \"Capture a correlated audit bundle across desktop evidence, browser review, and policy state\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/inspector-audit\"), \"runSessionInspectorAudit\")\n });\n\n registerCommand({\n name: \"goto\",\n description: \"Navigate current session to a URL\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/goto\"), \"runGoto\")\n });\n\n registerCommand({\n name: \"wait\",\n description: \"Wait for load or a ref to appear\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/wait\"), \"runWait\")\n });\n\n registerCommand({\n name: \"snapshot\",\n description: \"Capture a snapshot of the active page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/snapshot\"), \"runSnapshot\")\n });\n\n registerCommand({\n name: \"review\",\n description: \"Capture a first-class review payload for the active page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/review\"), \"runReview\")\n });\n\n registerCommand({\n name: \"review-desktop\",\n description: \"Capture desktop-assisted browser review with read-only desktop evidence\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/review-desktop\"), \"runReviewDesktop\")\n });\n\n registerCommand({\n name: \"annotate\",\n description: \"Request interactive annotations via direct or relay transport\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/annotate\"), \"runAnnotate\")\n });\n\n registerCommand({\n name: \"canvas\",\n description: \"Execute a design-canvas command\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/canvas\"), \"runCanvas\")\n });\n\n registerCommand({\n name: \"rpc\",\n description: \"Execute an internal daemon RPC command (power-user)\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/rpc\"), \"runRpc\")\n });\n\n registerCommand({\n name: \"click\",\n description: \"Click an element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/click\"), \"runClick\")\n });\n\n registerCommand({\n name: \"hover\",\n description: \"Hover an element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/hover\"), \"runHover\")\n });\n\n registerCommand({\n name: \"press\",\n description: \"Press a keyboard key\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/press\"), \"runPress\")\n });\n\n registerCommand({\n name: \"check\",\n description: \"Check a checkbox by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/check\"), \"runCheck\")\n });\n\n registerCommand({\n name: \"uncheck\",\n description: \"Uncheck a checkbox by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/uncheck\"), \"runUncheck\")\n });\n\n registerCommand({\n name: \"type\",\n description: \"Type into an element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/type\"), \"runType\")\n });\n\n registerCommand({\n name: \"select\",\n description: \"Select values in a select by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/select\"), \"runSelect\")\n });\n\n registerCommand({\n name: \"scroll\",\n description: \"Scroll the page or element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/scroll\"), \"runScroll\")\n });\n\n registerCommand({\n name: \"scroll-into-view\",\n description: \"Scroll an element into view by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/scroll-into-view\"), \"runScrollIntoView\")\n });\n\n registerCommand({\n name: \"upload\",\n description: \"Upload files to a file input or chooser by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/upload\"), \"runUpload\")\n });\n\n registerCommand({\n name: \"pointer-move\",\n description: \"Move the pointer to viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-move\"), \"runPointerMove\")\n });\n\n registerCommand({\n name: \"pointer-down\",\n description: \"Press a mouse button at viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-down\"), \"runPointerDown\")\n });\n\n registerCommand({\n name: \"pointer-up\",\n description: \"Release a mouse button at viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-up\"), \"runPointerUp\")\n });\n\n registerCommand({\n name: \"pointer-drag\",\n description: \"Drag the pointer between two viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-drag\"), \"runPointerDrag\")\n });\n\n registerCommand({\n name: \"targets-list\",\n description: \"List page targets\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/list\"), \"runTargetsList\")\n });\n\n registerCommand({\n name: \"target-use\",\n description: \"Focus a target by id\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/use\"), \"runTargetUse\")\n });\n\n registerCommand({\n name: \"target-new\",\n description: \"Open a new target\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/new\"), \"runTargetNew\")\n });\n\n registerCommand({\n name: \"target-close\",\n description: \"Close a target by id\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/close\"), \"runTargetClose\")\n });\n\n registerCommand({\n name: \"page\",\n description: \"Open or focus a named page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/pages/open\"), \"runPageOpen\")\n });\n\n registerCommand({\n name: \"pages\",\n description: \"List named pages\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/pages/list\"), \"runPagesList\")\n });\n\n registerCommand({\n name: \"page-close\",\n description: \"Close a named page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/pages/close\"), \"runPageClose\")\n });\n\n registerCommand({\n name: \"dom-html\",\n description: \"Capture HTML for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/html\"), \"runDomHtml\")\n });\n\n registerCommand({\n name: \"dom-text\",\n description: \"Capture text for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/text\"), \"runDomText\")\n });\n\n registerCommand({\n name: \"dom-attr\",\n description: \"Capture attribute value for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/attr\"), \"runDomAttr\")\n });\n\n registerCommand({\n name: \"dom-value\",\n description: \"Capture input value for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/value\"), \"runDomValue\")\n });\n\n registerCommand({\n name: \"dom-visible\",\n description: \"Check visibility for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/visible\"), \"runDomVisible\")\n });\n\n registerCommand({\n name: \"dom-enabled\",\n description: \"Check enabled state for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/enabled\"), \"runDomEnabled\")\n });\n\n registerCommand({\n name: \"dom-checked\",\n description: \"Check checked state for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/checked\"), \"runDomChecked\")\n });\n\n registerCommand({\n name: \"clone-page\",\n description: \"Clone the active page to React\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/export/clone-page\"), \"runClonePage\")\n });\n\n registerCommand({\n name: \"clone-component\",\n description: \"Clone a component by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/export/clone-component\"), \"runCloneComponent\")\n });\n\n registerCommand({\n name: \"perf\",\n description: \"Capture performance metrics\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/perf\"), \"runPerf\")\n });\n\n registerCommand({\n name: \"screenshot\",\n description: \"Capture a screenshot\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/screenshot\"), \"runScreenshot\")\n });\n\n registerCommand({\n name: \"screencast-start\",\n description: \"Start a browser replay screencast capture\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/screencast-start\"), \"runScreencastStart\")\n });\n\n registerCommand({\n name: \"screencast-stop\",\n description: \"Stop a browser replay screencast capture\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/screencast-stop\"), \"runScreencastStop\")\n });\n\n registerCommand({\n name: \"dialog\",\n description: \"Inspect or handle a JavaScript dialog\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/dialog\"), \"runDialog\")\n });\n\n registerCommand({\n name: \"console-poll\",\n description: \"Poll console events\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/console-poll\"), \"runConsolePoll\")\n });\n\n registerCommand({\n name: \"network-poll\",\n description: \"Poll network events\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/network-poll\"), \"runNetworkPoll\")\n });\n\n registerCommand({\n name: \"debug-trace-snapshot\",\n description: \"Capture page + console + network + exception diagnostics\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/debug-trace-snapshot\"), \"runDebugTraceSnapshot\")\n });\n\n registerCommand({\n name: \"desktop-status\",\n description: \"Inspect public read-only desktop observation availability\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/status\"), \"runDesktopStatus\")\n });\n\n registerCommand({\n name: \"desktop-windows\",\n description: \"List windows exposed by the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/windows\"), \"runDesktopWindows\")\n });\n\n registerCommand({\n name: \"desktop-active-window\",\n description: \"Inspect the active window through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/active-window\"), \"runDesktopActiveWindow\")\n });\n\n registerCommand({\n name: \"desktop-capture-desktop\",\n description: \"Capture the current desktop surface through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/capture-desktop\"), \"runDesktopCaptureDesktop\")\n });\n\n registerCommand({\n name: \"desktop-capture-window\",\n description: \"Capture a specific window through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/capture-window\"), \"runDesktopCaptureWindow\")\n });\n\n registerCommand({\n name: \"desktop-accessibility-snapshot\",\n description: \"Capture desktop accessibility state through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/accessibility-snapshot\"), \"runDesktopAccessibilitySnapshot\")\n });\n\n registerCommand({\n name: \"cookie-import\",\n description: \"Import validated cookies into a session\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/cookie-import\"), \"runCookieImport\")\n });\n\n registerCommand({\n name: \"cookie-list\",\n description: \"List cookies for a session (optionally filtered by URL)\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/cookie-list\"), \"runCookieList\")\n });\n\n registerCommand({\n name: \"macro-resolve\",\n description: \"Resolve or execute a macro expression via provider actions\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/macro-resolve\"), \"runMacroResolve\")\n });\n\n registerCommand({\n name: \"research\",\n description: \"Run research workflows\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/research\"), \"runResearchCommand\")\n });\n\n registerCommand({\n name: \"shopping\",\n description: \"Run shopping workflows\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/shopping\"), \"runShoppingCommand\")\n });\n\n registerCommand({\n name: \"product-video\",\n description: \"Run product presentation asset workflows\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/product-video\"), \"runProductVideoCommand\")\n });\n\n registerCommand({\n name: \"inspiredesign\",\n description: \"Run inspiredesign workflows and visual reference harvests\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/inspiredesign\"), \"runInspiredesignCommand\")\n });\n\n registerCommand({\n name: \"artifacts\",\n description: \"Manage workflow artifact lifecycle\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/artifacts\"), \"runArtifactsCommand\")\n });\n const command = getCommand(args.command);\n if (!command) {\n throw new Error(`Unknown command: ${args.command}`);\n }\n\n const result = await command.run(args);\n await finishCommand(result);\n return;\n } catch (error) {\n const format = outputFormat ?? detectOutputFormat(process.argv);\n const cliError = toCliError(error, parseSucceeded ? EXIT_EXECUTION : EXIT_USAGE);\n emitFatalError(cliError, format);\n await flushOutputAndExit(cliError.exitCode);\n return;\n }\n}\n\nmain().catch(async (error: unknown) => {\n const cliError = toCliError(error, EXIT_EXECUTION);\n emitFatalError(cliError, detectOutputFormat(process.argv));\n await flushOutputAndExit(cliError.exitCode);\n});\n"],"mappings":"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","names":["result"]}
|
|
1
|
+
{"version":3,"sources":["../../src/cli/commands/registry.ts","../../package.json","../../src/cli/index.ts"],"sourcesContent":["import type { CommandDefinition } from \"./types\";\n\nconst registry = new Map<string, CommandDefinition>();\n\nexport function registerCommand(definition: CommandDefinition): void {\n registry.set(definition.name, definition);\n}\n\nexport function getCommand(name: string): CommandDefinition | undefined {\n return registry.get(name);\n}\n\nexport function listCommands(): CommandDefinition[] {\n return Array.from(registry.values());\n}\n","{\n \"name\": \"opendevbrowser\",\n \"version\": \"0.0.34\",\n \"description\": \"Browser automation runtime with snapshot-refs-actions, browser replay screencasts, public read-only desktop observation, and browser-scoped computer-use orchestration\",\n \"type\": \"module\",\n \"main\": \"dist/index.js\",\n \"types\": \"dist/index.d.ts\",\n \"bin\": {\n \"opendevbrowser\": \"dist/cli/index.js\"\n },\n \"files\": [\n \"dist\",\n \"skills\",\n \"scripts/postinstall-sync-skills.mjs\",\n \"scripts/native\",\n \"extension/canvas.html\",\n \"extension/manifest.json\",\n \"extension/popup.html\",\n \"extension/dist\",\n \"extension/icons\"\n ],\n \"keywords\": [\n \"opencode\",\n \"plugin\",\n \"browser\",\n \"automation\",\n \"cdp\",\n \"playwright\",\n \"testing\",\n \"web-scraping\",\n \"chrome\",\n \"annotation\",\n \"design-canvas\",\n \"screencast\",\n \"desktop-observation\",\n \"browser-replay\",\n \"computer-use\",\n \"challenge-automation\"\n ],\n \"license\": \"MIT\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/freshtechbro/opendevbrowser.git\"\n },\n \"engines\": {\n \"node\": \">=18\"\n },\n \"scripts\": {\n \"build\": \"node scripts/run-package-tool.mjs tsup --config tsup.config.ts && node scripts/run-package-tool.mjs tsc --emitDeclarationOnly --declaration --declarationMap -p tsconfig.json && node scripts/postbuild-dist.mjs\",\n \"dev\": \"node scripts/run-package-tool.mjs tsup --config tsup.config.ts --dts --watch\",\n \"lint\": \"node scripts/run-package-tool.mjs eslint \\\"src/**/*.ts\\\" \\\"tests/**/*.ts\\\"\",\n \"typecheck\": \"node scripts/run-package-tool.mjs tsc --noEmit -p tsconfig.json\",\n \"test\": \"node scripts/run-vitest-coverage.mjs\",\n \"test:release-gate\": \"node scripts/release-gate-test-groups.mjs\",\n \"test:release-gate:g1\": \"node scripts/release-gate-test-groups.mjs --group 1\",\n \"test:release-gate:g2\": \"node scripts/release-gate-test-groups.mjs --group 2\",\n \"test:release-gate:g3\": \"node scripts/release-gate-test-groups.mjs --group 3\",\n \"test:release-gate:g4\": \"node scripts/release-gate-test-groups.mjs --group 4\",\n \"test:release-gate:g5\": \"node scripts/release-gate-test-groups.mjs --group 5\",\n \"extension:sync\": \"node scripts/sync-extension-version.mjs\",\n \"extension:build\": \"npm run extension:sync && node scripts/run-package-tool.mjs tsc -p extension/tsconfig.json && node scripts/copy-extension-assets.mjs\",\n \"extension:pack\": \"cd extension && zip -r ../opendevbrowser-extension.zip manifest.json popup.html canvas.html dist/ icons/\",\n \"extension:store\": \"node scripts/chrome-store-publish.mjs\",\n \"version:check\": \"node scripts/verify-versions.mjs\",\n \"prepack\": \"npm run version:check && npm run build && npm run extension:build\",\n \"postinstall\": \"node scripts/postinstall-sync-skills.mjs\"\n },\n \"dependencies\": {\n \"@opencode-ai/plugin\": \"^1.2.25\",\n \"@puppeteer/browsers\": \"^2.13.0\",\n \"async-mutex\": \"^0.5.0\",\n \"jsonc-parser\": \"^3.2.0\",\n \"parse5\": \"^8.0.0\",\n \"playwright-core\": \"^1.58.2\",\n \"typescript\": \"^5.9.3\",\n \"ws\": \"^8.19.0\",\n \"yjs\": \"^13.6.29\",\n \"zod\": \"^3.25.76\"\n },\n \"devDependencies\": {\n \"@types/chrome\": \"^0.1.37\",\n \"@types/node\": \"^20.19.35\",\n \"@types/ws\": \"^8.18.1\",\n \"@typescript-eslint/eslint-plugin\": \"^8.56.1\",\n \"@typescript-eslint/parser\": \"^8.56.1\",\n \"@vitest/coverage-v8\": \"^4.0.18\",\n \"eslint\": \"^9.39.3\",\n \"happy-dom\": \"^20.7.0\",\n \"tsup\": \"^8.5.1\",\n \"vitest\": \"^4.0.18\"\n }\n}\n","#!/usr/bin/env node\n\nimport { parseArgs, detectOutputFormat } from \"./args\";\nimport type { InstallMode, OutputFormat, ParsedArgs } from \"./args\";\nimport { registerCommand, getCommand } from \"./commands/registry\";\nimport type { CommandResult } from \"./commands/types\";\nimport { setDefaultLogSink, stderrSink } from \"../core/logging\";\nimport { flushOutputAndExit, writeOutput } from \"./output\";\nimport { formatErrorPayload, resolveExitCode, toCliError, EXIT_EXECUTION, EXIT_USAGE } from \"./errors\";\nimport type { CliError } from \"./errors\";\nimport { buildProviderFollowupErrorMessage } from \"./utils/workflow-message\";\nimport packageJson from \"../../package.json\";\n\nconst VERSION = typeof packageJson.version === \"string\" ? packageJson.version : \"0.0.0\";\n\ntype CommandRunner = (args: ParsedArgs) => Promise<CommandResult> | CommandResult;\n\nasync function runLazyCommand<ExportName extends string>(\n args: ParsedArgs,\n loader: () => Promise<Record<ExportName, CommandRunner>>,\n exportName: ExportName\n): Promise<CommandResult> {\n const commandModule = await loader();\n return commandModule[exportName](args);\n}\n\nasync function promptInstallMode(): Promise<InstallMode> {\n if (!process.stdin.isTTY) {\n console.log(\"Non-interactive mode detected. Using global install.\");\n return \"global\";\n }\n\n return new Promise((resolve) => {\n console.log(\"\\nWhere would you like to install opendevbrowser?\\n\");\n console.log(\" 1. Global (~/.config/opencode/opencode.json)\");\n console.log(\" 2. Local (./opencode.json in this project)\\n\");\n\n process.stdout.write(\"Enter choice [1]: \");\n\n process.stdin.setEncoding(\"utf8\");\n let resolved = false;\n let timeoutId: ReturnType<typeof setTimeout> | null = null;\n\n const cleanup = () => {\n if (timeoutId !== null) {\n clearTimeout(timeoutId);\n timeoutId = null;\n }\n };\n\n process.stdin.once(\"data\", (data) => {\n cleanup();\n if (resolved) return;\n resolved = true;\n const input = data.toString().trim();\n if (input === \"2\") {\n resolve(\"local\");\n } else {\n resolve(\"global\");\n }\n });\n\n process.stdin.once(\"close\", () => {\n cleanup();\n if (resolved) return;\n resolved = true;\n resolve(\"global\");\n });\n\n timeoutId = setTimeout(() => {\n timeoutId = null;\n if (resolved) return;\n resolved = true;\n console.log(\"\\nTimeout - using global install.\");\n resolve(\"global\");\n }, 30000);\n });\n}\n\nasync function promptUninstallMode(): Promise<InstallMode | null> {\n const { findInstalledConfigs } = await import(\"./commands/uninstall\");\n const installed = findInstalledConfigs();\n\n if (!installed.global && !installed.local) {\n console.log(\"opendevbrowser is not installed in any config.\");\n return null;\n }\n\n if (installed.global && !installed.local) {\n return \"global\";\n }\n\n if (!installed.global && installed.local) {\n return \"local\";\n }\n\n if (!process.stdin.isTTY) {\n console.log(\"Plugin found in both global and local configs. Use --global or --local flag.\");\n return null;\n }\n\n return new Promise((resolve) => {\n console.log(\"\\nopendevbrowser is installed in multiple locations:\\n\");\n console.log(\" 1. Global (~/.config/opencode/opencode.json)\");\n console.log(\" 2. Local (./opencode.json)\");\n console.log(\" 3. Cancel\\n\");\n\n process.stdout.write(\"Which to uninstall? [3]: \");\n\n process.stdin.setEncoding(\"utf8\");\n process.stdin.once(\"data\", (data) => {\n const input = data.toString().trim();\n if (input === \"1\") {\n resolve(\"global\");\n } else if (input === \"2\") {\n resolve(\"local\");\n } else {\n resolve(null);\n }\n });\n\n process.stdin.once(\"close\", () => {\n resolve(null);\n });\n });\n}\n\nfunction emitFatalError(error: CliError, outputFormat: OutputFormat): void {\n const message = buildProviderFollowupErrorMessage(error.message);\n if (outputFormat === \"text\") {\n console.error(`Error: ${message}`);\n if (error.exitCode === EXIT_USAGE) {\n console.error(\"\\nFor help: npx opendevbrowser --help\");\n }\n return;\n }\n\n writeOutput({ ...formatErrorPayload(error), error: message }, { format: outputFormat });\n}\n\nasync function main(): Promise<void> {\n let outputFormat: OutputFormat | null = null;\n let parseSucceeded = false;\n try {\n const args = parseArgs(process.argv);\n parseSucceeded = true;\n outputFormat = args.outputFormat;\n setDefaultLogSink(stderrSink);\n const outputOptions = { format: args.outputFormat, quiet: args.quiet };\n\n const emitResult = (result: CommandResult, payload?: Record<string, unknown>) => {\n const suppressOutput = Boolean(\n result.data\n && typeof result.data === \"object\"\n && \"suppressOutput\" in result.data\n && (result.data as { suppressOutput?: boolean }).suppressOutput\n );\n if (suppressOutput) {\n return;\n }\n if (args.outputFormat === \"text\") {\n if (result.message) {\n writeOutput(result.message, outputOptions);\n }\n } else {\n const exitCode = resolveExitCode(result);\n writeOutput({\n success: result.success,\n message: result.message,\n ...(result.success || !result.message ? {} : { error: result.message }),\n ...(result.success || exitCode === null ? {} : { exitCode }),\n ...(result.reason ? { reason: result.reason } : {}),\n ...payload\n }, outputOptions);\n }\n };\n\n const finishCommand = async (result: CommandResult): Promise<void> => {\n emitResult(result, result.data ? { data: result.data } : undefined);\n const exitCode = resolveExitCode(result);\n if (exitCode === null) {\n return;\n }\n await flushOutputAndExit(exitCode);\n };\n\n if (args.command === \"help\") {\n const { getHelpText } = await import(\"./help\");\n await finishCommand({ success: true, message: getHelpText() });\n return;\n }\n\n if (args.command === \"version\") {\n await finishCommand({ success: true, message: `opendevbrowser v${VERSION}` });\n return;\n }\n\n registerCommand({\n name: \"help\",\n description: \"Show help\",\n run: async () => {\n const { getHelpText } = await import(\"./help\");\n return { success: true, message: getHelpText() };\n }\n });\n\n registerCommand({\n name: \"version\",\n description: \"Show version\",\n run: () => ({ success: true, message: `opendevbrowser v${VERSION}` })\n });\n\n registerCommand({\n name: \"update\",\n description: \"Repair OpenCode package caches and refresh managed skill packs\",\n run: async () => {\n const [\n { runUpdate },\n { resolveUpdateSkillModes },\n { hasInstalledConfig },\n {\n getBundledSkillTargets,\n getBundledSkillLifecycleTargets,\n hasBundledSkillArtifacts,\n syncBundledSkillsForTargets\n },\n { buildUpdateCommandResult }\n ] = await Promise.all([\n import(\"./commands/update\"),\n import(\"./update-skill-modes\"),\n import(\"./commands/uninstall\"),\n import(\"./installers/skills\"),\n import(\"./skill-lifecycle\")\n ]);\n\n return buildUpdateCommandResult(args, runUpdate(), {\n resolveUpdateSkillModes,\n hasInstalledConfig,\n hasBundledSkillArtifacts,\n getBundledSkillTargets,\n getBundledSkillLifecycleTargets,\n syncBundledSkillsForTargets\n });\n }\n });\n\n registerCommand({\n name: \"uninstall\",\n description: \"Remove plugin from config and clean managed skill packs\",\n run: async () => {\n let mode = args.mode;\n if (!mode && !args.noPrompt) {\n mode = await promptUninstallMode() ?? undefined;\n if (!mode) {\n return { success: true, message: \"Uninstall cancelled.\" };\n }\n }\n if (!mode) {\n return { success: false, message: \"Error: Please specify --global or --local for uninstall.\", exitCode: EXIT_USAGE };\n }\n const [\n { runUninstall },\n {\n getBundledSkillLifecycleTargets,\n hasBundledSkillArtifacts,\n removeBundledSkillsForTargets\n },\n { buildUninstallCommandResult }\n ] = await Promise.all([\n import(\"./commands/uninstall\"),\n import(\"./installers/skills\"),\n import(\"./skill-lifecycle\")\n ]);\n\n return buildUninstallCommandResult(args, mode, runUninstall(mode), {\n hasBundledSkillArtifacts,\n getBundledSkillLifecycleTargets,\n removeBundledSkillsForTargets\n });\n }\n });\n\n registerCommand({\n name: \"install\",\n description: \"Install the plugin and sync bundled skill packs\",\n run: async () => {\n const [\n { installGlobal },\n { installLocal },\n { syncBundledSkills },\n { reconcileInstallAutostart },\n {\n createInstallAutostartOutputPayload,\n formatAutostartReconciliationMessage\n },\n { extractExtension },\n { default: onboardingMetadata }\n ] = await Promise.all([\n import(\"./installers/global\"),\n import(\"./installers/local\"),\n import(\"./installers/skills\"),\n import(\"./install-autostart-reconciliation\"),\n import(\"./install-autostart-output\"),\n import(\"../extension-extractor\"),\n import(\"./onboarding-metadata.json\")\n ]);\n\n const log = (...values: unknown[]) => {\n if (args.quiet) return;\n console.log(...values);\n };\n const warn = (...values: unknown[]) => {\n if (args.quiet) return;\n console.warn(...values);\n };\n\n let mode = args.mode;\n if (!mode) {\n mode = await promptInstallMode();\n }\n\n const result = mode === \"global\"\n ? installGlobal(args.withConfig)\n : installLocal(args.withConfig);\n const autostart = result.success ? reconcileInstallAutostart(result) : undefined;\n const skillsResult = result.success && args.skillsMode !== \"none\"\n ? syncBundledSkills(args.skillsMode)\n : undefined;\n const installSuccess = result.success && (skillsResult?.success ?? true);\n\n if (args.outputFormat !== \"text\") {\n const payload: Record<string, unknown> = {\n alreadyInstalled: result.alreadyInstalled\n };\n\n if (skillsResult) {\n payload.skills = skillsResult;\n }\n\n if (args.fullInstall && result.success) {\n try {\n const extensionPath = extractExtension();\n payload.extensionPath = extensionPath;\n } catch (error) {\n payload.extensionError = error instanceof Error ? error.message : String(error);\n }\n }\n\n if (autostart) {\n Object.assign(payload, createInstallAutostartOutputPayload(autostart));\n }\n\n return { success: installSuccess, message: result.message, data: payload };\n }\n\n log(result.message);\n\n if (args.skillsMode === \"none\") {\n log(\"Skill installation skipped (--no-skills).\");\n } else if (skillsResult) {\n if (skillsResult.success) {\n log(skillsResult.message);\n } else {\n warn(skillsResult.message);\n }\n } else {\n warn(\"Skill installation skipped because plugin install failed.\");\n }\n\n if (args.fullInstall && result.success) {\n try {\n const extensionPath = extractExtension();\n if (extensionPath) {\n log(`Extension assets extracted to ${extensionPath}`);\n } else {\n warn(\"Extension assets not found; skipping extraction.\");\n }\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n warn(`Extension pre-extraction failed: ${message}`);\n }\n }\n\n if (autostart) {\n const autostartMessage = formatAutostartReconciliationMessage(autostart);\n if (autostartMessage) {\n if (autostart.autostartAction === \"repair_failed\") {\n warn(autostartMessage);\n } else {\n log(autostartMessage);\n }\n }\n }\n\n if (installSuccess && !result.alreadyInstalled) {\n log(\"\\nNext steps:\");\n log(\" 1. Start or restart OpenCode\");\n log(` 2. Read npx opendevbrowser --help and start with ${onboardingMetadata.quickStartCommands.promptingGuide}`);\n log(` 3. Or load ${onboardingMetadata.skillName} ${onboardingMetadata.skillTopic} directly via ${onboardingMetadata.quickStartCommands.skillLoad}`);\n log(\" 4. Use opendevbrowser_status to verify the plugin is loaded\");\n }\n\n return { success: installSuccess, message: result.message };\n }\n });\n\n registerCommand({\n name: \"serve\",\n description: \"Start or stop the local daemon\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/serve\"), \"runServe\")\n });\n\n registerCommand({\n name: \"daemon\",\n description: \"Install/uninstall/status daemon auto-start\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/daemon\"), \"runDaemonCommand\")\n });\n\n registerCommand({\n name: \"native\",\n description: \"Install/uninstall/status native messaging host\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/native\"), \"runNativeCommand\")\n });\n\n registerCommand({\n name: \"run\",\n description: \"Execute a JSON script in a single process\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/run\"), \"runScriptCommand\")\n });\n\n registerCommand({\n name: \"launch\",\n description: \"Launch a managed browser session via daemon\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/launch\"), \"runSessionLaunch\")\n });\n\n registerCommand({\n name: \"connect\",\n description: \"Connect to an existing browser via daemon\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/connect\"), \"runSessionConnect\")\n });\n\n registerCommand({\n name: \"disconnect\",\n description: \"Disconnect a daemon session\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/disconnect\"), \"runSessionDisconnect\")\n });\n\n registerCommand({\n name: \"status\",\n description: \"Get daemon or session status\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/status\"), \"runStatus\")\n });\n\n registerCommand({\n name: \"status-capabilities\",\n description: \"Inspect runtime capability discovery for the host and an optional session\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/status-capabilities\"), \"runStatusCapabilities\")\n });\n\n registerCommand({\n name: \"session-inspector\",\n description: \"Capture a session-first diagnostic summary with relay health and trace proof\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/inspector\"), \"runSessionInspector\")\n });\n\n registerCommand({\n name: \"session-inspector-plan\",\n description: \"Inspect browser-scoped computer-use policy and safe suggested steps\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/inspector-plan\"), \"runSessionInspectorPlan\")\n });\n\n registerCommand({\n name: \"session-inspector-audit\",\n description: \"Capture a correlated audit bundle across desktop evidence, browser review, and policy state\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/inspector-audit\"), \"runSessionInspectorAudit\")\n });\n\n registerCommand({\n name: \"goto\",\n description: \"Navigate current session to a URL\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/goto\"), \"runGoto\")\n });\n\n registerCommand({\n name: \"wait\",\n description: \"Wait for load or a ref to appear\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/wait\"), \"runWait\")\n });\n\n registerCommand({\n name: \"snapshot\",\n description: \"Capture a snapshot of the active page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/snapshot\"), \"runSnapshot\")\n });\n\n registerCommand({\n name: \"review\",\n description: \"Capture a first-class review payload for the active page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/review\"), \"runReview\")\n });\n\n registerCommand({\n name: \"review-desktop\",\n description: \"Capture desktop-assisted browser review with read-only desktop evidence\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/nav/review-desktop\"), \"runReviewDesktop\")\n });\n\n registerCommand({\n name: \"annotate\",\n description: \"Request interactive annotations via direct or relay transport\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/annotate\"), \"runAnnotate\")\n });\n\n registerCommand({\n name: \"canvas\",\n description: \"Execute a design-canvas command\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/canvas\"), \"runCanvas\")\n });\n\n registerCommand({\n name: \"rpc\",\n description: \"Execute an internal daemon RPC command (power-user)\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/rpc\"), \"runRpc\")\n });\n\n registerCommand({\n name: \"click\",\n description: \"Click an element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/click\"), \"runClick\")\n });\n\n registerCommand({\n name: \"hover\",\n description: \"Hover an element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/hover\"), \"runHover\")\n });\n\n registerCommand({\n name: \"press\",\n description: \"Press a keyboard key\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/press\"), \"runPress\")\n });\n\n registerCommand({\n name: \"check\",\n description: \"Check a checkbox by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/check\"), \"runCheck\")\n });\n\n registerCommand({\n name: \"uncheck\",\n description: \"Uncheck a checkbox by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/uncheck\"), \"runUncheck\")\n });\n\n registerCommand({\n name: \"type\",\n description: \"Type into an element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/type\"), \"runType\")\n });\n\n registerCommand({\n name: \"select\",\n description: \"Select values in a select by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/select\"), \"runSelect\")\n });\n\n registerCommand({\n name: \"scroll\",\n description: \"Scroll the page or element by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/scroll\"), \"runScroll\")\n });\n\n registerCommand({\n name: \"scroll-into-view\",\n description: \"Scroll an element into view by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/scroll-into-view\"), \"runScrollIntoView\")\n });\n\n registerCommand({\n name: \"upload\",\n description: \"Upload files to a file input or chooser by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/upload\"), \"runUpload\")\n });\n\n registerCommand({\n name: \"pointer-move\",\n description: \"Move the pointer to viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-move\"), \"runPointerMove\")\n });\n\n registerCommand({\n name: \"pointer-down\",\n description: \"Press a mouse button at viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-down\"), \"runPointerDown\")\n });\n\n registerCommand({\n name: \"pointer-up\",\n description: \"Release a mouse button at viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-up\"), \"runPointerUp\")\n });\n\n registerCommand({\n name: \"pointer-drag\",\n description: \"Drag the pointer between two viewport coordinates\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/interact/pointer-drag\"), \"runPointerDrag\")\n });\n\n registerCommand({\n name: \"targets-list\",\n description: \"List page targets\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/list\"), \"runTargetsList\")\n });\n\n registerCommand({\n name: \"target-use\",\n description: \"Focus a target by id\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/use\"), \"runTargetUse\")\n });\n\n registerCommand({\n name: \"target-new\",\n description: \"Open a new target\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/new\"), \"runTargetNew\")\n });\n\n registerCommand({\n name: \"target-close\",\n description: \"Close a target by id\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/targets/close\"), \"runTargetClose\")\n });\n\n registerCommand({\n name: \"page\",\n description: \"Open or focus a named page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/pages/open\"), \"runPageOpen\")\n });\n\n registerCommand({\n name: \"pages\",\n description: \"List named pages\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/pages/list\"), \"runPagesList\")\n });\n\n registerCommand({\n name: \"page-close\",\n description: \"Close a named page\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/pages/close\"), \"runPageClose\")\n });\n\n registerCommand({\n name: \"dom-html\",\n description: \"Capture HTML for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/html\"), \"runDomHtml\")\n });\n\n registerCommand({\n name: \"dom-text\",\n description: \"Capture text for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/text\"), \"runDomText\")\n });\n\n registerCommand({\n name: \"dom-attr\",\n description: \"Capture attribute value for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/attr\"), \"runDomAttr\")\n });\n\n registerCommand({\n name: \"dom-value\",\n description: \"Capture input value for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/value\"), \"runDomValue\")\n });\n\n registerCommand({\n name: \"dom-visible\",\n description: \"Check visibility for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/visible\"), \"runDomVisible\")\n });\n\n registerCommand({\n name: \"dom-enabled\",\n description: \"Check enabled state for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/enabled\"), \"runDomEnabled\")\n });\n\n registerCommand({\n name: \"dom-checked\",\n description: \"Check checked state for a ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/dom/checked\"), \"runDomChecked\")\n });\n\n registerCommand({\n name: \"clone-page\",\n description: \"Clone the active page to React\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/export/clone-page\"), \"runClonePage\")\n });\n\n registerCommand({\n name: \"clone-component\",\n description: \"Clone a component by ref\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/export/clone-component\"), \"runCloneComponent\")\n });\n\n registerCommand({\n name: \"perf\",\n description: \"Capture performance metrics\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/perf\"), \"runPerf\")\n });\n\n registerCommand({\n name: \"screenshot\",\n description: \"Capture a screenshot\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/screenshot\"), \"runScreenshot\")\n });\n\n registerCommand({\n name: \"screencast-start\",\n description: \"Start a browser replay screencast capture\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/screencast-start\"), \"runScreencastStart\")\n });\n\n registerCommand({\n name: \"screencast-stop\",\n description: \"Stop a browser replay screencast capture\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/screencast-stop\"), \"runScreencastStop\")\n });\n\n registerCommand({\n name: \"dialog\",\n description: \"Inspect or handle a JavaScript dialog\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/dialog\"), \"runDialog\")\n });\n\n registerCommand({\n name: \"console-poll\",\n description: \"Poll console events\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/console-poll\"), \"runConsolePoll\")\n });\n\n registerCommand({\n name: \"network-poll\",\n description: \"Poll network events\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/network-poll\"), \"runNetworkPoll\")\n });\n\n registerCommand({\n name: \"debug-trace-snapshot\",\n description: \"Capture page + console + network + exception diagnostics\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/devtools/debug-trace-snapshot\"), \"runDebugTraceSnapshot\")\n });\n\n registerCommand({\n name: \"desktop-status\",\n description: \"Inspect public read-only desktop observation availability\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/status\"), \"runDesktopStatus\")\n });\n\n registerCommand({\n name: \"desktop-windows\",\n description: \"List windows exposed by the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/windows\"), \"runDesktopWindows\")\n });\n\n registerCommand({\n name: \"desktop-active-window\",\n description: \"Inspect the active window through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/active-window\"), \"runDesktopActiveWindow\")\n });\n\n registerCommand({\n name: \"desktop-capture-desktop\",\n description: \"Capture the current desktop surface through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/capture-desktop\"), \"runDesktopCaptureDesktop\")\n });\n\n registerCommand({\n name: \"desktop-capture-window\",\n description: \"Capture a specific window through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/capture-window\"), \"runDesktopCaptureWindow\")\n });\n\n registerCommand({\n name: \"desktop-accessibility-snapshot\",\n description: \"Capture desktop accessibility state through the public read-only desktop observation plane\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/desktop/accessibility-snapshot\"), \"runDesktopAccessibilitySnapshot\")\n });\n\n registerCommand({\n name: \"cookie-import\",\n description: \"Import validated cookies into a session\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/cookie-import\"), \"runCookieImport\")\n });\n\n registerCommand({\n name: \"cookie-list\",\n description: \"List cookies for a session (optionally filtered by URL)\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/session/cookie-list\"), \"runCookieList\")\n });\n\n registerCommand({\n name: \"macro-resolve\",\n description: \"Resolve or execute a macro expression via provider actions\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/macro-resolve\"), \"runMacroResolve\")\n });\n\n registerCommand({\n name: \"research\",\n description: \"Run research workflows\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/research\"), \"runResearchCommand\")\n });\n\n registerCommand({\n name: \"shopping\",\n description: \"Run shopping workflows\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/shopping\"), \"runShoppingCommand\")\n });\n\n registerCommand({\n name: \"product-video\",\n description: \"Run product presentation asset workflows\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/product-video\"), \"runProductVideoCommand\")\n });\n\n registerCommand({\n name: \"inspiredesign\",\n description: \"Run inspiredesign workflows and visual reference harvests\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/inspiredesign\"), \"runInspiredesignCommand\")\n });\n\n registerCommand({\n name: \"artifacts\",\n description: \"Manage workflow artifact lifecycle\",\n run: (parsedArgs) => runLazyCommand(parsedArgs, () => import(\"./commands/artifacts\"), \"runArtifactsCommand\")\n });\n const command = getCommand(args.command);\n if (!command) {\n throw new Error(`Unknown command: ${args.command}`);\n }\n\n const result = await command.run(args);\n await finishCommand(result);\n return;\n } catch (error) {\n const format = outputFormat ?? detectOutputFormat(process.argv);\n const cliError = toCliError(error, parseSucceeded ? EXIT_EXECUTION : EXIT_USAGE);\n emitFatalError(cliError, format);\n await flushOutputAndExit(cliError.exitCode);\n return;\n }\n}\n\nmain().catch(async (error: unknown) => {\n const cliError = toCliError(error, EXIT_EXECUTION);\n emitFatalError(cliError, detectOutputFormat(process.argv));\n await flushOutputAndExit(cliError.exitCode);\n});\n"],"mappings":"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","names":["result"]}
|
|
@@ -3,6 +3,7 @@ type NumberFlagOptions = {
|
|
|
3
3
|
max?: number;
|
|
4
4
|
integer?: boolean;
|
|
5
5
|
};
|
|
6
|
+
export declare const readInlineFlagValue: (arg: string, flag: string) => string | undefined;
|
|
6
7
|
export declare function parseNumberFlag(value: string, flag: string, options?: NumberFlagOptions): number;
|
|
7
8
|
export declare function parseBooleanFlag(value: string, flag: string): boolean;
|
|
8
9
|
export declare function parseOptionalStringFlag(rawArgs: string[], flag: string): string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/parse.ts"],"names":[],"mappings":"AAEA,KAAK,iBAAiB,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAmBF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAmBpG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CASrE;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAmB3F;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAU1F;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAsB7F"}
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/parse.ts"],"names":[],"mappings":"AAEA,KAAK,iBAAiB,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAmBF,eAAO,MAAM,mBAAmB,GAAI,KAAK,MAAM,EAAE,MAAM,MAAM,KAAG,MAAM,GAAG,SAGxE,CAAC;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAmBpG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CASrE;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAmB3F;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAU1F;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAsB7F"}
|
|
@@ -2,15 +2,15 @@ import "./chunk-RJNI3BHT.js";
|
|
|
2
2
|
import {
|
|
3
3
|
parseNumberFlag,
|
|
4
4
|
parseOptionalStringFlag
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-TI5I6UWY.js";
|
|
6
6
|
import {
|
|
7
7
|
DEFAULT_CLICK_TRANSPORT_TIMEOUT_MS
|
|
8
8
|
} from "./chunk-OW5HMYMI.js";
|
|
9
9
|
import {
|
|
10
10
|
callDaemon
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-NX2XYJP5.js";
|
|
12
|
+
import "./chunk-QXJDJDSZ.js";
|
|
13
|
+
import "./chunk-XRDCSHKZ.js";
|
|
14
14
|
import "./chunk-MX3NFLCE.js";
|
|
15
15
|
import "./chunk-ASMHEEKY.js";
|
|
16
16
|
import {
|
|
@@ -21,7 +21,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
21
21
|
import "./chunk-TBUCZX4A.js";
|
|
22
22
|
import "./chunk-Y2KL55OG.js";
|
|
23
23
|
import "./chunk-5SWZDVOW.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-5FDXH4CS.js";
|
|
25
25
|
import "./chunk-S5KZQJJI.js";
|
|
26
26
|
import "./chunk-IBIHDGTZ.js";
|
|
27
27
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -78,4 +78,4 @@ async function runClick(args) {
|
|
|
78
78
|
export {
|
|
79
79
|
runClick
|
|
80
80
|
};
|
|
81
|
-
//# sourceMappingURL=click-
|
|
81
|
+
//# sourceMappingURL=click-EQDRSLR3.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
callDaemon
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-NX2XYJP5.js";
|
|
5
|
+
import "./chunk-QXJDJDSZ.js";
|
|
6
|
+
import "./chunk-XRDCSHKZ.js";
|
|
7
7
|
import "./chunk-MX3NFLCE.js";
|
|
8
8
|
import "./chunk-ASMHEEKY.js";
|
|
9
9
|
import {
|
|
@@ -14,7 +14,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
14
14
|
import "./chunk-TBUCZX4A.js";
|
|
15
15
|
import "./chunk-Y2KL55OG.js";
|
|
16
16
|
import "./chunk-5SWZDVOW.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-5FDXH4CS.js";
|
|
18
18
|
import "./chunk-S5KZQJJI.js";
|
|
19
19
|
import "./chunk-IBIHDGTZ.js";
|
|
20
20
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -79,4 +79,4 @@ export {
|
|
|
79
79
|
__test__,
|
|
80
80
|
runCloneComponent
|
|
81
81
|
};
|
|
82
|
-
//# sourceMappingURL=clone-component-
|
|
82
|
+
//# sourceMappingURL=clone-component-SISUXTJS.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
callDaemon
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-NX2XYJP5.js";
|
|
5
|
+
import "./chunk-QXJDJDSZ.js";
|
|
6
|
+
import "./chunk-XRDCSHKZ.js";
|
|
7
7
|
import "./chunk-MX3NFLCE.js";
|
|
8
8
|
import "./chunk-ASMHEEKY.js";
|
|
9
9
|
import {
|
|
@@ -14,7 +14,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
14
14
|
import "./chunk-TBUCZX4A.js";
|
|
15
15
|
import "./chunk-Y2KL55OG.js";
|
|
16
16
|
import "./chunk-5SWZDVOW.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-5FDXH4CS.js";
|
|
18
18
|
import "./chunk-S5KZQJJI.js";
|
|
19
19
|
import "./chunk-IBIHDGTZ.js";
|
|
20
20
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -66,4 +66,4 @@ export {
|
|
|
66
66
|
__test__,
|
|
67
67
|
runClonePage
|
|
68
68
|
};
|
|
69
|
-
//# sourceMappingURL=clone-page-
|
|
69
|
+
//# sourceMappingURL=clone-page-MLDPCBOY.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
callDaemon
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-NX2XYJP5.js";
|
|
5
|
+
import "./chunk-QXJDJDSZ.js";
|
|
6
|
+
import "./chunk-XRDCSHKZ.js";
|
|
7
7
|
import "./chunk-MX3NFLCE.js";
|
|
8
8
|
import "./chunk-ASMHEEKY.js";
|
|
9
9
|
import {
|
|
@@ -14,7 +14,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
14
14
|
import "./chunk-TBUCZX4A.js";
|
|
15
15
|
import "./chunk-Y2KL55OG.js";
|
|
16
16
|
import "./chunk-5SWZDVOW.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-5FDXH4CS.js";
|
|
18
18
|
import "./chunk-S5KZQJJI.js";
|
|
19
19
|
import "./chunk-IBIHDGTZ.js";
|
|
20
20
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -60,4 +60,4 @@ async function runPageClose(args) {
|
|
|
60
60
|
export {
|
|
61
61
|
runPageClose
|
|
62
62
|
};
|
|
63
|
-
//# sourceMappingURL=close-
|
|
63
|
+
//# sourceMappingURL=close-2LQMJVOA.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
callDaemon
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-NX2XYJP5.js";
|
|
5
|
+
import "./chunk-QXJDJDSZ.js";
|
|
6
|
+
import "./chunk-XRDCSHKZ.js";
|
|
7
7
|
import "./chunk-MX3NFLCE.js";
|
|
8
8
|
import "./chunk-ASMHEEKY.js";
|
|
9
9
|
import {
|
|
@@ -14,7 +14,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
14
14
|
import "./chunk-TBUCZX4A.js";
|
|
15
15
|
import "./chunk-Y2KL55OG.js";
|
|
16
16
|
import "./chunk-5SWZDVOW.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-5FDXH4CS.js";
|
|
18
18
|
import "./chunk-S5KZQJJI.js";
|
|
19
19
|
import "./chunk-IBIHDGTZ.js";
|
|
20
20
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -60,4 +60,4 @@ async function runTargetClose(args) {
|
|
|
60
60
|
export {
|
|
61
61
|
runTargetClose
|
|
62
62
|
};
|
|
63
|
-
//# sourceMappingURL=close-
|
|
63
|
+
//# sourceMappingURL=close-7J7EV237.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
parseNumberFlag
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-TI5I6UWY.js";
|
|
5
5
|
import {
|
|
6
6
|
callDaemon
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-NX2XYJP5.js";
|
|
8
|
+
import "./chunk-QXJDJDSZ.js";
|
|
9
|
+
import "./chunk-XRDCSHKZ.js";
|
|
10
10
|
import "./chunk-MX3NFLCE.js";
|
|
11
11
|
import "./chunk-ASMHEEKY.js";
|
|
12
12
|
import {
|
|
@@ -17,7 +17,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
17
17
|
import "./chunk-TBUCZX4A.js";
|
|
18
18
|
import "./chunk-Y2KL55OG.js";
|
|
19
19
|
import "./chunk-5SWZDVOW.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-5FDXH4CS.js";
|
|
21
21
|
import "./chunk-S5KZQJJI.js";
|
|
22
22
|
import "./chunk-IBIHDGTZ.js";
|
|
23
23
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -104,4 +104,4 @@ async function runSessionConnect(args) {
|
|
|
104
104
|
export {
|
|
105
105
|
runSessionConnect
|
|
106
106
|
};
|
|
107
|
-
//# sourceMappingURL=connect-
|
|
107
|
+
//# sourceMappingURL=connect-JFRSIW5M.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
parseNumberFlag
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-TI5I6UWY.js";
|
|
5
5
|
import {
|
|
6
6
|
callDaemon
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-NX2XYJP5.js";
|
|
8
|
+
import "./chunk-QXJDJDSZ.js";
|
|
9
|
+
import "./chunk-XRDCSHKZ.js";
|
|
10
10
|
import "./chunk-MX3NFLCE.js";
|
|
11
11
|
import "./chunk-ASMHEEKY.js";
|
|
12
12
|
import {
|
|
@@ -17,7 +17,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
17
17
|
import "./chunk-TBUCZX4A.js";
|
|
18
18
|
import "./chunk-Y2KL55OG.js";
|
|
19
19
|
import "./chunk-5SWZDVOW.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-5FDXH4CS.js";
|
|
21
21
|
import "./chunk-S5KZQJJI.js";
|
|
22
22
|
import "./chunk-IBIHDGTZ.js";
|
|
23
23
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -73,4 +73,4 @@ async function runConsolePoll(args) {
|
|
|
73
73
|
export {
|
|
74
74
|
runConsolePoll
|
|
75
75
|
};
|
|
76
|
-
//# sourceMappingURL=console-poll-
|
|
76
|
+
//# sourceMappingURL=console-poll-NSVVUNEC.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
callDaemon
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-NX2XYJP5.js";
|
|
5
|
+
import "./chunk-QXJDJDSZ.js";
|
|
6
|
+
import "./chunk-XRDCSHKZ.js";
|
|
7
7
|
import "./chunk-MX3NFLCE.js";
|
|
8
8
|
import "./chunk-ASMHEEKY.js";
|
|
9
9
|
import {
|
|
@@ -14,7 +14,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
14
14
|
import "./chunk-TBUCZX4A.js";
|
|
15
15
|
import "./chunk-Y2KL55OG.js";
|
|
16
16
|
import "./chunk-5SWZDVOW.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-5FDXH4CS.js";
|
|
18
18
|
import "./chunk-S5KZQJJI.js";
|
|
19
19
|
import "./chunk-IBIHDGTZ.js";
|
|
20
20
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -174,4 +174,4 @@ export {
|
|
|
174
174
|
__test__,
|
|
175
175
|
runCookieImport
|
|
176
176
|
};
|
|
177
|
-
//# sourceMappingURL=cookie-import-
|
|
177
|
+
//# sourceMappingURL=cookie-import-B7IQTGTN.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import "./chunk-RJNI3BHT.js";
|
|
2
2
|
import {
|
|
3
3
|
callDaemon
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-NX2XYJP5.js";
|
|
5
|
+
import "./chunk-QXJDJDSZ.js";
|
|
6
|
+
import "./chunk-XRDCSHKZ.js";
|
|
7
7
|
import "./chunk-MX3NFLCE.js";
|
|
8
8
|
import "./chunk-ASMHEEKY.js";
|
|
9
9
|
import {
|
|
@@ -14,7 +14,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
14
14
|
import "./chunk-TBUCZX4A.js";
|
|
15
15
|
import "./chunk-Y2KL55OG.js";
|
|
16
16
|
import "./chunk-5SWZDVOW.js";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-5FDXH4CS.js";
|
|
18
18
|
import "./chunk-S5KZQJJI.js";
|
|
19
19
|
import "./chunk-IBIHDGTZ.js";
|
|
20
20
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -114,4 +114,4 @@ export {
|
|
|
114
114
|
__test__,
|
|
115
115
|
runCookieList
|
|
116
116
|
};
|
|
117
|
-
//# sourceMappingURL=cookie-list-
|
|
117
|
+
//# sourceMappingURL=cookie-list-YHG7JCZZ.js.map
|
|
@@ -13,8 +13,8 @@ import {
|
|
|
13
13
|
fetchDaemonStatusFromMetadata,
|
|
14
14
|
fetchWithTimeout,
|
|
15
15
|
readDaemonMetadata
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-
|
|
16
|
+
} from "./chunk-QXJDJDSZ.js";
|
|
17
|
+
import "./chunk-XRDCSHKZ.js";
|
|
18
18
|
import "./chunk-MX3NFLCE.js";
|
|
19
19
|
import "./chunk-ASMHEEKY.js";
|
|
20
20
|
import {
|
|
@@ -27,7 +27,7 @@ import "./chunk-BUVYTJZR.js";
|
|
|
27
27
|
import "./chunk-TBUCZX4A.js";
|
|
28
28
|
import "./chunk-Y2KL55OG.js";
|
|
29
29
|
import "./chunk-5SWZDVOW.js";
|
|
30
|
-
import "./chunk-
|
|
30
|
+
import "./chunk-5FDXH4CS.js";
|
|
31
31
|
import "./chunk-S5KZQJJI.js";
|
|
32
32
|
import "./chunk-IBIHDGTZ.js";
|
|
33
33
|
import "./chunk-3WLCWHIV.js";
|
|
@@ -204,4 +204,4 @@ async function runDaemonCommand(args) {
|
|
|
204
204
|
export {
|
|
205
205
|
runDaemonCommand
|
|
206
206
|
};
|
|
207
|
-
//# sourceMappingURL=daemon-
|
|
207
|
+
//# sourceMappingURL=daemon-ENU4FOV4.js.map
|