abtars 0.2.1-alpha.9 → 0.2.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 (309) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/README.md +93 -34
  3. package/bundle/{_registry.generated-ADOYFJJ4.js → _registry.generated-KYX63MGY.js} +19 -16
  4. package/bundle/{_registry.generated-ADOYFJJ4.js.map → _registry.generated-KYX63MGY.js.map} +1 -1
  5. package/bundle/abtars-browser.js +5 -6
  6. package/bundle/abtars-browser.js.map +2 -2
  7. package/bundle/abtars-cli.js +205 -179
  8. package/bundle/abtars-cli.js.map +4 -4
  9. package/bundle/abtars-restart.js +4 -4
  10. package/bundle/abtars-rss.js +25 -81
  11. package/bundle/abtars-rss.js.map +2 -2
  12. package/bundle/abtars-task.js +4 -5
  13. package/bundle/abtars-task.js.map +2 -2
  14. package/bundle/abtars-todo.js +133 -0
  15. package/bundle/abtars-todo.js.map +7 -0
  16. package/bundle/abtars.js +305 -182
  17. package/bundle/abtars.js.map +3 -3
  18. package/bundle/action-gate-DYV2XQBP.js +191 -0
  19. package/bundle/action-gate-DYV2XQBP.js.map +7 -0
  20. package/bundle/{agent-api-rate-limit-C25WGSFF.js → agent-api-rate-limit-R2OFAQ3N.js} +4 -4
  21. package/bundle/{agent-registry-SYUFNSVB.js → agent-registry-5VL5KI6U.js} +8 -8
  22. package/bundle/agent-registry-PIS5XJHX.js +19 -0
  23. package/bundle/{bridge-lock-transport-HO545SBK.js → bridge-lock-transport-N6OGDOSE.js} +5 -5
  24. package/bundle/{browse-delivery-VTLEAVYA.js → browse-delivery-DXGMDMXA.js} +8 -7
  25. package/bundle/{browser-REIXOJ6S.js → browser-QMYGSP5W.js} +11 -10
  26. package/bundle/{capability-ILW3D5HS.js → capability-733TLH4W.js} +6 -6
  27. package/bundle/chunk-3IPMKYYH.js +672 -0
  28. package/bundle/chunk-3IPMKYYH.js.map +7 -0
  29. package/bundle/{chunk-PZE3J7ER.js → chunk-3OXQWII3.js} +2 -2
  30. package/bundle/{chunk-X5FBUA53.js → chunk-4WKWPU6U.js} +137 -30
  31. package/bundle/chunk-4WKWPU6U.js.map +7 -0
  32. package/bundle/{chunk-4KJ76TTE.js → chunk-4XW7YA3K.js} +3 -3
  33. package/bundle/{chunk-A5OJYQNU.js → chunk-5WFIAUQC.js} +49 -22
  34. package/bundle/chunk-5WFIAUQC.js.map +7 -0
  35. package/bundle/{chunk-ZVDVNSXK.js → chunk-7WFE2JI5.js} +7 -7
  36. package/bundle/{chunk-R36WIOYX.js → chunk-B52YRWR6.js} +34 -6
  37. package/bundle/chunk-B52YRWR6.js.map +7 -0
  38. package/bundle/{chunk-Q62SXS73.js → chunk-BBDKU4EH.js} +9 -9
  39. package/bundle/chunk-BBTQKKDO.js +258 -0
  40. package/bundle/chunk-BBTQKKDO.js.map +7 -0
  41. package/bundle/{chunk-EX2SRTUE.js → chunk-CYSGXNBY.js} +2 -2
  42. package/bundle/{chunk-LYEAHE5V.js → chunk-DCY7DGMT.js} +2 -2
  43. package/bundle/chunk-DGS7J4P6.js +13 -0
  44. package/bundle/chunk-DGS7J4P6.js.map +7 -0
  45. package/bundle/{chunk-LDKSCXGL.js → chunk-DHPFI7OF.js} +8 -6
  46. package/bundle/{chunk-LDKSCXGL.js.map → chunk-DHPFI7OF.js.map} +1 -1
  47. package/bundle/{chunk-G6IXMYIO.js → chunk-DO4INSXE.js} +2 -2
  48. package/bundle/{chunk-VA5WKN3Z.js → chunk-EGA6JQVV.js} +4 -4
  49. package/bundle/chunk-EKHNWFEQ.js +85 -0
  50. package/bundle/chunk-EKHNWFEQ.js.map +7 -0
  51. package/bundle/{chunk-URAQLQ2U.js → chunk-F3HMZFIL.js} +4 -4
  52. package/bundle/{chunk-OOKLEC6V.js → chunk-FY3QUO2L.js} +7 -7
  53. package/bundle/{chunk-2BY6I4P5.js → chunk-GUTRAMK3.js} +2 -2
  54. package/bundle/chunk-GXKJKYU4.js +1089 -0
  55. package/bundle/chunk-GXKJKYU4.js.map +7 -0
  56. package/bundle/{chunk-GPL57SRN.js → chunk-H7RX7UCR.js} +3 -3
  57. package/bundle/{chunk-BYDUMHXT.js → chunk-HAF2AFBW.js} +2 -2
  58. package/bundle/chunk-HAS5NEK7.js +189 -0
  59. package/bundle/chunk-HAS5NEK7.js.map +7 -0
  60. package/bundle/chunk-HB54S5OY.js +4036 -0
  61. package/bundle/chunk-HB54S5OY.js.map +7 -0
  62. package/bundle/{chunk-OZ4IZFV4.js → chunk-HJQZP5CK.js} +9 -9
  63. package/bundle/{chunk-OZ4IZFV4.js.map → chunk-HJQZP5CK.js.map} +2 -2
  64. package/bundle/{chunk-HEHD3GG5.js → chunk-ITB2K6LI.js} +6 -13
  65. package/bundle/{chunk-HEHD3GG5.js.map → chunk-ITB2K6LI.js.map} +3 -3
  66. package/bundle/{chunk-KSEIWT4T.js → chunk-JFKOPNKL.js} +10 -10
  67. package/bundle/chunk-JFKOPNKL.js.map +7 -0
  68. package/bundle/{chunk-KFENC7BM.js → chunk-L33WNMCP.js} +2 -2
  69. package/bundle/{chunk-JRG4EFMP.js → chunk-LBMETTUP.js} +3 -3
  70. package/bundle/{chunk-TYVI3ZWA.js → chunk-LJAG2URA.js} +10 -7
  71. package/bundle/chunk-LJAG2URA.js.map +7 -0
  72. package/bundle/{chunk-KWBGYWDO.js → chunk-N24ROESF.js} +15 -17
  73. package/bundle/chunk-N24ROESF.js.map +7 -0
  74. package/bundle/{chunk-P2BZSLJJ.js → chunk-N7UG4FID.js} +448 -129
  75. package/bundle/chunk-N7UG4FID.js.map +7 -0
  76. package/bundle/chunk-NIYVCGBC.js +330 -0
  77. package/bundle/chunk-NIYVCGBC.js.map +7 -0
  78. package/bundle/{chunk-TOUZC6NR.js → chunk-OKMN6J4Z.js} +3 -3
  79. package/bundle/{chunk-RV54J75Q.js → chunk-PKHYCNTT.js} +13 -12
  80. package/bundle/chunk-PKHYCNTT.js.map +7 -0
  81. package/bundle/{chunk-XZSYMCLF.js → chunk-PUDGA4RR.js} +7 -7
  82. package/bundle/{chunk-CELR236Q.js → chunk-Q7CH5DA3.js} +2 -2
  83. package/bundle/chunk-QSC6QZ44.js +183 -0
  84. package/bundle/chunk-QSC6QZ44.js.map +7 -0
  85. package/bundle/chunk-RITEGAW6.js +138 -0
  86. package/bundle/chunk-RITEGAW6.js.map +7 -0
  87. package/bundle/{chunk-UDZIZB5F.js → chunk-RTL7HO3N.js} +3 -3
  88. package/bundle/{chunk-ITG6XGBS.js → chunk-SA44ITVX.js} +10 -10
  89. package/bundle/{chunk-3MO2MDXJ.js → chunk-SA6YEFNG.js} +3 -3
  90. package/bundle/{chunk-4BUOO6WI.js → chunk-SMZQDMSZ.js} +31 -11
  91. package/bundle/chunk-SMZQDMSZ.js.map +7 -0
  92. package/bundle/{chunk-GBBTK6H2.js → chunk-SRFEIZQT.js} +4 -4
  93. package/bundle/{chunk-ELRAH7VL.js → chunk-VXUVKC66.js} +3 -3
  94. package/bundle/chunk-VY2BUO6L.js +4035 -0
  95. package/bundle/chunk-VY2BUO6L.js.map +7 -0
  96. package/bundle/chunk-W6ELWLAR.js +143 -0
  97. package/bundle/chunk-W6ELWLAR.js.map +7 -0
  98. package/bundle/{chunk-RSWUPUNA.js → chunk-WMWI3SJ7.js} +30 -6
  99. package/bundle/chunk-WMWI3SJ7.js.map +7 -0
  100. package/bundle/{chunk-MJ6PHMOK.js → chunk-WW5F2DCO.js} +11 -2
  101. package/bundle/chunk-WW5F2DCO.js.map +7 -0
  102. package/bundle/chunk-Y2XBDQP3.js +4055 -0
  103. package/bundle/chunk-Y2XBDQP3.js.map +7 -0
  104. package/bundle/chunk-YMGX6HNP.js +131 -0
  105. package/bundle/chunk-YMGX6HNP.js.map +7 -0
  106. package/bundle/chunk-YWZPKBO6.js +22 -0
  107. package/bundle/chunk-YWZPKBO6.js.map +7 -0
  108. package/bundle/chunk-ZAA7B5BN.js +22 -0
  109. package/bundle/chunk-ZAA7B5BN.js.map +7 -0
  110. package/bundle/{commands-WUGPBPHI.js → commands-IGRSOSK6.js} +15 -14
  111. package/bundle/commands-LAWVNQTO.js +34 -0
  112. package/bundle/commands-RBWY7YXB.js +34 -0
  113. package/bundle/commands-XFZNMZN6.js +34 -0
  114. package/bundle/{config-DQIGDX4W.js → config-NDEYF4AQ.js} +7 -7
  115. package/bundle/{daemon-NPKYZ3CJ.js → daemon-WOQXCKNL.js} +4 -4
  116. package/bundle/{delegation-tools-6FICZQ5G.js → delegation-tools-Z5OM3TXS.js} +5 -5
  117. package/bundle/{deploy-lib-import-SBKXDD3F.js → deploy-lib-import-6VJTYXEG.js} +2 -2
  118. package/bundle/{deps-HN6CEXA4.js → deps-65V7XXG4.js} +4 -4
  119. package/bundle/{direct-api-transport-TRV45NO6.js → direct-api-transport-OZICXTWQ.js} +43 -15
  120. package/bundle/direct-api-transport-OZICXTWQ.js.map +7 -0
  121. package/bundle/direct-api-transport-QIWA5ES2.js +889 -0
  122. package/bundle/direct-api-transport-QIWA5ES2.js.map +7 -0
  123. package/bundle/{discord-adapter-WA2MFRK3.js → discord-adapter-JFIIVG34.js} +27 -24
  124. package/bundle/discord-adapter-JFIIVG34.js.map +7 -0
  125. package/bundle/discord-adapter-U3FA5OTY.js +589 -0
  126. package/bundle/discord-adapter-U3FA5OTY.js.map +7 -0
  127. package/bundle/discord-adapter-W6L5KJ6T.js +589 -0
  128. package/bundle/discord-adapter-W6L5KJ6T.js.map +7 -0
  129. package/bundle/discord-adapter-WWM6ROTW.js +589 -0
  130. package/bundle/discord-adapter-WWM6ROTW.js.map +7 -0
  131. package/bundle/{dns-wakeup-RYOCQ6GR.js → dns-wakeup-N46RPU5E.js} +3 -3
  132. package/bundle/{doctor-R54GZPKL.js → doctor-PIPSGI3H.js} +18 -7
  133. package/bundle/{doctor-R54GZPKL.js.map → doctor-PIPSGI3H.js.map} +2 -2
  134. package/bundle/{ensure-invariants-BJIEOSJ2.js → ensure-invariants-3NOBCYWS.js} +4 -4
  135. package/bundle/{env-schema-XCPAJ6IZ.js → env-schema-T43X43BU.js} +4 -4
  136. package/bundle/{hook-system-POI5VRIX.js → hook-system-ZCVOFFRD.js} +4 -4
  137. package/bundle/hotskills-DTROJY6G.js +17 -0
  138. package/bundle/{install-SH4UVUXQ.js → install-I3CXVW52.js} +3 -3
  139. package/bundle/{install-manifest-QRWID3KZ.js → install-manifest-KBYD7SAY.js} +3 -3
  140. package/bundle/{irc-adapter-AIEP6OX6.js → irc-adapter-HXO5D4SW.js} +3 -3
  141. package/bundle/{irc-config-6VY67UPQ.js → irc-config-XN5VW2V4.js} +5 -5
  142. package/bundle/kanban-board-6Q5E5GEB.js +31 -0
  143. package/bundle/kanban-board-I52RHNHQ.js +31 -0
  144. package/bundle/{lazy-require-UFYFFX2R.js → lazy-require-R3JYCV5M.js} +4 -4
  145. package/bundle/{media-utils-MOE36VWY.js → media-utils-W7XW3SVV.js} +4 -4
  146. package/bundle/{message-pipeline-2MBT44FO.js → message-pipeline-4CTBJ6K2.js} +17 -14
  147. package/bundle/message-pipeline-4KL7OWUH.js +38 -0
  148. package/bundle/message-pipeline-GFKSHRFU.js +38 -0
  149. package/bundle/message-pipeline-TGI2WJJM.js +38 -0
  150. package/bundle/meta.json +3181 -2356
  151. package/bundle/{notification-U6F5ZBSG.js → notification-ULESRDHB.js} +7 -6
  152. package/bundle/{openrouter-credits-7XXO6QGQ.js → openrouter-credits-PLIKRY5D.js} +4 -4
  153. package/bundle/{paths-ZJYIDND2.js → paths-QQM74XYT.js} +4 -2
  154. package/bundle/{peer-client-T44VI7NB.js → peer-client-D2F5QWRV.js} +8 -8
  155. package/bundle/{peer-config-D5A4454H.js → peer-config-5SUIBJLG.js} +5 -5
  156. package/bundle/{phase-transport-FEZ4SIJJ.js → phase-transport-INFD6ELA.js} +10 -10
  157. package/bundle/phase-transport-KXFZ5BVF.js +23 -0
  158. package/bundle/{restore-MFSW3EBL.js → restore-Z6MF54HS.js} +4 -4
  159. package/bundle/{restore-MFSW3EBL.js.map → restore-Z6MF54HS.js.map} +2 -2
  160. package/bundle/{update-check-O5MS6B3L.js → rollback-5RXXLUD6.js} +5 -7
  161. package/bundle/{self-healer-utils-7NFH22VJ.js → self-healer-utils-WPKOVXJD.js} +4 -4
  162. package/bundle/{skill-stats-IPVKMWN3.js → skill-stats-NHNH47QW.js} +5 -5
  163. package/bundle/{sleep-BPWX3FCN.js → sleep-ENFZFUJJ.js} +8 -8
  164. package/bundle/sleep-ENFZFUJJ.js.map +7 -0
  165. package/bundle/{soul-bundle-BRIUDEQ2.js → soul-bundle-QTPWDJB2.js} +7 -7
  166. package/bundle/soul-bundle-QTPWDJB2.js.map +7 -0
  167. package/bundle/{soul-loader-GBXJ7EBH.js → soul-loader-LCPTN4PK.js} +8 -8
  168. package/bundle/soul-loader-LCPTN4PK.js.map +7 -0
  169. package/bundle/{sse-parser-anthropic-H42TTLBD.js → sse-parser-anthropic-PYDJM3UC.js} +4 -4
  170. package/bundle/{sse-parser-responses-WG2LY2ML.js → sse-parser-responses-FYT7A5WT.js} +4 -4
  171. package/bundle/{ssrf-guard-E2KBBC5E.js → ssrf-guard-R4P5OCTO.js} +4 -4
  172. package/bundle/{start-CBVKNEAT.js → start-4DNURGIY.js} +1 -1
  173. package/bundle/{stt-CF3CPFDC.js → stt-YN77NND6.js} +5 -5
  174. package/bundle/stt-YN77NND6.js.map +7 -0
  175. package/bundle/{subagent-runtime-4MTYUBIZ.js → subagent-runtime-5AYOXOU2.js} +5 -5
  176. package/bundle/subagent-runtime-5AYOXOU2.js.map +7 -0
  177. package/bundle/subagent-runtime-VKTX6Q2M.js +13 -0
  178. package/bundle/subagent-runtime-VKTX6Q2M.js.map +7 -0
  179. package/bundle/system-event-buffer-OEPPNUGK.js +17 -0
  180. package/bundle/system-event-buffer-OEPPNUGK.js.map +7 -0
  181. package/bundle/{system-message-TALP6GP2.js → system-message-BRU267FW.js} +3 -3
  182. package/bundle/{system-status-GLYXXDE3.js → system-status-7K2QTH3J.js} +58 -51
  183. package/bundle/system-status-7K2QTH3J.js.map +7 -0
  184. package/bundle/{hotskills-6ECHLXTJ.js → task-failure-buffer-DPM5MWZ5.js} +8 -7
  185. package/bundle/task-failure-buffer-DPM5MWZ5.js.map +7 -0
  186. package/bundle/{task-store-LC7ZMS72.js → task-store-VCBHAB43.js} +5 -5
  187. package/bundle/task-store-VCBHAB43.js.map +7 -0
  188. package/bundle/{telegram-adapter-BJJYXN7J.js → telegram-adapter-4KI4CJPG.js} +51 -33
  189. package/bundle/telegram-adapter-4KI4CJPG.js.map +7 -0
  190. package/bundle/telegram-adapter-76B4JRJJ.js +1080 -0
  191. package/bundle/telegram-adapter-76B4JRJJ.js.map +7 -0
  192. package/bundle/telegram-adapter-VZA74EMT.js +1080 -0
  193. package/bundle/telegram-adapter-VZA74EMT.js.map +7 -0
  194. package/bundle/telegram-adapter-ZO2CLU22.js +1080 -0
  195. package/bundle/telegram-adapter-ZO2CLU22.js.map +7 -0
  196. package/bundle/{tool-registry-T7XLTI2Q.js → tool-registry-CG7GIS64.js} +13 -9
  197. package/bundle/tool-registry-CG7GIS64.js.map +7 -0
  198. package/bundle/tool-registry-TGNU5AMG.js +43 -0
  199. package/bundle/tool-registry-TGNU5AMG.js.map +7 -0
  200. package/bundle/{tool-sandbox-OZMXJZLQ.js → tool-sandbox-TLAL55QP.js} +5 -5
  201. package/bundle/tool-sandbox-TLAL55QP.js.map +7 -0
  202. package/bundle/{transport-config-G5NKQXPJ.js → transport-config-JIKHB7GT.js} +8 -8
  203. package/bundle/transport-config-JIKHB7GT.js.map +7 -0
  204. package/bundle/update-check-AJMIBQGQ.js +81 -0
  205. package/bundle/update-check-AJMIBQGQ.js.map +7 -0
  206. package/bundle/{user-registry-NUVNEHJU.js → user-registry-PEFDZ5AV.js} +5 -5
  207. package/bundle/user-registry-PEFDZ5AV.js.map +7 -0
  208. package/core/skills/tools/gmail/SKILL.md +5 -14
  209. package/core/skills/tools/rss/SKILL.md +51 -0
  210. package/install-manifest.json +8 -2
  211. package/package.json +4 -2
  212. package/scripts/abtars-daemon.service +3 -0
  213. package/scripts/abtars@.service +3 -0
  214. package/scripts/build-and-deploy.sh +68 -0
  215. package/scripts/doctor.sh +38 -0
  216. package/scripts/emergency-deploy.sh +95 -0
  217. package/scripts/watchdog.sh +51 -5
  218. package/bundle/chunk-4BUOO6WI.js.map +0 -7
  219. package/bundle/chunk-A5OJYQNU.js.map +0 -7
  220. package/bundle/chunk-JX3ZZU3O.js +0 -82
  221. package/bundle/chunk-JX3ZZU3O.js.map +0 -7
  222. package/bundle/chunk-KJOCXWJ5.js +0 -131
  223. package/bundle/chunk-KJOCXWJ5.js.map +0 -7
  224. package/bundle/chunk-KSEIWT4T.js.map +0 -7
  225. package/bundle/chunk-KWBGYWDO.js.map +0 -7
  226. package/bundle/chunk-MJ6PHMOK.js.map +0 -7
  227. package/bundle/chunk-P2BZSLJJ.js.map +0 -7
  228. package/bundle/chunk-R36WIOYX.js.map +0 -7
  229. package/bundle/chunk-RE3F3CFW.js +0 -300
  230. package/bundle/chunk-RE3F3CFW.js.map +0 -7
  231. package/bundle/chunk-RSWUPUNA.js.map +0 -7
  232. package/bundle/chunk-RV54J75Q.js.map +0 -7
  233. package/bundle/chunk-TYVI3ZWA.js.map +0 -7
  234. package/bundle/chunk-X5FBUA53.js.map +0 -7
  235. package/bundle/direct-api-transport-TRV45NO6.js.map +0 -7
  236. package/bundle/discord-adapter-WA2MFRK3.js.map +0 -7
  237. package/bundle/system-status-GLYXXDE3.js.map +0 -7
  238. package/bundle/telegram-adapter-BJJYXN7J.js.map +0 -7
  239. /package/bundle/{agent-api-rate-limit-C25WGSFF.js.map → agent-api-rate-limit-R2OFAQ3N.js.map} +0 -0
  240. /package/bundle/{agent-registry-SYUFNSVB.js.map → agent-registry-5VL5KI6U.js.map} +0 -0
  241. /package/bundle/{bridge-lock-transport-HO545SBK.js.map → agent-registry-PIS5XJHX.js.map} +0 -0
  242. /package/bundle/{browse-delivery-VTLEAVYA.js.map → bridge-lock-transport-N6OGDOSE.js.map} +0 -0
  243. /package/bundle/{browser-REIXOJ6S.js.map → browse-delivery-DXGMDMXA.js.map} +0 -0
  244. /package/bundle/{capability-ILW3D5HS.js.map → browser-QMYGSP5W.js.map} +0 -0
  245. /package/bundle/{commands-WUGPBPHI.js.map → capability-733TLH4W.js.map} +0 -0
  246. /package/bundle/{chunk-PZE3J7ER.js.map → chunk-3OXQWII3.js.map} +0 -0
  247. /package/bundle/{chunk-4KJ76TTE.js.map → chunk-4XW7YA3K.js.map} +0 -0
  248. /package/bundle/{chunk-ZVDVNSXK.js.map → chunk-7WFE2JI5.js.map} +0 -0
  249. /package/bundle/{chunk-Q62SXS73.js.map → chunk-BBDKU4EH.js.map} +0 -0
  250. /package/bundle/{chunk-EX2SRTUE.js.map → chunk-CYSGXNBY.js.map} +0 -0
  251. /package/bundle/{chunk-LYEAHE5V.js.map → chunk-DCY7DGMT.js.map} +0 -0
  252. /package/bundle/{chunk-G6IXMYIO.js.map → chunk-DO4INSXE.js.map} +0 -0
  253. /package/bundle/{chunk-VA5WKN3Z.js.map → chunk-EGA6JQVV.js.map} +0 -0
  254. /package/bundle/{chunk-URAQLQ2U.js.map → chunk-F3HMZFIL.js.map} +0 -0
  255. /package/bundle/{chunk-OOKLEC6V.js.map → chunk-FY3QUO2L.js.map} +0 -0
  256. /package/bundle/{chunk-2BY6I4P5.js.map → chunk-GUTRAMK3.js.map} +0 -0
  257. /package/bundle/{chunk-GPL57SRN.js.map → chunk-H7RX7UCR.js.map} +0 -0
  258. /package/bundle/{chunk-BYDUMHXT.js.map → chunk-HAF2AFBW.js.map} +0 -0
  259. /package/bundle/{chunk-KFENC7BM.js.map → chunk-L33WNMCP.js.map} +0 -0
  260. /package/bundle/{chunk-JRG4EFMP.js.map → chunk-LBMETTUP.js.map} +0 -0
  261. /package/bundle/{chunk-TOUZC6NR.js.map → chunk-OKMN6J4Z.js.map} +0 -0
  262. /package/bundle/{chunk-XZSYMCLF.js.map → chunk-PUDGA4RR.js.map} +0 -0
  263. /package/bundle/{chunk-CELR236Q.js.map → chunk-Q7CH5DA3.js.map} +0 -0
  264. /package/bundle/{chunk-UDZIZB5F.js.map → chunk-RTL7HO3N.js.map} +0 -0
  265. /package/bundle/{chunk-ITG6XGBS.js.map → chunk-SA44ITVX.js.map} +0 -0
  266. /package/bundle/{chunk-3MO2MDXJ.js.map → chunk-SA6YEFNG.js.map} +0 -0
  267. /package/bundle/{chunk-GBBTK6H2.js.map → chunk-SRFEIZQT.js.map} +0 -0
  268. /package/bundle/{chunk-ELRAH7VL.js.map → chunk-VXUVKC66.js.map} +0 -0
  269. /package/bundle/{config-DQIGDX4W.js.map → commands-IGRSOSK6.js.map} +0 -0
  270. /package/bundle/{delegation-tools-6FICZQ5G.js.map → commands-LAWVNQTO.js.map} +0 -0
  271. /package/bundle/{deploy-lib-import-SBKXDD3F.js.map → commands-RBWY7YXB.js.map} +0 -0
  272. /package/bundle/{env-schema-XCPAJ6IZ.js.map → commands-XFZNMZN6.js.map} +0 -0
  273. /package/bundle/{hook-system-POI5VRIX.js.map → config-NDEYF4AQ.js.map} +0 -0
  274. /package/bundle/{daemon-NPKYZ3CJ.js.map → daemon-WOQXCKNL.js.map} +0 -0
  275. /package/bundle/{hotskills-6ECHLXTJ.js.map → delegation-tools-Z5OM3TXS.js.map} +0 -0
  276. /package/bundle/{install-SH4UVUXQ.js.map → deploy-lib-import-6VJTYXEG.js.map} +0 -0
  277. /package/bundle/{deps-HN6CEXA4.js.map → deps-65V7XXG4.js.map} +0 -0
  278. /package/bundle/{dns-wakeup-RYOCQ6GR.js.map → dns-wakeup-N46RPU5E.js.map} +0 -0
  279. /package/bundle/{ensure-invariants-BJIEOSJ2.js.map → ensure-invariants-3NOBCYWS.js.map} +0 -0
  280. /package/bundle/{lazy-require-UFYFFX2R.js.map → env-schema-T43X43BU.js.map} +0 -0
  281. /package/bundle/{message-pipeline-2MBT44FO.js.map → hook-system-ZCVOFFRD.js.map} +0 -0
  282. /package/bundle/{notification-U6F5ZBSG.js.map → hotskills-DTROJY6G.js.map} +0 -0
  283. /package/bundle/{paths-ZJYIDND2.js.map → install-I3CXVW52.js.map} +0 -0
  284. /package/bundle/{install-manifest-QRWID3KZ.js.map → install-manifest-KBYD7SAY.js.map} +0 -0
  285. /package/bundle/{irc-adapter-AIEP6OX6.js.map → irc-adapter-HXO5D4SW.js.map} +0 -0
  286. /package/bundle/{irc-config-6VY67UPQ.js.map → irc-config-XN5VW2V4.js.map} +0 -0
  287. /package/bundle/{peer-config-D5A4454H.js.map → kanban-board-6Q5E5GEB.js.map} +0 -0
  288. /package/bundle/{phase-transport-FEZ4SIJJ.js.map → kanban-board-I52RHNHQ.js.map} +0 -0
  289. /package/bundle/{skill-stats-IPVKMWN3.js.map → lazy-require-R3JYCV5M.js.map} +0 -0
  290. /package/bundle/{media-utils-MOE36VWY.js.map → media-utils-W7XW3SVV.js.map} +0 -0
  291. /package/bundle/{sleep-BPWX3FCN.js.map → message-pipeline-4CTBJ6K2.js.map} +0 -0
  292. /package/bundle/{soul-bundle-BRIUDEQ2.js.map → message-pipeline-4KL7OWUH.js.map} +0 -0
  293. /package/bundle/{soul-loader-GBXJ7EBH.js.map → message-pipeline-GFKSHRFU.js.map} +0 -0
  294. /package/bundle/{stt-CF3CPFDC.js.map → message-pipeline-TGI2WJJM.js.map} +0 -0
  295. /package/bundle/{subagent-runtime-4MTYUBIZ.js.map → notification-ULESRDHB.js.map} +0 -0
  296. /package/bundle/{openrouter-credits-7XXO6QGQ.js.map → openrouter-credits-PLIKRY5D.js.map} +0 -0
  297. /package/bundle/{task-store-LC7ZMS72.js.map → paths-QQM74XYT.js.map} +0 -0
  298. /package/bundle/{peer-client-T44VI7NB.js.map → peer-client-D2F5QWRV.js.map} +0 -0
  299. /package/bundle/{tool-registry-T7XLTI2Q.js.map → peer-config-5SUIBJLG.js.map} +0 -0
  300. /package/bundle/{tool-sandbox-OZMXJZLQ.js.map → phase-transport-INFD6ELA.js.map} +0 -0
  301. /package/bundle/{transport-config-G5NKQXPJ.js.map → phase-transport-KXFZ5BVF.js.map} +0 -0
  302. /package/bundle/{update-check-O5MS6B3L.js.map → rollback-5RXXLUD6.js.map} +0 -0
  303. /package/bundle/{self-healer-utils-7NFH22VJ.js.map → self-healer-utils-WPKOVXJD.js.map} +0 -0
  304. /package/bundle/{user-registry-NUVNEHJU.js.map → skill-stats-NHNH47QW.js.map} +0 -0
  305. /package/bundle/{sse-parser-anthropic-H42TTLBD.js.map → sse-parser-anthropic-PYDJM3UC.js.map} +0 -0
  306. /package/bundle/{sse-parser-responses-WG2LY2ML.js.map → sse-parser-responses-FYT7A5WT.js.map} +0 -0
  307. /package/bundle/{ssrf-guard-E2KBBC5E.js.map → ssrf-guard-R4P5OCTO.js.map} +0 -0
  308. /package/bundle/{start-CBVKNEAT.js.map → start-4DNURGIY.js.map} +0 -0
  309. /package/bundle/{system-message-TALP6GP2.js.map → system-message-BRU267FW.js.map} +0 -0
