abtars 0.3.4-alpha.0 → 0.3.4-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/bundle/{_registry.generated-7DRCE4V6.js → _registry.generated-RC6PEH6Z.js} +16 -15
  2. package/bundle/{_registry.generated-7DRCE4V6.js.map → _registry.generated-RC6PEH6Z.js.map} +1 -1
  3. package/bundle/abtars-browser.js +6 -5
  4. package/bundle/abtars-browser.js.map +1 -1
  5. package/bundle/abtars-cli.js +73 -46
  6. package/bundle/abtars-cli.js.map +3 -3
  7. package/bundle/abtars-restart.js +7 -7
  8. package/bundle/abtars-rss.js +2 -1
  9. package/bundle/abtars-rss.js.map +2 -2
  10. package/bundle/abtars-task.js +6 -5
  11. package/bundle/abtars-task.js.map +1 -1
  12. package/bundle/abtars-todo.js +2 -1
  13. package/bundle/abtars-todo.js.map +1 -1
  14. package/bundle/abtars.js +307 -212
  15. package/bundle/abtars.js.map +4 -4
  16. package/bundle/{acp-raw-client-AZJCEB6S.js → acp-raw-client-E6FM45NC.js} +4 -3
  17. package/bundle/{acp-raw-client-AZJCEB6S.js.map → acp-raw-client-E6FM45NC.js.map} +1 -1
  18. package/bundle/{action-gate-QYJL57IX.js → action-gate-G2V47NHW.js} +4 -3
  19. package/bundle/{action-gate-QYJL57IX.js.map → action-gate-G2V47NHW.js.map} +1 -1
  20. package/bundle/{agent-api-adapter-PYMNQXHE.js → agent-api-adapter-PTJYZKQK.js} +5 -4
  21. package/bundle/{agent-api-adapter-PYMNQXHE.js.map → agent-api-adapter-PTJYZKQK.js.map} +1 -1
  22. package/bundle/{agent-api-rate-limit-4GEZ4YN5.js → agent-api-rate-limit-WCFXJMGY.js} +6 -5
  23. package/bundle/{agent-registry-563P4EUJ.js → agent-registry-GU7ABOK5.js} +9 -8
  24. package/bundle/bootstrap-POWWTU6I.js +63 -0
  25. package/bundle/bootstrap-POWWTU6I.js.map +7 -0
  26. package/bundle/{bridge-lock-transport-LXCF2IVN.js → bridge-lock-transport-4ZH7QTJP.js} +6 -5
  27. package/bundle/{browser-2VZOGOGX.js → browser-EJNS35NT.js} +8 -7
  28. package/bundle/{budget-PPA7WY3D.js → budget-45QOBDWA.js} +5 -4
  29. package/bundle/{budget-PPA7WY3D.js.map → budget-45QOBDWA.js.map} +1 -1
  30. package/bundle/{capability-WXEA2WFK.js → capability-JFWX3IQF.js} +7 -6
  31. package/bundle/{chunk-CB6S3ZRF.js → chunk-2FAZIA37.js} +3 -3
  32. package/bundle/{chunk-VJATH7AN.js → chunk-2KC5G3EA.js} +9 -8
  33. package/bundle/chunk-2KC5G3EA.js.map +7 -0
  34. package/bundle/{chunk-OY2HAK33.js → chunk-36ZEYDKZ.js} +1 -1
  35. package/bundle/chunk-36ZEYDKZ.js.map +7 -0
  36. package/bundle/{chunk-2FZJDMAF.js → chunk-3CACHBDI.js} +10 -10
  37. package/bundle/{chunk-O4GKI3Q3.js → chunk-4S554KLW.js} +4 -4
  38. package/bundle/{chunk-3QW2K53E.js → chunk-5GCLBUBS.js} +11 -19
  39. package/bundle/chunk-5GCLBUBS.js.map +7 -0
  40. package/bundle/{chunk-RJX45XIC.js → chunk-5HDSQFT6.js} +9 -4
  41. package/bundle/chunk-5HDSQFT6.js.map +7 -0
  42. package/bundle/{chunk-EDZGF6BC.js → chunk-5NY2YULC.js} +11 -4
  43. package/bundle/chunk-5NY2YULC.js.map +7 -0
  44. package/bundle/{chunk-LE23VPN3.js → chunk-63A7ZRIH.js} +4 -4
  45. package/bundle/{chunk-LE23VPN3.js.map → chunk-63A7ZRIH.js.map} +1 -1
  46. package/bundle/{chunk-SSCGWDIC.js → chunk-65VCEC32.js} +2 -2
  47. package/bundle/{chunk-V2QIAXWZ.js → chunk-7BSQ5UQO.js} +3 -3
  48. package/bundle/{chunk-E7MV7WFT.js → chunk-7Z3HBPRY.js} +6 -6
  49. package/bundle/{chunk-TY26WMQY.js → chunk-AFREM7FX.js} +2 -2
  50. package/bundle/{chunk-GCFIK6OB.js → chunk-AO32N2VB.js} +92 -20
  51. package/bundle/chunk-AO32N2VB.js.map +7 -0
  52. package/bundle/{chunk-N5VROZ7A.js → chunk-B6ZN6COK.js} +5 -5
  53. package/bundle/{chunk-M6Q3IQ4H.js → chunk-BFDBGESM.js} +259 -122
  54. package/bundle/chunk-BFDBGESM.js.map +7 -0
  55. package/bundle/{chunk-YEOZN5IE.js → chunk-DYBW4XXL.js} +2 -2
  56. package/bundle/{chunk-56D3Y44D.js → chunk-EFJVUJBE.js} +10 -10
  57. package/bundle/{chunk-S6HEHCCG.js → chunk-EQSG2CRM.js} +83 -46
  58. package/bundle/chunk-EQSG2CRM.js.map +7 -0
  59. package/bundle/{chunk-FIAVVKGN.js → chunk-EUZDKV3C.js} +3 -3
  60. package/bundle/{chunk-2LKQV2ND.js → chunk-FRKW6LWB.js} +3 -3
  61. package/bundle/{chunk-H2K23MOF.js → chunk-GALQBVKO.js} +21 -5
  62. package/bundle/chunk-GALQBVKO.js.map +7 -0
  63. package/bundle/{chunk-DNDYD5SL.js → chunk-GP4XUKI5.js} +3 -3
  64. package/bundle/{chunk-SXNY6HC4.js → chunk-GPZNXY2U.js} +6 -6
  65. package/bundle/chunk-GPZNXY2U.js.map +7 -0
  66. package/bundle/{chunk-W726UGI6.js → chunk-GRVWZO4C.js} +3 -3
  67. package/bundle/{chunk-IXKQ4JMX.js → chunk-GVM5YU5I.js} +33 -17
  68. package/bundle/chunk-GVM5YU5I.js.map +7 -0
  69. package/bundle/{chunk-OOKNHOCB.js → chunk-GWILHZPT.js} +2 -2
  70. package/bundle/{chunk-3LQOJVTB.js → chunk-HFOCNYEO.js} +1842 -1220
  71. package/bundle/{chunk-3LQOJVTB.js.map → chunk-HFOCNYEO.js.map} +4 -4
  72. package/bundle/{chunk-NP72ZB7P.js → chunk-HMKVL7AX.js} +53 -47
  73. package/bundle/chunk-HMKVL7AX.js.map +7 -0
  74. package/bundle/{chunk-BNBC4T45.js → chunk-HT2BPTZY.js} +3 -3
  75. package/bundle/{chunk-BU7LTI2W.js → chunk-HZDLFLRP.js} +6 -7
  76. package/bundle/chunk-HZDLFLRP.js.map +7 -0
  77. package/bundle/{chunk-FVUL44T4.js → chunk-IJT4KWXT.js} +2 -2
  78. package/bundle/{chunk-IK4R3RBZ.js → chunk-JNIHEDKF.js} +3 -3
  79. package/bundle/{chunk-J5NOL4DB.js → chunk-JQDJPUHM.js} +16 -6
  80. package/bundle/chunk-JQDJPUHM.js.map +7 -0
  81. package/bundle/{chunk-SESM4GBM.js → chunk-KTYGKPYM.js} +52 -25
  82. package/bundle/chunk-KTYGKPYM.js.map +7 -0
  83. package/bundle/chunk-LME23AA2.js +37 -0
  84. package/bundle/chunk-LME23AA2.js.map +7 -0
  85. package/bundle/{chunk-4PIVWXUJ.js → chunk-LUNA6PM5.js} +2 -2
  86. package/bundle/{chunk-37EX63K4.js → chunk-LUW62WGO.js} +6998 -3621
  87. package/bundle/chunk-LUW62WGO.js.map +7 -0
  88. package/bundle/{chunk-MV5KOWOR.js → chunk-NDCRWEEJ.js} +7 -7
  89. package/bundle/{chunk-7WHXTCVD.js → chunk-NRUSRJXR.js} +8 -3
  90. package/bundle/chunk-NRUSRJXR.js.map +7 -0
  91. package/bundle/{chunk-C3EYYJN3.js → chunk-O7KQG6ME.js} +17 -5
  92. package/bundle/chunk-O7KQG6ME.js.map +7 -0
  93. package/bundle/{chunk-ZOCEBV62.js → chunk-OKAQICWY.js} +3 -3
  94. package/bundle/{chunk-TCI6FZTP.js → chunk-OLAURO5G.js} +9 -9
  95. package/bundle/{chunk-YME7NRGP.js → chunk-OXTSWQCX.js} +2 -2
  96. package/bundle/{chunk-HDOFJVFS.js → chunk-PEDX56EL.js} +3 -3
  97. package/bundle/{chunk-7RAGSHSH.js → chunk-PROPYS3P.js} +12 -10
  98. package/bundle/chunk-PROPYS3P.js.map +7 -0
  99. package/bundle/{chunk-ASYX43OU.js → chunk-Q32H6VPU.js} +26 -26
  100. package/bundle/{chunk-P5O6QZDC.js → chunk-QROWBWLL.js} +10 -6
  101. package/bundle/chunk-QROWBWLL.js.map +7 -0
  102. package/bundle/{chunk-S7ZIGIR5.js → chunk-R76K6L6H.js} +27 -27
  103. package/bundle/{chunk-S7ZIGIR5.js.map → chunk-R76K6L6H.js.map} +1 -1
  104. package/bundle/{chunk-MQJG7OJX.js → chunk-RIHQ37U5.js} +38 -36
  105. package/bundle/chunk-RIHQ37U5.js.map +7 -0
  106. package/bundle/{chunk-IQKADER4.js → chunk-RWRRGE4U.js} +2 -2
  107. package/bundle/{chunk-72T2Q7IG.js → chunk-S5GD5EJ5.js} +271 -282
  108. package/bundle/chunk-S5GD5EJ5.js.map +7 -0
  109. package/bundle/{chunk-ULO2PX3T.js → chunk-TEFZ4JA4.js} +3 -3
  110. package/bundle/{chunk-2RGR3LSV.js → chunk-TMUYFERL.js} +2 -2
  111. package/bundle/{chunk-KBPVJGD7.js → chunk-URQPDCK5.js} +3 -3
  112. package/bundle/chunk-UUIHL65U.js +77 -0
  113. package/bundle/chunk-UUIHL65U.js.map +7 -0
  114. package/bundle/{chunk-FJF42RZY.js → chunk-VUIX5AGB.js} +3 -3
  115. package/bundle/{chunk-5V4VHKEA.js → chunk-WBTJ2E62.js} +5 -4
  116. package/bundle/chunk-WBTJ2E62.js.map +7 -0
  117. package/bundle/{chunk-ZY6DH2S4.js → chunk-WTIGZO3N.js} +80 -70
  118. package/bundle/chunk-WTIGZO3N.js.map +7 -0
  119. package/bundle/{chunk-4HNCOQSK.js → chunk-WYHGNI56.js} +7 -7
  120. package/bundle/{chunk-24V4A6RP.js → chunk-XX6BGTPO.js} +4 -4
  121. package/bundle/{chunk-T7TAWGBX.js → chunk-Y76VUJSF.js} +2 -2
  122. package/bundle/{chunk-TVSPVZTX.js → chunk-YDY6QVWJ.js} +3 -3
  123. package/bundle/{chunk-V6CV3QPH.js → chunk-YRSMGJFP.js} +2 -2
  124. package/bundle/{chunk-WP7FZHMI.js → chunk-YSKCQH6E.js} +2 -2
  125. package/bundle/{chunk-NGZVJ52F.js → chunk-ZKJOFASV.js} +7 -7
  126. package/bundle/{chunk-WGWM4IZM.js → chunk-ZT5ZBGWS.js} +4 -4
  127. package/bundle/{chunk-WGWM4IZM.js.map → chunk-ZT5ZBGWS.js.map} +1 -1
  128. package/bundle/{chunk-43DKPXTP.js → chunk-ZV4IWKDJ.js} +4 -4
  129. package/bundle/{commands-XXFU2ZF7.js → commands-EWA4HNCM.js} +20 -20
  130. package/bundle/{config-EWDZ234X.js → config-M3P5IOAI.js} +8 -7
  131. package/bundle/{config-show-6J33O4TE.js → config-show-3DHPP26D.js} +5 -5
  132. package/bundle/{context-OCS7HLJP.js → context-5P7IYYU2.js} +5 -2
  133. package/bundle/{context-OCS7HLJP.js.map → context-5P7IYYU2.js.map} +1 -1
  134. package/bundle/{daemon-LTDAXNA2.js → daemon-TB23FFWY.js} +7 -7
  135. package/bundle/{delegation-tools-YDTWQMZD.js → delegation-tools-P2SCNL23.js} +14 -11
  136. package/bundle/{registry-client-VN2MM2HI.js → deploy-YYUCGGP3.js} +10 -6
  137. package/bundle/{deploy-lib-import-RGZJ3CGC.js → deploy-lib-import-T3UP4G6G.js} +5 -3
  138. package/bundle/{deps-PHSLIA77.js → deps-WVK553KF.js} +21 -19
  139. package/bundle/deps-WVK553KF.js.map +7 -0
  140. package/bundle/{direct-api-transport-OAKYQBJR.js → direct-api-transport-WQ6HA5OX.js} +30 -28
  141. package/bundle/direct-api-transport-WQ6HA5OX.js.map +7 -0
  142. package/bundle/{discord-adapter-WUNYPTDE.js → discord-adapter-4TTETYDI.js} +26 -26
  143. package/bundle/{dist-7HEHHQI2.js → dist-KMK7TZGN.js} +376 -348
  144. package/bundle/dist-KMK7TZGN.js.map +7 -0
  145. package/bundle/{dns-wakeup-F55ALHXJ.js → dns-wakeup-IDOJIXBX.js} +4 -3
  146. package/bundle/{dns-wakeup-F55ALHXJ.js.map → dns-wakeup-IDOJIXBX.js.map} +1 -1
  147. package/bundle/{doctor-probes-3SLIUGKS.js → doctor-probes-VDWFJKUB.js} +4 -3
  148. package/bundle/{env-schema-MSDP2YBO.js → env-schema-4JXQUOH4.js} +5 -4
  149. package/bundle/{gossip-CS3G3447.js → gossip-3C3BSNPN.js} +7 -6
  150. package/bundle/{guardrails-24XK2COI.js → guardrails-DL7ZSWVN.js} +6 -5
  151. package/bundle/{health-check-FRUNRVNQ.js → health-check-YKWFD2LZ.js} +5 -6
  152. package/bundle/{health-check-FRUNRVNQ.js.map → health-check-YKWFD2LZ.js.map} +2 -2
  153. package/bundle/{heartbeat-system-G4IFQXT6.js → heartbeat-system-TDDIOVTC.js} +7 -6
  154. package/bundle/{heartbeat-tier3-3ZO3EVXP.js → heartbeat-tier3-55T2HUNE.js} +45 -44
  155. package/bundle/heartbeat-tier3-55T2HUNE.js.map +7 -0
  156. package/bundle/{hook-system-X6INNJGV.js → hook-system-M3POLUIB.js} +5 -4
  157. package/bundle/{hotskills-6FQYTJIO.js → hotskills-FWX4QI7V.js} +7 -6
  158. package/bundle/{install-ZAHTZ5M5.js → install-4MXBYIUG.js} +23 -20
  159. package/bundle/install-4MXBYIUG.js.map +7 -0
  160. package/bundle/{install-manifest-QX7KVDCA.js → install-manifest-5PPWMD2W.js} +4 -3
  161. package/bundle/{install-manifest-QX7KVDCA.js.map → install-manifest-5PPWMD2W.js.map} +1 -1
  162. package/bundle/{irc-adapter-IEJQKKJF.js → irc-adapter-PTTZD32W.js} +5 -4
  163. package/bundle/{irc-adapter-IEJQKKJF.js.map → irc-adapter-PTTZD32W.js.map} +1 -1
  164. package/bundle/{irc-config-TTWNYFLH.js → irc-config-CP7ZMUOX.js} +6 -5
  165. package/bundle/{irc-config-TTWNYFLH.js.map → irc-config-CP7ZMUOX.js.map} +1 -1
  166. package/bundle/{kanban-board-J6RO3ZU7.js → kanban-board-M326B2XJ.js} +7 -5
  167. package/bundle/{kanban-channel-5EIXBFSA.js → kanban-channel-IJ52OMNA.js} +8 -6
  168. package/bundle/{lazy-require-V6EFUATC.js → lazy-require-KCRVT4SI.js} +11 -6
  169. package/bundle/{logger-Y3VILPRH.js → logger-OWCSNYCA.js} +4 -3
  170. package/bundle/{logs-YS3GDURO.js → logs-FXS4SCEM.js} +5 -5
  171. package/bundle/{main-chat-YLZDNQPO.js → main-chat-ZNUZCTNS.js} +6 -5
  172. package/bundle/{master-user-Z4M7KCJE.js → master-user-HSKM4ZFN.js} +7 -6
  173. package/bundle/{media-utils-P6RZ2K3U.js → media-utils-3ZYOD7SK.js} +44 -43
  174. package/bundle/{media-utils-P6RZ2K3U.js.map → media-utils-3ZYOD7SK.js.map} +2 -2
  175. package/bundle/{message-pipeline-MHEBDJLH.js → message-pipeline-KSONH4MT.js} +20 -20
  176. package/bundle/meta.json +9327 -8582
  177. package/bundle/{migrate-layout-RJJQLVGR.js → migrate-layout-IJIEJY3A.js} +8 -4
  178. package/bundle/migrate-layout-IJIEJY3A.js.map +7 -0
  179. package/bundle/{nerve-VZNMFDGY.js → nerve-IGSXBKZZ.js} +5 -4
  180. package/bundle/{notification-VV2OR6NW.js → notification-BFSIEECG.js} +8 -7
  181. package/bundle/{openrouter-credits-LXC7P4G6.js → openrouter-credits-NTVZDRYM.js} +5 -4
  182. package/bundle/{openrouter-credits-LXC7P4G6.js.map → openrouter-credits-NTVZDRYM.js.map} +1 -1
  183. package/bundle/{orc-KC4USP55.js → orc-EIGVTHAV.js} +4 -4
  184. package/bundle/{orc-tools-CHRSXSAS.js → orc-tools-A3G7WCSJ.js} +5 -4
  185. package/bundle/{paths-EDK6KWHG.js → paths-3ZVW3NFL.js} +6 -2
  186. package/bundle/{paths-RZF6WDMG.js → paths-X4LRYUI6.js} +3 -2
  187. package/bundle/{peer-auth-SRONOLNG.js → peer-auth-QC4EF2PM.js} +9 -8
  188. package/bundle/{peer-client-VOF77T6C.js → peer-client-RGEU5HOK.js} +9 -8
  189. package/bundle/{peer-client-VOF77T6C.js.map → peer-client-RGEU5HOK.js.map} +1 -1
  190. package/bundle/{peer-config-FRWLEYQ5.js → peer-config-TN55LFDC.js} +6 -5
  191. package/bundle/{peer-jwt-XY3XRIA2.js → peer-jwt-NCCPXJRX.js} +6 -5
  192. package/bundle/{peer-transport-UBBXTDRP.js → peer-transport-I6JPLFZ2.js} +8 -7
  193. package/bundle/{phase-transport-4NQHZX75.js → phase-transport-2BRWACDF.js} +18 -16
  194. package/bundle/public/css/dashboard.css +542 -0
  195. package/bundle/public/index.html +180 -0
  196. package/bundle/public/js/app.js +437 -0
  197. package/bundle/public/memory-universe.js +384 -0
  198. package/bundle/{reconcile-2EUXJ6W5.js → reconcile-CTFCLQRN.js} +5 -4
  199. package/bundle/{reconciler-FFQGV4DO.js → reconciler-FHESO6OC.js} +14 -11
  200. package/bundle/{reconciler-FFQGV4DO.js.map → reconciler-FHESO6OC.js.map} +1 -1
  201. package/bundle/{restore-NFDE2RG6.js → restore-IFHPI7I7.js} +13 -9
  202. package/bundle/{restore-NFDE2RG6.js.map → restore-IFHPI7I7.js.map} +3 -3
  203. package/bundle/{rollback-MVZ53XS4.js → rollback-ANRI3T5Z.js} +5 -5
  204. package/bundle/{chunk-SKY6656M.js → sandbox-runtime-QROWHDCS.js} +11 -28
  205. package/bundle/{chunk-SKY6656M.js.map → sandbox-runtime-QROWHDCS.js.map} +1 -1
  206. package/bundle/{self-healer-utils-KD6LV63S.js → self-healer-utils-IFAYOQO2.js} +5 -4
  207. package/bundle/{self-healer-utils-KD6LV63S.js.map → self-healer-utils-IFAYOQO2.js.map} +1 -1
  208. package/bundle/{sha-tracker-2DB4R2TW.js → sha-tracker-ZWBP6CIJ.js} +5 -4
  209. package/bundle/{skill-session-BPDVA6ZG.js → skill-session-AXBDQSLQ.js} +5 -4
  210. package/bundle/{skill-session-BPDVA6ZG.js.map → skill-session-AXBDQSLQ.js.map} +1 -1
  211. package/bundle/{skill-stats-TPD2NROA.js → skill-stats-JORH5DGM.js} +6 -5
  212. package/bundle/{skill-watcher-D7QYYYON.js → skill-watcher-E4MGLKLS.js} +6 -5
  213. package/bundle/{sleep-GH6DLBJJ.js → sleep-SRCSXY6T.js} +10 -9
  214. package/bundle/{soul-bundle-GXLMDBCC.js → soul-bundle-VWAVHCZ6.js} +10 -9
  215. package/bundle/{spin-4DBYHS3E.js → spin-IMW2MZOH.js} +13 -10
  216. package/bundle/{spin-notifications-IKYJPER5.js → spin-notifications-SE2HVZI7.js} +7 -5
  217. package/bundle/{spin-notifications-IKYJPER5.js.map → spin-notifications-SE2HVZI7.js.map} +1 -1
  218. package/bundle/{spin-types-PLJH3SIK.js → spin-types-BLPYAETA.js} +5 -4
  219. package/bundle/{src-SUFZ27S5.js → src-6BTCMOD3.js} +4 -4
  220. package/bundle/{sse-parser-anthropic-U7ILHOY5.js → sse-parser-anthropic-A6R4Z2TB.js} +5 -4
  221. package/bundle/{sse-parser-anthropic-U7ILHOY5.js.map → sse-parser-anthropic-A6R4Z2TB.js.map} +1 -1
  222. package/bundle/{sse-parser-responses-OI73R3AH.js → sse-parser-responses-HSZY3QGJ.js} +5 -4
  223. package/bundle/{sse-parser-responses-OI73R3AH.js.map → sse-parser-responses-HSZY3QGJ.js.map} +1 -1
  224. package/bundle/{ssrf-guard-6GP4QYVA.js → ssrf-guard-O6SHIK6Q.js} +5 -4
  225. package/bundle/{ssrf-guard-6GP4QYVA.js.map → ssrf-guard-O6SHIK6Q.js.map} +1 -1
  226. package/bundle/{start-JT2BPMSW.js → start-7QZIWO3S.js} +5 -5
  227. package/bundle/start-7QZIWO3S.js.map +7 -0
  228. package/bundle/{stt-KD3AABKG.js → stt-LGVPXMVR.js} +6 -5
  229. package/bundle/{subagent-runtime-LVECAUPV.js → subagent-runtime-3UJB4HUB.js} +6 -5
  230. package/bundle/system-status-ATGKRRQI.js +349 -0
  231. package/bundle/system-status-ATGKRRQI.js.map +7 -0
  232. package/bundle/{task-store-2XRDM3AW.js → task-store-W5BFIAIH.js} +6 -5
  233. package/bundle/{telegram-adapter-UJ3RYYV6.js → telegram-adapter-7G773NII.js} +35 -35
  234. package/bundle/{tool-registry-YU6WBXPA.js → tool-registry-J6TE3I2T.js} +25 -23
  235. package/bundle/{tool-sandbox-RNNPDR5M.js → tool-sandbox-4UC6GAKA.js} +6 -5
  236. package/bundle/{transport-config-OK3MZPJK.js → transport-config-KBF5W2DP.js} +9 -8
  237. package/bundle/{update-ENNPRW7Y.js → update-424ZZQQ6.js} +6 -6
  238. package/bundle/{update-check-SJB6GV3A.js → update-check-7UWKBJOP.js} +3 -2
  239. package/bundle/{update-check-SJB6GV3A.js.map → update-check-7UWKBJOP.js.map} +1 -1
  240. package/bundle/{usage-tracker-HRSGC7QC.js → usage-tracker-NXD364VX.js} +2 -2
  241. package/bundle/{user-registry-6PUJJ5J2.js → user-registry-35BW4XKM.js} +6 -5
  242. package/bundle/{wrapper-WLHLG4MI.js → wrapper-W66YICNZ.js} +3 -3
  243. package/bundle/{ws-peer-client-WHW3RJTD.js → ws-peer-client-AIXCXF7V.js} +15 -14
  244. package/bundle/{ws-peer-client-WHW3RJTD.js.map → ws-peer-client-AIXCXF7V.js.map} +2 -2
  245. package/package.json +4 -8
  246. package/scripts/emergency-deploy.sh +11 -8
  247. package/scripts/emergency-update.sh +156 -23
  248. package/templates/config/.env +1 -1
  249. package/templates/config/models.json +13 -0
  250. package/bundle/chunk-37EX63K4.js.map +0 -7
  251. package/bundle/chunk-3QW2K53E.js.map +0 -7
  252. package/bundle/chunk-5V4VHKEA.js.map +0 -7
  253. package/bundle/chunk-72T2Q7IG.js.map +0 -7
  254. package/bundle/chunk-7RAGSHSH.js.map +0 -7
  255. package/bundle/chunk-7WHXTCVD.js.map +0 -7
  256. package/bundle/chunk-BU7LTI2W.js.map +0 -7
  257. package/bundle/chunk-C3EYYJN3.js.map +0 -7
  258. package/bundle/chunk-CAOIIVFP.js +0 -110
  259. package/bundle/chunk-CAOIIVFP.js.map +0 -7
  260. package/bundle/chunk-EDZGF6BC.js.map +0 -7
  261. package/bundle/chunk-GCFIK6OB.js.map +0 -7
  262. package/bundle/chunk-H2K23MOF.js.map +0 -7
  263. package/bundle/chunk-HAZHNBBY.js +0 -156
  264. package/bundle/chunk-HAZHNBBY.js.map +0 -7
  265. package/bundle/chunk-IXKQ4JMX.js.map +0 -7
  266. package/bundle/chunk-J5NOL4DB.js.map +0 -7
  267. package/bundle/chunk-JAJ3DUQ2.js +0 -30
  268. package/bundle/chunk-JAJ3DUQ2.js.map +0 -7
  269. package/bundle/chunk-KMFR5AVY.js +0 -45
  270. package/bundle/chunk-KMFR5AVY.js.map +0 -7
  271. package/bundle/chunk-M6Q3IQ4H.js.map +0 -7
  272. package/bundle/chunk-MQJG7OJX.js.map +0 -7
  273. package/bundle/chunk-NP72ZB7P.js.map +0 -7
  274. package/bundle/chunk-OY2HAK33.js.map +0 -7
  275. package/bundle/chunk-P5O6QZDC.js.map +0 -7
  276. package/bundle/chunk-RJX45XIC.js.map +0 -7
  277. package/bundle/chunk-S6HEHCCG.js.map +0 -7
  278. package/bundle/chunk-SESM4GBM.js.map +0 -7
  279. package/bundle/chunk-SXNY6HC4.js.map +0 -7
  280. package/bundle/chunk-VJATH7AN.js.map +0 -7
  281. package/bundle/chunk-ZY6DH2S4.js.map +0 -7
  282. package/bundle/deps-PHSLIA77.js.map +0 -7
  283. package/bundle/direct-api-transport-OAKYQBJR.js.map +0 -7
  284. package/bundle/dist-7HEHHQI2.js.map +0 -7
  285. package/bundle/heartbeat-tier3-3ZO3EVXP.js.map +0 -7
  286. package/bundle/install-ZAHTZ5M5.js.map +0 -7
  287. package/bundle/migrate-layout-RJJQLVGR.js.map +0 -7
  288. package/bundle/phase-config-V4XETN5F.js +0 -18
  289. package/bundle/sandbox-runtime-WHACQLLN.js +0 -22
  290. package/bundle/start-JT2BPMSW.js.map +0 -7
  291. package/bundle/system-status-XXJWTVJN.js +0 -243
  292. package/bundle/system-status-XXJWTVJN.js.map +0 -7
  293. package/bundle/user-registry-6PUJJ5J2.js.map +0 -7
  294. package/bundle/wrapper-WLHLG4MI.js.map +0 -7
  295. /package/bundle/{agent-api-rate-limit-4GEZ4YN5.js.map → agent-api-rate-limit-WCFXJMGY.js.map} +0 -0
  296. /package/bundle/{agent-registry-563P4EUJ.js.map → agent-registry-GU7ABOK5.js.map} +0 -0
  297. /package/bundle/{bridge-lock-transport-LXCF2IVN.js.map → bridge-lock-transport-4ZH7QTJP.js.map} +0 -0
  298. /package/bundle/{browser-2VZOGOGX.js.map → browser-EJNS35NT.js.map} +0 -0
  299. /package/bundle/{capability-WXEA2WFK.js.map → capability-JFWX3IQF.js.map} +0 -0
  300. /package/bundle/{chunk-CB6S3ZRF.js.map → chunk-2FAZIA37.js.map} +0 -0
  301. /package/bundle/{chunk-2FZJDMAF.js.map → chunk-3CACHBDI.js.map} +0 -0
  302. /package/bundle/{chunk-O4GKI3Q3.js.map → chunk-4S554KLW.js.map} +0 -0
  303. /package/bundle/{chunk-SSCGWDIC.js.map → chunk-65VCEC32.js.map} +0 -0
  304. /package/bundle/{chunk-V2QIAXWZ.js.map → chunk-7BSQ5UQO.js.map} +0 -0
  305. /package/bundle/{chunk-E7MV7WFT.js.map → chunk-7Z3HBPRY.js.map} +0 -0
  306. /package/bundle/{chunk-TY26WMQY.js.map → chunk-AFREM7FX.js.map} +0 -0
  307. /package/bundle/{chunk-N5VROZ7A.js.map → chunk-B6ZN6COK.js.map} +0 -0
  308. /package/bundle/{chunk-YEOZN5IE.js.map → chunk-DYBW4XXL.js.map} +0 -0
  309. /package/bundle/{chunk-56D3Y44D.js.map → chunk-EFJVUJBE.js.map} +0 -0
  310. /package/bundle/{chunk-FIAVVKGN.js.map → chunk-EUZDKV3C.js.map} +0 -0
  311. /package/bundle/{chunk-2LKQV2ND.js.map → chunk-FRKW6LWB.js.map} +0 -0
  312. /package/bundle/{chunk-DNDYD5SL.js.map → chunk-GP4XUKI5.js.map} +0 -0
  313. /package/bundle/{chunk-W726UGI6.js.map → chunk-GRVWZO4C.js.map} +0 -0
  314. /package/bundle/{chunk-OOKNHOCB.js.map → chunk-GWILHZPT.js.map} +0 -0
  315. /package/bundle/{chunk-BNBC4T45.js.map → chunk-HT2BPTZY.js.map} +0 -0
  316. /package/bundle/{chunk-FVUL44T4.js.map → chunk-IJT4KWXT.js.map} +0 -0
  317. /package/bundle/{chunk-IK4R3RBZ.js.map → chunk-JNIHEDKF.js.map} +0 -0
  318. /package/bundle/{chunk-4PIVWXUJ.js.map → chunk-LUNA6PM5.js.map} +0 -0
  319. /package/bundle/{chunk-MV5KOWOR.js.map → chunk-NDCRWEEJ.js.map} +0 -0
  320. /package/bundle/{chunk-ZOCEBV62.js.map → chunk-OKAQICWY.js.map} +0 -0
  321. /package/bundle/{chunk-TCI6FZTP.js.map → chunk-OLAURO5G.js.map} +0 -0
  322. /package/bundle/{chunk-YME7NRGP.js.map → chunk-OXTSWQCX.js.map} +0 -0
  323. /package/bundle/{chunk-HDOFJVFS.js.map → chunk-PEDX56EL.js.map} +0 -0
  324. /package/bundle/{chunk-ASYX43OU.js.map → chunk-Q32H6VPU.js.map} +0 -0
  325. /package/bundle/{chunk-IQKADER4.js.map → chunk-RWRRGE4U.js.map} +0 -0
  326. /package/bundle/{chunk-ULO2PX3T.js.map → chunk-TEFZ4JA4.js.map} +0 -0
  327. /package/bundle/{chunk-2RGR3LSV.js.map → chunk-TMUYFERL.js.map} +0 -0
  328. /package/bundle/{chunk-KBPVJGD7.js.map → chunk-URQPDCK5.js.map} +0 -0
  329. /package/bundle/{chunk-FJF42RZY.js.map → chunk-VUIX5AGB.js.map} +0 -0
  330. /package/bundle/{chunk-4HNCOQSK.js.map → chunk-WYHGNI56.js.map} +0 -0
  331. /package/bundle/{chunk-24V4A6RP.js.map → chunk-XX6BGTPO.js.map} +0 -0
  332. /package/bundle/{chunk-T7TAWGBX.js.map → chunk-Y76VUJSF.js.map} +0 -0
  333. /package/bundle/{chunk-TVSPVZTX.js.map → chunk-YDY6QVWJ.js.map} +0 -0
  334. /package/bundle/{chunk-V6CV3QPH.js.map → chunk-YRSMGJFP.js.map} +0 -0
  335. /package/bundle/{chunk-WP7FZHMI.js.map → chunk-YSKCQH6E.js.map} +0 -0
  336. /package/bundle/{chunk-NGZVJ52F.js.map → chunk-ZKJOFASV.js.map} +0 -0
  337. /package/bundle/{chunk-43DKPXTP.js.map → chunk-ZV4IWKDJ.js.map} +0 -0
  338. /package/bundle/{commands-XXFU2ZF7.js.map → commands-EWA4HNCM.js.map} +0 -0
  339. /package/bundle/{config-EWDZ234X.js.map → config-M3P5IOAI.js.map} +0 -0
  340. /package/bundle/{config-show-6J33O4TE.js.map → config-show-3DHPP26D.js.map} +0 -0
  341. /package/bundle/{daemon-LTDAXNA2.js.map → daemon-TB23FFWY.js.map} +0 -0
  342. /package/bundle/{delegation-tools-YDTWQMZD.js.map → delegation-tools-P2SCNL23.js.map} +0 -0
  343. /package/bundle/{deploy-lib-import-RGZJ3CGC.js.map → deploy-YYUCGGP3.js.map} +0 -0
  344. /package/bundle/{doctor-probes-3SLIUGKS.js.map → deploy-lib-import-T3UP4G6G.js.map} +0 -0
  345. /package/bundle/{discord-adapter-WUNYPTDE.js.map → discord-adapter-4TTETYDI.js.map} +0 -0
  346. /package/bundle/{env-schema-MSDP2YBO.js.map → doctor-probes-VDWFJKUB.js.map} +0 -0
  347. /package/bundle/{gossip-CS3G3447.js.map → env-schema-4JXQUOH4.js.map} +0 -0
  348. /package/bundle/{guardrails-24XK2COI.js.map → gossip-3C3BSNPN.js.map} +0 -0
  349. /package/bundle/{heartbeat-system-G4IFQXT6.js.map → guardrails-DL7ZSWVN.js.map} +0 -0
  350. /package/bundle/{hook-system-X6INNJGV.js.map → heartbeat-system-TDDIOVTC.js.map} +0 -0
  351. /package/bundle/{hotskills-6FQYTJIO.js.map → hook-system-M3POLUIB.js.map} +0 -0
  352. /package/bundle/{kanban-board-J6RO3ZU7.js.map → hotskills-FWX4QI7V.js.map} +0 -0
  353. /package/bundle/{kanban-channel-5EIXBFSA.js.map → kanban-board-M326B2XJ.js.map} +0 -0
  354. /package/bundle/{lazy-require-V6EFUATC.js.map → kanban-channel-IJ52OMNA.js.map} +0 -0
  355. /package/bundle/{logger-Y3VILPRH.js.map → lazy-require-KCRVT4SI.js.map} +0 -0
  356. /package/bundle/{main-chat-YLZDNQPO.js.map → logger-OWCSNYCA.js.map} +0 -0
  357. /package/bundle/{logs-YS3GDURO.js.map → logs-FXS4SCEM.js.map} +0 -0
  358. /package/bundle/{master-user-Z4M7KCJE.js.map → main-chat-ZNUZCTNS.js.map} +0 -0
  359. /package/bundle/{message-pipeline-MHEBDJLH.js.map → master-user-HSKM4ZFN.js.map} +0 -0
  360. /package/bundle/{nerve-VZNMFDGY.js.map → message-pipeline-KSONH4MT.js.map} +0 -0
  361. /package/bundle/{notification-VV2OR6NW.js.map → nerve-IGSXBKZZ.js.map} +0 -0
  362. /package/bundle/{orc-tools-CHRSXSAS.js.map → notification-BFSIEECG.js.map} +0 -0
  363. /package/bundle/{orc-KC4USP55.js.map → orc-EIGVTHAV.js.map} +0 -0
  364. /package/bundle/{paths-EDK6KWHG.js.map → orc-tools-A3G7WCSJ.js.map} +0 -0
  365. /package/bundle/{paths-RZF6WDMG.js.map → paths-3ZVW3NFL.js.map} +0 -0
  366. /package/bundle/{peer-auth-SRONOLNG.js.map → paths-X4LRYUI6.js.map} +0 -0
  367. /package/bundle/{peer-config-FRWLEYQ5.js.map → peer-auth-QC4EF2PM.js.map} +0 -0
  368. /package/bundle/{peer-jwt-XY3XRIA2.js.map → peer-config-TN55LFDC.js.map} +0 -0
  369. /package/bundle/{peer-transport-UBBXTDRP.js.map → peer-jwt-NCCPXJRX.js.map} +0 -0
  370. /package/bundle/{phase-config-V4XETN5F.js.map → peer-transport-I6JPLFZ2.js.map} +0 -0
  371. /package/bundle/{phase-transport-4NQHZX75.js.map → phase-transport-2BRWACDF.js.map} +0 -0
  372. /package/bundle/{reconcile-2EUXJ6W5.js.map → reconcile-CTFCLQRN.js.map} +0 -0
  373. /package/bundle/{registry-client-VN2MM2HI.js.map → rollback-ANRI3T5Z.js.map} +0 -0
  374. /package/bundle/{rollback-MVZ53XS4.js.map → sha-tracker-ZWBP6CIJ.js.map} +0 -0
  375. /package/bundle/{sandbox-runtime-WHACQLLN.js.map → skill-stats-JORH5DGM.js.map} +0 -0
  376. /package/bundle/{sha-tracker-2DB4R2TW.js.map → skill-watcher-E4MGLKLS.js.map} +0 -0
  377. /package/bundle/{skill-stats-TPD2NROA.js.map → sleep-SRCSXY6T.js.map} +0 -0
  378. /package/bundle/{skill-watcher-D7QYYYON.js.map → soul-bundle-VWAVHCZ6.js.map} +0 -0
  379. /package/bundle/{sleep-GH6DLBJJ.js.map → spin-IMW2MZOH.js.map} +0 -0
  380. /package/bundle/{soul-bundle-GXLMDBCC.js.map → spin-types-BLPYAETA.js.map} +0 -0
  381. /package/bundle/{spin-4DBYHS3E.js.map → src-6BTCMOD3.js.map} +0 -0
  382. /package/bundle/{spin-types-PLJH3SIK.js.map → stt-LGVPXMVR.js.map} +0 -0
  383. /package/bundle/{src-SUFZ27S5.js.map → subagent-runtime-3UJB4HUB.js.map} +0 -0
  384. /package/bundle/{stt-KD3AABKG.js.map → task-store-W5BFIAIH.js.map} +0 -0
  385. /package/bundle/{telegram-adapter-UJ3RYYV6.js.map → telegram-adapter-7G773NII.js.map} +0 -0
  386. /package/bundle/{subagent-runtime-LVECAUPV.js.map → tool-registry-J6TE3I2T.js.map} +0 -0
  387. /package/bundle/{task-store-2XRDM3AW.js.map → tool-sandbox-4UC6GAKA.js.map} +0 -0
  388. /package/bundle/{tool-registry-YU6WBXPA.js.map → transport-config-KBF5W2DP.js.map} +0 -0
  389. /package/bundle/{tool-sandbox-RNNPDR5M.js.map → update-424ZZQQ6.js.map} +0 -0
  390. /package/bundle/{transport-config-OK3MZPJK.js.map → usage-tracker-NXD364VX.js.map} +0 -0
  391. /package/bundle/{update-ENNPRW7Y.js.map → user-registry-35BW4XKM.js.map} +0 -0
  392. /package/bundle/{usage-tracker-HRSGC7QC.js.map → wrapper-W66YICNZ.js.map} +0 -0
