@nikolasp98/minion 2026.6.16-dev.20260703022951 → 2026.7.2-dev

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 (469) hide show
  1. package/dist/{accounts-BuvRfQ9w.js → accounts-BXfCjq1s.js} +1 -1
  2. package/dist/{accounts-ZaxCwsI7.js → accounts-CgVj_ZvT.js} +1 -1
  3. package/dist/{accounts-BXGQwBCy.js → accounts-D0IauaHf.js} +1 -1
  4. package/dist/{accounts-D085lEm1.js → accounts-xwGx4GiG.js} +1 -1
  5. package/dist/{acp-cli-B33pR8aO.js → acp-cli-BofVv1S4.js} +3 -3
  6. package/dist/{acp-cli-B4TQ6ceB.js → acp-cli-KgewsPtq.js} +3 -3
  7. package/dist/{agent-ZEu8LatG.js → agent-h6HcO0Nb.js} +12 -12
  8. package/dist/{agent-step-GW1K3X_z.js → agent-step-CW6Vc9VA.js} +3 -3
  9. package/dist/{agent-step-CIwF1fe4.js → agent-step-DIqiZqN6.js} +3 -3
  10. package/dist/{agents-B-tnV6jT.js → agents-CRuMaUxh.js} +8 -8
  11. package/dist/{agents-list-tool-CpeEmvE6.js → agents-list-tool-DHrkIYwP.js} +3 -3
  12. package/dist/{agents-list-tool-C4DN0VKm.js → agents-list-tool-mV9-nOC8.js} +2 -2
  13. package/dist/{agents-list-tool-B1yRv0qo.js → agents-list-tool-qgS6iC-S.js} +3 -3
  14. package/dist/{agents.config-DU05dCcQ.js → agents.config-D6xx-kCm.js} +11 -11
  15. package/dist/{audit-Ck8w3i0g.js → audit-C4vWcnRT.js} +10 -10
  16. package/dist/{audit-BlADGCfR.js → audit-yMw0xC1H.js} +10 -10
  17. package/dist/{auth-choice-_HdhC1Ax.js → auth-choice-B3sdr0yr.js} +4 -4
  18. package/dist/{auth-choice-DXK-xwEZ.js → auth-choice-wAcjEzAw.js} +4 -4
  19. package/dist/{banner-DyN6sF2C.js → banner-XDf4LEG4.js} +1 -1
  20. package/dist/booking-cancel-tool-BQ4a7cOG.js +34 -0
  21. package/dist/booking-cancel-tool-D5WT2e71.js +34 -0
  22. package/dist/booking-cancel-tool-T0j0NEYJ.js +34 -0
  23. package/dist/booking-create-tool-B9OhlsCV.js +50 -0
  24. package/dist/booking-create-tool-C4mnxn4s.js +50 -0
  25. package/dist/booking-create-tool-DoK1URaw.js +50 -0
  26. package/dist/booking-reschedule-tool-BBRT8BeA.js +54 -0
  27. package/dist/booking-reschedule-tool-BbCUsgsS.js +54 -0
  28. package/dist/booking-reschedule-tool-szF6zAV5.js +54 -0
  29. package/dist/bookings-query-tool-BeUjMBd7.js +39 -0
  30. package/dist/bookings-query-tool-C82uomRU.js +39 -0
  31. package/dist/bookings-query-tool-CKBaEz6v.js +39 -0
  32. package/dist/brain-remember-tool-5GpyMh2L.js +54 -0
  33. package/dist/brain-remember-tool-C0NYC-xc.js +54 -0
  34. package/dist/brain-remember-tool-C6nzb0DB.js +54 -0
  35. package/dist/brain-search-tool-CISjpiVH.js +37 -0
  36. package/dist/brain-search-tool-CroWlajo.js +37 -0
  37. package/dist/brain-search-tool-D8benSIw.js +37 -0
  38. package/dist/brains-list-tool-CgKa84V3.js +27 -0
  39. package/dist/brains-list-tool-D6S8eSfu.js +27 -0
  40. package/dist/brains-list-tool-QygvDpW2.js +27 -0
  41. package/dist/{browser-cli-B61sRYcg.js → browser-cli-ChMgod93.js} +4 -4
  42. package/dist/{browser-cli-CmTcAyLB.js → browser-cli-DAsazj7c.js} +4 -4
  43. package/dist/{browser-tool-DcFsvT1U.js → browser-tool-CMPuFbvY.js} +6 -6
  44. package/dist/{browser-tool-BssHihtr.js → browser-tool-Ed0u_AOB.js} +7 -7
  45. package/dist/{browser-tool-BkX_TrBo.js → browser-tool-fWwWyaEp.js} +7 -7
  46. package/dist/build-info.json +3 -3
  47. package/dist/bundled/boot-md/handler.js +1566 -11
  48. package/dist/bundled/kg-message-sync/handler.js +1 -1
  49. package/dist/{call-ByUO9iKO.js → call-BEIi33qI.js} +1 -1
  50. package/dist/{call-DtlNtNVA.js → call-BPWvRjRm.js} +2 -2
  51. package/dist/{call-_kPuw-vU.js → call-BtA9WrCC.js} +2 -2
  52. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  53. package/dist/{canvas-tool-WyTrg2j9.js → canvas-tool-CRjzdRXW.js} +2 -2
  54. package/dist/{canvas-tool-DEtMG6i2.js → canvas-tool-Ctyu2how.js} +2 -2
  55. package/dist/{canvas-tool-CzpnmWAn.js → canvas-tool-ftxzYBaK.js} +2 -2
  56. package/dist/{channel-options-Cnz3IGd9.js → channel-options-CQYFDEhv.js} +2 -2
  57. package/dist/{channel-options-DopXFSyZ.js → channel-options-ax7LAM0A.js} +2 -2
  58. package/dist/{channel-selection-CYImJUQg.js → channel-selection-CEx__vtW.js} +1 -1
  59. package/dist/{channel-selection-iTEcjxYC.js → channel-selection-SE_1hB_M.js} +1 -1
  60. package/dist/{channel-web-C61ymAAy.js → channel-web-BBuKa6h3.js} +11 -11
  61. package/dist/{channels-cli-CG1PrWEi.js → channels-cli-B9G06Fmo.js} +13 -13
  62. package/dist/{channels-cli-B5AFLqYY.js → channels-cli-CMytcEwb.js} +13 -13
  63. package/dist/{channels-status-issues-CruUpZ5_.js → channels-status-issues-2UslYkyj.js} +1 -1
  64. package/dist/{channels-status-issues-DQudmpKi.js → channels-status-issues-D-Uign2B.js} +1 -1
  65. package/dist/{chrome-SXjxMlpf.js → chrome-8ypx9Y_Q.js} +2 -2
  66. package/dist/{chrome-BXvOfh_S.js → chrome-Bm0i3JJ5.js} +1 -1
  67. package/dist/{chrome-BiJw-KLb.js → chrome-CKpv4Nqu.js} +2 -2
  68. package/dist/{clawbot-cli-BqIjHYyO.js → clawbot-cli-B0dcEO3n.js} +1 -1
  69. package/dist/{clawbot-cli-DEFNc0eF.js → clawbot-cli-BhkD8jAi.js} +1 -1
  70. package/dist/cli/daemon-cli.js +1 -1
  71. package/dist/{cli-BOOG9rRa.js → cli-Bb8BwFKn.js} +3 -3
  72. package/dist/{cli-XfQlZlkf.js → cli-BkYzSkm4.js} +3 -3
  73. package/dist/{client-CS7cx9Im.js → client-CFTzdF7N.js} +4 -4
  74. package/dist/{client-BWtnXqf6.js → client-Ct-X1nzk.js} +4 -4
  75. package/dist/{client-0oQQSzns.js → client-DkJ5jqsl.js} +4 -4
  76. package/dist/{command-registry-JmDW6Nn6.js → command-registry-DYwO0GeY.js} +14 -14
  77. package/dist/{commands-registry-BAl7QGCh.js → commands-registry-CTh_zaQh.js} +2 -2
  78. package/dist/{commands-registry-apXzRQIt.js → commands-registry-eYNgWaeM.js} +2 -2
  79. package/dist/{completion-cli-CLXHz8g6.js → completion-cli-BR3ceW8A.js} +2 -2
  80. package/dist/{completion-cli-hYHXI1uh.js → completion-cli-DF_9tlQG.js} +1 -1
  81. package/dist/{config-D0cZAiW5.js → config-DKbC00-8.js} +1 -1
  82. package/dist/{config-C4ygZaLQ.js → config-GA90_ZLO.js} +1 -1
  83. package/dist/{config-cli-WVl6fLmt.js → config-cli-BFBb_KPM.js} +3 -3
  84. package/dist/{config-cli-a6kX0DWm.js → config-cli-DqrSBbB0.js} +3 -3
  85. package/dist/{config-guard-CLHcu3Wq.js → config-guard-CUaqhHD3.js} +3 -3
  86. package/dist/config-guard-CljBFSot.js +2 -0
  87. package/dist/{config-validation-uXqheWDj.js → config-validation-B7WbrARG.js} +2 -2
  88. package/dist/{config-validation-BUM-4lnJ.js → config-validation-BLe1mTWt.js} +2 -2
  89. package/dist/{config-UjWeYUCv.js → config-yRiIX18Z.js} +1 -1
  90. package/dist/{configure-DqZ20Fm1.js → configure-BVS7Uoe1.js} +16 -16
  91. package/dist/{configure-W7doYXjc.js → configure-Y4orl1oO.js} +16 -16
  92. package/dist/contact-tag-tool-B2IwH12w.js +43 -0
  93. package/dist/contact-tag-tool-BCTLI9AF.js +43 -0
  94. package/dist/contact-tag-tool-D-ow4Isv.js +43 -0
  95. package/dist/contact-update-tool-BUqDMu6g.js +48 -0
  96. package/dist/contact-update-tool-BtNz3sPT.js +48 -0
  97. package/dist/contact-update-tool-CuE27eki.js +48 -0
  98. package/dist/{cron-cli-D8dfzuy8.js → cron-cli-CMq19JHd.js} +3 -3
  99. package/dist/{cron-cli-abqQP_b7.js → cron-cli-DnZ4sbsM.js} +2 -2
  100. package/dist/{cron-tool-DT-Juzd0.js → cron-tool-BwIsBYaw.js} +5 -5
  101. package/dist/{cron-tool-CfZIJWk_.js → cron-tool-CsOKL3c2.js} +4 -4
  102. package/dist/{cron-tool-CvjJ7eWq.js → cron-tool-DyEs4iFg.js} +5 -5
  103. package/dist/{daemon-cli-LfpGMPoH.js → daemon-cli-CueUsD00.js} +9 -9
  104. package/dist/{daemon-cli-Dk4HnYpN.js → daemon-cli-of4aZf7x.js} +9 -9
  105. package/dist/daemon-cli.js +1 -1
  106. package/dist/daemon-install-helpers-BTrwyLn2.js +2 -0
  107. package/dist/daemon-install-helpers-DrlG4q0g.js +2 -0
  108. package/dist/{daemon-runtime-CWwiPJlC.js → daemon-runtime-Bc1wF1kV.js} +1 -1
  109. package/dist/{daemon-runtime-CYbnHdnj.js → daemon-runtime-DDr_cMqE.js} +1 -1
  110. package/dist/{deliver-BL-x0LSd.js → deliver-9LL4m3Lu.js} +6 -6
  111. package/dist/{deliver-W1AG1DOn.js → deliver-BQbh88Tj.js} +4 -4
  112. package/dist/{deliver-Cl_KmOId.js → deliver-UZw-uP-N.js} +5 -5
  113. package/dist/{deps-nXmpIQZI.js → deps-BDdvdX9C.js} +7 -7
  114. package/dist/{devices-cli-DnCpjN6g.js → devices-cli-C4beZBw0.js} +1 -1
  115. package/dist/{devices-cli-BRK10uvX.js → devices-cli-DLos0jsr.js} +1 -1
  116. package/dist/{diagnostic-BzRwZgem.js → diagnostic-VfvbQ5fw.js} +2 -2
  117. package/dist/{diagnostic-session-state-DxmmFAAh.js → diagnostic-session-state-CBHZ89g9.js} +1 -1
  118. package/dist/{directory-cli-C5N6RWl4.js → directory-cli-Bnn8FmVY.js} +4 -4
  119. package/dist/{directory-cli-BL_qihxU.js → directory-cli-DqwjijGj.js} +4 -4
  120. package/dist/{dispatcher-D1AyKtq_.js → dispatcher-D0-a_KPL.js} +7 -7
  121. package/dist/{dispatcher-zNWlur8g.js → dispatcher-DiHR8NYb.js} +7 -7
  122. package/dist/{dm-policy-shared-ClqzKx9w.js → dm-policy-shared-COFFISSw.js} +2 -2
  123. package/dist/{dm-policy-shared-C48I2hKE.js → dm-policy-shared-Db1R5Al0.js} +2 -2
  124. package/dist/{dns-cli-6CZeX7fy.js → dns-cli-BLIp6tn8.js} +2 -2
  125. package/dist/{dns-cli-C1Zhq42E.js → dns-cli-DU4VfG3C.js} +2 -2
  126. package/dist/{doctor-completion-Bpn4-Oq7.js → doctor-completion-8taj147x.js} +1 -1
  127. package/dist/doctor-completion-Bu80Av1s.js +2 -0
  128. package/dist/doctor-completion-BzTZPUY3.js +2 -0
  129. package/dist/{doctor-completion-DvFl76Xq.js → doctor-completion-lFqnioUo.js} +1 -1
  130. package/dist/{doctor-config-flow-CR7fJOuO.js → doctor-config-flow-3lyK6GXd.js} +5 -5
  131. package/dist/{doctor-config-flow-B_rg9smn.js → doctor-config-flow-DPD_mReb.js} +5 -5
  132. package/dist/entry.js +1 -1
  133. package/dist/{exec-approvals-cli-CgGc4dVa.js → exec-approvals-cli-BfC19d1o.js} +2 -2
  134. package/dist/{exec-approvals-cli-BHbQggLt.js → exec-approvals-cli-CljRgEuO.js} +2 -2
  135. package/dist/extensionAPI.js +2 -2
  136. package/dist/finance-query-tool-7NGJzyjQ.js +43 -0
  137. package/dist/finance-query-tool-Bc-nST7-.js +43 -0
  138. package/dist/finance-query-tool-DEh-8uf3.js +43 -0
  139. package/dist/{gateway-CDqi7AYG.js → gateway-CrExAmqV.js} +2 -2
  140. package/dist/{gateway-DnQbLapC.js → gateway-DE7-sAMu.js} +3 -3
  141. package/dist/{gateway-BZ_rGbzx.js → gateway-Dt8tSFHA.js} +3 -3
  142. package/dist/{gateway-cli-DHMb1UuP.js → gateway-cli-BNdl5ETB.js} +40 -40
  143. package/dist/{gateway-cli-C5N07CtU.js → gateway-cli-avHq5s28.js} +44 -44
  144. package/dist/{gateway-rpc-BbkbWt3G.js → gateway-rpc-14Q1TtPH.js} +1 -1
  145. package/dist/{gateway-rpc-D4kSkkPS.js → gateway-rpc-l0Ix-6Kp.js} +1 -1
  146. package/dist/{gateway-tool-z8-vPF0-.js → gateway-tool-BWSVz3lE.js} +3 -3
  147. package/dist/{gateway-tool-koliixkR.js → gateway-tool-CX6hKwWR.js} +3 -3
  148. package/dist/{gateway-tool-D_6Uf9GQ.js → gateway-tool-CavUON8u.js} +3 -3
  149. package/dist/{github-copilot-auth-DXRIXhwE.js → github-copilot-auth-BVranXiA.js} +2 -2
  150. package/dist/{github-copilot-auth-vZIh62h7.js → github-copilot-auth-LevK6DQr.js} +2 -2
  151. package/dist/{gmail-C67NcH03.js → gmail-C1xWwBqt.js} +1 -1
  152. package/dist/{gmail-CKdlz_2l.js → gmail-rJdWhPq_.js} +1 -1
  153. package/dist/{health-B68NlCPU.js → health-CmEEKiew.js} +8 -8
  154. package/dist/{health-BH4SZIqw.js → health-DPusbWbK.js} +8 -8
  155. package/dist/{helpers-DX7IrTxf.js → helpers-DrKNVVVu.js} +1 -1
  156. package/dist/{helpers-DfUDP_7P.js → helpers-v9HeNa7s.js} +1 -1
  157. package/dist/{hooks-cli-fogVtYj5.js → hooks-cli-Di-nx8CI.js} +2 -2
  158. package/dist/{hooks-cli-C2Wx1UBL.js → hooks-cli-DqnwazMm.js} +2 -2
  159. package/dist/hub-common-BXMO3y1A.js +58 -0
  160. package/dist/hub-common-D7t3vbq1.js +58 -0
  161. package/dist/hub-pages-tool-CcT1qxV9.js +27 -0
  162. package/dist/hub-pages-tool-D-3FEFsZ.js +27 -0
  163. package/dist/hub-pages-tool-DoDvLDFh.js +27 -0
  164. package/dist/{image-tool-DrPrAhPE.js → image-tool-BjcTww_z.js} +2 -2
  165. package/dist/{image-tool-BjwEfIHS.js → image-tool-CZln47nw.js} +2 -2
  166. package/dist/{image-tool-t2URJv9Q.js → image-tool-CqG2fJgM.js} +2 -2
  167. package/dist/index.js +10 -10
  168. package/dist/{io-D6HAGfRj.js → io-CUOJNJs6.js} +1 -1
  169. package/dist/{io-e4Yx5ZqN.js → io-DsXKMvz3.js} +1 -1
  170. package/dist/{ir-CRQw8rC-.js → ir-B5YPvQFJ.js} +1 -1
  171. package/dist/{ir-Dw5why5w.js → ir-D89aqXPf.js} +4 -4
  172. package/dist/{ir-CXYhC_s0.js → ir-Dc6AWYIi.js} +1 -1
  173. package/dist/{knowledge-graph-DY3hX2id.js → knowledge-graph-MfRaP31I.js} +1 -1
  174. package/dist/{lifecycle-core-DodDF7fD.js → lifecycle-core-B5yxpQrN.js} +3 -3
  175. package/dist/{lifecycle-core-eActrcsn.js → lifecycle-core-BgBdMtfY.js} +3 -3
  176. package/dist/{logs-cli-BOKzwD3q.js → logs-cli-DCwto3gl.js} +2 -2
  177. package/dist/{logs-cli-Dogt71JB.js → logs-cli-DhL544qw.js} +2 -2
  178. package/dist/{manager-BEO63FwF.js → manager-DaF7qlnz.js} +1 -1
  179. package/dist/{memory-cli-DYHzddiH.js → memory-cli-BnAPYY9h.js} +2 -2
  180. package/dist/{memory-cli-QIIevuLL.js → memory-cli-DcenbgYg.js} +2 -2
  181. package/dist/{message-action-runner-BHH2obtO.js → message-action-runner-B_XqOBWe.js} +10 -10
  182. package/dist/{message-action-runner-BZPZrbfZ.js → message-action-runner-Dg2rHhif.js} +10 -10
  183. package/dist/{message-ledger-wjhcg6Ko.js → message-ledger-BeuUbcUn.js} +6 -6
  184. package/dist/{message-tool-Dx0lcq57.js → message-tool-BtCKP0ZG.js} +6 -6
  185. package/dist/{message-tool-BqzlpxAL.js → message-tool-CXE6QSaq.js} +8 -8
  186. package/dist/{message-tool-BdZMbP-_.js → message-tool-fWXuQrLW.js} +6 -6
  187. package/dist/{minion-tools-BCsEknBS.js → minion-tools-CExlnRRN.js} +438 -48
  188. package/dist/{model-catalog-BzwXHdrf.js → model-catalog-BUOrFywx.js} +3 -3
  189. package/dist/{model-catalog-C6s-YmOC.js → model-catalog-DAHly2DA.js} +3 -3
  190. package/dist/{model-fallback-CItMxzEx.js → model-fallback-BFGscvIF.js} +2 -2
  191. package/dist/{model-fallback-rLmQ9WJ2.js → model-fallback-Bu5IXWCs.js} +2 -2
  192. package/dist/{model-fallback-CSdDdf18.js → model-fallback-D7bL5w9a.js} +3 -3
  193. package/dist/{model-picker-Jl9cR9lZ.js → model-picker-BXHv9gwd.js} +2 -2
  194. package/dist/{model-picker-B-XiL2OH.js → model-picker-BlVeWarh.js} +2 -2
  195. package/dist/{models-CzO1PoHi.js → models-DrdU8zCR.js} +11 -11
  196. package/dist/{models-cli-DDqRod8M.js → models-cli-ClloOmLf.js} +11 -11
  197. package/dist/{models-cli-CJZPgBfF.js → models-cli-Cs1chbdr.js} +2 -2
  198. package/dist/{models-config-BNdF-IMY.js → models-config-CYz1Jl9f.js} +2 -2
  199. package/dist/{models-config-gGtRsN8J.js → models-config-DYWSuEYm.js} +2 -2
  200. package/dist/{node-cli-C07JlIhT.js → node-cli-DfNXXKfW.js} +7 -7
  201. package/dist/{node-cli-KTuDPtLV.js → node-cli-DuTW318s.js} +7 -7
  202. package/dist/{nodes-cli-D2NSRkr9.js → nodes-cli-C4DbIhxT.js} +4 -4
  203. package/dist/{nodes-cli-CtuZ7NoK.js → nodes-cli-dNo0GV28.js} +4 -4
  204. package/dist/{nodes-tool-DEEg33kl.js → nodes-tool-BMyerIV8.js} +3 -3
  205. package/dist/{nodes-tool-C64_5SUR.js → nodes-tool-CdRBRg3n.js} +2 -2
  206. package/dist/{nodes-tool-DytMlT0G.js → nodes-tool-xWih4JM4.js} +2 -2
  207. package/dist/{nodes-utils-CPn-ghlx.js → nodes-utils-CufLKNGe.js} +1 -1
  208. package/dist/{nodes-utils-BCfYRkSd.js → nodes-utils-DVWS0DJm.js} +1 -1
  209. package/dist/{nodes-utils-BTHUGnyH.js → nodes-utils-DsbuELKY.js} +1 -1
  210. package/dist/notify-user-tool-BQ9QLglp.js +41 -0
  211. package/dist/notify-user-tool-BuELqNes.js +41 -0
  212. package/dist/notify-user-tool-DLae7l_c.js +41 -0
  213. package/dist/{onboard-DUvfso4l.js → onboard-B-avLisX.js} +8 -8
  214. package/dist/{onboard-DofGeN8U.js → onboard-SJUelwfO.js} +8 -8
  215. package/dist/{onboard-channels-Bt9VQkRB.js → onboard-channels-2zt_gaYa.js} +3 -3
  216. package/dist/{onboard-channels-0yScPK4U.js → onboard-channels-B4YkPT_I.js} +1 -1
  217. package/dist/{onboard-channels-Vjny7vl1.js → onboard-channels-BfdH44jV.js} +1 -1
  218. package/dist/{onboard-channels-DaLKz8R4.js → onboard-channels-PE0DJeP3.js} +3 -3
  219. package/dist/{onboard-custom-rWmaWITc.js → onboard-custom-AFW2y9Fw.js} +2 -2
  220. package/dist/{onboard-custom-BDGt1kja.js → onboard-custom-DiGxyF1W.js} +2 -2
  221. package/dist/{onboard-custom-BysGgJiB.js → onboard-custom-sOaQBqZH.js} +1 -1
  222. package/dist/{onboard-custom-C3f0dVEB.js → onboard-custom-zDWUbUye.js} +1 -1
  223. package/dist/{onboard-helpers-BrndIk2N.js → onboard-helpers-0Ck3IoqE.js} +4 -4
  224. package/dist/{onboard-helpers-BAGJ5Lo1.js → onboard-helpers-Bat8F04f.js} +1 -1
  225. package/dist/{onboard-helpers-Dd4P1QbH.js → onboard-helpers-Bt6lH884.js} +4 -4
  226. package/dist/{onboard-helpers-DV9yuQ1d.js → onboard-helpers-CGpNOsa3.js} +1 -1
  227. package/dist/{onboard-remote-DRzZ9kQN.js → onboard-remote-CGoat8Ht.js} +1 -1
  228. package/dist/{onboard-remote-JIG7iYFa.js → onboard-remote-fxQZypsD.js} +1 -1
  229. package/dist/{onboard-skills-Ce5HO8VV.js → onboard-skills-CLrW7_vF.js} +1 -1
  230. package/dist/{onboard-skills-DMVLngVN.js → onboard-skills-GK6OUUuS.js} +1 -1
  231. package/dist/{onboarding-wYvukFyg.js → onboarding-C7aodLA2.js} +12 -12
  232. package/dist/{onboarding-CbhR0emG.js → onboarding-lIh5Eq03.js} +12 -12
  233. package/dist/{onboarding.finalize-DcDS7RiE.js → onboarding.finalize-Cpr_6eTb.js} +9 -9
  234. package/dist/{onboarding.finalize-nhs02n-T.js → onboarding.finalize-Wqrm-aWj.js} +9 -9
  235. package/dist/{onboarding.gateway-config-Bn1-Rp-H.js → onboarding.gateway-config-Bxm6nU1u.js} +2 -2
  236. package/dist/{onboarding.gateway-config-CtPOA3D5.js → onboarding.gateway-config-DKCE85Y-.js} +2 -2
  237. package/dist/order-update-status-tool-CMFqE714.js +43 -0
  238. package/dist/order-update-status-tool-CNX4uu2U.js +43 -0
  239. package/dist/order-update-status-tool-Dkv-jcX1.js +43 -0
  240. package/dist/orders-query-tool-Cox-HkmB.js +40 -0
  241. package/dist/orders-query-tool-CrWjRlWq.js +40 -0
  242. package/dist/orders-query-tool-DoTV3it7.js +40 -0
  243. package/dist/{outbound-send-deps-B6gAQhTt.js → outbound-send-deps-BaQy-H2c.js} +7 -7
  244. package/dist/{outbound-session-DRsIRtcz.js → outbound-session-CQu7MwtX.js} +6 -6
  245. package/dist/{outbound-session-Bw7QohlD.js → outbound-session-CX_XRDHU.js} +6 -6
  246. package/dist/{pairing-cli-Dgd0Wbso.js → pairing-cli-Y4cWvmqV.js} +4 -4
  247. package/dist/{pairing-cli-DNxLtDAs.js → pairing-cli-YKXsh9qq.js} +4 -4
  248. package/dist/{pairing-store-Dt3zHbxc.js → pairing-store-Cw5GsbNo.js} +2 -2
  249. package/dist/{pairing-store-BOjF78Ox.js → pairing-store-Da_7uUr_.js} +2 -2
  250. package/dist/{pi-embedded-helpers-CEkySDxp.js → pi-embedded-helpers-CDWmWyvU.js} +1 -1
  251. package/dist/{pi-embedded-helpers-DscGMv73.js → pi-embedded-helpers-CHtXwjlA.js} +27 -4
  252. package/dist/{pi-embedded-helpers-DL7FHGmT.js → pi-embedded-helpers-CwDskpRg.js} +1 -1
  253. package/dist/{pi-embedded-utils-kgdOppBK.js → pi-embedded-utils-BNN3Mb-q.js} +1 -1
  254. package/dist/{pi-embedded-utils-ByF51tTS.js → pi-embedded-utils-Cb_StxCN.js} +1 -1
  255. package/dist/{pi-embedded-utils-CbID52rD.js → pi-embedded-utils-MWdH9ypO.js} +1 -1
  256. package/dist/{pi-model-discovery-p8TFZjTo.js → pi-model-discovery-CKRiDFp0.js} +1 -1
  257. package/dist/{pi-tools.policy-BGMUkXoJ.js → pi-tools.policy-BJl7_IWm.js} +3 -3
  258. package/dist/{plugin-auto-enable-DDudeIWk.js → plugin-auto-enable-BuWdv2za.js} +1 -1
  259. package/dist/{plugin-auto-enable-3NRefTC0.js → plugin-auto-enable-DmQbCYAk.js} +1 -1
  260. package/dist/{plugin-registry-BsmJvnZM.js → plugin-registry-6dOOzi3y.js} +3 -3
  261. package/dist/{plugin-registry-5x3uvlGH.js → plugin-registry-CC5mfGuh.js} +3 -3
  262. package/dist/plugin-sdk/agents/tools/hub/booking-cancel-tool.d.ts +8 -0
  263. package/dist/plugin-sdk/agents/tools/hub/booking-create-tool.d.ts +10 -0
  264. package/dist/plugin-sdk/agents/tools/hub/booking-reschedule-tool.d.ts +12 -0
  265. package/dist/plugin-sdk/agents/tools/hub/bookings-query-tool.d.ts +9 -0
  266. package/dist/plugin-sdk/agents/tools/hub/brain-remember-tool.d.ts +14 -0
  267. package/dist/plugin-sdk/agents/tools/hub/brain-search-tool.d.ts +9 -0
  268. package/dist/plugin-sdk/agents/tools/hub/brains-list-tool.d.ts +10 -0
  269. package/dist/plugin-sdk/agents/tools/hub/contact-tag-tool.d.ts +8 -0
  270. package/dist/plugin-sdk/agents/tools/hub/contact-update-tool.d.ts +10 -0
  271. package/dist/plugin-sdk/agents/tools/hub/finance-query-tool.d.ts +11 -0
  272. package/dist/plugin-sdk/agents/tools/hub/hub-common.d.ts +17 -0
  273. package/dist/plugin-sdk/agents/tools/hub/hub-pages-tool.d.ts +10 -0
  274. package/dist/plugin-sdk/agents/tools/hub/notify-user-tool.d.ts +11 -0
  275. package/dist/plugin-sdk/agents/tools/hub/order-update-status-tool.d.ts +8 -0
  276. package/dist/plugin-sdk/agents/tools/hub/orders-query-tool.d.ts +8 -0
  277. package/dist/plugin-sdk/agents/tools/hub/projects-query-tool.d.ts +8 -0
  278. package/dist/plugin-sdk/agents/tools/hub/stock-entry-create-tool.d.ts +10 -0
  279. package/dist/plugin-sdk/agents/tools/hub/stock-query-tool.d.ts +8 -0
  280. package/dist/plugin-sdk/agents/tools/hub/task-create-tool.d.ts +8 -0
  281. package/dist/plugin-sdk/agents/tools/hub/task-update-tool.d.ts +9 -0
  282. package/dist/plugin-sdk/agents/tools/hub/ticket-comment-tool.d.ts +9 -0
  283. package/dist/plugin-sdk/agents/tools/hub/ticket-create-tool.d.ts +8 -0
  284. package/dist/plugin-sdk/agents/tools/hub/ticket-update-tool.d.ts +9 -0
  285. package/dist/plugin-sdk/agents/tools/hub/tickets-query-tool.d.ts +8 -0
  286. package/dist/plugin-sdk/channels/discord.js +1566 -11
  287. package/dist/plugin-sdk/channels/imessage.js +1566 -11
  288. package/dist/plugin-sdk/channels/line.js +1566 -11
  289. package/dist/plugin-sdk/channels/signal.js +1566 -11
  290. package/dist/plugin-sdk/channels/slack.js +1566 -11
  291. package/dist/plugin-sdk/channels/telegram.js +1566 -11
  292. package/dist/plugin-sdk/channels/whatsapp.js +1566 -11
  293. package/dist/plugin-sdk/core.js +1 -1
  294. package/dist/plugin-sdk/index.js +1566 -11
  295. package/dist/{plugins-C3wcf7MF.js → plugins-C_QBgBKj.js} +1 -1
  296. package/dist/{plugins-B3EcsJ93.js → plugins-D6vuz-44.js} +1 -1
  297. package/dist/{plugins-BL_DwVqV.js → plugins-Dt-7Y5wv.js} +1 -1
  298. package/dist/{plugins-cli-BmazY7y6.js → plugins-cli-BYANyisq.js} +3 -3
  299. package/dist/{plugins-cli-CbT4Ivfy.js → plugins-cli-z-gXEkiv.js} +3 -3
  300. package/dist/{program-DbljxDPq.js → program-D_3DwSCA.js} +7 -7
  301. package/dist/{program-context-DiDgk5Zh.js → program-context-DRlcBXyK.js} +42 -42
  302. package/dist/projects-query-tool-BMFyd6JA.js +36 -0
  303. package/dist/projects-query-tool-BfpS0jf3.js +36 -0
  304. package/dist/projects-query-tool-DDIbxa_y.js +36 -0
  305. package/dist/{prompt-select-styled-CBtk-g6b.js → prompt-select-styled-2x3TaE5T.js} +18 -18
  306. package/dist/{prompt-select-styled-DQkPX023.js → prompt-select-styled-CkFtjmG1.js} +18 -18
  307. package/dist/{push-apns-BOeMCPZo.js → push-apns-BYXttBeJ.js} +1 -1
  308. package/dist/{push-apns-DpoIe7e2.js → push-apns-D879xbRP.js} +1 -1
  309. package/dist/{pw-ai-BJyHhYQF.js → pw-ai-BXS_o6SX.js} +2 -2
  310. package/dist/{pw-ai-BEWrwUFs.js → pw-ai-CfC7b26r.js} +2 -2
  311. package/dist/{pw-ai-HlMa6FG6.js → pw-ai-D9HAap-o.js} +2 -2
  312. package/dist/{pw-session-CWDEi5Nc.js → pw-session-ClplWKdd.js} +1 -1
  313. package/dist/{pw-session-CwWxQG1I.js → pw-session-FNaJjvLM.js} +1 -1
  314. package/dist/{pw-session-CGsc7KWi.js → pw-session-m7067XiE.js} +1 -1
  315. package/dist/{qr-cli-Dhlzz33G.js → qr-cli-CReHqOud.js} +2 -2
  316. package/dist/{qr-cli-Dldb8C1U.js → qr-cli-CdiCMQGN.js} +2 -2
  317. package/dist/{register.agent-_wkQQgzp.js → register.agent-BhnXw_dx.js} +8 -8
  318. package/dist/{register.agent-DnR7m134.js → register.agent-gVjDby1v.js} +12 -12
  319. package/dist/{register.channel-DtMJW1B2.js → register.channel-BWFep3ht.js} +2 -2
  320. package/dist/{register.channel-ByOxBY8q.js → register.channel-Cs5mrRZK.js} +2 -2
  321. package/dist/{register.configure-nrRrsu0C.js → register.configure-BeA7rzcV.js} +1 -1
  322. package/dist/{register.configure-BPniagxi.js → register.configure-CfW9D0gg.js} +1 -1
  323. package/dist/{register.drone-Cf5hsWJV.js → register.drone-C3ko3f4m.js} +1 -1
  324. package/dist/{register.drone-GMUhMhB4.js → register.drone-N_X5a2wS.js} +1 -1
  325. package/dist/{register.maintenance-BgfUvt-j.js → register.maintenance-BdJvIKSK.js} +5 -5
  326. package/dist/{register.maintenance-1tmxCGJO.js → register.maintenance-CEXQ4BMG.js} +5 -5
  327. package/dist/{register.message-sfK4pC7Q.js → register.message-CSdDkTF6.js} +9 -9
  328. package/dist/{register.message-o5rsaNxX.js → register.message-D4L-RQzY.js} +8 -8
  329. package/dist/{register.onboard-Dyb6qoBi.js → register.onboard-CYI56giZ.js} +1 -1
  330. package/dist/{register.onboard-Q56EmCd1.js → register.onboard-DEsoSYVM.js} +1 -1
  331. package/dist/{register.setup-LmUXe-fJ.js → register.setup-ChlFvsQj.js} +4 -4
  332. package/dist/{register.setup-DFN-ma50.js → register.setup-CpMcHooI.js} +4 -4
  333. package/dist/{register.status-health-sessions-ChRIvGGx.js → register.status-health-sessions-CESGadbE.js} +6 -6
  334. package/dist/{register.status-health-sessions-CH55XELQ.js → register.status-health-sessions-CIBXSHl0.js} +4 -4
  335. package/dist/{register.subclis-BV7bN9SK.js → register.subclis-BFXE6TvY.js} +29 -29
  336. package/dist/{reply-BvB01BRa.js → reply-Dy4Gl8EU.js} +436 -46
  337. package/dist/{reply-payloads-BxIDP7AE.js → reply-payloads-haUxLKio.js} +6 -6
  338. package/dist/{reply-prefix-Caipj1Jf.js → reply-prefix-BQo8iEBd.js} +1 -1
  339. package/dist/{reply-prefix-DY3LhS4c.js → reply-prefix-CUl0tQo3.js} +1 -1
  340. package/dist/{resolve-route-_uEmZcg2.js → resolve-route-CQNeFCbt.js} +4 -4
  341. package/dist/{resolve-route-DMoFSOUO.js → resolve-route-Cm40tM17.js} +2 -2
  342. package/dist/{routes-BsjQsdNd.js → routes-B3alP22i.js} +5 -5
  343. package/dist/{routes-BzfGuFnh.js → routes-DLBS9sHq.js} +5 -5
  344. package/dist/{rpc-gxwxRHlK.js → rpc-CtI1iVqG.js} +1 -1
  345. package/dist/{rpc-LOiW9xrJ.js → rpc-DZXtmnqh.js} +1 -1
  346. package/dist/{run-main-BiEp_qc-.js → run-main-De6Qk8Ng.js} +20 -20
  347. package/dist/{sandbox-0BpaF17S.js → sandbox-Co0HrQB2.js} +29 -6
  348. package/dist/{sandbox-opcHUJfc.js → sandbox-Dh_zn6nH.js} +29 -6
  349. package/dist/{sandbox-cli-Ca6I34Pd.js → sandbox-cli-DXUvqdbh.js} +4 -4
  350. package/dist/{sandbox-cli-B3hI0p9M.js → sandbox-cli-LZRCHMKQ.js} +4 -4
  351. package/dist/{security-cli-B1FLTWRz.js → security-cli-BlgNK6T8.js} +4 -4
  352. package/dist/{security-cli-wN-U3m9U.js → security-cli-COv-kz1U.js} +4 -4
  353. package/dist/{send-rKIFHSnf.js → send-B-l_LQjz.js} +6 -6
  354. package/dist/{send-ucLRBq08.js → send-BI100vN5.js} +4 -4
  355. package/dist/{send-BYUhkXPy.js → send-Bo3iRRV4.js} +5 -5
  356. package/dist/{send-CdgyDwpI.js → send-C1WQ3CSg.js} +5 -5
  357. package/dist/{send-mMi3QyjT.js → send-D3OXHEbY.js} +6 -6
  358. package/dist/{send-x8u-elit.js → send-DWGmd1lt.js} +5 -5
  359. package/dist/{send-DYI3wQww.js → send-Dnl8Mt0b.js} +5 -5
  360. package/dist/{send-B3692clO.js → send-nbmNq53I.js} +4 -4
  361. package/dist/{send-CGfg9v0J.js → send-oPMRcy46.js} +6 -6
  362. package/dist/{server-context-BQP316jT.js → server-context-BeBZl8zi.js} +7 -7
  363. package/dist/{server-context-BphUkFsU.js → server-context-DagQm3En.js} +22 -13
  364. package/dist/{server-context-B-cxcvtx.js → server-context-DecHp93O.js} +7 -7
  365. package/dist/{server-node-events-OgwlQNLw.js → server-node-events-Bo8YlLSF.js} +11 -11
  366. package/dist/{server-node-events-D5Xh_Y3M.js → server-node-events-uT9otrnW.js} +9 -9
  367. package/dist/{session-status-tool-BNOPtPyp.js → session-status-tool-CORFonZM.js} +6 -6
  368. package/dist/{session-status-tool-fkINR0b7.js → session-status-tool-DOqbETnH.js} +4 -4
  369. package/dist/{session-status-tool-Bsup3FG3.js → session-status-tool-DWSIlGFt.js} +7 -7
  370. package/dist/{session-utils-BhtdagqA.js → session-utils-Csw9JX2F.js} +4 -4
  371. package/dist/{sessions-Xhs8V4aT.js → sessions-BdTwFSod.js} +5 -5
  372. package/dist/{sessions-Cnxo_ndD.js → sessions-Bxcso1A4.js} +4 -4
  373. package/dist/{sessions-helpers-B5BjpGie.js → sessions-helpers-BpXiixPk.js} +3 -3
  374. package/dist/{sessions-helpers-BscA64r4.js → sessions-helpers-CmL5of8k.js} +3 -3
  375. package/dist/{sessions-helpers-C08Phzso.js → sessions-helpers-DcPYyi87.js} +3 -3
  376. package/dist/{sessions-history-tool-D3gAndpg.js → sessions-history-tool-BQOJ7xuQ.js} +5 -5
  377. package/dist/{sessions-history-tool-Br3I5NQV.js → sessions-history-tool-ClVtna5z.js} +4 -4
  378. package/dist/{sessions-history-tool-BS2CEMeV.js → sessions-history-tool-wBp39NZW.js} +5 -5
  379. package/dist/{sessions-list-tool-D9haQlmB.js → sessions-list-tool-C0O6mqWz.js} +5 -5
  380. package/dist/{sessions-list-tool-BqcU9vby.js → sessions-list-tool-CH113G82.js} +5 -5
  381. package/dist/{sessions-list-tool-D0ZSfep3.js → sessions-list-tool-DWfvM5MD.js} +4 -4
  382. package/dist/{sessions-F6cK8l_1.js → sessions-lzLAfYqN.js} +2 -2
  383. package/dist/{sessions-send-tool-BOQTRsUE.js → sessions-send-tool-BIN3x_Tj.js} +4 -4
  384. package/dist/{sessions-send-tool-Bfg4pkkA.js → sessions-send-tool-BIoLJtEy.js} +6 -6
  385. package/dist/{sessions-send-tool-endz3GxW.js → sessions-send-tool-dV7l6L-a.js} +6 -6
  386. package/dist/{sessions-spawn-tool-CzR5BUIZ.js → sessions-spawn-tool-BtjzxdZj.js} +1 -1
  387. package/dist/{sessions-spawn-tool-DaJfWSEQ.js → sessions-spawn-tool-C5XN2MAW.js} +1 -1
  388. package/dist/{sessions-spawn-tool-OkqKciwd.js → sessions-spawn-tool-DXkgQ1c1.js} +1 -1
  389. package/dist/{sessions-DQF8fZS5.js → sessions-wZjDzkQG.js} +5 -5
  390. package/dist/{shared-B1dSlQWp.js → shared-B6M3Crny.js} +2 -2
  391. package/dist/{shared-CTyE2G7t.js → shared-D-22sIu6.js} +2 -2
  392. package/dist/{skills-cli-DV341ngV.js → skills-cli-Bz3cwPj_.js} +2 -2
  393. package/dist/{skills-cli-Mxzv9u2e.js → skills-cli-CmaLyEtb.js} +2 -2
  394. package/dist/{status-BTlLe0ON.js → status-B4sO93X3.js} +13 -13
  395. package/dist/{status-DJTNPoQJ.js → status-CHylpoRy.js} +3 -3
  396. package/dist/{status-BJ4KXOo4.js → status-CjmAMIhE.js} +3 -3
  397. package/dist/{status-_f9Uj4h_.js → status-DowOkHsW.js} +14 -14
  398. package/dist/{status.update-C0dSEZaW.js → status.update-BvmD1bXY.js} +1 -1
  399. package/dist/{status.update-BLkpPZhg.js → status.update-D8oMtrQX.js} +1 -1
  400. package/dist/stock-entry-create-tool-DfNIrQzF.js +65 -0
  401. package/dist/stock-entry-create-tool-DkDA256U.js +65 -0
  402. package/dist/stock-entry-create-tool-JrqollnX.js +65 -0
  403. package/dist/stock-query-tool-3bjENU9A.js +40 -0
  404. package/dist/stock-query-tool-B2OY0tLg.js +40 -0
  405. package/dist/stock-query-tool-Bsr6eYmx.js +40 -0
  406. package/dist/{subagent-registry-Dctvgiur.js → subagent-registry-Ii11UQhV.js} +437 -47
  407. package/dist/{subagents-tool-MpxHOawd.js → subagents-tool-DTZpiDFG.js} +6 -6
  408. package/dist/{subagents-tool-ByM5O-ce.js → subagents-tool-DdprLwOY.js} +6 -6
  409. package/dist/{subagents-tool-BCrHvFRR.js → subagents-tool-QLFj9isA.js} +5 -5
  410. package/dist/{system-cli-COUy2PIL.js → system-cli-B6ybt64_.js} +1 -1
  411. package/dist/{system-cli-cLZOHCpV.js → system-cli-CMB9gLS1.js} +1 -1
  412. package/dist/{systemd-hints-BX82rgwJ.js → systemd-hints-BzOt_XFu.js} +1 -1
  413. package/dist/{systemd-hints-BmHO3vGm.js → systemd-hints-DmsFHA7q.js} +1 -1
  414. package/dist/{tables-BoNY2PMq.js → tables-CvGD4xT4.js} +1 -1
  415. package/dist/{tables-CnpzK-sx.js → tables-s_KxXF6r.js} +1 -1
  416. package/dist/{targets-vjobqKDT.js → targets-DbWZn0md.js} +1 -1
  417. package/dist/{targets-CJj3TAfL.js → targets-j9B_CT6R.js} +2 -2
  418. package/dist/{targets-CeBejFtg.js → targets-mUIc5_ub.js} +1 -1
  419. package/dist/task-create-tool-B-wyPaLW.js +57 -0
  420. package/dist/task-create-tool-CfhgqDpn.js +57 -0
  421. package/dist/task-create-tool-R0RYIlSC.js +57 -0
  422. package/dist/task-update-tool-B_ujDPoz.js +60 -0
  423. package/dist/task-update-tool-CyCYpo5t.js +60 -0
  424. package/dist/task-update-tool-DI5TYHQT.js +60 -0
  425. package/dist/ticket-comment-tool-BgSUbC6T.js +37 -0
  426. package/dist/ticket-comment-tool-BtjOiFwD.js +37 -0
  427. package/dist/ticket-comment-tool-DRqPzvJk.js +37 -0
  428. package/dist/ticket-create-tool-CPO6AKPb.js +47 -0
  429. package/dist/ticket-create-tool-DWQBJHsn.js +47 -0
  430. package/dist/ticket-create-tool-lWSiDlYL.js +47 -0
  431. package/dist/ticket-update-tool-BeD2z9ZY.js +58 -0
  432. package/dist/ticket-update-tool-CjpJcT7m.js +58 -0
  433. package/dist/ticket-update-tool-eCjmYW_F.js +58 -0
  434. package/dist/tickets-query-tool-6MsgLSkO.js +48 -0
  435. package/dist/tickets-query-tool-C3YCslkG.js +48 -0
  436. package/dist/tickets-query-tool-D0y1ebEc.js +48 -0
  437. package/dist/{tools-cli-Drw57lNT.js → tools-cli-BcqfTXH3.js} +3 -3
  438. package/dist/{tools-cli-Da3xpL2N.js → tools-cli-CsSY7v2U.js} +3 -3
  439. package/dist/trash-CAuria7l.js +30 -0
  440. package/dist/trash-MreuHnUR.js +30 -0
  441. package/dist/{tts-DOuWQCl0.js → tts-BID2aWnP.js} +1 -1
  442. package/dist/{tts-C8sci73b.js → tts-C3AwA748.js} +1 -1
  443. package/dist/{tts-DT16K-Mg.js → tts-DCwuFqIs.js} +1 -1
  444. package/dist/{tts-tool-D1xTgy6g.js → tts-tool-93YXtjYQ.js} +3 -3
  445. package/dist/{tts-tool-0BxHJ75w.js → tts-tool-Dp3bbxji.js} +3 -3
  446. package/dist/{tts-tool-D9A3NRZE.js → tts-tool-mOELbBEX.js} +2 -2
  447. package/dist/{tui-CICAogKo.js → tui-BblnJk5A.js} +5 -5
  448. package/dist/{tui-CW99vGjf.js → tui-Dqvb7RGr.js} +5 -5
  449. package/dist/{tui-cli-Bz_Y0kQF.js → tui-cli-DTuLv6YU.js} +1 -1
  450. package/dist/{tui-cli-Bde9FKc6.js → tui-cli-iijuUo1d.js} +1 -1
  451. package/dist/{update-cli-D6WNU0LC.js → update-cli-Bxtp7C-D.js} +8 -8
  452. package/dist/{update-cli-LVqEOX8z.js → update-cli-kEGnxFk2.js} +8 -8
  453. package/dist/{web-yADrkaRA.js → web-B95TAk7m.js} +12 -12
  454. package/dist/web-BAY_a6tU.js +2 -0
  455. package/dist/{web-search-B7JFlIV1.js → web-search-BR1c-hlF.js} +3 -3
  456. package/dist/{web-search-CcsH3zdM.js → web-search-CgNIDJss.js} +4 -4
  457. package/dist/{web-search-CotaJGI9.js → web-search-DKL6hJzo.js} +4 -4
  458. package/dist/{webhooks-cli-DEXYEmNX.js → webhooks-cli-Do-F-mnF.js} +3 -3
  459. package/dist/{webhooks-cli-BJgyjOoC.js → webhooks-cli-DqngLhaB.js} +3 -3
  460. package/dist/{workspace-dirs-0d7swJWd.js → workspace-dirs-CG9EsWKG.js} +3 -3
  461. package/package.json +1 -1
  462. package/dist/config-guard-B_1VhFji.js +0 -2
  463. package/dist/daemon-install-helpers-CHeRULJH.js +0 -2
  464. package/dist/daemon-install-helpers-CMbh4Lp7.js +0 -2
  465. package/dist/doctor-completion-FuFJd6IQ.js +0 -2
  466. package/dist/doctor-completion-KAdCjzsy.js +0 -2
  467. package/dist/trash-DPd6fFGH.js +0 -21
  468. package/dist/trash-DYakNGQh.js +0 -21
  469. package/dist/web-OUk9Is6v.js +0 -2
