@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.
- package/dist/{accounts-BuvRfQ9w.js → accounts-BXfCjq1s.js} +1 -1
- package/dist/{accounts-ZaxCwsI7.js → accounts-CgVj_ZvT.js} +1 -1
- package/dist/{accounts-BXGQwBCy.js → accounts-D0IauaHf.js} +1 -1
- package/dist/{accounts-D085lEm1.js → accounts-xwGx4GiG.js} +1 -1
- package/dist/{acp-cli-B33pR8aO.js → acp-cli-BofVv1S4.js} +3 -3
- package/dist/{acp-cli-B4TQ6ceB.js → acp-cli-KgewsPtq.js} +3 -3
- package/dist/{agent-ZEu8LatG.js → agent-h6HcO0Nb.js} +12 -12
- package/dist/{agent-step-GW1K3X_z.js → agent-step-CW6Vc9VA.js} +3 -3
- package/dist/{agent-step-CIwF1fe4.js → agent-step-DIqiZqN6.js} +3 -3
- package/dist/{agents-B-tnV6jT.js → agents-CRuMaUxh.js} +8 -8
- package/dist/{agents-list-tool-CpeEmvE6.js → agents-list-tool-DHrkIYwP.js} +3 -3
- package/dist/{agents-list-tool-C4DN0VKm.js → agents-list-tool-mV9-nOC8.js} +2 -2
- package/dist/{agents-list-tool-B1yRv0qo.js → agents-list-tool-qgS6iC-S.js} +3 -3
- package/dist/{agents.config-DU05dCcQ.js → agents.config-D6xx-kCm.js} +11 -11
- package/dist/{audit-Ck8w3i0g.js → audit-C4vWcnRT.js} +10 -10
- package/dist/{audit-BlADGCfR.js → audit-yMw0xC1H.js} +10 -10
- package/dist/{auth-choice-_HdhC1Ax.js → auth-choice-B3sdr0yr.js} +4 -4
- package/dist/{auth-choice-DXK-xwEZ.js → auth-choice-wAcjEzAw.js} +4 -4
- package/dist/{banner-DyN6sF2C.js → banner-XDf4LEG4.js} +1 -1
- package/dist/booking-cancel-tool-BQ4a7cOG.js +34 -0
- package/dist/booking-cancel-tool-D5WT2e71.js +34 -0
- package/dist/booking-cancel-tool-T0j0NEYJ.js +34 -0
- package/dist/booking-create-tool-B9OhlsCV.js +50 -0
- package/dist/booking-create-tool-C4mnxn4s.js +50 -0
- package/dist/booking-create-tool-DoK1URaw.js +50 -0
- package/dist/booking-reschedule-tool-BBRT8BeA.js +54 -0
- package/dist/booking-reschedule-tool-BbCUsgsS.js +54 -0
- package/dist/booking-reschedule-tool-szF6zAV5.js +54 -0
- package/dist/bookings-query-tool-BeUjMBd7.js +39 -0
- package/dist/bookings-query-tool-C82uomRU.js +39 -0
- package/dist/bookings-query-tool-CKBaEz6v.js +39 -0
- package/dist/brain-remember-tool-5GpyMh2L.js +54 -0
- package/dist/brain-remember-tool-C0NYC-xc.js +54 -0
- package/dist/brain-remember-tool-C6nzb0DB.js +54 -0
- package/dist/brain-search-tool-CISjpiVH.js +37 -0
- package/dist/brain-search-tool-CroWlajo.js +37 -0
- package/dist/brain-search-tool-D8benSIw.js +37 -0
- package/dist/brains-list-tool-CgKa84V3.js +27 -0
- package/dist/brains-list-tool-D6S8eSfu.js +27 -0
- package/dist/brains-list-tool-QygvDpW2.js +27 -0
- package/dist/{browser-cli-B61sRYcg.js → browser-cli-ChMgod93.js} +4 -4
- package/dist/{browser-cli-CmTcAyLB.js → browser-cli-DAsazj7c.js} +4 -4
- package/dist/{browser-tool-DcFsvT1U.js → browser-tool-CMPuFbvY.js} +6 -6
- package/dist/{browser-tool-BssHihtr.js → browser-tool-Ed0u_AOB.js} +7 -7
- package/dist/{browser-tool-BkX_TrBo.js → browser-tool-fWwWyaEp.js} +7 -7
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +1566 -11
- package/dist/bundled/kg-message-sync/handler.js +1 -1
- package/dist/{call-ByUO9iKO.js → call-BEIi33qI.js} +1 -1
- package/dist/{call-DtlNtNVA.js → call-BPWvRjRm.js} +2 -2
- package/dist/{call-_kPuw-vU.js → call-BtA9WrCC.js} +2 -2
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{canvas-tool-WyTrg2j9.js → canvas-tool-CRjzdRXW.js} +2 -2
- package/dist/{canvas-tool-DEtMG6i2.js → canvas-tool-Ctyu2how.js} +2 -2
- package/dist/{canvas-tool-CzpnmWAn.js → canvas-tool-ftxzYBaK.js} +2 -2
- package/dist/{channel-options-Cnz3IGd9.js → channel-options-CQYFDEhv.js} +2 -2
- package/dist/{channel-options-DopXFSyZ.js → channel-options-ax7LAM0A.js} +2 -2
- package/dist/{channel-selection-CYImJUQg.js → channel-selection-CEx__vtW.js} +1 -1
- package/dist/{channel-selection-iTEcjxYC.js → channel-selection-SE_1hB_M.js} +1 -1
- package/dist/{channel-web-C61ymAAy.js → channel-web-BBuKa6h3.js} +11 -11
- package/dist/{channels-cli-CG1PrWEi.js → channels-cli-B9G06Fmo.js} +13 -13
- package/dist/{channels-cli-B5AFLqYY.js → channels-cli-CMytcEwb.js} +13 -13
- package/dist/{channels-status-issues-CruUpZ5_.js → channels-status-issues-2UslYkyj.js} +1 -1
- package/dist/{channels-status-issues-DQudmpKi.js → channels-status-issues-D-Uign2B.js} +1 -1
- package/dist/{chrome-SXjxMlpf.js → chrome-8ypx9Y_Q.js} +2 -2
- package/dist/{chrome-BXvOfh_S.js → chrome-Bm0i3JJ5.js} +1 -1
- package/dist/{chrome-BiJw-KLb.js → chrome-CKpv4Nqu.js} +2 -2
- package/dist/{clawbot-cli-BqIjHYyO.js → clawbot-cli-B0dcEO3n.js} +1 -1
- package/dist/{clawbot-cli-DEFNc0eF.js → clawbot-cli-BhkD8jAi.js} +1 -1
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-BOOG9rRa.js → cli-Bb8BwFKn.js} +3 -3
- package/dist/{cli-XfQlZlkf.js → cli-BkYzSkm4.js} +3 -3
- package/dist/{client-CS7cx9Im.js → client-CFTzdF7N.js} +4 -4
- package/dist/{client-BWtnXqf6.js → client-Ct-X1nzk.js} +4 -4
- package/dist/{client-0oQQSzns.js → client-DkJ5jqsl.js} +4 -4
- package/dist/{command-registry-JmDW6Nn6.js → command-registry-DYwO0GeY.js} +14 -14
- package/dist/{commands-registry-BAl7QGCh.js → commands-registry-CTh_zaQh.js} +2 -2
- package/dist/{commands-registry-apXzRQIt.js → commands-registry-eYNgWaeM.js} +2 -2
- package/dist/{completion-cli-CLXHz8g6.js → completion-cli-BR3ceW8A.js} +2 -2
- package/dist/{completion-cli-hYHXI1uh.js → completion-cli-DF_9tlQG.js} +1 -1
- package/dist/{config-D0cZAiW5.js → config-DKbC00-8.js} +1 -1
- package/dist/{config-C4ygZaLQ.js → config-GA90_ZLO.js} +1 -1
- package/dist/{config-cli-WVl6fLmt.js → config-cli-BFBb_KPM.js} +3 -3
- package/dist/{config-cli-a6kX0DWm.js → config-cli-DqrSBbB0.js} +3 -3
- package/dist/{config-guard-CLHcu3Wq.js → config-guard-CUaqhHD3.js} +3 -3
- package/dist/config-guard-CljBFSot.js +2 -0
- package/dist/{config-validation-uXqheWDj.js → config-validation-B7WbrARG.js} +2 -2
- package/dist/{config-validation-BUM-4lnJ.js → config-validation-BLe1mTWt.js} +2 -2
- package/dist/{config-UjWeYUCv.js → config-yRiIX18Z.js} +1 -1
- package/dist/{configure-DqZ20Fm1.js → configure-BVS7Uoe1.js} +16 -16
- package/dist/{configure-W7doYXjc.js → configure-Y4orl1oO.js} +16 -16
- package/dist/contact-tag-tool-B2IwH12w.js +43 -0
- package/dist/contact-tag-tool-BCTLI9AF.js +43 -0
- package/dist/contact-tag-tool-D-ow4Isv.js +43 -0
- package/dist/contact-update-tool-BUqDMu6g.js +48 -0
- package/dist/contact-update-tool-BtNz3sPT.js +48 -0
- package/dist/contact-update-tool-CuE27eki.js +48 -0
- package/dist/{cron-cli-D8dfzuy8.js → cron-cli-CMq19JHd.js} +3 -3
- package/dist/{cron-cli-abqQP_b7.js → cron-cli-DnZ4sbsM.js} +2 -2
- package/dist/{cron-tool-DT-Juzd0.js → cron-tool-BwIsBYaw.js} +5 -5
- package/dist/{cron-tool-CfZIJWk_.js → cron-tool-CsOKL3c2.js} +4 -4
- package/dist/{cron-tool-CvjJ7eWq.js → cron-tool-DyEs4iFg.js} +5 -5
- package/dist/{daemon-cli-LfpGMPoH.js → daemon-cli-CueUsD00.js} +9 -9
- package/dist/{daemon-cli-Dk4HnYpN.js → daemon-cli-of4aZf7x.js} +9 -9
- package/dist/daemon-cli.js +1 -1
- package/dist/daemon-install-helpers-BTrwyLn2.js +2 -0
- package/dist/daemon-install-helpers-DrlG4q0g.js +2 -0
- package/dist/{daemon-runtime-CWwiPJlC.js → daemon-runtime-Bc1wF1kV.js} +1 -1
- package/dist/{daemon-runtime-CYbnHdnj.js → daemon-runtime-DDr_cMqE.js} +1 -1
- package/dist/{deliver-BL-x0LSd.js → deliver-9LL4m3Lu.js} +6 -6
- package/dist/{deliver-W1AG1DOn.js → deliver-BQbh88Tj.js} +4 -4
- package/dist/{deliver-Cl_KmOId.js → deliver-UZw-uP-N.js} +5 -5
- package/dist/{deps-nXmpIQZI.js → deps-BDdvdX9C.js} +7 -7
- package/dist/{devices-cli-DnCpjN6g.js → devices-cli-C4beZBw0.js} +1 -1
- package/dist/{devices-cli-BRK10uvX.js → devices-cli-DLos0jsr.js} +1 -1
- package/dist/{diagnostic-BzRwZgem.js → diagnostic-VfvbQ5fw.js} +2 -2
- package/dist/{diagnostic-session-state-DxmmFAAh.js → diagnostic-session-state-CBHZ89g9.js} +1 -1
- package/dist/{directory-cli-C5N6RWl4.js → directory-cli-Bnn8FmVY.js} +4 -4
- package/dist/{directory-cli-BL_qihxU.js → directory-cli-DqwjijGj.js} +4 -4
- package/dist/{dispatcher-D1AyKtq_.js → dispatcher-D0-a_KPL.js} +7 -7
- package/dist/{dispatcher-zNWlur8g.js → dispatcher-DiHR8NYb.js} +7 -7
- package/dist/{dm-policy-shared-ClqzKx9w.js → dm-policy-shared-COFFISSw.js} +2 -2
- package/dist/{dm-policy-shared-C48I2hKE.js → dm-policy-shared-Db1R5Al0.js} +2 -2
- package/dist/{dns-cli-6CZeX7fy.js → dns-cli-BLIp6tn8.js} +2 -2
- package/dist/{dns-cli-C1Zhq42E.js → dns-cli-DU4VfG3C.js} +2 -2
- package/dist/{doctor-completion-Bpn4-Oq7.js → doctor-completion-8taj147x.js} +1 -1
- package/dist/doctor-completion-Bu80Av1s.js +2 -0
- package/dist/doctor-completion-BzTZPUY3.js +2 -0
- package/dist/{doctor-completion-DvFl76Xq.js → doctor-completion-lFqnioUo.js} +1 -1
- package/dist/{doctor-config-flow-CR7fJOuO.js → doctor-config-flow-3lyK6GXd.js} +5 -5
- package/dist/{doctor-config-flow-B_rg9smn.js → doctor-config-flow-DPD_mReb.js} +5 -5
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-CgGc4dVa.js → exec-approvals-cli-BfC19d1o.js} +2 -2
- package/dist/{exec-approvals-cli-BHbQggLt.js → exec-approvals-cli-CljRgEuO.js} +2 -2
- package/dist/extensionAPI.js +2 -2
- package/dist/finance-query-tool-7NGJzyjQ.js +43 -0
- package/dist/finance-query-tool-Bc-nST7-.js +43 -0
- package/dist/finance-query-tool-DEh-8uf3.js +43 -0
- package/dist/{gateway-CDqi7AYG.js → gateway-CrExAmqV.js} +2 -2
- package/dist/{gateway-DnQbLapC.js → gateway-DE7-sAMu.js} +3 -3
- package/dist/{gateway-BZ_rGbzx.js → gateway-Dt8tSFHA.js} +3 -3
- package/dist/{gateway-cli-DHMb1UuP.js → gateway-cli-BNdl5ETB.js} +40 -40
- package/dist/{gateway-cli-C5N07CtU.js → gateway-cli-avHq5s28.js} +44 -44
- package/dist/{gateway-rpc-BbkbWt3G.js → gateway-rpc-14Q1TtPH.js} +1 -1
- package/dist/{gateway-rpc-D4kSkkPS.js → gateway-rpc-l0Ix-6Kp.js} +1 -1
- package/dist/{gateway-tool-z8-vPF0-.js → gateway-tool-BWSVz3lE.js} +3 -3
- package/dist/{gateway-tool-koliixkR.js → gateway-tool-CX6hKwWR.js} +3 -3
- package/dist/{gateway-tool-D_6Uf9GQ.js → gateway-tool-CavUON8u.js} +3 -3
- package/dist/{github-copilot-auth-DXRIXhwE.js → github-copilot-auth-BVranXiA.js} +2 -2
- package/dist/{github-copilot-auth-vZIh62h7.js → github-copilot-auth-LevK6DQr.js} +2 -2
- package/dist/{gmail-C67NcH03.js → gmail-C1xWwBqt.js} +1 -1
- package/dist/{gmail-CKdlz_2l.js → gmail-rJdWhPq_.js} +1 -1
- package/dist/{health-B68NlCPU.js → health-CmEEKiew.js} +8 -8
- package/dist/{health-BH4SZIqw.js → health-DPusbWbK.js} +8 -8
- package/dist/{helpers-DX7IrTxf.js → helpers-DrKNVVVu.js} +1 -1
- package/dist/{helpers-DfUDP_7P.js → helpers-v9HeNa7s.js} +1 -1
- package/dist/{hooks-cli-fogVtYj5.js → hooks-cli-Di-nx8CI.js} +2 -2
- package/dist/{hooks-cli-C2Wx1UBL.js → hooks-cli-DqnwazMm.js} +2 -2
- package/dist/hub-common-BXMO3y1A.js +58 -0
- package/dist/hub-common-D7t3vbq1.js +58 -0
- package/dist/hub-pages-tool-CcT1qxV9.js +27 -0
- package/dist/hub-pages-tool-D-3FEFsZ.js +27 -0
- package/dist/hub-pages-tool-DoDvLDFh.js +27 -0
- package/dist/{image-tool-DrPrAhPE.js → image-tool-BjcTww_z.js} +2 -2
- package/dist/{image-tool-BjwEfIHS.js → image-tool-CZln47nw.js} +2 -2
- package/dist/{image-tool-t2URJv9Q.js → image-tool-CqG2fJgM.js} +2 -2
- package/dist/index.js +10 -10
- package/dist/{io-D6HAGfRj.js → io-CUOJNJs6.js} +1 -1
- package/dist/{io-e4Yx5ZqN.js → io-DsXKMvz3.js} +1 -1
- package/dist/{ir-CRQw8rC-.js → ir-B5YPvQFJ.js} +1 -1
- package/dist/{ir-Dw5why5w.js → ir-D89aqXPf.js} +4 -4
- package/dist/{ir-CXYhC_s0.js → ir-Dc6AWYIi.js} +1 -1
- package/dist/{knowledge-graph-DY3hX2id.js → knowledge-graph-MfRaP31I.js} +1 -1
- package/dist/{lifecycle-core-DodDF7fD.js → lifecycle-core-B5yxpQrN.js} +3 -3
- package/dist/{lifecycle-core-eActrcsn.js → lifecycle-core-BgBdMtfY.js} +3 -3
- package/dist/{logs-cli-BOKzwD3q.js → logs-cli-DCwto3gl.js} +2 -2
- package/dist/{logs-cli-Dogt71JB.js → logs-cli-DhL544qw.js} +2 -2
- package/dist/{manager-BEO63FwF.js → manager-DaF7qlnz.js} +1 -1
- package/dist/{memory-cli-DYHzddiH.js → memory-cli-BnAPYY9h.js} +2 -2
- package/dist/{memory-cli-QIIevuLL.js → memory-cli-DcenbgYg.js} +2 -2
- package/dist/{message-action-runner-BHH2obtO.js → message-action-runner-B_XqOBWe.js} +10 -10
- package/dist/{message-action-runner-BZPZrbfZ.js → message-action-runner-Dg2rHhif.js} +10 -10
- package/dist/{message-ledger-wjhcg6Ko.js → message-ledger-BeuUbcUn.js} +6 -6
- package/dist/{message-tool-Dx0lcq57.js → message-tool-BtCKP0ZG.js} +6 -6
- package/dist/{message-tool-BqzlpxAL.js → message-tool-CXE6QSaq.js} +8 -8
- package/dist/{message-tool-BdZMbP-_.js → message-tool-fWXuQrLW.js} +6 -6
- package/dist/{minion-tools-BCsEknBS.js → minion-tools-CExlnRRN.js} +438 -48
- package/dist/{model-catalog-BzwXHdrf.js → model-catalog-BUOrFywx.js} +3 -3
- package/dist/{model-catalog-C6s-YmOC.js → model-catalog-DAHly2DA.js} +3 -3
- package/dist/{model-fallback-CItMxzEx.js → model-fallback-BFGscvIF.js} +2 -2
- package/dist/{model-fallback-rLmQ9WJ2.js → model-fallback-Bu5IXWCs.js} +2 -2
- package/dist/{model-fallback-CSdDdf18.js → model-fallback-D7bL5w9a.js} +3 -3
- package/dist/{model-picker-Jl9cR9lZ.js → model-picker-BXHv9gwd.js} +2 -2
- package/dist/{model-picker-B-XiL2OH.js → model-picker-BlVeWarh.js} +2 -2
- package/dist/{models-CzO1PoHi.js → models-DrdU8zCR.js} +11 -11
- package/dist/{models-cli-DDqRod8M.js → models-cli-ClloOmLf.js} +11 -11
- package/dist/{models-cli-CJZPgBfF.js → models-cli-Cs1chbdr.js} +2 -2
- package/dist/{models-config-BNdF-IMY.js → models-config-CYz1Jl9f.js} +2 -2
- package/dist/{models-config-gGtRsN8J.js → models-config-DYWSuEYm.js} +2 -2
- package/dist/{node-cli-C07JlIhT.js → node-cli-DfNXXKfW.js} +7 -7
- package/dist/{node-cli-KTuDPtLV.js → node-cli-DuTW318s.js} +7 -7
- package/dist/{nodes-cli-D2NSRkr9.js → nodes-cli-C4DbIhxT.js} +4 -4
- package/dist/{nodes-cli-CtuZ7NoK.js → nodes-cli-dNo0GV28.js} +4 -4
- package/dist/{nodes-tool-DEEg33kl.js → nodes-tool-BMyerIV8.js} +3 -3
- package/dist/{nodes-tool-C64_5SUR.js → nodes-tool-CdRBRg3n.js} +2 -2
- package/dist/{nodes-tool-DytMlT0G.js → nodes-tool-xWih4JM4.js} +2 -2
- package/dist/{nodes-utils-CPn-ghlx.js → nodes-utils-CufLKNGe.js} +1 -1
- package/dist/{nodes-utils-BCfYRkSd.js → nodes-utils-DVWS0DJm.js} +1 -1
- package/dist/{nodes-utils-BTHUGnyH.js → nodes-utils-DsbuELKY.js} +1 -1
- package/dist/notify-user-tool-BQ9QLglp.js +41 -0
- package/dist/notify-user-tool-BuELqNes.js +41 -0
- package/dist/notify-user-tool-DLae7l_c.js +41 -0
- package/dist/{onboard-DUvfso4l.js → onboard-B-avLisX.js} +8 -8
- package/dist/{onboard-DofGeN8U.js → onboard-SJUelwfO.js} +8 -8
- package/dist/{onboard-channels-Bt9VQkRB.js → onboard-channels-2zt_gaYa.js} +3 -3
- package/dist/{onboard-channels-0yScPK4U.js → onboard-channels-B4YkPT_I.js} +1 -1
- package/dist/{onboard-channels-Vjny7vl1.js → onboard-channels-BfdH44jV.js} +1 -1
- package/dist/{onboard-channels-DaLKz8R4.js → onboard-channels-PE0DJeP3.js} +3 -3
- package/dist/{onboard-custom-rWmaWITc.js → onboard-custom-AFW2y9Fw.js} +2 -2
- package/dist/{onboard-custom-BDGt1kja.js → onboard-custom-DiGxyF1W.js} +2 -2
- package/dist/{onboard-custom-BysGgJiB.js → onboard-custom-sOaQBqZH.js} +1 -1
- package/dist/{onboard-custom-C3f0dVEB.js → onboard-custom-zDWUbUye.js} +1 -1
- package/dist/{onboard-helpers-BrndIk2N.js → onboard-helpers-0Ck3IoqE.js} +4 -4
- package/dist/{onboard-helpers-BAGJ5Lo1.js → onboard-helpers-Bat8F04f.js} +1 -1
- package/dist/{onboard-helpers-Dd4P1QbH.js → onboard-helpers-Bt6lH884.js} +4 -4
- package/dist/{onboard-helpers-DV9yuQ1d.js → onboard-helpers-CGpNOsa3.js} +1 -1
- package/dist/{onboard-remote-DRzZ9kQN.js → onboard-remote-CGoat8Ht.js} +1 -1
- package/dist/{onboard-remote-JIG7iYFa.js → onboard-remote-fxQZypsD.js} +1 -1
- package/dist/{onboard-skills-Ce5HO8VV.js → onboard-skills-CLrW7_vF.js} +1 -1
- package/dist/{onboard-skills-DMVLngVN.js → onboard-skills-GK6OUUuS.js} +1 -1
- package/dist/{onboarding-wYvukFyg.js → onboarding-C7aodLA2.js} +12 -12
- package/dist/{onboarding-CbhR0emG.js → onboarding-lIh5Eq03.js} +12 -12
- package/dist/{onboarding.finalize-DcDS7RiE.js → onboarding.finalize-Cpr_6eTb.js} +9 -9
- package/dist/{onboarding.finalize-nhs02n-T.js → onboarding.finalize-Wqrm-aWj.js} +9 -9
- package/dist/{onboarding.gateway-config-Bn1-Rp-H.js → onboarding.gateway-config-Bxm6nU1u.js} +2 -2
- package/dist/{onboarding.gateway-config-CtPOA3D5.js → onboarding.gateway-config-DKCE85Y-.js} +2 -2
- package/dist/order-update-status-tool-CMFqE714.js +43 -0
- package/dist/order-update-status-tool-CNX4uu2U.js +43 -0
- package/dist/order-update-status-tool-Dkv-jcX1.js +43 -0
- package/dist/orders-query-tool-Cox-HkmB.js +40 -0
- package/dist/orders-query-tool-CrWjRlWq.js +40 -0
- package/dist/orders-query-tool-DoTV3it7.js +40 -0
- package/dist/{outbound-send-deps-B6gAQhTt.js → outbound-send-deps-BaQy-H2c.js} +7 -7
- package/dist/{outbound-session-DRsIRtcz.js → outbound-session-CQu7MwtX.js} +6 -6
- package/dist/{outbound-session-Bw7QohlD.js → outbound-session-CX_XRDHU.js} +6 -6
- package/dist/{pairing-cli-Dgd0Wbso.js → pairing-cli-Y4cWvmqV.js} +4 -4
- package/dist/{pairing-cli-DNxLtDAs.js → pairing-cli-YKXsh9qq.js} +4 -4
- package/dist/{pairing-store-Dt3zHbxc.js → pairing-store-Cw5GsbNo.js} +2 -2
- package/dist/{pairing-store-BOjF78Ox.js → pairing-store-Da_7uUr_.js} +2 -2
- package/dist/{pi-embedded-helpers-CEkySDxp.js → pi-embedded-helpers-CDWmWyvU.js} +1 -1
- package/dist/{pi-embedded-helpers-DscGMv73.js → pi-embedded-helpers-CHtXwjlA.js} +27 -4
- package/dist/{pi-embedded-helpers-DL7FHGmT.js → pi-embedded-helpers-CwDskpRg.js} +1 -1
- package/dist/{pi-embedded-utils-kgdOppBK.js → pi-embedded-utils-BNN3Mb-q.js} +1 -1
- package/dist/{pi-embedded-utils-ByF51tTS.js → pi-embedded-utils-Cb_StxCN.js} +1 -1
- package/dist/{pi-embedded-utils-CbID52rD.js → pi-embedded-utils-MWdH9ypO.js} +1 -1
- package/dist/{pi-model-discovery-p8TFZjTo.js → pi-model-discovery-CKRiDFp0.js} +1 -1
- package/dist/{pi-tools.policy-BGMUkXoJ.js → pi-tools.policy-BJl7_IWm.js} +3 -3
- package/dist/{plugin-auto-enable-DDudeIWk.js → plugin-auto-enable-BuWdv2za.js} +1 -1
- package/dist/{plugin-auto-enable-3NRefTC0.js → plugin-auto-enable-DmQbCYAk.js} +1 -1
- package/dist/{plugin-registry-BsmJvnZM.js → plugin-registry-6dOOzi3y.js} +3 -3
- package/dist/{plugin-registry-5x3uvlGH.js → plugin-registry-CC5mfGuh.js} +3 -3
- package/dist/plugin-sdk/agents/tools/hub/booking-cancel-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/booking-create-tool.d.ts +10 -0
- package/dist/plugin-sdk/agents/tools/hub/booking-reschedule-tool.d.ts +12 -0
- package/dist/plugin-sdk/agents/tools/hub/bookings-query-tool.d.ts +9 -0
- package/dist/plugin-sdk/agents/tools/hub/brain-remember-tool.d.ts +14 -0
- package/dist/plugin-sdk/agents/tools/hub/brain-search-tool.d.ts +9 -0
- package/dist/plugin-sdk/agents/tools/hub/brains-list-tool.d.ts +10 -0
- package/dist/plugin-sdk/agents/tools/hub/contact-tag-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/contact-update-tool.d.ts +10 -0
- package/dist/plugin-sdk/agents/tools/hub/finance-query-tool.d.ts +11 -0
- package/dist/plugin-sdk/agents/tools/hub/hub-common.d.ts +17 -0
- package/dist/plugin-sdk/agents/tools/hub/hub-pages-tool.d.ts +10 -0
- package/dist/plugin-sdk/agents/tools/hub/notify-user-tool.d.ts +11 -0
- package/dist/plugin-sdk/agents/tools/hub/order-update-status-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/orders-query-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/projects-query-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/stock-entry-create-tool.d.ts +10 -0
- package/dist/plugin-sdk/agents/tools/hub/stock-query-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/task-create-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/task-update-tool.d.ts +9 -0
- package/dist/plugin-sdk/agents/tools/hub/ticket-comment-tool.d.ts +9 -0
- package/dist/plugin-sdk/agents/tools/hub/ticket-create-tool.d.ts +8 -0
- package/dist/plugin-sdk/agents/tools/hub/ticket-update-tool.d.ts +9 -0
- package/dist/plugin-sdk/agents/tools/hub/tickets-query-tool.d.ts +8 -0
- package/dist/plugin-sdk/channels/discord.js +1566 -11
- package/dist/plugin-sdk/channels/imessage.js +1566 -11
- package/dist/plugin-sdk/channels/line.js +1566 -11
- package/dist/plugin-sdk/channels/signal.js +1566 -11
- package/dist/plugin-sdk/channels/slack.js +1566 -11
- package/dist/plugin-sdk/channels/telegram.js +1566 -11
- package/dist/plugin-sdk/channels/whatsapp.js +1566 -11
- package/dist/plugin-sdk/core.js +1 -1
- package/dist/plugin-sdk/index.js +1566 -11
- package/dist/{plugins-C3wcf7MF.js → plugins-C_QBgBKj.js} +1 -1
- package/dist/{plugins-B3EcsJ93.js → plugins-D6vuz-44.js} +1 -1
- package/dist/{plugins-BL_DwVqV.js → plugins-Dt-7Y5wv.js} +1 -1
- package/dist/{plugins-cli-BmazY7y6.js → plugins-cli-BYANyisq.js} +3 -3
- package/dist/{plugins-cli-CbT4Ivfy.js → plugins-cli-z-gXEkiv.js} +3 -3
- package/dist/{program-DbljxDPq.js → program-D_3DwSCA.js} +7 -7
- package/dist/{program-context-DiDgk5Zh.js → program-context-DRlcBXyK.js} +42 -42
- package/dist/projects-query-tool-BMFyd6JA.js +36 -0
- package/dist/projects-query-tool-BfpS0jf3.js +36 -0
- package/dist/projects-query-tool-DDIbxa_y.js +36 -0
- package/dist/{prompt-select-styled-CBtk-g6b.js → prompt-select-styled-2x3TaE5T.js} +18 -18
- package/dist/{prompt-select-styled-DQkPX023.js → prompt-select-styled-CkFtjmG1.js} +18 -18
- package/dist/{push-apns-BOeMCPZo.js → push-apns-BYXttBeJ.js} +1 -1
- package/dist/{push-apns-DpoIe7e2.js → push-apns-D879xbRP.js} +1 -1
- package/dist/{pw-ai-BJyHhYQF.js → pw-ai-BXS_o6SX.js} +2 -2
- package/dist/{pw-ai-BEWrwUFs.js → pw-ai-CfC7b26r.js} +2 -2
- package/dist/{pw-ai-HlMa6FG6.js → pw-ai-D9HAap-o.js} +2 -2
- package/dist/{pw-session-CWDEi5Nc.js → pw-session-ClplWKdd.js} +1 -1
- package/dist/{pw-session-CwWxQG1I.js → pw-session-FNaJjvLM.js} +1 -1
- package/dist/{pw-session-CGsc7KWi.js → pw-session-m7067XiE.js} +1 -1
- package/dist/{qr-cli-Dhlzz33G.js → qr-cli-CReHqOud.js} +2 -2
- package/dist/{qr-cli-Dldb8C1U.js → qr-cli-CdiCMQGN.js} +2 -2
- package/dist/{register.agent-_wkQQgzp.js → register.agent-BhnXw_dx.js} +8 -8
- package/dist/{register.agent-DnR7m134.js → register.agent-gVjDby1v.js} +12 -12
- package/dist/{register.channel-DtMJW1B2.js → register.channel-BWFep3ht.js} +2 -2
- package/dist/{register.channel-ByOxBY8q.js → register.channel-Cs5mrRZK.js} +2 -2
- package/dist/{register.configure-nrRrsu0C.js → register.configure-BeA7rzcV.js} +1 -1
- package/dist/{register.configure-BPniagxi.js → register.configure-CfW9D0gg.js} +1 -1
- package/dist/{register.drone-Cf5hsWJV.js → register.drone-C3ko3f4m.js} +1 -1
- package/dist/{register.drone-GMUhMhB4.js → register.drone-N_X5a2wS.js} +1 -1
- package/dist/{register.maintenance-BgfUvt-j.js → register.maintenance-BdJvIKSK.js} +5 -5
- package/dist/{register.maintenance-1tmxCGJO.js → register.maintenance-CEXQ4BMG.js} +5 -5
- package/dist/{register.message-sfK4pC7Q.js → register.message-CSdDkTF6.js} +9 -9
- package/dist/{register.message-o5rsaNxX.js → register.message-D4L-RQzY.js} +8 -8
- package/dist/{register.onboard-Dyb6qoBi.js → register.onboard-CYI56giZ.js} +1 -1
- package/dist/{register.onboard-Q56EmCd1.js → register.onboard-DEsoSYVM.js} +1 -1
- package/dist/{register.setup-LmUXe-fJ.js → register.setup-ChlFvsQj.js} +4 -4
- package/dist/{register.setup-DFN-ma50.js → register.setup-CpMcHooI.js} +4 -4
- package/dist/{register.status-health-sessions-ChRIvGGx.js → register.status-health-sessions-CESGadbE.js} +6 -6
- package/dist/{register.status-health-sessions-CH55XELQ.js → register.status-health-sessions-CIBXSHl0.js} +4 -4
- package/dist/{register.subclis-BV7bN9SK.js → register.subclis-BFXE6TvY.js} +29 -29
- package/dist/{reply-BvB01BRa.js → reply-Dy4Gl8EU.js} +436 -46
- package/dist/{reply-payloads-BxIDP7AE.js → reply-payloads-haUxLKio.js} +6 -6
- package/dist/{reply-prefix-Caipj1Jf.js → reply-prefix-BQo8iEBd.js} +1 -1
- package/dist/{reply-prefix-DY3LhS4c.js → reply-prefix-CUl0tQo3.js} +1 -1
- package/dist/{resolve-route-_uEmZcg2.js → resolve-route-CQNeFCbt.js} +4 -4
- package/dist/{resolve-route-DMoFSOUO.js → resolve-route-Cm40tM17.js} +2 -2
- package/dist/{routes-BsjQsdNd.js → routes-B3alP22i.js} +5 -5
- package/dist/{routes-BzfGuFnh.js → routes-DLBS9sHq.js} +5 -5
- package/dist/{rpc-gxwxRHlK.js → rpc-CtI1iVqG.js} +1 -1
- package/dist/{rpc-LOiW9xrJ.js → rpc-DZXtmnqh.js} +1 -1
- package/dist/{run-main-BiEp_qc-.js → run-main-De6Qk8Ng.js} +20 -20
- package/dist/{sandbox-0BpaF17S.js → sandbox-Co0HrQB2.js} +29 -6
- package/dist/{sandbox-opcHUJfc.js → sandbox-Dh_zn6nH.js} +29 -6
- package/dist/{sandbox-cli-Ca6I34Pd.js → sandbox-cli-DXUvqdbh.js} +4 -4
- package/dist/{sandbox-cli-B3hI0p9M.js → sandbox-cli-LZRCHMKQ.js} +4 -4
- package/dist/{security-cli-B1FLTWRz.js → security-cli-BlgNK6T8.js} +4 -4
- package/dist/{security-cli-wN-U3m9U.js → security-cli-COv-kz1U.js} +4 -4
- package/dist/{send-rKIFHSnf.js → send-B-l_LQjz.js} +6 -6
- package/dist/{send-ucLRBq08.js → send-BI100vN5.js} +4 -4
- package/dist/{send-BYUhkXPy.js → send-Bo3iRRV4.js} +5 -5
- package/dist/{send-CdgyDwpI.js → send-C1WQ3CSg.js} +5 -5
- package/dist/{send-mMi3QyjT.js → send-D3OXHEbY.js} +6 -6
- package/dist/{send-x8u-elit.js → send-DWGmd1lt.js} +5 -5
- package/dist/{send-DYI3wQww.js → send-Dnl8Mt0b.js} +5 -5
- package/dist/{send-B3692clO.js → send-nbmNq53I.js} +4 -4
- package/dist/{send-CGfg9v0J.js → send-oPMRcy46.js} +6 -6
- package/dist/{server-context-BQP316jT.js → server-context-BeBZl8zi.js} +7 -7
- package/dist/{server-context-BphUkFsU.js → server-context-DagQm3En.js} +22 -13
- package/dist/{server-context-B-cxcvtx.js → server-context-DecHp93O.js} +7 -7
- package/dist/{server-node-events-OgwlQNLw.js → server-node-events-Bo8YlLSF.js} +11 -11
- package/dist/{server-node-events-D5Xh_Y3M.js → server-node-events-uT9otrnW.js} +9 -9
- package/dist/{session-status-tool-BNOPtPyp.js → session-status-tool-CORFonZM.js} +6 -6
- package/dist/{session-status-tool-fkINR0b7.js → session-status-tool-DOqbETnH.js} +4 -4
- package/dist/{session-status-tool-Bsup3FG3.js → session-status-tool-DWSIlGFt.js} +7 -7
- package/dist/{session-utils-BhtdagqA.js → session-utils-Csw9JX2F.js} +4 -4
- package/dist/{sessions-Xhs8V4aT.js → sessions-BdTwFSod.js} +5 -5
- package/dist/{sessions-Cnxo_ndD.js → sessions-Bxcso1A4.js} +4 -4
- package/dist/{sessions-helpers-B5BjpGie.js → sessions-helpers-BpXiixPk.js} +3 -3
- package/dist/{sessions-helpers-BscA64r4.js → sessions-helpers-CmL5of8k.js} +3 -3
- package/dist/{sessions-helpers-C08Phzso.js → sessions-helpers-DcPYyi87.js} +3 -3
- package/dist/{sessions-history-tool-D3gAndpg.js → sessions-history-tool-BQOJ7xuQ.js} +5 -5
- package/dist/{sessions-history-tool-Br3I5NQV.js → sessions-history-tool-ClVtna5z.js} +4 -4
- package/dist/{sessions-history-tool-BS2CEMeV.js → sessions-history-tool-wBp39NZW.js} +5 -5
- package/dist/{sessions-list-tool-D9haQlmB.js → sessions-list-tool-C0O6mqWz.js} +5 -5
- package/dist/{sessions-list-tool-BqcU9vby.js → sessions-list-tool-CH113G82.js} +5 -5
- package/dist/{sessions-list-tool-D0ZSfep3.js → sessions-list-tool-DWfvM5MD.js} +4 -4
- package/dist/{sessions-F6cK8l_1.js → sessions-lzLAfYqN.js} +2 -2
- package/dist/{sessions-send-tool-BOQTRsUE.js → sessions-send-tool-BIN3x_Tj.js} +4 -4
- package/dist/{sessions-send-tool-Bfg4pkkA.js → sessions-send-tool-BIoLJtEy.js} +6 -6
- package/dist/{sessions-send-tool-endz3GxW.js → sessions-send-tool-dV7l6L-a.js} +6 -6
- package/dist/{sessions-spawn-tool-CzR5BUIZ.js → sessions-spawn-tool-BtjzxdZj.js} +1 -1
- package/dist/{sessions-spawn-tool-DaJfWSEQ.js → sessions-spawn-tool-C5XN2MAW.js} +1 -1
- package/dist/{sessions-spawn-tool-OkqKciwd.js → sessions-spawn-tool-DXkgQ1c1.js} +1 -1
- package/dist/{sessions-DQF8fZS5.js → sessions-wZjDzkQG.js} +5 -5
- package/dist/{shared-B1dSlQWp.js → shared-B6M3Crny.js} +2 -2
- package/dist/{shared-CTyE2G7t.js → shared-D-22sIu6.js} +2 -2
- package/dist/{skills-cli-DV341ngV.js → skills-cli-Bz3cwPj_.js} +2 -2
- package/dist/{skills-cli-Mxzv9u2e.js → skills-cli-CmaLyEtb.js} +2 -2
- package/dist/{status-BTlLe0ON.js → status-B4sO93X3.js} +13 -13
- package/dist/{status-DJTNPoQJ.js → status-CHylpoRy.js} +3 -3
- package/dist/{status-BJ4KXOo4.js → status-CjmAMIhE.js} +3 -3
- package/dist/{status-_f9Uj4h_.js → status-DowOkHsW.js} +14 -14
- package/dist/{status.update-C0dSEZaW.js → status.update-BvmD1bXY.js} +1 -1
- package/dist/{status.update-BLkpPZhg.js → status.update-D8oMtrQX.js} +1 -1
- package/dist/stock-entry-create-tool-DfNIrQzF.js +65 -0
- package/dist/stock-entry-create-tool-DkDA256U.js +65 -0
- package/dist/stock-entry-create-tool-JrqollnX.js +65 -0
- package/dist/stock-query-tool-3bjENU9A.js +40 -0
- package/dist/stock-query-tool-B2OY0tLg.js +40 -0
- package/dist/stock-query-tool-Bsr6eYmx.js +40 -0
- package/dist/{subagent-registry-Dctvgiur.js → subagent-registry-Ii11UQhV.js} +437 -47
- package/dist/{subagents-tool-MpxHOawd.js → subagents-tool-DTZpiDFG.js} +6 -6
- package/dist/{subagents-tool-ByM5O-ce.js → subagents-tool-DdprLwOY.js} +6 -6
- package/dist/{subagents-tool-BCrHvFRR.js → subagents-tool-QLFj9isA.js} +5 -5
- package/dist/{system-cli-COUy2PIL.js → system-cli-B6ybt64_.js} +1 -1
- package/dist/{system-cli-cLZOHCpV.js → system-cli-CMB9gLS1.js} +1 -1
- package/dist/{systemd-hints-BX82rgwJ.js → systemd-hints-BzOt_XFu.js} +1 -1
- package/dist/{systemd-hints-BmHO3vGm.js → systemd-hints-DmsFHA7q.js} +1 -1
- package/dist/{tables-BoNY2PMq.js → tables-CvGD4xT4.js} +1 -1
- package/dist/{tables-CnpzK-sx.js → tables-s_KxXF6r.js} +1 -1
- package/dist/{targets-vjobqKDT.js → targets-DbWZn0md.js} +1 -1
- package/dist/{targets-CJj3TAfL.js → targets-j9B_CT6R.js} +2 -2
- package/dist/{targets-CeBejFtg.js → targets-mUIc5_ub.js} +1 -1
- package/dist/task-create-tool-B-wyPaLW.js +57 -0
- package/dist/task-create-tool-CfhgqDpn.js +57 -0
- package/dist/task-create-tool-R0RYIlSC.js +57 -0
- package/dist/task-update-tool-B_ujDPoz.js +60 -0
- package/dist/task-update-tool-CyCYpo5t.js +60 -0
- package/dist/task-update-tool-DI5TYHQT.js +60 -0
- package/dist/ticket-comment-tool-BgSUbC6T.js +37 -0
- package/dist/ticket-comment-tool-BtjOiFwD.js +37 -0
- package/dist/ticket-comment-tool-DRqPzvJk.js +37 -0
- package/dist/ticket-create-tool-CPO6AKPb.js +47 -0
- package/dist/ticket-create-tool-DWQBJHsn.js +47 -0
- package/dist/ticket-create-tool-lWSiDlYL.js +47 -0
- package/dist/ticket-update-tool-BeD2z9ZY.js +58 -0
- package/dist/ticket-update-tool-CjpJcT7m.js +58 -0
- package/dist/ticket-update-tool-eCjmYW_F.js +58 -0
- package/dist/tickets-query-tool-6MsgLSkO.js +48 -0
- package/dist/tickets-query-tool-C3YCslkG.js +48 -0
- package/dist/tickets-query-tool-D0y1ebEc.js +48 -0
- package/dist/{tools-cli-Drw57lNT.js → tools-cli-BcqfTXH3.js} +3 -3
- package/dist/{tools-cli-Da3xpL2N.js → tools-cli-CsSY7v2U.js} +3 -3
- package/dist/trash-CAuria7l.js +30 -0
- package/dist/trash-MreuHnUR.js +30 -0
- package/dist/{tts-DOuWQCl0.js → tts-BID2aWnP.js} +1 -1
- package/dist/{tts-C8sci73b.js → tts-C3AwA748.js} +1 -1
- package/dist/{tts-DT16K-Mg.js → tts-DCwuFqIs.js} +1 -1
- package/dist/{tts-tool-D1xTgy6g.js → tts-tool-93YXtjYQ.js} +3 -3
- package/dist/{tts-tool-0BxHJ75w.js → tts-tool-Dp3bbxji.js} +3 -3
- package/dist/{tts-tool-D9A3NRZE.js → tts-tool-mOELbBEX.js} +2 -2
- package/dist/{tui-CICAogKo.js → tui-BblnJk5A.js} +5 -5
- package/dist/{tui-CW99vGjf.js → tui-Dqvb7RGr.js} +5 -5
- package/dist/{tui-cli-Bz_Y0kQF.js → tui-cli-DTuLv6YU.js} +1 -1
- package/dist/{tui-cli-Bde9FKc6.js → tui-cli-iijuUo1d.js} +1 -1
- package/dist/{update-cli-D6WNU0LC.js → update-cli-Bxtp7C-D.js} +8 -8
- package/dist/{update-cli-LVqEOX8z.js → update-cli-kEGnxFk2.js} +8 -8
- package/dist/{web-yADrkaRA.js → web-B95TAk7m.js} +12 -12
- package/dist/web-BAY_a6tU.js +2 -0
- package/dist/{web-search-B7JFlIV1.js → web-search-BR1c-hlF.js} +3 -3
- package/dist/{web-search-CcsH3zdM.js → web-search-CgNIDJss.js} +4 -4
- package/dist/{web-search-CotaJGI9.js → web-search-DKL6hJzo.js} +4 -4
- package/dist/{webhooks-cli-DEXYEmNX.js → webhooks-cli-Do-F-mnF.js} +3 -3
- package/dist/{webhooks-cli-BJgyjOoC.js → webhooks-cli-DqngLhaB.js} +3 -3
- package/dist/{workspace-dirs-0d7swJWd.js → workspace-dirs-CG9EsWKG.js} +3 -3
- package/package.json +1 -1
- package/dist/config-guard-B_1VhFji.js +0 -2
- package/dist/daemon-install-helpers-CHeRULJH.js +0 -2
- package/dist/daemon-install-helpers-CMbh4Lp7.js +0 -2
- package/dist/doctor-completion-FuFJd6IQ.js +0 -2
- package/dist/doctor-completion-KAdCjzsy.js +0 -2
- package/dist/trash-DPd6fFGH.js +0 -21
- package/dist/trash-DYakNGQh.js +0 -21
- package/dist/web-OUk9Is6v.js +0 -2
|
@@ -0,0 +1,50 @@
|
|
|
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/booking-create-tool.ts
|
|
6
|
+
const BookingCreateSchema = Type.Object({
|
|
7
|
+
eventTypeId: Type.String({ description: "Which scheduling event type/service to book (required)." }),
|
|
8
|
+
start: Type.String({ description: "ISO 8601 start time, e.g. 2026-07-10T15:00:00-05:00." }),
|
|
9
|
+
crmContactId: Type.Optional(Type.String({ description: "CRM contact id, if the attendee is a known contact." })),
|
|
10
|
+
attendeeName: Type.Optional(Type.String({ description: "Attendee name, required if crmContactId is not known." })),
|
|
11
|
+
attendeeEmail: Type.Optional(Type.String({ description: "Attendee email address." })),
|
|
12
|
+
attendeePhone: Type.Optional(Type.String({ description: "Attendee phone number." })),
|
|
13
|
+
resourceId: Type.Optional(Type.String({ description: "Specific resource/staff id to book, if not left to auto-assign." })),
|
|
14
|
+
notes: Type.Optional(Type.String({ description: "Free-text booking notes." })),
|
|
15
|
+
confirm: CONFIRM_FIELD,
|
|
16
|
+
orgId: ORG_ID_FIELD
|
|
17
|
+
});
|
|
18
|
+
/**
|
|
19
|
+
* Create a scheduling booking. WRITE — confirm contract: call with
|
|
20
|
+
* confirm=false first to get a preview of what would be created; only call
|
|
21
|
+
* with confirm=true after the user has explicitly agreed to the exact
|
|
22
|
+
* booking (attendee, time, service).
|
|
23
|
+
*/
|
|
24
|
+
function createBookingCreateTool(options) {
|
|
25
|
+
const agentId = options.agentId;
|
|
26
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
27
|
+
return wrapToolWithTracking({
|
|
28
|
+
label: "Booking Create",
|
|
29
|
+
name: "booking_create",
|
|
30
|
+
description: "Create a new appointment/booking. First present the exact action (attendee, service, start time) to the user and ask for confirmation. Call with confirm=false to get a validated preview (no write); only call with confirm=true after the user explicitly agrees. On success, present the result with a deep link like [booking](/scheduling/bookings?contact={contactId}).",
|
|
31
|
+
parameters: BookingCreateSchema,
|
|
32
|
+
execute: async (_toolCallId, args) => {
|
|
33
|
+
const params = args;
|
|
34
|
+
const orgId = readStringParam(params, "orgId");
|
|
35
|
+
return jsonResult(await hubPost("actions/booking-create", agentId, {
|
|
36
|
+
eventTypeId: readStringParam(params, "eventTypeId", { required: true }),
|
|
37
|
+
start: readStringParam(params, "start", { required: true }),
|
|
38
|
+
crmContactId: readStringParam(params, "crmContactId"),
|
|
39
|
+
attendeeName: readStringParam(params, "attendeeName"),
|
|
40
|
+
attendeeEmail: readStringParam(params, "attendeeEmail"),
|
|
41
|
+
attendeePhone: readStringParam(params, "attendeePhone"),
|
|
42
|
+
resourceId: readStringParam(params, "resourceId"),
|
|
43
|
+
notes: readStringParam(params, "notes"),
|
|
44
|
+
confirm: params.confirm === true
|
|
45
|
+
}, orgId));
|
|
46
|
+
}
|
|
47
|
+
}, "builtin:booking_create");
|
|
48
|
+
}
|
|
49
|
+
//#endregion
|
|
50
|
+
export { createBookingCreateTool };
|
|
@@ -0,0 +1,54 @@
|
|
|
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/booking-reschedule-tool.ts
|
|
6
|
+
const BookingRescheduleSchema = Type.Object({
|
|
7
|
+
bookingId: Type.String({ description: "The booking to reschedule (will be cancelled)." }),
|
|
8
|
+
eventTypeId: Type.String({ description: "Event type/service for the new slot (required)." }),
|
|
9
|
+
start: Type.String({ description: "New ISO 8601 start time, e.g. 2026-07-10T15:00:00-05:00." }),
|
|
10
|
+
crmContactId: Type.Optional(Type.String({ description: "CRM contact id, if the attendee is a known contact." })),
|
|
11
|
+
attendeeName: Type.Optional(Type.String({ description: "Attendee name, required if crmContactId is not known." })),
|
|
12
|
+
attendeeEmail: Type.Optional(Type.String({ description: "Attendee email address." })),
|
|
13
|
+
attendeePhone: Type.Optional(Type.String({ description: "Attendee phone number." })),
|
|
14
|
+
resourceId: Type.Optional(Type.String({ description: "Specific resource/staff id to book, if not left to auto-assign." })),
|
|
15
|
+
notes: Type.Optional(Type.String({ description: "Free-text booking notes for the new slot." })),
|
|
16
|
+
confirm: CONFIRM_FIELD,
|
|
17
|
+
orgId: ORG_ID_FIELD
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* Reschedule an existing booking. The hub implements this as cancel-old +
|
|
21
|
+
* create-new (no atomic "move" service call exists), so this tool must send
|
|
22
|
+
* the FULL new-slot payload — same shape as booking_create — plus the
|
|
23
|
+
* bookingId being cancelled. WRITE — confirm contract: confirm=false returns
|
|
24
|
+
* a preview (cancels + new start), confirm=true only after the user
|
|
25
|
+
* explicitly agrees.
|
|
26
|
+
*/
|
|
27
|
+
function createBookingRescheduleTool(options) {
|
|
28
|
+
const agentId = options.agentId;
|
|
29
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
30
|
+
return wrapToolWithTracking({
|
|
31
|
+
label: "Booking Reschedule",
|
|
32
|
+
name: "booking_reschedule",
|
|
33
|
+
description: "Move an existing booking to a new time. Under the hood the hub cancels the old booking and creates a new one, so this needs the full new-slot details (event type, start time, attendee), not just a new time. First present the exact change (which booking, old time → new time) and ask for confirmation. Call with confirm=false for a validated preview (no write); only call with confirm=true after the user explicitly agrees. Present the result with a deep link like [booking](/scheduling/bookings?contact={contactId}).",
|
|
34
|
+
parameters: BookingRescheduleSchema,
|
|
35
|
+
execute: async (_toolCallId, args) => {
|
|
36
|
+
const params = args;
|
|
37
|
+
const orgId = readStringParam(params, "orgId");
|
|
38
|
+
return jsonResult(await hubPost("actions/booking-reschedule", agentId, {
|
|
39
|
+
bookingId: readStringParam(params, "bookingId", { required: true }),
|
|
40
|
+
eventTypeId: readStringParam(params, "eventTypeId", { required: true }),
|
|
41
|
+
start: readStringParam(params, "start", { required: true }),
|
|
42
|
+
crmContactId: readStringParam(params, "crmContactId"),
|
|
43
|
+
attendeeName: readStringParam(params, "attendeeName"),
|
|
44
|
+
attendeeEmail: readStringParam(params, "attendeeEmail"),
|
|
45
|
+
attendeePhone: readStringParam(params, "attendeePhone"),
|
|
46
|
+
resourceId: readStringParam(params, "resourceId"),
|
|
47
|
+
notes: readStringParam(params, "notes"),
|
|
48
|
+
confirm: params.confirm === true
|
|
49
|
+
}, orgId));
|
|
50
|
+
}
|
|
51
|
+
}, "builtin:booking_reschedule");
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { createBookingRescheduleTool };
|
|
@@ -0,0 +1,54 @@
|
|
|
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/booking-reschedule-tool.ts
|
|
6
|
+
const BookingRescheduleSchema = Type.Object({
|
|
7
|
+
bookingId: Type.String({ description: "The booking to reschedule (will be cancelled)." }),
|
|
8
|
+
eventTypeId: Type.String({ description: "Event type/service for the new slot (required)." }),
|
|
9
|
+
start: Type.String({ description: "New ISO 8601 start time, e.g. 2026-07-10T15:00:00-05:00." }),
|
|
10
|
+
crmContactId: Type.Optional(Type.String({ description: "CRM contact id, if the attendee is a known contact." })),
|
|
11
|
+
attendeeName: Type.Optional(Type.String({ description: "Attendee name, required if crmContactId is not known." })),
|
|
12
|
+
attendeeEmail: Type.Optional(Type.String({ description: "Attendee email address." })),
|
|
13
|
+
attendeePhone: Type.Optional(Type.String({ description: "Attendee phone number." })),
|
|
14
|
+
resourceId: Type.Optional(Type.String({ description: "Specific resource/staff id to book, if not left to auto-assign." })),
|
|
15
|
+
notes: Type.Optional(Type.String({ description: "Free-text booking notes for the new slot." })),
|
|
16
|
+
confirm: CONFIRM_FIELD,
|
|
17
|
+
orgId: ORG_ID_FIELD
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* Reschedule an existing booking. The hub implements this as cancel-old +
|
|
21
|
+
* create-new (no atomic "move" service call exists), so this tool must send
|
|
22
|
+
* the FULL new-slot payload — same shape as booking_create — plus the
|
|
23
|
+
* bookingId being cancelled. WRITE — confirm contract: confirm=false returns
|
|
24
|
+
* a preview (cancels + new start), confirm=true only after the user
|
|
25
|
+
* explicitly agrees.
|
|
26
|
+
*/
|
|
27
|
+
function createBookingRescheduleTool(options) {
|
|
28
|
+
const agentId = options.agentId;
|
|
29
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
30
|
+
return wrapToolWithTracking({
|
|
31
|
+
label: "Booking Reschedule",
|
|
32
|
+
name: "booking_reschedule",
|
|
33
|
+
description: "Move an existing booking to a new time. Under the hood the hub cancels the old booking and creates a new one, so this needs the full new-slot details (event type, start time, attendee), not just a new time. First present the exact change (which booking, old time → new time) and ask for confirmation. Call with confirm=false for a validated preview (no write); only call with confirm=true after the user explicitly agrees. Present the result with a deep link like [booking](/scheduling/bookings?contact={contactId}).",
|
|
34
|
+
parameters: BookingRescheduleSchema,
|
|
35
|
+
execute: async (_toolCallId, args) => {
|
|
36
|
+
const params = args;
|
|
37
|
+
const orgId = readStringParam(params, "orgId");
|
|
38
|
+
return jsonResult(await hubPost("actions/booking-reschedule", agentId, {
|
|
39
|
+
bookingId: readStringParam(params, "bookingId", { required: true }),
|
|
40
|
+
eventTypeId: readStringParam(params, "eventTypeId", { required: true }),
|
|
41
|
+
start: readStringParam(params, "start", { required: true }),
|
|
42
|
+
crmContactId: readStringParam(params, "crmContactId"),
|
|
43
|
+
attendeeName: readStringParam(params, "attendeeName"),
|
|
44
|
+
attendeeEmail: readStringParam(params, "attendeeEmail"),
|
|
45
|
+
attendeePhone: readStringParam(params, "attendeePhone"),
|
|
46
|
+
resourceId: readStringParam(params, "resourceId"),
|
|
47
|
+
notes: readStringParam(params, "notes"),
|
|
48
|
+
confirm: params.confirm === true
|
|
49
|
+
}, orgId));
|
|
50
|
+
}
|
|
51
|
+
}, "builtin:booking_reschedule");
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { createBookingRescheduleTool };
|
|
@@ -0,0 +1,54 @@
|
|
|
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/booking-reschedule-tool.ts
|
|
6
|
+
const BookingRescheduleSchema = Type.Object({
|
|
7
|
+
bookingId: Type.String({ description: "The booking to reschedule (will be cancelled)." }),
|
|
8
|
+
eventTypeId: Type.String({ description: "Event type/service for the new slot (required)." }),
|
|
9
|
+
start: Type.String({ description: "New ISO 8601 start time, e.g. 2026-07-10T15:00:00-05:00." }),
|
|
10
|
+
crmContactId: Type.Optional(Type.String({ description: "CRM contact id, if the attendee is a known contact." })),
|
|
11
|
+
attendeeName: Type.Optional(Type.String({ description: "Attendee name, required if crmContactId is not known." })),
|
|
12
|
+
attendeeEmail: Type.Optional(Type.String({ description: "Attendee email address." })),
|
|
13
|
+
attendeePhone: Type.Optional(Type.String({ description: "Attendee phone number." })),
|
|
14
|
+
resourceId: Type.Optional(Type.String({ description: "Specific resource/staff id to book, if not left to auto-assign." })),
|
|
15
|
+
notes: Type.Optional(Type.String({ description: "Free-text booking notes for the new slot." })),
|
|
16
|
+
confirm: CONFIRM_FIELD,
|
|
17
|
+
orgId: ORG_ID_FIELD
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* Reschedule an existing booking. The hub implements this as cancel-old +
|
|
21
|
+
* create-new (no atomic "move" service call exists), so this tool must send
|
|
22
|
+
* the FULL new-slot payload — same shape as booking_create — plus the
|
|
23
|
+
* bookingId being cancelled. WRITE — confirm contract: confirm=false returns
|
|
24
|
+
* a preview (cancels + new start), confirm=true only after the user
|
|
25
|
+
* explicitly agrees.
|
|
26
|
+
*/
|
|
27
|
+
function createBookingRescheduleTool(options) {
|
|
28
|
+
const agentId = options.agentId;
|
|
29
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
30
|
+
return wrapToolWithTracking({
|
|
31
|
+
label: "Booking Reschedule",
|
|
32
|
+
name: "booking_reschedule",
|
|
33
|
+
description: "Move an existing booking to a new time. Under the hood the hub cancels the old booking and creates a new one, so this needs the full new-slot details (event type, start time, attendee), not just a new time. First present the exact change (which booking, old time → new time) and ask for confirmation. Call with confirm=false for a validated preview (no write); only call with confirm=true after the user explicitly agrees. Present the result with a deep link like [booking](/scheduling/bookings?contact={contactId}).",
|
|
34
|
+
parameters: BookingRescheduleSchema,
|
|
35
|
+
execute: async (_toolCallId, args) => {
|
|
36
|
+
const params = args;
|
|
37
|
+
const orgId = readStringParam(params, "orgId");
|
|
38
|
+
return jsonResult(await hubPost("actions/booking-reschedule", agentId, {
|
|
39
|
+
bookingId: readStringParam(params, "bookingId", { required: true }),
|
|
40
|
+
eventTypeId: readStringParam(params, "eventTypeId", { required: true }),
|
|
41
|
+
start: readStringParam(params, "start", { required: true }),
|
|
42
|
+
crmContactId: readStringParam(params, "crmContactId"),
|
|
43
|
+
attendeeName: readStringParam(params, "attendeeName"),
|
|
44
|
+
attendeeEmail: readStringParam(params, "attendeeEmail"),
|
|
45
|
+
attendeePhone: readStringParam(params, "attendeePhone"),
|
|
46
|
+
resourceId: readStringParam(params, "resourceId"),
|
|
47
|
+
notes: readStringParam(params, "notes"),
|
|
48
|
+
confirm: params.confirm === true
|
|
49
|
+
}, orgId));
|
|
50
|
+
}
|
|
51
|
+
}, "builtin:booking_reschedule");
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { createBookingRescheduleTool };
|
|
@@ -0,0 +1,39 @@
|
|
|
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, n as ORG_ID_FIELD, r as hubGet } from "./hub-common-D7t3vbq1.js";
|
|
4
|
+
import { Type } from "typebox";
|
|
5
|
+
//#region src/agents/tools/hub/bookings-query-tool.ts
|
|
6
|
+
const BookingsQuerySchema = Type.Object({
|
|
7
|
+
status: Type.Optional(Type.String({ description: "Comma-separated booking status filter, e.g. 'accepted,pending'. Valid values: accepted | pending | cancelled | rejected | completed | no_show. Omit for all statuses." })),
|
|
8
|
+
contactId: Type.Optional(Type.String({ description: "Filter to one CRM contact's bookings." })),
|
|
9
|
+
dateFrom: Type.Optional(Type.String({ description: "ISO date/time, inclusive lower bound on start time." })),
|
|
10
|
+
dateTo: Type.Optional(Type.String({ description: "ISO date/time, inclusive upper bound on start time." })),
|
|
11
|
+
orgId: ORG_ID_FIELD
|
|
12
|
+
});
|
|
13
|
+
/**
|
|
14
|
+
* Scheduling module read: upcoming/past bookings, optionally filtered by
|
|
15
|
+
* contact or date range. Calls the hub's /api/gateway/query/bookings with
|
|
16
|
+
* the session's personal agent id (org + membership resolved server-side).
|
|
17
|
+
*/
|
|
18
|
+
function createBookingsQueryTool(options) {
|
|
19
|
+
const agentId = options.agentId;
|
|
20
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
21
|
+
return wrapToolWithTracking({
|
|
22
|
+
label: "Bookings Query",
|
|
23
|
+
name: "bookings_query",
|
|
24
|
+
description: "List appointments/bookings — upcoming, past, or a date range, optionally filtered to one contact. Use for 'what's on the schedule today', 'when is X's next appointment'. To create/change/cancel a booking use booking_create/booking_reschedule/booking_cancel. Present results with a deep link like [bookings](/scheduling/bookings) or, for one contact, [bookings](/scheduling/bookings?contact={contactId}).",
|
|
25
|
+
parameters: BookingsQuerySchema,
|
|
26
|
+
execute: async (_toolCallId, args) => {
|
|
27
|
+
const params = args;
|
|
28
|
+
return jsonResult(await hubGet("query/bookings", agentId, {
|
|
29
|
+
status: readStringParam(params, "status"),
|
|
30
|
+
contact: readStringParam(params, "contactId"),
|
|
31
|
+
from: readStringParam(params, "dateFrom"),
|
|
32
|
+
to: readStringParam(params, "dateTo"),
|
|
33
|
+
orgId: readStringParam(params, "orgId")
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
}, "builtin:bookings_query");
|
|
37
|
+
}
|
|
38
|
+
//#endregion
|
|
39
|
+
export { createBookingsQueryTool };
|
|
@@ -0,0 +1,39 @@
|
|
|
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, n as ORG_ID_FIELD, r as hubGet } from "./hub-common-BXMO3y1A.js";
|
|
4
|
+
import { Type } from "typebox";
|
|
5
|
+
//#region src/agents/tools/hub/bookings-query-tool.ts
|
|
6
|
+
const BookingsQuerySchema = Type.Object({
|
|
7
|
+
status: Type.Optional(Type.String({ description: "Comma-separated booking status filter, e.g. 'accepted,pending'. Valid values: accepted | pending | cancelled | rejected | completed | no_show. Omit for all statuses." })),
|
|
8
|
+
contactId: Type.Optional(Type.String({ description: "Filter to one CRM contact's bookings." })),
|
|
9
|
+
dateFrom: Type.Optional(Type.String({ description: "ISO date/time, inclusive lower bound on start time." })),
|
|
10
|
+
dateTo: Type.Optional(Type.String({ description: "ISO date/time, inclusive upper bound on start time." })),
|
|
11
|
+
orgId: ORG_ID_FIELD
|
|
12
|
+
});
|
|
13
|
+
/**
|
|
14
|
+
* Scheduling module read: upcoming/past bookings, optionally filtered by
|
|
15
|
+
* contact or date range. Calls the hub's /api/gateway/query/bookings with
|
|
16
|
+
* the session's personal agent id (org + membership resolved server-side).
|
|
17
|
+
*/
|
|
18
|
+
function createBookingsQueryTool(options) {
|
|
19
|
+
const agentId = options.agentId;
|
|
20
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
21
|
+
return wrapToolWithTracking({
|
|
22
|
+
label: "Bookings Query",
|
|
23
|
+
name: "bookings_query",
|
|
24
|
+
description: "List appointments/bookings — upcoming, past, or a date range, optionally filtered to one contact. Use for 'what's on the schedule today', 'when is X's next appointment'. To create/change/cancel a booking use booking_create/booking_reschedule/booking_cancel. Present results with a deep link like [bookings](/scheduling/bookings) or, for one contact, [bookings](/scheduling/bookings?contact={contactId}).",
|
|
25
|
+
parameters: BookingsQuerySchema,
|
|
26
|
+
execute: async (_toolCallId, args) => {
|
|
27
|
+
const params = args;
|
|
28
|
+
return jsonResult(await hubGet("query/bookings", agentId, {
|
|
29
|
+
status: readStringParam(params, "status"),
|
|
30
|
+
contact: readStringParam(params, "contactId"),
|
|
31
|
+
from: readStringParam(params, "dateFrom"),
|
|
32
|
+
to: readStringParam(params, "dateTo"),
|
|
33
|
+
orgId: readStringParam(params, "orgId")
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
}, "builtin:bookings_query");
|
|
37
|
+
}
|
|
38
|
+
//#endregion
|
|
39
|
+
export { createBookingsQueryTool };
|
|
@@ -0,0 +1,39 @@
|
|
|
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, n as ORG_ID_FIELD, r as hubGet } from "./hub-common-D7t3vbq1.js";
|
|
4
|
+
import { Type } from "typebox";
|
|
5
|
+
//#region src/agents/tools/hub/bookings-query-tool.ts
|
|
6
|
+
const BookingsQuerySchema = Type.Object({
|
|
7
|
+
status: Type.Optional(Type.String({ description: "Comma-separated booking status filter, e.g. 'accepted,pending'. Valid values: accepted | pending | cancelled | rejected | completed | no_show. Omit for all statuses." })),
|
|
8
|
+
contactId: Type.Optional(Type.String({ description: "Filter to one CRM contact's bookings." })),
|
|
9
|
+
dateFrom: Type.Optional(Type.String({ description: "ISO date/time, inclusive lower bound on start time." })),
|
|
10
|
+
dateTo: Type.Optional(Type.String({ description: "ISO date/time, inclusive upper bound on start time." })),
|
|
11
|
+
orgId: ORG_ID_FIELD
|
|
12
|
+
});
|
|
13
|
+
/**
|
|
14
|
+
* Scheduling module read: upcoming/past bookings, optionally filtered by
|
|
15
|
+
* contact or date range. Calls the hub's /api/gateway/query/bookings with
|
|
16
|
+
* the session's personal agent id (org + membership resolved server-side).
|
|
17
|
+
*/
|
|
18
|
+
function createBookingsQueryTool(options) {
|
|
19
|
+
const agentId = options.agentId;
|
|
20
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
21
|
+
return wrapToolWithTracking({
|
|
22
|
+
label: "Bookings Query",
|
|
23
|
+
name: "bookings_query",
|
|
24
|
+
description: "List appointments/bookings — upcoming, past, or a date range, optionally filtered to one contact. Use for 'what's on the schedule today', 'when is X's next appointment'. To create/change/cancel a booking use booking_create/booking_reschedule/booking_cancel. Present results with a deep link like [bookings](/scheduling/bookings) or, for one contact, [bookings](/scheduling/bookings?contact={contactId}).",
|
|
25
|
+
parameters: BookingsQuerySchema,
|
|
26
|
+
execute: async (_toolCallId, args) => {
|
|
27
|
+
const params = args;
|
|
28
|
+
return jsonResult(await hubGet("query/bookings", agentId, {
|
|
29
|
+
status: readStringParam(params, "status"),
|
|
30
|
+
contact: readStringParam(params, "contactId"),
|
|
31
|
+
from: readStringParam(params, "dateFrom"),
|
|
32
|
+
to: readStringParam(params, "dateTo"),
|
|
33
|
+
orgId: readStringParam(params, "orgId")
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
36
|
+
}, "builtin:bookings_query");
|
|
37
|
+
}
|
|
38
|
+
//#endregion
|
|
39
|
+
export { createBookingsQueryTool };
|
|
@@ -0,0 +1,54 @@
|
|
|
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/brain-remember-tool.ts
|
|
6
|
+
const BrainRememberSchema = Type.Object({
|
|
7
|
+
brainId: Type.String({ description: "Brain to write to. If unknown, call brains_list first — do not guess." }),
|
|
8
|
+
title: Type.String({ description: "Short title for the note document." }),
|
|
9
|
+
contentMd: Type.String({ description: "Note body, markdown." }),
|
|
10
|
+
confirm: CONFIRM_FIELD,
|
|
11
|
+
orgId: ORG_ID_FIELD
|
|
12
|
+
});
|
|
13
|
+
/**
|
|
14
|
+
* Knowledge-brain module write: add a `note` document to a brain.
|
|
15
|
+
* WRITE — confirm contract: confirm=false returns a preview, confirm=true
|
|
16
|
+
* only after the user explicitly agrees.
|
|
17
|
+
*
|
|
18
|
+
* The hub's /api/gateway/brain-remember endpoint is a plain, idempotent-per-
|
|
19
|
+
* call write with no confirm/preview support of its own (by design — see the
|
|
20
|
+
* hub handler's docstring), so the preview gate is enforced here rather than
|
|
21
|
+
* forwarded like the other write tools.
|
|
22
|
+
*/
|
|
23
|
+
function createBrainRememberTool(options) {
|
|
24
|
+
const agentId = options.agentId;
|
|
25
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
26
|
+
return wrapToolWithTracking({
|
|
27
|
+
label: "Brain Remember",
|
|
28
|
+
name: "brain_remember",
|
|
29
|
+
description: "Save a note into a knowledge brain. First present the exact action (brain, title, content) and ask for confirmation. Call with confirm=false for a preview (no write); only call with confirm=true after the user explicitly agrees. If you don't already know the brainId, call brains_list first.",
|
|
30
|
+
parameters: BrainRememberSchema,
|
|
31
|
+
execute: async (_toolCallId, args) => {
|
|
32
|
+
const params = args;
|
|
33
|
+
const brainId = readStringParam(params, "brainId", { required: true });
|
|
34
|
+
const title = readStringParam(params, "title", { required: true });
|
|
35
|
+
const contentMd = readStringParam(params, "contentMd", { required: true });
|
|
36
|
+
const orgId = readStringParam(params, "orgId");
|
|
37
|
+
if (params.confirm !== true) return jsonResult({
|
|
38
|
+
preview: {
|
|
39
|
+
brainId,
|
|
40
|
+
title,
|
|
41
|
+
contentMd
|
|
42
|
+
},
|
|
43
|
+
note: "Preview only — not written. Call again with confirm=true after the user agrees."
|
|
44
|
+
});
|
|
45
|
+
return jsonResult(await hubPost("brain-remember", agentId, {
|
|
46
|
+
brainId,
|
|
47
|
+
title,
|
|
48
|
+
contentMd
|
|
49
|
+
}, orgId));
|
|
50
|
+
}
|
|
51
|
+
}, "builtin:brain_remember");
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { createBrainRememberTool };
|
|
@@ -0,0 +1,54 @@
|
|
|
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/brain-remember-tool.ts
|
|
6
|
+
const BrainRememberSchema = Type.Object({
|
|
7
|
+
brainId: Type.String({ description: "Brain to write to. If unknown, call brains_list first — do not guess." }),
|
|
8
|
+
title: Type.String({ description: "Short title for the note document." }),
|
|
9
|
+
contentMd: Type.String({ description: "Note body, markdown." }),
|
|
10
|
+
confirm: CONFIRM_FIELD,
|
|
11
|
+
orgId: ORG_ID_FIELD
|
|
12
|
+
});
|
|
13
|
+
/**
|
|
14
|
+
* Knowledge-brain module write: add a `note` document to a brain.
|
|
15
|
+
* WRITE — confirm contract: confirm=false returns a preview, confirm=true
|
|
16
|
+
* only after the user explicitly agrees.
|
|
17
|
+
*
|
|
18
|
+
* The hub's /api/gateway/brain-remember endpoint is a plain, idempotent-per-
|
|
19
|
+
* call write with no confirm/preview support of its own (by design — see the
|
|
20
|
+
* hub handler's docstring), so the preview gate is enforced here rather than
|
|
21
|
+
* forwarded like the other write tools.
|
|
22
|
+
*/
|
|
23
|
+
function createBrainRememberTool(options) {
|
|
24
|
+
const agentId = options.agentId;
|
|
25
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
26
|
+
return wrapToolWithTracking({
|
|
27
|
+
label: "Brain Remember",
|
|
28
|
+
name: "brain_remember",
|
|
29
|
+
description: "Save a note into a knowledge brain. First present the exact action (brain, title, content) and ask for confirmation. Call with confirm=false for a preview (no write); only call with confirm=true after the user explicitly agrees. If you don't already know the brainId, call brains_list first.",
|
|
30
|
+
parameters: BrainRememberSchema,
|
|
31
|
+
execute: async (_toolCallId, args) => {
|
|
32
|
+
const params = args;
|
|
33
|
+
const brainId = readStringParam(params, "brainId", { required: true });
|
|
34
|
+
const title = readStringParam(params, "title", { required: true });
|
|
35
|
+
const contentMd = readStringParam(params, "contentMd", { required: true });
|
|
36
|
+
const orgId = readStringParam(params, "orgId");
|
|
37
|
+
if (params.confirm !== true) return jsonResult({
|
|
38
|
+
preview: {
|
|
39
|
+
brainId,
|
|
40
|
+
title,
|
|
41
|
+
contentMd
|
|
42
|
+
},
|
|
43
|
+
note: "Preview only — not written. Call again with confirm=true after the user agrees."
|
|
44
|
+
});
|
|
45
|
+
return jsonResult(await hubPost("brain-remember", agentId, {
|
|
46
|
+
brainId,
|
|
47
|
+
title,
|
|
48
|
+
contentMd
|
|
49
|
+
}, orgId));
|
|
50
|
+
}
|
|
51
|
+
}, "builtin:brain_remember");
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { createBrainRememberTool };
|
|
@@ -0,0 +1,54 @@
|
|
|
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/brain-remember-tool.ts
|
|
6
|
+
const BrainRememberSchema = Type.Object({
|
|
7
|
+
brainId: Type.String({ description: "Brain to write to. If unknown, call brains_list first — do not guess." }),
|
|
8
|
+
title: Type.String({ description: "Short title for the note document." }),
|
|
9
|
+
contentMd: Type.String({ description: "Note body, markdown." }),
|
|
10
|
+
confirm: CONFIRM_FIELD,
|
|
11
|
+
orgId: ORG_ID_FIELD
|
|
12
|
+
});
|
|
13
|
+
/**
|
|
14
|
+
* Knowledge-brain module write: add a `note` document to a brain.
|
|
15
|
+
* WRITE — confirm contract: confirm=false returns a preview, confirm=true
|
|
16
|
+
* only after the user explicitly agrees.
|
|
17
|
+
*
|
|
18
|
+
* The hub's /api/gateway/brain-remember endpoint is a plain, idempotent-per-
|
|
19
|
+
* call write with no confirm/preview support of its own (by design — see the
|
|
20
|
+
* hub handler's docstring), so the preview gate is enforced here rather than
|
|
21
|
+
* forwarded like the other write tools.
|
|
22
|
+
*/
|
|
23
|
+
function createBrainRememberTool(options) {
|
|
24
|
+
const agentId = options.agentId;
|
|
25
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
26
|
+
return wrapToolWithTracking({
|
|
27
|
+
label: "Brain Remember",
|
|
28
|
+
name: "brain_remember",
|
|
29
|
+
description: "Save a note into a knowledge brain. First present the exact action (brain, title, content) and ask for confirmation. Call with confirm=false for a preview (no write); only call with confirm=true after the user explicitly agrees. If you don't already know the brainId, call brains_list first.",
|
|
30
|
+
parameters: BrainRememberSchema,
|
|
31
|
+
execute: async (_toolCallId, args) => {
|
|
32
|
+
const params = args;
|
|
33
|
+
const brainId = readStringParam(params, "brainId", { required: true });
|
|
34
|
+
const title = readStringParam(params, "title", { required: true });
|
|
35
|
+
const contentMd = readStringParam(params, "contentMd", { required: true });
|
|
36
|
+
const orgId = readStringParam(params, "orgId");
|
|
37
|
+
if (params.confirm !== true) return jsonResult({
|
|
38
|
+
preview: {
|
|
39
|
+
brainId,
|
|
40
|
+
title,
|
|
41
|
+
contentMd
|
|
42
|
+
},
|
|
43
|
+
note: "Preview only — not written. Call again with confirm=true after the user agrees."
|
|
44
|
+
});
|
|
45
|
+
return jsonResult(await hubPost("brain-remember", agentId, {
|
|
46
|
+
brainId,
|
|
47
|
+
title,
|
|
48
|
+
contentMd
|
|
49
|
+
}, orgId));
|
|
50
|
+
}
|
|
51
|
+
}, "builtin:brain_remember");
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
export { createBrainRememberTool };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { t as wrapToolWithTracking } from "./tool-tracking-CtkaABAd.js";
|
|
2
|
+
import { a as readNumberParam, i as jsonResult, s as readStringParam } from "./common-mPQVYX41.js";
|
|
3
|
+
import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD } from "./hub-common-BXMO3y1A.js";
|
|
4
|
+
import { Type } from "typebox";
|
|
5
|
+
//#region src/agents/tools/hub/brain-search-tool.ts
|
|
6
|
+
const BrainSearchSchema = Type.Object({
|
|
7
|
+
brainId: Type.String({ description: "Brain to search. If unknown, call brains_list first — do not guess." }),
|
|
8
|
+
query: Type.String({ description: "Natural-language search query." }),
|
|
9
|
+
limit: Type.Optional(Type.Number({ description: "Max hits to return. Hub default applies." })),
|
|
10
|
+
orgId: ORG_ID_FIELD
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Knowledge-brain module read: semantic search over one brain's chunks.
|
|
14
|
+
* Calls the hub's /api/gateway/brain-search with the session's personal
|
|
15
|
+
* agent id; per-brain access is enforced again on the hub (fail-closed).
|
|
16
|
+
*/
|
|
17
|
+
function createBrainSearchTool(options) {
|
|
18
|
+
const agentId = options.agentId;
|
|
19
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
20
|
+
return wrapToolWithTracking({
|
|
21
|
+
label: "Brain Search",
|
|
22
|
+
name: "brain_search",
|
|
23
|
+
description: "Semantic search over one knowledge brain's documents. Requires brainId — if you're not sure which brain to target, call brains_list first rather than guessing. Use for 'what does the X brain say about...' style questions.",
|
|
24
|
+
parameters: BrainSearchSchema,
|
|
25
|
+
execute: async (_toolCallId, args) => {
|
|
26
|
+
const params = args;
|
|
27
|
+
const orgId = readStringParam(params, "orgId");
|
|
28
|
+
return jsonResult(await hubPost("brain-search", agentId, {
|
|
29
|
+
brainId: readStringParam(params, "brainId", { required: true }),
|
|
30
|
+
query: readStringParam(params, "query", { required: true }),
|
|
31
|
+
limit: readNumberParam(params, "limit")
|
|
32
|
+
}, orgId));
|
|
33
|
+
}
|
|
34
|
+
}, "builtin:brain_search");
|
|
35
|
+
}
|
|
36
|
+
//#endregion
|
|
37
|
+
export { createBrainSearchTool };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { t as wrapToolWithTracking } from "./tool-tracking-Crsmwdkj.js";
|
|
2
|
+
import { a as readNumberParam, i as jsonResult, s as readStringParam } from "./common-CRD8HhuP.js";
|
|
3
|
+
import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD } from "./hub-common-D7t3vbq1.js";
|
|
4
|
+
import { Type } from "typebox";
|
|
5
|
+
//#region src/agents/tools/hub/brain-search-tool.ts
|
|
6
|
+
const BrainSearchSchema = Type.Object({
|
|
7
|
+
brainId: Type.String({ description: "Brain to search. If unknown, call brains_list first — do not guess." }),
|
|
8
|
+
query: Type.String({ description: "Natural-language search query." }),
|
|
9
|
+
limit: Type.Optional(Type.Number({ description: "Max hits to return. Hub default applies." })),
|
|
10
|
+
orgId: ORG_ID_FIELD
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Knowledge-brain module read: semantic search over one brain's chunks.
|
|
14
|
+
* Calls the hub's /api/gateway/brain-search with the session's personal
|
|
15
|
+
* agent id; per-brain access is enforced again on the hub (fail-closed).
|
|
16
|
+
*/
|
|
17
|
+
function createBrainSearchTool(options) {
|
|
18
|
+
const agentId = options.agentId;
|
|
19
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
20
|
+
return wrapToolWithTracking({
|
|
21
|
+
label: "Brain Search",
|
|
22
|
+
name: "brain_search",
|
|
23
|
+
description: "Semantic search over one knowledge brain's documents. Requires brainId — if you're not sure which brain to target, call brains_list first rather than guessing. Use for 'what does the X brain say about...' style questions.",
|
|
24
|
+
parameters: BrainSearchSchema,
|
|
25
|
+
execute: async (_toolCallId, args) => {
|
|
26
|
+
const params = args;
|
|
27
|
+
const orgId = readStringParam(params, "orgId");
|
|
28
|
+
return jsonResult(await hubPost("brain-search", agentId, {
|
|
29
|
+
brainId: readStringParam(params, "brainId", { required: true }),
|
|
30
|
+
query: readStringParam(params, "query", { required: true }),
|
|
31
|
+
limit: readNumberParam(params, "limit")
|
|
32
|
+
}, orgId));
|
|
33
|
+
}
|
|
34
|
+
}, "builtin:brain_search");
|
|
35
|
+
}
|
|
36
|
+
//#endregion
|
|
37
|
+
export { createBrainSearchTool };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { t as wrapToolWithTracking } from "./tool-tracking-4XjaoCwP.js";
|
|
2
|
+
import { a as readNumberParam, i as jsonResult, s as readStringParam } from "./common-BHzo6lXS.js";
|
|
3
|
+
import { a as hubToolsAvailable, i as hubPost, n as ORG_ID_FIELD } from "./hub-common-D7t3vbq1.js";
|
|
4
|
+
import { Type } from "typebox";
|
|
5
|
+
//#region src/agents/tools/hub/brain-search-tool.ts
|
|
6
|
+
const BrainSearchSchema = Type.Object({
|
|
7
|
+
brainId: Type.String({ description: "Brain to search. If unknown, call brains_list first — do not guess." }),
|
|
8
|
+
query: Type.String({ description: "Natural-language search query." }),
|
|
9
|
+
limit: Type.Optional(Type.Number({ description: "Max hits to return. Hub default applies." })),
|
|
10
|
+
orgId: ORG_ID_FIELD
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Knowledge-brain module read: semantic search over one brain's chunks.
|
|
14
|
+
* Calls the hub's /api/gateway/brain-search with the session's personal
|
|
15
|
+
* agent id; per-brain access is enforced again on the hub (fail-closed).
|
|
16
|
+
*/
|
|
17
|
+
function createBrainSearchTool(options) {
|
|
18
|
+
const agentId = options.agentId;
|
|
19
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
20
|
+
return wrapToolWithTracking({
|
|
21
|
+
label: "Brain Search",
|
|
22
|
+
name: "brain_search",
|
|
23
|
+
description: "Semantic search over one knowledge brain's documents. Requires brainId — if you're not sure which brain to target, call brains_list first rather than guessing. Use for 'what does the X brain say about...' style questions.",
|
|
24
|
+
parameters: BrainSearchSchema,
|
|
25
|
+
execute: async (_toolCallId, args) => {
|
|
26
|
+
const params = args;
|
|
27
|
+
const orgId = readStringParam(params, "orgId");
|
|
28
|
+
return jsonResult(await hubPost("brain-search", agentId, {
|
|
29
|
+
brainId: readStringParam(params, "brainId", { required: true }),
|
|
30
|
+
query: readStringParam(params, "query", { required: true }),
|
|
31
|
+
limit: readNumberParam(params, "limit")
|
|
32
|
+
}, orgId));
|
|
33
|
+
}
|
|
34
|
+
}, "builtin:brain_search");
|
|
35
|
+
}
|
|
36
|
+
//#endregion
|
|
37
|
+
export { createBrainSearchTool };
|
|
@@ -0,0 +1,27 @@
|
|
|
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, n as ORG_ID_FIELD, r as hubGet } from "./hub-common-D7t3vbq1.js";
|
|
4
|
+
import { Type } from "typebox";
|
|
5
|
+
//#region src/agents/tools/hub/brains-list-tool.ts
|
|
6
|
+
const BrainsListSchema = Type.Object({ orgId: ORG_ID_FIELD });
|
|
7
|
+
/**
|
|
8
|
+
* Knowledge-brain module read: list the brains the calling agent's owner can
|
|
9
|
+
* access. Calls the hub's /api/gateway/brains with the session's personal
|
|
10
|
+
* agent id. Call this before brain_search/brain_remember whenever the target
|
|
11
|
+
* brainId isn't already known.
|
|
12
|
+
*/
|
|
13
|
+
function createBrainsListTool(options) {
|
|
14
|
+
const agentId = options.agentId;
|
|
15
|
+
if (!hubToolsAvailable(agentId)) return null;
|
|
16
|
+
return wrapToolWithTracking({
|
|
17
|
+
label: "Brains List",
|
|
18
|
+
name: "brains_list",
|
|
19
|
+
description: "List the knowledge brains available to the current user (id, name, access). Call this first whenever you don't already know which brainId to target for brain_search or brain_remember — do not guess a brainId.",
|
|
20
|
+
parameters: BrainsListSchema,
|
|
21
|
+
execute: async (_toolCallId, args) => {
|
|
22
|
+
return jsonResult(await hubGet("brains", agentId, { orgId: readStringParam(args, "orgId") }));
|
|
23
|
+
}
|
|
24
|
+
}, "builtin:brains_list");
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
export { createBrainsListTool };
|