@@ -1,25 +1,26 @@
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
- sleep_exports
5
- } from "./chunk-TCI6FZTP.js";
6
3
  import {
7
4
  browser_exports
8
- } from "./chunk-E7MV7WFT.js";
5
+ } from "./chunk-7Z3HBPRY.js";
6
+ import {
7
+ sleep_exports
8
+ } from "./chunk-OLAURO5G.js";
9
9
  import {
10
10
  hotskills_exports,
11
11
  init_hotskills
12
- } from "./chunk-IK4R3RBZ.js";
13
- import "./chunk-FIAVVKGN.js";
14
- import "./chunk-JAJ3DUQ2.js";
15
- import "./chunk-V6CV3QPH.js";
16
- import "./chunk-W726UGI6.js";
12
+ } from "./chunk-JNIHEDKF.js";
13
+ import "./chunk-EUZDKV3C.js";
14
+ import "./chunk-YRSMGJFP.js";
15
+ import "./chunk-UUIHL65U.js";
16
+ import "./chunk-GRVWZO4C.js";
17
17
  import "./chunk-N5KN3LGD.js";
18
- import "./chunk-VJATH7AN.js";
19
- import "./chunk-SSCGWDIC.js";
20
- import "./chunk-WP7FZHMI.js";
21
- import "./chunk-OOKNHOCB.js";
22
- import "./chunk-H2K23MOF.js";
18
+ import "./chunk-2KC5G3EA.js";
19
+ import "./chunk-65VCEC32.js";
20
+ import "./chunk-YSKCQH6E.js";
21
+ import "./chunk-GWILHZPT.js";
22
+ import "./chunk-GALQBVKO.js";
23
+ import "./chunk-O7KQG6ME.js";
23
24
  import "./chunk-7K2YZTLD.js";
