@symerian/symi 2.8.14 → 2.8.15

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 (281) hide show
  1. package/dist/{accounts-wWWkC0JH.js → accounts-3dCrO3oZ.js} +1 -1
  2. package/dist/{accounts-BsgY6sda.js → accounts-BRw8yhIW.js} +21 -21
  3. package/dist/{accounts-Bsg6r6H7.js → accounts-BuZxOb3B.js} +1 -1
  4. package/dist/{acp-cli-D7uCUCr8.js → acp-cli-BgR7mxTS.js} +2 -2
  5. package/dist/{acp-cli-CAU8UW9I.js → acp-cli-D1JYg9c1.js} +2 -2
  6. package/dist/{active-listener-AVNn5_U9.js → active-listener-BVZOh2T1.js} +1 -1
  7. package/dist/{agent-scope-Cpm7a9ss.js → agent-scope-CpEJ0B88.js} +3 -3
  8. package/dist/{agents-DlAvDWxz.js → agents-BhhAcFrX.js} +5 -5
  9. package/dist/{agents.config-BKKMbeeE.js → agents.config-BOvsz6E6.js} +1 -1
  10. package/dist/{agents.config-Dd-11klq.js → agents.config-D967tgmP.js} +1 -1
  11. package/dist/{audio-preflight-rrz8KyHd.js → audio-preflight-Cb-T0r6e.js} +29 -29
  12. package/dist/{audio-preflight-C6vpFnOG.js → audio-preflight-NdNUAZ0y.js} +4 -4
  13. package/dist/{audit-CB97BqHJ.js → audit-Dr_8rC6G.js} +2 -2
  14. package/dist/{audit-BhCJV2l6.js → audit-xiwEIT96.js} +2 -2
  15. package/dist/{auth-choice-C6woT6k2.js → auth-choice-DEKKbufH.js} +2 -2
  16. package/dist/{auth-choice-CRQRPwQt.js → auth-choice-Pzy-t2mh.js} +2 -2
  17. package/dist/{auth-profiles-BzB_Exeq.js → auth-profiles-C2vj6htZ.js} +17 -17
  18. package/dist/{banner-DrNha2_N.js → banner-CiHQEfyr.js} +1 -1
  19. package/dist/{bindings-xcRox9xM.js → bindings-BsHoBLIE.js} +2 -2
  20. package/dist/{browser-cli-5ME9iiC3.js → browser-cli-BQeCPbES.js} +3 -3
  21. package/dist/{browser-cli-BTci35qB.js → browser-cli-IXepRCZR.js} +3 -3
  22. package/dist/build-info.json +3 -3
  23. package/dist/bundled/boot-md/handler.js +54 -54
  24. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  25. package/dist/bundled/command-logger/handler.js +1 -1
  26. package/dist/bundled/session-memory/handler.js +54 -54
  27. package/dist/{call-Cmb04dff.js → call-BkJK3eYP.js} +2 -1
  28. package/dist/{call-BrRWr7Lj.js → call-CAGvQYXj.js} +2 -1
  29. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  30. package/dist/{channel-activity-CzHaIUAp.js → channel-activity-D8QD7GoV.js} +1 -1
  31. package/dist/{channel-options-D8q9En4T.js → channel-options-DGuilErd.js} +1 -1
  32. package/dist/{channel-options-DYy2sCfN.js → channel-options-_erlRi2w.js} +1 -1
  33. package/dist/{channel-web-CRBU4eZk.js → channel-web-DwfovJKQ.js} +1 -1
  34. package/dist/{channels-cli-Dk3kUw9A.js → channels-cli-B2Zf1oz9.js} +9 -9
  35. package/dist/{channels-cli-BUk43hHR.js → channels-cli-DUsK2bXE.js} +9 -9
  36. package/dist/{chrome-DwXnykXR.js → chrome-BUT--ob3.js} +23 -23
  37. package/dist/{chrome-B14NNyfm.js → chrome-ROtrXlNs.js} +5 -5
  38. package/dist/{chunk-BcxcL1U3.js → chunk-BRe1o4Af.js} +1 -1
  39. package/dist/cli/daemon-cli.js +1 -1
  40. package/dist/{cli-5gWsnsB7.js → cli-BpmyiZc9.js} +6 -6
  41. package/dist/{cli-DjZzJy3t.js → cli-DUiSlxsb.js} +6 -6
  42. package/dist/{client-C7AOOnKZ.js → client-CYsBIR3j.js} +27 -1
  43. package/dist/{client-qUlxXXVJ.js → client-Cmq13-uF.js} +27 -1
  44. package/dist/{command-registry-LjFltTU9.js → command-registry-B8LVEWW9.js} +11 -11
  45. package/dist/{commands-registry-ByGkL6hs.js → commands-registry-DxbSTLNQ.js} +4 -4
  46. package/dist/{completion-cli-BVTGy8th.js → completion-cli-D-_MV8eA.js} +1 -1
  47. package/dist/{completion-cli-Cf6fYZWL.js → completion-cli-DZeK6_ev.js} +2 -2
  48. package/dist/{config-C4WnAd-c.js → config-BkZ9HOKT.js} +17 -17
  49. package/dist/{config-cli-C7DIbGxx.js → config-cli-B7ZvHIMY.js} +1 -1
  50. package/dist/{config-cli-EgWrCemi.js → config-cli-D_m0QL6c.js} +1 -1
  51. package/dist/{configure-B67uIawm.js → configure-DFg-N_i2.js} +6 -6
  52. package/dist/{configure-Bk-snuxh.js → configure-DXml-xDR.js} +6 -6
  53. package/dist/{consolidate-DRtVvG2U.js → consolidate-07QMweFF.js} +4 -4
  54. package/dist/control-ui/index.html +7 -0
  55. package/dist/control-ui/js/menu.js +2 -0
  56. package/dist/control-ui/js/settings.js +1 -0
  57. package/dist/{cron-cli-CGJveo7P.js → cron-cli-CZCm3aLt.js} +3 -3
  58. package/dist/{cron-cli-Crh_r2aK.js → cron-cli-Dq2FEfK1.js} +3 -3
  59. package/dist/{daemon-cli-Cq-IaYw4.js → daemon-cli-B2_uIgDM.js} +2 -2
  60. package/dist/{daemon-cli-CAIg9sMo.js → daemon-cli-CweMes2K.js} +2 -2
  61. package/dist/daemon-cli.js +27 -0
  62. package/dist/{deliver-SLYAWE19.js → deliver-B0OUq6RP.js} +20 -20
  63. package/dist/{deliver-D0bWiRCg.js → deliver-B_Q_nWJV.js} +1 -1
  64. package/dist/{devices-cli-CUT_8CuJ.js → devices-cli-3ui-Wcaj.js} +2 -2
  65. package/dist/{devices-cli-hSn5vjJZ.js → devices-cli-DeoPyzAd.js} +2 -2
  66. package/dist/{diagnostic-DTkZsRNM.js → diagnostic-BUcR3Meg.js} +1 -1
  67. package/dist/{doctor-completion-lE_33xaY.js → doctor-completion-CQXl3jf4.js} +1 -1
  68. package/dist/{doctor-completion-By066O3p.js → doctor-completion-Cu7DwgVw.js} +1 -1
  69. package/dist/entry.js +1 -1
  70. package/dist/{env-CB65jmJQ.js → env-BDXYbTKj.js} +1 -1
  71. package/dist/{exec-approvals-cli-BTfZiH6z.js → exec-approvals-cli-Bx9loYnQ.js} +4 -4
  72. package/dist/{exec-approvals-cli-DTad2Zi_.js → exec-approvals-cli-CTEn_Eu_.js} +4 -4
  73. package/dist/extensionAPI.js +7 -7
  74. package/dist/{frontmatter-CT1M0pRK.js → frontmatter-CTR5f_Ez.js} +4 -4
  75. package/dist/{gateway-cli-DqEgqVKC.js → gateway-cli-B2XchN3Y.js} +34 -16
  76. package/dist/{gateway-cli-C6uT2x34.js → gateway-cli-P0olUhID.js} +34 -16
  77. package/dist/{gateway-rpc-BKJyAcQd.js → gateway-rpc-DbSbyIcL.js} +1 -1
  78. package/dist/{gateway-rpc-DActF8Qj.js → gateway-rpc-QsFn5Zr1.js} +1 -1
  79. package/dist/{gemini-auth-D80BsXr2.js → gemini-auth-BefM10YB.js} +1 -1
  80. package/dist/{github-copilot-token-B8B2pmph.js → github-copilot-token-cCYzSU9h.js} +7 -7
  81. package/dist/{glass-ui-ws-77TY57IO.js → glass-ui-ws-Cs2jfN42.js} +13 -13
  82. package/dist/{glass-ui-ws-CLAUHeZR.js → glass-ui-ws-tIVOcdB2.js} +13 -13
  83. package/dist/{health-CvMHgR-L.js → health-Cs8wf7Hb.js} +2 -2
  84. package/dist/{health-2jkjZxY8.js → health-DMy1nA4K.js} +2 -2
  85. package/dist/{hooks-cli-CRZySOiz.js → hooks-cli-D6awUCDl.js} +7 -7
  86. package/dist/{hooks-cli-DSaezFsD.js → hooks-cli-DIH-zxCG.js} +7 -7
  87. package/dist/{image-BHF_fnIp.js → image-BuVL0jHI.js} +4 -4
  88. package/dist/{image-ops-CY7v6vvp.js → image-ops-C7CauEK8.js} +16 -16
  89. package/dist/{image-MNvheU8U.js → image-tzIqIuKx.js} +1 -1
  90. package/dist/index.js +11 -11
  91. package/dist/{internal-FNqguZSK.js → internal-DjnxpF_K.js} +11 -11
  92. package/dist/{ir-D6MiJpAy.js → ir-7tMVY7D_.js} +4 -4
  93. package/dist/llm-slug-generator.js +54 -54
  94. package/dist/{local-roots-tcdaIEhh.js → local-roots-ClipCZ9s.js} +5 -5
  95. package/dist/{login-D4ZkmSrY.js → login-D4rZWBXe.js} +7 -7
  96. package/dist/{login-qr-C9ftIq3n.js → login-qr-DdAVHOEC.js} +12 -12
  97. package/dist/{logs-cli-BPnrAg0W.js → logs-cli-1hn28HCu.js} +3 -3
  98. package/dist/{logs-cli-DiDesnnp.js → logs-cli-R4WwQvR2.js} +3 -3
  99. package/dist/{manager-DDELj5o9.js → manager-B60Ncruq.js} +1 -1
  100. package/dist/{manager-BtWtmpxN.js → manager-B76ofKkW.js} +1 -1
  101. package/dist/{manager-DxCmjSfP.js → manager-D0_H4LHh.js} +24 -24
  102. package/dist/{manager-DrmlegR2.js → manager-wF-n_prX.js} +1 -1
  103. package/dist/{manifest-registry-BvGv6lp9.js → manifest-registry-CBCGTsIb.js} +19 -19
  104. package/dist/{markdown-tables-CE-qSMGB.js → markdown-tables-x2Xe2UXh.js} +1 -1
  105. package/dist/{memory-cli-ENCASZJk.js → memory-cli-DRLrIa8h.js} +3 -3
  106. package/dist/{memory-cli-Qgbcxvuf.js → memory-cli-eSWCbEiS.js} +3 -3
  107. package/dist/{message-channel-lwVT8QjK.js → message-channel-OlFBYAw8.js} +1 -1
  108. package/dist/{models-COhUz7M9.js → models-B5H41UsH.js} +3 -3
  109. package/dist/{models-cli-CYvXBvmZ.js → models-cli-CHFi2_kC.js} +8 -8
  110. package/dist/{models-cli-CCxYcF4R.js → models-cli-CVfq_g6h.js} +7 -7
  111. package/dist/{node-cli-DwDQpTW5.js → node-cli-BBN6PoOG.js} +1 -1
  112. package/dist/{node-cli-DEcCM2p0.js → node-cli-BsAzTrAx.js} +1 -1
  113. package/dist/{nodes-cli-CqBLemeB.js → nodes-cli-DE60dv81.js} +3 -3
  114. package/dist/{nodes-cli-u8k6TPmF.js → nodes-cli-t3azniiS.js} +3 -3
  115. package/dist/{onboard-fVpLVnwg.js → onboard-DKK6UJjF.js} +3 -3
  116. package/dist/{onboard-CQNUYBIp.js → onboard-DgPzeL3U.js} +3 -3
  117. package/dist/{onboard-channels-CWw8G-6n.js → onboard-channels-BTuYOQO-.js} +1 -1
  118. package/dist/{onboard-channels-9erx07qe.js → onboard-channels-DvNwlvWZ.js} +1 -1
  119. package/dist/{onboard-helpers-C8f_xi6R.js → onboard-helpers-B7jBYbCU.js} +1 -1
  120. package/dist/{onboard-helpers-CF0Cp3OB.js → onboard-helpers-DjlGq6iG.js} +1 -1
  121. package/dist/{onboard-remote-DgGH0dTe.js → onboard-remote-CXuHbtrT.js} +1 -1
  122. package/dist/{onboard-remote-CWal5_aZ.js → onboard-remote-D7wGqONm.js} +1 -1
  123. package/dist/{onboard-skills-DnzJLU2H.js → onboard-skills-BDhqz3te.js} +1 -1
  124. package/dist/{onboard-skills-CO2TjuO3.js → onboard-skills-ChQnpMi-.js} +1 -1
  125. package/dist/{onboarding-D-OIkDwZ.js → onboarding-CCHq8fd9.js} +7 -7
  126. package/dist/{onboarding-CtEiH9WG.js → onboarding-CeqXuQPm.js} +7 -7
  127. package/dist/{onboarding.finalize-BY3HNjX4.js → onboarding.finalize-Cw4TWelq.js} +12 -12
  128. package/dist/{onboarding.finalize-DTbpLV-T.js → onboarding.finalize-DxWVkNx9.js} +11 -11
  129. package/dist/{onboarding.gateway-config-DlV0vso8.js → onboarding.gateway-config-Cm5jIfRz.js} +3 -3
  130. package/dist/{onboarding.gateway-config-D4rQoPRi.js → onboarding.gateway-config-wAyLcGRu.js} +3 -3
  131. package/dist/{outbound-C6Gm22UF.js → outbound-Zmd7UyQH.js} +7 -7
  132. package/dist/{outbound-attachment-BWyKV1Gy.js → outbound-attachment-DeCnZT-8.js} +2 -2
  133. package/dist/{paths-DEuVuViW.js → paths-CbQV9WEg.js} +1 -1
  134. package/dist/{pi-auth-json-Bv1NzJdR.js → pi-auth-json-RXOlh8ar.js} +1 -1
  135. package/dist/{pi-embedded-CdOdQw2i.js → pi-embedded-CGwqumSe.js} +163 -89
  136. package/dist/{pi-embedded-helpers-DwQ9wJeT.js → pi-embedded-helpers-D1_Sab0M.js} +73 -73
  137. package/dist/{pi-embedded-helpers-TcYQOZAY.js → pi-embedded-helpers-DjSdA5BG.js} +4 -4
  138. package/dist/{plugin-registry-BrJ0-qlu.js → plugin-registry-CJKHlm9W.js} +1 -1
  139. package/dist/{plugin-registry-Cuc8ORuR.js → plugin-registry-kiYkB_km.js} +1 -1
  140. package/dist/plugin-sdk/{channel-web-t8UOP6Zu.js → channel-web-C9SUmtjL.js} +1 -1
  141. package/dist/plugin-sdk/gateway/protocol/index.d.ts +6 -3
  142. package/dist/plugin-sdk/gateway/protocol/schema/tasks.d.ts +40 -0
  143. package/dist/plugin-sdk/gateway/protocol/schema/types.d.ts +3 -0
  144. package/dist/plugin-sdk/gateway/protocol/schema.d.ts +1 -0
  145. package/dist/plugin-sdk/index.js +3 -3
  146. package/dist/plugin-sdk/infra/long-task-state.d.ts +34 -0
  147. package/dist/plugin-sdk/{manager-BPm5oefC.js → manager-DUmxOoHb.js} +1 -1
  148. package/dist/plugin-sdk/{reply-BKAHTugL.js → reply-DwJ-3Et9.js} +149 -75
  149. package/dist/plugin-sdk/{synthesis-CVF7Fwhd.js → synthesis-BzYtaV97.js} +2 -2
  150. package/dist/plugin-sdk/{web-D0DsmFvw.js → web-BQzPfsd0.js} +3 -3
  151. package/dist/{plugins-v8k1XVOy.js → plugins-BzmbgY7s.js} +9 -9
  152. package/dist/{plugins-cli-BDalhI46.js → plugins-cli-DTI2yj-y.js} +7 -7
  153. package/dist/{plugins-cli-DFmriy-c.js → plugins-cli-tV4C5XJc.js} +7 -7
  154. package/dist/{program-DKh41c2a.js → program-8Zg4CY5d.js} +12 -12
  155. package/dist/{program-context-Cq7pqOrw.js → program-context-BcKgBBit.js} +30 -30
  156. package/dist/{prompt-select-styled-DvvSE_ni.js → prompt-select-styled-CfKZlGfF.js} +8 -8
  157. package/dist/{prompt-select-styled-BFCAZLwK.js → prompt-select-styled-DigPcXuk.js} +8 -8
  158. package/dist/{provider-auth-helpers-B-LkDxxi.js → provider-auth-helpers-BH3oyYln.js} +1 -1
  159. package/dist/{provider-auth-helpers-DXppgV1l.js → provider-auth-helpers-Db02DMW2.js} +1 -1
  160. package/dist/{push-apns-DvudhEAb.js → push-apns-7rC1ybp8.js} +1 -1
  161. package/dist/{push-apns-DCA47WA5.js → push-apns-f_6DGP6z.js} +1 -1
  162. package/dist/{pw-ai-40Jf9QIb.js → pw-ai-CQtaPvM8.js} +1 -1
  163. package/dist/{pw-ai-XGqnSWju.js → pw-ai-DWkC5eGA.js} +11 -11
  164. package/dist/{qmd-manager-CbRJhonG.js → qmd-manager-BXkbA8Y9.js} +8 -8
  165. package/dist/{register.agent-_BV5KyFb.js → register.agent-CocfT8Pk.js} +11 -11
  166. package/dist/{register.agent-aFj_SMi3.js → register.agent-DETyFsMT.js} +10 -10
  167. package/dist/{register.configure-Dx0Uhmlz.js → register.configure-BAiFzdYa.js} +13 -13
  168. package/dist/{register.configure-CvOoD5gE.js → register.configure-VcTwHq1a.js} +13 -13
  169. package/dist/{register.maintenance-BuZpoSik.js → register.maintenance-BajFgQEm.js} +12 -12
  170. package/dist/{register.maintenance-CMeJR7DG.js → register.maintenance-Bpr3QjJ1.js} +13 -13
  171. package/dist/{register.message-xxGePuRC.js → register.message-96EL0HQW.js} +7 -7
  172. package/dist/{register.message-qysZPg3G.js → register.message-CXabSYfO.js} +7 -7
  173. package/dist/{register.onboard-D4Aow7Gc.js → register.onboard-2KClPynN.js} +9 -9
  174. package/dist/{register.onboard-1MP2I0q4.js → register.onboard-mHEZSai5.js} +9 -9
  175. package/dist/{register.setup-BT74aXzA.js → register.setup-B-piY6Vs.js} +9 -9
  176. package/dist/{register.setup-DzliKkWh.js → register.setup-Di6tWG-W.js} +9 -9
  177. package/dist/{register.status-health-sessions-D7VYZlrU.js → register.status-health-sessions-BhIYRApE.js} +9 -9
  178. package/dist/{register.status-health-sessions-B3K2gZ72.js → register.status-health-sessions-ZX2odxGg.js} +9 -9
  179. package/dist/{register.subclis-BCy0IDRv.js → register.subclis-CQtXpheE.js} +20 -20
  180. package/dist/{registry-X6fUE0K7.js → registry-DYq1AYOv.js} +19 -19
  181. package/dist/{replies-86F3PldM.js → replies-CUWXgyx2.js} +3 -3
  182. package/dist/{reply-Dg1ZU3DZ.js → reply-D455A6SA.js} +125 -78
  183. package/dist/{reply-prefix-CI_IdwqH.js → reply-prefix-CvEIl6_d.js} +1 -1
  184. package/dist/{resolve-route-BgSuN9c6.js → resolve-route-Jy5dFY67.js} +4 -4
  185. package/dist/{retry-4oEAHckB.js → retry-B-y5suGA.js} +1 -1
  186. package/dist/{rpc-DYHXLh0P.js → rpc-C3ZUAjXK.js} +1 -1
  187. package/dist/{rpc-DdlEeEXT.js → rpc-St4eAsjR.js} +1 -1
  188. package/dist/{run-main-OS2aFAJ2.js → run-main-CnqZnevI.js} +20 -20
  189. package/dist/{runner-DFuAePEr.js → runner-Dpjulwnm.js} +1 -1
  190. package/dist/{runner-B5oNTtgf.js → runner-ecX1WzDt.js} +22 -22
  191. package/dist/{security-cli-BadXDWTh.js → security-cli-B8gavsuQ.js} +3 -3
  192. package/dist/{security-cli-D5y28-RH.js → security-cli-BSvxNP9m.js} +3 -3
  193. package/dist/{send-cCTQjuOZ.js → send-BKo1T3HF.js} +6 -6
  194. package/dist/{send-BTfqlrYd.js → send-Bb4it0te.js} +18 -18
  195. package/dist/{send-CSydU49L.js → send-C0QjmPaf.js} +10 -10
  196. package/dist/{send-Du-IfSne.js → send-Cpk3Ti6-.js} +6 -6
  197. package/dist/{send-ASDB3AzC.js → send-DFtnbzqy.js} +7 -7
  198. package/dist/{server-methods-D_iKJ-sj.js → server-methods-CYPSYbhs.js} +55 -11
  199. package/dist/{server-methods-BszFAkbJ.js → server-methods-DYjr-KwQ.js} +55 -11
  200. package/dist/{server-node-events-uBu3XOjd.js → server-node-events-C58gVs27.js} +7 -7
  201. package/dist/{server-node-events-CENHuAVz.js → server-node-events-DqJIrx86.js} +7 -7
  202. package/dist/{session-D8qLj_xN.js → session-BTeY6Gn2.js} +8 -8
  203. package/dist/{skill-commands-BcOduw6G.js → skill-commands-DG2lcozb.js} +16 -16
  204. package/dist/{skills-BrYDT4Jr.js → skills-CXxrn_e2.js} +24 -24
  205. package/dist/{sqlite-P-gMg7fi.js → sqlite-BN_hIcmu.js} +3 -3
  206. package/dist/{status-BvbJavmh.js → status-B_zW9YJ8.js} +1 -1
  207. package/dist/{status-CA0mUJld.js → status-DjjA-TOx.js} +6 -6
  208. package/dist/{status-CBnCPUMG.js → status-Qt6QDFJ1.js} +6 -6
  209. package/dist/{status-DJAeKN4G.js → status-sO6Y-c-v.js} +1 -1
  210. package/dist/{store-Ceagbc4L.js → store-01F_JM7O.js} +6 -6
  211. package/dist/{subagent-registry-C1OyZl-M.js → subagent-registry-B1HJJs3Q.js} +125 -78
  212. package/dist/{subsystem-CzXhCdeY.js → subsystem-BjyjJF-d.js} +1 -1
  213. package/dist/{synthesis-brHrnNF2.js → synthesis-BCSo0xoc.js} +6 -6
  214. package/dist/{synthesis-DuqSkHEr.js → synthesis-Ch82MDG8.js} +54 -54
  215. package/dist/{synthesis-z5B41p_r.js → synthesis-DAUJa_9I.js} +6 -6
  216. package/dist/{synthesis-DNTyB7JY.js → synthesis-DzSo6S9Y.js} +7 -7
  217. package/dist/{system-cli-BFopJ_xI.js → system-cli-BN9MXNk7.js} +3 -3
  218. package/dist/{system-cli-DryauSOX.js → system-cli-CD5latLh.js} +3 -3
  219. package/dist/{tables-qbCoZrYA.js → tables-DoG-pFrf.js} +1 -1
  220. package/dist/{target-errors-uNitqCCT.js → target-errors-DeJTztcq.js} +2 -2
  221. package/dist/{thinking-BV7SCNJP.js → thinking-BprCy23Z.js} +5 -5
  222. package/dist/{tokens-Bl5R3wPD.js → tokens-W0JzCJJM.js} +1 -1
  223. package/dist/{tool-images-JxNglLSr.js → tool-images-SqqWIT22.js} +2 -2
  224. package/dist/{tool-loop-detection-dfE771kg.js → tool-loop-detection-Dj9h1ogr.js} +3 -3
  225. package/dist/{tui-CvHbwJ3G.js → tui-Cu4TZK3I.js} +2 -2
  226. package/dist/{tui-BiBFm_RY.js → tui-DLkE0D7e.js} +2 -2
  227. package/dist/{tui-cli-CmyT9ctV.js → tui-cli-BfuEq3Q-.js} +3 -3
  228. package/dist/{tui-cli-CU6A8Bu2.js → tui-cli-DC9Bq-N_.js} +3 -3
  229. package/dist/{unified-runner-Czg3pdBc.js → unified-runner-CpyVnelK.js} +374 -300
  230. package/dist/{update-cli-CIzkVfmj.js → update-cli-BLQsvLIy.js} +13 -13
  231. package/dist/{update-cli-0lyGyl31.js → update-cli-CgDLDu8d.js} +14 -14
  232. package/dist/{update-runner-D7-LDziQ.js → update-runner-B1vMjo7o.js} +1 -1
  233. package/dist/{update-runner-aYPcKYAN.js → update-runner-DUHTdrZ0.js} +1 -1
  234. package/dist/{web-CN7wnU7w.js → web-Dbg9lDZ4.js} +6 -6
  235. package/dist/{web-BJ5dUZso.js → web-Dhh_eI3q.js} +7 -7
  236. package/dist/{web-B90A99YU.js → web-DpAeT8By.js} +58 -58
  237. package/dist/{web-Wk1ay1eQ.js → web-PhjuzK8Y.js} +7 -7
  238. package/dist/{whatsapp-actions-llk0IUn2.js → whatsapp-actions-DmVpLXmh.js} +23 -23
  239. package/dist/{workspace-CywO4ayZ.js → workspace-DscDraUb.js} +27 -27
  240. package/extensions/bluebubbles/package.json +1 -1
  241. package/extensions/copilot-proxy/package.json +1 -1
  242. package/extensions/diagnostics-otel/package.json +1 -1
  243. package/extensions/discord/package.json +1 -1
  244. package/extensions/feishu/package.json +1 -1
  245. package/extensions/google-antigravity-auth/package.json +1 -1
  246. package/extensions/google-gemini-cli-auth/package.json +1 -1
  247. package/extensions/googlechat/package.json +1 -1
  248. package/extensions/imessage/package.json +1 -1
  249. package/extensions/irc/package.json +1 -1
  250. package/extensions/learning-loop/package.json +1 -1
  251. package/extensions/line/package.json +1 -1
  252. package/extensions/llm-task/package.json +1 -1
  253. package/extensions/matrix/CHANGELOG.md +6 -0
  254. package/extensions/matrix/package.json +1 -1
  255. package/extensions/mattermost/package.json +1 -1
  256. package/extensions/memory-core/package.json +1 -1
  257. package/extensions/memory-lancedb/package.json +1 -1
  258. package/extensions/minimax-portal-auth/package.json +1 -1
  259. package/extensions/msteams/CHANGELOG.md +6 -0
  260. package/extensions/msteams/package.json +1 -1
  261. package/extensions/nextcloud-talk/package.json +1 -1
  262. package/extensions/nostr/CHANGELOG.md +6 -0
  263. package/extensions/nostr/package.json +1 -1
  264. package/extensions/open-prose/package.json +1 -1
  265. package/extensions/outlook/package.json +1 -1
  266. package/extensions/pipeline/package.json +1 -1
  267. package/extensions/signal/package.json +1 -1
  268. package/extensions/slack/package.json +1 -1
  269. package/extensions/telegram/package.json +1 -1
  270. package/extensions/tlon/package.json +1 -1
  271. package/extensions/twitch/CHANGELOG.md +6 -0
  272. package/extensions/twitch/package.json +1 -1
  273. package/extensions/voice-call/CHANGELOG.md +6 -0
  274. package/extensions/voice-call/package.json +1 -1
  275. package/extensions/whatsapp/package.json +1 -1
  276. package/extensions/zalo/CHANGELOG.md +6 -0
  277. package/extensions/zalo/package.json +1 -1
  278. package/extensions/zalouser/CHANGELOG.md +6 -0
  279. package/extensions/zalouser/package.json +1 -1
  280. package/package.json +1 -1
  281. package/dist/paths-CYmyCDsE.js +0 -212