@@ -1,7 +1,7 @@
1
1
  import { n as __exportAll } from "./chunk-2rV9d50f.js";
2
2
  import { _ as resolveOAuthPath, a as resolveAgentConfigPath, b as DEFAULT_GATEWAY_PORT, c as resolveConfigPath, d as resolveGatewayLockDir, f as resolveGatewayPort, g as resolveOAuthDir, h as resolveNewStateDir, l as resolveConfigPathCandidate, m as resolveLegacyStateDirs, n as STATE_DIR, o as resolveAgentConfigPathWithFallback, p as resolveIsNixMode, r as isNixMode, s as resolveCanonicalConfigPath, t as CONFIG_PATH, u as resolveDefaultConfigCandidates, v as resolveStateDir } from "./paths-aEg9UgoF.js";
3
3
  import { c as applyLegacyMigrations, n as validateConfigObjectWithPlugins } from "./validation-DnYXVHop.js";
4
- import { d as getConfigOverrides, f as resetConfigOverrides, i as loadConfig, m as unsetConfigOverride, p as setConfigOverride, u as applyConfigOverrides } from "./io-D6HAGfRj.js";
4
+ import { d as getConfigOverrides, f as resetConfigOverrides, i as loadConfig, m as unsetConfigOverride, p as setConfigOverride, u as applyConfigOverrides } from "./io-CUOJNJs6.js";
5
5
  //#region src/config/legacy-migrate.ts