24
25
 
25
26
  // src/capabilities/_registry.generated.ts
@@ -32,4 +33,4 @@ var capabilities = [
32
33
  export {
33
34
  capabilities
34
35
  };
35
- //# sourceMappingURL=_registry.generated-7DRCE4V6.js.map
36
+ //# sourceMappingURL=_registry.generated-RC6PEH6Z.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/capabilities/_registry.generated.ts"],
4
4
  "sourcesContent": ["// AUTO-GENERATED by esbuild.config.js \u2014 do not edit\n// Static capability registry for bundled builds\n\nimport * as cap0 from \"./browser/index.js\";\nimport * as cap1 from \"./hotskills/index.js\";\nimport * as cap2 from \"./sleep/index.js\";\n\nexport const capabilities = [\n { name: \"browser\", module: cap0 },\n { name: \"hotskills\", module: cap1 },\n { name: \"sleep\", module: cap2 },\n];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA;AAGO,IAAM,eAAe;AAAA,EAC1B,EAAE,MAAM,WAAW,QAAQ,gBAAK;AAAA,EAChC,EAAE,MAAM,aAAa,QAAQ,kBAAK;AAAA,EAClC,EAAE,MAAM,SAAS,QAAQ,cAAK;AAChC;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;AAGO,IAAM,eAAe;AAAA,EAC1B,EAAE,MAAM,WAAW,QAAQ,gBAAK;AAAA,EAChC,EAAE,MAAM,aAAa,QAAQ,kBAAK;AAAA,EAClC,EAAE,MAAM,SAAS,QAAQ,cAAK;AAChC;",
6
6
  "names": []
7
7
  }
@@ -5,11 +5,12 @@ import {
5
5
  BrowserTool,
6
6
  DomainAllowlist,
7
7
  getDefaultSocketPath
8
- } from "./chunk-VJATH7AN.js";
9
- import "./chunk-SSCGWDIC.js";
10
- import "./chunk-WP7FZHMI.js";
11
- import "./chunk-OOKNHOCB.js";
12
- import "./chunk-H2K23MOF.js";
8
+ } from "./chunk-2KC5G3EA.js";
9
+ import "./chunk-65VCEC32.js";
10
+ import "./chunk-YSKCQH6E.js";
11
+ import "./chunk-GWILHZPT.js";
12
+ import "./chunk-GALQBVKO.js";
13
+ import "./chunk-O7KQG6ME.js";
13
14
  import "./chunk-7K2YZTLD.js";
