@fased/fased 0.1.9 → 0.1.11

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 (293) hide show
  1. package/README.md +7 -5
  2. package/dist/{active-listener-BC05EmaA.js → active-listener-CNrLAfOg.js} +1 -1
  3. package/dist/{agent-scope-DVw8mi_i.js → agent-scope-T2X-I1lP.js} +124 -124
  4. package/dist/{agents-C4jz1huI.js → agents-CMJVD0OP.js} +8 -8
  5. package/dist/{attachment-normalize-C-VpVpLd.js → attachment-normalize-CJ8osx0y.js} +1 -1
  6. package/dist/{attachment-normalize-DijgHIHy.js → attachment-normalize-Dqpm6stW.js} +1 -1
  7. package/dist/{audio-preflight-DLGJBu9O.js → audio-preflight-B2FUM6w4.js} +2 -2
  8. package/dist/{audio-preflight-oqlL2Kux.js → audio-preflight-BaItcO_S.js} +31 -31
  9. package/dist/{audio-preflight-CI7BIPwS.js → audio-preflight-CMBypKf2.js} +2 -2
  10. package/dist/{audio-preflight-U5m63Clr.js → audio-preflight-Cf6hrG6Y.js} +1 -1
  11. package/dist/{audio-preflight-C6Lb4XU1.js → audio-preflight-JNkJegO7.js} +1 -1
  12. package/dist/{audit-DwbVJt3i.js → audit-BjCVaoog.js} +1 -1
  13. package/dist/{audit-BCtx-_dH.js → audit-Dm9_Y9ek.js} +1 -1
  14. package/dist/{auth-DIBzLQ-S.js → auth-CmR3RRfx.js} +5 -5
  15. package/dist/{auth-choice-DOqXUqF_.js → auth-choice-C-sID0RY.js} +1 -1
  16. package/dist/{auth-choice-CEeiz47B.js → auth-choice-DPEogMvC.js} +1 -1
  17. package/dist/{auth-choice-prompt-yqlvFI-_.js → auth-choice-prompt-Cbcp3Ee2.js} +1 -1
  18. package/dist/{auth-choice-prompt-FJDk83bS.js → auth-choice-prompt-CzCpmXZF.js} +1 -1
  19. package/dist/build-info.json +3 -3
  20. package/dist/bundled/boot-md/handler.js +31 -31
  21. package/dist/bundled/bootstrap-extra-files/handler.js +3 -3
  22. package/dist/bundled/command-logger/handler.js +2 -2
  23. package/dist/bundled/session-memory/handler.js +31 -31
  24. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  25. package/dist/{channel-activity-D2IwnDWk.js → channel-activity-C0DEUhUn.js} +1 -1
  26. package/dist/{channel-web-DaircVlX.js → channel-web-BTEzRgur.js} +1 -1
  27. package/dist/{channel-web-CBfPvCCy.js → channel-web-DBR7OGrA.js} +1 -1
  28. package/dist/{channels-DgozxTBh.js → channels-DsRKZ6NL.js} +6 -6
  29. package/dist/{channels-BygboZOV.js → channels-FmXyntMa.js} +6 -6
  30. package/dist/{channels-cli-DNz7gmOI.js → channels-cli-D3X_07NV.js} +5 -5
  31. package/dist/{channels-cli-CY4n5HcO.js → channels-cli-DvmzEcUf.js} +5 -5
  32. package/dist/{chunk-BFGwq8HC.js → chunk-Q3WlKwcl.js} +1 -1
  33. package/dist/cli/daemon-cli.js +1 -1
  34. package/dist/{cli-63C0cETT.js → cli-BvLMhUPA.js} +2 -2
  35. package/dist/{cli-CFgX3wef.js → cli-DMsf3uMe.js} +2 -2
  36. package/dist/{command-registry-DEiX9EPg.js → command-registry-DXN6Gm6U.js} +9 -9
  37. package/dist/{commands-registry-C7qLmjBS.js → commands-registry-CwvSkARW.js} +1 -1
  38. package/dist/{completion-cli-BzQetGgr.js → completion-cli-BakZ-vJj.js} +2 -2
  39. package/dist/{completion-cli-CRwAyWQL.js → completion-cli-is3s-YXN.js} +1 -1
  40. package/dist/{config-cli-CPl1vPz0.js → config-cli-CHZ9egMQ.js} +1 -1
  41. package/dist/{config-cli-C7vsh8Fg.js → config-cli-DTCrEIaK.js} +1 -1
  42. package/dist/{config-eval-CG37crOn.js → config-eval-BMGRKCyr.js} +3 -3
  43. package/dist/{configure-BEI_pe6B.js → configure-AXjfwCbC.js} +12 -12
  44. package/dist/{configure-C8lxNKpB.js → configure-t0_VefWH.js} +12 -12
  45. package/dist/control-ui/assets/app-wpJSg6bV.js.map +1 -1
  46. package/dist/{cron-cli-C7i4-Whp.js → cron-cli-BHTg4HPO.js} +2 -2
  47. package/dist/{cron-cli-BqD_ZSEC.js → cron-cli-DIedHCwY.js} +2 -2
  48. package/dist/{daemon-cli-D0AP3mOg.js → daemon-cli-DUMUVnTJ.js} +1 -1
  49. package/dist/{daemon-cli-DFYzYoB8.js → daemon-cli-lv-0kuHT.js} +1 -1
  50. package/dist/daemon-cli.js +1 -1
  51. package/dist/{deps-D9aJvXyD.js → deps-5PYELVCT.js} +1 -1
  52. package/dist/{deps-ddWLkZAO.js → deps-7Xjk7uTn.js} +1 -1
  53. package/dist/{diagnostic-DWKSfm_q.js → diagnostic-PXNTTbiu.js} +1 -1
  54. package/dist/entry.js +1 -1
  55. package/dist/extensionAPI.js +1 -1
  56. package/dist/{fetch-DyKd0D6V.js → fetch-D6yXePhv.js} +1 -1
  57. package/dist/{fetch-guard-Ztzfiio9.js → fetch-guard-B-XqKRhJ.js} +1 -1
  58. package/dist/{filesystem-manager-9uqWGvqg.js → filesystem-manager-_ccVdKHj.js} +4 -4
  59. package/dist/{fs-safe--dkmYAev.js → fs-safe-CkRcL-Cg.js} +2 -2
  60. package/dist/{gateway-cli-D_Yd_yWi.js → gateway-cli-COUUlBN5.js} +27 -27
  61. package/dist/{gateway-cli-BJkYYsGs.js → gateway-cli-a_LcL_Yi.js} +27 -27
  62. package/dist/{github-copilot-token-DYrFvncE.js → github-copilot-token-eyrRGmGp.js} +8 -8
  63. package/dist/{health-gyJixAyN.js → health-DQlfle1u.js} +2 -2
  64. package/dist/{health-DCFLGVDU.js → health-DZ82kGpi.js} +2 -2
  65. package/dist/{heartbeat-runner-BFUvc4Y_.js → heartbeat-runner-BDe0KJF7.js} +1 -1
  66. package/dist/{heartbeat-runner-Bn9N5npL.js → heartbeat-runner-C2n7G095.js} +1 -1
  67. package/dist/{hooks-cli-BGFJQWmK.js → hooks-cli-8GN0KlvM.js} +3 -3
  68. package/dist/{hooks-cli-CGj2FDai.js → hooks-cli-yMMxy-yo.js} +3 -3
  69. package/dist/index.js +7 -7
  70. package/dist/{internal-yBWuTfFC.js → internal-CtV-S2kE.js} +3 -3
  71. package/dist/{ipv4-CjO0_Ry3.js → ipv4-D1FYQ4Mk.js} +2 -2
  72. package/dist/{ipv4-CBSPFYQB.js → ipv4-DgQOUcwH.js} +2 -2
  73. package/dist/{lifecycle-BBNnNoX_.js → lifecycle-BxdJxsFv.js} +1 -1
  74. package/dist/{lifecycle-DFvIF7r0.js → lifecycle-DUQ2P6lB.js} +1 -1
  75. package/dist/{list.auth-overview-DySKd1cu.js → list.auth-overview-C9QoS2ou.js} +1 -1
  76. package/dist/{list.auth-overview-CpmtoN2D.js → list.auth-overview-CrlYcU_A.js} +1 -1
  77. package/dist/llm-slug-generator.js +31 -31
  78. package/dist/{login-DPlzYTXi.js → login-C4KKxuM4.js} +2 -2
  79. package/dist/{login-qr-c2Drd9vA.js → login-qr-DMxUP87H.js} +3 -3
  80. package/dist/{manager-XJq9ONvb.js → manager-O_PUm8xA.js} +8 -8
  81. package/dist/{markdown-tables-7kI-7mng.js → markdown-tables-QOHpjP76.js} +1 -1
  82. package/dist/{media-D4nEnyX9.js → media-KeWZMCmf.js} +5 -5
  83. package/dist/{memory-search-Z2b0d-jA.js → memory-search-BVlFBMLd.js} +2 -2
  84. package/dist/{model-catalog-DfLJlqO8.js → model-catalog-D4rEoh5e.js} +9 -9
  85. package/dist/{models-cli-DpmciZv6.js → models-cli-C8qP0w3J.js} +5 -5
  86. package/dist/{models-cli-Bu09lWlb.js → models-cli-Cq7UxTbg.js} +4 -4
  87. package/dist/{models-BbfLyMBF.js → models-jVuLblxp.js} +4 -4
  88. package/dist/{node-cli-GbiqR_FY.js → node-cli-DScZRTL7.js} +2 -2
  89. package/dist/{node-cli-D6iG4Fev.js → node-cli-o6uY0qaP.js} +2 -2
  90. package/dist/{onboard-CViA2g_j.js → onboard-Ddf5Pf9K.js} +6 -6
  91. package/dist/{onboard-channels-BeKekf-a.js → onboard-channels-D8ENQiPK.js} +2 -2
  92. package/dist/{onboard-channels-gHaSwzTd.js → onboard-channels-Doc5AjLd.js} +2 -2
  93. package/dist/{onboard-BgU-rNfl.js → onboard-feH8VdPn.js} +6 -6
  94. package/dist/{onboard-search-COuzKj6_.js → onboard-search-DuxAp1aK.js} +5 -5
  95. package/dist/{onboard-search-DkOnHZm9.js → onboard-search-GxWu-SFZ.js} +5 -5
  96. package/dist/{onboarding-nabyJljA.js → onboarding-BR7OHJ2H.js} +100 -63
  97. package/dist/{onboarding-CowfhJUD.js → onboarding-Cxkh1WwH.js} +100 -63
  98. package/dist/{openresponses-http-BBydvP41.js → openresponses-http-BL1pUdQf.js} +2 -2
  99. package/dist/{openresponses-http-D42SXipZ.js → openresponses-http-CzuT0O2I.js} +31 -31
  100. package/dist/{openresponses-http-C66CR36w.js → openresponses-http-DCHdi7mF.js} +2 -2
  101. package/dist/{openresponses-http-CdO4hFg_.js → openresponses-http-DQ3c6n1-.js} +1 -1
  102. package/dist/{openresponses-http-One5KNo8.js → openresponses-http-MJ14c-46.js} +1 -1
  103. package/dist/{outbound-attachment-BnC5ITTB.js → outbound-attachment-DO7UVxZm.js} +2 -2
  104. package/dist/{outbound-vYt3OL7q.js → outbound-nrqaUQPn.js} +6 -6
  105. package/dist/{parent-default-help-82dOtJ5b.js → parent-default-help-BKBeFc1_.js} +1 -1
  106. package/dist/{parent-default-help-iR__S_d8.js → parent-default-help-BRMZI4YX.js} +1 -1
  107. package/dist/{path-alias-guards-BgsaoH-B.js → path-alias-guards-BVcGMct5.js} +1 -1
  108. package/dist/{paths-0bvQb_LS.js → paths-C2qpRqKS.js} +22 -22
  109. package/dist/{pi-embedded-DLEbV2ey.js → pi-embedded-Bqi9f0et.js} +5 -5
  110. package/dist/{pi-embedded-BqhMzKsb.js → pi-embedded-D2PqvAO_.js} +239 -239
  111. package/dist/{pi-model-discovery-DpUv4v_r.js → pi-model-discovery-B1-QPAbn.js} +7 -7
  112. package/dist/pi-model-discovery-runtime-C3EP4IIA.js +5 -0
  113. package/dist/{plugin-registry-DgLnDYKc.js → plugin-registry-CmfUTKxt.js} +1 -1
  114. package/dist/{plugin-registry-DgnprUWu.js → plugin-registry-VukRFBIJ.js} +1 -1
  115. package/dist/plugin-sdk/{active-listener-C5ltqLGu.js → active-listener-DoYouR42.js} +1 -1
  116. package/dist/plugin-sdk/{audio-preflight-B3yRlgpY.js → audio-preflight-CVzfTzWu.js} +29 -29
  117. package/dist/plugin-sdk/{audio-preflight-bl33qm06.js → audio-preflight-CfNG6Wtw.js} +1 -1
  118. package/dist/plugin-sdk/{channel-activity-C1o4f6CQ.js → channel-activity-DO70gTOL.js} +1 -1
  119. package/dist/plugin-sdk/channel-plugin-common.js +1 -1
  120. package/dist/plugin-sdk/{channel-web-BmhttJUt.js → channel-web-DksUuYJT.js} +14 -14
  121. package/dist/plugin-sdk/{chunk-CLhP_PY2.js → chunk-RXEaIS7Q.js} +1 -1
  122. package/dist/plugin-sdk/command-status.js +1 -1
  123. package/dist/plugin-sdk/{commands-registry-rxhYCn3h.js → commands-registry-Cc-MsC0s.js} +1 -1
  124. package/dist/plugin-sdk/{diagnostic-B18Fb_x_.js → diagnostic-B49XKTb2.js} +1 -1
  125. package/dist/plugin-sdk/{fetch-IDUrNG4h.js → fetch-5yC4s4HB.js} +1 -1
  126. package/dist/plugin-sdk/{fetch-guard-CNvu0czC.js → fetch-guard-D-xE9VSj.js} +1 -1
  127. package/dist/plugin-sdk/{filesystem-manager-BeVVhJWO.js → filesystem-manager-CJboYM0S.js} +3 -3
  128. package/dist/plugin-sdk/{fs-safe-DQ3_54XI.js → fs-safe-UcucKJic.js} +2 -2
  129. package/dist/plugin-sdk/index.js +34 -34
  130. package/dist/plugin-sdk/{internal-B5WwMXvo.js → internal-BPIA30Uo.js} +1 -1
  131. package/dist/plugin-sdk/{ir-wu6kjYKs.js → ir-DChJP1Kb.js} +4 -4
  132. package/dist/plugin-sdk/{login-D4XFYPCP.js → login-Blc_5Mfx.js} +2 -2
  133. package/dist/plugin-sdk/{login-qr-B9DNJMzT.js → login-qr-BQz8yyAp.js} +2 -2
  134. package/dist/plugin-sdk/{manager-DosJYKNm.js → manager-E2u7eTdN.js} +5 -5
  135. package/dist/plugin-sdk/{markdown-tables-BPDFC99a.js → markdown-tables-nBLwWu-q.js} +1 -1
  136. package/dist/plugin-sdk/{memory-search-BRc1w0pH.js → memory-search-BMfxsZst.js} +1 -1
  137. package/dist/plugin-sdk/{openresponses-http-BkfMH5vT.js → openresponses-http-DFcst5ak.js} +29 -29
  138. package/dist/plugin-sdk/{openresponses-http-DVsmkLyj.js → openresponses-http-G9zNQzxR.js} +1 -1
  139. package/dist/plugin-sdk/{outbound-DPWNpSQ2.js → outbound-D3S8AyO5.js} +6 -6
  140. package/dist/plugin-sdk/{outbound-attachment-sc88JFtf.js → outbound-attachment-Jnv1CNZB.js} +2 -2
  141. package/dist/plugin-sdk/{path-alias-guards-DVDPpKaI.js → path-alias-guards-B4FeK1hV.js} +1 -1
  142. package/dist/plugin-sdk/{paths-DPJkB1Zo.js → paths-DfSR5y6m.js} +2 -2
  143. package/dist/plugin-sdk/{pi-model-discovery-Bt88hotH.js → pi-model-discovery-CPfojvUt.js} +1 -1
  144. package/dist/plugin-sdk/{pi-model-discovery-runtime-C_BkP4_p.js → pi-model-discovery-runtime-BtVqhePh.js} +2 -2
  145. package/dist/plugin-sdk/{pi-model-discovery-runtime-Cv_H-NDs.js → pi-model-discovery-runtime-CddkbYKA.js} +1 -1
  146. package/dist/plugin-sdk/{pw-ai-z7u9z0Gl.js → pw-ai-Cy5GL4BO.js} +4 -4
  147. package/dist/plugin-sdk/{qmd-manager-CR7ZrE4D.js → qmd-manager-DTLLD9QF.js} +4 -4
  148. package/dist/plugin-sdk/{qmd-scope-D5pfYpTx.js → qmd-scope-0JoQj00s.js} +1 -1
  149. package/dist/plugin-sdk/{query-expansion-DMIckuk2.js → query-expansion-bWgC9vRe.js} +2 -2
  150. package/dist/plugin-sdk/{registry-Dpq_OloZ.js → registry-BhjWgT6A.js} +8 -8
  151. package/dist/plugin-sdk/{replies-ChLqx77a.js → replies-BbDYqvSQ.js} +2 -2
  152. package/dist/plugin-sdk/{reply-ceu7kXX1.js → reply-DvuHwHUJ.js} +67 -67
  153. package/dist/plugin-sdk/{reply-prefix-BMlximgi.js → reply-prefix-Zqi6lY5T.js} +1 -1
  154. package/dist/plugin-sdk/{resolve-outbound-target-CzHPZvQ9.js → resolve-outbound-target-B8kZ51TY.js} +2 -2
  155. package/dist/plugin-sdk/{resolve-route-DlUpOg3_.js → resolve-route-DR2HJZkT.js} +1 -1
  156. package/dist/plugin-sdk/{runtime-x71O5s-N.js → runtime-45bZMjLH.js} +8 -8
  157. package/dist/plugin-sdk/{send-DY9n8pqC.js → send-BWTZZs_g.js} +7 -7
  158. package/dist/plugin-sdk/{send-DBVp3j7m.js → send-BtnKV_Vt.js} +5 -5
  159. package/dist/plugin-sdk/{send-DEQVHEZ4.js → send-DES1Q84z.js} +5 -5
  160. package/dist/plugin-sdk/{send-Ba0KNbhf.js → send-WNg2lRih.js} +4 -4
  161. package/dist/plugin-sdk/{send-BhMMKWOk.js → send-mGgg18UE.js} +7 -7
  162. package/dist/plugin-sdk/{session-BsRPv-eK.js → session-CgkSjr1g.js} +1 -1
  163. package/dist/plugin-sdk/{skill-commands-BctYBY9Z.js → skill-commands-mVqbX-Fs.js} +5 -5
  164. package/dist/plugin-sdk/src/brand.d.ts +2 -2
  165. package/dist/plugin-sdk/{status-BcZw5R2P.js → status-6xupAoj-.js} +5 -5
  166. package/dist/plugin-sdk/{tables-CBeKgNEN.js → tables-BHylyCNS.js} +1 -1
  167. package/dist/plugin-sdk/{target-errors-B4PsZKb0.js → target-errors-Boue6hd3.js} +2 -2
  168. package/dist/plugin-sdk/{tool-loop-detection-XlSYI5bB.js → tool-loop-detection-BxnMJJ7B.js} +1 -1
  169. package/dist/plugin-sdk/{web-DE0yQyjF.js → web-Cfri_iT8.js} +1 -1
  170. package/dist/plugin-sdk/web-Zyzl7IW6.js +40 -0
  171. package/dist/plugin-sdk/{whatsapp-actions-CSxYzpeM.js → whatsapp-actions-DJ5x-Sd_.js} +12 -12
  172. package/dist/{plugins-cli-gUow1y1s.js → plugins-cli-Bx0H7QQU.js} +5 -5
  173. package/dist/{plugins-cli-Bw8rkcLm.js → plugins-cli-HReUJLnn.js} +5 -5
  174. package/dist/{program-D7MpzAVA.js → program-BY3EZa_c.js} +7 -7
  175. package/dist/{program-context-BnMmmcLR.js → program-context-MZAw4oo8.js} +24 -24
  176. package/dist/{prompt-select-styled-DEZExK7l.js → prompt-select-styled-BasY5XsH.js} +4 -4
  177. package/dist/{prompt-select-styled-CZx9cLwR.js → prompt-select-styled-DBq1-yGB.js} +4 -4
  178. package/dist/{pw-ai-DAn5Q5Mg.js → pw-ai-D6C45ed-.js} +5 -5
  179. package/dist/{qmd-manager-BQu_lmJ6.js → qmd-manager--NffQxNh.js} +5 -5
  180. package/dist/{qmd-scope-Bv2HOfhX.js → qmd-scope-BgLcDW_Q.js} +1 -1
  181. package/dist/{query-expansion-LNmYRPvI.js → query-expansion-BW1RomSn.js} +2 -2
  182. package/dist/{register.agent-B9A7SDz_.js → register.agent-C7oqvzMO.js} +8 -8
  183. package/dist/{register.agent-DlatKWlA.js → register.agent-DPvilSbD.js} +9 -9
  184. package/dist/{register.configure-yNuOFQX6.js → register.configure-CmawJCq8.js} +12 -12
  185. package/dist/{register.configure-Tez2eNbW.js → register.configure-Jq4rlEpZ.js} +12 -12
  186. package/dist/{register.maintenance-BzVw1_e5.js → register.maintenance-DauG5FhL.js} +9 -9
  187. package/dist/{register.maintenance-Q6YI5mk9.js → register.maintenance-Db7KY5qy.js} +8 -8
  188. package/dist/{register.message-Cda69Xe6.js → register.message-B5itvC4t.js} +3 -3
  189. package/dist/{register.message-D9LYOvON.js → register.message-Cy9ynm9n.js} +3 -3
  190. package/dist/{register.onboard-BoLP06ui.js → register.onboard-BRtEN2AH.js} +14 -14
  191. package/dist/{register.onboard-D1a2rQDh.js → register.onboard-DQVkAX4S.js} +14 -14
  192. package/dist/{register.setup-DhppZhR2.js → register.setup-BJtgWkaG.js} +14 -14
  193. package/dist/{register.setup-D_qD7Gvk.js → register.setup-WqEzZMCR.js} +14 -14
  194. package/dist/{register.status-health-sessions-Csah3svc.js → register.status-health-sessions-CRLl-Xg2.js} +6 -6
  195. package/dist/{register.status-health-sessions-C0IsjCxS.js → register.status-health-sessions-CYft6R-u.js} +6 -6
  196. package/dist/{register.subclis-C4Dh6aQK.js → register.subclis-Di9x-uQJ.js} +16 -16
  197. package/dist/{replies-D0__mn7d.js → replies-lgWzXlwM.js} +2 -2
  198. package/dist/{reply-C3PsVpeQ.js → reply-CBhrmRrH.js} +9 -9
  199. package/dist/{reply-prefix-CteprwTK.js → reply-prefix-BM90m-1s.js} +1 -1
  200. package/dist/{resolve-route-Twc4mQV7.js → resolve-route-DyTOJJs4.js} +1 -1
  201. package/dist/{run-main-XXpwNNGn.js → run-main-BORzDxLY.js} +14 -14
  202. package/dist/{runtime-helper-grants-C10OJEih.js → runtime-helper-grants-Cuybmi1P.js} +1 -1
  203. package/dist/{runtime-helper-grants-BTCk3CzW.js → runtime-helper-grants-neC-6Mp_.js} +1 -1
  204. package/dist/{sandbox-cli-2MuBwFbv.js → sandbox-cli-BAfTtJI-.js} +2 -2
  205. package/dist/{sandbox-cli-Bft002rK.js → sandbox-cli-ZEYXtCXZ.js} +2 -2
  206. package/dist/{security-cli-6CmGeQ7I.js → security-cli-CFmeNE3e.js} +3 -3
  207. package/dist/{security-cli-DpQep_pt.js → security-cli-aO7V40WP.js} +3 -3
  208. package/dist/{send-BVmNzYrR.js → send-B8seeqjd.js} +18 -18
  209. package/dist/{send-BG45zdAY.js → send-BPleg3km.js} +5 -5
  210. package/dist/{send-BAtDZt7a.js → send-CAqldeiP.js} +5 -5
  211. package/dist/{send-DD6K3WP6.js → send-D63evlEI.js} +7 -7
  212. package/dist/{send-6RE7ZD_B.js → send-M0lHXvC5.js} +4 -4
  213. package/dist/{server-OidOCKoj.js → server-CU9N0zVA.js} +2 -2
  214. package/dist/{server-D62kYBqw.js → server-DtSfJaMU.js} +2 -2
  215. package/dist/{server-cron--g6K0O5V.js → server-cron-3feKZet8.js} +2 -2
  216. package/dist/{server-cron-DYKXfeLU.js → server-cron-B8nnjZ6j.js} +2 -2
  217. package/dist/{server-node-events-Csbl1Sw5.js → server-node-events-D4wjAoTI.js} +3 -3
  218. package/dist/{server-node-events-DSvH0zky.js → server-node-events-dJRsvJ1e.js} +3 -3
  219. package/dist/{session-CHL2ptKy.js → session-Cvg_ryor.js} +5 -5
  220. package/dist/{skill-commands-_zLgADck.js → skill-commands-D_QLBtje.js} +24 -24
  221. package/dist/{status-cY8_nNEN.js → status-B6xlt9hk.js} +1 -1
  222. package/dist/{status-DDWMOp5e.js → status-CKesh_zv.js} +4 -4
  223. package/dist/{status-CEqTBWFX.js → status-DsryVrZZ.js} +4 -4
  224. package/dist/{status-e52jwOFE.js → status-WM2U3wSq.js} +1 -1
  225. package/dist/{tables-Dtfop_e5.js → tables-Cif1OeQ1.js} +1 -1
  226. package/dist/{target-errors-DrHV8jza.js → target-errors-B-8Jf9OT.js} +2 -2
  227. package/dist/{tool-loop-detection-CPr-VVyD.js → tool-loop-detection-6p0-ziTi.js} +2 -2
  228. package/dist/{tui-K3OJBQvo.js → tui-C_15rImY.js} +1 -1
  229. package/dist/{tui-cli-DEHMUby1.js → tui-cli-CJ4ktGm6.js} +3 -3
  230. package/dist/{tui-cli-CNL0cM4e.js → tui-cli-Cf4QMwPG.js} +3 -3
  231. package/dist/{tui-B5xfA4bO.js → tui-m7pkF_Gw.js} +1 -1
  232. package/dist/{update-cli-Cr7BTqe1.js → update-cli-BdyzhH15.js} +9 -9
  233. package/dist/{update-cli-BqiZ9j4m.js → update-cli-CpVUWYIh.js} +10 -10
  234. package/dist/{update-runner-DcpjVgBR.js → update-runner-Cp2KspVC.js} +1 -1
  235. package/dist/{update-runner-CycjY65W.js → update-runner-polOgbQK.js} +1 -1
  236. package/dist/{web-ChgN9rvX.js → web-BK0Q-Mcx.js} +3 -3
  237. package/dist/{web-CLOmxVxX.js → web-Bd_VJKf7.js} +1 -1
  238. package/dist/{web-DhwWGdvc.js → web-CD6MuZp1.js} +35 -35
  239. package/dist/{web-D6CU81WZ.js → web-CnMZHMVF.js} +1 -1
  240. package/dist/{web-6MnkoZyD.js → web-CnS-eVr9.js} +3 -3
  241. package/dist/{web-search-providers.runtime-u6_OyUd6.js → web-search-providers.runtime-C0_Og2wh.js} +1 -1
  242. package/dist/{web-search-providers.runtime-D-uepqZ5.js → web-search-providers.runtime-kvogieHw.js} +1 -1
  243. package/dist/{whatsapp-actions-C5qguyU5.js → whatsapp-actions-BAux9gs7.js} +12 -12
  244. package/docs/install/index.md +16 -10
  245. package/docs/install/installer.md +18 -9
  246. package/docs/install/node.md +5 -4
  247. package/docs/install/vps.md +7 -3
  248. package/extensions/acpx/package.json +1 -1
  249. package/extensions/bluebubbles/package.json +1 -1
  250. package/extensions/copilot-proxy/package.json +1 -1
  251. package/extensions/diagnostics-otel/package.json +1 -1
  252. package/extensions/discord/package.json +1 -1
  253. package/extensions/fased-federation/package.json +1 -1
  254. package/extensions/feishu/package.json +1 -1
  255. package/extensions/google-gemini-cli-auth/package.json +1 -1
  256. package/extensions/googlechat/package.json +1 -1
  257. package/extensions/imessage/package.json +1 -1
  258. package/extensions/irc/package.json +1 -1
  259. package/extensions/line/package.json +1 -1
  260. package/extensions/llm-task/package.json +1 -1
  261. package/extensions/lobster/package.json +1 -1
  262. package/extensions/matrix/CHANGELOG.md +6 -0
  263. package/extensions/matrix/package.json +1 -1
  264. package/extensions/mattermost/package.json +1 -1
  265. package/extensions/memory-core/package.json +1 -1
  266. package/extensions/memory-lancedb/package.json +1 -1
  267. package/extensions/minimax-portal-auth/package.json +1 -1
  268. package/extensions/msteams/CHANGELOG.md +6 -0
  269. package/extensions/msteams/package.json +1 -1
  270. package/extensions/nextcloud-talk/package.json +1 -1
  271. package/extensions/nostr/CHANGELOG.md +6 -0
  272. package/extensions/nostr/package.json +1 -1
  273. package/extensions/open-prose/package.json +1 -1
  274. package/extensions/sat-mining/package.json +1 -1
  275. package/extensions/signal/package.json +1 -1
  276. package/extensions/slack/package.json +1 -1
  277. package/extensions/synology-chat/package.json +1 -1
  278. package/extensions/telegram/package.json +1 -1
  279. package/extensions/tlon/package.json +1 -1
  280. package/extensions/twitch/CHANGELOG.md +6 -0
  281. package/extensions/twitch/package.json +1 -1
  282. package/extensions/voice-call/CHANGELOG.md +6 -0
  283. package/extensions/voice-call/package.json +1 -1
  284. package/extensions/whatsapp/package.json +1 -1
  285. package/extensions/zalo/CHANGELOG.md +6 -0
  286. package/extensions/zalo/package.json +1 -1
  287. package/extensions/zalouser/CHANGELOG.md +6 -0
  288. package/extensions/zalouser/package.json +1 -1
  289. package/package.json +3 -1
  290. package/scripts/run-node.mjs +294 -0
  291. package/scripts/start-managed.sh +1551 -0
  292. package/dist/pi-model-discovery-runtime-9_2G9r_K.js +0 -5
  293. package/dist/plugin-sdk/web-D_ze88LT.js +0 -40
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/telegram",
3
- "version": "0.1.8",
3
+ "version": "0.1.11",
4
4
  "private": true,