@@ -0,0 +1,191 @@
1
+ #!/usr/bin/env node
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
+ init_logger,
5
+ logError,
6
+ logInfo,
7
+ logWarn
8
+ } from "./chunk-GUTRAMK3.js";
9
+ import "./chunk-WW5F2DCO.js";
10
+ import "./chunk-7K2YZTLD.js";
11
+
12
+ // src/components/action-gate.ts
13
+ init_logger();
14
+ import { randomBytes } from "node:crypto";
15
+ import { readFileSync, writeFileSync, mkdirSync, appendFileSync, existsSync } from "node:fs";
16
+ import { join } from "node:path";
17
+ var TAG = "action-gate";
18
+ var ActionGate = class {
19
+ tokens = /* @__PURE__ */ new Map();
20
+ pending = /* @__PURE__ */ new Map();
21
+ rules = [];
22
+ rulesPath;
23
+ auditPath;
24
+ notify = null;
25
+ constructor(authDir) {
26
+ this.rulesPath = join(authDir, "rules.json");
27
+ this.auditPath = join(authDir, "audit.jsonl");
28
+ mkdirSync(authDir, { recursive: true });
29
+ this.loadRules();
30
+ }
31
+ setNotify(fn) {
32
+ this.notify = fn;
33
+ }
34
+ /** Check if a rule already allows/denies this action. */
35
+ checkRules(category, pattern) {
36
+ for (const rule of this.rules) {
37
+ if (rule.category !== category) continue;
38
+ if (rule.pattern === "*" || rule.pattern === pattern) {
39
+ return rule.action;
40
+ }
41
+ }
42
+ return null;
43
+ }
44
+ /**
45
+ * Request authorization for a privileged action.
46
+ * Returns true if granted, false if denied/timed out.
47
+ */
48
+ async requestAuth(category, detail) {
49
+ const rule = this.checkRules(category, detail);
50
+ if (rule === "allow") {
51
+ this.audit(category, detail, "allowed-by-rule");
52
+ return true;
53
+ }
54
+ if (rule === "deny") {
55
+ this.audit(category, detail, "denied-by-rule");
56
+ return false;
57
+ }
58
+ if (!this.notify) {
59
+ logWarn(TAG, `No notify function \u2014 auto-denying ${category}: ${detail.slice(0, 80)}`);
60
+ this.audit(category, detail, "denied-no-notify");
61
+ return false;
62
+ }
63
+ const requestId = randomBytes(8).toString("hex");
64
+ const message = this.formatMessage(category, detail);
65
+ return new Promise((resolve) => {
66
+ const timer = setTimeout(() => {
67
+ this.pending.delete(requestId);
68
+ logWarn(TAG, `Auth request timed out: ${category} ${detail.slice(0, 60)}`);
69
+ this.audit(category, detail, "denied-timeout");
70
+ resolve(false);
71
+ }, 12e4);
72
+ const reminderTimer = setTimeout(() => {
73
+ const req = this.pending.get(requestId);
74
+ if (req && !req.reminderSent) {
75
+ req.reminderSent = true;
76
+ this.notify?.("\u23F3 Still waiting for authorization...", []).catch(() => {
77
+ });
78
+ }
79
+ }, 6e4);
80
+ this.pending.set(requestId, { id: requestId, category, detail, resolve: (granted) => {
81
+ clearTimeout(timer);
82
+ clearTimeout(reminderTimer);
83
+ this.pending.delete(requestId);
84
+ resolve(granted);
85
+ }, timer, reminderSent: false });
86
+ this.notify(message, [
87
+ { text: "\u2705 Allow once", data: `auth:${requestId}:once` },
88
+ { text: "\u{1F513} Always allow", data: `auth:${requestId}:always` },
89
+ { text: "\u274C Deny", data: `auth:${requestId}:deny` }
90
+ ]).catch((err) => {
91
+ logError(TAG, `Failed to send auth request: ${err}`);
92
+ clearTimeout(timer);
93
+ clearTimeout(reminderTimer);
94
+ this.pending.delete(requestId);
95
+ this.audit(category, detail, "denied-send-failed");
96
+ resolve(false);
97
+ });
98
+ });
99
+ }
100
+ /** Handle callback from Telegram button press. */
101
+ handleCallback(data) {
102
+ const match = data.match(/^auth:([a-f0-9]+):(once|always|deny)$/);
103
+ if (!match) return false;
104
+ const [, requestId, action] = match;
105
+ const req = this.pending.get(requestId);
106
+ if (!req) return false;
107
+ if (action === "once") {
108
+ this.audit(req.category, req.detail, "allowed-once");
109
+ req.resolve(true);
110
+ } else if (action === "always") {
111
+ this.storeRule(req.category, req.detail, "allow");
112
+ this.audit(req.category, req.detail, "allowed-always");
113
+ req.resolve(true);
114
+ } else {
115
+ this.audit(req.category, req.detail, "denied");
116
+ req.resolve(false);
117
+ }
118
+ return true;
119
+ }
120
+ /** Generate a one-use token for external CLI callers. */
121
+ generateToken(category, pattern) {
122
+ const id = randomBytes(16).toString("hex");
123
+ this.tokens.set(id, {
124
+ id,
125
+ category,
126
+ pattern,
127
+ expiresAt: Date.now() + 12e4,
128
+ consumed: false
129
+ });
130
+ return id;
131
+ }
132
+ /** Validate and consume a token. */
133
+ validateToken(tokenId) {
134
+ const token = this.tokens.get(tokenId);
135
+ if (!token) return false;
136
+ if (token.consumed || Date.now() > token.expiresAt) {
137
+ this.tokens.delete(tokenId);
138
+ return false;
139
+ }
140
+ token.consumed = true;
141
+ this.tokens.delete(tokenId);
142
+ return true;
143
+ }
144
+ storeRule(category, pattern, action) {
145
+ this.rules.push({ category, pattern, action, createdAt: (/* @__PURE__ */ new Date()).toISOString() });
146
+ writeFileSync(this.rulesPath, JSON.stringify({ rules: this.rules }, null, 2) + "\n");
147
+ logInfo(TAG, `Stored rule: ${action} ${category}:${pattern}`);
148
+ }
149
+ loadRules() {
150
+ if (!existsSync(this.rulesPath)) {
151
+ this.rules = [];
152
+ return;
153
+ }
154
+ try {
155
+ const data = JSON.parse(readFileSync(this.rulesPath, "utf-8"));
156
+ this.rules = data.rules ?? [];
157
+ } catch {
158
+ this.rules = [];
159
+ }
160
+ }
161
+ audit(category, detail, outcome) {
162
+ const entry = JSON.stringify({ ts: (/* @__PURE__ */ new Date()).toISOString(), category, detail: detail.slice(0, 200), outcome });
163
+ try {
164
+ appendFileSync(this.auditPath, entry + "\n");
165
+ } catch {
166
+ }
167
+ }
168
+ formatMessage(category, detail) {
169
+ switch (category) {
170
+ case "secret-recall":
171
+ return `\u{1F510} Agent wants SECRET memory:
172
+ "${detail.slice(0, 100)}"
173
+
174
+ Authorize?`;
175
+ case "bash-auth":
176
+ return `\u26A0\uFE0F Agent wants to run:
177
+ \`${detail.slice(0, 200)}\`
178
+
179
+ Authorize?`;
180
+ default:
181
+ return `\u{1F512} Agent requests: ${category}
182
+ ${detail.slice(0, 150)}
183
+
184
+ Authorize?`;
185
+ }
186
+ }
187
+ };
188
+ export {
189
+ ActionGate
190
+ };
191
+ //# sourceMappingURL=action-gate-DYV2XQBP.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/components/action-gate.ts"],
4
+ "sourcesContent": ["/**\n * action-gate.ts \u2014 Out-of-band authorization for privileged actions.\n * Agent requests a privileged action \u2192 Telegram inline keyboard to master \u2192 proceed/deny.\n */\n\nimport { randomBytes } from \"node:crypto\";\nimport { readFileSync, writeFileSync, mkdirSync, appendFileSync, existsSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { logInfo, logWarn, logError } from \"./logger.js\";\n\nconst TAG = \"action-gate\";\n\nexport interface AuthToken {\n id: string;\n category: string;\n pattern: string;\n expiresAt: number;\n consumed: boolean;\n}\n\nexport interface AuthRule {\n category: string;\n pattern: string;\n action: \"allow\" | \"deny\";\n createdAt: string;\n}\n\nexport interface AuthRequest {\n id: string;\n category: string;\n detail: string;\n resolve: (granted: boolean) => void;\n timer: ReturnType<typeof setTimeout>;\n reminderSent: boolean;\n}\n\nexport type NotifyFn = (text: string, buttons: Array<{ text: string; data: string }>) => Promise<void>;\n\nexport class ActionGate {\n private tokens = new Map<string, AuthToken>();\n private pending = new Map<string, AuthRequest>();\n private rules: AuthRule[] = [];\n private rulesPath: string;\n private auditPath: string;\n private notify: NotifyFn | null = null;\n\n constructor(authDir: string) {\n this.rulesPath = join(authDir, \"rules.json\");\n this.auditPath = join(authDir, \"audit.jsonl\");\n mkdirSync(authDir, { recursive: true });\n this.loadRules();\n }\n\n setNotify(fn: NotifyFn): void {\n this.notify = fn;\n }\n\n /** Check if a rule already allows/denies this action. */\n checkRules(category: string, pattern: string): \"allow\" | \"deny\" | null {\n for (const rule of this.rules) {\n if (rule.category !== category) continue;\n if (rule.pattern === \"*\" || rule.pattern === pattern) {\n return rule.action;\n }\n }\n return null;\n }\n\n /**\n * Request authorization for a privileged action.\n * Returns true if granted, false if denied/timed out.\n */\n async requestAuth(category: string, detail: string): Promise<boolean> {\n // Check persistent rules first\n const rule = this.checkRules(category, detail);\n if (rule === \"allow\") {\n this.audit(category, detail, \"allowed-by-rule\");\n return true;\n }\n if (rule === \"deny\") {\n this.audit(category, detail, \"denied-by-rule\");\n return false;\n }\n\n // No rule \u2014 ask master via Telegram\n if (!this.notify) {\n logWarn(TAG, `No notify function \u2014 auto-denying ${category}: ${detail.slice(0, 80)}`);\n this.audit(category, detail, \"denied-no-notify\");\n return false;\n }\n\n const requestId = randomBytes(8).toString(\"hex\");\n const message = this.formatMessage(category, detail);\n\n return new Promise<boolean>((resolve) => {\n const timer = setTimeout(() => {\n this.pending.delete(requestId);\n logWarn(TAG, `Auth request timed out: ${category} ${detail.slice(0, 60)}`);\n this.audit(category, detail, \"denied-timeout\");\n resolve(false);\n }, 120_000);\n\n // 60s reminder\n const reminderTimer = setTimeout(() => {\n const req = this.pending.get(requestId);\n if (req && !req.reminderSent) {\n req.reminderSent = true;\n this.notify?.(\"\u23F3 Still waiting for authorization...\", []).catch(() => {});\n }\n }, 60_000);\n\n this.pending.set(requestId, { id: requestId, category, detail, resolve: (granted) => {\n clearTimeout(timer);\n clearTimeout(reminderTimer);\n this.pending.delete(requestId);\n resolve(granted);\n }, timer, reminderSent: false });\n\n this.notify!(message, [\n { text: \"\u2705 Allow once\", data: `auth:${requestId}:once` },\n { text: \"\uD83D\uDD13 Always allow\", data: `auth:${requestId}:always` },\n { text: \"\u274C Deny\", data: `auth:${requestId}:deny` },\n ]).catch((err) => {\n logError(TAG, `Failed to send auth request: ${err}`);\n clearTimeout(timer);\n clearTimeout(reminderTimer);\n this.pending.delete(requestId);\n this.audit(category, detail, \"denied-send-failed\");\n resolve(false);\n });\n });\n }\n\n /** Handle callback from Telegram button press. */\n handleCallback(data: string): boolean {\n const match = data.match(/^auth:([a-f0-9]+):(once|always|deny)$/);\n if (!match) return false;\n\n const [, requestId, action] = match;\n const req = this.pending.get(requestId!);\n if (!req) return false;\n\n if (action === \"once\") {\n this.audit(req.category, req.detail, \"allowed-once\");\n req.resolve(true);\n } else if (action === \"always\") {\n this.storeRule(req.category, req.detail, \"allow\");\n this.audit(req.category, req.detail, \"allowed-always\");\n req.resolve(true);\n } else {\n this.audit(req.category, req.detail, \"denied\");\n req.resolve(false);\n }\n return true;\n }\n\n /** Generate a one-use token for external CLI callers. */\n generateToken(category: string, pattern: string): string {\n const id = randomBytes(16).toString(\"hex\");\n this.tokens.set(id, {\n id,\n category,\n pattern,\n expiresAt: Date.now() + 120_000,\n consumed: false,\n });\n return id;\n }\n\n /** Validate and consume a token. */\n validateToken(tokenId: string): boolean {\n const token = this.tokens.get(tokenId);\n if (!token) return false;\n if (token.consumed || Date.now() > token.expiresAt) {\n this.tokens.delete(tokenId);\n return false;\n }\n token.consumed = true;\n this.tokens.delete(tokenId);\n return true;\n }\n\n private storeRule(category: string, pattern: string, action: \"allow\" | \"deny\"): void {\n this.rules.push({ category, pattern, action, createdAt: new Date().toISOString() });\n writeFileSync(this.rulesPath, JSON.stringify({ rules: this.rules }, null, 2) + \"\\n\");\n logInfo(TAG, `Stored rule: ${action} ${category}:${pattern}`);\n }\n\n private loadRules(): void {\n if (!existsSync(this.rulesPath)) { this.rules = []; return; }\n try {\n const data = JSON.parse(readFileSync(this.rulesPath, \"utf-8\"));\n this.rules = data.rules ?? [];\n } catch { this.rules = []; }\n }\n\n private audit(category: string, detail: string, outcome: string): void {\n const entry = JSON.stringify({ ts: new Date().toISOString(), category, detail: detail.slice(0, 200), outcome });\n try { appendFileSync(this.auditPath, entry + \"\\n\"); } catch { /* best effort */ }\n }\n\n private formatMessage(category: string, detail: string): string {\n switch (category) {\n case \"secret-recall\": return `\uD83D\uDD10 Agent wants SECRET memory:\\n\"${detail.slice(0, 100)}\"\\n\\nAuthorize?`;\n case \"bash-auth\": return `\u26A0\uFE0F Agent wants to run:\\n\\`${detail.slice(0, 200)}\\`\\n\\nAuthorize?`;\n default: return `\uD83D\uDD12 Agent requests: ${category}\\n${detail.slice(0, 150)}\\n\\nAuthorize?`;\n }\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;AAQA;AAHA,SAAS,mBAAmB;AAC5B,SAAS,cAAc,eAAe,WAAW,gBAAgB,kBAAkB;AACnF,SAAS,YAAY;AAGrB,IAAM,MAAM;AA4BL,IAAM,aAAN,MAAiB;AAAA,EACd,SAAS,oBAAI,IAAuB;AAAA,EACpC,UAAU,oBAAI,IAAyB;AAAA,EACvC,QAAoB,CAAC;AAAA,EACrB;AAAA,EACA;AAAA,EACA,SAA0B;AAAA,EAElC,YAAY,SAAiB;AAC3B,SAAK,YAAY,KAAK,SAAS,YAAY;AAC3C,SAAK,YAAY,KAAK,SAAS,aAAa;AAC5C,cAAU,SAAS,EAAE,WAAW,KAAK,CAAC;AACtC,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,UAAU,IAAoB;AAC5B,SAAK,SAAS;AAAA,EAChB;AAAA;AAAA,EAGA,WAAW,UAAkB,SAA0C;AACrE,eAAW,QAAQ,KAAK,OAAO;AAC7B,UAAI,KAAK,aAAa,SAAU;AAChC,UAAI,KAAK,YAAY,OAAO,KAAK,YAAY,SAAS;AACpD,eAAO,KAAK;AAAA,MACd;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,YAAY,UAAkB,QAAkC;AAEpE,UAAM,OAAO,KAAK,WAAW,UAAU,MAAM;AAC7C,QAAI,SAAS,SAAS;AACpB,WAAK,MAAM,UAAU,QAAQ,iBAAiB;AAC9C,aAAO;AAAA,IACT;AACA,QAAI,SAAS,QAAQ;AACnB,WAAK,MAAM,UAAU,QAAQ,gBAAgB;AAC7C,aAAO;AAAA,IACT;AAGA,QAAI,CAAC,KAAK,QAAQ;AAChB,cAAQ,KAAK,0CAAqC,QAAQ,KAAK,OAAO,MAAM,GAAG,EAAE,CAAC,EAAE;AACpF,WAAK,MAAM,UAAU,QAAQ,kBAAkB;AAC/C,aAAO;AAAA,IACT;AAEA,UAAM,YAAY,YAAY,CAAC,EAAE,SAAS,KAAK;AAC/C,UAAM,UAAU,KAAK,cAAc,UAAU,MAAM;AAEnD,WAAO,IAAI,QAAiB,CAAC,YAAY;AACvC,YAAM,QAAQ,WAAW,MAAM;AAC7B,aAAK,QAAQ,OAAO,SAAS;AAC7B,gBAAQ,KAAK,2BAA2B,QAAQ,IAAI,OAAO,MAAM,GAAG,EAAE,CAAC,EAAE;AACzE,aAAK,MAAM,UAAU,QAAQ,gBAAgB;AAC7C,gBAAQ,KAAK;AAAA,MACf,GAAG,IAAO;AAGV,YAAM,gBAAgB,WAAW,MAAM;AACrC,cAAM,MAAM,KAAK,QAAQ,IAAI,SAAS;AACtC,YAAI,OAAO,CAAC,IAAI,cAAc;AAC5B,cAAI,eAAe;AACnB,eAAK,SAAS,6CAAwC,CAAC,CAAC,EAAE,MAAM,MAAM;AAAA,UAAC,CAAC;AAAA,QAC1E;AAAA,MACF,GAAG,GAAM;AAET,WAAK,QAAQ,IAAI,WAAW,EAAE,IAAI,WAAW,UAAU,QAAQ,SAAS,CAAC,YAAY;AACnF,qBAAa,KAAK;AAClB,qBAAa,aAAa;AAC1B,aAAK,QAAQ,OAAO,SAAS;AAC7B,gBAAQ,OAAO;AAAA,MACjB,GAAG,OAAO,cAAc,MAAM,CAAC;AAE/B,WAAK,OAAQ,SAAS;AAAA,QACpB,EAAE,MAAM,qBAAgB,MAAM,QAAQ,SAAS,QAAQ;AAAA,QACvD,EAAE,MAAM,0BAAmB,MAAM,QAAQ,SAAS,UAAU;AAAA,QAC5D,EAAE,MAAM,eAAU,MAAM,QAAQ,SAAS,QAAQ;AAAA,MACnD,CAAC,EAAE,MAAM,CAAC,QAAQ;AAChB,iBAAS,KAAK,gCAAgC,GAAG,EAAE;AACnD,qBAAa,KAAK;AAClB,qBAAa,aAAa;AAC1B,aAAK,QAAQ,OAAO,SAAS;AAC7B,aAAK,MAAM,UAAU,QAAQ,oBAAoB;AACjD,gBAAQ,KAAK;AAAA,MACf,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAAA;AAAA,EAGA,eAAe,MAAuB;AACpC,UAAM,QAAQ,KAAK,MAAM,uCAAuC;AAChE,QAAI,CAAC,MAAO,QAAO;AAEnB,UAAM,CAAC,EAAE,WAAW,MAAM,IAAI;AAC9B,UAAM,MAAM,KAAK,QAAQ,IAAI,SAAU;AACvC,QAAI,CAAC,IAAK,QAAO;AAEjB,QAAI,WAAW,QAAQ;AACrB,WAAK,MAAM,IAAI,UAAU,IAAI,QAAQ,cAAc;AACnD,UAAI,QAAQ,IAAI;AAAA,IAClB,WAAW,WAAW,UAAU;AAC9B,WAAK,UAAU,IAAI,UAAU,IAAI,QAAQ,OAAO;AAChD,WAAK,MAAM,IAAI,UAAU,IAAI,QAAQ,gBAAgB;AACrD,UAAI,QAAQ,IAAI;AAAA,IAClB,OAAO;AACL,WAAK,MAAM,IAAI,UAAU,IAAI,QAAQ,QAAQ;AAC7C,UAAI,QAAQ,KAAK;AAAA,IACnB;AACA,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,cAAc,UAAkB,SAAyB;AACvD,UAAM,KAAK,YAAY,EAAE,EAAE,SAAS,KAAK;AACzC,SAAK,OAAO,IAAI,IAAI;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,KAAK,IAAI,IAAI;AAAA,MACxB,UAAU;AAAA,IACZ,CAAC;AACD,WAAO;AAAA,EACT;AAAA;AAAA,EAGA,cAAc,SAA0B;AACtC,UAAM,QAAQ,KAAK,OAAO,IAAI,OAAO;AACrC,QAAI,CAAC,MAAO,QAAO;AACnB,QAAI,MAAM,YAAY,KAAK,IAAI,IAAI,MAAM,WAAW;AAClD,WAAK,OAAO,OAAO,OAAO;AAC1B,aAAO;AAAA,IACT;AACA,UAAM,WAAW;AACjB,SAAK,OAAO,OAAO,OAAO;AAC1B,WAAO;AAAA,EACT;AAAA,EAEQ,UAAU,UAAkB,SAAiB,QAAgC;AACnF,SAAK,MAAM,KAAK,EAAE,UAAU,SAAS,QAAQ,YAAW,oBAAI,KAAK,GAAE,YAAY,EAAE,CAAC;AAClF,kBAAc,KAAK,WAAW,KAAK,UAAU,EAAE,OAAO,KAAK,MAAM,GAAG,MAAM,CAAC,IAAI,IAAI;AACnF,YAAQ,KAAK,gBAAgB,MAAM,IAAI,QAAQ,IAAI,OAAO,EAAE;AAAA,EAC9D;AAAA,EAEQ,YAAkB;AACxB,QAAI,CAAC,WAAW,KAAK,SAAS,GAAG;AAAE,WAAK,QAAQ,CAAC;AAAG;AAAA,IAAQ;AAC5D,QAAI;AACF,YAAM,OAAO,KAAK,MAAM,aAAa,KAAK,WAAW,OAAO,CAAC;AAC7D,WAAK,QAAQ,KAAK,SAAS,CAAC;AAAA,IAC9B,QAAQ;AAAE,WAAK,QAAQ,CAAC;AAAA,IAAG;AAAA,EAC7B;AAAA,EAEQ,MAAM,UAAkB,QAAgB,SAAuB;AACrE,UAAM,QAAQ,KAAK,UAAU,EAAE,KAAI,oBAAI,KAAK,GAAE,YAAY,GAAG,UAAU,QAAQ,OAAO,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC;AAC9G,QAAI;AAAE,qBAAe,KAAK,WAAW,QAAQ,IAAI;AAAA,IAAG,QAAQ;AAAA,IAAoB;AAAA,EAClF;AAAA,EAEQ,cAAc,UAAkB,QAAwB;AAC9D,YAAQ,UAAU;AAAA,MAChB,KAAK;AAAiB,eAAO;AAAA,GAAmC,OAAO,MAAM,GAAG,GAAG,CAAC;AAAA;AAAA;AAAA,MACpF,KAAK;AAAa,eAAO;AAAA,IAA6B,OAAO,MAAM,GAAG,GAAG,CAAC;AAAA;AAAA;AAAA,MAC1E;AAAS,eAAO,6BAAsB,QAAQ;AAAA,EAAK,OAAO,MAAM,GAAG,GAAG,CAAC;AAAA;AAAA;AAAA,IACzE;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }
@@ -3,9 +3,9 @@
3
3
  import {
4
4
  getEnv,
5
5
  init_env_schema
6
- } from "./chunk-PZE3J7ER.js";
7
- import "./chunk-2BY6I4P5.js";
8
- import "./chunk-MJ6PHMOK.js";
6
+ } from "./chunk-3OXQWII3.js";
7
+ import "./chunk-GUTRAMK3.js";
8
+ import "./chunk-WW5F2DCO.js";
9
9
  import "./chunk-7K2YZTLD.js";