@@ -1,7 +1,7 @@
1
1
  import { g as resolveStateDir, t as CONFIG_PATH } from "./paths-Cqn-zk3M.js";
2
2
  import { D as isPlainObject, U as getResolvedLoggerSettings, r as clamp, y as resolveUserPath } from "./utils-B-0b9bGM.js";
3
3
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels } from "./thinking-EAliFiVK.js";
4
- import { $n as OPENAI_TTS_MODELS, Bn as registerAgentRunContext, Bt as abortEmbeddedPiRun, C as ensureOutboundSessionEntry, Et as agentCommand, Ft as normalizeSendPolicy, G as normalizeCronJobPatch, Gn as resolveTtsApiKey, H as writeRestartSentinel, Hn as getTtsProvider, Ht as waitForEmbeddedPiRunEnd, It as resolveSendPolicy, Jn as resolveTtsPrefsPath, Kn as resolveTtsAutoMode, L as formatDoctorNonInteractiveHint, Mn as listSubagentRunsForRequester, Mt as resolveOutboundTarget, N as scheduleGatewaySigusr1Restart, Ot as resolveAgentDeliveryPlan, Pr as resolveAgentTimeoutMs, Qn as textToSpeech, Rt as createOutboundSendDeps, Sr as isSystemEventContextChanged, Tn as stopSubagentsForRequester, Un as isTtsEnabled, Vn as resolveUserTimezone, W as normalizeCronJobCreate, Wn as isTtsProviderConfigured, Xn as setTtsEnabled, Yn as resolveTtsProviderOrder, Zn as setTtsProvider, _ as loadCombinedSessionStoreForGateway, at as persistBrowserProxyFiles, b as resolveGatewaySessionStoreTarget, br as parseVerboseOverride, c as clearSessionQueues, er as OPENAI_TTS_VOICES, ft as loadSymiPlugins, g as listSessionsFromStore, gt as loadProviderUsageSummary, h as listAgentsForGateway, in as unbindThreadBindingsBySessionKey, it as applyBrowserProxyPaths, jn as listDescendantRunsForRequester, kt as resolveAgentOutboundTarget, mn as createReplyDispatcher, mt as normalizeGroupActivation, n as BARE_SESSION_RESET_PROMPT, p as canonicalizeSpawnedByForAgent, pn as dispatchInboundMessage, qn as resolveTtsConfig, v as loadSessionEntry, vr as applyModelOverrideToSessionEntry, w as resolveOutboundSessionRoute, wn as isAbortTrigger, x as resolveSessionModelRef, xn as formatZonedTimestamp, xr as enqueueSystemEvent, y as pruneLegacyStoreKeys, yr as applyVerboseOverride, zn as onAgentEvent } from "./reply-Dg1ZU3DZ.js";
4
+ import { $n as textToSpeech, At as resolveAgentOutboundTarget, Bn as onAgentEvent, Cr as isSystemEventContextChanged, Dt as agentCommand, En as stopSubagentsForRequester, Fr as resolveAgentTimeoutMs, G as normalizeCronJobCreate, Gn as isTtsProviderConfigured, Hn as resolveUserTimezone, It as normalizeSendPolicy, Jn as resolveTtsConfig, K as normalizeCronJobPatch, Kn as resolveTtsApiKey, Lt as resolveSendPolicy, Mn as listDescendantRunsForRequester, Nn as listSubagentRunsForRequester, Nt as resolveOutboundTarget, P as scheduleGatewaySigusr1Restart, Qn as setTtsProvider, R as formatDoctorNonInteractiveHint, S as resolveSessionModelRef, Sn as formatZonedTimestamp, Sr as enqueueSystemEvent, T as resolveOutboundSessionRoute, Tn as isAbortTrigger, U as writeRestartSentinel, Un as getTtsProvider, Ut as waitForEmbeddedPiRunEnd, Vn as registerAgentRunContext, Vt as abortEmbeddedPiRun, Wn as isTtsEnabled, Xn as resolveTtsProviderOrder, Yn as resolveTtsPrefsPath, Zn as setTtsEnabled, _ as listSessionsFromStore, _t as loadProviderUsageSummary, an as unbindThreadBindingsBySessionKey, at as applyBrowserProxyPaths, b as pruneLegacyStoreKeys, br as applyVerboseOverride, c as clearSessionQueues, er as OPENAI_TTS_MODELS, f as listTasksInWorkdir, g as listAgentsForGateway, hn as createReplyDispatcher, ht as normalizeGroupActivation, kt as resolveAgentDeliveryPlan, m as canonicalizeSpawnedByForAgent, mn as dispatchInboundMessage, n as BARE_SESSION_RESET_PROMPT, ot as persistBrowserProxyFiles, pt as loadSymiPlugins, qn as resolveTtsAutoMode, tr as OPENAI_TTS_VOICES, v as loadCombinedSessionStoreForGateway, w as ensureOutboundSessionEntry, x as resolveGatewaySessionStoreTarget, xr as parseVerboseOverride, y as loadSessionEntry, yr as applyModelOverrideToSessionEntry, zt as createOutboundSendDeps } from "./reply-D455A6SA.js";
5
5
  import { S as parseAgentSessionKey, l as resolveAgentIdFromSessionKey, m as DEFAULT_ACCOUNT_ID, o as classifySessionKeyShape, s as normalizeAgentId, t as DEFAULT_AGENT_ID, x as isSubagentSessionKey } from "./session-key-DCt45XZa.js";