6
6
  function migrateLegacyConfig(raw) {
7
7
  const { next, changes } = applyLegacyMigrations(raw);
@@ -1,7 +1,7 @@
1
1
  import { St as theme, dt as danger, ft as info, g as defaultRuntime, ot as shortenHomePath } from "./entry.js";
2
2
  import { t as formatCliCommand } from "./command-format-D86vQ65E.js";
3
- import { l as writeConfigFile, o as readConfigFileSnapshot } from "./io-D6HAGfRj.js";
4
- import "./config-C4ygZaLQ.js";
3
+ import { l as writeConfigFile, o as readConfigFileSnapshot } from "./io-CUOJNJs6.js";
4
+ import "./config-GA90_ZLO.js";
5
5
  import { t as formatDocsLink } from "./links-B03m-P2Z.js";
6
6
  import JSON5 from "json5";
7
7
  //#region src/cli/config-cli.ts
@@ -239,7 +239,7 @@ async function runConfigUnset(opts) {
239
239
  }
240
240
  function registerConfigCli(program) {
241
241
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.minion.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
242
- const { configureCommandFromSectionsArg } = await import("./configure-DqZ20Fm1.js");
242
+ const { configureCommandFromSectionsArg } = await import("./configure-BVS7Uoe1.js");
243
243
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
244
244
  });