10
10
 
11
11
  // src/components/agent-api-rate-limit.ts
@@ -36,4 +36,4 @@ function checkRateLimit(caller) {
36
36
  export {
37
37
  checkRateLimit
38
38
  };
39
- //# sourceMappingURL=agent-api-rate-limit-C25WGSFF.js.map
39
+ //# sourceMappingURL=agent-api-rate-limit-R2OFAQ3N.js.map
@@ -3,17 +3,17 @@
3
3
  import {
4
4
  createAgentTransport,
5
5
  createSubagentTransport
6
- } from "./chunk-ZVDVNSXK.js";
7
- import "./chunk-RV54J75Q.js";
8
- import "./chunk-UDZIZB5F.js";
6
+ } from "./chunk-HAS5NEK7.js";
7
+ import "./chunk-PKHYCNTT.js";
8
+ import "./chunk-RTL7HO3N.js";
9
9
  import "./chunk-MZWMYN4O.js";
10
- import "./chunk-EX2SRTUE.js";
11
- import "./chunk-PZE3J7ER.js";
12
- import "./chunk-2BY6I4P5.js";
13
- import "./chunk-MJ6PHMOK.js";
10
+ import "./chunk-3OXQWII3.js";
11
+ import "./chunk-CYSGXNBY.js";
12
+ import "./chunk-GUTRAMK3.js";
13
+ import "./chunk-WW5F2DCO.js";
14
14
  import "./chunk-7K2YZTLD.js";