5
5
  "description": "FasedAgent Telegram channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/tlon",
3
- "version": "0.1.8",
3
+ "version": "0.1.11",
4
4
  "description": "FasedAgent Tlon/Urbit channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.11
4
+
5
+ ### Changes
6
+
7
+ - Version alignment with core FasedAgent release numbers.
8
+
3
9
  ## 0.1.8
4
10
 
5
11
  ### Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/twitch",
3
- "version": "0.1.8",
3
+ "version": "0.1.11",
4
4
  "description": "FasedAgent Twitch channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.11
4
+
5
+ ### Changes
6
+
7
+ - Version alignment with core FasedAgent release numbers.
8
+
3
9
  ## 0.1.8
4
10
 
5
11
  ### Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/voice-call",
3
- "version": "0.1.8",
3
+ "version": "0.1.11",
4
4
  "description": "FasedAgent voice-call plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/whatsapp",
3
- "version": "0.1.8",
3
+ "version": "0.1.11",
4
4
  "private": true,
5
5
  "description": "FasedAgent WhatsApp channel plugin",
6
6
  "type": "module",
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.11
4
+
5
+ ### Changes
6
+
7
+ - Version alignment with core FasedAgent release numbers.
8
+
3
9
  ## 0.1.8
4
10
 
5
11
  ### Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/zalo",