245
245
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -2,8 +2,8 @@ import { C as shortenHomePath, O as danger, k as info } from "./utils-DsgtGH3c.j
2
2
  import { r as theme } from "./theme-CDbj88LB.js";
3
3
  import { t as defaultRuntime } from "./runtime-Da615Z-K.js";
4
4
  import { t as formatCliCommand } from "./command-format-slIqNG4J.js";
5
- import { l as writeConfigFile, o as readConfigFileSnapshot } from "./io-e4Yx5ZqN.js";
6
- import "./config-D0cZAiW5.js";
5
+ import { l as writeConfigFile, o as readConfigFileSnapshot } from "./io-DsXKMvz3.js";
6
+ import "./config-DKbC00-8.js";
7
7
  import { t as formatDocsLink } from "./links-C1xb6h4b.js";
8
8
  import JSON5 from "json5";
9
9
  //#region src/cli/config-cli.ts
@@ -241,7 +241,7 @@ async function runConfigUnset(opts) {
241
241
  }
242
242
  function registerConfigCli(program) {
243
243
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.minion.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
244
- const { configureCommandFromSectionsArg } = await import("./configure-W7doYXjc.js");
244
+ const { configureCommandFromSectionsArg } = await import("./configure-Y4orl1oO.js");
245
245
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
246
246
  });