14
15
 
15
16
  // src/cli/abtars-browser.ts
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/cli/abtars-browser.ts"],
4
4
  "sourcesContent": ["/**\n * abtars-browser \u2014 standalone CLI for agent-initiated browser control.\n *\n * Gives the LLM agent direct control over a headless Chromium browser.\n * Follows the same pattern as abmind recall and abmind store.\n *\n * Usage:\n * abtars-browser --action navigate --url \"https://example.com\" --session-id default\n * abtars-browser --action fill --selector \"#email\" --value \"user@example.com\" --session-id auth\n * abtars-browser --action click --selector \"text=Sign In\" --session-id auth\n * abtars-browser --action extract_text --session-id auth\n * abtars-browser --action screenshot --full-page --session-id auth\n * abtars-browser --action get_page_info --session-id auth\n * abtars-browser --action close_session --session-id auth\n *\n * Output (success):\n * { \"success\": true, \"title\": \"Example\", \"url\": \"https://example.com\", \"status\": 200 }\n *\n * Output (error):\n * { \"success\": false, \"error\": \"navigate action requires --url\" }\n */\n\nimport * as net from \"node:net\";\nimport * as fs from \"node:fs\";\nimport type { BrowserAction, BrowserActionType, BrowserToolResult } from \"../types/browser.js\";\nimport { BrowserManager } from \"../capabilities/browser/browser-manager.js\";\nimport { BrowserTool } from \"../capabilities/browser/browser-tool.js\";\nimport { DomainAllowlist } from \"../capabilities/browser/domain-allowlist.js\";\nimport { getDefaultSocketPath } from \"../capabilities/browser/browser-ipc-server.js\";\n\n/** The 7 valid browser action types. */\nconst VALID_ACTIONS: ReadonlySet<string> = new Set<BrowserActionType>([\n \"navigate\",\n \"click\",\n \"fill\",\n \"extract_text\",\n \"screenshot\",\n \"get_page_info\",\n \"close_session\",\n \"set_cookie\",\n]);\n\nexport type RawBrowserArgs = {\n action?: string;\n url?: string;\n selector?: string;\n value?: string;\n sessionId: string;\n fullPage: boolean;\n cookieFile?: string;\n engine?: string;\n};\n\n/**\n * Parse raw CLI argv into a RawBrowserArgs object.\n * Exported for unit testing.\n */\nexport function parseArgs(argv: string[]): RawBrowserArgs {\n const args = argv.slice(2);\n const parsed: RawBrowserArgs = { sessionId: \"default\", fullPage: false };\n\n for (let i = 0; i < args.length; i++) {\n switch (args[i]) {\n case \"--action\": parsed.action = args[++i] ?? \"\"; break;\n case \"--url\": parsed.url = args[++i] ?? \"\"; break;\n case \"--selector\": parsed.selector = args[++i] ?? \"\"; break;\n case \"--value\": parsed.value = args[++i] ?? \"\"; break;\n case \"--session-id\": parsed.sessionId = args[++i] ?? \"default\"; break;\n case \"--full-page\": parsed.fullPage = true; break;\n case \"--cookie-file\": parsed.cookieFile = args[++i] ?? \"\"; break;\n case \"--engine\": parsed.engine = args[++i] ?? \"\"; break;\n }\n }\n\n return parsed;\n}\n\n/**\n * Validate raw CLI arguments and return either a parsed BrowserAction or an error string.\n * Exported for unit testing.\n */\nexport function validateArgs(\n raw: RawBrowserArgs,\n): { ok: true; action: BrowserAction; raw: RawBrowserArgs } | { ok: false; error: string } {\n // Validate action is one of the 7 valid types\n if (!raw.action) {\n return { ok: false, error: \"--action is required\" };\n }\n if (!VALID_ACTIONS.has(raw.action)) {\n return {\n ok: false,\n error: `Invalid action \"${raw.action}\". Valid actions: ${[...VALID_ACTIONS].join(\", \")}`,\n };\n }\n\n const actionType = raw.action as BrowserActionType;\n\n // Validate required params per action\n switch (actionType) {\n case \"navigate\":\n if (!raw.url) return { ok: false, error: \"navigate action requires --url\" };\n break;\n case \"click\":\n if (!raw.selector) return { ok: false, error: \"click action requires --selector\" };\n break;\n case \"fill\":\n if (!raw.selector) return { ok: false, error: \"fill action requires --selector\" };\n if (raw.value === undefined) return { ok: false, error: \"fill action requires --value\" };\n break;\n case \"set_cookie\":\n if (!raw.cookieFile) return { ok: false, error: \"set_cookie action requires --cookie-file\" };\n break;\n // extract_text, screenshot, get_page_info, close_session have no extra required params\n }\n\n return {\n ok: true,\n raw,\n action: {\n action: actionType,\n sessionId: raw.sessionId,\n url: raw.url,\n selector: raw.selector,\n value: raw.value,\n fullPage: raw.fullPage,\n cookieFile: raw.cookieFile,\n },\n };\n}\n\n// --- CLI entry point (only runs when executed directly) ---\n\n/**\n * Try executing the action via the main process IPC socket.\n * Returns null if socket unavailable (caller should fall back to ephemeral).\n */\nexport function executeViaIpc(\n action: BrowserAction,\n socketPath?: string,\n): Promise<BrowserToolResult | null> {\n const sock = socketPath ?? getDefaultSocketPath();\n\n if (!fs.existsSync(sock)) return Promise.resolve(null);\n\n return new Promise<BrowserToolResult | null>((resolve) => {\n const conn = net.createConnection(sock, () => {\n conn.end(JSON.stringify(action) + \"\\n\");\n });\n\n let data = \"\";\n conn.on(\"data\", (chunk) => { data += chunk.toString(); });\n\n conn.on(\"end\", () => {\n try {\n resolve(JSON.parse(data.trim()) as BrowserToolResult);\n } catch {\n resolve(null);\n }\n });\n\n conn.on(\"error\", () => resolve(null));\n\n // Don't hang forever if main process is stuck.\n conn.setTimeout(60_000, () => {\n conn.destroy();\n resolve(null);\n });\n });\n}\n\nasync function main() {\n const raw = parseArgs(process.argv);\n const validation = validateArgs(raw);\n\n if (!validation.ok) {\n console.log(JSON.stringify({ success: false, error: validation.error }));\n process.exit(1);\n }\n\n // Try IPC to main process first (sessions persist across calls).\n const ipcResult = await executeViaIpc(validation.action);\n if (ipcResult !== null) {\n console.log(JSON.stringify(ipcResult));\n return;\n }\n\n // Fallback: ephemeral browser (no session persistence).\n if (validation.raw.engine) process.env[\"BROWSER_ENGINE\"] = validation.raw.engine;\n else if (!process.env[\"BROWSER_ENGINE\"]) process.env[\"BROWSER_ENGINE\"] = \"cloakbrowser\";\n const browserManager = new BrowserManager();\n const allowlist = DomainAllowlist.fromEnv();\n const tool = new BrowserTool(browserManager, allowlist);\n\n try {\n const result = await tool.execute(validation.action);\n console.log(JSON.stringify(result));\n } catch (err) {\n const message = err instanceof Error ? err.message : String(err);\n console.log(JSON.stringify({ success: false, error: message }));\n } finally {\n await browserManager.shutdown();\n }\n}\n\n// Only run when executed as a script, not when imported for testing\nconst isDirectRun =\n process.argv[1]?.endsWith(\"abtars-browser.ts\") ||\n process.argv[1]?.endsWith(\"abtars-browser.js\");\nif (isDirectRun) {\n main();\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -2,46 +2,47 @@
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
3
  import {
4
4
  update
5
- } from "./chunk-72T2Q7IG.js";
6
- import "./chunk-KMFR5AVY.js";
5
+ } from "./chunk-LME23AA2.js";
6
+ import "./chunk-S5GD5EJ5.js";
7
7
  import {
8
8
  rollback
9
- } from "./chunk-BU7LTI2W.js";
9
+ } from "./chunk-HZDLFLRP.js";
10
10
  import {
11
11
  renderHuman,
12
12
  renderJson,
13
13
  runAllProbes,
14
14
  runFixes
15
- } from "./chunk-RJX45XIC.js";
15
+ } from "./chunk-5HDSQFT6.js";
16
16
  import {
17
17
  deriveFromPassphrase,
18
18
  deriveKey,
19
19
  writeKeyFile,
20
20
  writeKeyVerify
21
- } from "./chunk-OY2HAK33.js";
21
+ } from "./chunk-36ZEYDKZ.js";
22
22
  import {
23
23
  restart
24
- } from "./chunk-SXNY6HC4.js";
24
+ } from "./chunk-GPZNXY2U.js";
25
25
  import {
26
26
  printBanner
27
- } from "./chunk-TVSPVZTX.js";
27
+ } from "./chunk-YDY6QVWJ.js";
28
28
  import {
29
29
  readManifest,
30
30
  readSentinel
31
- } from "./chunk-EDZGF6BC.js";
32
- import {
33
- packagePaths
34
- } from "./chunk-C3EYYJN3.js";
31
+ } from "./chunk-5NY2YULC.js";
35
32
  import {
36
33
  init_log_and_swallow,
37
34
  logAndSwallow
38
- } from "./chunk-WP7FZHMI.js";
39
- import "./chunk-OOKNHOCB.js";
35
+ } from "./chunk-YSKCQH6E.js";
36
+ import "./chunk-GWILHZPT.js";
40
37
  import {
41
38
  abmindHome,
42
39
  abtarsHome,
43
40
  init_paths
44
- } from "./chunk-H2K23MOF.js";
41
+ } from "./chunk-GALQBVKO.js";
42
+ import {
43
+ packagePaths,
44
+ resolveReleasesDir
45
+ } from "./chunk-O7KQG6ME.js";
45
46
  import {
46
47
  __require
47
48
  } from "./chunk-7K2YZTLD.js";