15
15
  export {
16
16
  createAgentTransport,
17
17
  createSubagentTransport
18
18
  };
19
- //# sourceMappingURL=agent-registry-SYUFNSVB.js.map
19
+ //# sourceMappingURL=agent-registry-5VL5KI6U.js.map
@@ -0,0 +1,19 @@
1
+ #!/usr/bin/env node
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
+ createAgentTransport,
5
+ createSubagentTransport
6
+ } from "./chunk-7WFE2JI5.js";
7
+ import "./chunk-PKHYCNTT.js";
8
+ import "./chunk-RTL7HO3N.js";
9
+ import "./chunk-MZWMYN4O.js";
10
+ import "./chunk-3OXQWII3.js";
11
+ import "./chunk-CYSGXNBY.js";
12
+ import "./chunk-GUTRAMK3.js";
13
+ import "./chunk-WW5F2DCO.js";
14
+ import "./chunk-7K2YZTLD.js";
15
+ export {
16
+ createAgentTransport,
17
+ createSubagentTransport
18
+ };
19
+ //# sourceMappingURL=agent-registry-PIS5XJHX.js.map
@@ -15,11 +15,11 @@ import {
15
15
  writeRestartReason,
16
16
  writeRestartRequested,
17
17
  writeSleepStatus
18
- } from "./chunk-UDZIZB5F.js";
18
+ } from "./chunk-RTL7HO3N.js";
19
19
  import "./chunk-MZWMYN4O.js";