247
247
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -1,10 +1,10 @@
1
1
  import { C as shortenHomePath } from "./utils-DsgtGH3c.js";
2
2
  import { n as isRich, r as theme, t as colorize } from "./theme-CDbj88LB.js";
3
3
  import { t as formatCliCommand } from "./command-format-slIqNG4J.js";
4
- import { o as readConfigFileSnapshot } from "./io-e4Yx5ZqN.js";
5
- import "./config-D0cZAiW5.js";
4
+ import { o as readConfigFileSnapshot } from "./io-DsXKMvz3.js";
5
+ import "./config-DKbC00-8.js";
6
6
  import { o as shouldMigrateStateFromPath } from "./argv-jr5Bsqfh.js";
7
- import { t as loadAndMaybeMigrateDoctorConfig } from "./doctor-config-flow-CR7fJOuO.js";
7
+ import { t as loadAndMaybeMigrateDoctorConfig } from "./doctor-config-flow-3lyK6GXd.js";
8
8
  //#region src/cli/program/config-guard.ts
9
9
  const ALLOWED_INVALID_COMMANDS = new Set([
10
10
  "doctor",
@@ -0,0 +1,2 @@
1
+ import { t as ensureConfigReady } from "./run-main-De6Qk8Ng.js";
2
+ export { ensureConfigReady };
@@ -1,6 +1,6 @@
1
1
  import { t as formatCliCommand } from "./command-format-slIqNG4J.js";
2
- import { o as readConfigFileSnapshot } from "./io-e4Yx5ZqN.js";
3
- import "./config-D0cZAiW5.js";
2
+ import { o as readConfigFileSnapshot } from "./io-DsXKMvz3.js";
3
+ import "./config-DKbC00-8.js";
4
4
  //#region src/cli/commands/config-validation.ts
5
5
  async function requireValidConfigSnapshot(runtime) {
6
6
  const snapshot = await readConfigFileSnapshot();
@@ -1,6 +1,6 @@
1
1
  import { t as formatCliCommand } from "./command-format-D86vQ65E.js";
2
- import { o as readConfigFileSnapshot } from "./io-D6HAGfRj.js";
3
- import "./config-C4ygZaLQ.js";
2
+ import { o as readConfigFileSnapshot } from "./io-CUOJNJs6.js";
3
+ import "./config-GA90_ZLO.js";
4
4
  //#region src/cli/commands/config-validation.ts
5
5
  async function requireValidConfigSnapshot(runtime) {
6
6
  const snapshot = await readConfigFileSnapshot();
@@ -130,7 +130,7 @@ const SCOPE_PRESETS = {
130
130
  };
131
131
  //#endregion
132
132
  //#region src/version.ts
133
- const VERSION = "2026.6.16-dev.20260703022951";
133
+ const VERSION = "2026.7.2-dev";
134
134
  //#endregion
135
135
  //#region src/cli/parse-duration.ts
136
136
  function parseDurationMs(raw, opts) {
@@ -2,34 +2,34 @@ import { f as resolveGatewayPort, t as CONFIG_PATH } from "./paths-aEg9UgoF.js";
2
2
  import { g as defaultRuntime, ot as shortenHomePath, rt as resolveUserPath } from "./entry.js";
3
3
  import { S as ensureAuthProfileStore } from "./auth-profiles-tlxr0i8q.js";
4
4
  import { t as formatCliCommand } from "./command-format-D86vQ65E.js";
5
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./io-D6HAGfRj.js";
6
- import "./config-C4ygZaLQ.js";
7
- import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-BL_DwVqV.js";
5
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./io-CUOJNJs6.js";
6
+ import "./config-GA90_ZLO.js";
7
+ import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-Dt-7Y5wv.js";
8
8
  import { o as findTailscaleBinary } from "./tailscale-DztQ748s.js";
9
9
  import { n as withProgress } from "./progress-aPiVORh8.js";
10
10
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-QvcG7mG7.js";
11
11
  import { t as note$1 } from "./note-CeI8uYt5.js";
12
12
  import { t as createClackPrompter } from "./clack-prompter-Bv8LAi9a.js";
13
13
  import { t as WizardCancelledError } from "./prompts-E0FayNjJ.js";
14
- import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-DaLKz8R4.js";
15
- import "./onboard-channels-Vjny7vl1.js";
14
+ import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-PE0DJeP3.js";
15
+ import "./onboard-channels-B4YkPT_I.js";
16
16
  import { n as logConfigUpdated } from "./logging-8jC6TK0o.js";
17
17
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-s6JRXhrY.js";
18
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-DXK-xwEZ.js";
19
- import { _ as summarizeExistingConfig, a as ensureWorkspaceAndSessions, f as printWizardHeader, h as resolveControlUiLinks, m as randomToken, n as applyWizardMetadata, p as probeGatewayReachable, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as validateGatewayPasswordInput, y as waitForGatewayReachable } from "./onboard-helpers-BrndIk2N.js";
20
- import "./onboard-helpers-BAGJ5Lo1.js";
18
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-wAcjEzAw.js";
19
+ import { _ as summarizeExistingConfig, a as ensureWorkspaceAndSessions, f as printWizardHeader, h as resolveControlUiLinks, m as randomToken, n as applyWizardMetadata, p as probeGatewayReachable, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as validateGatewayPasswordInput, y as waitForGatewayReachable } from "./onboard-helpers-0Ck3IoqE.js";
20
+ import "./onboard-helpers-CGpNOsa3.js";
21
21
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Cx6dCwYR.js";
22
22
  import { t as formatHealthCheckFailure } from "./health-format-D0QYLVIC.js";
23
- import { i as healthCommand } from "./health-B68NlCPU.js";
24
- import { n as promptRemoteGatewayConfig } from "./onboard-remote-DRzZ9kQN.js";
25
- import { n as setupSkills } from "./onboard-skills-Ce5HO8VV.js";
23
+ import { i as healthCommand } from "./health-CmEEKiew.js";
24
+ import { n as promptRemoteGatewayConfig } from "./onboard-remote-CGoat8Ht.js";
25
+ import { n as setupSkills } from "./onboard-skills-CLrW7_vF.js";
26
26
  import { t as resolveGatewayService } from "./service-DeVh6Gqe.js";
27
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CYbnHdnj.js";
28
- import "./daemon-install-helpers-CMbh4Lp7.js";
27
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DDr_cMqE.js";
28
+ import "./daemon-install-helpers-DrlG4q0g.js";
29
29
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-DOXQp9Im.js";
30
- import { a as promptDefaultModel, i as applyPrimaryModel, n as applyModelAllowlist, o as promptModelAllowlist, r as applyModelFallbacksFromSelection } from "./model-picker-B-XiL2OH.js";
31
- import { i as promptCustomApiConfig } from "./onboard-custom-BDGt1kja.js";
32
- import "./onboard-custom-BysGgJiB.js";
30
+ import { a as promptDefaultModel, i as applyPrimaryModel, n as applyModelAllowlist, o as promptModelAllowlist, r as applyModelFallbacksFromSelection } from "./model-picker-BlVeWarh.js";
31
+ import { i as promptCustomApiConfig } from "./onboard-custom-DiGxyF1W.js";
32
+ import "./onboard-custom-sOaQBqZH.js";
33
33
  import { i as TAILSCALE_MISSING_BIN_NOTE_LINES, n as TAILSCALE_DOCS_LINES, r as TAILSCALE_EXPOSURE_OPTIONS, t as validateIPv4AddressInput } from "./ipv4-mo255YuU.js";
34
34
  import { confirm, intro, outro, select, text } from "@clack/prompts";
35
35
  //#region src/cli/commands/configure/configure.shared.ts
@@ -3,34 +3,34 @@ import { C as shortenHomePath, b as resolveUserPath } from "./utils-DsgtGH3c.js"
3
3
  import { t as defaultRuntime } from "./runtime-Da615Z-K.js";
4
4
  import { jt as ensureAuthProfileStore } from "./model-selection-CyA2hvMy.js";
5
5
  import { t as formatCliCommand } from "./command-format-slIqNG4J.js";
6
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./io-e4Yx5ZqN.js";
7
- import "./config-D0cZAiW5.js";
8
- import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-C3wcf7MF.js";
6
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./io-DsXKMvz3.js";
7
+ import "./config-DKbC00-8.js";
8
+ import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-C_QBgBKj.js";
9
9
  import { o as findTailscaleBinary } from "./tailscale-CTwxLN7C.js";
10
10
  import { n as withProgress } from "./progress-8_pqhNaq.js";
11
11
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-DRUklDCU.js";
12
12
  import { t as note$1 } from "./note-BZTbOvRC.js";
13
13
  import { t as createClackPrompter } from "./clack-prompter-BhwvSSDO.js";
14
14
  import { t as WizardCancelledError } from "./prompts-E0FayNjJ.js";
15
- import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-Bt9VQkRB.js";
16
- import "./onboard-channels-0yScPK4U.js";
15
+ import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-2zt_gaYa.js";
16
+ import "./onboard-channels-BfdH44jV.js";
17
17
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-s6JRXhrY.js";
18
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-_HdhC1Ax.js";
19
- import { _ as summarizeExistingConfig, a as ensureWorkspaceAndSessions, f as printWizardHeader, h as resolveControlUiLinks, m as randomToken, n as applyWizardMetadata, p as probeGatewayReachable, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as validateGatewayPasswordInput, y as waitForGatewayReachable } from "./onboard-helpers-Dd4P1QbH.js";
20
- import "./onboard-helpers-DV9yuQ1d.js";
18
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-B3sdr0yr.js";
19
+ import { _ as summarizeExistingConfig, a as ensureWorkspaceAndSessions, f as printWizardHeader, h as resolveControlUiLinks, m as randomToken, n as applyWizardMetadata, p as probeGatewayReachable, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as validateGatewayPasswordInput, y as waitForGatewayReachable } from "./onboard-helpers-Bt6lH884.js";
20
+ import "./onboard-helpers-Bat8F04f.js";
21
21
  import { n as logConfigUpdated } from "./logging-FiuVPYk7.js";
22
22
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-C0ucbd84.js";
23
23
  import { t as formatHealthCheckFailure } from "./health-format-DJDAkR0W.js";
24
- import { r as healthCommand } from "./health-BH4SZIqw.js";
25
- import { n as promptRemoteGatewayConfig } from "./onboard-remote-JIG7iYFa.js";
26
- import { n as setupSkills } from "./onboard-skills-DMVLngVN.js";
24
+ import { r as healthCommand } from "./health-DPusbWbK.js";
25
+ import { n as promptRemoteGatewayConfig } from "./onboard-remote-fxQZypsD.js";
26
+ import { n as setupSkills } from "./onboard-skills-GK6OUUuS.js";
27
27
  import { t as resolveGatewayService } from "./service-Djfo4ZAJ.js";
28
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CWwiPJlC.js";
29
- import "./daemon-install-helpers-CHeRULJH.js";
28
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-Bc1wF1kV.js";
29
+ import "./daemon-install-helpers-BTrwyLn2.js";
30
30
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-CPHxEotD.js";
31
- import { a as promptDefaultModel, i as applyPrimaryModel, n as applyModelAllowlist, o as promptModelAllowlist, r as applyModelFallbacksFromSelection } from "./model-picker-Jl9cR9lZ.js";
32
- import { i as promptCustomApiConfig } from "./onboard-custom-rWmaWITc.js";
33
- import "./onboard-custom-C3f0dVEB.js";
31
+ import { a as promptDefaultModel, i as applyPrimaryModel, n as applyModelAllowlist, o as promptModelAllowlist, r as applyModelFallbacksFromSelection } from "./model-picker-BXHv9gwd.js";
32
+ import { i as promptCustomApiConfig } from "./onboard-custom-AFW2y9Fw.js";
33
+ import "./onboard-custom-zDWUbUye.js";
34
34
  import { i as TAILSCALE_MISSING_BIN_NOTE_LINES, n as TAILSCALE_DOCS_LINES, r as TAILSCALE_EXPOSURE_OPTIONS, t as validateIPv4AddressInput } from "./ipv4-mo255YuU.js";
35
35
  import { confirm, intro, outro, select, text } from "@clack/prompts";
36
36
  //#region src/cli/commands/configure/configure.shared.ts
@@ -0,0 +1,43 @@
1
+ import { t as wrapToolWithTracking } from "./tool-tracking-Crsmwdkj.js";
2
+ import { i as jsonResult, s as readStringParam } from "./common-CRD8HhuP.js";
3
+ import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD, t as CONFIRM_FIELD } from "./hub-common-D7t3vbq1.js";
4
+ import { Type } from "typebox";
5
+ //#region src/agents/tools/hub/contact-tag-tool.ts
6
+ const ContactTagSchema = Type.Object({
7
+ contactId: Type.String({ description: "The CRM contact to tag." }),
8
+ tag: Type.Optional(Type.String({ description: "Tag NAME (case-insensitive). The hub resolves it to an existing tag, or creates a manual tag on 'add'. Preferred over tagId." })),
9
+ tagId: Type.Optional(Type.String({ description: "Exact tag id — only when you already have it (e.g. from a prior result)." })),
10
+ op: Type.Optional(Type.Union([Type.Literal("add"), Type.Literal("remove")], { description: "'add' (default) or 'remove'." })),
11
+ confirm: CONFIRM_FIELD,
12
+ orgId: ORG_ID_FIELD
13
+ });
14
+ /**
15
+ * Add or remove a CRM contact tag. WRITE — confirm contract: confirm=false
16
+ * returns a preview, confirm=true only after the user explicitly agrees.
17
+ */
18
+ function createContactTagTool(options) {
19
+ const agentId = options.agentId;
20
+ if (!hubToolsAvailable(agentId)) return null;
21
+ return wrapToolWithTracking({
22
+ label: "Contact Tag",
23
+ name: "contact_tag",
24
+ description: "Add or remove a tag on a CRM contact by tag NAME (preferred; the hub resolves or creates it) or exact tagId. First present the exact action (contact, tag, add or remove) and ask for confirmation. Call with confirm=false for a validated preview (no write; preview.willCreateTag tells you if a new tag would be created); only call with confirm=true after the user explicitly agrees. Present the result with a deep link like [contact](/crm/{contactId}).",
25
+ parameters: ContactTagSchema,
26
+ execute: async (_toolCallId, args) => {
27
+ const params = args;
28
+ const orgId = readStringParam(params, "orgId");
29
+ const tag = readStringParam(params, "tag");
30
+ const tagId = readStringParam(params, "tagId");
31
+ if (!tag && !tagId) return jsonResult({ error: "tag (name) or tagId is required" });
32
+ return jsonResult(await hubPost("actions/contact-tag", agentId, {
33
+ contactId: readStringParam(params, "contactId", { required: true }),
34
+ ...tag ? { tag } : {},
35
+ ...tagId ? { tagId } : {},
36
+ op: readStringParam(params, "op") ?? "add",
37
+ confirm: params.confirm === true
38
+ }, orgId));
39
+ }
40
+ }, "builtin:contact_tag");
41
+ }
42
+ //#endregion
43
+ export { createContactTagTool };
@@ -0,0 +1,43 @@
1
+ import { t as wrapToolWithTracking } from "./tool-tracking-4XjaoCwP.js";
2
+ import { i as jsonResult, s as readStringParam } from "./common-BHzo6lXS.js";
3
+ import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD, t as CONFIRM_FIELD } from "./hub-common-D7t3vbq1.js";
4
+ import { Type } from "typebox";
5
+ //#region src/agents/tools/hub/contact-tag-tool.ts
6
+ const ContactTagSchema = Type.Object({
7
+ contactId: Type.String({ description: "The CRM contact to tag." }),
8
+ tag: Type.Optional(Type.String({ description: "Tag NAME (case-insensitive). The hub resolves it to an existing tag, or creates a manual tag on 'add'. Preferred over tagId." })),
9
+ tagId: Type.Optional(Type.String({ description: "Exact tag id — only when you already have it (e.g. from a prior result)." })),
10
+ op: Type.Optional(Type.Union([Type.Literal("add"), Type.Literal("remove")], { description: "'add' (default) or 'remove'." })),
11
+ confirm: CONFIRM_FIELD,
12
+ orgId: ORG_ID_FIELD
13
+ });
14
+ /**
15
+ * Add or remove a CRM contact tag. WRITE — confirm contract: confirm=false
16
+ * returns a preview, confirm=true only after the user explicitly agrees.
17
+ */
18
+ function createContactTagTool(options) {
19
+ const agentId = options.agentId;
20
+ if (!hubToolsAvailable(agentId)) return null;
21
+ return wrapToolWithTracking({
22
+ label: "Contact Tag",
23
+ name: "contact_tag",
24
+ description: "Add or remove a tag on a CRM contact by tag NAME (preferred; the hub resolves or creates it) or exact tagId. First present the exact action (contact, tag, add or remove) and ask for confirmation. Call with confirm=false for a validated preview (no write; preview.willCreateTag tells you if a new tag would be created); only call with confirm=true after the user explicitly agrees. Present the result with a deep link like [contact](/crm/{contactId}).",
25
+ parameters: ContactTagSchema,
26
+ execute: async (_toolCallId, args) => {
27
+ const params = args;
28
+ const orgId = readStringParam(params, "orgId");
29
+ const tag = readStringParam(params, "tag");
30
+ const tagId = readStringParam(params, "tagId");
31
+ if (!tag && !tagId) return jsonResult({ error: "tag (name) or tagId is required" });
32
+ return jsonResult(await hubPost("actions/contact-tag", agentId, {
33
+ contactId: readStringParam(params, "contactId", { required: true }),
34
+ ...tag ? { tag } : {},
35
+ ...tagId ? { tagId } : {},
36
+ op: readStringParam(params, "op") ?? "add",
37
+ confirm: params.confirm === true
38
+ }, orgId));
39
+ }
40
+ }, "builtin:contact_tag");
41
+ }
42
+ //#endregion
43
+ export { createContactTagTool };
@@ -0,0 +1,43 @@
1
+ import { t as wrapToolWithTracking } from "./tool-tracking-CtkaABAd.js";
2
+ import { i as jsonResult, s as readStringParam } from "./common-mPQVYX41.js";
3
+ import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD, t as CONFIRM_FIELD } from "./hub-common-BXMO3y1A.js";
4
+ import { Type } from "typebox";
5
+ //#region src/agents/tools/hub/contact-tag-tool.ts
6
+ const ContactTagSchema = Type.Object({
7
+ contactId: Type.String({ description: "The CRM contact to tag." }),
8
+ tag: Type.Optional(Type.String({ description: "Tag NAME (case-insensitive). The hub resolves it to an existing tag, or creates a manual tag on 'add'. Preferred over tagId." })),
9
+ tagId: Type.Optional(Type.String({ description: "Exact tag id — only when you already have it (e.g. from a prior result)." })),
10
+ op: Type.Optional(Type.Union([Type.Literal("add"), Type.Literal("remove")], { description: "'add' (default) or 'remove'." })),
11
+ confirm: CONFIRM_FIELD,
12
+ orgId: ORG_ID_FIELD
13
+ });
14
+ /**
15
+ * Add or remove a CRM contact tag. WRITE — confirm contract: confirm=false
16
+ * returns a preview, confirm=true only after the user explicitly agrees.
17
+ */
18
+ function createContactTagTool(options) {
19
+ const agentId = options.agentId;
20
+ if (!hubToolsAvailable(agentId)) return null;
21
+ return wrapToolWithTracking({
22
+ label: "Contact Tag",
23
+ name: "contact_tag",
24
+ description: "Add or remove a tag on a CRM contact by tag NAME (preferred; the hub resolves or creates it) or exact tagId. First present the exact action (contact, tag, add or remove) and ask for confirmation. Call with confirm=false for a validated preview (no write; preview.willCreateTag tells you if a new tag would be created); only call with confirm=true after the user explicitly agrees. Present the result with a deep link like [contact](/crm/{contactId}).",
25
+ parameters: ContactTagSchema,
26
+ execute: async (_toolCallId, args) => {
27
+ const params = args;
28
+ const orgId = readStringParam(params, "orgId");
29
+ const tag = readStringParam(params, "tag");
30
+ const tagId = readStringParam(params, "tagId");
31
+ if (!tag && !tagId) return jsonResult({ error: "tag (name) or tagId is required" });
32
+ return jsonResult(await hubPost("actions/contact-tag", agentId, {
33
+ contactId: readStringParam(params, "contactId", { required: true }),
34
+ ...tag ? { tag } : {},
35
+ ...tagId ? { tagId } : {},
36
+ op: readStringParam(params, "op") ?? "add",
37
+ confirm: params.confirm === true
38
+ }, orgId));
39
+ }
40
+ }, "builtin:contact_tag");
41
+ }
42
+ //#endregion
43
+ export { createContactTagTool };
@@ -0,0 +1,48 @@
1
+ import { t as wrapToolWithTracking } from "./tool-tracking-CtkaABAd.js";
2
+ import { i as jsonResult, s as readStringParam } from "./common-mPQVYX41.js";
3
+ import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD, t as CONFIRM_FIELD } from "./hub-common-BXMO3y1A.js";
4
+ import { Type } from "typebox";
5
+ //#region src/agents/tools/hub/contact-update-tool.ts
6
+ const ContactUpdateSchema = Type.Object({
7
+ contactId: Type.String({ description: "The CRM contact to update." }),
8
+ name: Type.Optional(Type.String({ description: "New display name." })),
9
+ phone: Type.Optional(Type.String({ description: "New phone number." })),
10
+ email: Type.Optional(Type.String({ description: "New email address." })),
11
+ funnelStage: Type.Optional(Type.String({ description: "New CRM funnel/lifecycle stage." })),
12
+ notes: Type.Optional(Type.String({ description: "New/appended free-text notes." })),
13
+ expectedUpdatedAt: Type.Optional(Type.String({ description: "The contact's updatedAt you last read. Used for optimistic concurrency — the hub rejects the write (409) if the contact changed since." })),
14
+ confirm: CONFIRM_FIELD,
15
+ orgId: ORG_ID_FIELD
16
+ });
17
+ /**
18
+ * Update a CRM contact's name/phone/email/funnel stage/notes. WRITE —
19
+ * confirm contract: confirm=false returns a preview, confirm=true only
20
+ * after the user explicitly agrees. Only whitelisted fields are accepted;
21
+ * use contact_tag for tags, not this tool.
22
+ */
23
+ function createContactUpdateTool(options) {
24
+ const agentId = options.agentId;
25
+ if (!hubToolsAvailable(agentId)) return null;
26
+ return wrapToolWithTracking({
27
+ label: "Contact Update",
28
+ name: "contact_update",
29
+ description: "Update a CRM contact's name, phone, email, funnel stage, or notes (at least one required). First present the exact change (which field, old → new value) and ask for confirmation. Call with confirm=false for a validated preview (no write); only call with confirm=true after the user explicitly agrees. Pass expectedUpdatedAt from the last read to avoid clobbering a concurrent edit (returns {error:'stale',current} on conflict). Use contact_tag to add/remove tags instead. Present the result with a deep link like [contact](/crm/{contactId}).",
30
+ parameters: ContactUpdateSchema,
31
+ execute: async (_toolCallId, args) => {
32
+ const params = args;
33
+ const orgId = readStringParam(params, "orgId");
34
+ return jsonResult(await hubPost("actions/contact-update", agentId, {
35
+ contactId: readStringParam(params, "contactId", { required: true }),
36
+ name: readStringParam(params, "name"),
37
+ phone: readStringParam(params, "phone"),
38
+ email: readStringParam(params, "email"),
39
+ funnelStage: readStringParam(params, "funnelStage"),
40
+ notes: readStringParam(params, "notes"),
41
+ expectedUpdatedAt: readStringParam(params, "expectedUpdatedAt"),
42
+ confirm: params.confirm === true
43
+ }, orgId));
44
+ }
45
+ }, "builtin:contact_update");
46
+ }
47
+ //#endregion
48
+ export { createContactUpdateTool };
@@ -0,0 +1,48 @@
1
+ import { t as wrapToolWithTracking } from "./tool-tracking-Crsmwdkj.js";
2
+ import { i as jsonResult, s as readStringParam } from "./common-CRD8HhuP.js";
3
+ import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD, t as CONFIRM_FIELD } from "./hub-common-D7t3vbq1.js";
4
+ import { Type } from "typebox";
5
+ //#region src/agents/tools/hub/contact-update-tool.ts
6
+ const ContactUpdateSchema = Type.Object({
7
+ contactId: Type.String({ description: "The CRM contact to update." }),
8
+ name: Type.Optional(Type.String({ description: "New display name." })),
9
+ phone: Type.Optional(Type.String({ description: "New phone number." })),
10
+ email: Type.Optional(Type.String({ description: "New email address." })),
11
+ funnelStage: Type.Optional(Type.String({ description: "New CRM funnel/lifecycle stage." })),
12
+ notes: Type.Optional(Type.String({ description: "New/appended free-text notes." })),
13
+ expectedUpdatedAt: Type.Optional(Type.String({ description: "The contact's updatedAt you last read. Used for optimistic concurrency — the hub rejects the write (409) if the contact changed since." })),
14
+ confirm: CONFIRM_FIELD,
15
+ orgId: ORG_ID_FIELD
16
+ });
17
+ /**
18
+ * Update a CRM contact's name/phone/email/funnel stage/notes. WRITE —
19
+ * confirm contract: confirm=false returns a preview, confirm=true only
20
+ * after the user explicitly agrees. Only whitelisted fields are accepted;
21
+ * use contact_tag for tags, not this tool.
22
+ */
23
+ function createContactUpdateTool(options) {
24
+ const agentId = options.agentId;
25
+ if (!hubToolsAvailable(agentId)) return null;
26
+ return wrapToolWithTracking({
27
+ label: "Contact Update",
28
+ name: "contact_update",
29
+ description: "Update a CRM contact's name, phone, email, funnel stage, or notes (at least one required). First present the exact change (which field, old → new value) and ask for confirmation. Call with confirm=false for a validated preview (no write); only call with confirm=true after the user explicitly agrees. Pass expectedUpdatedAt from the last read to avoid clobbering a concurrent edit (returns {error:'stale',current} on conflict). Use contact_tag to add/remove tags instead. Present the result with a deep link like [contact](/crm/{contactId}).",
30
+ parameters: ContactUpdateSchema,
31
+ execute: async (_toolCallId, args) => {
32
+ const params = args;
33
+ const orgId = readStringParam(params, "orgId");
34
+ return jsonResult(await hubPost("actions/contact-update", agentId, {
35
+ contactId: readStringParam(params, "contactId", { required: true }),
36
+ name: readStringParam(params, "name"),
37
+ phone: readStringParam(params, "phone"),
38
+ email: readStringParam(params, "email"),
39
+ funnelStage: readStringParam(params, "funnelStage"),
40
+ notes: readStringParam(params, "notes"),
41
+ expectedUpdatedAt: readStringParam(params, "expectedUpdatedAt"),
42
+ confirm: params.confirm === true
43
+ }, orgId));
44
+ }
45
+ }, "builtin:contact_update");
46
+ }
47
+ //#endregion
48
+ export { createContactUpdateTool };
@@ -0,0 +1,48 @@
1
+ import { t as wrapToolWithTracking } from "./tool-tracking-4XjaoCwP.js";
2
+ import { i as jsonResult, s as readStringParam } from "./common-BHzo6lXS.js";
3
+ import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD, t as CONFIRM_FIELD } from "./hub-common-D7t3vbq1.js";
4
+ import { Type } from "typebox";
5
+ //#region src/agents/tools/hub/contact-update-tool.ts
6
+ const ContactUpdateSchema = Type.Object({
7
+ contactId: Type.String({ description: "The CRM contact to update." }),
8
+ name: Type.Optional(Type.String({ description: "New display name." })),
9
+ phone: Type.Optional(Type.String({ description: "New phone number." })),
10
+ email: Type.Optional(Type.String({ description: "New email address." })),
11
+ funnelStage: Type.Optional(Type.String({ description: "New CRM funnel/lifecycle stage." })),
12
+ notes: Type.Optional(Type.String({ description: "New/appended free-text notes." })),
13
+ expectedUpdatedAt: Type.Optional(Type.String({ description: "The contact's updatedAt you last read. Used for optimistic concurrency — the hub rejects the write (409) if the contact changed since." })),
14
+ confirm: CONFIRM_FIELD,
15
+ orgId: ORG_ID_FIELD
16
+ });
17
+ /**
18
+ * Update a CRM contact's name/phone/email/funnel stage/notes. WRITE —
19
+ * confirm contract: confirm=false returns a preview, confirm=true only
20
+ * after the user explicitly agrees. Only whitelisted fields are accepted;
21
+ * use contact_tag for tags, not this tool.
22
+ */
23
+ function createContactUpdateTool(options) {
24
+ const agentId = options.agentId;
25
+ if (!hubToolsAvailable(agentId)) return null;
26
+ return wrapToolWithTracking({
27
+ label: "Contact Update",
28
+ name: "contact_update",
29
+ description: "Update a CRM contact's name, phone, email, funnel stage, or notes (at least one required). First present the exact change (which field, old → new value) and ask for confirmation. Call with confirm=false for a validated preview (no write); only call with confirm=true after the user explicitly agrees. Pass expectedUpdatedAt from the last read to avoid clobbering a concurrent edit (returns {error:'stale',current} on conflict). Use contact_tag to add/remove tags instead. Present the result with a deep link like [contact](/crm/{contactId}).",
30
+ parameters: ContactUpdateSchema,
31
+ execute: async (_toolCallId, args) => {
32
+ const params = args;
33
+ const orgId = readStringParam(params, "orgId");
34
+ return jsonResult(await hubPost("actions/contact-update", agentId, {
35
+ contactId: readStringParam(params, "contactId", { required: true }),
36
+ name: readStringParam(params, "name"),
37
+ phone: readStringParam(params, "phone"),
38
+ email: readStringParam(params, "email"),
39
+ funnelStage: readStringParam(params, "funnelStage"),
40
+ notes: readStringParam(params, "notes"),
41
+ expectedUpdatedAt: readStringParam(params, "expectedUpdatedAt"),
42
+ confirm: params.confirm === true
43
+ }, orgId));
44
+ }
45
+ }, "builtin:contact_update");
46
+ }
47
+ //#endregion
48
+ export { createContactUpdateTool };
@@ -1,11 +1,11 @@
1
1
  import { St as theme, bt as colorize, dt as danger, g as defaultRuntime, xt as isRich } from "./entry.js";