@@ -141,7 +142,7 @@ function removeLock(path) {
141
142
  logAndSwallow("stop", "op", err);
142
143
  }
143
144
  }
144
- async function stop(opts) {
145
+ async function stop(_opts) {
145
146
  await printBanner("stop");
146
147
  const home = abtarsHome();
147
148
  const manifestPath2 = join(home, "manifest.json");
@@ -328,6 +329,7 @@ var ABTARS_EXCLUDE = [
328
329
  "overflow",
329
330
  "browser-socket",
330
331
  "app",
332
+ "app.staging",
331
333
  "bin",
332
334
  "bridge.lock",
333
335
  "deploy.state",
@@ -455,7 +457,6 @@ function encryptFile(inputPath, outputPath, abmindHome2) {
455
457
  init_log_and_swallow();
456
458
  import { mkdir, readFile, writeFile } from "node:fs/promises";
457
459
  import { dirname as dirname2, join as join5 } from "node:path";
458
- import { homedir as homedir2 } from "node:os";
459
460
 
460
461
  // src/components/hints.ts
461
462
  import { existsSync as existsSync4, readFileSync as readFileSync3, writeFileSync as writeFileSync2, renameSync as renameSync2 } from "node:fs";
@@ -526,7 +527,7 @@ var PROVIDER_API_KEY_ENV = {
526
527
  gemini: "GEMINI_API_KEY"
527
528
  };
528
529
  async function runInteractive(existing) {
529
- const { intro, outro, text, select, confirm: confirm2, isCancel, cancel } = await import("./dist-7HEHHQI2.js");
530
+ const { intro, outro, text, select, confirm: confirm2, isCancel, cancel } = await import("./dist-KMK7TZGN.js");
530
531
  intro("abtars onboard \u2014 first-time setup");
531
532
  let userName = "";
532
533
  const instanceName = await text({
@@ -775,7 +776,7 @@ async function validateModelCatalog(model, provider) {
775
776
  join5(here, "..", "..", "..", "templates", "config", "models.json"),
776
777
  join5(here, "..", "..", "templates", "config", "models.json"),
777
778
  join5(here, "..", "templates", "config", "models.json"),
778
- join5(process.env["HOME"] ?? "", ".abtars-releases", "src", "abtars", "templates", "config", "models.json"),
779
+ join5(resolveReleasesDir(), "src", "abtars", "templates", "config", "models.json"),
779
780
  join5(process.env["HOME"] ?? "", ".abtars", "config", "models.json")
780
781
  ];
781
782
  let catalog = null;
@@ -937,23 +938,23 @@ async function onboard(opts) {
937
938
  }
938
939
  await chmod(join5(paths.home, "secret"), 448);
939
940
  await chmod(join5(paths.home, "config"), 448);
940
- const { homedir: homedir3 } = await import("node:os");
941
- const localBin = join5(homedir3(), ".local", "bin");
941
+ const { homedir: homedir2 } = await import("node:os");
942
+ const localBin = join5(homedir2(), ".local", "bin");
942
943
  mkdirSync2(localBin, { recursive: true });
943
944
  const localAbtars = join5(localBin, "abtars");
944
945
  if (!fileExists(localAbtars)) {
945
946
  try {
946
947
  const { execSync: ex } = await import("node:child_process");
947
- const pnpmBin = ex("pnpm bin -g", { encoding: "utf-8", timeout: 5e3 }).trim();
948
- const pnpmAbtars = join5(pnpmBin, "abtars");
949
- if (fileExists(pnpmAbtars)) {
950
- symlinkSync(pnpmAbtars, localAbtars);
948
+ const globalBin = ex("npm root -g", { encoding: "utf-8", timeout: 5e3, stdio: ["pipe", "pipe", "ignore"] }).trim().replace(/\/node_modules$/, "");
949
+ const npmAbtars = join5(globalBin, "abtars");
950
+ if (fileExists(npmAbtars)) {
951
+ symlinkSync(npmAbtars, localAbtars);
951
952
  }
952
953
  } catch {
953
954
  }
954
955
  }
955
956
  const { hostname } = await import("node:os");
956
- const { emptyManifest, writeManifest: wm } = await import("./deploy-lib-import-RGZJ3CGC.js");
957
+ const { emptyManifest, writeManifest: wm } = await import("./deploy-lib-import-T3UP4G6G.js");
957
958
  const mode = process.platform === "darwin" ? "daemon" : "daemon";
958
959
  manifest = { ...emptyManifest("abtars", hostname()), installMode: mode };
959
960
  await wm(paths.manifest, manifest);
@@ -1012,7 +1013,7 @@ async function onboard(opts) {
1012
1013
  process.stderr.write(`\u26A0 ${catalogResult.message} (--force: continuing)
1013
1014
  `);
1014
1015
  } else {
1015
- const { confirm: cfm, isCancel: isCnl, cancel: cnl } = await import("./dist-7HEHHQI2.js");
1016
+ const { confirm: cfm, isCancel: isCnl, cancel: cnl } = await import("./dist-KMK7TZGN.js");
1016
1017
  process.stderr.write(`\u26A0 ${catalogResult.message}
1017
1018
  `);
1018
1019
  const cont = await cfm({ message: "Continue with this model?", initialValue: false });
@@ -1048,7 +1049,7 @@ async function onboard(opts) {
1048
1049
  }
1049
1050
  if (secrets.length > 0) process.stdout.write(`\u2713 ${secrets.length} secrets \u2192 ${secretDirPath}
1050
1051
  `);
1051
- const { writeManifest } = await import("./deploy-lib-import-RGZJ3CGC.js");
1052
+ const { writeManifest } = await import("./deploy-lib-import-T3UP4G6G.js");
1052
1053
  const mf = await readManifest(paths.manifest);
1053
1054
  if (mf) await writeManifest(paths.manifest, { ...mf, installMode: answers.installMode });
1054
1055
  process.stdout.write(`\u2713 install mode: ${answers.installMode}
@@ -1124,7 +1125,7 @@ async function onboard(opts) {
1124
1125
  const modelsCandidates = [
1125
1126
  join5(here, "..", "..", "..", "config", "models.json"),
1126
1127
  join5(here, "..", "..", "config", "models.json"),
1127
- join5(process.env["HOME"] ?? "", ".abtars-releases", "src", "abtars", "config", "models.json")
1128
+ join5(resolveReleasesDir(), "src", "abtars", "config", "models.json")
1128
1129
  ];
1129
1130
  for (const p of modelsCandidates) {
1130
1131
  if (modelsExists(p)) {
@@ -1136,7 +1137,8 @@ async function onboard(opts) {
1136
1137
  }
1137
1138
  }
1138
1139
  try {
1139
- const manifestPath2 = join5(homedir2(), ".abmind", "manifest.json");
1140
+ const { abmindHome: abmindHome2 } = await import("./paths-X4LRYUI6.js");
1141
+ const manifestPath2 = join5(abmindHome2(), "manifest.json");
1140
1142
  const manifest2 = JSON.parse((await import("node:fs")).readFileSync(manifestPath2, "utf-8"));
1141
1143
  if (manifest2.encryptionUser && manifest2.encryptionUser !== answers.userName) {
1142
1144
  process.stdout.write(`\u26A0\uFE0F abmind encryption uses name '${manifest2.encryptionUser}' but you entered '${answers.userName}'. Backup restore will need the encryption name ('${manifest2.encryptionUser}').
@@ -1169,10 +1171,10 @@ async function onboard(opts) {
1169
1171
  process.stdout.write(`
1170
1172
  Running abtars update...
1171
1173
  `);
1172
- const { update: update2 } = await import("./update-ENNPRW7Y.js");
1173
- return await update2({ source: "dev", skipFreshness: true, allowAbmindMismatch: false });
1174
+ const { update: update2 } = await import("./update-424ZZQQ6.js");
1175
+ return await update2({ source: opts.source ?? "alpha", localDir: opts.localDir, skipFreshness: true, allowAbmindMismatch: false });
1174
1176
  }
1175
- async function seedDefaultTasks(chatId, abtarsHome2) {
1177
+ async function seedDefaultTasks(_chatId, abtarsHome2) {
1176
1178
  const { existsSync: existsSync6, mkdirSync: mkdirSync2, copyFileSync } = await import("node:fs");
1177
1179
  const tasksJson = join5(abtarsHome2, "tasks", "tasks.json");
1178
1180
  if (existsSync6(tasksJson)) {
@@ -1185,8 +1187,7 @@ async function seedDefaultTasks(chatId, abtarsHome2) {
1185
1187
  const candidates = [
1186
1188
  join5(here, "..", "..", "..", "config", "tasks", "tasks.json"),
1187
1189
  join5(here, "..", "..", "config", "tasks", "tasks.json"),
1188
- join5(abtarsHome2, "..", ".abtars-releases", "src", "abtars", "config", "tasks", "tasks.json"),
1189
- join5(process.env["HOME"] ?? "", ".abtars-releases", "src", "abtars", "config", "tasks", "tasks.json")
1190
+ join5(resolveReleasesDir(), "src", "abtars", "config", "tasks", "tasks.json")
1190
1191
  ];
1191
1192
  let templatePath = null;
1192
1193
  for (const p of candidates) {
@@ -1318,14 +1319,14 @@ function printUsage() {
1318
1319
  `abtars \u2014 install/update CLI (#158)
1319
1320
 
1320
1321
  Usage:
1321
- abtars install [--force] [--mode=simple|supervised] [--restore <backup.zip>]
1322
+ abtars install [--force] [--mode=simple|daemon] [--restore <backup.zip>]
1323
+ abtars install --non-interactive --accept-risk [onboard flags...]
1322
1324
  abtars uninstall [--yes]
1323
1325
  abtars update [--dev [DIR] | --alpha | --stable]
1324
1326
  abtars rollback [--to <version>]
1325
1327
  abtars backup [--config] [--encrypt] [--output <dir>] [--prune-days N]
1326
1328
  abtars restore <file.zip|.7z|.abm|.enc> [--config] [--passphrase <p>]
1327
1329
  abtars doctor [--json] [--fix]
1328
- abtars install [--non-interactive --accept-risk --telegram-token ... --telegram-chat-id ...]
1329
1330
  abtars restart [--cold]
1330
1331
  abtars start
1331
1332
  abtars stop
@@ -1333,7 +1334,7 @@ Usage:
1333
1334
  abtars logs
1334
1335
  abtars config
1335
1336
  abtars deps [list|install|remove]
1336
- `
1337
+ `
1337
1338
  );
1338
1339
  }
1339
1340
  async function main(argv) {
@@ -1354,7 +1355,26 @@ async function main(argv) {
1354
1355
  const { command, flags } = parseArgs(argv);
1355
1356
  try {
1356
1357
  switch (command) {
1357
- case "install":
1358
+ case "install": {
1359
+ if (flags.get("help") === true) {
1360
+ printUsage();
1361
+ return 0;
1362
+ }
1363
+ let source = "alpha";
1364
+ let installLocalDir;
1365
+ if (flags.get("dev") === true || typeof flags.get("dev") === "string") {
1366
+ source = "dev";
1367
+ if (typeof flags.get("dev") === "string") installLocalDir = flags.get("dev");
1368
+ } else if (flags.get("alpha") === true) {
1369
+ source = "alpha";
1370
+ } else if (flags.get("stable") === true) {
1371
+ source = "stable";
1372
+ } else if (flags.has("local") || flags.get("source") === "local") {
1373
+ source = "dev";
1374
+ if (typeof flags.get("local") === "string") installLocalDir = flags.get("local");
1375
+ } else if (flags.get("source") === "npm") {
1376
+ source = "alpha";
1377
+ }
1358
1378
  return await onboard({
1359
1379
  nonInteractive: flags.get("non-interactive") === true,
1360
1380
  acceptRisk: flags.get("accept-risk") === true,
@@ -1367,8 +1387,11 @@ async function main(argv) {
1367
1387
  userName: typeof flags.get("user-name") === "string" ? flags.get("user-name") : void 0,
1368
1388
  instanceName: typeof flags.get("instance-name") === "string" ? flags.get("instance-name") : void 0,
1369
1389
  passphrase: typeof flags.get("passphrase") === "string" ? flags.get("passphrase") : void 0,
1370
- force: flags.get("force") === true
1390
+ force: flags.get("force") === true,
1391
+ source,
1392
+ localDir: installLocalDir
1371
1393
  });
1394
+ }
1372
1395
  case "uninstall":
1373
1396
  return await uninstall({ yes: flags.get("yes") === true });
1374
1397
  case "update": {
@@ -1394,6 +1417,10 @@ async function main(argv) {
1394
1417
  allowAbmindMismatch: flags.get("allow-abmind-mismatch") === true
1395
1418
  });
1396
1419
  }
1420
+ case "__deploy": {
1421
+ const { deployActivationCli } = await import("./deploy-YYUCGGP3.js");
1422
+ return await deployActivationCli(flags);
1423
+ }
1397
1424
  case "rollback":
1398
1425
  return await rollback({ to: typeof flags.get("to") === "string" ? Number(flags.get("to")) : void 0 });
1399
1426
  case "backup":
@@ -1404,7 +1431,7 @@ async function main(argv) {
1404
1431
  pruneDays: typeof flags.get("prune-days") === "string" ? Number(flags.get("prune-days")) : void 0
1405
1432
  });
1406
1433
  case "restore": {
1407
- const { restore } = await import("./restore-NFDE2RG6.js");
1434
+ const { restore } = await import("./restore-IFHPI7I7.js");
1408
1435
  return await restore(argv[1] ?? "", {
1409
1436
  config: flags.get("config") === true,
1410
1437
  passphrase: typeof flags.get("passphrase") === "string" ? flags.get("passphrase") : void 0
@@ -1419,27 +1446,27 @@ async function main(argv) {
1419
1446
  case "stop":
1420
1447
  return await stop({});
1421
1448
  case "start": {
1422
- const { start: startCmd } = await import("./start-JT2BPMSW.js");
1449
+ const { start: startCmd } = await import("./start-7QZIWO3S.js");
1423
1450
  return await startCmd();
1424
1451
  }
1425
1452
  case "daemon": {
1426
- const { daemon: daemonCmd } = await import("./daemon-LTDAXNA2.js");
1453
+ const { daemon: daemonCmd } = await import("./daemon-TB23FFWY.js");
1427
1454
  return await daemonCmd(argv.slice(1));
1428
1455
  }
1429
1456
  case "deps": {
1430
- const { deps: depsCmd } = await import("./deps-PHSLIA77.js");
1457
+ const { deps: depsCmd } = await import("./deps-WVK553KF.js");
1431
1458
  return await depsCmd(argv.slice(1));
1432
1459
  }
1433
1460
  case "logs": {
1434
- const { logs } = await import("./logs-YS3GDURO.js");
1461
+ const { logs } = await import("./logs-FXS4SCEM.js");
1435
1462
  return await logs();
1436
1463
  }
1437
1464
  case "orc": {
1438
- const { orc: orcCmd } = await import("./orc-KC4USP55.js");
1465
+ const { orc: orcCmd } = await import("./orc-EIGVTHAV.js");
1439
1466
  return await orcCmd(argv.slice(1));
1440
1467
  }
1441
1468
  case "config": {
1442
- const { configShow } = await import("./config-show-6J33O4TE.js");
1469
+ const { configShow } = await import("./config-show-3DHPP26D.js");
1443
1470
  return await configShow();
1444
1471
  }
1445
1472
  case "":