20
- import "./chunk-EX2SRTUE.js";
21
- import "./chunk-2BY6I4P5.js";
22
- import "./chunk-MJ6PHMOK.js";
20
+ import "./chunk-CYSGXNBY.js";
21
+ import "./chunk-GUTRAMK3.js";
22
+ import "./chunk-WW5F2DCO.js";
23
23
  import "./chunk-7K2YZTLD.js";
24
24
  export {
25
25
  appendRestartTimestamp,
@@ -37,4 +37,4 @@ export {
37
37
  writeRestartRequested,
38
38
  writeSleepStatus
39
39
  };
40
- //# sourceMappingURL=bridge-lock-transport-HO545SBK.js.map
40
+ //# sourceMappingURL=bridge-lock-transport-N6OGDOSE.js.map
@@ -3,16 +3,17 @@
3
3
  import {
4
4
  checkBrowseTasks,
5
5
  deliverBrowseResult
6
- } from "./chunk-LDKSCXGL.js";
7
- import "./chunk-HEHD3GG5.js";
6
+ } from "./chunk-DHPFI7OF.js";
7
+ import "./chunk-ITB2K6LI.js";
8
8
  import "./chunk-TBLYGCPQ.js";
9
- import "./chunk-GPL57SRN.js";
10
- import "./chunk-EX2SRTUE.js";
11
- import "./chunk-2BY6I4P5.js";
12
- import "./chunk-MJ6PHMOK.js";
9
+ import "./chunk-H7RX7UCR.js";
10
+ import "./chunk-CYSGXNBY.js";
11
+ import "./chunk-GUTRAMK3.js";
12
+ import "./chunk-DGS7J4P6.js";
13
+ import "./chunk-WW5F2DCO.js";
13
14
  import "./chunk-7K2YZTLD.js";
