@gguf/claw 2026.2.4 → 2026.2.5

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 (616) hide show
  1. package/CHANGELOG.md +50 -1
  2. package/LICENSE +1 -1
  3. package/README.md +50 -43
  4. package/dist/{accounts-BlHoTziG.js → accounts-BgZmhIm6.js} +4 -4
  5. package/dist/{accounts-B5QZU96b.js → accounts-Dto4p9zB.js} +2 -2
  6. package/dist/{acp-cli-DU_cVWbN.js → acp-cli-BOKabdeW.js} +15 -15
  7. package/dist/{acp-cli-O8LcQigE.js → acp-cli-BwcHtBDk.js} +19 -19
  8. package/dist/{agent-BBI-UGkN.js → agent-DztWhVCH.js} +20 -13
  9. package/dist/{agent-DuQt3QDO.js → agent-_H-0rbHV.js} +21 -14
  10. package/dist/{agent-scope-jm0ZdXwM.js → agent-scope-C9VjJXEK.js} +5 -180
  11. package/dist/{agent-scope-CrgUOY3f.js → agent-scope-CMs5Y7l-.js} +6 -181
  12. package/dist/{agent-scope-COnICB_7.js → agent-scope-Csu2B6AM.js} +2 -2
  13. package/dist/{audit-D-OqdjQu.js → audit-BWbjQmyv.js} +182 -15
  14. package/dist/{audit-CWGOX7Eh.js → audit-ZY6Dk5Ec.js} +183 -16
  15. package/dist/{auth-viF_w60n.js → auth-CbhB03Rz.js} +2 -2
  16. package/dist/{auth-DK3l201_.js → auth-DksjO6WG.js} +2 -2
  17. package/dist/{auth-health-DcKoxhDo.js → auth-health-C4bElkgf.js} +1 -1
  18. package/dist/{auth-health-Ba9GTScq.js → auth-health-Ctf-_JFE.js} +1 -1
  19. package/dist/{auth-profiles-CfFGCDJa.js → auth-profiles-CYBuGiBb.js} +38 -13
  20. package/dist/build-info.json +2 -2
  21. package/dist/{call-CfqL-4Nc.js → call-90HgQQ8o.js} +34 -8
  22. package/dist/{call-CPBhMXxo.js → call-BTbA5OB4.js} +35 -9
  23. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  24. package/dist/canvas-host/a2ui/a2ui.bundle.js +29 -44
  25. package/dist/{channel-options-eRR8_a8h.js → channel-options-DrUmtdd9.js} +3 -3
  26. package/dist/{channel-options-BCSvD6JM.js → channel-options-uftAnT5P.js} +7 -7
  27. package/dist/{channel-selection-BAwiO0li.js → channel-selection-CJWYmCLf.js} +2 -2
  28. package/dist/{channel-selection-BCn8_qun.js → channel-selection-PZuuCvrp.js} +2 -2
  29. package/dist/{channel-summary-BkqO8zZ9.js → channel-summary-D9nzC5WB.js} +8 -42
  30. package/dist/{channel-summary-C8GoEKgH.js → channel-summary-DUiKDBLv.js} +9 -43
  31. package/dist/{channels-cli-CBGINubh.js → channels-cli-PAlqhOZ7.js} +56 -54
  32. package/dist/{channels-cli-yQo-Rzw6.js → channels-cli-PPk5wwuy.js} +59 -57
  33. package/dist/{channels-status-issues-C9vMMPG0.js → channels-status-issues-CJ8PJgDc.js} +1 -1
  34. package/dist/{channels-status-issues-DRXQXvhY.js → channels-status-issues-CrS1r5sr.js} +1 -1
  35. package/dist/{chrome-DlqPCh1y.js → chrome-B3IuUad-.js} +2 -2
  36. package/dist/{chrome-D2LUApAY.js → chrome-BNSd7Bie.js} +5 -5
  37. package/dist/{clack-prompter-OmDa1Hm1.js → clack-prompter-CEKDd_Vg.js} +5 -5
  38. package/dist/{clack-prompter-BJuVh97L.js → clack-prompter-DuBVnTKy.js} +4 -4
  39. package/dist/cli/daemon-cli.js +1 -1
  40. package/dist/cli-DBAccB3n.js +86 -0
  41. package/dist/cli-DD5dW58-.js +89 -0
  42. package/dist/{client-zqMhLTAX.js → client-BYVbRnuQ.js} +13 -5
  43. package/dist/{client-cU7Xg1MO.js → client-CxbkcEZ7.js} +12 -4
  44. package/dist/{command-options-51bBgSJL.js → command-options-DUUINcz0.js} +3 -3
  45. package/dist/{commands-DMKDOFmC.js → commands-DAC7XMAT.js} +5 -4
  46. package/dist/completion-cli-BPIeQDFy.js +773 -0
  47. package/dist/{completion-cli-BoF86Oeq.js → completion-cli-BbhA_JbG.js} +62 -15
  48. package/dist/{config-qgIz1lbh.js → config-CAuZ-EkU.js} +93 -31
  49. package/dist/{config-CGsoho7J.js → config-CG73z4h6.js} +61 -28
  50. package/dist/{config-DCT1RAo6.js → config-CKLedg5Y.js} +92 -30
  51. package/dist/{config-guard-CJuPkD5Y.js → config-guard-a5ynrKd-.js} +181 -57
  52. package/dist/{configure-C1_0rFdQ.js → configure-B47GYdlB.js} +33 -23
  53. package/dist/{configure-D0OAmW2s.js → configure-ChnTy7Jz.js} +31 -21
  54. package/dist/{control-service-BW5sW2U1.js → control-service-CS61Road.js} +13 -6
  55. package/dist/{control-service-Ds9ompnU.js → control-service-D2E9NKqQ.js} +12 -5
  56. package/dist/control-ui/assets/{index-RwcW4Xl0.css → index-BoXosYY6.css} +1 -1
  57. package/dist/control-ui/assets/index-Dm6g1E26.js +7553 -0
  58. package/dist/control-ui/assets/index-Dm6g1E26.js.map +1 -0
  59. package/dist/control-ui/index.html +2 -2
  60. package/dist/{cron-cli-Bn_e3WGb.js → cron-cli-CssI71-c.js} +20 -19
  61. package/dist/{cron-cli-BVARiNrv.js → cron-cli-Ys53MyTg.js} +24 -23
  62. package/dist/{daemon-cli-fHXAapHL.js → daemon-cli-B6aLZ8OE.js} +28 -23
  63. package/dist/{daemon-cli-yy_MAYxv.js → daemon-cli-CMKd_D6h.js} +26 -21
  64. package/dist/{daemon-runtime-vNkYv9tq.js → daemon-runtime-BCn_QIHK.js} +64 -7
  65. package/dist/{daemon-runtime-ELWW7q0C.js → daemon-runtime-DMd0mgTK.js} +64 -7
  66. package/dist/{deliver-Bsvrattg.js → deliver-C3bnXkg5.js} +12 -10
  67. package/dist/{deliver-Dl8TEyHM.js → deliver-CZPhTA7x.js} +7 -5
  68. package/dist/{deliver-eE21zdeQ.js → deliver-Cau4HL7W.js} +11 -9
  69. package/dist/{deps-BrcOX0ht.js → deps-BG1LonF6.js} +2 -2
  70. package/dist/{deps-wXkiMwLZ.js → deps-ytXmI88x.js} +2 -2
  71. package/dist/{devices-cli-BjlwgE6B.js → devices-cli-Cm0ENrXH.js} +16 -16
  72. package/dist/{devices-cli-BVc_Ic5O.js → devices-cli-D_rnGkqO.js} +12 -12
  73. package/dist/{directory-cli-cc9ivzEM.js → directory-cli-CGLolzJC.js} +15 -15
  74. package/dist/{directory-cli-CULRQACb.js → directory-cli-CTtv_AB7.js} +19 -19
  75. package/dist/{dispatcher-BNB5aCZ6.js → dispatcher-6oI-H42S.js} +1 -1
  76. package/dist/{dns-cli-BwDdBlsK.js → dns-cli-BRkJGLqK.js} +15 -15
  77. package/dist/{dns-cli-B79COhmu.js → dns-cli-CoeI4817.js} +11 -11
  78. package/dist/{docs-cli-BM55jf4Y.js → docs-cli-BH9bMx3a.js} +7 -7
  79. package/dist/{docs-cli-t7IEzxr8.js → docs-cli-Bh1Coji2.js} +10 -10
  80. package/dist/{doctor-CT9JPoCt.js → doctor-CwSrWRCp.js} +43 -38
  81. package/dist/{doctor-OmfNRlMS.js → doctor-JnMryC_M.js} +40 -35
  82. package/dist/entry.js +12 -8
  83. package/dist/{env-DOcCob95.js → env-0_mKbEWW.js} +2 -2
  84. package/dist/{errors-DdT2Dtkb.js → errors-CZ9opC6L.js} +4 -4
  85. package/dist/{exec-B7WKla_0.js → exec-BMnoMcZW.js} +1 -1
  86. package/dist/{exec-CTo4hK94.js → exec-HEWTMJ7j.js} +1 -1
  87. package/dist/{exec-approvals-WdYFyy5N.js → exec-approvals-BCEFzcbC.js} +19 -2
  88. package/dist/{exec-approvals-CK-Umdr3.js → exec-approvals-DZixgolZ.js} +19 -2
  89. package/dist/{exec-approvals-cli-DD_z4fL9.js → exec-approvals-cli-D7aVv5hN.js} +19 -19
  90. package/dist/{exec-approvals-cli-BK2toX2b.js → exec-approvals-cli-DzLp5G7t.js} +23 -23
  91. package/dist/extensionAPI.js +1186 -267
  92. package/dist/{gateway-cli-BCC0T5iY.js → gateway-cli-DHP5DRUH.js} +910 -199
  93. package/dist/{gateway-cli-BTlr6Uwl.js → gateway-cli-ape0pnBU.js} +912 -202
  94. package/dist/{gateway-rpc-CMAcradB.js → gateway-rpc-C8rNIC0P.js} +3 -3
  95. package/dist/{gateway-rpc-SvVB4Fmv.js → gateway-rpc-CWnTaSEY.js} +3 -3
  96. package/dist/{github-copilot-auth-BHLcQ1sN.js → github-copilot-auth-B_lK1g__.js} +173 -87
  97. package/dist/{github-copilot-auth-BoRchp_Q.js → github-copilot-auth-C8Uf0Q03.js} +174 -88
  98. package/dist/{github-copilot-token-BEtihsn6.js → github-copilot-token-B3SA95yo.js} +8 -2
  99. package/dist/{github-copilot-token-rP-6QdKv.js → github-copilot-token-SLWintYd.js} +7 -1
  100. package/dist/{github-copilot-token-VZsS4013.js → github-copilot-token-pGSmVaW-.js} +8 -2
  101. package/dist/{gmail-setup-utils-4czdWNCN.js → gmail-setup-utils-Bi6W14MK.js} +3 -3
  102. package/dist/{gmail-setup-utils-B1CTmT2V.js → gmail-setup-utils-QpN7TEXS.js} +4 -4
  103. package/dist/{health-format-B4_A88V3.js → health-format-B3eStY5r.js} +215 -21
  104. package/dist/{health-format-Ct8J0fwc.js → health-format-ND2rUbQO.js} +213 -19
  105. package/dist/{help-format-CGcnDM3D.js → help-format-Bozi4K9H.js} +1 -1
  106. package/dist/{helpers-DfgBr1D5.js → helpers-BIc7L8EF.js} +1 -1
  107. package/dist/{helpers-Cw9kFCkw.js → helpers-D66_XoIz.js} +1 -1
  108. package/dist/{hooks-cli-NmkXLKmj.js → hooks-cli-BMu_-4Ru.js} +49 -49
  109. package/dist/{hooks-cli-B-28F__A.js → hooks-cli-CmeQxEOM.js} +45 -45
  110. package/dist/{hooks-status-I3Y60zVN.js → hooks-status-CKmUPU-M.js} +3 -3
  111. package/dist/{hooks-status-XV9oQICf.js → hooks-status-DepPyfBb.js} +4 -4
  112. package/dist/{image-ClOB6QDJ.js → image-Ca_PtqY7.js} +8 -6
  113. package/dist/{image-BYmtfVH8.js → image-CgBndiQy.js} +9 -7
  114. package/dist/{image-CXg7Z0WD.js → image-nRwqkmtf.js} +8 -6
  115. package/dist/index.js +231 -105
  116. package/dist/{installs-C5cjVarj.js → installs-BhEjOqPy.js} +43 -6
  117. package/dist/{installs-W4Pc1LJz.js → installs-DsJkyWfL.js} +43 -6
  118. package/dist/{links-C9fyAH-V.js → links-B5pRdmo1.js} +1 -1
  119. package/dist/{links-jGisPfXW.js → links-D0uzJbi6.js} +1 -1
  120. package/dist/{loader-BYWxo-_j.js → loader-_Pj-TZS2.js} +920 -491
  121. package/dist/{logging-BnUUuH3y.js → logging-Cc7m6PTv.js} +1 -1
  122. package/dist/{logging-CLCWl7Iu.js → logging-TXWhN8jG.js} +2 -2
  123. package/dist/{login-qr-C2H_iQJU.js → login-qr-BIlr0vwe.js} +12 -7
  124. package/dist/{login-qr-7WOtj6zE.js → login-qr-CcOWO_dR.js} +9 -4
  125. package/dist/{login-qr-sEcxw1_U.js → login-qr-Cmsf7BGt.js} +11 -6
  126. package/dist/{logs-cli-C5v4fEDj.js → logs-cli-5L3NxTsc.js} +19 -19
  127. package/dist/{logs-cli-nVwK5g60.js → logs-cli-DtiFFkZL.js} +15 -15
  128. package/dist/{manager-rDmdE7O9.js → manager-BXiIQku7.js} +9 -7
  129. package/dist/{manager-JSP5pLyv.js → manager-C4ILl-d3.js} +10 -8
  130. package/dist/{manager-BArueSTR.js → manager-LpytrxUw.js} +12 -10
  131. package/dist/{manifest-registry-tuAcHxrV.js → manifest-registry-C69Z-I4v.js} +1 -1
  132. package/dist/{manifest-registry-BFpLJJDB.js → manifest-registry-DHaa1SJb.js} +1 -1
  133. package/dist/{message-channel-CAFcg7mw.js → message-channel-BlgPSDAh.js} +6 -1
  134. package/dist/{message-channel-CQGWXVL4.js → message-channel-Bpfe5l5f.js} +7 -2
  135. package/dist/{model-selection-Cp1maz7B.js → model-selection-DMUrNhQP.js} +41 -16
  136. package/dist/{model-selection-Cs1y6OBv.js → model-selection-mzTqrNoj.js} +38 -14
  137. package/dist/{models-cli-n9a8pESx.js → models-cli-DHzyyLvp.js} +49 -49
  138. package/dist/{models-cli-DGnLcr4X.js → models-cli-EhrWjNLH.js} +53 -53
  139. package/dist/{net-DaJz_a4n.js → net-C8YRVt16.js} +1 -1
  140. package/dist/{net-DeiCIMU6.js → net-CWMMy37F.js} +1 -1
  141. package/dist/{node-cli-rtEq-YyU.js → node-cli-2oYmIWJt.js} +30 -30
  142. package/dist/{node-cli-AOO0HsM1.js → node-cli-DH7Ykym5.js} +26 -26
  143. package/dist/{node-service-CjtBRyjp.js → node-service-BAYHx0E7.js} +2 -2
  144. package/dist/{node-service-BW_LhY5w.js → node-service-Lc1LlnFH.js} +2 -2
  145. package/dist/{nodes-cli-Coxj5hDA.js → nodes-cli-Bc5K-0Lt.js} +22 -22
  146. package/dist/{nodes-cli-ChBsNXzz.js → nodes-cli-hT8yYD7S.js} +18 -18
  147. package/dist/{nodes-screen-Ln98EX_f.js → nodes-screen-DGlNPbk4.js} +2 -2
  148. package/dist/{nodes-screen-DOhGEibx.js → nodes-screen-DT5HvhJV.js} +2 -2
  149. package/dist/{note-BFpD-42H.js → note-B5HnoeZX.js} +2 -2
  150. package/dist/{note-CBiVaqG7.js → note-Ci08TSbV.js} +1 -1
  151. package/dist/{onboard-channels-CF7lTDNu.js → onboard-channels-D-ZQTy5V.js} +9 -8
  152. package/dist/{onboard-channels-CJCy7TTQ.js → onboard-channels-DKT27PdN.js} +10 -9
  153. package/dist/{onboard-skills-DdFGj9pt.js → onboard-skills-YobctE-R.js} +259 -194
  154. package/dist/{onboard-skills-fL84FI8F.js → onboard-skills-s8J5xbUr.js} +259 -194
  155. package/dist/{onboarding-DcN1avQK.js → onboarding-BP4-5uzE.js} +96 -60
  156. package/dist/{pairing-cli-DbP9KqPL.js → pairing-cli-C8KHRjaU.js} +15 -15
  157. package/dist/{pairing-cli-B7RQFp4r.js → pairing-cli-i7wiTmYC.js} +19 -19
  158. package/dist/{pairing-labels-DK2aLSd2.js → pairing-labels-BbydDT7w.js} +1 -1
  159. package/dist/{pairing-labels-C6I3dD-m.js → pairing-labels-CtqLxbG6.js} +1 -1
  160. package/dist/{pairing-store-BnMngoWQ.js → pairing-store-DFq7WtOv.js} +2 -2
  161. package/dist/{pairing-store-DMex6WWe.js → pairing-store-DTfv_FGA.js} +1 -1
  162. package/dist/{path-env-CuGC6r1F.js → path-env-DP3DsVge.js} +2 -2
  163. package/dist/{path-env-CUhrC5DA.js → path-env-h3xp5PqO.js} +1 -1
  164. package/dist/{paths-xPuk88Yf.js → paths-B4kigINg.js} +2 -2
  165. package/dist/{paths-50eo6DV6.js → paths-Bb0nwPeu.js} +2 -2
  166. package/dist/{paths-RvF0P6tQ.js → paths-CTg8F3AE.js} +1 -1
  167. package/dist/{pi-embedded-helpers-DJgCXZEz.js → pi-embedded-helpers-BB4uACeq.js} +175 -170
  168. package/dist/{pi-embedded-helpers-DiK8Qn1l.js → pi-embedded-helpers-BxqZh6U7.js} +43 -19
  169. package/dist/{pi-embedded-helpers-CC00lEFI.js → pi-embedded-helpers-DF8SAHU-.js} +175 -170
  170. package/dist/{pi-model-discovery-DjGamP_B.js → pi-model-discovery-CV2V1HHz.js} +8 -1
  171. package/dist/{pi-model-discovery-CnK2Dol8.js → pi-model-discovery-DzEIEgHL.js} +8 -1
  172. package/dist/{pi-model-discovery-CsRo-xMp.js → pi-model-discovery-EhM2JAQo.js} +8 -1
  173. package/dist/{pi-tools.policy-DleRi9eC.js → pi-tools.policy-BQ8N5y8a.js} +5 -4
  174. package/dist/{plugin-auto-enable-JQ63k0Ce.js → plugin-auto-enable-Ci7TBlH2.js} +5 -5
  175. package/dist/{plugin-auto-enable-CIVp3SAp.js → plugin-auto-enable-DyW8lHTT.js} +4 -4
  176. package/dist/plugin-sdk/index.d.ts +228 -283
  177. package/dist/plugin-sdk/index.js +22528 -69091
  178. package/dist/plugin-sdk/pi-model-discovery-Dw3A6oXH.js +37 -0
  179. package/dist/{plugins-TrKFfrLt.js → plugins-BUPpq5aS.js} +3 -2
  180. package/dist/{plugins-D1CxUobm.js → plugins-BYIWo0Cp.js} +5 -4
  181. package/dist/{plugins-cli-17wYux52.js → plugins-cli-CGfxctIx.js} +50 -49
  182. package/dist/{plugins-cli-VyQWn_LW.js → plugins-cli-Dr_R2-FY.js} +46 -45
  183. package/dist/{ports-B27T1uRn.js → ports-0V-Mu4ch.js} +2 -2
  184. package/dist/{program-BA9_uWfO.js → program-oR55MCAT.js} +84 -81
  185. package/dist/{progress-uNDQDtGB.js → progress-xpLtQsNY.js} +1 -1
  186. package/dist/{prompt-style-gfROyHgB.js → prompt-style-vzh0MGHs.js} +1 -1
  187. package/dist/{pw-ai-BC4dLE7k.js → pw-ai-B7Fvw8DW.js} +4 -4
  188. package/dist/{pw-ai-DlTBXZjY.js → pw-ai-DYpQO6HI.js} +6 -6
  189. package/dist/{pw-ai-BEqPnalN.js → pw-ai-tNPuRNn3.js} +4 -4
  190. package/dist/{qmd-manager-8xWxIGbO.js → qmd-manager-BKkFEEN_.js} +9 -8
  191. package/dist/{plugin-sdk/qmd-manager-DvkA01DP.js → qmd-manager-CF52nuBg.js} +6 -6
  192. package/dist/{qmd-manager-BSCOmXYZ.js → qmd-manager-Dub8jfbo.js} +7 -6
  193. package/dist/{register.subclis-CWWz9WdX.js → register.subclis-BpIR6Iqi.js} +36 -30
  194. package/dist/{reply-CoztdrN_.js → reply-B8pOiUNN.js} +935 -506
  195. package/dist/rolldown-runtime-Cbj13DAv.js +20 -0
  196. package/dist/{routes-yI5QIzeL.js → routes-BSfXf8a5.js} +5 -5
  197. package/dist/{routes-Ds-tIZFJ.js → routes-DchZU3EK.js} +6 -6
  198. package/dist/{rpc-HF82_iLh.js → rpc-DqI3QH59.js} +3 -3
  199. package/dist/{rpc-HdKLb6jx.js → rpc-Vo2ACfn-.js} +3 -3
  200. package/dist/{run-main-B3krVvc1.js → run-main-DrVUUPHV.js} +84 -84
  201. package/dist/{sandbox-BXUfp_qv.js → sandbox-CV8VwPij.js} +36 -16
  202. package/dist/{sandbox-Cnq9TXEn.js → sandbox-DuqLKN5J.js} +34 -14
  203. package/dist/{sandbox-cli-C7j1V6tb.js → sandbox-cli-C0_Hrk7i.js} +25 -24
  204. package/dist/{sandbox-cli-CnS9JJlO.js → sandbox-cli-Ces6i3n2.js} +21 -20
  205. package/dist/{security-cli-Clg7RQT3.js → security-cli-CybLT9XS.js} +32 -30
  206. package/dist/{security-cli-BGd4NO4l.js → security-cli-T7yrd3lb.js} +28 -26
  207. package/dist/{server-context-D2cv-pIA.js → server-context-vChIAqjH.js} +6 -6
  208. package/dist/{server-context-CM_E6wD5.js → server-context-yKyxyxOJ.js} +5 -5
  209. package/dist/{server-node-events-IMwI538C.js → server-node-events-BR2vHqf6.js} +44 -43
  210. package/dist/{server-node-events-C5EqDe_U.js → server-node-events-D39FA0NG.js} +48 -47
  211. package/dist/{service-CAxAjHNB.js → service-BZesBIaG.js} +3 -3
  212. package/dist/{service-BoDHq_LN.js → service-_JwSmGSn.js} +2 -2
  213. package/dist/{service-audit-Bf33pqEM.js → service-audit-C-IA4omi.js} +6 -6
  214. package/dist/{service-audit-DBSAGhm8.js → service-audit-DDX1kO3k.js} +6 -6
  215. package/dist/session-cost-usage-BTXosU1k.js +692 -0
  216. package/dist/session-cost-usage-CBP4Hv9D.js +692 -0
  217. package/dist/session-key-CZkcvAtx.js +177 -0
  218. package/dist/session-key-Dm2EOhrH.js +177 -0
  219. package/dist/{shared-ChNOqAzp.js → shared-BmtNKsPq.js} +4 -4
  220. package/dist/{shared-D42-KbPa.js → shared-C1XLEyB0.js} +3 -3
  221. package/dist/{shared-xZjRQa6y.js → shared-C8_5pNbb.js} +4 -4
  222. package/dist/{shared-DBGw227P.js → shared-fnGLWyZ6.js} +3 -3
  223. package/dist/skill-scanner-BoGjHXUZ.js +255 -0
  224. package/dist/skill-scanner-Bp1D9gra.js +255 -0
  225. package/dist/{skills-DtwGIkTI.js → skills-CmU0Q92f.js} +3 -3
  226. package/dist/{skills-C4b1FA1e.js → skills-D5JDj3TR.js} +5 -5
  227. package/dist/{skills-cli-BPkuJAz9.js → skills-cli-C1yJvIkL.js} +16 -16
  228. package/dist/{skills-cli-b0ZmGlmh.js → skills-cli-DBC5zFat.js} +12 -12
  229. package/dist/{skills-status-CSCMqNZP.js → skills-status-CEvVUD3U.js} +3 -3
  230. package/dist/{skills-status-CWkBweWW.js → skills-status-DtXrj3fy.js} +2 -2
  231. package/dist/{status-BIWeu5mN.js → status-BRXuHUsK.js} +94 -58
  232. package/dist/{status-CcM6W8r4.js → status-BTGXSvZ1.js} +3 -3
  233. package/dist/{status-PjegR5Cv.js → status-DBZ5Z7ng.js} +4 -4
  234. package/dist/{subsystem-46MXi6Ip.js → subsystem-CAq3uyo7.js} +1 -1
  235. package/dist/{system-cli-B4FEIE5d.js → system-cli-Dqnt-b0D.js} +13 -13
  236. package/dist/{system-cli-BL_QZ1VP.js → system-cli-SJLtqI47.js} +17 -17
  237. package/dist/{systemd-DAgZTW06.js → systemd-8sIc6isV.js} +2 -2
  238. package/dist/{systemd-CNYEkRek.js → systemd-B-3NdMmA.js} +3 -3
  239. package/dist/{systemd-hints-CcgK8AJE.js → systemd-hints-DO88c_nD.js} +1 -1
  240. package/dist/{systemd-hints-okqOoOug.js → systemd-hints-Wim4Bq6j.js} +1 -1
  241. package/dist/{systemd-linger-CTe0ZDxD.js → systemd-linger-N-cIaegf.js} +8 -3
  242. package/dist/{systemd-linger-Cbkoh9qw.js → systemd-linger-SsSOsJST.js} +8 -3
  243. package/dist/{table-f0EgX-YI.js → table-CJSx0YID.js} +1 -1
  244. package/dist/{table-DuNe7Qes.js → table-CLtGjVsx.js} +2 -2
  245. package/dist/{tailscale-BUcKO8Rr.js → tailscale-9MusRvOi.js} +1 -1
  246. package/dist/{tailscale-Cvk3mQDZ.js → tailscale-BVGD9gSD.js} +2 -2
  247. package/dist/{tool-display-rIUh61kT.js → tool-display-BxZG0o1b.js} +2 -2
  248. package/dist/{tool-display-BMYWrp0L.js → tool-display-DmgKs6-V.js} +2 -2
  249. package/dist/{tui-cV-R-JXi.js → tui-DPorsF4z.js} +203 -75
  250. package/dist/{tui-DBmFYQTk.js → tui-XH6_v0qC.js} +204 -74
  251. package/dist/{tui-cli-B_CKOjZ1.js → tui-cli-DRSIBDgZ.js} +30 -29
  252. package/dist/{tui-cli-CVdJ28TX.js → tui-cli-DV_JAtnq.js} +26 -25
  253. package/dist/{update-BDyA5Iqy.js → update-DNAVcIQ7.js} +3 -3
  254. package/dist/{update-BIB5jGcv.js → update-DzMcwy1G.js} +3 -3
  255. package/dist/{update-cli-p49uMWby.js → update-cli-OAcZiYuA.js} +112 -27
  256. package/dist/{update-cli-C5vwquH_.js → update-cli-tQcy8mkI.js} +109 -23
  257. package/dist/{update-runner-8XFxQglY.js → update-runner-2i8_mIG5.js} +254 -17
  258. package/dist/{update-runner-s8Rs8ex3.js → update-runner-BDdk_K2S.js} +254 -17
  259. package/dist/usage-format-DvowRSs-.js +36 -0
  260. package/dist/usage-format-E3bMcUMV.js +36 -0
  261. package/dist/{utils-Dg0Xbl6w.js → utils-CKSrBNwq.js} +2 -2
  262. package/dist/{webhooks-cli-DkQGQ2ae.js → webhooks-cli-BztQHEco.js} +11 -11
  263. package/dist/{webhooks-cli-kRN8qR7B.js → webhooks-cli-ZAn97osC.js} +15 -15
  264. package/dist/{widearea-dns-BIhjVRG1.js → widearea-dns-CsSylzXH.js} +2 -2
  265. package/dist/{widearea-dns-D4yoSNNw.js → widearea-dns-D9Al4QRv.js} +2 -2
  266. package/dist/{ws-log-DQ6nkLys.js → ws-log-B7UNLFLC.js} +3 -3
  267. package/dist/{ws-log-C4IerKk4.js → ws-log-DJIXahf0.js} +2 -2
  268. package/dist/{wsl-DASmek7h.js → wsl-ATjkMwMA.js} +1 -1
  269. package/docs/.i18n/glossary.zh-CN.json +20 -0
  270. package/docs/assets/macos-onboarding/01-macos-warning.jpeg +0 -0
  271. package/docs/assets/macos-onboarding/02-local-networks.jpeg +0 -0
  272. package/docs/assets/macos-onboarding/03-security-notice.png +0 -0
  273. package/docs/assets/macos-onboarding/04-choose-gateway.png +0 -0
  274. package/docs/assets/macos-onboarding/05-permissions.png +0 -0
  275. package/docs/bedrock.md +3 -3
  276. package/docs/channels/discord.md +2 -1
  277. package/docs/channels/feishu.md +72 -2
  278. package/docs/channels/telegram.md +19 -0
  279. package/docs/cli/devices.md +3 -0
  280. package/docs/cli/gateway.md +3 -0
  281. package/docs/cli/index.md +2 -0
  282. package/docs/cli/onboard.md +16 -2
  283. package/docs/concepts/features.md +53 -0
  284. package/docs/concepts/memory.md +1 -1
  285. package/docs/concepts/messages.md +1 -1
  286. package/docs/concepts/model-providers.md +11 -11
  287. package/docs/concepts/models.md +1 -1
  288. package/docs/concepts/multi-agent.md +2 -2
  289. package/docs/concepts/session.md +19 -3
  290. package/docs/docs.json +331 -182
  291. package/docs/gateway/cli-backends.md +7 -5
  292. package/docs/gateway/configuration-examples.md +4 -4
  293. package/docs/gateway/configuration.md +34 -16
  294. package/docs/gateway/heartbeat.md +61 -1
  295. package/docs/gateway/local-models.md +3 -3
  296. package/docs/gateway/network-model.md +17 -0
  297. package/docs/gateway/remote.md +3 -1
  298. package/docs/gateway/security/index.md +1 -1
  299. package/docs/help/faq.md +25 -26
  300. package/docs/help/submitting-a-pr.md +214 -0
  301. package/docs/help/submitting-an-issue.md +165 -0
  302. package/docs/index.md +127 -193
  303. package/docs/install/docker.md +2 -2
  304. package/docs/{platforms → install}/exe-dev.md +4 -3
  305. package/docs/{platforms → install}/fly.md +1 -1
  306. package/docs/install/index.md +4 -2
  307. package/docs/nodes/media-understanding.md +2 -2
  308. package/docs/platforms/digitalocean.md +2 -2
  309. package/docs/platforms/index.md +4 -4
  310. package/docs/platforms/linux.md +1 -1
  311. package/docs/platforms/mac/release.md +7 -7
  312. package/docs/platforms/oracle.md +1 -1
  313. package/docs/platforms/raspberry-pi.md +1 -1
  314. package/docs/providers/anthropic.md +3 -3
  315. package/docs/providers/index.md +1 -1
  316. package/docs/providers/minimax.md +3 -3
  317. package/docs/providers/models.md +1 -1
  318. package/docs/providers/ollama.md +60 -6
  319. package/docs/providers/openai.md +2 -2
  320. package/docs/providers/opencode.md +1 -1
  321. package/docs/providers/vercel-ai-gateway.md +1 -1
  322. package/docs/reference/credits.md +27 -0
  323. package/docs/reference/wizard.md +268 -0
  324. package/docs/start/bootstrapping.md +41 -0
  325. package/docs/start/docs-directory.md +64 -0
  326. package/docs/start/getting-started.md +109 -197
  327. package/docs/start/hubs.md +12 -0
  328. package/docs/start/onboarding.md +51 -81
  329. package/docs/start/openclaw.md +3 -20
  330. package/docs/start/quickstart.md +22 -0
  331. package/docs/start/setup.md +14 -1
  332. package/docs/start/wizard-cli-automation.md +141 -0
  333. package/docs/start/wizard-cli-reference.md +244 -0
  334. package/docs/start/wizard.md +48 -289
  335. package/docs/style.css +3 -0
  336. package/docs/testing.md +9 -9
  337. package/docs/token-use.md +2 -2
  338. package/docs/tools/index.md +3 -0
  339. package/docs/tools/llm-task.md +1 -1
  340. package/docs/tools/thinking.md +1 -0
  341. package/docs/tui.md +3 -0
  342. package/docs/vps.md +6 -6
  343. package/docs/web/control-ui.md +2 -0
  344. package/docs/web/dashboard.md +7 -7
  345. package/docs/zh-CN/channels/feishu.md +119 -3
  346. package/docs/zh-CN/concepts/features.md +59 -0
  347. package/docs/zh-CN/gateway/network-model.md +23 -0
  348. package/docs/zh-CN/gateway/remote.md +1 -1
  349. package/docs/zh-CN/help/faq.md +5 -5
  350. package/docs/zh-CN/index.md +124 -202
  351. package/docs/zh-CN/install/docker.md +1 -1
  352. package/docs/zh-CN/platforms/digitalocean.md +2 -2
  353. package/docs/zh-CN/platforms/index.md +4 -4
  354. package/docs/zh-CN/platforms/linux.md +1 -1
  355. package/docs/zh-CN/platforms/oracle.md +1 -1
  356. package/docs/zh-CN/platforms/raspberry-pi.md +1 -1
  357. package/docs/zh-CN/providers/ollama.md +1 -1
  358. package/docs/zh-CN/reference/credits.md +34 -0
  359. package/docs/zh-CN/start/docs-directory.md +70 -0
  360. package/docs/zh-CN/start/getting-started.md +1 -1
  361. package/docs/zh-CN/start/hubs.md +39 -30
  362. package/docs/zh-CN/start/quickstart.md +88 -0
  363. package/docs/zh-CN/vps.md +4 -4
  364. package/extensions/bluebubbles/package.json +1 -1
  365. package/extensions/bluebubbles/src/monitor.ts +9 -0
  366. package/extensions/copilot-proxy/index.ts +1 -0
  367. package/extensions/copilot-proxy/package.json +1 -1
  368. package/extensions/diagnostics-otel/package.json +1 -1
  369. package/extensions/discord/package.json +1 -1
  370. package/extensions/feishu/index.ts +49 -1
  371. package/extensions/feishu/openclaw.plugin.json +1 -0
  372. package/extensions/feishu/package.json +9 -5
  373. package/extensions/feishu/skills/feishu-doc/SKILL.md +105 -0
  374. package/extensions/feishu/skills/feishu-doc/references/block-types.md +103 -0
  375. package/extensions/feishu/skills/feishu-drive/SKILL.md +97 -0
  376. package/extensions/feishu/skills/feishu-perm/SKILL.md +119 -0
  377. package/extensions/feishu/skills/feishu-wiki/SKILL.md +111 -0
  378. package/extensions/feishu/src/accounts.ts +144 -0
  379. package/extensions/feishu/src/bitable.ts +459 -0
  380. package/extensions/feishu/src/bot.ts +871 -0
  381. package/extensions/feishu/src/channel.ts +267 -202
  382. package/extensions/feishu/src/client.ts +118 -0
  383. package/extensions/feishu/src/config-schema.ts +152 -26
  384. package/extensions/feishu/src/directory.ts +177 -0
  385. package/extensions/feishu/src/doc-schema.ts +47 -0
  386. package/extensions/feishu/src/docx.ts +521 -0
  387. package/extensions/feishu/src/drive-schema.ts +46 -0
  388. package/extensions/feishu/src/drive.ts +227 -0
  389. package/extensions/feishu/src/media.ts +527 -0
  390. package/extensions/feishu/src/mention.ts +126 -0
  391. package/extensions/feishu/src/monitor.ts +190 -0
  392. package/extensions/feishu/src/onboarding.ts +278 -200
  393. package/extensions/feishu/src/outbound.ts +40 -0
  394. package/extensions/feishu/src/perm-schema.ts +52 -0
  395. package/extensions/feishu/src/perm.ts +173 -0
  396. package/extensions/feishu/src/policy.ts +104 -0
  397. package/extensions/feishu/src/probe.ts +44 -0
  398. package/extensions/feishu/src/reactions.ts +160 -0
  399. package/extensions/feishu/src/reply-dispatcher.ts +184 -0
  400. package/extensions/feishu/src/runtime.ts +14 -0
  401. package/extensions/feishu/src/send.ts +358 -0
  402. package/extensions/feishu/src/targets.ts +78 -0
  403. package/extensions/feishu/src/tools-config.ts +21 -0
  404. package/extensions/feishu/src/types.ts +75 -0
  405. package/extensions/feishu/src/typing.ts +80 -0
  406. package/extensions/feishu/src/wiki-schema.ts +55 -0
  407. package/extensions/feishu/src/wiki.ts +232 -0
  408. package/extensions/google-antigravity-auth/package.json +1 -1
  409. package/extensions/google-gemini-cli-auth/package.json +1 -1
  410. package/extensions/googlechat/package.json +1 -1
  411. package/extensions/googlechat/src/monitor.ts +12 -1
  412. package/extensions/imessage/package.json +1 -1
  413. package/extensions/line/package.json +1 -1
  414. package/extensions/llm-task/package.json +1 -1
  415. package/extensions/lobster/package.json +1 -1
  416. package/extensions/matrix/CHANGELOG.md +6 -0
  417. package/extensions/matrix/package.json +1 -1
  418. package/extensions/matrix/src/config-schema.ts +1 -0
  419. package/extensions/matrix/src/matrix/monitor/handler.ts +9 -5
  420. package/extensions/matrix/src/types.ts +2 -0
  421. package/extensions/mattermost/package.json +1 -1
  422. package/extensions/mattermost/src/channel.test.ts +24 -0
  423. package/extensions/mattermost/src/config-schema.ts +1 -0
  424. package/extensions/mattermost/src/mattermost/monitor.ts +9 -5
  425. package/extensions/mattermost/src/types.ts +2 -0
  426. package/extensions/memory-core/package.json +1 -1
  427. package/extensions/memory-lancedb/node_modules/.bin/openai +2 -2
  428. package/extensions/memory-lancedb/node_modules/.bin/openai.CMD +2 -2
  429. package/extensions/memory-lancedb/node_modules/.bin/openai.ps1 +2 -2
  430. package/extensions/memory-lancedb/package.json +2 -2
  431. package/extensions/minimax-portal-auth/package.json +1 -1
  432. package/extensions/msteams/CHANGELOG.md +6 -0
  433. package/extensions/msteams/package.json +1 -1
  434. package/extensions/msteams/src/monitor-handler/message-handler.ts +1 -0
  435. package/extensions/msteams/src/reply-dispatcher.ts +7 -5
  436. package/extensions/nextcloud-talk/package.json +1 -1
  437. package/extensions/nextcloud-talk/src/config-schema.ts +1 -0
  438. package/extensions/nextcloud-talk/src/inbound.ts +10 -0
  439. package/extensions/nextcloud-talk/src/send.ts +7 -2
  440. package/extensions/nextcloud-talk/src/types.ts +2 -0
  441. package/extensions/nostr/CHANGELOG.md +6 -0
  442. package/extensions/nostr/package.json +1 -1
  443. package/extensions/open-prose/package.json +1 -1
  444. package/extensions/signal/package.json +1 -1
  445. package/extensions/slack/package.json +1 -1
  446. package/extensions/telegram/package.json +1 -1
  447. package/extensions/tlon/package.json +1 -1
  448. package/extensions/tlon/src/config-schema.ts +2 -0
  449. package/extensions/tlon/src/monitor/index.ts +41 -14
  450. package/extensions/tlon/src/monitor/utils.ts +1 -0
  451. package/extensions/twitch/CHANGELOG.md +6 -0
  452. package/extensions/twitch/package.json +1 -1
  453. package/extensions/twitch/src/config-schema.ts +2 -0
  454. package/extensions/twitch/src/monitor.ts +11 -0
  455. package/extensions/twitch/src/types.ts +2 -0
  456. package/extensions/voice-call/CHANGELOG.md +6 -0
  457. package/extensions/voice-call/package.json +1 -1
  458. package/extensions/voice-call/src/manager.test.ts +30 -0
  459. package/extensions/whatsapp/package.json +1 -1
  460. package/extensions/zalo/CHANGELOG.md +6 -0
  461. package/extensions/zalo/package.json +1 -1
  462. package/extensions/zalo/src/config-schema.ts +1 -0
  463. package/extensions/zalo/src/monitor.ts +11 -0
  464. package/extensions/zalo/src/types.ts +2 -0
  465. package/extensions/zalouser/CHANGELOG.md +6 -0
  466. package/extensions/zalouser/package.json +1 -1
  467. package/extensions/zalouser/src/config-schema.ts +1 -0
  468. package/extensions/zalouser/src/monitor.ts +12 -1
  469. package/extensions/zalouser/src/types.ts +2 -0
  470. package/package.json +14 -14
  471. package/dist/auth-profiles-3t9aTwDR.js +0 -11
  472. package/dist/auth-profiles-BYvLI-zr.js +0 -7
  473. package/dist/auth-profiles-DswR7tzt.js +0 -7
  474. package/dist/cli-BxIwNzhi.js +0 -89
  475. package/dist/cli-wFmvNjpg.js +0 -86
  476. package/dist/command-format-SkzzRqR1.js +0 -52
  477. package/dist/completion-cli-vxe-jqwC.js +0 -390
  478. package/dist/config-BwVg6hhl.js +0 -13
  479. package/dist/config-jKcyRiMo.js +0 -10
  480. package/dist/configure-DaecSBSI.js +0 -60
  481. package/dist/configure-t-7r9i4H.js +0 -64
  482. package/dist/control-service-Dag9b-dU.js +0 -16
  483. package/dist/control-service-DsUyuevF.js +0 -12
  484. package/dist/control-ui/assets/index-ryaCcbyp.js +0 -4584
  485. package/dist/control-ui/assets/index-ryaCcbyp.js.map +0 -1
  486. package/dist/daemon-cli-CUkUiGoK.js +0 -53
  487. package/dist/daemon-cli-D6FF4tmP.js +0 -49
  488. package/dist/deliver-BGnJ4-vz.js +0 -12
  489. package/dist/deliver-CXpx7BNb.js +0 -25
  490. package/dist/deliver-Ds2yqOA3.js +0 -21
  491. package/dist/doctor-BwqqPqMX.js +0 -58
  492. package/dist/doctor-DGrfzoKj.js +0 -62
  493. package/dist/github-copilot-token-B0CUgVkW.js +0 -4
  494. package/dist/github-copilot-token-B_uWT0Yi.js +0 -4
  495. package/dist/github-copilot-token-CXUZ9Lrb.js +0 -3
  496. package/dist/image-CgTMdnmz.js +0 -28
  497. package/dist/image-D1O-ebQc.js +0 -14
  498. package/dist/image-njq9Rf6U.js +0 -24
  499. package/dist/login-qr-BfbIJ1wP.js +0 -12
  500. package/dist/login-qr-CGWNrSQq.js +0 -9
  501. package/dist/login-qr-CUV9HZCg.js +0 -16
  502. package/dist/manager-DKpTd5pc.js +0 -10
  503. package/dist/manager-Dr_eVHpN.js +0 -10
  504. package/dist/manager-DtFcs1NT.js +0 -14
  505. package/dist/pi-model-discovery-BOramrmp.js +0 -3
  506. package/dist/pi-model-discovery-Bj98Srfa.js +0 -3
  507. package/dist/pi-model-discovery-DHPwfwKu.js +0 -3
  508. package/dist/plugin-sdk/agent-scope-qNPdmst1.js +0 -606
  509. package/dist/plugin-sdk/auth-profiles-D0LhX8iB.js +0 -7
  510. package/dist/plugin-sdk/chrome-DMuEXuKT.js +0 -1953
  511. package/dist/plugin-sdk/config-D5CsedNn.js +0 -5623
  512. package/dist/plugin-sdk/deliver-DOlMKwJ9.js +0 -12
  513. package/dist/plugin-sdk/deliver-Dl2ednkv.js +0 -2555
  514. package/dist/plugin-sdk/exec-CjyVHUuE.js +0 -1107
  515. package/dist/plugin-sdk/github-copilot-token-BoPqI-5_.js +0 -97
  516. package/dist/plugin-sdk/github-copilot-token-YEH9Bwov.js +0 -4
  517. package/dist/plugin-sdk/image-B_t0xXCb.js +0 -1419
  518. package/dist/plugin-sdk/image-DYTdodiR.js +0 -14
  519. package/dist/plugin-sdk/login-qr-B7ec28AI.js +0 -9
  520. package/dist/plugin-sdk/login-qr-BVBRxQRt.js +0 -470
  521. package/dist/plugin-sdk/manager-B-EITu1a.js +0 -10
  522. package/dist/plugin-sdk/manager-WCGzgWdf.js +0 -2868
  523. package/dist/plugin-sdk/model-selection-Bo7pocNu.js +0 -2667
  524. package/dist/plugin-sdk/paths-BFxmmTT5.js +0 -164
  525. package/dist/plugin-sdk/paths-Bkjq_KcG.js +0 -40
  526. package/dist/plugin-sdk/pi-embedded-helpers-fm5_Eokw.js +0 -8755
  527. package/dist/plugin-sdk/pi-model-discovery-CLgDNnGq.js +0 -13
  528. package/dist/plugin-sdk/pi-model-discovery-P2-pVRmz.js +0 -3
  529. package/dist/plugin-sdk/pw-ai-BN7Cwl9J.js +0 -1649
  530. package/dist/qmd-manager-CzArLjr6.js +0 -615
  531. package/dist/redact-BR0IM00e.js +0 -94
  532. package/dist/register.subclis-Bo-xmQ-W.js +0 -342
  533. package/dist/register.subclis-BuT7ZpPf.js +0 -3
  534. package/dist/restart-sentinel-CdcBcziq.js +0 -65
  535. package/dist/restart-sentinel-DywisDen.js +0 -65
  536. package/dist/runtime-guard-BG6JybtL.js +0 -60
  537. package/dist/runtime-guard-DvBpNsbR.js +0 -60
  538. package/dist/sqlite-Dz6S6ijV.js +0 -215
  539. package/dist/status.update-2ZdxeIeT.js +0 -79
  540. package/dist/status.update-ChwCPLBt.js +0 -79
  541. package/dist/systemd-linger-BZb1Uwsd.js +0 -7
  542. package/dist/systemd-linger-DemNCT5l.js +0 -9
  543. package/dist/transcript-events-fUhPZcB5.js +0 -17
  544. package/docs/_config.yml +0 -53
  545. package/docs/_layouts/default.html +0 -145
  546. package/docs/assets/docs-chat-widget.js +0 -667
  547. package/docs/assets/markdown.css +0 -179
  548. package/docs/assets/terminal.css +0 -473
  549. package/docs/assets/theme.js +0 -55
  550. package/extensions/feishu/README.md +0 -47
  551. /package/dist/{archive-BrH5WBhI.js → archive-D0z3LZDK.js} +0 -0
  552. /package/dist/{archive-mFgwsll-.js → archive-Dy3Ezb-5.js} +0 -0
  553. /package/dist/{boolean-CE7i9tBR.js → boolean-BgXe2hyu.js} +0 -0
  554. /package/dist/{brew-0HRgjHZw.js → brew-CAcErcKz.js} +0 -0
  555. /package/dist/{brew-Qdppmdlx.js → brew-CcZV0dSS.js} +0 -0
  556. /package/dist/{cli-utils-CukoNm8O.js → cli-utils-BkRQdAoC.js} +0 -0
  557. /package/dist/{cli-utils-DFbPmfWB.js → cli-utils-ByANh4Sp.js} +0 -0
  558. /package/dist/{plugin-sdk/command-format-CFzL448l.js → command-format-CFzL448l.js} +0 -0
  559. /package/dist/{command-format-BQK1OIvH.js → command-format-ChfKqObn.js} +0 -0
  560. /package/dist/{command-format-3xiXujG0.js → command-format-ayFsmwwz.js} +0 -0
  561. /package/dist/{constants-3er_81qc.js → constants-D1op9uGI.js} +0 -0
  562. /package/dist/{constants-CLUi6T-M.js → constants-HPrOsATF.js} +0 -0
  563. /package/dist/{exec-BIMFe4XS.js → exec-B8JKbXKW.js} +0 -0
  564. /package/dist/{format-BnjMmWWT.js → format-B7OjpGnt.js} +0 -0
  565. /package/dist/{format-hyFOmVZc.js → format-CS7EI0xF.js} +0 -0
  566. /package/dist/{help-format-af1XWYxC.js → help-format-CfZ94KRN.js} +0 -0
  567. /package/dist/{helpers-HZ-6iA1e.js → helpers-5yebzF4C.js} +0 -0
  568. /package/dist/{helpers-uGhPZ_kK.js → helpers-EKm3X92T.js} +0 -0
  569. /package/dist/{is-main-DD0MG3N8.js → is-main-B6kCyqsv.js} +0 -0
  570. /package/dist/{is-main-DrJg4t1R.js → is-main-qJ675wPV.js} +0 -0
  571. /package/dist/{logging-BdnOSVPD.js → logging-BWRYHvLp.js} +0 -0
  572. /package/dist/{logging-fywhKCmE.js → logging-CfEk_PnX.js} +0 -0
  573. /package/dist/{openclaw-root-Dean7Fp2.js → openclaw-root-9ILYSmJ9.js} +0 -0
  574. /package/dist/{openclaw-root-CJKDUIBP.js → openclaw-root-Cvotktkd.js} +0 -0
  575. /package/dist/{parse-BB0Cqon8.js → parse-BZz5lHzQ.js} +0 -0
  576. /package/dist/{parse-DLFPuO7w.js → parse-gTOGQPH6.js} +0 -0
  577. /package/dist/{parse-log-line-B3U8Kflp.js → parse-log-line-C6szvNBZ.js} +0 -0
  578. /package/dist/{parse-log-line-BmyeB3J2.js → parse-log-line-CARp5QyJ.js} +0 -0
  579. /package/dist/{parse-timeout-BIB19Upi.js → parse-timeout-CbVKLZ4B.js} +0 -0
  580. /package/dist/{parse-timeout-CmBmmqZZ.js → parse-timeout-Du-wHHNi.js} +0 -0
  581. /package/dist/{paths-VslOJiD2.js → paths-B1kfl4h5.js} +0 -0
  582. /package/dist/{paths-BDd7_JUB.js → paths-scjhy7N2.js} +0 -0
  583. /package/dist/{progress-Dn3kWpaL.js → progress-Da1ehW-x.js} +0 -0
  584. /package/dist/{prompt-style-D5D7b3cX.js → prompt-style-Dc0C5HC9.js} +0 -0
  585. /package/dist/{prompts-CIDznuZR.js → prompts-CXLLIBwP.js} +0 -0
  586. /package/dist/{prompts-CSlE5VZB.js → prompts-FbZThK8w.js} +0 -0
  587. /package/dist/{redact-BKh-zp-c.js → redact-B8YiFlwn.js} +0 -0
  588. /package/dist/{plugin-sdk/redact-wH73ib3-.js → redact-BIMJ3ntQ.js} +0 -0
  589. /package/dist/{redact-CDPAzwi8.js → redact-DJCFY628.js} +0 -0
  590. /package/dist/{plugin-sdk/sqlite-CqVsQPIl.js → sqlite-BKl1HJFe.js} +0 -0
  591. /package/dist/{sqlite-C59YNxdL.js → sqlite-Dnmf3LS7.js} +0 -0
  592. /package/dist/{sqlite-B_L84oiu.js → sqlite-DqUEZnjO.js} +0 -0
  593. /package/dist/{status-DkW6wMxZ.js → status-CRIEi8Mc.js} +0 -0
  594. /package/dist/{status-IDW1pkc0.js → status-tCu4RWZH.js} +0 -0
  595. /package/dist/{tailnet-BijMqkqa.js → tailnet-Byp3obcc.js} +0 -0
  596. /package/dist/{tailnet-Bk5cGmwE.js → tailnet-DLDGNuH2.js} +0 -0
  597. /package/dist/{plugin-sdk/transcript-events-DOI14YeV.js → transcript-events-CZ8CG4ht.js} +0 -0
  598. /package/dist/{transcript-events-Cj85Mq0h.js → transcript-events-ChU6IQwp.js} +0 -0
  599. /package/dist/{transcript-events-DW_H__a1.js → transcript-events-JLH5W4He.js} +0 -0
  600. /package/dist/{utils-PmTbZoD1.js → utils-DX85MiPR.js} +0 -0
  601. /package/dist/{ws-Cxo2p9fH.js → ws-CEcdsnN9.js} +0 -0
  602. /package/dist/{ws-DlSkA_BG.js → ws-D091yo4M.js} +0 -0
  603. /package/docs/{platforms → install}/gcp.md +0 -0
  604. /package/docs/{platforms → install}/hetzner.md +0 -0
  605. /package/docs/{platforms → install}/macos-vm.md +0 -0
  606. /package/docs/{northflank.mdx → install/northflank.mdx} +0 -0
  607. /package/docs/{railway.mdx → install/railway.mdx} +0 -0
  608. /package/docs/{render.mdx → install/render.mdx} +0 -0
  609. /package/docs/zh-CN/{platforms → install}/exe-dev.md +0 -0
  610. /package/docs/zh-CN/{platforms → install}/fly.md +0 -0
  611. /package/docs/zh-CN/{platforms → install}/gcp.md +0 -0
  612. /package/docs/zh-CN/{platforms → install}/hetzner.md +0 -0
  613. /package/docs/zh-CN/{platforms → install}/macos-vm.md +0 -0
  614. /package/docs/zh-CN/{northflank.mdx → install/northflank.mdx} +0 -0
  615. /package/docs/zh-CN/{railway.mdx → install/railway.mdx} +0 -0
  616. /package/docs/zh-CN/{render.mdx → install/render.mdx} +0 -0