2
2
  import { f as sanitizeAgentId } from "./session-key-DK3D9dkE.js";
3
- import { n as listChannelPlugins } from "./plugins-BL_DwVqV.js";
3
+ import { n as listChannelPlugins } from "./plugins-Dt-7Y5wv.js";
4
4
  import { n as formatDurationHuman } from "./format-duration-DxxnRZtB.js";
5
5
  import { t as formatDocsLink } from "./links-B03m-P2Z.js";
6
6
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs } from "./stagger-BlvVswOf.js";
7
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-BbkbWt3G.js";
8
- import { c as parsePositiveIntOrUndefined } from "./register.subclis-BV7bN9SK.js";
7
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-14Q1TtPH.js";
8
+ import { c as parsePositiveIntOrUndefined } from "./register.subclis-BFXE6TvY.js";
9
9
  //#region src/cli/cron-cli/shared.ts
10
10
  const getCronChannelOptions = () => ["last", ...listChannelPlugins().map((plugin) => plugin.id)].join("|");
11
11
  async function warnIfCronSchedulerDisabled(opts) {
@@ -2,12 +2,12 @@ import { O as danger } from "./utils-DsgtGH3c.js";
2
2
  import { n as isRich, r as theme, t as colorize } from "./theme-CDbj88LB.js";
3
3
  import { t as defaultRuntime } from "./runtime-Da615Z-K.js";
4
4
  import { p as sanitizeAgentId } from "./session-key-BcXqsG0l.js";
5
- import { n as listChannelPlugins } from "./plugins-C3wcf7MF.js";
5
+ import { n as listChannelPlugins } from "./plugins-C_QBgBKj.js";
6
6
  import { t as formatDocsLink } from "./links-C1xb6h4b.js";
7
7
  import { n as formatDurationHuman } from "./format-duration-DxxnRZtB.js";
8
8
  import { n as parsePositiveIntOrUndefined } from "./helpers-CNw_T-er.js";
9
9
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs } from "./stagger-BlvVswOf.js";
10
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-D4kSkkPS.js";
10
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-l0Ix-6Kp.js";
11
11
  //#region src/cli/cron-cli/shared.ts