6
6
  import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
7
7
  import { C as createInternalHookEvent, T as triggerInternalHook, d as getActivePluginRegistry, r as DEFAULT_CHAT_CHANNEL, t as CHANNEL_IDS } from "./registry-Cja8eT7G.js";
@@ -20,15 +20,15 @@ import { i as normalizeInputProvenance } from "./input-provenance-BzbXHcaD.js";
20
20
  import { n as createBrowserRouteDispatcher } from "./with-timeout-DwriPEWn.js";
21
21
  import { C as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-D7BQXt0l.js";
22
22
  import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-CE2YmmsD.js";
23
- import { $ as validateNodePairRejectParams, A as validateCronStatusParams, At as validateWizardNextParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateTalkConfigParams, D as validateCronRemoveParams, Dt as validateWebLoginStartParams, E as validateCronListParams, Et as validateWakeParams, F as validateDevicePairRemoveParams, Ft as errorShape, G as validateModelsListParams, H as validateExecApprovalsNodeSetParams, Ht as listDevicePairing, I as validateDeviceTokenRevokeParams, J as validateNodeInvokeParams, Jt as summarizeDeviceTokens, K as validateNodeDescribeParams, Kt as revokeDeviceToken, L as validateDeviceTokenRotateParams, Lt as parseSessionLabel, M as validateDevicePairApproveParams, Mt as validateWizardStatusParams, N as validateDevicePairListParams, O as validateCronRunParams, Ot as validateWebLoginWaitParams, P as validateDevicePairRejectParams, Pt as ErrorCodes, Q as validateNodePairListParams, S as validateConfigSchemaParams, St as validateSkillsUpdateParams, T as validateCronAddParams, Tt as validateUpdateRunParams, U as validateExecApprovalsSetParams, Ut as rejectDevicePairing, V as validateExecApprovalsNodeGetParams, W as validateLogsTailParams, Wt as removePairedDevice, X as validateNodeListParams, Y as validateNodeInvokeResultParams, Z as validateNodePairApproveParams, _ as validateChatInjectParams, _t as validateSessionsRestoreParams, a as validateAgentWaitParams, b as validateConfigGetParams, bt as validateSkillsInstallParams, c as validateAgentsFilesGetParams, ct as validateSessionsCompactParams, d as validateAgentsListParams, dt as validateSessionsFavoriteFileParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsListParams, g as validateChatHistoryParams, gt as validateSessionsResolveParams, h as validateChatAbortParams, ht as validateSessionsResetParams, i as validateAgentParams, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardStartParams, k as validateCronRunsParams, kt as validateWizardCancelParams, l as validateAgentsFilesListParams, lt as validateSessionsDeleteFileParams, m as validateChannelsStatusParams, mt as validateSessionsPreviewParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSendParams, p as validateChannelsLogoutParams, pt as validateSessionsPatchParams, q as validateNodeEventParams, qt as rotateDeviceToken, r as validateAgentIdentityParams, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSessionsAdoptFileParams, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSessionsUsageParams, wt as validateTalkModeParams, x as validateConfigPatchParams, xt as validateSkillsStatusParams, y as validateConfigApplyParams, yt as validateSkillsBinsParams, zt as approveDevicePairing } from "./client-C7AOOnKZ.js";
24
- import { l as authorizeOperatorScopesForMethod, s as ADMIN_SCOPE$2, u as isNodeRoleMethod } from "./call-Cmb04dff.js";
23
+ import { $ as validateNodePairRejectParams, A as validateCronStatusParams, At as validateWizardCancelParams, B as validateExecApprovalsGetParams, Bt as approveDevicePairing, C as validateConfigSetParams, Ct as validateTalkConfigParams, D as validateCronRemoveParams, Dt as validateWakeParams, E as validateCronListParams, Et as validateUpdateRunParams, F as validateDevicePairRemoveParams, Ft as ErrorCodes, G as validateModelsListParams, Gt as removePairedDevice, H as validateExecApprovalsNodeSetParams, I as validateDeviceTokenRevokeParams, It as errorShape, J as validateNodeInvokeParams, Jt as rotateDeviceToken, K as validateNodeDescribeParams, L as validateDeviceTokenRotateParams, M as validateDevicePairApproveParams, Mt as validateWizardStartParams, N as validateDevicePairListParams, Nt as validateWizardStatusParams, O as validateCronRunParams, Ot as validateWebLoginStartParams, P as validateDevicePairRejectParams, Q as validateNodePairListParams, Rt as parseSessionLabel, S as validateConfigSchemaParams, St as validateSkillsUpdateParams, T as validateCronAddParams, Tt as validateTasksListParams, U as validateExecApprovalsSetParams, Ut as listDevicePairing, V as validateExecApprovalsNodeGetParams, W as validateLogsTailParams, Wt as rejectDevicePairing, X as validateNodeListParams, Y as validateNodeInvokeResultParams, Yt as summarizeDeviceTokens, Z as validateNodePairApproveParams, _ as validateChatInjectParams, _t as validateSessionsRestoreParams, a as validateAgentWaitParams, b as validateConfigGetParams, bt as validateSkillsInstallParams, c as validateAgentsFilesGetParams, ct as validateSessionsCompactParams, d as validateAgentsListParams, dt as validateSessionsFavoriteFileParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsListParams, g as validateChatHistoryParams, gt as validateSessionsResolveParams, h as validateChatAbortParams, ht as validateSessionsResetParams, i as validateAgentParams, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardNextParams, k as validateCronRunsParams, kt as validateWebLoginWaitParams, l as validateAgentsFilesListParams, lt as validateSessionsDeleteFileParams, m as validateChannelsStatusParams, mt as validateSessionsPreviewParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSendParams, p as validateChannelsLogoutParams, pt as validateSessionsPatchParams, q as validateNodeEventParams, qt as revokeDeviceToken, r as validateAgentIdentityParams, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSessionsAdoptFileParams, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSessionsUsageParams, wt as validateTalkModeParams, x as validateConfigPatchParams, xt as validateSkillsStatusParams, y as validateConfigApplyParams, yt as validateSkillsBinsParams } from "./client-CYsBIR3j.js";
24
+ import { l as authorizeOperatorScopesForMethod, s as ADMIN_SCOPE$2, u as isNodeRoleMethod } from "./call-BkJK3eYP.js";
25
25
  import { c as writeJsonAtomic, o as createAsyncLock, s as readJsonFile } from "./pairing-token-pooyuU2J.js";
26
26
  import { n as normalizePollInput } from "./polls-DZoQqmds.js";
27
27
  import { t as getChannelActivity } from "./channel-activity-CoTZV03i.js";
28
28
  import { _ as requestNodePairing, g as renamePairedNode, h as rejectNodePairing, m as listNodePairing, o as getRemoteSkillEligibility, p as approveNodePairing, y as verifyNodeToken } from "./skill-commands-Bz5sreu5.js";
29
29
  import { t as listAgentWorkspaceDirs } from "./workspace-dirs-DHPWGRDp.js";
30
30
  import { i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, t as discoverAllSessions } from "./session-cost-usage-RPrhIvZF.js";
31
- import { w as resolveAssistantAvatarUrl } from "./onboard-helpers-C8f_xi6R.js";
31
+ import { w as resolveAssistantAvatarUrl } from "./onboard-helpers-B7jBYbCU.js";
32
32
  import { a as mergeExecApprovalsSocketDefaults, c as readExecApprovalsSnapshot, p as saveExecApprovals, r as ensureExecApprovals, s as normalizeExecApprovals } from "./exec-approvals-DEigTi7M.js";
33
33
  import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-C0pRqIFv.js";
34
34
  import { i as parseAbsoluteTimeMs } from "./stagger-CZ1Rrj7O.js";
@@ -38,15 +38,15 @@ import { t as buildWorkspaceSkillStatus } from "./skills-status-D1IW8MhS.js";
38
38
  import { t as WizardCancelledError } from "./prompts-NOUgk6FH.js";
39
39
  import { t as resolveChannelDefaultAccountId } from "./helpers-D-MrrYmt.js";
40
40
  import { t as buildChannelAccountSnapshot } from "./status-TtGsgDjP.js";
41
- import { o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-BhCJV2l6.js";
42
- import { n as getStatusSummary } from "./status-CA0mUJld.js";
43
- import { s as setHeartbeatsEnabled } from "./health-CvMHgR-L.js";
41
+ import { o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-xiwEIT96.js";
42
+ import { n as getStatusSummary } from "./status-DjjA-TOx.js";
43
+ import { s as setHeartbeatsEnabled } from "./health-Cs8wf7Hb.js";
44
44
  import { m as normalizeUpdateChannel } from "./update-check-Bbvpax6u.js";
45
- import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-DCA47WA5.js";
46
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-Dd-11klq.js";
45
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-f_6DGP6z.js";
46
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-D967tgmP.js";
47
47
  import { t as resolveSystemRunCommand } from "./system-run-command-DKiCEPJc.js";
48
48
  import { t as installSkill } from "./skills-install-B8r7cGKR.js";
49
- import { t as runGatewayUpdate } from "./update-runner-D7-LDziQ.js";
49
+ import { t as runGatewayUpdate } from "./update-runner-B1vMjo7o.js";
50
50
  import * as fs$2 from "node:fs";
51
51
  import fs from "node:fs";
52
52
  import * as os$1 from "node:os";
@@ -7448,7 +7448,7 @@ const nodeHandlers = {
7448
7448
  const p = params;
7449
7449
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
7450
7450
  await respondUnavailableOnThrow(respond, async () => {
7451
- const { handleNodeEvent } = await import("./server-node-events-uBu3XOjd.js");
7451
+ const { handleNodeEvent } = await import("./server-node-events-C58gVs27.js");
7452
7452
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
7453
7453
  await handleNodeEvent({
7454
7454
  deps: context.deps,
@@ -8207,6 +8207,49 @@ const talkHandlers = {
8207
8207
  }
8208
8208
  };
8209
8209
 
8210
+ //#endregion
8211
+ //#region src/gateway/server-methods/tasks.ts
8212
+ const tasksHandlers = { "tasks.list": async ({ params, respond }) => {
8213
+ if (!validateTasksListParams(params)) {
8214
+ respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, `invalid tasks.list params: ${formatValidationErrors(validateTasksListParams.errors)}`));
8215
+ return;
8216
+ }
8217
+ const workdirOverride = params.workdir?.trim();
8218
+ if (workdirOverride && !path.isAbsolute(workdirOverride)) {
8219
+ respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, "workdir must be an absolute path"));
8220
+ return;
8221
+ }
8222
+ const cfg = loadConfig();
8223
+ const tasks = [];
8224
+ if (workdirOverride) {
8225
+ const found = await listTasksInWorkdir(workdirOverride);
8226
+ for (const t of found) tasks.push({
8227
+ ...t,
8228
+ workdir: workdirOverride
8229
+ });
8230
+ respond(true, { tasks }, void 0);
8231
+ return;
8232
+ }
8233
+ const seen = /* @__PURE__ */ new Set();
8234
+ for (const agentId of listAgentIds(cfg)) {
8235
+ let ws;
8236
+ try {
8237
+ ws = resolveAgentWorkspaceDir(cfg, agentId);
8238
+ } catch {
8239
+ continue;
8240
+ }
8241
+ if (!ws || seen.has(ws)) continue;
8242
+ seen.add(ws);
8243
+ const found = await listTasksInWorkdir(ws);
8244
+ for (const t of found) tasks.push({
8245
+ ...t,
8246
+ agentId,
8247
+ workdir: ws
8248
+ });
8249
+ }
8250
+ respond(true, { tasks }, void 0);
8251
+ } };
8252
+
8210
8253
  //#endregion
8211
8254
  //#region src/gateway/server-methods/tts.ts
8212
8255
  const ttsHandlers = {
@@ -9465,6 +9508,7 @@ const coreGatewayHandlers = {
9465
9508
  ...skillsHandlers,
9466
9509
  ...sessionsHandlers,
9467
9510
  ...systemHandlers,
9511
+ ...tasksHandlers,
9468
9512
  ...updateHandlers,
9469
9513
  ...nodeHandlers,
9470
9514
  ...pushHandlers,
@@ -6,13 +6,13 @@ import { C as ensureAgentWorkspace, S as DEFAULT_USER_FILENAME, T as isWorkspace
6
6
  import { i as loadWorkspaceSkillEntries } from "./skills-D_oCiaQn.js";
7
7
  import { t as buildWorkspaceSkillStatus } from "./skills-status-DODCG6UU.js";
8
8
  import { H as VERSION, N as applyMergePatch, P as applyLegacyMigrations, S as sensitive, U as resolveRuntimeServiceVersion, a as parseConfigJson5, c as resolveConfigSnapshotHash, d as SymiSchema, i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot, s as readConfigFileSnapshotForWrite, u as validateConfigObjectWithPlugins } from "./config-DXt3pc08.js";
9
- import { $ as validateNodePairRejectParams, A as validateCronStatusParams, At as validateWizardNextParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateTalkConfigParams, D as validateCronRemoveParams, Dt as validateWebLoginStartParams, E as validateCronListParams, Et as validateWakeParams, F as validateDevicePairRemoveParams, Ft as errorShape, G as validateModelsListParams, H as validateExecApprovalsNodeSetParams, Ht as listDevicePairing, I as validateDeviceTokenRevokeParams, J as validateNodeInvokeParams, Jt as summarizeDeviceTokens, K as validateNodeDescribeParams, Kt as revokeDeviceToken, L as validateDeviceTokenRotateParams, Lt as parseSessionLabel, M as validateDevicePairApproveParams, Mt as validateWizardStatusParams, N as validateDevicePairListParams, O as validateCronRunParams, Ot as validateWebLoginWaitParams, P as validateDevicePairRejectParams, Pt as ErrorCodes, Q as validateNodePairListParams, S as validateConfigSchemaParams, St as validateSkillsUpdateParams, T as validateCronAddParams, Tt as validateUpdateRunParams, U as validateExecApprovalsSetParams, Ut as rejectDevicePairing, V as validateExecApprovalsNodeGetParams, W as validateLogsTailParams, Wt as removePairedDevice, X as validateNodeListParams, Y as validateNodeInvokeResultParams, Z as validateNodePairApproveParams, _ as validateChatInjectParams, _t as validateSessionsRestoreParams, a as validateAgentWaitParams, b as validateConfigGetParams, bt as validateSkillsInstallParams, c as validateAgentsFilesGetParams, ct as validateSessionsCompactParams, d as validateAgentsListParams, dt as validateSessionsFavoriteFileParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsListParams, g as validateChatHistoryParams, gt as validateSessionsResolveParams, h as validateChatAbortParams, ht as validateSessionsResetParams, i as validateAgentParams, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardStartParams, k as validateCronRunsParams, kt as validateWizardCancelParams, l as validateAgentsFilesListParams, lt as validateSessionsDeleteFileParams, m as validateChannelsStatusParams, mt as validateSessionsPreviewParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSendParams, p as validateChannelsLogoutParams, pt as validateSessionsPatchParams, q as validateNodeEventParams, qt as rotateDeviceToken, r as validateAgentIdentityParams, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSessionsAdoptFileParams, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSessionsUsageParams, wt as validateTalkModeParams, x as validateConfigPatchParams, xt as validateSkillsStatusParams, y as validateConfigApplyParams, yt as validateSkillsBinsParams, zt as approveDevicePairing } from "./client-qUlxXXVJ.js";
10
- import { l as authorizeOperatorScopesForMethod, s as ADMIN_SCOPE$2, u as isNodeRoleMethod } from "./call-BrRWr7Lj.js";
9
+ import { $ as validateNodePairRejectParams, A as validateCronStatusParams, At as validateWizardCancelParams, B as validateExecApprovalsGetParams, Bt as approveDevicePairing, C as validateConfigSetParams, Ct as validateTalkConfigParams, D as validateCronRemoveParams, Dt as validateWakeParams, E as validateCronListParams, Et as validateUpdateRunParams, F as validateDevicePairRemoveParams, Ft as ErrorCodes, G as validateModelsListParams, Gt as removePairedDevice, H as validateExecApprovalsNodeSetParams, I as validateDeviceTokenRevokeParams, It as errorShape, J as validateNodeInvokeParams, Jt as rotateDeviceToken, K as validateNodeDescribeParams, L as validateDeviceTokenRotateParams, M as validateDevicePairApproveParams, Mt as validateWizardStartParams, N as validateDevicePairListParams, Nt as validateWizardStatusParams, O as validateCronRunParams, Ot as validateWebLoginStartParams, P as validateDevicePairRejectParams, Q as validateNodePairListParams, Rt as parseSessionLabel, S as validateConfigSchemaParams, St as validateSkillsUpdateParams, T as validateCronAddParams, Tt as validateTasksListParams, U as validateExecApprovalsSetParams, Ut as listDevicePairing, V as validateExecApprovalsNodeGetParams, W as validateLogsTailParams, Wt as rejectDevicePairing, X as validateNodeListParams, Y as validateNodeInvokeResultParams, Yt as summarizeDeviceTokens, Z as validateNodePairApproveParams, _ as validateChatInjectParams, _t as validateSessionsRestoreParams, a as validateAgentWaitParams, b as validateConfigGetParams, bt as validateSkillsInstallParams, c as validateAgentsFilesGetParams, ct as validateSessionsCompactParams, d as validateAgentsListParams, dt as validateSessionsFavoriteFileParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsListParams, g as validateChatHistoryParams, gt as validateSessionsResolveParams, h as validateChatAbortParams, ht as validateSessionsResetParams, i as validateAgentParams, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardNextParams, k as validateCronRunsParams, kt as validateWebLoginWaitParams, l as validateAgentsFilesListParams, lt as validateSessionsDeleteFileParams, m as validateChannelsStatusParams, mt as validateSessionsPreviewParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSendParams, p as validateChannelsLogoutParams, pt as validateSessionsPatchParams, q as validateNodeEventParams, qt as revokeDeviceToken, r as validateAgentIdentityParams, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSessionsAdoptFileParams, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSessionsUsageParams, wt as validateTalkModeParams, x as validateConfigPatchParams, xt as validateSkillsStatusParams, y as validateConfigApplyParams, yt as validateSkillsBinsParams } from "./client-Cmq13-uF.js";
10
+ import { l as authorizeOperatorScopesForMethod, s as ADMIN_SCOPE$2, u as isNodeRoleMethod } from "./call-CAGvQYXj.js";
11
11
  import { f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, i as isGatewayMessageChannel, l as normalizeMessageChannel, n as isDeliverableMessageChannel, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-C9dERklz.js";
12
12
  import { c as writeJsonAtomic, o as createAsyncLock, s as readJsonFile } from "./pairing-token-Byh6drgn.js";
13
13
  import { s as pickPrimaryLanIPv4 } from "./net-DZ5Ayk-W.js";
14
14
  import { i as normalizeInputProvenance } from "./input-provenance-D0lNkCf6.js";
15
- import { $n as resolveTtsAutoMode, B as dispatchInboundMessage, C as resolveAgentDeliveryPlan, Cn as enqueueSystemEvent, Cr as onAgentEvent, D as createOutboundSendDeps, Dt as normalizeCronJobPatch, Et as normalizeCronJobCreate, G as BARE_SESSION_RESET_PROMPT, Gn as stopSubagentsForRequester, Gt as persistBrowserProxyFiles, In as resolveAgentTimeoutMs, Jn as resolveUserTimezone, Qn as resolveTtsApiKey, Sn as parseVerboseOverride, V as createReplyDispatcher, Vn as formatZonedTimestamp, Wn as isAbortTrigger, Wt as applyBrowserProxyPaths, Xn as isTtsEnabled, Y as abortEmbeddedPiRun, Yn as getTtsProvider, Z as waitForEmbeddedPiRunEnd, Zn as isTtsProviderConfigured, Zt as scheduleGatewaySigusr1Restart, a as listSubagentRunsForRequester, ar as textToSpeech, bn as applyModelOverrideToSessionEntry, c as clearSessionQueues, ct as resolveOutboundSessionRoute, dt as resolveOutboundTarget, en as unbindThreadBindingsBySessionKey, er as resolveTtsConfig, hn as resolveSendPolicy, i as listDescendantRunsForRequester, ir as setTtsProvider, m as loadSymiPlugins, mn as normalizeSendPolicy, nr as resolveTtsProviderOrder, or as OPENAI_TTS_MODELS, rn as loadProviderUsageSummary, rr as setTtsEnabled, sr as OPENAI_TTS_VOICES, st as ensureOutboundSessionEntry, tn as normalizeGroupActivation, tr as resolveTtsPrefsPath, w as resolveAgentOutboundTarget, wn as isSystemEventContextChanged, wr as registerAgentRunContext, wt as writeRestartSentinel, x as agentCommand, xn as applyVerboseOverride, yt as formatDoctorNonInteractiveHint } from "./subagent-registry-C1OyZl-M.js";
15
+ import { $n as resolveTtsApiKey, B as dispatchInboundMessage, C as resolveAgentDeliveryPlan, Cn as parseVerboseOverride, D as createOutboundSendDeps, Dt as normalizeCronJobCreate, G as BARE_SESSION_RESET_PROMPT, Gn as isAbortTrigger, Gt as applyBrowserProxyPaths, Hn as formatZonedTimestamp, Kn as stopSubagentsForRequester, Kt as persistBrowserProxyFiles, Ln as resolveAgentTimeoutMs, Ot as normalizeCronJobPatch, Qn as isTtsProviderConfigured, Qt as scheduleGatewaySigusr1Restart, Sn as applyVerboseOverride, Tn as isSystemEventContextChanged, Tr as registerAgentRunContext, Tt as writeRestartSentinel, V as createReplyDispatcher, Xn as getTtsProvider, Y as abortEmbeddedPiRun, Yn as resolveUserTimezone, Z as waitForEmbeddedPiRunEnd, Zn as isTtsEnabled, a as listSubagentRunsForRequester, ar as setTtsProvider, bt as formatDoctorNonInteractiveHint, c as clearSessionQueues, cr as OPENAI_TTS_VOICES, ct as ensureOutboundSessionEntry, er as resolveTtsAutoMode, ft as resolveOutboundTarget, gn as resolveSendPolicy, hn as normalizeSendPolicy, i as listDescendantRunsForRequester, in as loadProviderUsageSummary, ir as setTtsEnabled, it as listTasksInWorkdir, lt as resolveOutboundSessionRoute, m as loadSymiPlugins, nn as normalizeGroupActivation, nr as resolveTtsPrefsPath, or as textToSpeech, rr as resolveTtsProviderOrder, sr as OPENAI_TTS_MODELS, tn as unbindThreadBindingsBySessionKey, tr as resolveTtsConfig, w as resolveAgentOutboundTarget, wn as enqueueSystemEvent, wr as onAgentEvent, x as agentCommand, xn as applyModelOverrideToSessionEntry } from "./subagent-registry-B1HJJs3Q.js";
16
16
  import { F as resolveMainSessionKey, I as resolveMainSessionKeyFromConfig, J as normalizeSessionDeliveryFields, N as resolveAgentMainSessionKey, P as resolveExplicitAgentSessionKey, R as snapshotSessionOrigin, S as stripEnvelopeFromMessages, _ as capArrayByJsonBytes, d as updateSessionStore, g as archiveSessionTranscripts, h as archiveFileOnDisk, o as loadSessionStore, t as extractDeliveryInfo, v as readSessionMessages, x as resolveSessionTranscriptCandidates, y as readSessionPreviewItemsFromTranscript } from "./sessions-BPD85pWA.js";
17
17
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-CwSlLxM8.js";
18
18
  import { n as createBrowserRouteDispatcher } from "./with-timeout-BuIx7QnX.js";
@@ -30,21 +30,21 @@ import { t as getChannelActivity } from "./channel-activity-HStGD0Ea.js";
30
30
  import { n as normalizePollInput } from "./polls-Cm1-n4jF.js";
31
31
  import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-Bujr5pk7.js";
32
32
  import { i as parseAbsoluteTimeMs } from "./stagger-BDqsqTKI.js";
33
- import { w as resolveAssistantAvatarUrl } from "./onboard-helpers-CF0Cp3OB.js";
33
+ import { w as resolveAssistantAvatarUrl } from "./onboard-helpers-DjlGq6iG.js";
34
34
  import { r as getLastHeartbeatEvent } from "./heartbeat-visibility-D0_vbMWW.js";
35
35
  import { t as buildChannelUiCatalog } from "./catalog-KcLvtTfa.js";
36
36
  import { t as WizardCancelledError } from "./prompts-DbHSz44H.js";
37
37
  import { t as resolveChannelDefaultAccountId } from "./helpers-gWnZ9zWR.js";
38
38
  import { t as buildChannelAccountSnapshot } from "./status-B8TZsG0t.js";
39
- import { o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-CB97BqHJ.js";
40
- import { r as getStatusSummary } from "./status-CBnCPUMG.js";
41
- import { c as setHeartbeatsEnabled } from "./health-2jkjZxY8.js";
39
+ import { o as isNodeCommandAllowed, s as resolveNodeCommandAllowlist } from "./audit-Dr_8rC6G.js";
40
+ import { r as getStatusSummary } from "./status-Qt6QDFJ1.js";
41
+ import { c as setHeartbeatsEnabled } from "./health-DMy1nA4K.js";
42
42
  import { m as normalizeUpdateChannel } from "./update-check-BNjupSIM.js";
43
- import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-DvudhEAb.js";
44
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-BKKMbeeE.js";
43
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration } from "./push-apns-7rC1ybp8.js";
44
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-BOvsz6E6.js";
45
45
  import { t as resolveSystemRunCommand } from "./system-run-command-B_qw8CXP.js";
46
46
  import { t as installSkill } from "./skills-install-BnEN_qla.js";
47
- import { t as runGatewayUpdate } from "./update-runner-aYPcKYAN.js";
47
+ import { t as runGatewayUpdate } from "./update-runner-DUHTdrZ0.js";
48
48
  import { spawnSync } from "node:child_process";
49
49
  import * as os$1 from "node:os";
50
50
  import os from "node:os";
@@ -7446,7 +7446,7 @@ const nodeHandlers = {
7446
7446
  const p = params;
7447
7447
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
7448
7448
  await respondUnavailableOnThrow(respond, async () => {
7449
- const { handleNodeEvent } = await import("./server-node-events-CENHuAVz.js");
7449
+ const { handleNodeEvent } = await import("./server-node-events-DqJIrx86.js");
7450
7450
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
7451
7451
  await handleNodeEvent({
7452
7452
  deps: context.deps,
@@ -8205,6 +8205,49 @@ const talkHandlers = {
8205
8205
  }
8206
8206
  };
8207
8207
 
8208
+ //#endregion
8209
+ //#region src/gateway/server-methods/tasks.ts
8210
+ const tasksHandlers = { "tasks.list": async ({ params, respond }) => {
8211
+ if (!validateTasksListParams(params)) {
8212
+ respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, `invalid tasks.list params: ${formatValidationErrors(validateTasksListParams.errors)}`));
8213
+ return;
8214
+ }
8215
+ const workdirOverride = params.workdir?.trim();
8216
+ if (workdirOverride && !path.isAbsolute(workdirOverride)) {
8217
+ respond(false, void 0, errorShape(ErrorCodes.INVALID_REQUEST, "workdir must be an absolute path"));
8218
+ return;
8219
+ }
8220
+ const cfg = loadConfig();
8221
+ const tasks = [];
8222
+ if (workdirOverride) {
8223
+ const found = await listTasksInWorkdir(workdirOverride);
8224
+ for (const t of found) tasks.push({
8225
+ ...t,
8226
+ workdir: workdirOverride
8227
+ });
8228
+ respond(true, { tasks }, void 0);
8229
+ return;
8230
+ }
8231
+ const seen = /* @__PURE__ */ new Set();
8232
+ for (const agentId of listAgentIds(cfg)) {
8233
+ let ws;
8234
+ try {
8235
+ ws = resolveAgentWorkspaceDir(cfg, agentId);
8236
+ } catch {
8237
+ continue;
8238
+ }
8239
+ if (!ws || seen.has(ws)) continue;
8240
+ seen.add(ws);
8241
+ const found = await listTasksInWorkdir(ws);
8242
+ for (const t of found) tasks.push({
8243
+ ...t,
8244
+ agentId,
8245
+ workdir: ws
8246
+ });
8247
+ }
8248
+ respond(true, { tasks }, void 0);
8249
+ } };
8250
+
8208
8251
  //#endregion
8209
8252
  //#region src/gateway/server-methods/tts.ts
8210
8253
  const ttsHandlers = {
@@ -9463,6 +9506,7 @@ const coreGatewayHandlers = {
9463
9506
  ...skillsHandlers,
9464
9507
  ...sessionsHandlers,
9465
9508
  ...systemHandlers,
9509
+ ...tasksHandlers,
9466
9510
  ...updateHandlers,
9467
9511
  ...nodeHandlers,
9468
9512
  ...pushHandlers,
@@ -1,7 +1,7 @@
1
1
  import "./paths-Cqn-zk3M.js";
2
2
  import "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { Et as agentCommand, Mt as resolveOutboundTarget, Pt as createOutboundSendDeps, b as resolveGatewaySessionStoreTarget, st as requestHeartbeatNow, v as loadSessionEntry, xr as enqueueSystemEvent, y as pruneLegacyStoreKeys } from "./reply-Dg1ZU3DZ.js";
4
+ import { Dt as agentCommand, Ft as createOutboundSendDeps, Nt as resolveOutboundTarget, Sr as enqueueSystemEvent, b as pruneLegacyStoreKeys, ct as requestHeartbeatNow, x as resolveGatewaySessionStoreTarget, y as loadSessionEntry } from "./reply-D455A6SA.js";
5
5
  import { c as normalizeMainKey } from "./session-key-DCt45XZa.js";
6
6
  import "./registry-Cja8eT7G.js";
7
7
  import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
@@ -61,8 +61,8 @@ import "./diagnostic-session-state-CUslJyKP.js";
61
61
  import "./send-DpMnSIi5.js";
62
62
  import "./model-ECsJuJew.js";
63
63
  import "./reply-prefix-CE2YmmsD.js";
64
- import "./memory-cli-ENCASZJk.js";
65
- import "./manager-DrmlegR2.js";
64
+ import "./memory-cli-DRLrIa8h.js";
65
+ import "./manager-wF-n_prX.js";
66
66
  import "./retry-BoS4e4X_.js";
67
67
  import "./sqlite-D55gRQbH.js";
68
68
  import "./target-errors-C9e6dMU_.js";
@@ -72,8 +72,8 @@ import "./ir-jTXFdH5R.js";
72
72
  import "./render-Bwu_WxwA.js";
73
73
  import "./commands-vWB85AXk.js";
74
74
  import "./commands-registry-D_uByLpw.js";
75
- import "./client-C7AOOnKZ.js";
76
- import "./call-Cmb04dff.js";
75
+ import "./client-CYsBIR3j.js";
76
+ import "./call-BkJK3eYP.js";
77
77
  import "./pairing-token-pooyuU2J.js";
78
78
  import "./channel-activity-CoTZV03i.js";
79
79
  import "./fetch-BECUf3wn.js";
@@ -94,7 +94,7 @@ import "./session-cost-usage-RPrhIvZF.js";
94
94
  import "./outbound-attachment-FbHNOB0s.js";
95
95
  import "./delivery-queue-D9i0qjI_.js";
96
96
  import "./send-SF7x1UHb.js";
97
- import "./onboard-helpers-C8f_xi6R.js";
97
+ import "./onboard-helpers-B7jBYbCU.js";
98
98
  import "./prompt-style-Y2J72w6p.js";
99
99
  import "./pairing-labels-CTL1gXZb.js";
100
100
  import "./exec-approvals-DEigTi7M.js";
@@ -103,7 +103,7 @@ import "./pi-tools.policy-Bx5zp45n.js";
103
103
  import "./control-service-C0pRqIFv.js";
104
104
  import "./stagger-CZ1Rrj7O.js";
105
105
  import "./channel-selection-9fIQGtZy.js";
106
- import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-DCA47WA5.js";
106
+ import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-f_6DGP6z.js";
107
107
  import { randomUUID } from "node:crypto";
108
108
 
109
109
  //#region src/gateway/server-node-events.ts
@@ -11,11 +11,11 @@ import "./frontmatter-B8duUx_6.js";
11
11
  import "./skills-D_oCiaQn.js";
12
12
  import "./manifest-registry-D5bnO5uA.js";
13
13
  import { i as loadConfig } from "./config-DXt3pc08.js";
14
- import "./client-qUlxXXVJ.js";
15
- import "./call-BrRWr7Lj.js";
14
+ import "./client-Cmq13-uF.js";
15
+ import "./call-CAGvQYXj.js";
16
16
  import "./message-channel-C9dERklz.js";
17
17
  import "./pairing-token-Byh6drgn.js";
18
- import { Cn as enqueueSystemEvent, T as createOutboundSendDeps, dn as requestHeartbeatNow, dt as resolveOutboundTarget, x as agentCommand } from "./subagent-registry-C1OyZl-M.js";
18
+ import { T as createOutboundSendDeps, fn as requestHeartbeatNow, ft as resolveOutboundTarget, wn as enqueueSystemEvent, x as agentCommand } from "./subagent-registry-B1HJJs3Q.js";
19
19
  import { d as updateSessionStore } from "./sessions-BPD85pWA.js";
20
20
  import "./tokens-Csntmwwn.js";
21
21
  import { r as normalizeChannelId } from "./plugins-CwSlLxM8.js";
@@ -53,8 +53,8 @@ import "./tool-images-CVLISeRT.js";
53
53
  import "./thinking-8sKPnzpp.js";
54
54
  import "./models-config-J1x_DaPn.js";
55
55
  import "./reply-prefix-BUN71nd5.js";
56
- import "./memory-cli-Qgbcxvuf.js";
57
- import "./manager-DDELj5o9.js";
56
+ import "./memory-cli-eSWCbEiS.js";
57
+ import "./manager-B60Ncruq.js";
58
58
  import "./gemini-auth-DEakvf-D.js";
59
59
  import "./retry-C4Q_VPOo.js";
60
60
  import "./sqlite-BP8tiuca.js";
@@ -95,11 +95,11 @@ import "./cli-utils-CI_KkT8q.js";
95
95
  import "./help-format-nY42tGMB.js";
96
96
  import "./progress-HK2tT7Yf.js";
97
97
  import "./replies-Sxbew659.js";
98
- import "./onboard-helpers-CF0Cp3OB.js";
98
+ import "./onboard-helpers-DjlGq6iG.js";
99
99
  import "./prompt-style-BxVdnrLq.js";
100
100
  import "./pairing-labels-BHx_CdbP.js";
101
101
  import "./pi-tools.policy-o0ytjRqu.js";
102
- import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-DvudhEAb.js";
102
+ import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-7rC1ybp8.js";
103
103
  import { randomUUID } from "node:crypto";
104
104
 
105
105
  //#region src/gateway/server-node-events.ts
@@ -1,8 +1,8 @@
1
- import { E as ensureDir, G as danger, I as resolveUserPath, Q as success, ot as toPinoLikeLogger, rt as getChildLogger } from "./registry-X6fUE0K7.js";
2
- import { n as formatCliCommand } from "./env-CB65jmJQ.js";
3
- import { A as VERSION } from "./config-C4WnAd-c.js";
4
- import { c as readCredsJsonRaw, d as resolveWebCredsBackupPath, f as resolveWebCredsPath, o as maybeRestoreCredsFromBackup, u as resolveDefaultWebAuthDir } from "./accounts-BsgY6sda.js";
5
- import fsSync from "node:fs";
1
+ import { E as ensureDir, G as danger, I as resolveUserPath, Q as success, ot as toPinoLikeLogger, rt as getChildLogger } from "./registry-DYq1AYOv.js";
2
+ import { n as formatCliCommand } from "./env-BDXYbTKj.js";
3
+ import { A as VERSION } from "./config-BkZ9HOKT.js";
4
+ import { c as readCredsJsonRaw, d as resolveWebCredsBackupPath, f as resolveWebCredsPath, o as maybeRestoreCredsFromBackup, u as resolveDefaultWebAuthDir } from "./accounts-BRw8yhIW.js";
5
+ import fs from "node:fs";
6
6
  import { randomUUID } from "node:crypto";
7
7
  import { DisconnectReason, fetchLatestBaileysVersion, makeCacheableSignalKeyStore, makeWASocket, useMultiFileAuthState } from "@whiskeysockets/baileys";
8
8
  import qrcode from "qrcode-terminal";
@@ -21,16 +21,16 @@ async function safeSaveCreds(authDir, saveCreds, logger) {
21
21
  const raw = readCredsJsonRaw(credsPath);
22
22
  if (raw) try {
23
23
  JSON.parse(raw);
24
- fsSync.copyFileSync(credsPath, backupPath);
24
+ fs.copyFileSync(credsPath, backupPath);
25
25
  try {
26
- fsSync.chmodSync(backupPath, 384);
26
+ fs.chmodSync(backupPath, 384);
27
27
  } catch {}
28
28
  } catch {}
29
29
  } catch {}
30
30
  try {
31
31
  await Promise.resolve(saveCreds());
32
32
  try {
33
- fsSync.chmodSync(resolveWebCredsPath(authDir), 384);
33
+ fs.chmodSync(resolveWebCredsPath(authDir), 384);
34
34
  } catch {}
35
35
  } catch (err) {
36
36
  logger.warn({ error: String(err) }, "failed saving WhatsApp creds");
@@ -1,21 +1,21 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { s as resolveStateDir } from "./paths-CYmyCDsE.js";
3
- import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-X6fUE0K7.js";
4
- import { s as resolveAgentWorkspaceDir, t as listAgentIds } from "./agent-scope-Cpm7a9ss.js";
5
- import { t as createSubsystemLogger } from "./subsystem-CzXhCdeY.js";
6
- import { o as resolvePluginSkillDirs, t as buildWorkspaceSkillCommandSpecs } from "./skills-BrYDT4Jr.js";
7
- import { i as listChatCommands } from "./commands-registry-ByGkL6hs.js";
2
+ import { s as resolveStateDir } from "./paths-CE7eVGHg.js";
3
+ import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-DYq1AYOv.js";
4
+ import { s as resolveAgentWorkspaceDir, t as listAgentIds } from "./agent-scope-CpEJ0B88.js";
5
+ import { t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
6
+ import { o as resolvePluginSkillDirs, t as buildWorkspaceSkillCommandSpecs } from "./skills-CXxrn_e2.js";
7
+ import { i as listChatCommands } from "./commands-registry-DxbSTLNQ.js";
8
8
  import path from "node:path";
9
- import fsSync from "node:fs";
9
+ import fs from "node:fs";
10
10
  import os from "node:os";
11
- import fs from "node:fs/promises";
11
+ import fs$1 from "node:fs/promises";
12
12
  import { randomUUID } from "node:crypto";
13
13
  import chokidar from "chokidar";
14
14
 
15
15
  //#region src/infra/json-files.ts
16
16
  async function readJsonFile(filePath) {
17
17
  try {
18
- const raw = await fs.readFile(filePath, "utf8");
18
+ const raw = await fs$1.readFile(filePath, "utf8");
19
19
  return JSON.parse(raw);
20
20
  } catch {
21
21
  return null;
@@ -24,15 +24,15 @@ async function readJsonFile(filePath) {
24
24
  async function writeJsonAtomic(filePath, value, options) {
25
25
  const mode = options?.mode ?? 384;
26
26
  const dir = path.dirname(filePath);
27
- await fs.mkdir(dir, { recursive: true });
27
+ await fs$1.mkdir(dir, { recursive: true });
28
28
  const tmp = `${filePath}.${randomUUID()}.tmp`;
29
- await fs.writeFile(tmp, JSON.stringify(value, null, 2), "utf8");
29
+ await fs$1.writeFile(tmp, JSON.stringify(value, null, 2), "utf8");
30
30
  try {
31
- await fs.chmod(tmp, mode);
31
+ await fs$1.chmod(tmp, mode);
32
32
  } catch {}
33
- await fs.rename(tmp, filePath);
33
+ await fs$1.rename(tmp, filePath);
34
34
  try {
35
- await fs.chmod(filePath, mode);
35
+ await fs$1.chmod(filePath, mode);
36
36
  } catch {}
37
37
  }
38
38
  function createAsyncLock() {
@@ -283,8 +283,8 @@ function listSkillCommandsForAgents(params) {
283
283
  const visitedDirs = /* @__PURE__ */ new Set();
284
284
  for (const agentId of agentIds) {
285
285
  const workspaceDir = resolveAgentWorkspaceDir(params.cfg, agentId);
286
- if (!fsSync.existsSync(workspaceDir)) continue;
287
- const canonicalDir = fsSync.realpathSync(workspaceDir);
286
+ if (!fs.existsSync(workspaceDir)) continue;
287
+ const canonicalDir = fs.realpathSync(workspaceDir);
288
288
  if (visitedDirs.has(canonicalDir)) continue;
289
289
  visitedDirs.add(canonicalDir);
290
290
  const commands = buildWorkspaceSkillCommandSpecs(workspaceDir, {
@@ -1,13 +1,13 @@
1
- import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-X6fUE0K7.js";
2
- import { f as normalizeSkillFilter } from "./agent-scope-Cpm7a9ss.js";
3
- import { t as createSubsystemLogger } from "./subsystem-CzXhCdeY.js";
4
- import { h as resolveSymiPackageRootSync } from "./workspace-CywO4ayZ.js";
5
- import { c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, o as normalizePluginsConfig, s as resolveEnableState, t as loadPluginManifestRegistry } from "./manifest-registry-BvGv6lp9.js";
6
- import { a as resolveSymiManifestBlock, c as resolveSymiManifestRequires, d as hasBinary, f as isConfigPathTruthyWithDefaults, i as parseSymiManifestInstallBase, l as parseFrontmatterBlock, n as normalizeStringList, o as resolveSymiManifestInstall, p as resolveRuntimePlatform, r as parseFrontmatterBool, s as resolveSymiManifestOs, t as getFrontmatterString, u as evaluateRuntimeRequires } from "./frontmatter-CT1M0pRK.js";
1
+ import { I as resolveUserPath, S as CONFIG_DIR } from "./registry-DYq1AYOv.js";
2
+ import { f as normalizeSkillFilter } from "./agent-scope-CpEJ0B88.js";
3
+ import { t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
4
+ import { h as resolveSymiPackageRootSync } from "./workspace-DscDraUb.js";
5
+ import { c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, o as normalizePluginsConfig, s as resolveEnableState, t as loadPluginManifestRegistry } from "./manifest-registry-CBCGTsIb.js";
6
+ import { a as resolveSymiManifestBlock, c as resolveSymiManifestRequires, d as hasBinary, f as isConfigPathTruthyWithDefaults, i as parseSymiManifestInstallBase, l as parseFrontmatterBlock, n as normalizeStringList, o as resolveSymiManifestInstall, p as resolveRuntimePlatform, r as parseFrontmatterBool, s as resolveSymiManifestOs, t as getFrontmatterString, u as evaluateRuntimeRequires } from "./frontmatter-CTR5f_Ez.js";
7
7
  import path from "node:path";
8
- import fsSync from "node:fs";
8
+ import fs from "node:fs";
9
9
  import os from "node:os";
10
- import fs from "node:fs/promises";
10
+ import fs$1 from "node:fs/promises";
11
11
  import { fileURLToPath } from "node:url";
12
12
  import { formatSkillsForPrompt, loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
13
13
 
@@ -391,7 +391,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
391
391
  const isLast = idx === parts.length - 1;
392
392
  current = path.join(current, part);
393
393
  try {
394
- if ((await fs.lstat(current)).isSymbolicLink()) {
394
+ if ((await fs$1.lstat(current)).isSymbolicLink()) {
395
395
  if (options?.allowFinalSymlink && isLast) return;
396
396
  const target = await tryRealpath(current);
397
397
  if (!isPathInside(rootReal, target)) throw new Error(`Symlink escapes sandbox root (${shortPath(rootReal)}): ${shortPath(current)}`);
@@ -405,7 +405,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
405
405
  }
406
406
  async function tryRealpath(value) {
407
407
  try {
408
- return await fs.realpath(value);
408
+ return await fs$1.realpath(value);
409
409
  } catch {
410
410
  return path.resolve(value);
411
411
  }
@@ -424,13 +424,13 @@ function shortPath(value) {
424
424
  //#region src/agents/skills/bundled-dir.ts
425
425
  function looksLikeSkillsDir(dir) {
426
426
  try {
427
- const entries = fsSync.readdirSync(dir, { withFileTypes: true });
427
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
428
428
  for (const entry of entries) {
429
429
  if (entry.name.startsWith(".")) continue;
430
430
  const fullPath = path.join(dir, entry.name);
431
431
  if (entry.isFile() && entry.name.endsWith(".md")) return true;
432
432
  if (entry.isDirectory()) {
433
- if (fsSync.existsSync(path.join(fullPath, "SKILL.md"))) return true;
433
+ if (fs.existsSync(path.join(fullPath, "SKILL.md"))) return true;
434
434
  }
435
435
  }
436
436
  } catch {
@@ -445,7 +445,7 @@ function resolveBundledSkillsDir(opts = {}) {
445
445
  const execPath = opts.execPath ?? process.execPath;
446
446
  const execDir = path.dirname(execPath);
447
447
  const sibling = path.join(execDir, "skills");
448
- if (fsSync.existsSync(sibling)) return sibling;
448
+ if (fs.existsSync(sibling)) return sibling;
449
449
  } catch {}
450
450
  try {
451
451
  const moduleUrl = opts.moduleUrl ?? import.meta.url;
@@ -501,7 +501,7 @@ function resolvePluginSkillDirs(params) {
501
501
  const trimmed = raw.trim();
502
502
  if (!trimmed) continue;
503
503
  const candidate = path.resolve(record.rootDir, trimmed);
504
- if (!fsSync.existsSync(candidate)) {
504
+ if (!fs.existsSync(candidate)) {
505
505
  log.warn(`plugin skill path not found (${record.id}): ${candidate}`);
506
506
  continue;
507
507
  }
@@ -528,7 +528,7 @@ async function serializeByKey(key, task) {
528
528
 
529
529
  //#endregion
530
530
  //#region src/agents/skills/workspace.ts
531
- const fsp = fsSync.promises;
531
+ const fsp = fs.promises;
532
532
  const skillsLogger = createSubsystemLogger("skills");
533
533
  const skillCommandDebugOnce = /* @__PURE__ */ new Set();
534
534
  /**
@@ -605,7 +605,7 @@ function resolveSkillsLimits(config) {
605
605
  }
606
606
  function listChildDirectories(dir) {
607
607
  try {
608
- const entries = fsSync.readdirSync(dir, { withFileTypes: true });
608
+ const entries = fs.readdirSync(dir, { withFileTypes: true });
609
609
  const dirs = [];
610
610
  for (const entry of entries) {
611
611
  if (entry.name.startsWith(".")) continue;
@@ -616,7 +616,7 @@ function listChildDirectories(dir) {
616
616
  continue;
617
617
  }
618
618
  if (entry.isSymbolicLink()) try {
619
- if (fsSync.statSync(fullPath).isDirectory()) dirs.push(entry.name);
619
+ if (fs.statSync(fullPath).isDirectory()) dirs.push(entry.name);
620
620
  } catch {}
621
621
  }
622
622
  return dirs;
@@ -627,7 +627,7 @@ function listChildDirectories(dir) {
627
627
  function resolveNestedSkillsRoot(dir, opts) {
628
628
  const nested = path.join(dir, "skills");
629
629
  try {
630
- if (!fsSync.existsSync(nested) || !fsSync.statSync(nested).isDirectory()) return { baseDir: dir };
630
+ if (!fs.existsSync(nested) || !fs.statSync(nested).isDirectory()) return { baseDir: dir };
631
631
  } catch {
632
632
  return { baseDir: dir };
633
633
  }
@@ -636,7 +636,7 @@ function resolveNestedSkillsRoot(dir, opts) {
636
636
  const toScan = scanLimit === 0 ? [] : nestedDirs.slice(0, Math.min(nestedDirs.length, scanLimit));
637
637
  for (const name of toScan) {
638
638
  const skillMd = path.join(nested, name, "SKILL.md");
639
- if (fsSync.existsSync(skillMd)) return {
639
+ if (fs.existsSync(skillMd)) return {
640
640
  baseDir: nested,
641
641
  note: `Detected nested skills root at ${nested}`
642
642
  };
@@ -656,9 +656,9 @@ function loadSkillEntries(workspaceDir, opts) {
656
656
  const loadSkills = (params) => {
657
657
  const baseDir = resolveNestedSkillsRoot(params.dir, { maxEntriesToScan: limits.maxCandidatesPerRoot }).baseDir;
658
658
  const rootSkillMd = path.join(baseDir, "SKILL.md");
659
- if (fsSync.existsSync(rootSkillMd)) {
659
+ if (fs.existsSync(rootSkillMd)) {
660
660
  try {
661
- const size = fsSync.statSync(rootSkillMd).size;
661
+ const size = fs.statSync(rootSkillMd).size;
662
662
  if (size > limits.maxSkillFileBytes) {
663
663
  skillsLogger.warn("Skipping skills root due to oversized SKILL.md.", {
664
664
  dir: baseDir,
@@ -697,9 +697,9 @@ function loadSkillEntries(workspaceDir, opts) {
697
697
  for (const name of limitedChildren) {
698
698
  const skillDir = path.join(baseDir, name);
699
699
  const skillMd = path.join(skillDir, "SKILL.md");
700
- if (!fsSync.existsSync(skillMd)) continue;
700
+ if (!fs.existsSync(skillMd)) continue;
701
701
  try {
702
- const size = fsSync.statSync(skillMd).size;
702
+ const size = fs.statSync(skillMd).size;
703
703
  if (size > limits.maxSkillFileBytes) {
704
704
  skillsLogger.warn("Skipping skill due to oversized SKILL.md.", {
705
705
  skill: name,
@@ -767,7 +767,7 @@ function loadSkillEntries(workspaceDir, opts) {
767
767
  return Array.from(merged.values()).map((skill) => {
768
768
  let frontmatter = {};
769
769
  try {
770
- frontmatter = parseFrontmatter(fsSync.readFileSync(skill.filePath, "utf-8"));
770
+ frontmatter = parseFrontmatter(fs.readFileSync(skill.filePath, "utf-8"));
771
771
  } catch {}
772
772
  return {
773
773
  skill,
@@ -1,7 +1,7 @@
1
- import { t as createSubsystemLogger } from "./subsystem-CzXhCdeY.js";
2
- import { o as resolveSessionTranscriptsDirForAgent } from "./paths-DEuVuViW.js";
1
+ import { t as createSubsystemLogger } from "./subsystem-BjyjJF-d.js";
2
+ import { o as resolveSessionTranscriptsDirForAgent } from "./paths-CbQV9WEg.js";
3
3
  import { t as redactSensitiveText } from "./redact-BDMXB06K.js";
4
- import { a as hashText } from "./internal-FNqguZSK.js";
4
+ import { a as hashText } from "./internal-DjnxpF_K.js";
5
5
  import { createRequire } from "node:module";
6
6
  import path from "node:path";
7
7
  import fs from "node:fs/promises";
@@ -1,4 +1,4 @@
1
- import { dt as createPluginLoaderLogger, ft as loadSymiPlugins } from "./reply-Dg1ZU3DZ.js";
1
+ import { ft as createPluginLoaderLogger, pt as loadSymiPlugins } from "./reply-D455A6SA.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
3
3
  import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-CgUHAtCo.js";
4
4
  import { i as loadConfig } from "./config-PXAJCHa5.js";