14
15
  export {
15
16
  checkBrowseTasks,
16
17
  deliverBrowseResult
17
18
  };
18
- //# sourceMappingURL=browse-delivery-VTLEAVYA.js.map
19
+ //# sourceMappingURL=browse-delivery-DXGMDMXA.js.map
@@ -2,18 +2,19 @@
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
  register
5
- } from "./chunk-KJOCXWJ5.js";
6
- import "./chunk-LDKSCXGL.js";
7
- import "./chunk-HEHD3GG5.js";
5
+ } from "./chunk-RITEGAW6.js";
6
+ import "./chunk-DHPFI7OF.js";
7
+ import "./chunk-ITB2K6LI.js";
8
8
  import "./chunk-TBLYGCPQ.js";
9
- import "./chunk-GPL57SRN.js";
10
- import "./chunk-KSEIWT4T.js";
11
- import "./chunk-EX2SRTUE.js";
12
- import "./chunk-PZE3J7ER.js";
13
- import "./chunk-2BY6I4P5.js";
14
- import "./chunk-MJ6PHMOK.js";
9
+ import "./chunk-H7RX7UCR.js";
10
+ import "./chunk-JFKOPNKL.js";
11
+ import "./chunk-3OXQWII3.js";
12
+ import "./chunk-CYSGXNBY.js";
13
+ import "./chunk-GUTRAMK3.js";
14
+ import "./chunk-DGS7J4P6.js";
15
+ import "./chunk-WW5F2DCO.js";
15
16
  import "./chunk-7K2YZTLD.js";