3
- "version": "0.1.8",
3
+ "version": "0.1.11",
4
4
  "description": "FasedAgent Zalo channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.11
4
+
5
+ ### Changes
6
+
7
+ - Version alignment with core FasedAgent release numbers.
8
+
3
9
  ## 0.1.8
4
10
 
5
11
  ### Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/zalouser",
3
- "version": "0.1.8",
3
+ "version": "0.1.11",
4
4
  "description": "FasedAgent Zalo Personal Account plugin via zca-cli",
5
5
  "type": "module",
6
6
  "dependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fased/fased",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "Fased Agent self-hosted AI gateway with channels, tools, plugins, and operator modules",
5
5
  "keywords": [
6
6
  "ai-agent",
@@ -38,6 +38,8 @@
38
38
  "docs/",
39
39
  "extensions/",
40
40
  "scripts/fased-launcher-runtime.mjs",
41
+ "scripts/run-node.mjs",
42
+ "scripts/start-managed.sh",
41
43
  "skills/"
42
44
  ],
43
45
  "type": "module",
@@ -0,0 +1,294 @@
1
+ #!/usr/bin/env node
2
+ import { spawn, spawnSync } from "node:child_process";
3
+ import fs from "node:fs";
4
+ import path from "node:path";
5
+ import process from "node:process";
6
+ import { fileURLToPath, pathToFileURL } from "node:url";
7
+
8
+ const compiler = "tsdown";
9
+ const compilerArgs = ["exec", compiler, "--no-clean"];
10
+
11
+ export const runNodeWatchedPaths = ["src", "extensions", "tsconfig.json", "package.json"];
12
+ const scriptDir = path.dirname(fileURLToPath(import.meta.url));
13
+ const defaultRunnerCwd = path.resolve(scriptDir, "..");
14
+
15
+ const statMtime = (filePath, fsImpl = fs) => {
16
+ try {
17
+ return fsImpl.statSync(filePath).mtimeMs;
18
+ } catch {
19
+ return null;
20
+ }
21
+ };
22
+
23
+ const isExcludedSource = (filePath, srcRoot) => {
24
+ const relativePath = path.relative(srcRoot, filePath);
25
+ if (relativePath.startsWith("..")) {
26
+ return false;
27
+ }
28
+ return (
29
+ relativePath.endsWith(".test.ts") ||
30
+ relativePath.endsWith(".test.tsx") ||
31
+ relativePath.endsWith(`test-helpers.ts`)
32
+ );
33
+ };
34
+
35
+ const findLatestMtime = (dirPath, shouldSkip, deps) => {
36
+ let latest = null;
37
+ const queue = [dirPath];
38
+ while (queue.length > 0) {
39
+ const current = queue.pop();
40
+ if (!current) {
41
+ continue;
42
+ }
43
+ let entries = [];
44
+ try {
45
+ entries = deps.fs.readdirSync(current, { withFileTypes: true });
46
+ } catch {
47
+ continue;
48
+ }
49
+ for (const entry of entries) {
50
+ const fullPath = path.join(current, entry.name);
51
+ if (entry.isDirectory()) {
52
+ queue.push(fullPath);
53
+ continue;
54
+ }
55
+ if (!entry.isFile()) {
56
+ continue;
57
+ }
58
+ if (shouldSkip?.(fullPath)) {
59
+ continue;
60
+ }
61
+ const mtime = statMtime(fullPath, deps.fs);
62
+ if (mtime == null) {
63
+ continue;
64
+ }
65
+ if (latest == null || mtime > latest) {
66
+ latest = mtime;
67
+ }
68
+ }
69
+ }
70
+ return latest;
71
+ };
72
+
73
+ const runGit = (gitArgs, deps) => {
74
+ try {
75
+ const result = deps.spawnSync("git", gitArgs, {
76
+ cwd: deps.cwd,
77
+ encoding: "utf8",
78
+ stdio: ["ignore", "pipe", "ignore"],
79
+ });
80
+ if (result.status !== 0) {
81
+ return null;
82
+ }
83
+ return (result.stdout ?? "").trim();
84
+ } catch {
85
+ return null;
86
+ }
87
+ };
88
+
89
+ const resolveGitHead = (deps) => {
90
+ const head = runGit(["rev-parse", "HEAD"], deps);
91
+ return head || null;
92
+ };
93
+
94
+ const hasDirtySourceTree = (deps) => {
95
+ const output = runGit(
96
+ ["status", "--porcelain", "--untracked-files=normal", "--", ...runNodeWatchedPaths],
97
+ deps,
98
+ );
99
+ if (output === null) {
100
+ return null;
101
+ }
102
+ return output.length > 0;
103
+ };
104
+
105
+ const readBuildStamp = (deps) => {
106
+ const mtime = statMtime(deps.buildStampPath, deps.fs);
107
+ if (mtime == null) {
108
+ return { mtime: null, head: null };
109
+ }
110
+ try {
111
+ const raw = deps.fs.readFileSync(deps.buildStampPath, "utf8").trim();
112
+ if (!raw.startsWith("{")) {
113
+ return { mtime, head: null };
114
+ }
115
+ const parsed = JSON.parse(raw);
116
+ const head = typeof parsed?.head === "string" && parsed.head.trim() ? parsed.head.trim() : null;
117
+ return { mtime, head };
118
+ } catch {
119
+ return { mtime, head: null };
120
+ }
121
+ };
122
+
123
+ const findLatestWatchedMtime = (deps) => {
124
+ let latest = null;
125
+ for (const watchedPath of runNodeWatchedPaths) {
126
+ const fullPath = path.join(deps.cwd, watchedPath);
127
+ let stat = null;
128
+ try {
129
+ stat = deps.fs.statSync(fullPath);
130
+ } catch {
131
+ continue;
132
+ }
133
+ const mtime = stat.isDirectory()
134
+ ? findLatestMtime(fullPath, (candidate) => isExcludedSource(candidate, fullPath), deps)
135
+ : stat.mtimeMs;
136
+ if (mtime == null) {
137
+ continue;
138
+ }
139
+ if (latest == null || mtime > latest) {
140
+ latest = mtime;
141
+ }
142
+ }
143
+ return latest;
144
+ };
145
+
146
+ const hasWatchedMtimeChanged = (stampMtime, deps) => {
147
+ const watchedMtime = findLatestWatchedMtime(deps);
148
+ return watchedMtime != null && watchedMtime > stampMtime;
149
+ };
150
+
151
+ const shouldBuild = (deps) => {
152
+ if (deps.env.FASED_SKIP_BUILD === "1") {
153
+ return false;
154
+ }
155
+ if (deps.env.FASED_FORCE_BUILD === "1") {
156
+ return true;
157
+ }
158
+ const stamp = readBuildStamp(deps);
159
+ if (stamp.mtime == null) {
160
+ return true;
161
+ }
162
+ if (statMtime(deps.distEntry, deps.fs) == null) {
163
+ return true;
164
+ }
165
+
166
+ for (const filePath of deps.configFiles) {
167
+ const mtime = statMtime(filePath, deps.fs);
168
+ if (mtime != null && mtime > stamp.mtime) {
169
+ return true;
170
+ }
171
+ }
172
+
173
+ const currentHead = resolveGitHead(deps);
174
+ if (currentHead && !stamp.head) {
175
+ return hasWatchedMtimeChanged(stamp.mtime, deps);
176
+ }
177
+ if (currentHead && stamp.head && currentHead !== stamp.head) {
178
+ return hasWatchedMtimeChanged(stamp.mtime, deps);
179
+ }
180
+ if (currentHead) {
181
+ const dirty = hasDirtySourceTree(deps);
182
+ if (dirty === true) {
183
+ return hasWatchedMtimeChanged(stamp.mtime, deps);
184
+ }
185
+ if (dirty === false) {
186
+ return false;
187
+ }
188
+ }
189
+
190
+ if (hasWatchedMtimeChanged(stamp.mtime, deps)) {
191
+ return true;
192
+ }
193
+ return false;
194
+ };
195
+
196
+ const logRunner = (message, deps) => {
197
+ if (deps.env.FASED_RUNNER_LOG === "0") {
198
+ return;
199
+ }
200
+ deps.stderr.write(`[fased] ${message}\n`);
201
+ };
202
+
203
+ const shouldUseJsonOnlyOutput = (args) => args.includes("--json");
204
+
205
+ const runFasedAgent = async (deps) => {
206
+ const nodeProcess = deps.spawn(deps.execPath, ["fased.mjs", ...deps.args], {
207
+ cwd: deps.cwd,
208
+ env: deps.env,
209
+ stdio: "inherit",
210
+ });
211
+ const res = await new Promise((resolve) => {
212
+ nodeProcess.on("exit", (exitCode, exitSignal) => {
213
+ resolve({ exitCode, exitSignal });
214
+ });
215
+ });
216
+ if (res.exitSignal) {
217
+ return 1;
218
+ }
219
+ return res.exitCode ?? 1;
220
+ };
221
+
222
+ const writeBuildStamp = (deps) => {
223
+ try {
224
+ deps.fs.mkdirSync(deps.distRoot, { recursive: true });
225
+ const stamp = {
226
+ builtAt: Date.now(),
227
+ head: resolveGitHead(deps),
228
+ };
229
+ deps.fs.writeFileSync(deps.buildStampPath, `${JSON.stringify(stamp)}\n`);
230
+ } catch (error) {
231
+ // Best-effort stamp; still allow the runner to start.
232
+ logRunner(`Failed to write build stamp: ${error?.message ?? "unknown error"}`, deps);
233
+ }
234
+ };
235
+
236
+ export async function runNodeMain(params = {}) {
237
+ const deps = {
238
+ spawn: params.spawn ?? spawn,
239
+ spawnSync: params.spawnSync ?? spawnSync,
240
+ fs: params.fs ?? fs,
241
+ stderr: params.stderr ?? process.stderr,
242
+ execPath: params.execPath ?? process.execPath,
243
+ cwd: params.cwd ?? defaultRunnerCwd,
244
+ args: params.args ?? process.argv.slice(2),
245
+ env: params.env ? { ...params.env } : { ...process.env },
246
+ platform: params.platform ?? process.platform,
247
+ };
248
+
249
+ deps.distRoot = path.join(deps.cwd, "dist");
250
+ deps.distEntry = path.join(deps.distRoot, "/entry.js");
251
+ deps.buildStampPath = path.join(deps.distRoot, ".buildstamp");
252
+ deps.srcRoot = path.join(deps.cwd, "src");
253
+ deps.configFiles = [path.join(deps.cwd, "tsconfig.json"), path.join(deps.cwd, "package.json")];
254
+
255
+ if (!shouldBuild(deps)) {
256
+ return await runFasedAgent(deps);
257
+ }
258
+
259
+ logRunner("Building TypeScript (dist is stale).", deps);
260
+ const buildCmd = deps.platform === "win32" ? "cmd.exe" : "pnpm";
261
+ const buildArgs =
262
+ deps.platform === "win32" ? ["/d", "/s", "/c", "pnpm", ...compilerArgs] : compilerArgs;
263
+ const buildStdio = shouldUseJsonOnlyOutput(deps.args) ? ["ignore", "pipe", "pipe"] : "inherit";
264
+ const build = deps.spawn(buildCmd, buildArgs, {
265
+ cwd: deps.cwd,
266
+ env: deps.env,
267
+ stdio: buildStdio,
268
+ });
269
+ if (buildStdio !== "inherit") {
270
+ build.stdout?.on("data", (chunk) => deps.stderr.write(chunk));
271
+ build.stderr?.on("data", (chunk) => deps.stderr.write(chunk));
272
+ }
273
+
274
+ const buildRes = await new Promise((resolve) => {
275
+ build.on("exit", (exitCode, exitSignal) => resolve({ exitCode, exitSignal }));
276
+ });
277
+ if (buildRes.exitSignal) {
278
+ return 1;
279
+ }
280
+ if (buildRes.exitCode !== 0 && buildRes.exitCode !== null) {
281
+ return buildRes.exitCode;
282
+ }
283
+ writeBuildStamp(deps);
284
+ return await runFasedAgent(deps);
285
+ }
286
+
287
+ if (import.meta.url === pathToFileURL(process.argv[1] ?? "").href) {
288
+ void runNodeMain()
289
+ .then((code) => process.exit(code))
290
+ .catch((err) => {
291
+ console.error(err);
292
+ process.exit(1);
293
+ });
294
+ }