abtars 0.3.3 → 0.3.4-alpha.1
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/bundle/{_registry.generated-7DRCE4V6.js → _registry.generated-ZJBAZMXN.js} +16 -15
- package/bundle/{_registry.generated-7DRCE4V6.js.map → _registry.generated-ZJBAZMXN.js.map} +1 -1
- package/bundle/abtars-browser.js +6 -5
- package/bundle/abtars-browser.js.map +1 -1
- package/bundle/abtars-cli.js +47 -39
- package/bundle/abtars-cli.js.map +2 -2
- package/bundle/abtars-restart.js +7 -7
- package/bundle/abtars-rss.js +2 -1
- package/bundle/abtars-rss.js.map +2 -2
- package/bundle/abtars-task.js +6 -5
- package/bundle/abtars-task.js.map +1 -1
- package/bundle/abtars-todo.js +2 -1
- package/bundle/abtars-todo.js.map +1 -1
- package/bundle/abtars.js +299 -209
- package/bundle/abtars.js.map +4 -4
- package/bundle/{acp-raw-client-AZJCEB6S.js → acp-raw-client-YTBGFN4S.js} +4 -3
- package/bundle/{acp-raw-client-AZJCEB6S.js.map → acp-raw-client-YTBGFN4S.js.map} +1 -1
- package/bundle/{action-gate-QYJL57IX.js → action-gate-YISTP773.js} +4 -3
- package/bundle/{action-gate-QYJL57IX.js.map → action-gate-YISTP773.js.map} +1 -1
- package/bundle/{agent-api-adapter-PYMNQXHE.js → agent-api-adapter-E4HWVJ32.js} +5 -4
- package/bundle/{agent-api-adapter-PYMNQXHE.js.map → agent-api-adapter-E4HWVJ32.js.map} +1 -1
- package/bundle/{agent-api-rate-limit-4GEZ4YN5.js → agent-api-rate-limit-VENFGOAD.js} +6 -5
- package/bundle/{agent-registry-563P4EUJ.js → agent-registry-DL7UT272.js} +9 -8
- package/bundle/bootstrap-V5MROD3X.js +62 -0
- package/bundle/bootstrap-V5MROD3X.js.map +7 -0
- package/bundle/{bridge-lock-transport-LXCF2IVN.js → bridge-lock-transport-BJAMHMXW.js} +6 -5
- package/bundle/{browser-2VZOGOGX.js → browser-PT54UWSW.js} +8 -7
- package/bundle/{budget-PPA7WY3D.js → budget-QNK6IIT6.js} +5 -4
- package/bundle/{budget-PPA7WY3D.js.map → budget-QNK6IIT6.js.map} +1 -1
- package/bundle/{capability-WXEA2WFK.js → capability-EKPGHQIO.js} +7 -6
- package/bundle/{chunk-C3EYYJN3.js → chunk-2BXXQG7P.js} +16 -4
- package/bundle/chunk-2BXXQG7P.js.map +7 -0
- package/bundle/{chunk-4PIVWXUJ.js → chunk-2ZD7VQRW.js} +2 -2
- package/bundle/{chunk-OY2HAK33.js → chunk-36ZEYDKZ.js} +1 -1
- package/bundle/chunk-36ZEYDKZ.js.map +7 -0
- package/bundle/{chunk-3QW2K53E.js → chunk-4IGLXZCC.js} +11 -19
- package/bundle/chunk-4IGLXZCC.js.map +7 -0
- package/bundle/{chunk-T7TAWGBX.js → chunk-52PQM4EZ.js} +2 -2
- package/bundle/{chunk-2RGR3LSV.js → chunk-5P5HF7IJ.js} +2 -2
- package/bundle/{chunk-LE23VPN3.js → chunk-63A7ZRIH.js} +4 -4
- package/bundle/{chunk-LE23VPN3.js.map → chunk-63A7ZRIH.js.map} +1 -1
- package/bundle/chunk-6IB3GVXK.js +77 -0
- package/bundle/chunk-6IB3GVXK.js.map +7 -0
- package/bundle/{chunk-OOKNHOCB.js → chunk-6S3G6GPO.js} +2 -2
- package/bundle/{chunk-E7MV7WFT.js → chunk-6VTHSN4V.js} +6 -6
- package/bundle/{chunk-NGZVJ52F.js → chunk-76YN7O3U.js} +7 -7
- package/bundle/{chunk-43DKPXTP.js → chunk-7LORCJCQ.js} +4 -4
- package/bundle/{chunk-HDOFJVFS.js → chunk-7OI46MH7.js} +3 -3
- package/bundle/{chunk-H2K23MOF.js → chunk-7XXISOHU.js} +21 -5
- package/bundle/chunk-7XXISOHU.js.map +7 -0
- package/bundle/{chunk-CB6S3ZRF.js → chunk-AFFW2LRY.js} +3 -3
- package/bundle/{chunk-TCI6FZTP.js → chunk-AHJDG6OM.js} +9 -9
- package/bundle/{chunk-NP72ZB7P.js → chunk-AMUJEP6L.js} +45 -45
- package/bundle/{chunk-NP72ZB7P.js.map → chunk-AMUJEP6L.js.map} +2 -2
- package/bundle/{chunk-BU7LTI2W.js → chunk-AWCO3DQ3.js} +6 -7
- package/bundle/chunk-AWCO3DQ3.js.map +7 -0
- package/bundle/{chunk-YME7NRGP.js → chunk-B2TIRDZC.js} +2 -2
- package/bundle/{chunk-SSCGWDIC.js → chunk-BWJ37KMW.js} +2 -2
- package/bundle/{chunk-ULO2PX3T.js → chunk-CCZ43JB7.js} +3 -3
- package/bundle/{chunk-FVUL44T4.js → chunk-CNENVY37.js} +2 -2
- package/bundle/{chunk-J5NOL4DB.js → chunk-DJOSXXM2.js} +2 -2
- package/bundle/{chunk-7RAGSHSH.js → chunk-DMDX35YT.js} +12 -10
- package/bundle/chunk-DMDX35YT.js.map +7 -0
- package/bundle/{chunk-DNDYD5SL.js → chunk-E7DZYCSF.js} +3 -3
- package/bundle/{chunk-M6Q3IQ4H.js → chunk-FF2F7ENH.js} +250 -118
- package/bundle/chunk-FF2F7ENH.js.map +7 -0
- package/bundle/{chunk-GCFIK6OB.js → chunk-FSGICOCX.js} +21 -21
- package/bundle/{chunk-IXKQ4JMX.js → chunk-GFAJSPMD.js} +33 -17
- package/bundle/chunk-GFAJSPMD.js.map +7 -0
- package/bundle/{chunk-FJF42RZY.js → chunk-GHRLO2UL.js} +3 -3
- package/bundle/{chunk-3LQOJVTB.js → chunk-HFOCNYEO.js} +1842 -1220
- package/bundle/{chunk-3LQOJVTB.js.map → chunk-HFOCNYEO.js.map} +4 -4
- package/bundle/{chunk-7WHXTCVD.js → chunk-HWFN7JGU.js} +2 -2
- package/bundle/{chunk-KBPVJGD7.js → chunk-IXGDDDAB.js} +3 -3
- package/bundle/chunk-JHLKEUHE.js +37 -0
- package/bundle/chunk-JHLKEUHE.js.map +7 -0
- package/bundle/{chunk-YEOZN5IE.js → chunk-JRGEEGZF.js} +2 -2
- package/bundle/{chunk-56D3Y44D.js → chunk-KLG4SCF7.js} +10 -10
- package/bundle/{chunk-ASYX43OU.js → chunk-LB43Q7G6.js} +26 -26
- package/bundle/{chunk-TVSPVZTX.js → chunk-LN5MNDSA.js} +3 -3
- package/bundle/{chunk-RJX45XIC.js → chunk-LPF2HELD.js} +9 -4
- package/bundle/chunk-LPF2HELD.js.map +7 -0
- package/bundle/{chunk-72T2Q7IG.js → chunk-MJACYH7A.js} +270 -282
- package/bundle/chunk-MJACYH7A.js.map +7 -0
- package/bundle/{chunk-SESM4GBM.js → chunk-MPQ2PJQX.js} +52 -25
- package/bundle/chunk-MPQ2PJQX.js.map +7 -0
- package/bundle/{chunk-FIAVVKGN.js → chunk-MTE32OQH.js} +3 -3
- package/bundle/{chunk-MV5KOWOR.js → chunk-N3Q3TASM.js} +7 -7
- package/bundle/{chunk-IQKADER4.js → chunk-O4YBJS2K.js} +2 -2
- package/bundle/{chunk-VJATH7AN.js → chunk-OOUCUCUW.js} +9 -8
- package/bundle/chunk-OOUCUCUW.js.map +7 -0
- package/bundle/{chunk-5V4VHKEA.js → chunk-OT6HLPEA.js} +3 -3
- package/bundle/{chunk-V6CV3QPH.js → chunk-OWPQIBAO.js} +2 -2
- package/bundle/{chunk-EDZGF6BC.js → chunk-QJPDBJDP.js} +11 -4
- package/bundle/chunk-QJPDBJDP.js.map +7 -0
- package/bundle/{chunk-N5VROZ7A.js → chunk-QMP2KC4W.js} +5 -5
- package/bundle/{chunk-4HNCOQSK.js → chunk-QOGZ7BFL.js} +7 -7
- package/bundle/{chunk-2LKQV2ND.js → chunk-R23FHZRY.js} +3 -3
- package/bundle/{chunk-SXNY6HC4.js → chunk-R4GYWVCR.js} +6 -6
- package/bundle/chunk-R4GYWVCR.js.map +7 -0
- package/bundle/{chunk-S7ZIGIR5.js → chunk-R76K6L6H.js} +27 -27
- package/bundle/{chunk-S7ZIGIR5.js.map → chunk-R76K6L6H.js.map} +1 -1
- package/bundle/{chunk-TY26WMQY.js → chunk-RCWQ34QR.js} +2 -2
- package/bundle/{chunk-MQJG7OJX.js → chunk-RJ2OUNFU.js} +38 -36
- package/bundle/chunk-RJ2OUNFU.js.map +7 -0
- package/bundle/{chunk-S6HEHCCG.js → chunk-RO3TAYBR.js} +83 -46
- package/bundle/chunk-RO3TAYBR.js.map +7 -0
- package/bundle/{chunk-ZOCEBV62.js → chunk-UU3RLJSD.js} +3 -3
- package/bundle/{chunk-P5O6QZDC.js → chunk-V7Y2LFO4.js} +10 -6
- package/bundle/chunk-V7Y2LFO4.js.map +7 -0
- package/bundle/{chunk-WP7FZHMI.js → chunk-W2PSVV2T.js} +2 -2
- package/bundle/{chunk-V2QIAXWZ.js → chunk-WEGFRA6G.js} +3 -3
- package/bundle/{chunk-ZY6DH2S4.js → chunk-WTIGZO3N.js} +80 -70
- package/bundle/chunk-WTIGZO3N.js.map +7 -0
- package/bundle/{chunk-O4GKI3Q3.js → chunk-X7DLKIQM.js} +4 -4
- package/bundle/{chunk-BNBC4T45.js → chunk-XZ4ZBDM5.js} +3 -3
- package/bundle/{chunk-24V4A6RP.js → chunk-YI2KSYB4.js} +4 -4
- package/bundle/{chunk-37EX63K4.js → chunk-YWHJJHJ2.js} +6998 -3621
- package/bundle/chunk-YWHJJHJ2.js.map +7 -0
- package/bundle/{chunk-IK4R3RBZ.js → chunk-YZCOA4DC.js} +3 -3
- package/bundle/{chunk-2FZJDMAF.js → chunk-ZGNSCJWH.js} +10 -10
- package/bundle/{chunk-W726UGI6.js → chunk-ZKMKAO75.js} +3 -3
- package/bundle/{chunk-WGWM4IZM.js → chunk-ZT5ZBGWS.js} +4 -4
- package/bundle/{chunk-WGWM4IZM.js.map → chunk-ZT5ZBGWS.js.map} +1 -1
- package/bundle/{commands-XXFU2ZF7.js → commands-2JQ5YTJX.js} +20 -20
- package/bundle/{config-EWDZ234X.js → config-ZEWIM5Z2.js} +8 -7
- package/bundle/{config-show-6J33O4TE.js → config-show-WBJPQPRD.js} +5 -5
- package/bundle/{context-OCS7HLJP.js → context-V75QNXB5.js} +5 -2
- package/bundle/{context-OCS7HLJP.js.map → context-V75QNXB5.js.map} +1 -1
- package/bundle/{daemon-LTDAXNA2.js → daemon-W7VQOSZC.js} +7 -7
- package/bundle/{delegation-tools-YDTWQMZD.js → delegation-tools-VGTRFQBF.js} +13 -11
- package/bundle/{registry-client-VN2MM2HI.js → deploy-5AGIULM2.js} +10 -6
- package/bundle/{deploy-lib-import-RGZJ3CGC.js → deploy-lib-import-ZBDYORN4.js} +5 -3
- package/bundle/{deps-PHSLIA77.js → deps-VB3S3RLF.js} +21 -19
- package/bundle/deps-VB3S3RLF.js.map +7 -0
- package/bundle/{direct-api-transport-OAKYQBJR.js → direct-api-transport-YSROTC35.js} +30 -28
- package/bundle/direct-api-transport-YSROTC35.js.map +7 -0
- package/bundle/{discord-adapter-WUNYPTDE.js → discord-adapter-LKBSIFLV.js} +26 -26
- package/bundle/{dist-7HEHHQI2.js → dist-KMK7TZGN.js} +376 -348
- package/bundle/dist-KMK7TZGN.js.map +7 -0
- package/bundle/{dns-wakeup-F55ALHXJ.js → dns-wakeup-KIURCCFJ.js} +4 -3
- package/bundle/{dns-wakeup-F55ALHXJ.js.map → dns-wakeup-KIURCCFJ.js.map} +1 -1
- package/bundle/{doctor-probes-3SLIUGKS.js → doctor-probes-46UKIROK.js} +4 -3
- package/bundle/{env-schema-MSDP2YBO.js → env-schema-YGHCKX5B.js} +5 -4
- package/bundle/{gossip-CS3G3447.js → gossip-VSEY2HSE.js} +7 -6
- package/bundle/{guardrails-24XK2COI.js → guardrails-U7M6H2GE.js} +6 -5
- package/bundle/{health-check-FRUNRVNQ.js → health-check-ASRLUJE5.js} +6 -2
- package/bundle/health-check-ASRLUJE5.js.map +7 -0
- package/bundle/{heartbeat-system-G4IFQXT6.js → heartbeat-system-MUXLT4E6.js} +7 -6
- package/bundle/{heartbeat-tier3-3ZO3EVXP.js → heartbeat-tier3-636ZMM4E.js} +45 -44
- package/bundle/heartbeat-tier3-636ZMM4E.js.map +7 -0
- package/bundle/{hook-system-X6INNJGV.js → hook-system-Z4XD6IM5.js} +5 -4
- package/bundle/{hotskills-6FQYTJIO.js → hotskills-AOUWVTQB.js} +7 -6
- package/bundle/{install-ZAHTZ5M5.js → install-3GGZUN22.js} +23 -20
- package/bundle/install-3GGZUN22.js.map +7 -0
- package/bundle/{install-manifest-QX7KVDCA.js → install-manifest-624KOB4S.js} +4 -3
- package/bundle/{install-manifest-QX7KVDCA.js.map → install-manifest-624KOB4S.js.map} +1 -1
- package/bundle/{irc-adapter-IEJQKKJF.js → irc-adapter-SA7GLJGR.js} +5 -4
- package/bundle/{irc-adapter-IEJQKKJF.js.map → irc-adapter-SA7GLJGR.js.map} +1 -1
- package/bundle/{irc-config-TTWNYFLH.js → irc-config-PG4X2I4M.js} +6 -5
- package/bundle/{irc-config-TTWNYFLH.js.map → irc-config-PG4X2I4M.js.map} +1 -1
- package/bundle/{kanban-board-J6RO3ZU7.js → kanban-board-4AI5Z6B5.js} +7 -5
- package/bundle/{kanban-channel-5EIXBFSA.js → kanban-channel-JMBYWGWD.js} +8 -6
- package/bundle/{lazy-require-V6EFUATC.js → lazy-require-GURNBC3C.js} +11 -6
- package/bundle/{logger-Y3VILPRH.js → logger-UQJPZMYV.js} +4 -3
- package/bundle/{logs-YS3GDURO.js → logs-2WTDLMB5.js} +5 -5
- package/bundle/{main-chat-YLZDNQPO.js → main-chat-EID5Y6H2.js} +6 -5
- package/bundle/{master-user-Z4M7KCJE.js → master-user-TKA7M2GL.js} +7 -6
- package/bundle/{media-utils-P6RZ2K3U.js → media-utils-X3UN342B.js} +44 -43
- package/bundle/{media-utils-P6RZ2K3U.js.map → media-utils-X3UN342B.js.map} +2 -2
- package/bundle/{message-pipeline-MHEBDJLH.js → message-pipeline-TAWXNEVS.js} +20 -20
- package/bundle/meta.json +9264 -8575
- package/bundle/{migrate-layout-RJJQLVGR.js → migrate-layout-KEAIIN26.js} +8 -4
- package/bundle/migrate-layout-KEAIIN26.js.map +7 -0
- package/bundle/{nerve-VZNMFDGY.js → nerve-TC34H4EL.js} +5 -4
- package/bundle/{notification-VV2OR6NW.js → notification-JQNVGICN.js} +8 -7
- package/bundle/{openrouter-credits-LXC7P4G6.js → openrouter-credits-5Q3EYWE5.js} +5 -4
- package/bundle/{openrouter-credits-LXC7P4G6.js.map → openrouter-credits-5Q3EYWE5.js.map} +1 -1
- package/bundle/{orc-KC4USP55.js → orc-74Z62W7B.js} +4 -4
- package/bundle/{orc-tools-CHRSXSAS.js → orc-tools-GME3DKIN.js} +5 -4
- package/bundle/{paths-EDK6KWHG.js → paths-BAUNPLNJ.js} +6 -2
- package/bundle/{paths-RZF6WDMG.js → paths-MZC2KU2C.js} +3 -2
- package/bundle/{peer-auth-SRONOLNG.js → peer-auth-VRO3JYL5.js} +9 -8
- package/bundle/{peer-client-VOF77T6C.js → peer-client-WLK5GZQS.js} +9 -8
- package/bundle/{peer-client-VOF77T6C.js.map → peer-client-WLK5GZQS.js.map} +1 -1
- package/bundle/{peer-config-FRWLEYQ5.js → peer-config-24WILLCJ.js} +6 -5
- package/bundle/{peer-jwt-XY3XRIA2.js → peer-jwt-ZR6RF3XM.js} +6 -5
- package/bundle/{peer-transport-UBBXTDRP.js → peer-transport-BK5VHI2M.js} +8 -7
- package/bundle/{phase-transport-4NQHZX75.js → phase-transport-7QJM7J6V.js} +18 -16
- package/bundle/{reconcile-2EUXJ6W5.js → reconcile-7N7OE2GU.js} +5 -4
- package/bundle/{reconciler-FFQGV4DO.js → reconciler-7LOOUK43.js} +13 -11
- package/bundle/{reconciler-FFQGV4DO.js.map → reconciler-7LOOUK43.js.map} +1 -1
- package/bundle/{restore-NFDE2RG6.js → restore-MENZ3I3K.js} +13 -9
- package/bundle/{restore-NFDE2RG6.js.map → restore-MENZ3I3K.js.map} +3 -3
- package/bundle/{rollback-MVZ53XS4.js → rollback-JOHY6KWW.js} +5 -5
- package/bundle/{chunk-SKY6656M.js → sandbox-runtime-T7RF4WJD.js} +11 -28
- package/bundle/{chunk-SKY6656M.js.map → sandbox-runtime-T7RF4WJD.js.map} +1 -1
- package/bundle/{self-healer-utils-KD6LV63S.js → self-healer-utils-OR2N6RLD.js} +5 -4
- package/bundle/{self-healer-utils-KD6LV63S.js.map → self-healer-utils-OR2N6RLD.js.map} +1 -1
- package/bundle/{sha-tracker-2DB4R2TW.js → sha-tracker-BXOLWZJL.js} +5 -4
- package/bundle/{skill-session-BPDVA6ZG.js → skill-session-H6EQ4NGN.js} +5 -4
- package/bundle/{skill-session-BPDVA6ZG.js.map → skill-session-H6EQ4NGN.js.map} +1 -1
- package/bundle/{skill-stats-TPD2NROA.js → skill-stats-7O777ZSZ.js} +6 -5
- package/bundle/{skill-watcher-D7QYYYON.js → skill-watcher-ZGLTDPG5.js} +6 -5
- package/bundle/{sleep-GH6DLBJJ.js → sleep-3LFZH727.js} +10 -9
- package/bundle/{soul-bundle-GXLMDBCC.js → soul-bundle-RQ2YQMJW.js} +10 -9
- package/bundle/{spin-4DBYHS3E.js → spin-76K4R6FK.js} +12 -10
- package/bundle/{spin-notifications-IKYJPER5.js → spin-notifications-LD46B4K5.js} +7 -5
- package/bundle/{spin-notifications-IKYJPER5.js.map → spin-notifications-LD46B4K5.js.map} +1 -1
- package/bundle/{spin-types-PLJH3SIK.js → spin-types-MOKTZXGB.js} +5 -4
- package/bundle/{src-SUFZ27S5.js → src-6BTCMOD3.js} +4 -4
- package/bundle/{sse-parser-anthropic-U7ILHOY5.js → sse-parser-anthropic-NV2CGBIT.js} +5 -4
- package/bundle/{sse-parser-anthropic-U7ILHOY5.js.map → sse-parser-anthropic-NV2CGBIT.js.map} +1 -1
- package/bundle/{sse-parser-responses-OI73R3AH.js → sse-parser-responses-FC3PFHQ5.js} +5 -4
- package/bundle/{sse-parser-responses-OI73R3AH.js.map → sse-parser-responses-FC3PFHQ5.js.map} +1 -1
- package/bundle/{ssrf-guard-6GP4QYVA.js → ssrf-guard-E2YPLW6G.js} +5 -4
- package/bundle/{ssrf-guard-6GP4QYVA.js.map → ssrf-guard-E2YPLW6G.js.map} +1 -1
- package/bundle/{start-JT2BPMSW.js → start-HPO5LYJP.js} +5 -5
- package/bundle/start-HPO5LYJP.js.map +7 -0
- package/bundle/{stt-KD3AABKG.js → stt-UE7EOYD7.js} +6 -5
- package/bundle/{subagent-runtime-LVECAUPV.js → subagent-runtime-4X3UHF4H.js} +6 -5
- package/bundle/system-status-PLPWV4RF.js +346 -0
- package/bundle/system-status-PLPWV4RF.js.map +7 -0
- package/bundle/{task-store-2XRDM3AW.js → task-store-RAFMDQ7N.js} +6 -5
- package/bundle/{telegram-adapter-UJ3RYYV6.js → telegram-adapter-PPXKTGOP.js} +35 -35
- package/bundle/{tool-registry-YU6WBXPA.js → tool-registry-NKIPNJZ5.js} +25 -23
- package/bundle/{tool-sandbox-RNNPDR5M.js → tool-sandbox-DQCP3UTU.js} +6 -5
- package/bundle/{transport-config-OK3MZPJK.js → transport-config-SF6GBV47.js} +9 -8
- package/bundle/{update-ENNPRW7Y.js → update-QOOGMFSJ.js} +6 -6
- package/bundle/{update-check-SJB6GV3A.js → update-check-LPZG3K5P.js} +3 -2
- package/bundle/{update-check-SJB6GV3A.js.map → update-check-LPZG3K5P.js.map} +1 -1
- package/bundle/{usage-tracker-HRSGC7QC.js → usage-tracker-TBDM4KE6.js} +2 -2
- package/bundle/{user-registry-6PUJJ5J2.js → user-registry-OYJVAHDD.js} +6 -5
- package/bundle/{wrapper-WLHLG4MI.js → wrapper-W66YICNZ.js} +3 -3
- package/bundle/{ws-peer-client-WHW3RJTD.js → ws-peer-client-G5QHOF6K.js} +15 -14
- package/bundle/{ws-peer-client-WHW3RJTD.js.map → ws-peer-client-G5QHOF6K.js.map} +2 -2
- package/package.json +3 -7
- package/scripts/emergency-deploy.sh +11 -8
- package/scripts/emergency-update.sh +156 -23
- package/templates/config/.env +1 -1
- package/templates/config/models.json +13 -0
- package/bundle/chunk-37EX63K4.js.map +0 -7
- package/bundle/chunk-3QW2K53E.js.map +0 -7
- package/bundle/chunk-72T2Q7IG.js.map +0 -7
- package/bundle/chunk-7RAGSHSH.js.map +0 -7
- package/bundle/chunk-BU7LTI2W.js.map +0 -7
- package/bundle/chunk-C3EYYJN3.js.map +0 -7
- package/bundle/chunk-CAOIIVFP.js +0 -110
- package/bundle/chunk-CAOIIVFP.js.map +0 -7
- package/bundle/chunk-EDZGF6BC.js.map +0 -7
- package/bundle/chunk-H2K23MOF.js.map +0 -7
- package/bundle/chunk-HAZHNBBY.js +0 -156
- package/bundle/chunk-HAZHNBBY.js.map +0 -7
- package/bundle/chunk-IXKQ4JMX.js.map +0 -7
- package/bundle/chunk-JAJ3DUQ2.js +0 -30
- package/bundle/chunk-JAJ3DUQ2.js.map +0 -7
- package/bundle/chunk-KMFR5AVY.js +0 -45
- package/bundle/chunk-KMFR5AVY.js.map +0 -7
- package/bundle/chunk-M6Q3IQ4H.js.map +0 -7
- package/bundle/chunk-MQJG7OJX.js.map +0 -7
- package/bundle/chunk-OY2HAK33.js.map +0 -7
- package/bundle/chunk-P5O6QZDC.js.map +0 -7
- package/bundle/chunk-RJX45XIC.js.map +0 -7
- package/bundle/chunk-S6HEHCCG.js.map +0 -7
- package/bundle/chunk-SESM4GBM.js.map +0 -7
- package/bundle/chunk-SXNY6HC4.js.map +0 -7
- package/bundle/chunk-VJATH7AN.js.map +0 -7
- package/bundle/chunk-ZY6DH2S4.js.map +0 -7
- package/bundle/deps-PHSLIA77.js.map +0 -7
- package/bundle/direct-api-transport-OAKYQBJR.js.map +0 -7
- package/bundle/dist-7HEHHQI2.js.map +0 -7
- package/bundle/health-check-FRUNRVNQ.js.map +0 -7
- package/bundle/heartbeat-tier3-3ZO3EVXP.js.map +0 -7
- package/bundle/install-ZAHTZ5M5.js.map +0 -7
- package/bundle/migrate-layout-RJJQLVGR.js.map +0 -7
- package/bundle/phase-config-V4XETN5F.js +0 -18
- package/bundle/sandbox-runtime-WHACQLLN.js +0 -22
- package/bundle/start-JT2BPMSW.js.map +0 -7
- package/bundle/system-status-XXJWTVJN.js +0 -243
- package/bundle/system-status-XXJWTVJN.js.map +0 -7
- package/bundle/user-registry-6PUJJ5J2.js.map +0 -7
- package/bundle/wrapper-WLHLG4MI.js.map +0 -7
- /package/bundle/{agent-api-rate-limit-4GEZ4YN5.js.map → agent-api-rate-limit-VENFGOAD.js.map} +0 -0
- /package/bundle/{agent-registry-563P4EUJ.js.map → agent-registry-DL7UT272.js.map} +0 -0
- /package/bundle/{bridge-lock-transport-LXCF2IVN.js.map → bridge-lock-transport-BJAMHMXW.js.map} +0 -0
- /package/bundle/{browser-2VZOGOGX.js.map → browser-PT54UWSW.js.map} +0 -0
- /package/bundle/{capability-WXEA2WFK.js.map → capability-EKPGHQIO.js.map} +0 -0
- /package/bundle/{chunk-4PIVWXUJ.js.map → chunk-2ZD7VQRW.js.map} +0 -0
- /package/bundle/{chunk-T7TAWGBX.js.map → chunk-52PQM4EZ.js.map} +0 -0
- /package/bundle/{chunk-2RGR3LSV.js.map → chunk-5P5HF7IJ.js.map} +0 -0
- /package/bundle/{chunk-OOKNHOCB.js.map → chunk-6S3G6GPO.js.map} +0 -0
- /package/bundle/{chunk-E7MV7WFT.js.map → chunk-6VTHSN4V.js.map} +0 -0
- /package/bundle/{chunk-NGZVJ52F.js.map → chunk-76YN7O3U.js.map} +0 -0
- /package/bundle/{chunk-43DKPXTP.js.map → chunk-7LORCJCQ.js.map} +0 -0
- /package/bundle/{chunk-HDOFJVFS.js.map → chunk-7OI46MH7.js.map} +0 -0
- /package/bundle/{chunk-CB6S3ZRF.js.map → chunk-AFFW2LRY.js.map} +0 -0
- /package/bundle/{chunk-TCI6FZTP.js.map → chunk-AHJDG6OM.js.map} +0 -0
- /package/bundle/{chunk-YME7NRGP.js.map → chunk-B2TIRDZC.js.map} +0 -0
- /package/bundle/{chunk-SSCGWDIC.js.map → chunk-BWJ37KMW.js.map} +0 -0
- /package/bundle/{chunk-ULO2PX3T.js.map → chunk-CCZ43JB7.js.map} +0 -0
- /package/bundle/{chunk-FVUL44T4.js.map → chunk-CNENVY37.js.map} +0 -0
- /package/bundle/{chunk-J5NOL4DB.js.map → chunk-DJOSXXM2.js.map} +0 -0
- /package/bundle/{chunk-DNDYD5SL.js.map → chunk-E7DZYCSF.js.map} +0 -0
- /package/bundle/{chunk-GCFIK6OB.js.map → chunk-FSGICOCX.js.map} +0 -0
- /package/bundle/{chunk-FJF42RZY.js.map → chunk-GHRLO2UL.js.map} +0 -0
- /package/bundle/{chunk-7WHXTCVD.js.map → chunk-HWFN7JGU.js.map} +0 -0
- /package/bundle/{chunk-KBPVJGD7.js.map → chunk-IXGDDDAB.js.map} +0 -0
- /package/bundle/{chunk-YEOZN5IE.js.map → chunk-JRGEEGZF.js.map} +0 -0
- /package/bundle/{chunk-56D3Y44D.js.map → chunk-KLG4SCF7.js.map} +0 -0
- /package/bundle/{chunk-ASYX43OU.js.map → chunk-LB43Q7G6.js.map} +0 -0
- /package/bundle/{chunk-TVSPVZTX.js.map → chunk-LN5MNDSA.js.map} +0 -0
- /package/bundle/{chunk-FIAVVKGN.js.map → chunk-MTE32OQH.js.map} +0 -0
- /package/bundle/{chunk-MV5KOWOR.js.map → chunk-N3Q3TASM.js.map} +0 -0
- /package/bundle/{chunk-IQKADER4.js.map → chunk-O4YBJS2K.js.map} +0 -0
- /package/bundle/{chunk-5V4VHKEA.js.map → chunk-OT6HLPEA.js.map} +0 -0
- /package/bundle/{chunk-V6CV3QPH.js.map → chunk-OWPQIBAO.js.map} +0 -0
- /package/bundle/{chunk-N5VROZ7A.js.map → chunk-QMP2KC4W.js.map} +0 -0
- /package/bundle/{chunk-4HNCOQSK.js.map → chunk-QOGZ7BFL.js.map} +0 -0
- /package/bundle/{chunk-2LKQV2ND.js.map → chunk-R23FHZRY.js.map} +0 -0
- /package/bundle/{chunk-TY26WMQY.js.map → chunk-RCWQ34QR.js.map} +0 -0
- /package/bundle/{chunk-ZOCEBV62.js.map → chunk-UU3RLJSD.js.map} +0 -0
- /package/bundle/{chunk-WP7FZHMI.js.map → chunk-W2PSVV2T.js.map} +0 -0
- /package/bundle/{chunk-V2QIAXWZ.js.map → chunk-WEGFRA6G.js.map} +0 -0
- /package/bundle/{chunk-O4GKI3Q3.js.map → chunk-X7DLKIQM.js.map} +0 -0
- /package/bundle/{chunk-BNBC4T45.js.map → chunk-XZ4ZBDM5.js.map} +0 -0
- /package/bundle/{chunk-24V4A6RP.js.map → chunk-YI2KSYB4.js.map} +0 -0
- /package/bundle/{chunk-IK4R3RBZ.js.map → chunk-YZCOA4DC.js.map} +0 -0
- /package/bundle/{chunk-2FZJDMAF.js.map → chunk-ZGNSCJWH.js.map} +0 -0
- /package/bundle/{chunk-W726UGI6.js.map → chunk-ZKMKAO75.js.map} +0 -0
- /package/bundle/{commands-XXFU2ZF7.js.map → commands-2JQ5YTJX.js.map} +0 -0
- /package/bundle/{config-EWDZ234X.js.map → config-ZEWIM5Z2.js.map} +0 -0
- /package/bundle/{config-show-6J33O4TE.js.map → config-show-WBJPQPRD.js.map} +0 -0
- /package/bundle/{daemon-LTDAXNA2.js.map → daemon-W7VQOSZC.js.map} +0 -0
- /package/bundle/{delegation-tools-YDTWQMZD.js.map → delegation-tools-VGTRFQBF.js.map} +0 -0
- /package/bundle/{deploy-lib-import-RGZJ3CGC.js.map → deploy-5AGIULM2.js.map} +0 -0
- /package/bundle/{doctor-probes-3SLIUGKS.js.map → deploy-lib-import-ZBDYORN4.js.map} +0 -0
- /package/bundle/{discord-adapter-WUNYPTDE.js.map → discord-adapter-LKBSIFLV.js.map} +0 -0
- /package/bundle/{env-schema-MSDP2YBO.js.map → doctor-probes-46UKIROK.js.map} +0 -0
- /package/bundle/{gossip-CS3G3447.js.map → env-schema-YGHCKX5B.js.map} +0 -0
- /package/bundle/{guardrails-24XK2COI.js.map → gossip-VSEY2HSE.js.map} +0 -0
- /package/bundle/{heartbeat-system-G4IFQXT6.js.map → guardrails-U7M6H2GE.js.map} +0 -0
- /package/bundle/{hook-system-X6INNJGV.js.map → heartbeat-system-MUXLT4E6.js.map} +0 -0
- /package/bundle/{hotskills-6FQYTJIO.js.map → hook-system-Z4XD6IM5.js.map} +0 -0
- /package/bundle/{kanban-board-J6RO3ZU7.js.map → hotskills-AOUWVTQB.js.map} +0 -0
- /package/bundle/{kanban-channel-5EIXBFSA.js.map → kanban-board-4AI5Z6B5.js.map} +0 -0
- /package/bundle/{lazy-require-V6EFUATC.js.map → kanban-channel-JMBYWGWD.js.map} +0 -0
- /package/bundle/{logger-Y3VILPRH.js.map → lazy-require-GURNBC3C.js.map} +0 -0
- /package/bundle/{main-chat-YLZDNQPO.js.map → logger-UQJPZMYV.js.map} +0 -0
- /package/bundle/{logs-YS3GDURO.js.map → logs-2WTDLMB5.js.map} +0 -0
- /package/bundle/{master-user-Z4M7KCJE.js.map → main-chat-EID5Y6H2.js.map} +0 -0
- /package/bundle/{message-pipeline-MHEBDJLH.js.map → master-user-TKA7M2GL.js.map} +0 -0
- /package/bundle/{nerve-VZNMFDGY.js.map → message-pipeline-TAWXNEVS.js.map} +0 -0
- /package/bundle/{notification-VV2OR6NW.js.map → nerve-TC34H4EL.js.map} +0 -0
- /package/bundle/{orc-tools-CHRSXSAS.js.map → notification-JQNVGICN.js.map} +0 -0
- /package/bundle/{orc-KC4USP55.js.map → orc-74Z62W7B.js.map} +0 -0
- /package/bundle/{paths-EDK6KWHG.js.map → orc-tools-GME3DKIN.js.map} +0 -0
- /package/bundle/{paths-RZF6WDMG.js.map → paths-BAUNPLNJ.js.map} +0 -0
- /package/bundle/{peer-auth-SRONOLNG.js.map → paths-MZC2KU2C.js.map} +0 -0
- /package/bundle/{peer-config-FRWLEYQ5.js.map → peer-auth-VRO3JYL5.js.map} +0 -0
- /package/bundle/{peer-jwt-XY3XRIA2.js.map → peer-config-24WILLCJ.js.map} +0 -0
- /package/bundle/{peer-transport-UBBXTDRP.js.map → peer-jwt-ZR6RF3XM.js.map} +0 -0
- /package/bundle/{phase-config-V4XETN5F.js.map → peer-transport-BK5VHI2M.js.map} +0 -0
- /package/bundle/{phase-transport-4NQHZX75.js.map → phase-transport-7QJM7J6V.js.map} +0 -0
- /package/bundle/{reconcile-2EUXJ6W5.js.map → reconcile-7N7OE2GU.js.map} +0 -0
- /package/bundle/{registry-client-VN2MM2HI.js.map → rollback-JOHY6KWW.js.map} +0 -0
- /package/bundle/{rollback-MVZ53XS4.js.map → sha-tracker-BXOLWZJL.js.map} +0 -0
- /package/bundle/{sandbox-runtime-WHACQLLN.js.map → skill-stats-7O777ZSZ.js.map} +0 -0
- /package/bundle/{sha-tracker-2DB4R2TW.js.map → skill-watcher-ZGLTDPG5.js.map} +0 -0
- /package/bundle/{skill-stats-TPD2NROA.js.map → sleep-3LFZH727.js.map} +0 -0
- /package/bundle/{skill-watcher-D7QYYYON.js.map → soul-bundle-RQ2YQMJW.js.map} +0 -0
- /package/bundle/{sleep-GH6DLBJJ.js.map → spin-76K4R6FK.js.map} +0 -0
- /package/bundle/{soul-bundle-GXLMDBCC.js.map → spin-types-MOKTZXGB.js.map} +0 -0
- /package/bundle/{spin-4DBYHS3E.js.map → src-6BTCMOD3.js.map} +0 -0
- /package/bundle/{spin-types-PLJH3SIK.js.map → stt-UE7EOYD7.js.map} +0 -0
- /package/bundle/{src-SUFZ27S5.js.map → subagent-runtime-4X3UHF4H.js.map} +0 -0
- /package/bundle/{stt-KD3AABKG.js.map → task-store-RAFMDQ7N.js.map} +0 -0
- /package/bundle/{telegram-adapter-UJ3RYYV6.js.map → telegram-adapter-PPXKTGOP.js.map} +0 -0
- /package/bundle/{subagent-runtime-LVECAUPV.js.map → tool-registry-NKIPNJZ5.js.map} +0 -0
- /package/bundle/{task-store-2XRDM3AW.js.map → tool-sandbox-DQCP3UTU.js.map} +0 -0
- /package/bundle/{tool-registry-YU6WBXPA.js.map → transport-config-SF6GBV47.js.map} +0 -0
- /package/bundle/{tool-sandbox-RNNPDR5M.js.map → update-QOOGMFSJ.js.map} +0 -0
- /package/bundle/{transport-config-OK3MZPJK.js.map → usage-tracker-TBDM4KE6.js.map} +0 -0
- /package/bundle/{update-ENNPRW7Y.js.map → user-registry-OYJVAHDD.js.map} +0 -0
- /package/bundle/{usage-tracker-HRSGC7QC.js.map → wrapper-W66YICNZ.js.map} +0 -0
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire as __bundleCreateRequire } from 'node:module'; import { fileURLToPath as __bundleFileURLToPath } from 'node:url'; import { dirname as __bundleDirname } from 'node:path'; const require = __bundleCreateRequire(import.meta.url); const __chunk_filename = __bundleFileURLToPath(import.meta.url); const __chunk_dirname = __bundleDirname(__chunk_filename);
|
|
3
|
-
import {
|
|
4
|
-
downloadTarball,
|
|
5
|
-
resolveVersion
|
|
6
|
-
} from "./chunk-KMFR5AVY.js";
|
|
7
|
-
import {
|
|
8
|
-
printBanner
|
|
9
|
-
} from "./chunk-TVSPVZTX.js";
|
|
10
3
|
import {
|
|
11
4
|
acquireLock,
|
|
12
5
|
cleanStaleStaging,
|
|
@@ -15,17 +8,20 @@ import {
|
|
|
15
8
|
healthProbe,
|
|
16
9
|
readManifest,
|
|
17
10
|
writeManifest
|
|
18
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-QJPDBJDP.js";
|
|
19
12
|
import {
|
|
20
|
-
|
|
21
|
-
|
|
13
|
+
init_paths,
|
|
14
|
+
packagePaths,
|
|
15
|
+
resolveAbmindHome
|
|
16
|
+
} from "./chunk-2BXXQG7P.js";
|
|
22
17
|
|
|
23
18
|
// src/cli/deploy-lib/deploy.ts
|
|
24
|
-
import { hostname } from "node:os";
|
|
19
|
+
import { hostname, homedir } from "node:os";
|
|
25
20
|
import { join as join3 } from "node:path";
|
|
26
|
-
import { existsSync as existsSync3, readFileSync as readFileSync2, writeFileSync, rmSync, cpSync as cpSync2, mkdirSync, copyFileSync
|
|
21
|
+
import { existsSync as existsSync3, readFileSync as readFileSync2, writeFileSync as writeFileSync2, rmSync, cpSync as cpSync2, mkdirSync, copyFileSync } from "node:fs";
|
|
27
22
|
import { mkdir as mkdir3, writeFile as writeFile2 } from "node:fs/promises";
|
|
28
|
-
import { execSync
|
|
23
|
+
import { execSync } from "node:child_process";
|
|
24
|
+
init_paths();
|
|
29
25
|
|
|
30
26
|
// src/cli/update-sources/dev.ts
|
|
31
27
|
import { spawnSync } from "node:child_process";
|
|
@@ -137,20 +133,7 @@ function makeLocalBuildSource(opts = {}) {
|
|
|
137
133
|
const pkgVersion = await readPackageVersion(repoRoot);
|
|
138
134
|
const version = `${pkgVersion}-${commit}`;
|
|
139
135
|
if (opts.skipInstall !== true) {
|
|
140
|
-
|
|
141
|
-
try {
|
|
142
|
-
return spawnSync("which", ["pnpm"], { encoding: "utf-8" }).stdout.trim() || "pnpm";
|
|
143
|
-
} catch {
|
|
144
|
-
return "pnpm";
|
|
145
|
-
}
|
|
146
|
-
})();
|
|
147
|
-
try {
|
|
148
|
-
runCmd(pnpmPath, ["install", "--frozen-lockfile"], repoRoot);
|
|
149
|
-
} catch (err) {
|
|
150
|
-
if (err instanceof LocalBuildError && err.message.includes("ENOENT")) {
|
|
151
|
-
runCmd("npm", ["install"], repoRoot);
|
|
152
|
-
} else throw err;
|
|
153
|
-
}
|
|
136
|
+
runCmd("npm", ["ci"], repoRoot);
|
|
154
137
|
}
|
|
155
138
|
runCmd("node", ["esbuild.config.js"], repoRoot);
|
|
156
139
|
const publicSrc = join(repoRoot, "src", "components", "dashboard", "public");
|
|
@@ -178,6 +161,45 @@ import { spawnSync as spawnSync2 } from "node:child_process";
|
|
|
178
161
|
import { existsSync as existsSync2, readFileSync, unlinkSync } from "node:fs";
|
|
179
162
|
import { mkdir as mkdir2, rm as rm2 } from "node:fs/promises";
|
|
180
163
|
import { join as join2 } from "node:path";
|
|
164
|
+
|
|
165
|
+
// src/cli/update-sources/registry-client.ts
|
|
166
|
+
import { writeFileSync } from "node:fs";
|
|
167
|
+
var REGISTRY = "https://registry.npmjs.org";
|
|
168
|
+
var METADATA_TIMEOUT_MS = 3e4;
|
|
169
|
+
var TARBALL_TIMEOUT_MS = 12e4;
|
|
170
|
+
async function resolveVersion(packageName, tag) {
|
|
171
|
+
const controller = new AbortController();
|
|
172
|
+
const timer = setTimeout(() => controller.abort(), METADATA_TIMEOUT_MS);
|
|
173
|
+
try {
|
|
174
|
+
const res = await fetch(`${REGISTRY}/${packageName}`, {
|
|
175
|
+
headers: { Accept: "application/vnd.npm.install-v1+json" },
|
|
176
|
+
signal: controller.signal
|
|
177
|
+
});
|
|
178
|
+
if (!res.ok) throw new Error(`Registry returned ${res.status} for ${packageName}`);
|
|
179
|
+
const data = await res.json();
|
|
180
|
+
const version = data["dist-tags"]?.[tag];
|
|
181
|
+
if (!version) throw new Error(`No dist-tag '${tag}' for ${packageName}`);
|
|
182
|
+
const tarballUrl = data.versions?.[version]?.dist?.tarball;
|
|
183
|
+
if (!tarballUrl) throw new Error(`No tarball URL for ${packageName}@${version}`);
|
|
184
|
+
return { version, tarballUrl };
|
|
185
|
+
} finally {
|
|
186
|
+
clearTimeout(timer);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
async function downloadTarball(url, destPath) {
|
|
190
|
+
const controller = new AbortController();
|
|
191
|
+
const timer = setTimeout(() => controller.abort(), TARBALL_TIMEOUT_MS);
|
|
192
|
+
try {
|
|
193
|
+
const res = await fetch(url, { signal: controller.signal });
|
|
194
|
+
if (!res.ok) throw new Error(`Tarball download failed: ${res.status} ${url}`);
|
|
195
|
+
const buf = Buffer.from(await res.arrayBuffer());
|
|
196
|
+
writeFileSync(destPath, buf);
|
|
197
|
+
} finally {
|
|
198
|
+
clearTimeout(timer);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
// src/cli/update-sources/npm.ts
|
|
181
203
|
var TAR_TIMEOUT_MS = 6e4;
|
|
182
204
|
function run(cmd, args, cwd) {
|
|
183
205
|
const r = spawnSync2(cmd, args, { cwd, encoding: "utf-8", timeout: TAR_TIMEOUT_MS });
|
|
@@ -224,40 +246,37 @@ function readJsonField(file, field) {
|
|
|
224
246
|
return void 0;
|
|
225
247
|
}
|
|
226
248
|
}
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
const
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
249
|
+
function syncSrcRepos(srcDir, names) {
|
|
250
|
+
mkdirSync(srcDir, { recursive: true });
|
|
251
|
+
for (const name of names) {
|
|
252
|
+
const dir = join3(srcDir, name);
|
|
253
|
+
try {
|
|
254
|
+
if (existsSync3(join3(dir, ".git"))) {
|
|
255
|
+
execSync("git fetch --depth 1 origin dev && git reset --hard origin/dev", { cwd: dir, stdio: "pipe", timeout: 3e4 });
|
|
256
|
+
} else {
|
|
257
|
+
rmSync(dir, { recursive: true, force: true });
|
|
258
|
+
execSync(`git clone --depth 1 -b dev https://github.com/aksika/${name}.git`, { cwd: srcDir, stdio: "pipe", timeout: 12e4 });
|
|
259
|
+
}
|
|
260
|
+
} catch {
|
|
237
261
|
try {
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
execSync(`git clone --depth 1 -b dev https://github.com/aksika/${name}.git`, { cwd: srcDir, stdio: "pipe", timeout: 12e4 });
|
|
243
|
-
}
|
|
244
|
-
} catch {
|
|
245
|
-
try {
|
|
246
|
-
rmSync(dir, { recursive: true, force: true });
|
|
247
|
-
execSync(`git clone --depth 1 -b dev https://github.com/aksika/${name}.git`, { cwd: srcDir, stdio: "pipe", timeout: 12e4 });
|
|
248
|
-
} catch (err) {
|
|
249
|
-
process.stderr.write(`Failed to sync ${name}: ${err instanceof Error ? err.message : String(err)}
|
|
262
|
+
rmSync(dir, { recursive: true, force: true });
|
|
263
|
+
execSync(`git clone --depth 1 -b dev https://github.com/aksika/${name}.git`, { cwd: srcDir, stdio: "pipe", timeout: 12e4 });
|
|
264
|
+
} catch (err) {
|
|
265
|
+
process.stderr.write(`Failed to sync ${name}: ${err instanceof Error ? err.message : String(err)}
|
|
250
266
|
`);
|
|
251
|
-
|
|
252
|
-
}
|
|
267
|
+
if (name === "abtars") throw err;
|
|
253
268
|
}
|
|
254
269
|
}
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
async function deploy(opts) {
|
|
273
|
+
const paths = packagePaths("abtars");
|
|
274
|
+
if (!opts.localDir) {
|
|
275
|
+
const srcDir = join3(paths.releasesDir, "src");
|
|
276
|
+
try {
|
|
277
|
+
syncSrcRepos(srcDir, ["abtars"]);
|
|
278
|
+
} catch {
|
|
279
|
+
return 1;
|
|
261
280
|
}
|
|
262
281
|
}
|
|
263
282
|
const repoRoot = opts.localDir ?? join3(paths.releasesDir, "src", "abtars");
|
|
@@ -267,7 +286,7 @@ Use: abtars update --local <DIR>
|
|
|
267
286
|
`);
|
|
268
287
|
return 1;
|
|
269
288
|
}
|
|
270
|
-
const { migrateIfNeeded } = await import("./migrate-layout-
|
|
289
|
+
const { migrateIfNeeded } = await import("./migrate-layout-KEAIIN26.js");
|
|
271
290
|
migrateIfNeeded(paths.home);
|
|
272
291
|
const release = await acquireLock(paths.lock, "deploy");
|
|
273
292
|
try {
|
|
@@ -278,183 +297,218 @@ Use: abtars update --local <DIR>
|
|
|
278
297
|
const staged = await source.prepare({ stagingDir: paths.appStaging, home: paths.home, allowStale: !!opts.skipFreshness });
|
|
279
298
|
process.stdout.write(`\u2713 staged ${staged.version}
|
|
280
299
|
`);
|
|
281
|
-
await
|
|
282
|
-
|
|
283
|
-
|
|
300
|
+
return await deployActivation({ staged, channel: opts.source, repoRoot });
|
|
301
|
+
} finally {
|
|
302
|
+
await release();
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
async function deployActivationCli(flags) {
|
|
306
|
+
const str = (k) => typeof flags.get(k) === "string" ? flags.get(k) : void 0;
|
|
307
|
+
const stagedPath = str("staged");
|
|
308
|
+
if (!stagedPath) {
|
|
309
|
+
process.stderr.write(`__deploy: --staged <dir> is required
|
|
284
310
|
`);
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
symlinkSync(releaseDir, paths.app);
|
|
313
|
-
process.stdout.write(`\u2713 deployed to releases/${staged.commit || staged.version}
|
|
311
|
+
return 2;
|
|
312
|
+
}
|
|
313
|
+
const paths = packagePaths("abtars");
|
|
314
|
+
const channel = str("channel") ?? "dev";
|
|
315
|
+
const staged = {
|
|
316
|
+
version: str("version") ?? "unknown",
|
|
317
|
+
stagedPath,
|
|
318
|
+
commit: str("commit") ?? null,
|
|
319
|
+
branch: str("branch") ?? null,
|
|
320
|
+
packageLockHash: str("package-lock-hash") ?? null,
|
|
321
|
+
source: channel
|
|
322
|
+
};
|
|
323
|
+
const repoRoot = str("repo-root") ?? join3(paths.releasesDir, "src", "abtars");
|
|
324
|
+
const { migrateIfNeeded } = await import("./migrate-layout-KEAIIN26.js");
|
|
325
|
+
migrateIfNeeded(paths.home);
|
|
326
|
+
const release = await acquireLock(paths.lock, "deploy");
|
|
327
|
+
try {
|
|
328
|
+
return await deployActivation({ staged, channel, repoRoot });
|
|
329
|
+
} finally {
|
|
330
|
+
await release();
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
async function deployActivation(args) {
|
|
334
|
+
const { staged, channel, repoRoot } = args;
|
|
335
|
+
const paths = packagePaths("abtars");
|
|
336
|
+
const isFirstInstall = !existsSync3(paths.manifest);
|
|
337
|
+
process.stdout.write(`[__deploy] activating ${staged.version} from ${staged.stagedPath}
|
|
314
338
|
`);
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
339
|
+
if (!existsSync3(join3(staged.stagedPath, "bundle", "abtars.js"))) {
|
|
340
|
+
process.stderr.write(`x entry point not found
|
|
341
|
+
`);
|
|
342
|
+
return 1;
|
|
343
|
+
}
|
|
344
|
+
const { symlinkSync, unlinkSync: unlink } = await import("node:fs");
|
|
345
|
+
mkdirSync(paths.releasesDir, { recursive: true });
|
|
346
|
+
const releaseDir = join3(paths.releasesDir, staged.commit || staged.version);
|
|
347
|
+
if (existsSync3(releaseDir)) rmSync(releaseDir, { recursive: true, force: true });
|
|
348
|
+
cpSync2(staged.stagedPath, releaseDir, { recursive: true });
|
|
349
|
+
let history = [];
|
|
350
|
+
try {
|
|
351
|
+
history = JSON.parse(readFileSync2(paths.releasesHistory, "utf-8"));
|
|
352
|
+
} catch {
|
|
353
|
+
}
|
|
354
|
+
history.unshift(staged.commit || staged.version);
|
|
355
|
+
if (history.length > 4) {
|
|
356
|
+
const dropped = history.pop();
|
|
357
|
+
rmSync(join3(paths.releasesDir, dropped), { recursive: true, force: true });
|
|
358
|
+
}
|
|
359
|
+
writeFileSync2(paths.releasesHistory, JSON.stringify(history) + "\n");
|
|
360
|
+
try {
|
|
361
|
+
unlink(paths.releasesCurrentLink);
|
|
362
|
+
} catch {
|
|
363
|
+
}
|
|
364
|
+
symlinkSync(releaseDir, paths.releasesCurrentLink);
|
|
365
|
+
try {
|
|
366
|
+
rmSync(paths.app, { recursive: true, force: true });
|
|
367
|
+
} catch {
|
|
368
|
+
}
|
|
369
|
+
symlinkSync(releaseDir, paths.app);
|
|
370
|
+
process.stdout.write(`\u2713 deployed to releases/${staged.commit || staged.version}
|
|
371
|
+
`);
|
|
372
|
+
if (isFirstInstall) {
|
|
324
373
|
await writeManifest(paths.manifest, {
|
|
325
|
-
...
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
branch: staged.branch,
|
|
329
|
-
packageLockHash: staged.packageLockHash,
|
|
330
|
-
activatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
331
|
-
source: opts.source,
|
|
332
|
-
previousVersion: prior?.version ?? null,
|
|
333
|
-
previousCommit: prior?.commit ?? null,
|
|
334
|
-
installMode: prior?.installMode ?? "daemon",
|
|
335
|
-
repoRoot
|
|
374
|
+
...emptyManifest("abtars", hostname()),
|
|
375
|
+
installMode: "daemon",
|
|
376
|
+
source: channel
|
|
336
377
|
});
|
|
337
|
-
|
|
338
|
-
|
|
378
|
+
}
|
|
379
|
+
await refresh(paths, repoRoot);
|
|
380
|
+
const prior = isFirstInstall ? null : await readManifest(paths.manifest);
|
|
381
|
+
await writeManifest(paths.manifest, {
|
|
382
|
+
...prior ?? emptyManifest("abtars", hostname()),
|
|
383
|
+
version: staged.version,
|
|
384
|
+
commit: staged.commit,
|
|
385
|
+
branch: staged.branch,
|
|
386
|
+
packageLockHash: staged.packageLockHash,
|
|
387
|
+
activatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
388
|
+
source: channel,
|
|
389
|
+
previousVersion: prior?.version ?? null,
|
|
390
|
+
previousCommit: prior?.commit ?? null,
|
|
391
|
+
installMode: prior?.installMode ?? "daemon",
|
|
392
|
+
repoRoot
|
|
393
|
+
});
|
|
394
|
+
writeFileSync2(join3(paths.home, "deploy.state"), JSON.stringify({ status: "deploying", version: staged.version, startedAt: (/* @__PURE__ */ new Date()).toISOString() }) + "\n");
|
|
395
|
+
process.stdout.write(`\u2713 manifest updated
|
|
339
396
|
`);
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
397
|
+
if (!isFirstInstall) {
|
|
398
|
+
if (process.platform === "darwin") {
|
|
399
|
+
const uid = `gui/${process.getuid?.() ?? 501}`;
|
|
400
|
+
try {
|
|
401
|
+
execSync(`launchctl bootout ${uid}/com.abtars.watchdog 2>/dev/null`, { stdio: "ignore", timeout: 5e3 });
|
|
402
|
+
} catch {
|
|
403
|
+
}
|
|
404
|
+
} else {
|
|
405
|
+
try {
|
|
406
|
+
execSync("systemctl --user stop abtars-watchdog", { stdio: "ignore", timeout: 5e3 });
|
|
407
|
+
} catch {
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
writeFileSync2(join3(paths.home, ".start-reason"), `update:${staged.version}`);
|
|
411
|
+
const wdPid = readJsonField(join3(paths.home, "bridge.lock"), "watchdogPid");
|
|
412
|
+
if (wdPid && wdPid > 0) {
|
|
413
|
+
try {
|
|
414
|
+
process.kill(wdPid, "SIGTERM");
|
|
415
|
+
} catch {
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
const bridgePid = readJsonField(join3(paths.home, "bridge.lock"), "pid");
|
|
419
|
+
if (bridgePid && bridgePid > 0) {
|
|
420
|
+
try {
|
|
421
|
+
process.kill(bridgePid, "SIGTERM");
|
|
422
|
+
} catch {
|
|
423
|
+
}
|
|
424
|
+
process.stdout.write(` x Killing bridge (PID ${bridgePid})...
|
|
425
|
+
`);
|
|
426
|
+
for (let i = 0; i < 10; i++) {
|
|
427
|
+
await new Promise((r) => setTimeout(r, 500));
|
|
348
428
|
try {
|
|
349
|
-
|
|
429
|
+
process.kill(bridgePid, 0);
|
|
350
430
|
} catch {
|
|
431
|
+
break;
|
|
351
432
|
}
|
|
352
433
|
}
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
434
|
+
}
|
|
435
|
+
if (wdPid && wdPid > 0) {
|
|
436
|
+
let wdAlive = false;
|
|
437
|
+
for (let i = 0; i < 6; i++) {
|
|
356
438
|
try {
|
|
357
|
-
process.kill(wdPid,
|
|
439
|
+
process.kill(wdPid, 0);
|
|
440
|
+
wdAlive = true;
|
|
358
441
|
} catch {
|
|
442
|
+
wdAlive = false;
|
|
443
|
+
break;
|
|
359
444
|
}
|
|
445
|
+
await new Promise((r) => setTimeout(r, 500));
|
|
360
446
|
}
|
|
361
|
-
|
|
362
|
-
if (bridgePid && bridgePid > 0) {
|
|
447
|
+
if (wdAlive) {
|
|
363
448
|
try {
|
|
364
|
-
process.kill(
|
|
449
|
+
process.kill(wdPid, "SIGKILL");
|
|
365
450
|
} catch {
|
|
366
451
|
}
|
|
367
|
-
process.stdout.write(` x Killing bridge (PID ${bridgePid})...
|
|
368
|
-
`);
|
|
369
|
-
for (let i = 0; i < 10; i++) {
|
|
370
|
-
await new Promise((r) => setTimeout(r, 500));
|
|
371
|
-
try {
|
|
372
|
-
process.kill(bridgePid, 0);
|
|
373
|
-
} catch {
|
|
374
|
-
break;
|
|
375
|
-
}
|
|
376
|
-
}
|
|
377
452
|
}
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
}
|
|
395
|
-
}
|
|
453
|
+
}
|
|
454
|
+
try {
|
|
455
|
+
rmSync(join3(paths.home, ".stopped"));
|
|
456
|
+
} catch {
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
writeFileSync2(join3(paths.home, ".start-reason"), "deploy-respawn");
|
|
460
|
+
const manifest = await readManifest(paths.manifest);
|
|
461
|
+
const mode = manifest?.installMode ?? "daemon";
|
|
462
|
+
if (mode === "daemon") {
|
|
463
|
+
if (process.platform === "darwin") {
|
|
464
|
+
const plistPath = join3(homedir(), "Library/LaunchAgents/com.abtars.watchdog.plist");
|
|
465
|
+
const uid = `gui/${process.getuid?.() ?? 501}`;
|
|
466
|
+
try {
|
|
467
|
+
execSync(`launchctl bootstrap ${uid} "${plistPath}"`, { stdio: "ignore", timeout: 5e3 });
|
|
468
|
+
} catch {
|
|
396
469
|
}
|
|
470
|
+
} else {
|
|
397
471
|
try {
|
|
398
|
-
|
|
472
|
+
execSync("systemctl --user daemon-reload", { stdio: "ignore", timeout: 5e3 });
|
|
399
473
|
} catch {
|
|
400
474
|
}
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
const uid = `gui/${process.getuid?.() ?? 501}`;
|
|
409
|
-
try {
|
|
410
|
-
execSync(`launchctl bootstrap ${uid} "${plistPath}"`, { stdio: "ignore", timeout: 5e3 });
|
|
411
|
-
} catch {
|
|
412
|
-
}
|
|
413
|
-
} else {
|
|
414
|
-
try {
|
|
415
|
-
execSync("systemctl --user daemon-reload", { stdio: "ignore", timeout: 5e3 });
|
|
416
|
-
} catch {
|
|
417
|
-
}
|
|
418
|
-
try {
|
|
419
|
-
execSync("systemctl --user unmask abtars-watchdog", { stdio: "ignore", timeout: 5e3 });
|
|
420
|
-
} catch {
|
|
421
|
-
}
|
|
422
|
-
try {
|
|
423
|
-
execSync("systemctl --user enable abtars-watchdog", { stdio: "ignore", timeout: 5e3 });
|
|
424
|
-
} catch {
|
|
425
|
-
}
|
|
426
|
-
try {
|
|
427
|
-
execSync("systemctl --user start abtars-watchdog", { stdio: "ignore", timeout: 5e3 });
|
|
428
|
-
} catch {
|
|
429
|
-
}
|
|
475
|
+
try {
|
|
476
|
+
execSync("systemctl --user unmask abtars-watchdog", { stdio: "ignore", timeout: 5e3 });
|
|
477
|
+
} catch {
|
|
478
|
+
}
|
|
479
|
+
try {
|
|
480
|
+
execSync("systemctl --user enable abtars-watchdog", { stdio: "ignore", timeout: 5e3 });
|
|
481
|
+
} catch {
|
|
430
482
|
}
|
|
431
|
-
|
|
483
|
+
try {
|
|
484
|
+
execSync("systemctl --user start abtars-watchdog", { stdio: "ignore", timeout: 5e3 });
|
|
485
|
+
} catch {
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
process.stdout.write(` Daemon started
|
|
432
489
|
`);
|
|
433
|
-
|
|
434
|
-
|
|
490
|
+
} else {
|
|
491
|
+
process.stdout.write(` Deployed. Run 'abtars start' to launch the bridge.
|
|
435
492
|
`);
|
|
436
|
-
|
|
437
|
-
|
|
493
|
+
}
|
|
494
|
+
process.stdout.write(`Waiting for bridge health...
|
|
438
495
|
`);
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
496
|
+
const health = await healthProbe(paths.home, Date.now(), 18e4);
|
|
497
|
+
if (health.healthy) {
|
|
498
|
+
process.stdout.write(`\u2713 Bridge healthy (PID ${health.pid}, tick at ${new Date(health.heartbeat).toISOString()})
|
|
442
499
|
`);
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
500
|
+
writeFileSync2(join3(paths.home, "deploy.state"), JSON.stringify({ status: "success", version: staged.version, completedAt: (/* @__PURE__ */ new Date()).toISOString() }) + "\n");
|
|
501
|
+
} else {
|
|
502
|
+
process.stderr.write(`\u26A0 Bridge not healthy after 120s \u2014 check logs. Watchdog will keep trying.
|
|
446
503
|
`);
|
|
447
|
-
|
|
448
|
-
}
|
|
449
|
-
return 0;
|
|
450
|
-
} finally {
|
|
451
|
-
await release();
|
|
504
|
+
writeFileSync2(join3(paths.home, "deploy.state"), JSON.stringify({ status: "unhealthy", version: staged.version, completedAt: (/* @__PURE__ */ new Date()).toISOString() }) + "\n");
|
|
452
505
|
}
|
|
506
|
+
return 0;
|
|
453
507
|
}
|
|
454
508
|
async function refresh(paths, repoRoot) {
|
|
455
509
|
await mkdir3(paths.bin, { recursive: true });
|
|
456
|
-
const { writeWrapper } = await import("./install-
|
|
457
|
-
const { loadManifest } = await import("./install-manifest-
|
|
510
|
+
const { writeWrapper } = await import("./install-3GGZUN22.js");
|
|
511
|
+
const { loadManifest } = await import("./install-manifest-624KOB4S.js");
|
|
458
512
|
const installManifest = loadManifest(paths.app);
|
|
459
513
|
for (const name of installManifest.cliWrappers) {
|
|
460
514
|
await writeWrapper(paths.bin, name, paths.app, false);
|
|
@@ -478,7 +532,7 @@ exec node "${target}" "$@"
|
|
|
478
532
|
}
|
|
479
533
|
process.stdout.write(`\u2713 wrappers refreshed (${installManifest.cliWrappers.length} files)
|
|
480
534
|
`);
|
|
481
|
-
const abmindHome =
|
|
535
|
+
const abmindHome = resolveAbmindHome();
|
|
482
536
|
for (const stale of [join3(abmindHome, "bin"), join3(abmindHome, "current"), join3(abmindHome, "lib"), join3(paths.home, "bin"), join3(paths.home, "scripts"), join3(paths.releasesDir, "deps")]) {
|
|
483
537
|
if (existsSync3(stale)) {
|
|
484
538
|
rmSync(stale, { recursive: true, force: true });
|
|
@@ -489,12 +543,12 @@ exec node "${target}" "$@"
|
|
|
489
543
|
const repoScripts = join3(repoRoot, "scripts");
|
|
490
544
|
if (process.platform === "darwin") {
|
|
491
545
|
const src = join3(repoScripts, "com.abtars.watchdog.plist");
|
|
492
|
-
const dst = join3(
|
|
546
|
+
const dst = join3(homedir(), "Library/LaunchAgents/com.abtars.watchdog.plist");
|
|
493
547
|
if (existsSync3(src)) {
|
|
494
|
-
let srcContent = readFileSync2(src, "utf-8").replace(/\{\{HOME\}\}/g,
|
|
548
|
+
let srcContent = readFileSync2(src, "utf-8").replace(/\{\{HOME\}\}/g, homedir());
|
|
495
549
|
const dstContent = existsSync3(dst) ? readFileSync2(dst, "utf-8") : "";
|
|
496
550
|
if (srcContent !== dstContent) {
|
|
497
|
-
|
|
551
|
+
writeFileSync2(dst, srcContent);
|
|
498
552
|
const uid = `gui/${process.getuid?.() ?? 501}`;
|
|
499
553
|
try {
|
|
500
554
|
execSync(`launchctl bootout ${uid}/com.abtars.watchdog 2>/dev/null`, { stdio: "ignore", timeout: 5e3 });
|
|
@@ -510,7 +564,7 @@ exec node "${target}" "$@"
|
|
|
510
564
|
}
|
|
511
565
|
} else {
|
|
512
566
|
const src = join3(repoScripts, "abtars-watchdog.service");
|
|
513
|
-
const dst = join3(
|
|
567
|
+
const dst = join3(homedir(), ".config/systemd/user/abtars-watchdog.service");
|
|
514
568
|
if (existsSync3(src) && existsSync3(dst)) {
|
|
515
569
|
const srcContent = readFileSync2(src, "utf-8");
|
|
516
570
|
const dstContent = readFileSync2(dst, "utf-8");
|
|
@@ -525,85 +579,19 @@ exec node "${target}" "$@"
|
|
|
525
579
|
}
|
|
526
580
|
}
|
|
527
581
|
}
|
|
528
|
-
const { reconcile, migrate } = await import("./reconcile-
|
|
582
|
+
const { reconcile, migrate } = await import("./reconcile-7N7OE2GU.js");
|
|
529
583
|
const templatesSrc = join3(paths.app, "templates");
|
|
530
584
|
reconcile(templatesSrc, paths.home);
|
|
531
585
|
migrate(paths.home);
|
|
532
586
|
process.stdout.write(`\u2713 skills + prompts synced
|
|
533
587
|
`);
|
|
534
588
|
}
|
|
535
|
-
async function copyAbmind(stagingDir, repoRoot) {
|
|
536
|
-
const abmindSrc = join3(repoRoot, "..", "abmind");
|
|
537
|
-
if (existsSync3(join3(abmindSrc, "package.json"))) {
|
|
538
|
-
try {
|
|
539
|
-
execSync("npm run build", { cwd: abmindSrc, stdio: "pipe", timeout: 6e4 });
|
|
540
|
-
} catch {
|
|
541
|
-
}
|
|
542
|
-
if (!existsSync3(join3(abmindSrc, "dist", "cli", "abmind.js"))) {
|
|
543
|
-
process.stdout.write(`\u26A0 abmind build failed (no dist output)
|
|
544
|
-
`);
|
|
545
|
-
return;
|
|
546
|
-
}
|
|
547
|
-
process.stdout.write(`\u2713 abmind rebuilt
|
|
548
|
-
`);
|
|
549
|
-
const dest = join3(stagingDir, "node_modules", "abmind");
|
|
550
|
-
cpSync2(abmindSrc, dest, { recursive: true, filter: (src) => !src.includes("node_modules") && !src.includes(".git") });
|
|
551
|
-
try {
|
|
552
|
-
chmodSync(join3(dest, "dist/cli/abmind.js"), 493);
|
|
553
|
-
} catch {
|
|
554
|
-
}
|
|
555
|
-
process.stdout.write(`\u2713 abmind copied
|
|
556
|
-
`);
|
|
557
|
-
return;
|
|
558
|
-
}
|
|
559
|
-
try {
|
|
560
|
-
const { resolveVersion: resolveVersion2, downloadTarball: downloadTarball2 } = await import("./registry-client-VN2MM2HI.js");
|
|
561
|
-
const tag = process.env["ABMIND_TAG"] ?? "alpha";
|
|
562
|
-
const { version, tarballUrl } = await resolveVersion2("abmind", tag);
|
|
563
|
-
const dest = join3(stagingDir, "node_modules", "abmind");
|
|
564
|
-
const tgzPath = join3(stagingDir, `abmind-${version}.tgz`);
|
|
565
|
-
await downloadTarball2(tarballUrl, tgzPath);
|
|
566
|
-
mkdirSync(dest, { recursive: true });
|
|
567
|
-
spawnSync3("tar", ["-xzf", tgzPath, "--strip-components=1", "-C", dest], { stdio: "pipe" });
|
|
568
|
-
if (existsSync3(tgzPath)) unlinkSync2(tgzPath);
|
|
569
|
-
try {
|
|
570
|
-
chmodSync(join3(dest, "dist/cli/abmind.js"), 493);
|
|
571
|
-
} catch {
|
|
572
|
-
}
|
|
573
|
-
process.stdout.write(`\u2713 abmind ${version} (registry)
|
|
574
|
-
`);
|
|
575
|
-
} catch (err) {
|
|
576
|
-
process.stdout.write(`\u26A0 abmind fetch skipped: ${err instanceof Error ? err.message : String(err)}
|
|
577
|
-
`);
|
|
578
|
-
}
|
|
579
|
-
}
|
|
580
|
-
|
|
581
|
-
// src/cli/commands/update.ts
|
|
582
|
-
async function update(opts) {
|
|
583
|
-
await printBanner("update");
|
|
584
|
-
if (!opts.source) {
|
|
585
|
-
process.stderr.write(`No channel specified.
|
|
586
|
-
Usage: abtars update --dev [dir] | --alpha | --stable
|
|
587
|
-
`);
|
|
588
|
-
return 2;
|
|
589
|
-
}
|
|
590
|
-
if (opts.check) {
|
|
591
|
-
process.stdout.write("--check not yet implemented in new deploy flow\n");
|
|
592
|
-
return 0;
|
|
593
|
-
}
|
|
594
|
-
if (opts.dryRun) {
|
|
595
|
-
process.stdout.write("--dry-run not yet implemented in new deploy flow\n");
|
|
596
|
-
return 0;
|
|
597
|
-
}
|
|
598
|
-
const deployOpts = {
|
|
599
|
-
source: opts.source,
|
|
600
|
-
localDir: opts.localDir,
|
|
601
|
-
skipFreshness: opts.skipFreshness
|
|
602
|
-
};
|
|
603
|
-
return deploy(deployOpts);
|
|
604
|
-
}
|
|
605
589
|
|
|
606
590
|
export {
|
|
607
|
-
|
|
591
|
+
makeLocalBuildSource,
|
|
592
|
+
makeNpmSource,
|
|
593
|
+
syncSrcRepos,
|
|
594
|
+
deploy,
|
|
595
|
+
deployActivationCli
|
|
608
596
|
};
|
|
609
|
-
//# sourceMappingURL=chunk-
|
|
597
|
+
//# sourceMappingURL=chunk-MJACYH7A.js.map
|