16
17
  export {
17
18
  register
18
19
  };
19
- //# sourceMappingURL=browser-REIXOJ6S.js.map
20
+ //# sourceMappingURL=browser-QMYGSP5W.js.map
@@ -4,15 +4,15 @@ import {
4
4
  createCapabilityApi,
5
5
  createCapabilityRegistry,
6
6
  discoverCapabilities
7
- } from "./chunk-OOKLEC6V.js";
8
- import "./chunk-EX2SRTUE.js";
9
- import "./chunk-PZE3J7ER.js";
10
- import "./chunk-2BY6I4P5.js";
11
- import "./chunk-MJ6PHMOK.js";
7
+ } from "./chunk-FY3QUO2L.js";
8
+ import "./chunk-3OXQWII3.js";
9
+ import "./chunk-CYSGXNBY.js";
10
+ import "./chunk-GUTRAMK3.js";
11
+ import "./chunk-WW5F2DCO.js";
12
12
  import "./chunk-7K2YZTLD.js";
13
13
  export {
14
14
  createCapabilityApi,
15
15
  createCapabilityRegistry,
16
16
  discoverCapabilities
17
17
  };
18
- //# sourceMappingURL=capability-ILW3D5HS.js.map
18
+ //# sourceMappingURL=capability-733TLH4W.js.map