@@ -1,14 +1,16 @@
1
- import { I as listThinkingLevelLabels, P as formatThinkingLevels, U as resolveResponseUsageMode, V as normalizeUsageDisplay } from "./pi-embedded-helpers-CC00lEFI.js";
2
- import { u as resolveGatewayPort } from "./paths-BDd7_JUB.js";
3
- import { H as parseAgentSessionKey, N as normalizeAgentId, P as normalizeMainKey, c as resolveDefaultAgentId, k as buildAgentMainSessionKey } from "./agent-scope-CrgUOY3f.js";
4
- import { s as visibleWidth } from "./subsystem-46MXi6Ip.js";
5
- import { M as VERSION, r as loadConfig } from "./config-qgIz1lbh.js";
6
- import { m as GATEWAY_CLIENT_NAMES, p as GATEWAY_CLIENT_MODES } from "./message-channel-CQGWXVL4.js";
7
- import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-rIUh61kT.js";
8
- import { a as extractContentFromMessage, c as formatContextUsageLine, d as resolveFinalAssistantText, i as composeThinkingAndContent, l as formatTokens, n as formatAge, o as extractTextFromMessage, p as formatTokenCount, r as asString, s as extractThinkingFromMessage, u as isCommandMessage, v as listChatCommands, y as listChatCommandsForConfig } from "./channel-summary-C8GoEKgH.js";
9
- import { St as PROTOCOL_VERSION, t as GatewayClient } from "./client-zqMhLTAX.js";
10
- import chalk from "chalk";
1
+ import { W as resolveGatewayPort, f as visibleWidth } from "./entry.js";
2
+ import { _ as parseAgentSessionKey, c as normalizeAgentId, i as buildAgentMainSessionKey, l as normalizeMainKey } from "./session-key-CZkcvAtx.js";
3
+ import { c as resolveDefaultAgentId } from "./agent-scope-C9VjJXEK.js";
4
+ import { i as loadConfig, j as VERSION } from "./config-CKLedg5Y.js";
5
+ import { Ct as PROTOCOL_VERSION, t as GatewayClient } from "./client-CxbkcEZ7.js";
6
+ import { a as resolveExplicitGatewayAuth, r as ensureExplicitGatewayAuth } from "./call-90HgQQ8o.js";
7
+ import { f as GATEWAY_CLIENT_CAPS, h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-BlgPSDAh.js";
8
+ import { I as listThinkingLevelLabels, P as formatThinkingLevels, U as resolveResponseUsageMode, V as normalizeUsageDisplay } from "./pi-embedded-helpers-DF8SAHU-.js";
9
+ import { a as extractContentFromMessage, c as formatContextUsageLine, d as resolveFinalAssistantText, h as listChatCommandsForConfig, i as composeThinkingAndContent, l as formatTokens, m as listChatCommands, n as formatAge, o as extractTextFromMessage, r as asString, s as extractThinkingFromMessage, u as isCommandMessage } from "./channel-summary-D9nzC5WB.js";
10
+ import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-DmgKs6-V.js";
11
+ import { n as formatTokenCount } from "./usage-format-E3bMcUMV.js";
11
12
  import { spawn } from "node:child_process";
13
+ import chalk from "chalk";
12
14
  import { randomUUID } from "node:crypto";
13
15
  import { Box, CombinedAutocompleteProvider, Container, Editor, Input, Key, Loader, Markdown, ProcessTerminal, SelectList, SettingsList, Spacer, TUI, Text, getEditorKeybindings, isKeyRelease, matchesKey, truncateToWidth } from "@mariozechner/pi-tui";
14
16
  import { highlight, supportsLanguage } from "cli-highlight";
@@ -625,6 +627,7 @@ var GatewayChatClient = class {
625
627
  clientVersion: VERSION,
626
628
  platform: process.platform,
627
629
  mode: GATEWAY_CLIENT_MODES.UI,
630
+ caps: [GATEWAY_CLIENT_CAPS.TOOL_EVENTS],
628
631
  instanceId: randomUUID(),
629
632
  minProtocol: PROTOCOL_VERSION,
630
633
  maxProtocol: PROTOCOL_VERSION,
@@ -658,7 +661,7 @@ var GatewayChatClient = class {
658
661
  await this.readyPromise;
659
662
  }
660
663
  async sendChat(opts) {
661
- const runId = randomUUID();
664
+ const runId = opts.runId ?? randomUUID();
662
665
  await this.client.request("chat.send", {
663
666
  sessionKey: opts.sessionKey,
664
667
  message: opts.message,
@@ -715,10 +718,20 @@ function resolveGatewayConnection(opts) {
715
718
  const remote = isRemoteMode ? config.gateway?.remote : void 0;
716
719
  const authToken = config.gateway?.auth?.token;
717
720
  const localPort = resolveGatewayPort(config);
721
+ const urlOverride = typeof opts.url === "string" && opts.url.trim().length > 0 ? opts.url.trim() : void 0;
722
+ const explicitAuth = resolveExplicitGatewayAuth({
723
+ token: opts.token,
724
+ password: opts.password
725
+ });
726
+ ensureExplicitGatewayAuth({
727
+ urlOverride,
728
+ auth: explicitAuth,
729
+ errorHint: "Fix: pass --token or --password when using --url."
730
+ });
718
731
  return {
719
- url: (typeof opts.url === "string" && opts.url.trim().length > 0 ? opts.url.trim() : void 0) || (typeof remote?.url === "string" && remote.url.trim().length > 0 ? remote.url.trim() : void 0) || `ws://127.0.0.1:${localPort}`,
720
- token: (typeof opts.token === "string" && opts.token.trim().length > 0 ? opts.token.trim() : void 0) || (isRemoteMode ? typeof remote?.token === "string" && remote.token.trim().length > 0 ? remote.token.trim() : void 0 : process.env.OPENCLAW_GATEWAY_TOKEN?.trim() || (typeof authToken === "string" && authToken.trim().length > 0 ? authToken.trim() : void 0)),
721
- password: (typeof opts.password === "string" && opts.password.trim().length > 0 ? opts.password.trim() : void 0) || process.env.OPENCLAW_GATEWAY_PASSWORD?.trim() || (typeof remote?.password === "string" && remote.password.trim().length > 0 ? remote.password.trim() : void 0)
732
+ url: urlOverride || (typeof remote?.url === "string" && remote.url.trim().length > 0 ? remote.url.trim() : void 0) || `ws://127.0.0.1:${localPort}`,
733
+ token: explicitAuth.token || (!urlOverride ? isRemoteMode ? typeof remote?.token === "string" && remote.token.trim().length > 0 ? remote.token.trim() : void 0 : process.env.OPENCLAW_GATEWAY_TOKEN?.trim() || (typeof authToken === "string" && authToken.trim().length > 0 ? authToken.trim() : void 0) : void 0),
734
+ password: explicitAuth.password || (!urlOverride ? process.env.OPENCLAW_GATEWAY_PASSWORD?.trim() || (typeof remote?.password === "string" && remote.password.trim().length > 0 ? remote.password.trim() : void 0) : void 0)
722
735
  };
723
736
  }
724
737
 
@@ -1181,7 +1194,7 @@ function formatStatusSummary(summary) {
1181
1194
  //#endregion
1182
1195
  //#region src/tui/tui-command-handlers.ts
1183
1196
  function createCommandHandlers(context) {
1184
- const { client, chatLog, tui, opts, state, deliverDefault, openOverlay, closeOverlay, refreshSessionInfo, loadHistory, setSession, refreshAgents, abortActive, setActivityStatus, formatSessionKey } = context;
1197
+ const { client, chatLog, tui, opts, state, deliverDefault, openOverlay, closeOverlay, refreshSessionInfo, loadHistory, setSession, refreshAgents, abortActive, setActivityStatus, formatSessionKey, applySessionInfoFromPatch, noteLocalRunId, forgetLocalRunId } = context;
1185
1198
  const setAgent = async (id) => {
1186
1199
  state.currentAgentId = normalizeAgentId(id);
1187
1200
  await setSession("");
@@ -1202,11 +1215,12 @@ function createCommandHandlers(context) {
1202
1215
  selector.onSelect = (item) => {
1203
1216
  (async () => {
1204
1217
  try {
1205
- await client.patchSession({
1218
+ const result = await client.patchSession({
1206
1219
  key: state.currentSessionKey,
1207
1220
  model: item.value
1208
1221
  });
1209
1222
  chatLog.addSystem(`model set to ${item.value}`);
1223
+ applySessionInfoFromPatch(result);
1210
1224
  await refreshSessionInfo();
1211
1225
  } catch (err) {
1212
1226
  chatLog.addSystem(`model set failed: ${String(err)}`);
@@ -1370,11 +1384,12 @@ function createCommandHandlers(context) {
1370
1384
  case "model":
1371
1385
  if (!args) await openModelSelector();
1372
1386
  else try {
1373
- await client.patchSession({
1387
+ const result = await client.patchSession({
1374
1388
  key: state.currentSessionKey,
1375
1389
  model: args
1376
1390
  });
1377
1391
  chatLog.addSystem(`model set to ${args}`);
1392
+ applySessionInfoFromPatch(result);
1378
1393
  await refreshSessionInfo();
1379
1394
  } catch (err) {
1380
1395
  chatLog.addSystem(`model set failed: ${String(err)}`);
@@ -1390,11 +1405,12 @@ function createCommandHandlers(context) {
1390
1405
  break;
1391
1406
  }
1392
1407
  try {
1393
- await client.patchSession({
1408
+ const result = await client.patchSession({
1394
1409
  key: state.currentSessionKey,
1395
1410
  thinkingLevel: args
1396
1411
  });
1397
1412
  chatLog.addSystem(`thinking set to ${args}`);
1413
+ applySessionInfoFromPatch(result);
1398
1414
  await refreshSessionInfo();
1399
1415
  } catch (err) {
1400
1416
  chatLog.addSystem(`think failed: ${String(err)}`);
@@ -1406,12 +1422,13 @@ function createCommandHandlers(context) {
1406
1422
  break;
1407
1423
  }
1408
1424
  try {
1409
- await client.patchSession({
1425
+ const result = await client.patchSession({
1410
1426
  key: state.currentSessionKey,
1411
1427
  verboseLevel: args
1412
1428
  });
1413
1429
  chatLog.addSystem(`verbose set to ${args}`);
1414
- await refreshSessionInfo();
1430
+ applySessionInfoFromPatch(result);
1431
+ await loadHistory();
1415
1432
  } catch (err) {
1416
1433
  chatLog.addSystem(`verbose failed: ${String(err)}`);
1417
1434
  }
@@ -1422,11 +1439,12 @@ function createCommandHandlers(context) {
1422
1439
  break;
1423
1440
  }
1424
1441
  try {
1425
- await client.patchSession({
1442
+ const result = await client.patchSession({
1426
1443
  key: state.currentSessionKey,
1427
1444
  reasoningLevel: args
1428
1445
  });
1429
1446
  chatLog.addSystem(`reasoning set to ${args}`);
1447
+ applySessionInfoFromPatch(result);
1430
1448
  await refreshSessionInfo();
1431
1449
  } catch (err) {
1432
1450
  chatLog.addSystem(`reasoning failed: ${String(err)}`);
@@ -1442,11 +1460,12 @@ function createCommandHandlers(context) {
1442
1460
  const current = resolveResponseUsageMode(currentRaw);
1443
1461
  const next = normalized ?? (current === "off" ? "tokens" : current === "tokens" ? "full" : "off");
1444
1462
  try {
1445
- await client.patchSession({
1463
+ const result = await client.patchSession({
1446
1464
  key: state.currentSessionKey,
1447
1465
  responseUsage: next === "off" ? null : next
1448
1466
  });
1449
1467
  chatLog.addSystem(`usage footer: ${next}`);
1468
+ applySessionInfoFromPatch(result);
1450
1469
  await refreshSessionInfo();
1451
1470
  } catch (err) {
1452
1471
  chatLog.addSystem(`usage failed: ${String(err)}`);
@@ -1468,11 +1487,12 @@ function createCommandHandlers(context) {
1468
1487
  break;
1469
1488
  }
1470
1489
  try {
1471
- await client.patchSession({
1490
+ const result = await client.patchSession({
1472
1491
  key: state.currentSessionKey,
1473
1492
  elevatedLevel: args
1474
1493
  });
1475
1494
  chatLog.addSystem(`elevated set to ${args}`);
1495
+ applySessionInfoFromPatch(result);
1476
1496
  await refreshSessionInfo();
1477
1497
  } catch (err) {
1478
1498
  chatLog.addSystem(`elevated failed: ${String(err)}`);
@@ -1484,11 +1504,12 @@ function createCommandHandlers(context) {
1484
1504
  break;
1485
1505
  }
1486
1506
  try {
1487
- await client.patchSession({
1507
+ const result = await client.patchSession({
1488
1508
  key: state.currentSessionKey,
1489
1509
  groupActivation: args === "always" ? "always" : "mention"
1490
1510
  });
1491
1511
  chatLog.addSystem(`activation set to ${args}`);
1512
+ applySessionInfoFromPatch(result);
1492
1513
  await refreshSessionInfo();
1493
1514
  } catch (err) {
1494
1515
  chatLog.addSystem(`activation failed: ${String(err)}`);
@@ -1530,17 +1551,22 @@ function createCommandHandlers(context) {
1530
1551
  try {
1531
1552
  chatLog.addUser(text);
1532
1553
  tui.requestRender();
1554
+ const runId = randomUUID();
1555
+ noteLocalRunId(runId);
1556
+ state.activeChatRunId = runId;
1533
1557
  setActivityStatus("sending");
1534
- const { runId } = await client.sendChat({
1558
+ await client.sendChat({
1535
1559
  sessionKey: state.currentSessionKey,
1536
1560
  message: text,
1537
1561
  thinking: opts.thinking,
1538
1562
  deliver: deliverDefault,
1539
- timeoutMs: opts.timeoutMs
1563
+ timeoutMs: opts.timeoutMs,
1564
+ runId
1540
1565
  });
1541
- state.activeChatRunId = runId;
1542
1566
  setActivityStatus("waiting");
1543
1567
  } catch (err) {
1568
+ if (state.activeChatRunId) forgetLocalRunId?.(state.activeChatRunId);
1569
+ state.activeChatRunId = null;
1544
1570
  chatLog.addSystem(`send failed: ${String(err)}`);
1545
1571
  setActivityStatus("error");
1546
1572
  }
@@ -1612,7 +1638,7 @@ var TuiStreamAssembler = class {
1612
1638
  //#endregion
1613
1639
  //#region src/tui/tui-event-handlers.ts
1614
1640
  function createEventHandlers(context) {
1615
- const { chatLog, tui, state, setActivityStatus, refreshSessionInfo } = context;
1641
+ const { chatLog, tui, state, setActivityStatus, refreshSessionInfo, loadHistory, isLocalRunId, forgetLocalRunId, clearLocalRunIds } = context;
1616
1642
  const finalizedRuns = /* @__PURE__ */ new Map();
1617
1643
  const sessionRuns = /* @__PURE__ */ new Map();
1618
1644
  let streamAssembler = new TuiStreamAssembler();
@@ -1635,6 +1661,7 @@ function createEventHandlers(context) {
1635
1661
  finalizedRuns.clear();
1636
1662
  sessionRuns.clear();
1637
1663
  streamAssembler = new TuiStreamAssembler();
1664
+ clearLocalRunIds?.();
1638
1665
  };
1639
1666
  const noteSessionRun = (runId) => {
1640
1667
  sessionRuns.set(runId, Date.now());
@@ -1665,6 +1692,8 @@ function createEventHandlers(context) {
1665
1692
  }
1666
1693
  if (evt.state === "final") {
1667
1694
  if (isCommandMessage(evt.message)) {
1695
+ if (isLocalRunId?.(evt.runId)) forgetLocalRunId?.(evt.runId);
1696
+ else loadHistory?.();
1668
1697
  const text = extractTextFromMessage(evt.message);
1669
1698
  if (text) chatLog.addSystem(text);
1670
1699
  streamAssembler.drop(evt.runId);
@@ -1675,6 +1704,8 @@ function createEventHandlers(context) {
1675
1704
  tui.requestRender();
1676
1705
  return;
1677
1706
  }
1707
+ if (isLocalRunId?.(evt.runId)) forgetLocalRunId?.(evt.runId);
1708
+ else loadHistory?.();
1678
1709
  const stopReason = evt.message && typeof evt.message === "object" && !Array.isArray(evt.message) ? typeof evt.message.stopReason === "string" ? evt.message.stopReason : "" : "";
1679
1710
  const finalText = streamAssembler.finalize(evt.runId, evt.message, state.showThinking);
1680
1711
  chatLog.finalizeAssistant(finalText, evt.runId);
@@ -1690,6 +1721,8 @@ function createEventHandlers(context) {
1690
1721
  state.activeChatRunId = null;
1691
1722
  setActivityStatus("aborted");
1692
1723
  refreshSessionInfo?.();
1724
+ if (isLocalRunId?.(evt.runId)) forgetLocalRunId?.(evt.runId);
1725
+ else loadHistory?.();
1693
1726
  }
1694
1727
  if (evt.state === "error") {
1695
1728
  chatLog.addSystem(`run error: ${evt.errorMessage ?? "unknown"}`);
@@ -1698,6 +1731,8 @@ function createEventHandlers(context) {
1698
1731
  state.activeChatRunId = null;
1699
1732
  setActivityStatus("error");
1700
1733
  refreshSessionInfo?.();
1734
+ if (isLocalRunId?.(evt.runId)) forgetLocalRunId?.(evt.runId);
1735
+ else loadHistory?.();
1701
1736
  }
1702
1737
  tui.requestRender();
1703
1738
  };
@@ -1706,16 +1741,23 @@ function createEventHandlers(context) {
1706
1741
  const evt = payload;
1707
1742
  syncSessionKey();
1708
1743
  const isActiveRun = evt.runId === state.activeChatRunId;
1709
- if (!isActiveRun && !sessionRuns.has(evt.runId)) return;
1744
+ if (!(isActiveRun || sessionRuns.has(evt.runId) || finalizedRuns.has(evt.runId))) return;
1710
1745
  if (evt.stream === "tool") {
1746
+ const verbose = state.sessionInfo.verboseLevel ?? "off";
1747
+ const allowToolEvents = verbose !== "off";
1748
+ const allowToolOutput = verbose === "full";
1749
+ if (!allowToolEvents) return;
1711
1750
  const data = evt.data ?? {};
1712
1751
  const phase = asString(data.phase, "");
1713
1752
  const toolCallId = asString(data.toolCallId, "");
1714
1753
  const toolName = asString(data.name, "tool");
1715
1754
  if (!toolCallId) return;
1716
1755
  if (phase === "start") chatLog.startTool(toolCallId, toolName, data.args);
1717
- else if (phase === "update") chatLog.updateToolResult(toolCallId, data.partialResult, { partial: true });
1718
- else if (phase === "result") chatLog.updateToolResult(toolCallId, data.result, { isError: Boolean(data.isError) });
1756
+ else if (phase === "update") {
1757
+ if (!allowToolOutput) return;
1758
+ chatLog.updateToolResult(toolCallId, data.partialResult, { partial: true });
1759
+ } else if (phase === "result") if (allowToolOutput) chatLog.updateToolResult(toolCallId, data.result, { isError: Boolean(data.isError) });
1760
+ else chatLog.updateToolResult(toolCallId, { content: [] }, { isError: Boolean(data.isError) });
1719
1761
  tui.requestRender();
1720
1762
  return;
1721
1763
  }
@@ -1845,8 +1887,9 @@ function createOverlayHandlers(host, fallbackFocus) {
1845
1887
  //#endregion
1846
1888
  //#region src/tui/tui-session-actions.ts
1847
1889
  function createSessionActions(context) {
1848
- const { client, chatLog, tui, opts, state, agentNames, initialSessionInput, initialSessionAgentId, resolveSessionKey, updateHeader, updateFooter, updateAutocompleteProvider, setActivityStatus } = context;
1849
- let refreshSessionInfoPromise = null;
1890
+ const { client, chatLog, tui, opts, state, agentNames, initialSessionInput, initialSessionAgentId, resolveSessionKey, updateHeader, updateFooter, updateAutocompleteProvider, setActivityStatus, clearLocalRunIds } = context;
1891
+ let refreshSessionInfoPromise = Promise.resolve();
1892
+ let lastSessionDefaults = null;
1850
1893
  const applyAgentsResult = (result) => {
1851
1894
  state.agentDefaultId = normalizeAgentId(result.defaultId);
1852
1895
  state.sessionMainKey = normalizeMainKey(result.mainKey);
@@ -1881,46 +1924,102 @@ function createSessionActions(context) {
1881
1924
  const next = normalizeAgentId(parsed.agentId);
1882
1925
  if (next !== state.currentAgentId) state.currentAgentId = next;
1883
1926
  };
1884
- const refreshSessionInfo = async () => {
1885
- if (refreshSessionInfoPromise) return refreshSessionInfoPromise;
1886
- refreshSessionInfoPromise = (async () => {
1887
- try {
1888
- const listAgentId = state.currentSessionKey === "global" || state.currentSessionKey === "unknown" ? void 0 : state.currentAgentId;
1889
- const result = await client.listSessions({
1890
- includeGlobal: false,
1891
- includeUnknown: false,
1892
- agentId: listAgentId
1893
- });
1894
- const entry = result.sessions.find((row) => {
1895
- if (row.key === state.currentSessionKey) return true;
1896
- return parseAgentSessionKey(row.key)?.rest === state.currentSessionKey;
1897
- });
1898
- state.sessionInfo = {
1899
- thinkingLevel: entry?.thinkingLevel,
1900
- verboseLevel: entry?.verboseLevel,
1901
- reasoningLevel: entry?.reasoningLevel,
1902
- model: entry?.model ?? result.defaults?.model ?? void 0,
1903
- modelProvider: entry?.modelProvider ?? result.defaults?.modelProvider ?? void 0,
1904
- contextTokens: entry?.contextTokens ?? result.defaults?.contextTokens,
1905
- inputTokens: entry?.inputTokens ?? null,
1906
- outputTokens: entry?.outputTokens ?? null,
1907
- totalTokens: entry?.totalTokens ?? null,
1908
- responseUsage: entry?.responseUsage,
1909
- updatedAt: entry?.updatedAt ?? null,
1910
- displayName: entry?.displayName
1911
- };
1912
- } catch (err) {
1913
- chatLog.addSystem(`sessions list failed: ${String(err)}`);
1914
- }
1915
- updateAutocompleteProvider();
1916
- updateFooter();
1917
- tui.requestRender();
1918
- })();
1927
+ const resolveModelSelection = (entry) => {
1928
+ if (entry?.modelProvider || entry?.model) return {
1929
+ modelProvider: entry.modelProvider ?? state.sessionInfo.modelProvider,
1930
+ model: entry.model ?? state.sessionInfo.model
1931
+ };
1932
+ const overrideModel = entry?.modelOverride?.trim();
1933
+ if (overrideModel) return {
1934
+ modelProvider: entry?.providerOverride?.trim() || state.sessionInfo.modelProvider,
1935
+ model: overrideModel
1936
+ };
1937
+ return {
1938
+ modelProvider: state.sessionInfo.modelProvider,
1939
+ model: state.sessionInfo.model
1940
+ };
1941
+ };
1942
+ const applySessionInfo = (params) => {
1943
+ const entry = params.entry ?? void 0;
1944
+ const defaults = params.defaults ?? lastSessionDefaults ?? void 0;
1945
+ const previousDefaults = lastSessionDefaults;
1946
+ const defaultsChanged = params.defaults ? previousDefaults?.model !== params.defaults.model || previousDefaults?.modelProvider !== params.defaults.modelProvider || previousDefaults?.contextTokens !== params.defaults.contextTokens : false;
1947
+ if (params.defaults) lastSessionDefaults = params.defaults;
1948
+ const entryUpdatedAt = entry?.updatedAt ?? null;
1949
+ const currentUpdatedAt = state.sessionInfo.updatedAt ?? null;
1950
+ const modelChanged = entry?.modelProvider !== void 0 && entry.modelProvider !== state.sessionInfo.modelProvider || entry?.model !== void 0 && entry.model !== state.sessionInfo.model;
1951
+ if (!params.force && entryUpdatedAt !== null && currentUpdatedAt !== null && entryUpdatedAt < currentUpdatedAt && !defaultsChanged && !modelChanged) return;
1952
+ const next = { ...state.sessionInfo };
1953
+ if (entry?.thinkingLevel !== void 0) next.thinkingLevel = entry.thinkingLevel;
1954
+ if (entry?.verboseLevel !== void 0) next.verboseLevel = entry.verboseLevel;
1955
+ if (entry?.reasoningLevel !== void 0) next.reasoningLevel = entry.reasoningLevel;
1956
+ if (entry?.responseUsage !== void 0) next.responseUsage = entry.responseUsage;
1957
+ if (entry?.inputTokens !== void 0) next.inputTokens = entry.inputTokens;
1958
+ if (entry?.outputTokens !== void 0) next.outputTokens = entry.outputTokens;
1959
+ if (entry?.totalTokens !== void 0) next.totalTokens = entry.totalTokens;
1960
+ if (entry?.contextTokens !== void 0 || defaults?.contextTokens !== void 0) next.contextTokens = entry?.contextTokens ?? defaults?.contextTokens ?? state.sessionInfo.contextTokens;
1961
+ if (entry?.displayName !== void 0) next.displayName = entry.displayName;
1962
+ if (entry?.updatedAt !== void 0) next.updatedAt = entry.updatedAt;
1963
+ const selection = resolveModelSelection(entry);
1964
+ if (selection.modelProvider !== void 0) next.modelProvider = selection.modelProvider;
1965
+ if (selection.model !== void 0) next.model = selection.model;
1966
+ state.sessionInfo = next;
1967
+ updateAutocompleteProvider();
1968
+ updateFooter();
1969
+ tui.requestRender();
1970
+ };
1971
+ const runRefreshSessionInfo = async () => {
1919
1972
  try {
1920
- await refreshSessionInfoPromise;
1921
- } finally {
1922
- refreshSessionInfoPromise = null;
1973
+ const resolveListAgentId = () => {
1974
+ if (state.currentSessionKey === "global" || state.currentSessionKey === "unknown") return;
1975
+ const parsed = parseAgentSessionKey(state.currentSessionKey);
1976
+ return parsed?.agentId ? normalizeAgentId(parsed.agentId) : state.currentAgentId;
1977
+ };
1978
+ const listAgentId = resolveListAgentId();
1979
+ const result = await client.listSessions({
1980
+ includeGlobal: false,
1981
+ includeUnknown: false,
1982
+ agentId: listAgentId
1983
+ });
1984
+ const normalizeMatchKey = (key) => parseAgentSessionKey(key)?.rest ?? key;
1985
+ const currentMatchKey = normalizeMatchKey(state.currentSessionKey);
1986
+ const entry = result.sessions.find((row) => {
1987
+ if (row.key === state.currentSessionKey) return true;
1988
+ return normalizeMatchKey(row.key) === currentMatchKey;
1989
+ });
1990
+ if (entry?.key && entry.key !== state.currentSessionKey) {
1991
+ updateAgentFromSessionKey(entry.key);
1992
+ state.currentSessionKey = entry.key;
1993
+ updateHeader();
1994
+ }
1995
+ applySessionInfo({
1996
+ entry,
1997
+ defaults: result.defaults
1998
+ });
1999
+ } catch (err) {
2000
+ chatLog.addSystem(`sessions list failed: ${String(err)}`);
2001
+ }
2002
+ };
2003
+ const refreshSessionInfo = async () => {
2004
+ refreshSessionInfoPromise = refreshSessionInfoPromise.then(runRefreshSessionInfo, runRefreshSessionInfo);
2005
+ await refreshSessionInfoPromise;
2006
+ };
2007
+ const applySessionInfoFromPatch = (result) => {
2008
+ if (!result?.entry) return;
2009
+ if (result.key && result.key !== state.currentSessionKey) {
2010
+ updateAgentFromSessionKey(result.key);
2011
+ state.currentSessionKey = result.key;
2012
+ updateHeader();
1923
2013
  }
2014
+ const resolved = result.resolved;
2015
+ applySessionInfo({
2016
+ entry: resolved && (resolved.modelProvider || resolved.model) ? {
2017
+ ...result.entry,
2018
+ modelProvider: resolved.modelProvider ?? result.entry.modelProvider,
2019
+ model: resolved.model ?? result.entry.model
2020
+ } : result.entry,
2021
+ force: true
2022
+ });
1924
2023
  };
1925
2024
  const loadHistory = async () => {
1926
2025
  try {
@@ -1930,6 +2029,8 @@ function createSessionActions(context) {
1930
2029
  });
1931
2030
  state.currentSessionId = typeof record.sessionId === "string" ? record.sessionId : null;
1932
2031
  state.sessionInfo.thinkingLevel = record.thinkingLevel ?? state.sessionInfo.thinkingLevel;
2032
+ state.sessionInfo.verboseLevel = record.verboseLevel ?? state.sessionInfo.verboseLevel;
2033
+ const showTools = (state.sessionInfo.verboseLevel ?? "off") !== "off";
1933
2034
  chatLog.clearAll();
1934
2035
  chatLog.addSystem(`session ${state.currentSessionKey}`);
1935
2036
  for (const entry of record.messages ?? []) {
@@ -1951,6 +2052,7 @@ function createSessionActions(context) {
1951
2052
  continue;
1952
2053
  }
1953
2054
  if (message.role === "toolResult") {
2055
+ if (!showTools) continue;
1954
2056
  const toolCallId = asString(message.toolCallId, "");
1955
2057
  const toolName = asString(message.toolName, "tool");
1956
2058
  chatLog.startTool(toolCallId, toolName, {}).setResult({
@@ -1973,6 +2075,7 @@ function createSessionActions(context) {
1973
2075
  state.activeChatRunId = null;
1974
2076
  state.currentSessionId = null;
1975
2077
  state.historyLoaded = false;
2078
+ clearLocalRunIds?.();
1976
2079
  updateHeader();
1977
2080
  updateFooter();
1978
2081
  await loadHistory();
@@ -1999,6 +2102,7 @@ function createSessionActions(context) {
1999
2102
  applyAgentsResult,
2000
2103
  refreshAgents,
2001
2104
  refreshSessionInfo,
2105
+ applySessionInfoFromPatch,
2002
2106
  loadHistory,
2003
2107
  setSession,
2004
2108
  abortActive
@@ -2079,6 +2183,7 @@ async function runTui(opts) {
2079
2183
  let wasDisconnected = false;
2080
2184
  let toolsExpanded = false;
2081
2185
  let showThinking = false;
2186
+ const localRunIds = /* @__PURE__ */ new Set();
2082
2187
  const deliverDefault = opts.deliver ?? false;
2083
2188
  const autoMessage = opts.message?.trim();
2084
2189
  let autoMessageSent = false;
@@ -2206,6 +2311,21 @@ async function runTui(opts) {
2206
2311
  lastCtrlCAt = value;
2207
2312
  }
2208
2313
  };
2314
+ const noteLocalRunId = (runId) => {
2315
+ if (!runId) return;
2316
+ localRunIds.add(runId);
2317
+ if (localRunIds.size > 200) {
2318
+ const [first] = localRunIds;
2319
+ if (first) localRunIds.delete(first);
2320
+ }
2321
+ };
2322
+ const forgetLocalRunId = (runId) => {
2323
+ localRunIds.delete(runId);
2324
+ };
2325
+ const isLocalRunId = (runId) => localRunIds.has(runId);
2326
+ const clearLocalRunIds = () => {
2327
+ localRunIds.clear();
2328
+ };
2209
2329
  const client = new GatewayChatClient({
2210
2330
  url: opts.url,
2211
2331
  token: opts.token,
@@ -2390,7 +2510,7 @@ async function runTui(opts) {
2390
2510
  footer.setText(theme.dim(footerParts.join(" | ")));
2391
2511
  };
2392
2512
  const { openOverlay, closeOverlay } = createOverlayHandlers(tui, editor);
2393
- const { refreshAgents, refreshSessionInfo, loadHistory, setSession, abortActive } = createSessionActions({
2513
+ const { refreshAgents, refreshSessionInfo, applySessionInfoFromPatch, loadHistory, setSession, abortActive } = createSessionActions({
2394
2514
  client,
2395
2515
  chatLog,
2396
2516
  tui,
@@ -2407,14 +2527,19 @@ async function runTui(opts) {
2407
2527
  updateHeader,
2408
2528
  updateFooter,
2409
2529
  updateAutocompleteProvider,
2410
- setActivityStatus
2530
+ setActivityStatus,
2531
+ clearLocalRunIds
2411
2532
  });
2412
2533
  const { handleChatEvent, handleAgentEvent } = createEventHandlers({
2413
2534
  chatLog,
2414
2535
  tui,
2415
2536
  state,
2416
2537
  setActivityStatus,
2417
- refreshSessionInfo
2538
+ refreshSessionInfo,
2539
+ loadHistory,
2540
+ isLocalRunId,
2541
+ forgetLocalRunId,
2542
+ clearLocalRunIds
2418
2543
  });
2419
2544
  const { handleCommand, sendMessage, openModelSelector, openAgentSelector, openSessionSelector } = createCommandHandlers({
2420
2545
  client,
@@ -2426,12 +2551,15 @@ async function runTui(opts) {
2426
2551
  openOverlay,
2427
2552
  closeOverlay,
2428
2553
  refreshSessionInfo,
2554
+ applySessionInfoFromPatch,
2429
2555
  loadHistory,
2430
2556
  setSession,
2431
2557
  refreshAgents,
2432
2558
  abortActive,
2433
2559
  setActivityStatus,
2434
- formatSessionKey
2560
+ formatSessionKey,
2561
+ noteLocalRunId,
2562
+ forgetLocalRunId
2435
2563
  });
2436
2564
  const { runLocalShellLine } = createLocalShellRunner({
2437
2565
  chatLog,