12
12
  const getCronChannelOptions = () => ["last", ...listChannelPlugins().map((plugin) => plugin.id)].join("|");
13
13
  async function warnIfCronSchedulerDisabled(opts) {
@@ -1,12 +1,12 @@
1
1
  import { D as truncateUtf16Safe, f as isRecord } from "./utils-DsgtGH3c.js";
2
2
  import { x as parseAgentSessionKey } from "./session-key-BcXqsG0l.js";
3
3
  import { f as resolveSessionAgentId } from "./agent-scope-D_1ZJVsc.js";
4
- import { i as loadConfig } from "./io-e4Yx5ZqN.js";
5
- import "./config-D0cZAiW5.js";
6
- import { f as extractTextFromChatContent } from "./pi-embedded-utils-ByF51tTS.js";
4
+ import { i as loadConfig } from "./io-DsXKMvz3.js";
5
+ import "./config-DKbC00-8.js";
6
+ import { f as extractTextFromChatContent } from "./pi-embedded-utils-Cb_StxCN.js";
7
7
  import { i as jsonResult, s as readStringParam } from "./common-CRD8HhuP.js";
8
- import { f as resolveInternalSessionKey, p as resolveMainSessionAlias } from "./sessions-helpers-C08Phzso.js";
9
- import { t as callGatewayTool } from "./gateway-BZ_rGbzx.js";
8
+ import { f as resolveInternalSessionKey, p as resolveMainSessionAlias } from "./sessions-helpers-DcPYyi87.js";
9
+ import { t as callGatewayTool } from "./gateway-Dt8tSFHA.js";
10
10
  import { n as normalizeCronJobCreate, r as normalizeCronJobPatch, t as normalizeHttpWebhookUrl } from "./webhook-url-_cSEQkJk.js";
11
11
  import { i as stringEnum, r as optionalStringEnum } from "./typebox-BbVstVJp.js";
12
12
  import { Type } from "typebox";
@@ -1,10 +1,10 @@
1
- import { f as extractTextFromChatContent } from "./pi-embedded-utils-CbID52rD.js";
1
+ import { f as extractTextFromChatContent } from "./pi-embedded-utils-MWdH9ypO.js";
2
2
  import { k as isRecord, z as truncateUtf16Safe } from "./subsystem-Bz8lTz2g.js";
3
3
  import { B as sanitizeAgentId, G as parseAgentSessionKey, u as resolveSessionAgentId } from "./agent-scope-G3FqXqqy.js";
4
- import { n as loadConfig } from "./config-UjWeYUCv.js";
4
+ import { n as loadConfig } from "./config-yRiIX18Z.js";
5
5
  import { i as jsonResult, s as readStringParam } from "./common-mPQVYX41.js";
6
- import { t as callGatewayTool } from "./gateway-CDqi7AYG.js";
7
- import { f as resolveInternalSessionKey, p as resolveMainSessionAlias } from "./sessions-helpers-BscA64r4.js";
6
+ import { t as callGatewayTool } from "./gateway-CrExAmqV.js";
7
+ import { f as resolveInternalSessionKey, p as resolveMainSessionAlias } from "./sessions-helpers-CmL5of8k.js";
8
8
  import { i as stringEnum, r as optionalStringEnum } from "./typebox-AaaT2Z0h.js";
9
9
  import { Type } from "typebox";
10
10
  //#region src/platform/cron/legacy-delivery.ts
@@ -1,12 +1,12 @@
1
1
  import { Q as isRecord, ut as truncateUtf16Safe } from "./entry.js";
2
2
  import { b as parseAgentSessionKey } from "./session-key-DK3D9dkE.js";
3
3
  import { f as resolveSessionAgentId } from "./agent-scope-BP7xXcTE.js";
4
- import { i as loadConfig } from "./io-D6HAGfRj.js";
5
- import "./config-C4ygZaLQ.js";
4
+ import { i as loadConfig } from "./io-CUOJNJs6.js";
5
+ import "./config-GA90_ZLO.js";
6
6
  import { i as jsonResult, s as readStringParam } from "./common-BHzo6lXS.js";
7
- import { f as resolveInternalSessionKey, p as resolveMainSessionAlias } from "./sessions-helpers-B5BjpGie.js";
8
- import { f as extractTextFromChatContent } from "./pi-embedded-utils-kgdOppBK.js";
9
- import { t as callGatewayTool } from "./gateway-DnQbLapC.js";
7
+ import { f as resolveInternalSessionKey, p as resolveMainSessionAlias } from "./sessions-helpers-BpXiixPk.js";
8
+ import { f as extractTextFromChatContent } from "./pi-embedded-utils-BNN3Mb-q.js";
9
+ import { t as callGatewayTool } from "./gateway-DE7-sAMu.js";
10
10
  import { n as normalizeCronJobCreate, r as normalizeCronJobPatch, t as normalizeHttpWebhookUrl } from "./webhook-url-DQ4SDf3R.js";
11
11
  import { i as stringEnum, r as optionalStringEnum } from "./typebox-BbVstVJp.js";
12
12
  import { Type } from "typebox";