@hina114514/chaite 1.9.3
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/README.md +143 -0
- package/dist/__dirname-xAmdQ8wE.mjs +13 -0
- package/dist/__dirname.d.ts +4 -0
- package/dist/__dirname.mjs +4 -0
- package/dist/adapters-BeZFg37c.mjs +30 -0
- package/dist/chunks/@anthropic-ai/sdk/index.mjs-BBdoshoG.mjs +44887 -0
- package/dist/chunks/@google/genai/index.mjs-CJMm4uh0.mjs +25136 -0
- package/dist/chunks/@karinjs/node-schedule/index.mjs-UoPXNUgp.mjs +8403 -0
- package/dist/chunks/@xmldom/xmldom/index.mjs-BARr5-gb.mjs +4280 -0
- package/dist/chunks/accepts/index.mjs-BpfWQu4-.mjs +8009 -0
- package/dist/chunks/agent-base/index.mjs-BZ87hIEB.mjs +199 -0
- package/dist/chunks/array-flatten/index.mjs-CFicqOhD.mjs +54 -0
- package/dist/chunks/bluebird/index.mjs-D4zFjek8.mjs +4094 -0
- package/dist/chunks/body-parser/index.mjs-BrUY71SQ.mjs +13756 -0
- package/dist/chunks/chokidar/index.mjs-BvSuth5p.mjs +1537 -0
- package/dist/chunks/content-disposition/index.mjs-DqMQ6Fbz.mjs +307 -0
- package/dist/chunks/cookie/index.mjs-CTmQWCqd.mjs +243 -0
- package/dist/chunks/cookie-signature/index.mjs-CIA1F6JJ.mjs +46 -0
- package/dist/chunks/core-util-is/index.mjs-C0h_2dGX.mjs +69 -0
- package/dist/chunks/cors/index.mjs-DGt6p49t.mjs +311 -0
- package/dist/chunks/data-uri-to-buffer/index.mjs-CLj4bast.mjs +44 -0
- package/dist/chunks/debug/index.mjs-BgKBSuIO.mjs +703 -0
- package/dist/chunks/dingbat-to-unicode/index.mjs-DjR5pQCM.mjs +7481 -0
- package/dist/chunks/encodeurl/index.mjs-CvPRUh2S.mjs +105 -0
- package/dist/chunks/escape-html/index.mjs-CeA_Z7EO.mjs +65 -0
- package/dist/chunks/etag/index.mjs-D58ziXwz.mjs +80 -0
- package/dist/chunks/express/index.mjs-CHnhA_pr.mjs +6787 -0
- package/dist/chunks/fetch-blob/index.mjs-Pm1zUh3g.mjs +3803 -0
- package/dist/chunks/formdata-node/index.mjs-B2Ji6hC0.mjs +92 -0
- package/dist/chunks/formdata-polyfill/index.mjs-BTkafjCT.mjs +87 -0
- package/dist/chunks/https-proxy-agent/index.mjs-DTZuZn-J.mjs +239 -0
- package/dist/chunks/immediate/index.mjs-CkWjI_b-.mjs +59 -0
- package/dist/chunks/isarray/index.mjs-DaT02uUW.mjs +12 -0
- package/dist/chunks/jszip/index.mjs-CvfsTniy.mjs +8599 -0
- package/dist/chunks/lop/index.mjs-BWbOMJZv.mjs +3540 -0
- package/dist/chunks/mammoth/index.mjs-C9xwBIgf.mjs +5081 -0
- package/dist/chunks/node-fetch/index.mjs-Cdihbb0Q.mjs +1446 -0
- package/dist/chunks/openai/index.mjs-M-HPLtaS.mjs +6691 -0
- package/dist/dist-C0tgywA-.mjs +8 -0
- package/dist/fileFromPath-CJ_N7wA9.mjs +6 -0
- package/dist/index.d.ts +1579 -0
- package/dist/index.mjs +30 -0
- package/dist/multipart-parser-CCl_4A7w.mjs +6 -0
- package/dist/rolldown-runtime-DVriDoez.mjs +43 -0
- package/dist/src-BjDIhdKO.mjs +5179 -0
- package/dist/src-DmcKtGy2.mjs +7 -0
- package/dist/types-6jzst6Q4.mjs +30 -0
- package/frontend/build/assets/ChannelFormModal-1GO2eD4m.css +1 -0
- package/frontend/build/assets/ChannelFormModal-B6e7ZIO6.js +5 -0
- package/frontend/build/assets/ChannelFormModal-CV7fs6-7.js +5 -0
- package/frontend/build/assets/ChannelFormModal-DBZyhZDI.css +1 -0
- package/frontend/build/assets/ChannelFormModal-DL0qkZX-.js +5 -0
- package/frontend/build/assets/ChannelFormModal-DuAAlw-8.js +5 -0
- package/frontend/build/assets/ChannelFormModal-Hp6Y4QBc.js +5 -0
- package/frontend/build/assets/ChannelFormModal-xPhm1bZd.js +5 -0
- package/frontend/build/assets/Checkbox-BvK-NJJX.js +105 -0
- package/frontend/build/assets/Checkbox-CNMr2-eQ.js +105 -0
- package/frontend/build/assets/Checkbox-DOJuZG8N.js +105 -0
- package/frontend/build/assets/Checkbox-DWREbqxa.js +105 -0
- package/frontend/build/assets/Checkbox-HPhUtTKu.js +105 -0
- package/frontend/build/assets/Checkbox-gNUlkipW.js +105 -0
- package/frontend/build/assets/CollapseItem-7YFuTj31.js +41 -0
- package/frontend/build/assets/CollapseItem-BVnC3pah.js +41 -0
- package/frontend/build/assets/CollapseItem-Bk7f5wCb.js +41 -0
- package/frontend/build/assets/CollapseItem-Calq76Jj.js +41 -0
- package/frontend/build/assets/CollapseItem-DOnuDO5j.js +41 -0
- package/frontend/build/assets/CollapseItem-fWJBGjAw.js +41 -0
- package/frontend/build/assets/ConversationDetailDrawer-BYG2DS4S.js +1 -0
- package/frontend/build/assets/ConversationDetailDrawer-BYZeaeoF.js +1 -0
- package/frontend/build/assets/ConversationDetailDrawer-gVn82fSx.js +1 -0
- package/frontend/build/assets/ConversationDetailDrawer-jtT8U08c.js +1 -0
- package/frontend/build/assets/ConversationDetailDrawer-m-rNIWZj.js +1 -0
- package/frontend/build/assets/ConversationDetailDrawer-xbhamnIs.js +1 -0
- package/frontend/build/assets/ConversationDetailDrawer.vue_vue_type_script_setup_true_lang-BRZBnJxg.js +97 -0
- package/frontend/build/assets/ConversationDetailDrawer.vue_vue_type_script_setup_true_lang-BnR3ffRY.js +97 -0
- package/frontend/build/assets/ConversationDetailDrawer.vue_vue_type_script_setup_true_lang-C0KA87GQ.js +97 -0
- package/frontend/build/assets/ConversationDetailDrawer.vue_vue_type_script_setup_true_lang-CnLM8_TJ.js +97 -0
- package/frontend/build/assets/ConversationDetailDrawer.vue_vue_type_script_setup_true_lang-CzZvhLM_.js +97 -0
- package/frontend/build/assets/ConversationDetailDrawer.vue_vue_type_script_setup_true_lang-U0BsqrL8.js +97 -0
- package/frontend/build/assets/DataTable-4ViTZyB6.js +457 -0
- package/frontend/build/assets/DataTable-B8zZmlji.js +457 -0
- package/frontend/build/assets/DataTable-BNjopWG3.js +457 -0
- package/frontend/build/assets/DataTable-CZyItGh5.js +457 -0
- package/frontend/build/assets/DataTable-DJj26Pzn.js +454 -0
- package/frontend/build/assets/DataTable-DoEbD9LL.js +457 -0
- package/frontend/build/assets/DynamicTags-BccLo-fc.js +1 -0
- package/frontend/build/assets/DynamicTags-Bmg43ONH.js +1 -0
- package/frontend/build/assets/DynamicTags-CyLbZ9I2.js +1 -0
- package/frontend/build/assets/DynamicTags-DNTdDdGA.js +1 -0
- package/frontend/build/assets/DynamicTags-VCyQf17w.js +1 -0
- package/frontend/build/assets/DynamicTags-rIgGdrL5.js +1 -0
- package/frontend/build/assets/Ellipsis-BST77ylS.js +187 -0
- package/frontend/build/assets/Ellipsis-BTz09kpN.js +187 -0
- package/frontend/build/assets/Ellipsis-BbsLqJtK.js +187 -0
- package/frontend/build/assets/Ellipsis-BdMplm4D.js +187 -0
- package/frontend/build/assets/Ellipsis-C3lHtvjF.js +187 -0
- package/frontend/build/assets/Ellipsis-CEbBdn2n.js +187 -0
- package/frontend/build/assets/ErrorTip.vue_vue_type_script_setup_true_lang-B5o0iz7y.js +1 -0
- package/frontend/build/assets/ErrorTip.vue_vue_type_script_setup_true_lang-BTf_XpHq.js +1 -0
- package/frontend/build/assets/ErrorTip.vue_vue_type_script_setup_true_lang-DFWrNfDB.js +1 -0
- package/frontend/build/assets/ErrorTip.vue_vue_type_script_setup_true_lang-DTFtcs8p.js +1 -0
- package/frontend/build/assets/ErrorTip.vue_vue_type_script_setup_true_lang-QKywH0iL.js +1 -0
- package/frontend/build/assets/ErrorTip.vue_vue_type_script_setup_true_lang-q7wMY1La.js +1 -0
- package/frontend/build/assets/FormItem-BFYeYoTE.js +110 -0
- package/frontend/build/assets/FormItem-B_V_gknG.js +110 -0
- package/frontend/build/assets/FormItem-C2ziP3u7.js +110 -0
- package/frontend/build/assets/FormItem-CDsgx_ab.js +110 -0
- package/frontend/build/assets/FormItem-D5nKwNGe.js +110 -0
- package/frontend/build/assets/FormItem-DcKuwtDH.js +110 -0
- package/frontend/build/assets/FormItemGridItem-BiRqZE_B.js +1 -0
- package/frontend/build/assets/FormItemGridItem-CEbJWTJd.js +1 -0
- package/frontend/build/assets/FormItemGridItem-DaKl8_2L.js +1 -0
- package/frontend/build/assets/FormItemGridItem-DkQ8mrOt.js +1 -0
- package/frontend/build/assets/FormItemGridItem-YEC3z4HO.js +1 -0
- package/frontend/build/assets/FormItemGridItem-cjYQS3d8.js +1 -0
- package/frontend/build/assets/Grid-0zzIexHr.js +1 -0
- package/frontend/build/assets/Grid-BNlPkf-g.js +1 -0
- package/frontend/build/assets/Grid-CmLEm3vL.js +1 -0
- package/frontend/build/assets/Grid-CqcXqV8U.js +1 -0
- package/frontend/build/assets/Grid-DmeNHOJx.js +1 -0
- package/frontend/build/assets/Grid-WK2vuhLP.js +1 -0
- package/frontend/build/assets/Image-CMvlvuJp.js +132 -0
- package/frontend/build/assets/Image-CbdTV78X.js +132 -0
- package/frontend/build/assets/Image-Cf2fbKtf.js +132 -0
- package/frontend/build/assets/Image-Crg2QYhk.js +132 -0
- package/frontend/build/assets/Image-D53Xywez.js +132 -0
- package/frontend/build/assets/Image-tNy1v7mL.js +132 -0
- package/frontend/build/assets/InputNumber-BjfLyebn.js +13 -0
- package/frontend/build/assets/InputNumber-BtSrvYnH.js +13 -0
- package/frontend/build/assets/InputNumber-BxeR-3jl.js +13 -0
- package/frontend/build/assets/InputNumber-C7hKPk7P.js +13 -0
- package/frontend/build/assets/InputNumber-CbRGvPDs.js +13 -0
- package/frontend/build/assets/InputNumber-qiteD5Uu.js +13 -0
- package/frontend/build/assets/MessageContentCard-333YPcPx.js +1 -0
- package/frontend/build/assets/MessageContentCard-B0-LvWuB.js +1 -0
- package/frontend/build/assets/MessageContentCard-C2uRLdgO.js +1 -0
- package/frontend/build/assets/MessageContentCard-CjL6sc3W.js +1 -0
- package/frontend/build/assets/MessageContentCard-D3wLdleV.css +1 -0
- package/frontend/build/assets/MessageContentCard-DQ6w5avD.css +1 -0
- package/frontend/build/assets/MessageContentCard-DRoS4fsn.js +1 -0
- package/frontend/build/assets/MessageContentCard-DRsw0lK-.js +1 -0
- package/frontend/build/assets/Popconfirm-DsC1UchR.js +16 -0
- package/frontend/build/assets/Popconfirm-wmBfNL4Y.js +16 -0
- package/frontend/build/assets/PresetFormModal-B87TaT8J.js +1 -0
- package/frontend/build/assets/PresetFormModal-BpleAL8Z.js +1 -0
- package/frontend/build/assets/PresetFormModal-BrNCyqXq.css +1 -0
- package/frontend/build/assets/PresetFormModal-D6bXLlH2.css +1 -0
- package/frontend/build/assets/PresetFormModal-D8RNddGW.css +1 -0
- package/frontend/build/assets/PresetFormModal-DZlJ1Vcp.css +1 -0
- package/frontend/build/assets/PresetFormModal-Dah-5WHj.js +1 -0
- package/frontend/build/assets/PresetFormModal-DepNynU1.js +1 -0
- package/frontend/build/assets/PresetFormModal-Diebn4cS.js +1 -0
- package/frontend/build/assets/PresetFormModal-Dol9eToM.js +1 -0
- package/frontend/build/assets/PresetFormModal-ah6zWfbB.css +1 -0
- package/frontend/build/assets/ProcessorFormModal-BLiL3tFS.js +1 -0
- package/frontend/build/assets/ProcessorFormModal-C4rqrypu.js +1 -0
- package/frontend/build/assets/ProcessorFormModal-D9X5zzKG.js +1 -0
- package/frontend/build/assets/ProcessorFormModal-Ik7zSGUU.js +1 -0
- package/frontend/build/assets/ProcessorFormModal-Q5ARXwwU.js +1 -0
- package/frontend/build/assets/ProcessorFormModal-vpoqf_VP.js +1 -0
- package/frontend/build/assets/ProcessorFormModal.vue_vue_type_script_setup_true_lang-BK03vxpt.js +42 -0
- package/frontend/build/assets/ProcessorFormModal.vue_vue_type_script_setup_true_lang-D8NYnQ0b.js +42 -0
- package/frontend/build/assets/ProcessorFormModal.vue_vue_type_script_setup_true_lang-DKnpVb21.js +42 -0
- package/frontend/build/assets/ProcessorFormModal.vue_vue_type_script_setup_true_lang-DQayqXcu.js +42 -0
- package/frontend/build/assets/ProcessorFormModal.vue_vue_type_script_setup_true_lang-EUAgxSFF.js +42 -0
- package/frontend/build/assets/ProcessorFormModal.vue_vue_type_script_setup_true_lang-HZQFntw0.js +42 -0
- package/frontend/build/assets/Spin-BP0yPWNS.js +43 -0
- package/frontend/build/assets/Spin-C2G3wcnB.js +43 -0
- package/frontend/build/assets/Spin-C7sqRNqw.js +43 -0
- package/frontend/build/assets/Spin-Cy3cVx8W.js +43 -0
- package/frontend/build/assets/Spin-UrFjnOlY.js +43 -0
- package/frontend/build/assets/Spin-yYcNW-yl.js +43 -0
- package/frontend/build/assets/ToolFormModal-CVZFxPxz.js +1 -0
- package/frontend/build/assets/ToolFormModal-CgHH9Bbh.js +1 -0
- package/frontend/build/assets/ToolFormModal-D7NFHjzM.js +1 -0
- package/frontend/build/assets/ToolFormModal-DpVk5ooz.js +1 -0
- package/frontend/build/assets/ToolFormModal-DsS34Jdc.js +1 -0
- package/frontend/build/assets/ToolFormModal-hx-a_w1d.js +1 -0
- package/frontend/build/assets/ToolFormModal.vue_vue_type_script_setup_true_lang-Biq3KQMr.js +51 -0
- package/frontend/build/assets/ToolFormModal.vue_vue_type_script_setup_true_lang-DAbXNKv-.js +51 -0
- package/frontend/build/assets/ToolFormModal.vue_vue_type_script_setup_true_lang-DGdJ6txC.js +51 -0
- package/frontend/build/assets/ToolFormModal.vue_vue_type_script_setup_true_lang-QIhGuSJV.js +51 -0
- package/frontend/build/assets/ToolFormModal.vue_vue_type_script_setup_true_lang-sVSPLzuy.js +51 -0
- package/frontend/build/assets/ToolFormModal.vue_vue_type_script_setup_true_lang-yH3HeP81.js +51 -0
- package/frontend/build/assets/ToolGroupFormModal-2uJQDkUz.js +1 -0
- package/frontend/build/assets/ToolGroupFormModal-B-OxsC_e.js +1 -0
- package/frontend/build/assets/ToolGroupFormModal-CXbSBPSI.js +1 -0
- package/frontend/build/assets/ToolGroupFormModal-CeF3hW-I.js +1 -0
- package/frontend/build/assets/ToolGroupFormModal-DfEZcYi7.js +1 -0
- package/frontend/build/assets/ToolGroupFormModal-DvGS2rQd.js +1 -0
- package/frontend/build/assets/ToolGroupFormModal.vue_vue_type_script_setup_true_lang-AsEJ8jCe.js +146 -0
- package/frontend/build/assets/ToolGroupFormModal.vue_vue_type_script_setup_true_lang-B5V2XNND.js +146 -0
- package/frontend/build/assets/ToolGroupFormModal.vue_vue_type_script_setup_true_lang-BYmI5807.js +146 -0
- package/frontend/build/assets/ToolGroupFormModal.vue_vue_type_script_setup_true_lang-C32gc6LQ.js +146 -0
- package/frontend/build/assets/ToolGroupFormModal.vue_vue_type_script_setup_true_lang-CRwhppLH.js +146 -0
- package/frontend/build/assets/ToolGroupFormModal.vue_vue_type_script_setup_true_lang-Cz49lSiC.js +146 -0
- package/frontend/build/assets/TriggerFormModal-B9hL6DT2.js +1 -0
- package/frontend/build/assets/TriggerFormModal-D6tlqZPa.js +1 -0
- package/frontend/build/assets/TriggerFormModal-DngyRFuZ.js +1 -0
- package/frontend/build/assets/TriggerFormModal-jUjJ3cpY.js +1 -0
- package/frontend/build/assets/TriggerFormModal-zyHfq9gk.js +1 -0
- package/frontend/build/assets/TriggerFormModal.vue_vue_type_script_setup_true_lang-65eiY_Fl.js +15 -0
- package/frontend/build/assets/TriggerFormModal.vue_vue_type_script_setup_true_lang-BDVxuECo.js +15 -0
- package/frontend/build/assets/TriggerFormModal.vue_vue_type_script_setup_true_lang-BGdRzXOm.js +15 -0
- package/frontend/build/assets/TriggerFormModal.vue_vue_type_script_setup_true_lang-Bq6N6Y6d.js +15 -0
- package/frontend/build/assets/TriggerFormModal.vue_vue_type_script_setup_true_lang-DPcB1irn.js +15 -0
- package/frontend/build/assets/add-one-BaGYp8TD.js +1 -0
- package/frontend/build/assets/add-one-CTqCiftQ.js +1 -0
- package/frontend/build/assets/add-one-DBohvXa7.js +1 -0
- package/frontend/build/assets/add-one-DQqaMb3g.js +1 -0
- package/frontend/build/assets/add-one-DT3qGnwW.js +1 -0
- package/frontend/build/assets/add-one-DenQ1X6U.js +1 -0
- package/frontend/build/assets/channels-5BB_92I-.js +1 -0
- package/frontend/build/assets/channels-C2i9C4LP.js +1 -0
- package/frontend/build/assets/channels-C53UiHV8.js +1 -0
- package/frontend/build/assets/channels-Cm8UM1Z7.js +1 -0
- package/frontend/build/assets/channels-DdlEEU3s.js +1 -0
- package/frontend/build/assets/channels-DzKbsjiA.js +1 -0
- package/frontend/build/assets/cloudy-BnletBC6.js +1 -0
- package/frontend/build/assets/cloudy-C02z4bvP.js +1 -0
- package/frontend/build/assets/cloudy-DCLcLr7j.js +1 -0
- package/frontend/build/assets/cloudy-DEHW5vHA.js +1 -0
- package/frontend/build/assets/cloudy-MrNAszHw.js +1 -0
- package/frontend/build/assets/cloudy-zp1Y9L1v.js +1 -0
- package/frontend/build/assets/default-resource.png +0 -0
- package/frontend/build/assets/download-C2161hUv.js +1 -0
- package/frontend/build/assets/error-403-VPEqmg7m.svg +1 -0
- package/frontend/build/assets/error-404-DLMSXL2R.svg +1 -0
- package/frontend/build/assets/error-500-C1R4JvdT.svg +1 -0
- package/frontend/build/assets/gemini-full-DjWArg1A.png +0 -0
- package/frontend/build/assets/headers-CYAAtr6C.js +16 -0
- package/frontend/build/assets/headers-CiEBSHa2.js +16 -0
- package/frontend/build/assets/headers-D9Kcnpmr.js +16 -0
- package/frontend/build/assets/headers-PaTXxtPR.js +16 -0
- package/frontend/build/assets/headers-UoeXy2eZ.js +16 -0
- package/frontend/build/assets/headers-VVIzblQ_.js +16 -0
- package/frontend/build/assets/index--eQYnbum.js +1 -0
- package/frontend/build/assets/index-03UGSOxl.js +3022 -0
- package/frontend/build/assets/index-2VSakRqN.js +1 -0
- package/frontend/build/assets/index-2WhMzyiQ.js +1 -0
- package/frontend/build/assets/index-2_Tj01eS.js +1 -0
- package/frontend/build/assets/index-2ds3nwBz.js +1 -0
- package/frontend/build/assets/index-5HLgPZyA.js +1 -0
- package/frontend/build/assets/index-A-Nxva_P.js +1 -0
- package/frontend/build/assets/index-AOaD5c69.css +1 -0
- package/frontend/build/assets/index-AxmlVWLb.js +88 -0
- package/frontend/build/assets/index-B1vc1sYC.js +88 -0
- package/frontend/build/assets/index-B2xcn1Zp.js +88 -0
- package/frontend/build/assets/index-B3vwplQQ.js +1 -0
- package/frontend/build/assets/index-B3xgRJTP.js +1 -0
- package/frontend/build/assets/index-B5DOGUIX.js +1 -0
- package/frontend/build/assets/index-B6OH0R7T.js +1 -0
- package/frontend/build/assets/index-B84-YkMr.js +1 -0
- package/frontend/build/assets/index-BEeRPoRP.css +1 -0
- package/frontend/build/assets/index-BG6BPhzo.js +1 -0
- package/frontend/build/assets/index-BITQakTn.js +1 -0
- package/frontend/build/assets/index-BMLd3diZ.js +1 -0
- package/frontend/build/assets/index-BVn0o2ft.js +1 -0
- package/frontend/build/assets/index-BWa7FUv_.css +1 -0
- package/frontend/build/assets/index-BX8jlXqW.js +1 -0
- package/frontend/build/assets/index-BfkNMt-Z.js +4 -0
- package/frontend/build/assets/index-BiTjEGM3.js +1 -0
- package/frontend/build/assets/index-BjIbFF1J.css +1 -0
- package/frontend/build/assets/index-BjlhqqjK.js +1 -0
- package/frontend/build/assets/index-BnFsJO-x.css +1 -0
- package/frontend/build/assets/index-BnLYNBvb.js +34 -0
- package/frontend/build/assets/index-BpyNu5uz.css +1 -0
- package/frontend/build/assets/index-Bq8g4Sjx.js +34 -0
- package/frontend/build/assets/index-BqnNVMWz.js +1 -0
- package/frontend/build/assets/index-BqvhG25P.js +1 -0
- package/frontend/build/assets/index-BxVOuJCR.js +88 -0
- package/frontend/build/assets/index-C0cu-RWI.js +1 -0
- package/frontend/build/assets/index-C3PU0-pz.js +1 -0
- package/frontend/build/assets/index-C6PGuM0W.js +1 -0
- package/frontend/build/assets/index-C8kC4vgj.js +73 -0
- package/frontend/build/assets/index-C929_ci3.js +1 -0
- package/frontend/build/assets/index-CAvXXNvC.js +4 -0
- package/frontend/build/assets/index-CH4h1wcf.js +1 -0
- package/frontend/build/assets/index-CIJ6rjR4.js +1 -0
- package/frontend/build/assets/index-CIr65QIJ.js +88 -0
- package/frontend/build/assets/index-CJIWqxBN.js +3022 -0
- package/frontend/build/assets/index-CK1nPYvM.js +1 -0
- package/frontend/build/assets/index-CKrf6ZAU.js +1 -0
- package/frontend/build/assets/index-CLfO7Gf6.js +1 -0
- package/frontend/build/assets/index-C_X4kJPv.js +1 -0
- package/frontend/build/assets/index-C_Y4E6cV.js +1 -0
- package/frontend/build/assets/index-Cb7i0EbW.js +1 -0
- package/frontend/build/assets/index-CbWw_OnJ.js +1 -0
- package/frontend/build/assets/index-CbeMIVMe.js +1 -0
- package/frontend/build/assets/index-CdNjPHZ4.css +1 -0
- package/frontend/build/assets/index-CeFBXiHy.js +34 -0
- package/frontend/build/assets/index-CfqNGf3J.js +1 -0
- package/frontend/build/assets/index-Cgw3BtX5.js +1 -0
- package/frontend/build/assets/index-Ci64noNy.js +4 -0
- package/frontend/build/assets/index-CpE2LZf6.js +88 -0
- package/frontend/build/assets/index-CqKFcCqq.js +1 -0
- package/frontend/build/assets/index-CrbhbDn6.js +1 -0
- package/frontend/build/assets/index-Csi2jHp6.js +1 -0
- package/frontend/build/assets/index-CuRn3Zj6.js +1 -0
- package/frontend/build/assets/index-Cvb6isPu.js +34 -0
- package/frontend/build/assets/index-D1keqYcn.js +1 -0
- package/frontend/build/assets/index-D4yD21Ii.js +1 -0
- package/frontend/build/assets/index-D60uSbJs.css +1 -0
- package/frontend/build/assets/index-D6ESmTyE.js +51 -0
- package/frontend/build/assets/index-D81JopND.js +1 -0
- package/frontend/build/assets/index-D8Ea2ZYj.js +1 -0
- package/frontend/build/assets/index-D8GATqgc.js +88 -0
- package/frontend/build/assets/index-DAP5yTaX.js +1 -0
- package/frontend/build/assets/index-DBBLpo8h.js +73 -0
- package/frontend/build/assets/index-DBaGV7UL.js +1 -0
- package/frontend/build/assets/index-DEVf6CSD.css +1 -0
- package/frontend/build/assets/index-DG-8CbiW.css +1 -0
- package/frontend/build/assets/index-DGBf1FIP.js +1 -0
- package/frontend/build/assets/index-DGJCAKZq.js +1 -0
- package/frontend/build/assets/index-DGyDjezP.js +1 -0
- package/frontend/build/assets/index-DJdQ0nV5.js +3022 -0
- package/frontend/build/assets/index-DK0t9ttf.js +51 -0
- package/frontend/build/assets/index-DNH9PMk-.js +1 -0
- package/frontend/build/assets/index-DOSf5RcO.css +1 -0
- package/frontend/build/assets/index-DOpBnx1_.js +3 -0
- package/frontend/build/assets/index-DOpZxAwZ.js +1 -0
- package/frontend/build/assets/index-DPHVwNRA.js +1 -0
- package/frontend/build/assets/index-DSzihJo9.js +1 -0
- package/frontend/build/assets/index-DVJZAGXg.js +1 -0
- package/frontend/build/assets/index-DXr1ddHm.js +3 -0
- package/frontend/build/assets/index-DamztouA.js +1 -0
- package/frontend/build/assets/index-Dd2IZqLs.js +1 -0
- package/frontend/build/assets/index-DfOc9UlB.js +1 -0
- package/frontend/build/assets/index-DgVSxPXN.css +1 -0
- package/frontend/build/assets/index-Dhp8dh5v.js +1 -0
- package/frontend/build/assets/index-DlqpxOQl.css +1 -0
- package/frontend/build/assets/index-DlvxwSxx.js +1 -0
- package/frontend/build/assets/index-Dn5ZzrRm.css +1 -0
- package/frontend/build/assets/index-Dp1faHeH.js +3020 -0
- package/frontend/build/assets/index-DsLf2ZDE.js +1 -0
- package/frontend/build/assets/index-DsUl8Ptm.js +1 -0
- package/frontend/build/assets/index-Dw0tLRur.js +1 -0
- package/frontend/build/assets/index-DwXVBZsv.js +1 -0
- package/frontend/build/assets/index-DyaHYcgL.js +1 -0
- package/frontend/build/assets/index-DzBQLoNi.js +3022 -0
- package/frontend/build/assets/index-GrVsVGKe.js +1 -0
- package/frontend/build/assets/index-IzGzRXKT.js +1 -0
- package/frontend/build/assets/index-MHTC5Jaf.js +1 -0
- package/frontend/build/assets/index-PDPwUSMg.js +34 -0
- package/frontend/build/assets/index-QYahACFP.css +1 -0
- package/frontend/build/assets/index-QkZPwKD6.js +88 -0
- package/frontend/build/assets/index-Tg84pa9I.js +88 -0
- package/frontend/build/assets/index-UL4MAKLb.js +88 -0
- package/frontend/build/assets/index-aa34KBYr.js +34 -0
- package/frontend/build/assets/index-ajvK6t0Y.js +1 -0
- package/frontend/build/assets/index-b5SryupN.js +1 -0
- package/frontend/build/assets/index-d3LI8LJL.js +4 -0
- package/frontend/build/assets/index-e1kUgjjO.js +1 -0
- package/frontend/build/assets/index-jTalI0G5.js +1 -0
- package/frontend/build/assets/index-jZroxcSG.js +1 -0
- package/frontend/build/assets/index-kLEe-31q.js +3022 -0
- package/frontend/build/assets/index-nxD1J_1U.js +1 -0
- package/frontend/build/assets/index-qD9Q6D9I.js +1 -0
- package/frontend/build/assets/index-uBZFl8l2.js +1 -0
- package/frontend/build/assets/index-wr8bxnDK.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-B4NwmABd.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-B4oNPU3q.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-BBmwAav-.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-BOOc15c_.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-BY9Af5Nc.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-Bej651CN.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-C2vb4Dqf.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-CL2618tE.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-CLxSBkmO.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-C_JTuf1y.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-CcJN846R.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-CijuxZr1.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-CmP-e403.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-Cs16N-Xd.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-D06MdY7a.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-DdgjuITP.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-DuLmC4Hy.js +1 -0
- package/frontend/build/assets/index.vue_vue_type_script_setup_true_lang-i_-VJTVk.js +1 -0
- package/frontend/build/assets/logo-B8LLnbYy.jpg +0 -0
- package/frontend/build/assets/memory-C4zB60HJ.js +1 -0
- package/frontend/build/assets/memory-DHzPXs82.js +1 -0
- package/frontend/build/assets/presets-8ZEu20ZL.js +1 -0
- package/frontend/build/assets/presets-Bbyt0PjB.js +1 -0
- package/frontend/build/assets/presets-DGMnsFyv.js +1 -0
- package/frontend/build/assets/presets-DqF27psW.js +1 -0
- package/frontend/build/assets/presets-N8YNqfPr.js +1 -0
- package/frontend/build/assets/presets-cCI64Dxi.js +1 -0
- package/frontend/build/assets/preview-close-one-BtVZjDje.js +1 -0
- package/frontend/build/assets/preview-close-one-CduaZ9go.js +1 -0
- package/frontend/build/assets/preview-close-one-DQdsMFNB.js +1 -0
- package/frontend/build/assets/preview-close-one-DZiBTyj3.js +1 -0
- package/frontend/build/assets/preview-close-one-ZEGMXVTp.js +1 -0
- package/frontend/build/assets/preview-close-one-vOfiPsm0.js +1 -0
- package/frontend/build/assets/preview-open--FMuWVpI.js +1 -0
- package/frontend/build/assets/preview-open-5axv2eoi.js +1 -0
- package/frontend/build/assets/preview-open-BwhyOZZZ.js +1 -0
- package/frontend/build/assets/preview-open-CEgCXCaz.js +1 -0
- package/frontend/build/assets/preview-open-CIsmwiay.js +1 -0
- package/frontend/build/assets/preview-open-DqXcn0Io.js +1 -0
- package/frontend/build/assets/processors-0_RUgaZm.js +1 -0
- package/frontend/build/assets/processors-BGAbvhSk.js +1 -0
- package/frontend/build/assets/processors-CJsyXjR7.js +1 -0
- package/frontend/build/assets/processors-CmJ007yb.js +1 -0
- package/frontend/build/assets/processors-CsDJer4R.js +1 -0
- package/frontend/build/assets/processors-on-PUe_q.js +1 -0
- package/frontend/build/assets/prop-BjyUHhTu.js +1 -0
- package/frontend/build/assets/text-BU3n8x_S.js +21 -0
- package/frontend/build/assets/text-BdCfEojD.js +21 -0
- package/frontend/build/assets/text-BfkuQm58.js +21 -0
- package/frontend/build/assets/text-BhKp8kwX.js +21 -0
- package/frontend/build/assets/text-C8WlRvWq.js +21 -0
- package/frontend/build/assets/text-Dm8ZXeiW.js +21 -0
- package/frontend/build/assets/toolGroup-BpThfFxc.js +1 -0
- package/frontend/build/assets/toolGroup-C7yi3DD-.js +1 -0
- package/frontend/build/assets/toolGroup-Cl_28ogB.js +1 -0
- package/frontend/build/assets/toolGroup-CvTMJceG.js +1 -0
- package/frontend/build/assets/toolGroup-DIZrVG-u.js +1 -0
- package/frontend/build/assets/toolGroup-YtViuyrx.js +1 -0
- package/frontend/build/assets/tools-BWpxaWcy.js +1 -0
- package/frontend/build/assets/tools-CivF5Y63.js +1 -0
- package/frontend/build/assets/tools-ClM2lWje.js +1 -0
- package/frontend/build/assets/tools-DlNqOoYG.js +1 -0
- package/frontend/build/assets/tools-DrffVcid.js +1 -0
- package/frontend/build/assets/tools-VKwjF6eb.js +1 -0
- package/frontend/build/favicon.jpg +0 -0
- package/frontend/build/index.html +537 -0
- package/package.json +71 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,1579 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from "async_hooks";
|
|
2
|
+
import EventEmitter from "node:events";
|
|
3
|
+
import { Server } from "node:http";
|
|
4
|
+
import { SafetySetting } from "@google/genai";
|
|
5
|
+
import { Application } from "express";
|
|
6
|
+
import { Job } from "@karinjs/node-schedule";
|
|
7
|
+
|
|
8
|
+
//#region src/types/models.d.ts
|
|
9
|
+
type Feature = 'chat' | 'visual' | 'tool' | 'embedding';
|
|
10
|
+
/**
|
|
11
|
+
* other roles like developer or function should be handled by different implementations
|
|
12
|
+
*/
|
|
13
|
+
type Role = 'system' | 'user' | 'assistant' | 'tool' | 'developer';
|
|
14
|
+
interface MessageContent {
|
|
15
|
+
type: 'text' | 'image' | 'audio' | 'video' | 'tool' | 'reasoning';
|
|
16
|
+
thoughtSignature?: string;
|
|
17
|
+
}
|
|
18
|
+
interface TextContent extends MessageContent {
|
|
19
|
+
type: 'text';
|
|
20
|
+
/**
|
|
21
|
+
* Content of text
|
|
22
|
+
*/
|
|
23
|
+
text: string;
|
|
24
|
+
}
|
|
25
|
+
interface ReasoningContent extends MessageContent {
|
|
26
|
+
type: 'reasoning';
|
|
27
|
+
/**
|
|
28
|
+
* thinking text
|
|
29
|
+
*/
|
|
30
|
+
text: string;
|
|
31
|
+
}
|
|
32
|
+
interface ImageContent extends MessageContent {
|
|
33
|
+
type: 'image';
|
|
34
|
+
/**
|
|
35
|
+
* Either a URL of the image or the base64 encoded image data
|
|
36
|
+
*/
|
|
37
|
+
image: string;
|
|
38
|
+
mimeType?: string;
|
|
39
|
+
}
|
|
40
|
+
interface AudioContent extends MessageContent {
|
|
41
|
+
type: 'audio';
|
|
42
|
+
/**
|
|
43
|
+
* Base64 encoded audio data
|
|
44
|
+
*/
|
|
45
|
+
data: string;
|
|
46
|
+
format: 'mp3' | 'wav';
|
|
47
|
+
}
|
|
48
|
+
type History = {
|
|
49
|
+
id: string;
|
|
50
|
+
parentId: string | null;
|
|
51
|
+
};
|
|
52
|
+
interface IMessage {
|
|
53
|
+
role: Role;
|
|
54
|
+
content: MessageContent[];
|
|
55
|
+
toolCalls?: ToolCall[];
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* 模型返回的工具调用,role是assistant
|
|
59
|
+
*/
|
|
60
|
+
interface ToolCall {
|
|
61
|
+
id: string;
|
|
62
|
+
type: 'function';
|
|
63
|
+
function: FunctionCall;
|
|
64
|
+
thoughtSignature?: string;
|
|
65
|
+
}
|
|
66
|
+
type ArgumentValue = string | number | boolean | ArgumentValue[];
|
|
67
|
+
type FunctionCall = {
|
|
68
|
+
name: string;
|
|
69
|
+
/**
|
|
70
|
+
* raw可能是JSON字符串,需要反序列化一次
|
|
71
|
+
*/
|
|
72
|
+
arguments: Record<string, ArgumentValue | Record<string, ArgumentValue>>;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* 用户发送的消息,可能有文本和多模态消息
|
|
76
|
+
*/
|
|
77
|
+
interface UserMessage extends IMessage {
|
|
78
|
+
role: 'user';
|
|
79
|
+
content: Array<TextContent | ImageContent | AudioContent>;
|
|
80
|
+
}
|
|
81
|
+
interface SystemMessage extends IMessage {
|
|
82
|
+
role: 'system';
|
|
83
|
+
content: TextContent[];
|
|
84
|
+
}
|
|
85
|
+
interface DeveloperMessage extends IMessage {
|
|
86
|
+
role: 'developer';
|
|
87
|
+
content: TextContent[];
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* 模型返回的消息,包括文本以及可能的工具调用
|
|
91
|
+
*/
|
|
92
|
+
interface AssistantMessage extends IMessage {
|
|
93
|
+
role: 'assistant';
|
|
94
|
+
content: Array<MessageContent>;
|
|
95
|
+
toolCalls?: ToolCall[];
|
|
96
|
+
}
|
|
97
|
+
interface ReasoningPart {
|
|
98
|
+
reasoning_content?: string;
|
|
99
|
+
reasoning?: string;
|
|
100
|
+
thinking_content?: string;
|
|
101
|
+
thinking?: string;
|
|
102
|
+
think?: string;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* 客户端执行工具调用的函数结果
|
|
106
|
+
*/
|
|
107
|
+
interface ToolCallResultMessage extends IMessage {
|
|
108
|
+
role: 'tool';
|
|
109
|
+
content: ToolCallResult[];
|
|
110
|
+
}
|
|
111
|
+
interface ToolCallResult extends MessageContent {
|
|
112
|
+
type: 'tool';
|
|
113
|
+
tool_call_id?: string;
|
|
114
|
+
content: string;
|
|
115
|
+
name?: string;
|
|
116
|
+
}
|
|
117
|
+
type HistoryMessage = History & IMessage;
|
|
118
|
+
interface ModelResponse {
|
|
119
|
+
id?: string;
|
|
120
|
+
model?: string;
|
|
121
|
+
contents: MessageContent[];
|
|
122
|
+
usage?: ModelUsage;
|
|
123
|
+
}
|
|
124
|
+
interface ModelUsage {
|
|
125
|
+
promptTokens?: number;
|
|
126
|
+
completionTokens?: number;
|
|
127
|
+
totalTokens?: number;
|
|
128
|
+
cachedTokens?: number;
|
|
129
|
+
reasoningTokens?: number;
|
|
130
|
+
}
|
|
131
|
+
interface ModelResponseChunk {
|
|
132
|
+
id?: string;
|
|
133
|
+
model?: string;
|
|
134
|
+
delta: MessageContent[];
|
|
135
|
+
toolCall?: ToolCall[];
|
|
136
|
+
}
|
|
137
|
+
interface EmbeddingResult {
|
|
138
|
+
embeddings: Array<number>[];
|
|
139
|
+
}
|
|
140
|
+
//#endregion
|
|
141
|
+
//#region src/types/cloud.d.ts
|
|
142
|
+
interface CloudAPIResponse<T> {
|
|
143
|
+
code: number;
|
|
144
|
+
data: T;
|
|
145
|
+
msg: string;
|
|
146
|
+
}
|
|
147
|
+
interface PaginationResult<T> {
|
|
148
|
+
items: T[];
|
|
149
|
+
pagination: {
|
|
150
|
+
currentPage: number;
|
|
151
|
+
pageSize: number;
|
|
152
|
+
totalItems: number;
|
|
153
|
+
totalPages: number;
|
|
154
|
+
hasNextPage: boolean;
|
|
155
|
+
hasPreviousPage: boolean;
|
|
156
|
+
};
|
|
157
|
+
type: string;
|
|
158
|
+
}
|
|
159
|
+
interface CloudSharingService<T extends AbstractShareable<unknown>> {
|
|
160
|
+
setUser(user: User): void;
|
|
161
|
+
getUser(): User | null;
|
|
162
|
+
authenticate(apiKey: string): Promise<User | null>;
|
|
163
|
+
upload(model: Serializable): Promise<T | null>;
|
|
164
|
+
download(shareId: string): Promise<T | null>;
|
|
165
|
+
initializeTransfer(model: Serializable): Promise<string | null>;
|
|
166
|
+
list(filter: Filter, query: string, searchOption: SearchOption): Promise<PaginationResult<T>>;
|
|
167
|
+
delete(shareId: string): Promise<boolean>;
|
|
168
|
+
}
|
|
169
|
+
type FilterValue = string | number | boolean | FilterValue[];
|
|
170
|
+
type Filter = Record<string, FilterValue | Record<string, FilterValue>>;
|
|
171
|
+
interface SearchOption {
|
|
172
|
+
searchFields?: string[];
|
|
173
|
+
page?: number;
|
|
174
|
+
pageSize?: number;
|
|
175
|
+
}
|
|
176
|
+
interface User {
|
|
177
|
+
username: string;
|
|
178
|
+
user_id: string | number;
|
|
179
|
+
api_key?: string;
|
|
180
|
+
github?: string;
|
|
181
|
+
email?: string;
|
|
182
|
+
google?: string;
|
|
183
|
+
linux_do?: string;
|
|
184
|
+
apple?: string;
|
|
185
|
+
microsoft?: string;
|
|
186
|
+
}
|
|
187
|
+
interface Serializable {
|
|
188
|
+
toString(): string;
|
|
189
|
+
}
|
|
190
|
+
interface DeSerializable<T> {
|
|
191
|
+
fromString(str: string): T;
|
|
192
|
+
}
|
|
193
|
+
interface CloudModel {
|
|
194
|
+
modelType: 'settings' | 'executable';
|
|
195
|
+
code?: string;
|
|
196
|
+
name: string;
|
|
197
|
+
id: string;
|
|
198
|
+
cloudId?: string;
|
|
199
|
+
embedded: boolean;
|
|
200
|
+
description: string;
|
|
201
|
+
uploader: User;
|
|
202
|
+
updatedAt: string;
|
|
203
|
+
createdAt: string;
|
|
204
|
+
md5: string;
|
|
205
|
+
toFormatedString(verbose?: boolean): string;
|
|
206
|
+
}
|
|
207
|
+
type Shareable<T> = Serializable & DeSerializable<T> & CloudModel;
|
|
208
|
+
declare abstract class AbstractShareable<T> implements Shareable<T> {
|
|
209
|
+
constructor(params?: Partial<AbstractShareable<T>>);
|
|
210
|
+
modelType: 'settings' | 'executable';
|
|
211
|
+
code?: string;
|
|
212
|
+
createdAt: string;
|
|
213
|
+
description: string;
|
|
214
|
+
embedded: boolean;
|
|
215
|
+
id: string;
|
|
216
|
+
cloudId?: string;
|
|
217
|
+
name: string;
|
|
218
|
+
uploader: User;
|
|
219
|
+
updatedAt: string;
|
|
220
|
+
fromString(str: string): T;
|
|
221
|
+
toString(): string;
|
|
222
|
+
toFormatedString(verbose?: boolean): string;
|
|
223
|
+
md5: string;
|
|
224
|
+
}
|
|
225
|
+
interface Wait {
|
|
226
|
+
ready(): Promise<void>;
|
|
227
|
+
}
|
|
228
|
+
//#endregion
|
|
229
|
+
//#region src/types/processors.d.ts
|
|
230
|
+
declare class ProcessorDTO extends AbstractShareable<ProcessorDTO> {
|
|
231
|
+
constructor(params: Partial<ProcessorDTO>);
|
|
232
|
+
type: 'pre' | 'post';
|
|
233
|
+
fromString(str: string): ProcessorDTO;
|
|
234
|
+
toFormatedString(_verbose?: boolean): string;
|
|
235
|
+
}
|
|
236
|
+
interface Processor {
|
|
237
|
+
type: 'pre' | 'post';
|
|
238
|
+
name: string;
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* 继承这个来实现一个前处理器
|
|
242
|
+
*/
|
|
243
|
+
declare abstract class PreProcessor implements Processor {
|
|
244
|
+
type: 'pre';
|
|
245
|
+
abstract process(message: UserMessage): Promise<UserMessage>;
|
|
246
|
+
name: string;
|
|
247
|
+
id: string;
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* 继承这个来实现一个后处理器
|
|
251
|
+
*/
|
|
252
|
+
declare abstract class PostProcessor implements Processor {
|
|
253
|
+
type: 'post';
|
|
254
|
+
abstract process(message: AssistantMessage): Promise<AssistantMessage>;
|
|
255
|
+
name: string;
|
|
256
|
+
id: string;
|
|
257
|
+
}
|
|
258
|
+
//#endregion
|
|
259
|
+
//#region src/types/adapter.d.ts
|
|
260
|
+
interface ToolCallLimitConfig {
|
|
261
|
+
maxConsecutiveCalls?: number;
|
|
262
|
+
maxConsecutiveIdenticalCalls?: number;
|
|
263
|
+
}
|
|
264
|
+
declare class SendMessageOption implements Serializable, DeSerializable<SendMessageOption> {
|
|
265
|
+
constructor(option: Partial<SendMessageOption>);
|
|
266
|
+
static create(options?: SendMessageOption | Partial<SendMessageOption>): SendMessageOption;
|
|
267
|
+
model?: string;
|
|
268
|
+
temperature?: number;
|
|
269
|
+
maxToken?: number;
|
|
270
|
+
/**
|
|
271
|
+
* 将系统提示词覆盖
|
|
272
|
+
*/
|
|
273
|
+
systemOverride?: string;
|
|
274
|
+
/**
|
|
275
|
+
* 本轮对话禁用历史
|
|
276
|
+
*/
|
|
277
|
+
disableHistoryRead?: boolean;
|
|
278
|
+
/**
|
|
279
|
+
* 禁用本轮对话存储到历史
|
|
280
|
+
*/
|
|
281
|
+
disableHistorySave?: boolean;
|
|
282
|
+
/**
|
|
283
|
+
* 对话ID。如果不传则默认为第一次对话
|
|
284
|
+
*/
|
|
285
|
+
conversationId?: string;
|
|
286
|
+
/**
|
|
287
|
+
* 上一条消息的ID,如果不传则默认为第一次对话
|
|
288
|
+
*/
|
|
289
|
+
parentMessageId?: string;
|
|
290
|
+
/**
|
|
291
|
+
* 流模式
|
|
292
|
+
*/
|
|
293
|
+
stream?: boolean;
|
|
294
|
+
/**
|
|
295
|
+
* 是否是思考模型
|
|
296
|
+
*/
|
|
297
|
+
isThinkingModel?: boolean;
|
|
298
|
+
enableReasoning?: boolean;
|
|
299
|
+
reasoningEffort?: 'high' | 'medium' | 'low' | 'minimal';
|
|
300
|
+
reasoningBudgetTokens?: number;
|
|
301
|
+
toolChoice?: ToolChoice;
|
|
302
|
+
postProcessorIds?: string[];
|
|
303
|
+
preProcessorIds?: string[];
|
|
304
|
+
toolGroupId?: string[];
|
|
305
|
+
responseModalities?: string[];
|
|
306
|
+
safetySettings?: SafetySetting[];
|
|
307
|
+
toolCallLimit?: ToolCallLimitConfig;
|
|
308
|
+
_consecutiveToolCallCount?: number;
|
|
309
|
+
_consecutiveIdenticalToolCallCount?: number;
|
|
310
|
+
_lastToolCallSignature?: string;
|
|
311
|
+
/**
|
|
312
|
+
* 流模式的回调
|
|
313
|
+
* @param chunk
|
|
314
|
+
*/
|
|
315
|
+
onChunk?(chunk: ModelResponseChunk): Promise<void>;
|
|
316
|
+
/**
|
|
317
|
+
* 工具调用轮次,如果有其他非tool_call类消息会被丢弃最后不会返回,但是可以通过onMessageWithToolCall来处理
|
|
318
|
+
* @param message
|
|
319
|
+
*/
|
|
320
|
+
onMessageWithToolCall?(message: MessageContent): Promise<void>;
|
|
321
|
+
fromString(str: string): SendMessageOption;
|
|
322
|
+
toString(): string;
|
|
323
|
+
}
|
|
324
|
+
interface ToolChoice {
|
|
325
|
+
type: 'none' | 'any' | 'auto' | 'specified';
|
|
326
|
+
tools?: string[];
|
|
327
|
+
}
|
|
328
|
+
interface EmbeddingOption {
|
|
329
|
+
model: string;
|
|
330
|
+
dimensions?: number;
|
|
331
|
+
}
|
|
332
|
+
type ClientType = 'openai' | 'gemini' | 'claude';
|
|
333
|
+
interface IClient {
|
|
334
|
+
name: ClientType;
|
|
335
|
+
features: Feature[];
|
|
336
|
+
tools: Tool[];
|
|
337
|
+
baseUrl: string;
|
|
338
|
+
apiKey: string | string[];
|
|
339
|
+
multipleKeyStrategy: MultipleKeyStrategy;
|
|
340
|
+
historyManager: HistoryManager;
|
|
341
|
+
postProcessors?: PostProcessor[];
|
|
342
|
+
preProcessors?: PreProcessor[];
|
|
343
|
+
sendMessage(message: UserMessage | undefined, options?: SendMessageOption | Partial<SendMessageOption>): Promise<ModelResponse>;
|
|
344
|
+
sendMessageWithHistory(history: IMessage[], options?: SendMessageOption | Partial<SendMessageOption>): Promise<IMessage & {
|
|
345
|
+
usage: ModelUsage;
|
|
346
|
+
}>;
|
|
347
|
+
getEmbedding(text: string | string[], options: EmbeddingOption): Promise<EmbeddingResult>;
|
|
348
|
+
logger: ILogger;
|
|
349
|
+
}
|
|
350
|
+
interface HistoryManager {
|
|
351
|
+
name: string;
|
|
352
|
+
saveHistory(message: HistoryMessage, conversationId: string): Promise<void>;
|
|
353
|
+
getHistory(messageId?: string, conversationId?: string): Promise<HistoryMessage[]>;
|
|
354
|
+
deleteConversation(conversationId: string): Promise<void>;
|
|
355
|
+
getOneHistory(messageId: string, conversationId: string): Promise<HistoryMessage | undefined>;
|
|
356
|
+
}
|
|
357
|
+
declare abstract class AbstractHistoryManager implements HistoryManager {
|
|
358
|
+
name: string;
|
|
359
|
+
abstract saveHistory(message: HistoryMessage, conversationId: string): Promise<void>;
|
|
360
|
+
abstract getHistory(messageId?: string, conversationId?: string): Promise<HistoryMessage[]>;
|
|
361
|
+
abstract deleteConversation(conversationId: string): Promise<void>;
|
|
362
|
+
abstract getOneHistory(messageId: string, conversationId: string): Promise<HistoryMessage | undefined>;
|
|
363
|
+
}
|
|
364
|
+
//#endregion
|
|
365
|
+
//#region src/channels/channels.d.ts
|
|
366
|
+
declare class DefaultChannelLoadBalancer implements ChannelsLoadBalancer {
|
|
367
|
+
constructor();
|
|
368
|
+
getChannel(name: string, channels: Channel[]): Promise<Channel>;
|
|
369
|
+
private groupByPriority;
|
|
370
|
+
private selectByWeight;
|
|
371
|
+
/**
|
|
372
|
+
* 获取渠道列表及其分配的数量
|
|
373
|
+
* generated by qwen-2.5-max
|
|
374
|
+
*
|
|
375
|
+
* @param modelName 模型名称
|
|
376
|
+
* @param channels 渠道列表
|
|
377
|
+
* @param totalQuantity 总数量
|
|
378
|
+
* @returns 返回一个包含渠道及其分配数量的数组
|
|
379
|
+
*/
|
|
380
|
+
getChannels(modelName: string, channels: Channel[], totalQuantity: number): Promise<{
|
|
381
|
+
channel: Channel;
|
|
382
|
+
quantity: number;
|
|
383
|
+
}[]>;
|
|
384
|
+
}
|
|
385
|
+
/**
|
|
386
|
+
* 渠道
|
|
387
|
+
* 每个渠道对应一个adapter,并记录客户端的options
|
|
388
|
+
*/
|
|
389
|
+
declare class Channel extends AbstractShareable<Channel> implements Wait {
|
|
390
|
+
constructor(params: Partial<Channel>);
|
|
391
|
+
init(): Promise<void>;
|
|
392
|
+
ready(): Promise<void>;
|
|
393
|
+
adapterType: ClientType;
|
|
394
|
+
options: BaseClientOptions;
|
|
395
|
+
models: string[];
|
|
396
|
+
type: ClientType;
|
|
397
|
+
weight: number;
|
|
398
|
+
priority: number;
|
|
399
|
+
status: 'enabled' | 'disabled';
|
|
400
|
+
disabledReason?: string;
|
|
401
|
+
statistics: ChannelStatistics;
|
|
402
|
+
fromString(str: string): Channel;
|
|
403
|
+
toString(): string;
|
|
404
|
+
toFormatedString(verbose?: boolean): string;
|
|
405
|
+
}
|
|
406
|
+
//#endregion
|
|
407
|
+
//#region src/channels/preset.d.ts
|
|
408
|
+
/**
|
|
409
|
+
* 对话模式预设,最终使用的
|
|
410
|
+
*/
|
|
411
|
+
declare class ChatPreset extends AbstractShareable<ChatPreset> {
|
|
412
|
+
constructor(params?: Partial<ChatPreset>);
|
|
413
|
+
prefix: string;
|
|
414
|
+
local: boolean;
|
|
415
|
+
namespace?: string;
|
|
416
|
+
sendMessageOption: SendMessageOption;
|
|
417
|
+
/**
|
|
418
|
+
* 携带群聊上下文
|
|
419
|
+
*/
|
|
420
|
+
groupContext?: 'disable' | 'enabled' | 'use_system';
|
|
421
|
+
/**
|
|
422
|
+
* 禁止系统prompt
|
|
423
|
+
*/
|
|
424
|
+
disableSystemInstructions?: boolean;
|
|
425
|
+
toString(): string;
|
|
426
|
+
fromString(str: string): ChatPreset;
|
|
427
|
+
toFormatedString(verbose?: boolean): string;
|
|
428
|
+
}
|
|
429
|
+
//#endregion
|
|
430
|
+
//#region src/types/external.d.ts
|
|
431
|
+
interface EventMessage {
|
|
432
|
+
sender: {
|
|
433
|
+
user_id: string;
|
|
434
|
+
nickname?: string;
|
|
435
|
+
card?: string;
|
|
436
|
+
};
|
|
437
|
+
group: {
|
|
438
|
+
group_id: number;
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
interface UserModeSelector {
|
|
442
|
+
getChatPreset(e: EventMessage): Promise<ChatPreset>;
|
|
443
|
+
}
|
|
444
|
+
declare abstract class AbstractUserModeSelector implements UserModeSelector {
|
|
445
|
+
abstract getChatPreset(e: EventMessage): Promise<ChatPreset>;
|
|
446
|
+
}
|
|
447
|
+
//#endregion
|
|
448
|
+
//#region src/adapters/clients.d.ts
|
|
449
|
+
declare class AbstractClient implements IClient {
|
|
450
|
+
options: BaseClientOptions;
|
|
451
|
+
constructor(options: BaseClientOptions | Partial<BaseClientOptions>, context?: ChaiteContext);
|
|
452
|
+
fullfillProcessors(preIds?: string[], postIds?: string[]): Promise<{
|
|
453
|
+
pre: PreProcessor[];
|
|
454
|
+
post: PostProcessor[];
|
|
455
|
+
}>;
|
|
456
|
+
fullfillTools(toolGroupIds?: string[]): Promise<Tool[]>;
|
|
457
|
+
sendMessage(message: UserMessage | undefined, options: SendMessageOption | Partial<SendMessageOption>): Promise<ModelResponse>;
|
|
458
|
+
protected shouldPersistHistory(message?: HistoryMessage): boolean;
|
|
459
|
+
protected isEffectivelyEmptyMessage(message?: IMessage): boolean;
|
|
460
|
+
private hasMeaningfulContent;
|
|
461
|
+
private isMessagePartMeaningful;
|
|
462
|
+
protected setToolCallLimitConfig(config?: ToolCallLimitConfig): void;
|
|
463
|
+
private getEffectiveToolCallLimit;
|
|
464
|
+
private updateToolCallTracking;
|
|
465
|
+
private resetToolCallTracking;
|
|
466
|
+
private buildToolCallSignature;
|
|
467
|
+
_sendMessage(_histories: IMessage[], _apiKey: string, _options: SendMessageOption): Promise<HistoryMessage & {
|
|
468
|
+
usage: ModelUsage;
|
|
469
|
+
}>;
|
|
470
|
+
sendMessageWithHistory(history: IMessage[], options?: SendMessageOption | Partial<SendMessageOption>): Promise<IMessage & {
|
|
471
|
+
usage: ModelUsage;
|
|
472
|
+
}>;
|
|
473
|
+
apiKey: string | string[];
|
|
474
|
+
baseUrl: string;
|
|
475
|
+
features: Feature[];
|
|
476
|
+
multipleKeyStrategy: MultipleKeyStrategy;
|
|
477
|
+
name: ClientType;
|
|
478
|
+
tools: Tool[];
|
|
479
|
+
logger: ILogger;
|
|
480
|
+
historyManager: HistoryManager;
|
|
481
|
+
context: ChaiteContext;
|
|
482
|
+
postProcessors?: PostProcessor[];
|
|
483
|
+
preProcessors?: PreProcessor[];
|
|
484
|
+
protected toolCallLimitConfig?: ToolCallLimitConfig;
|
|
485
|
+
getEmbedding(_text: string | string[], _options: EmbeddingOption): Promise<EmbeddingResult>;
|
|
486
|
+
}
|
|
487
|
+
//#endregion
|
|
488
|
+
//#region src/adapters/create.d.ts
|
|
489
|
+
declare function createClient(name: ClientType, options: BaseClientOptions | Partial<BaseClientOptions>, context?: ChaiteContext): IClient;
|
|
490
|
+
//#endregion
|
|
491
|
+
//#region src/adapters/impl/openai/OpenAIClient.d.ts
|
|
492
|
+
type OpenAIClientOptions = BaseClientOptions;
|
|
493
|
+
declare class OpenAIClient extends AbstractClient {
|
|
494
|
+
constructor(options: OpenAIClientOptions | Partial<OpenAIClientOptions>, context?: ChaiteContext);
|
|
495
|
+
_sendMessage(histories: IMessage[], apiKey: string, options: SendMessageOption): Promise<HistoryMessage & {
|
|
496
|
+
usage: ModelUsage;
|
|
497
|
+
}>;
|
|
498
|
+
getEmbedding(text: string | string[], options: EmbeddingOption): Promise<EmbeddingResult>;
|
|
499
|
+
}
|
|
500
|
+
//#endregion
|
|
501
|
+
//#region src/adapters/impl/gemini/GeminiClient.d.ts
|
|
502
|
+
type GeminiClientOptions = BaseClientOptions & {
|
|
503
|
+
toolCallLimit?: ToolCallLimitConfig;
|
|
504
|
+
};
|
|
505
|
+
declare class GeminiClient extends AbstractClient {
|
|
506
|
+
constructor(options: GeminiClientOptions | Partial<GeminiClientOptions>, context?: ChaiteContext);
|
|
507
|
+
/**
|
|
508
|
+
* 将 reasoningEffort 映射为 thinkingLevel
|
|
509
|
+
* 所有 Gemini 模型统一使用 thinkingLevel(不再区分 2.5/3 系列)
|
|
510
|
+
*/
|
|
511
|
+
private resolveThinkingLevel;
|
|
512
|
+
_sendMessage(histories: IMessage[], apiKey: string, options: SendMessageOption): Promise<HistoryMessage & {
|
|
513
|
+
usage: ModelUsage;
|
|
514
|
+
}>;
|
|
515
|
+
getEmbedding(text: string | string[], options: EmbeddingOption): Promise<EmbeddingResult>;
|
|
516
|
+
}
|
|
517
|
+
//#endregion
|
|
518
|
+
//#region src/adapters/impl/claude/ClaudeClient.d.ts
|
|
519
|
+
declare class ClaudeClient extends AbstractClient {
|
|
520
|
+
constructor(options: GeminiClientOptions | Partial<GeminiClientOptions>, context?: ChaiteContext);
|
|
521
|
+
_sendMessage(histories: IMessage[], apiKey: string, options: SendMessageOption): Promise<HistoryMessage & {
|
|
522
|
+
usage: ModelUsage;
|
|
523
|
+
}>;
|
|
524
|
+
}
|
|
525
|
+
//#endregion
|
|
526
|
+
//#region src/share/shareable.d.ts
|
|
527
|
+
type ExecutableSShareableType = 'tool' | 'processor';
|
|
528
|
+
/**
|
|
529
|
+
* T是DTO
|
|
530
|
+
* C是T对应的可执行的实例类型
|
|
531
|
+
* @interface ExecutableShareableManager
|
|
532
|
+
*/
|
|
533
|
+
declare abstract class ExecutableShareableManager<T extends Shareable<T>, C> {
|
|
534
|
+
private type;
|
|
535
|
+
private storage;
|
|
536
|
+
private watcher;
|
|
537
|
+
/**
|
|
538
|
+
* 存储示例名称和文件名的映射
|
|
539
|
+
* @private
|
|
540
|
+
*/
|
|
541
|
+
protected instanceMap: Map<string, string>;
|
|
542
|
+
/**
|
|
543
|
+
* codeDirectory是存放实际代码的目录
|
|
544
|
+
* @private
|
|
545
|
+
*/
|
|
546
|
+
protected codeDirectory: string;
|
|
547
|
+
/** @deprecated unused in local-only mode */
|
|
548
|
+
cloudService?: unknown;
|
|
549
|
+
protected constructor(type: ExecutableSShareableType, codeDirectory: string, storage: BasicStorage<T>);
|
|
550
|
+
/** @deprecated no-op in local-only mode */
|
|
551
|
+
setCloudService(_cloudService: unknown): void;
|
|
552
|
+
/**
|
|
553
|
+
* 只有可执行类型的实例才需要,如工具、处理器等。设置类不需要
|
|
554
|
+
* @private
|
|
555
|
+
*/
|
|
556
|
+
initialize(): Promise<void>;
|
|
557
|
+
private setupFileWatcher;
|
|
558
|
+
private scanInstances;
|
|
559
|
+
/**
|
|
560
|
+
* 返回实例名字们
|
|
561
|
+
* @returns 实例名字列表
|
|
562
|
+
*/
|
|
563
|
+
listInstanceNames(): Promise<string[]>;
|
|
564
|
+
listInstances(): Promise<T[]>;
|
|
565
|
+
getInstanceT(id: string): Promise<T | null>;
|
|
566
|
+
/**
|
|
567
|
+
* 获取实例对象而非Shareable DTO
|
|
568
|
+
* @param name
|
|
569
|
+
*/
|
|
570
|
+
getInstance(name: string): Promise<C | undefined>;
|
|
571
|
+
/**
|
|
572
|
+
* 新增或更新
|
|
573
|
+
* 有id就是更新,靠storage实现去控制,这里不管
|
|
574
|
+
* @param instance
|
|
575
|
+
* @return id
|
|
576
|
+
*/
|
|
577
|
+
addInstance(instance: T): Promise<string>;
|
|
578
|
+
addInstanceCode(name: string, code: string): Promise<void>;
|
|
579
|
+
upsertInstanceT(t: T): Promise<string>;
|
|
580
|
+
getInstanceTByCloudId(cloudId: string): Promise<T[]>;
|
|
581
|
+
renameFile(id: string, oldName: string, newName: string): Promise<void>;
|
|
582
|
+
deleteInstance(id: string): Promise<void>;
|
|
583
|
+
/**
|
|
584
|
+
* 序列化实例,返回DTO
|
|
585
|
+
* @param name
|
|
586
|
+
*/
|
|
587
|
+
abstract serializeInstance(name: string): Promise<T | null>;
|
|
588
|
+
shareToCloud(_id: string): Promise<string | undefined>;
|
|
589
|
+
listFromCloud(_filter: unknown, _query: string, _searchOption: unknown): Promise<never>;
|
|
590
|
+
getFromCloud(_shareId: string): Promise<T | null>;
|
|
591
|
+
shareP2P(_name: string): Promise<string | null>;
|
|
592
|
+
dispose(): Promise<void>;
|
|
593
|
+
}
|
|
594
|
+
type NonExecutableSShareableType = 'chat-preset' | 'tool-settings' | 'channel' | 'tools-group';
|
|
595
|
+
declare abstract class NonExecutableShareableManager<T extends Shareable<T>> {
|
|
596
|
+
protected type: NonExecutableSShareableType;
|
|
597
|
+
protected storage: BasicStorage<T>;
|
|
598
|
+
/** @deprecated unused in local-only mode */
|
|
599
|
+
cloudService?: unknown;
|
|
600
|
+
protected constructor(type: NonExecutableSShareableType, storage: BasicStorage<T>);
|
|
601
|
+
/** @deprecated no-op in local-only mode */
|
|
602
|
+
setCloudService(_cloudService: unknown): void;
|
|
603
|
+
addInstance(instance: T): Promise<string>;
|
|
604
|
+
deleteInstance(key: string): Promise<void>;
|
|
605
|
+
listInstances(): Promise<T[]>;
|
|
606
|
+
getInstance(key: string): Promise<T | null>;
|
|
607
|
+
upsertInstance(t: T): Promise<string>;
|
|
608
|
+
getInstanceByCloudId(cloudId: string): Promise<T[]>;
|
|
609
|
+
shareToCloud(_key: string): Promise<string | undefined>;
|
|
610
|
+
shareP2P(_key: string): Promise<string | null>;
|
|
611
|
+
getFromCloud(_shareId: string): Promise<T | null>;
|
|
612
|
+
listFromCloud(_filter: unknown, _query: string, _searchOption: unknown): Promise<never>;
|
|
613
|
+
deleteFromCloud(_key: string): Promise<void>;
|
|
614
|
+
}
|
|
615
|
+
//#endregion
|
|
616
|
+
//#region src/share/tool.d.ts
|
|
617
|
+
declare class ToolManager extends ExecutableShareableManager<ToolDTO, Tool> {
|
|
618
|
+
private static instance;
|
|
619
|
+
private constructor();
|
|
620
|
+
static init(toolsDirectory: string, storage: BasicStorage<ToolDTO>): Promise<ToolManager>;
|
|
621
|
+
static getInstance(): Promise<ToolManager | null>;
|
|
622
|
+
serializeInstance(name: string): Promise<ToolDTO | null>;
|
|
623
|
+
}
|
|
624
|
+
//#endregion
|
|
625
|
+
//#region src/share/cloud.d.ts
|
|
626
|
+
/**
|
|
627
|
+
* Cloud service stub — kept only to satisfy the CloudSharingService interface
|
|
628
|
+
* used by shareable.ts base classes. No-op implementation.
|
|
629
|
+
*/
|
|
630
|
+
declare class DefaultCloudService<T> {
|
|
631
|
+
constructor(_cloudApiBaseUrl: string, _type: string);
|
|
632
|
+
}
|
|
633
|
+
//#endregion
|
|
634
|
+
//#region src/share/channels.d.ts
|
|
635
|
+
declare class ChannelsManager extends NonExecutableShareableManager<Channel> {
|
|
636
|
+
protected storage: BasicStorage<Channel>;
|
|
637
|
+
private loadBalancer;
|
|
638
|
+
private static instance;
|
|
639
|
+
private constructor();
|
|
640
|
+
static init(storage: BasicStorage<Channel>, loadBalancer: ChannelsLoadBalancer): Promise<ChannelsManager>;
|
|
641
|
+
static getInstance(): Promise<ChannelsManager | null>;
|
|
642
|
+
getAllChannels(name?: string): Promise<Channel[]>;
|
|
643
|
+
getChannelByType(type: Channel['type']): Promise<Channel[]>;
|
|
644
|
+
getChannelByStatus(status: 'enabled' | 'disabled'): Promise<Channel[]>;
|
|
645
|
+
getChannelByModel(model: string): Promise<Channel[]>;
|
|
646
|
+
getChannelsByModel(model: string, totalQuantity: number): Promise<{
|
|
647
|
+
channel: Channel;
|
|
648
|
+
quantity: number;
|
|
649
|
+
}[]>;
|
|
650
|
+
}
|
|
651
|
+
//#endregion
|
|
652
|
+
//#region src/share/processors.d.ts
|
|
653
|
+
declare class ProcessorsManager extends ExecutableShareableManager<ProcessorDTO, Processor> {
|
|
654
|
+
private static instance;
|
|
655
|
+
private constructor();
|
|
656
|
+
static init(processorsDirectory: string, storage: BasicStorage<ProcessorDTO>): Promise<ProcessorsManager>;
|
|
657
|
+
static getInstance(): Promise<ProcessorsManager | null>;
|
|
658
|
+
serializeInstance(name: string): Promise<ProcessorDTO | null>;
|
|
659
|
+
}
|
|
660
|
+
//#endregion
|
|
661
|
+
//#region src/share/preset.d.ts
|
|
662
|
+
declare class ChatPresetManager extends NonExecutableShareableManager<ChatPreset> {
|
|
663
|
+
protected storage: BasicStorage<ChatPreset>;
|
|
664
|
+
private static instance;
|
|
665
|
+
private constructor();
|
|
666
|
+
static init(storage: BasicStorage<ChatPreset>): Promise<ChatPresetManager>;
|
|
667
|
+
static getInstance(): Promise<ChatPresetManager | null>;
|
|
668
|
+
getAllPresets(options?: {
|
|
669
|
+
includeLocal?: boolean;
|
|
670
|
+
namespace?: string;
|
|
671
|
+
}): Promise<ChatPreset[]>;
|
|
672
|
+
getPresetByPrefix(prefix: string): Promise<ChatPreset | null>;
|
|
673
|
+
}
|
|
674
|
+
//#endregion
|
|
675
|
+
//#region src/share/tools_group.d.ts
|
|
676
|
+
declare class ToolsGroupManager extends NonExecutableShareableManager<ToolsGroupDTO> {
|
|
677
|
+
private static instance;
|
|
678
|
+
private constructor();
|
|
679
|
+
static init(storage: BasicStorage<ToolsGroupDTO>): Promise<ToolsGroupManager>;
|
|
680
|
+
static getInstance(): Promise<ToolsGroupManager | null>;
|
|
681
|
+
}
|
|
682
|
+
//#endregion
|
|
683
|
+
//#region src/share/trigger.d.ts
|
|
684
|
+
/**
|
|
685
|
+
* 专门用于管理触发器的管理器
|
|
686
|
+
* 由于触发器需要注册并保持状态运行,因此管理方式不同于普通的可执行代码
|
|
687
|
+
*/
|
|
688
|
+
declare class TriggerManager<T extends TriggerDTO> {
|
|
689
|
+
private storage;
|
|
690
|
+
/**
|
|
691
|
+
* 存储触发器名称到 DTO ID 的映射
|
|
692
|
+
* 这样通过实例的 name 就可以找到对应的 DTO id
|
|
693
|
+
*/
|
|
694
|
+
protected nameToIdMap: Map<string, string>;
|
|
695
|
+
private watcher;
|
|
696
|
+
/**
|
|
697
|
+
* 存储示例名称和文件名的映射
|
|
698
|
+
*/
|
|
699
|
+
protected instanceMap: Map<string, string>;
|
|
700
|
+
/**
|
|
701
|
+
* 已注册的触发器实例
|
|
702
|
+
*/
|
|
703
|
+
protected activeInstances: Map<string, Trigger>;
|
|
704
|
+
/**
|
|
705
|
+
* 全局上下文,用于传递给触发器
|
|
706
|
+
*/
|
|
707
|
+
protected context: ChaiteContext;
|
|
708
|
+
/**
|
|
709
|
+
* codeDirectory是存放实际代码的目录
|
|
710
|
+
*/
|
|
711
|
+
protected codeDirectory: string;
|
|
712
|
+
/** @deprecated unused in local-only mode */
|
|
713
|
+
cloudService?: unknown;
|
|
714
|
+
constructor(codeDirectory: string, storage: BasicStorage<T>);
|
|
715
|
+
/** @deprecated no-op in local-only mode */
|
|
716
|
+
setCloudService(_cloudService: unknown): void;
|
|
717
|
+
/**
|
|
718
|
+
* 初始化管理器,加载所有触发器并注册
|
|
719
|
+
*/
|
|
720
|
+
initialize(): Promise<void>;
|
|
721
|
+
/**
|
|
722
|
+
* 设置文件监听器,监控触发器文件的变化
|
|
723
|
+
*/
|
|
724
|
+
private setupFileWatcher;
|
|
725
|
+
/**
|
|
726
|
+
* 扫描触发器实例
|
|
727
|
+
*/
|
|
728
|
+
private scanInstances;
|
|
729
|
+
/**
|
|
730
|
+
* 注册所有启用状态的触发器
|
|
731
|
+
*/
|
|
732
|
+
private registerAllEnabledTriggers;
|
|
733
|
+
/**
|
|
734
|
+
* 注册单个触发器
|
|
735
|
+
*/
|
|
736
|
+
registerTrigger(dtoName: string): Promise<void>;
|
|
737
|
+
/**
|
|
738
|
+
* 通过触发器实例的 name 删除触发器
|
|
739
|
+
* 注意:这里的 name 是触发器实例的 name,而不是 DTO 中的 name
|
|
740
|
+
*/
|
|
741
|
+
deleteInstanceByName(triggerName: string): Promise<void>;
|
|
742
|
+
/**
|
|
743
|
+
* 取消注册触发器
|
|
744
|
+
*/
|
|
745
|
+
unregisterTrigger(name: string): Promise<void>;
|
|
746
|
+
/**
|
|
747
|
+
* 返回实例名字们
|
|
748
|
+
*/
|
|
749
|
+
listInstanceNames(): Promise<string[]>;
|
|
750
|
+
/**
|
|
751
|
+
* 获取所有触发器DTO
|
|
752
|
+
*/
|
|
753
|
+
listInstances(): Promise<T[]>;
|
|
754
|
+
/**
|
|
755
|
+
* 获取触发器DTO
|
|
756
|
+
*/
|
|
757
|
+
getInstanceT(id: string): Promise<T | null>;
|
|
758
|
+
/**
|
|
759
|
+
* 通过名称获取触发器DTO
|
|
760
|
+
*/
|
|
761
|
+
getInstanceTByName(name: string): Promise<T | null>;
|
|
762
|
+
/**
|
|
763
|
+
* 获取触发器实例对象
|
|
764
|
+
*/
|
|
765
|
+
getInstance(name: string): Promise<Trigger | undefined>;
|
|
766
|
+
/**
|
|
767
|
+
* 新增或更新触发器
|
|
768
|
+
*/
|
|
769
|
+
addInstance(instance: T): Promise<string>;
|
|
770
|
+
/**
|
|
771
|
+
* 添加触发器代码
|
|
772
|
+
*/
|
|
773
|
+
addInstanceCode(name: string, code: string): Promise<void>;
|
|
774
|
+
/**
|
|
775
|
+
* 更新或新增触发器
|
|
776
|
+
*/
|
|
777
|
+
upsertInstanceT(t: T): Promise<string>;
|
|
778
|
+
/**
|
|
779
|
+
* 通过云ID获取触发器
|
|
780
|
+
*/
|
|
781
|
+
getInstanceTByCloudId(cloudId: string): Promise<T[]>;
|
|
782
|
+
/**
|
|
783
|
+
* 重命名触发器文件
|
|
784
|
+
*/
|
|
785
|
+
renameFile(id: string, oldName: string, newName: string): Promise<void>;
|
|
786
|
+
/**
|
|
787
|
+
* 删除触发器
|
|
788
|
+
*/
|
|
789
|
+
deleteInstance(id: string): Promise<void>;
|
|
790
|
+
/**
|
|
791
|
+
* 更新上下文
|
|
792
|
+
*/
|
|
793
|
+
updateContext(context: ChaiteContext): void;
|
|
794
|
+
/**
|
|
795
|
+
* 序列化触发器,返回DTO
|
|
796
|
+
*/
|
|
797
|
+
serializeInstance(name: string): Promise<T | null>;
|
|
798
|
+
shareToCloud(_id: string): Promise<string | undefined>;
|
|
799
|
+
listFromCloud(_filter: unknown, _query: string, _searchOption: unknown): Promise<never>;
|
|
800
|
+
getFromCloud(_shareId: string): Promise<T | null>;
|
|
801
|
+
shareP2P(_name: string): Promise<string | null>;
|
|
802
|
+
/**
|
|
803
|
+
* 清理资源,关闭文件监听器
|
|
804
|
+
*/
|
|
805
|
+
dispose(): Promise<void>;
|
|
806
|
+
/**
|
|
807
|
+
* 启用触发器
|
|
808
|
+
*/
|
|
809
|
+
enableTrigger(id: string): Promise<void>;
|
|
810
|
+
/**
|
|
811
|
+
* 禁用触发器
|
|
812
|
+
*/
|
|
813
|
+
disableTrigger(id: string): Promise<void>;
|
|
814
|
+
/**
|
|
815
|
+
* 检查触发器是否正在运行
|
|
816
|
+
*/
|
|
817
|
+
isRunning(name: string): boolean;
|
|
818
|
+
/**
|
|
819
|
+
* 获取当前运行中的所有触发器
|
|
820
|
+
*/
|
|
821
|
+
getRunningTriggers(): string[];
|
|
822
|
+
}
|
|
823
|
+
//#endregion
|
|
824
|
+
//#region src/utils/helpers.d.ts
|
|
825
|
+
declare function getKey(apiKeys: string[] | string, strategy: MultipleKeyStrategy): Promise<string>;
|
|
826
|
+
declare const asyncLocalStorage: AsyncLocalStorage<ChaiteContext>;
|
|
827
|
+
declare function useEvent(): Promise<EventMessage | undefined>;
|
|
828
|
+
/**
|
|
829
|
+
* 表示构造函数的类型
|
|
830
|
+
*/
|
|
831
|
+
type AbstractConstructor<T> = abstract new (...args: unknown[]) => T;
|
|
832
|
+
/**
|
|
833
|
+
* 将JS代码保存到指定目录并导入其默认导出
|
|
834
|
+
*
|
|
835
|
+
* @param {string} jsContent - JS代码内容
|
|
836
|
+
* @param {string} modulesDir - 保存模块的目录
|
|
837
|
+
* @param {string} fileName - 文件名(不含路径)
|
|
838
|
+
* @param {Function} AbstractClass - 抽象类,用于检查实例是否继承自它
|
|
839
|
+
* @returns {Promise<T | null>} 如果默认导出继承自AbstractClass则返回该实例,否则返回null
|
|
840
|
+
*/
|
|
841
|
+
declare function saveAndLoadModule<T>(jsContent: string, modulesDir: string, fileName: string, AbstractClass: AbstractConstructor<T>): Promise<T | null>;
|
|
842
|
+
/**
|
|
843
|
+
* 解析 JavaScript 代码中的 class 变量 name 的值
|
|
844
|
+
* @param {string} code - 输入的 JavaScript 代码
|
|
845
|
+
* @returns {string|null} - 解析出的 class 的 name 值,或者 null 如果没有找到
|
|
846
|
+
*/
|
|
847
|
+
declare function extractClassName(code: string): string | null;
|
|
848
|
+
//#endregion
|
|
849
|
+
//#region src/utils/kv_history.d.ts
|
|
850
|
+
interface KVStore {
|
|
851
|
+
get(key: string): Promise<string>;
|
|
852
|
+
set(key: string, value: string): Promise<void>;
|
|
853
|
+
delete(key: string): Promise<void>;
|
|
854
|
+
}
|
|
855
|
+
declare class KVHistoryManager implements HistoryManager {
|
|
856
|
+
private kvStore;
|
|
857
|
+
name: string;
|
|
858
|
+
constructor(kvStore: KVStore, name: string);
|
|
859
|
+
private getConversationKey;
|
|
860
|
+
private getMessageKey;
|
|
861
|
+
saveHistory(message: HistoryMessage, conversationId: string): Promise<void>;
|
|
862
|
+
getHistory(messageId?: string, conversationId?: string): Promise<HistoryMessage[]>;
|
|
863
|
+
deleteConversation(conversationId: string): Promise<void>;
|
|
864
|
+
getOneHistory(messageId: string, conversationId: string): Promise<HistoryMessage | undefined>;
|
|
865
|
+
}
|
|
866
|
+
//#endregion
|
|
867
|
+
//#region src/utils/history.d.ts
|
|
868
|
+
type HistoryCache = Map<string, Map<string, HistoryMessage>>;
|
|
869
|
+
declare class InMemoryHistoryManager extends AbstractHistoryManager {
|
|
870
|
+
cache: HistoryCache;
|
|
871
|
+
constructor();
|
|
872
|
+
saveHistory(message: HistoryMessage, conversationId: string): Promise<void>;
|
|
873
|
+
getHistory(messageId?: string, conversationId?: string): Promise<HistoryMessage[]>;
|
|
874
|
+
deleteConversation(conversationId: string): Promise<void>;
|
|
875
|
+
getOneHistory(messageId: string, conversationId: string): Promise<HistoryMessage | undefined>;
|
|
876
|
+
name: string;
|
|
877
|
+
}
|
|
878
|
+
//#endregion
|
|
879
|
+
//#region src/utils/config.d.ts
|
|
880
|
+
declare const DEFAULT_HOST = "127.0.0.1";
|
|
881
|
+
declare const DEFAULT_PORT = 48370;
|
|
882
|
+
declare class GlobalConfig extends EventEmitter {
|
|
883
|
+
/**
|
|
884
|
+
* JWT signing secret (used for JWT verification in middleware)
|
|
885
|
+
*/
|
|
886
|
+
private authKey;
|
|
887
|
+
/**
|
|
888
|
+
* Listen host
|
|
889
|
+
*/
|
|
890
|
+
private host;
|
|
891
|
+
/**
|
|
892
|
+
* Listen port
|
|
893
|
+
*/
|
|
894
|
+
private port;
|
|
895
|
+
/**
|
|
896
|
+
* Debug mode
|
|
897
|
+
*/
|
|
898
|
+
private debug;
|
|
899
|
+
/**
|
|
900
|
+
* Login validity period in seconds
|
|
901
|
+
*/
|
|
902
|
+
private loginValidTime;
|
|
903
|
+
/**
|
|
904
|
+
* Access token — the actual token used for URL-based auth
|
|
905
|
+
*/
|
|
906
|
+
private accessToken;
|
|
907
|
+
setAuthKey(key: string): void;
|
|
908
|
+
setHost(host: string): void;
|
|
909
|
+
setPort(port: number): void;
|
|
910
|
+
setDebug(debug: boolean): void;
|
|
911
|
+
setLoginValidTime(time: number): void;
|
|
912
|
+
setAccessToken(token: string): void;
|
|
913
|
+
getAuthKey(): string;
|
|
914
|
+
getHost(): string;
|
|
915
|
+
getPort(): number;
|
|
916
|
+
getDebug(): boolean;
|
|
917
|
+
getLoginValidTime(): number;
|
|
918
|
+
getAccessToken(): string;
|
|
919
|
+
static generateRandomToken(length?: number): string;
|
|
920
|
+
}
|
|
921
|
+
//#endregion
|
|
922
|
+
//#region src/utils/auth.d.ts
|
|
923
|
+
declare class FrontEndAuthHandler {
|
|
924
|
+
private token;
|
|
925
|
+
constructor();
|
|
926
|
+
generateToken(timeout?: number, onetime?: boolean): string;
|
|
927
|
+
validateToken(token: string): boolean;
|
|
928
|
+
/**
|
|
929
|
+
* Generate a static random key for JWT signing (persistent across logins)
|
|
930
|
+
*/
|
|
931
|
+
static generateStaticKey(): string;
|
|
932
|
+
/**
|
|
933
|
+
* Generate JWT with configurable expiration
|
|
934
|
+
*/
|
|
935
|
+
static generateJWT(key: string, expiresInSec?: number): string;
|
|
936
|
+
static validateJWT(key: string, token: string): boolean;
|
|
937
|
+
}
|
|
938
|
+
//#endregion
|
|
939
|
+
//#region src/utils/logger.d.ts
|
|
940
|
+
declare function getLogger(): ILogger;
|
|
941
|
+
//#endregion
|
|
942
|
+
//#region src/rag/vector.d.ts
|
|
943
|
+
/**
|
|
944
|
+
* generated by claude-3-5-sonnet
|
|
945
|
+
*/
|
|
946
|
+
interface VectorDatabase {
|
|
947
|
+
/**
|
|
948
|
+
* 添加单个向量到数据库
|
|
949
|
+
* @param vector - 要添加的向量,表示为数字数组
|
|
950
|
+
* @param text - 与向量关联的文本
|
|
951
|
+
* @returns 返回添加的向量的唯一标识符
|
|
952
|
+
*/
|
|
953
|
+
addVector(vector: number[], text: string): Promise<string>;
|
|
954
|
+
/**
|
|
955
|
+
* 批量添加多个向量到数据库
|
|
956
|
+
* @param vectors - 要添加的向量数组,每个向量表示为数字数组
|
|
957
|
+
* @param texts - 与向量关联的文本数组,顺序应与向量数组对应
|
|
958
|
+
* @returns 返回添加的向量的唯一标识符数组
|
|
959
|
+
*/
|
|
960
|
+
addVectors(vectors: number[][], texts: string[]): Promise<string[]>;
|
|
961
|
+
/**
|
|
962
|
+
* 搜索与给定查询向量最相似的向量
|
|
963
|
+
* @param queryVector - 查询向量,表示为数字数组
|
|
964
|
+
* @param k - 要返回的最相似向量的数量
|
|
965
|
+
* @returns 返回最相似向量的数组,每个元素包含id、相似度分数和关联文本
|
|
966
|
+
*/
|
|
967
|
+
search(queryVector: number[], k: number): Promise<Array<{
|
|
968
|
+
id: string;
|
|
969
|
+
score: number;
|
|
970
|
+
text: string;
|
|
971
|
+
}>>;
|
|
972
|
+
/**
|
|
973
|
+
* 根据ID获取特定的向量
|
|
974
|
+
* @param id - 向量的唯一标识符
|
|
975
|
+
* @returns 返回包含向量和关联文本的对象,如果未找到则返回null
|
|
976
|
+
*/
|
|
977
|
+
getVector(id: string): Promise<{
|
|
978
|
+
vector: number[];
|
|
979
|
+
text: string;
|
|
980
|
+
} | null>;
|
|
981
|
+
/**
|
|
982
|
+
* 从数据库中删除指定ID的向量
|
|
983
|
+
* @param id - 要删除的向量的唯一标识符
|
|
984
|
+
* @returns 返回一个布尔值,表示删除操作是否成功
|
|
985
|
+
*/
|
|
986
|
+
deleteVector(id: string): Promise<boolean>;
|
|
987
|
+
/**
|
|
988
|
+
* 更新数据库中指定ID的向量
|
|
989
|
+
* @param id - 要更新的向量的唯一标识符
|
|
990
|
+
* @param newVector - 新的向量,表示为数字数组
|
|
991
|
+
* @param newText - 新的关联文本
|
|
992
|
+
* @returns 返回一个布尔值,表示更新操作是否成功
|
|
993
|
+
*/
|
|
994
|
+
updateVector(id: string, newVector: number[], newText: string): Promise<boolean>;
|
|
995
|
+
/**
|
|
996
|
+
* 获取数据库中向量的总数
|
|
997
|
+
* @returns 返回数据库中存储的向量总数
|
|
998
|
+
*/
|
|
999
|
+
count(): Promise<number>;
|
|
1000
|
+
/**
|
|
1001
|
+
* 清空数据库中的所有向量
|
|
1002
|
+
* @returns 无返回值
|
|
1003
|
+
*/
|
|
1004
|
+
clear(): Promise<void>;
|
|
1005
|
+
}
|
|
1006
|
+
declare abstract class AbstractVectorDatabase implements VectorDatabase {
|
|
1007
|
+
abstract addVector(vector: number[], text: string): Promise<string>;
|
|
1008
|
+
abstract addVectors(vectors: number[][], texts: string[]): Promise<string[]>;
|
|
1009
|
+
abstract search(queryVector: number[], k: number): Promise<Array<{
|
|
1010
|
+
id: string;
|
|
1011
|
+
score: number;
|
|
1012
|
+
text: string;
|
|
1013
|
+
}>>;
|
|
1014
|
+
abstract getVector(id: string): Promise<{
|
|
1015
|
+
vector: number[];
|
|
1016
|
+
text: string;
|
|
1017
|
+
} | null>;
|
|
1018
|
+
abstract deleteVector(id: string): Promise<boolean>;
|
|
1019
|
+
abstract clear(): Promise<void>;
|
|
1020
|
+
abstract count(): Promise<number>;
|
|
1021
|
+
abstract updateVector(id: string, newVector: number[], newText: string): Promise<boolean>;
|
|
1022
|
+
}
|
|
1023
|
+
//#endregion
|
|
1024
|
+
//#region src/rag/manager.d.ts
|
|
1025
|
+
declare class RAGManager {
|
|
1026
|
+
private vectorDb;
|
|
1027
|
+
private vectorizer;
|
|
1028
|
+
constructor(vectorDb: VectorDatabase, vectorizer: Vectorizer);
|
|
1029
|
+
/**
|
|
1030
|
+
* 添加文档到 RAG 系统
|
|
1031
|
+
* @param document 文档文本
|
|
1032
|
+
* @param maxNum 最大分割数
|
|
1033
|
+
*/
|
|
1034
|
+
addDocument(document: string, maxNum?: number): Promise<void>;
|
|
1035
|
+
/**
|
|
1036
|
+
* 执行 RAG 查询
|
|
1037
|
+
* @param query 查询文本
|
|
1038
|
+
* @param k 返回结果数量
|
|
1039
|
+
* @returns 查询结果
|
|
1040
|
+
*/
|
|
1041
|
+
query(query: string, k: number): Promise<RAGResult[]>;
|
|
1042
|
+
/**
|
|
1043
|
+
* 聚合检索出来的结果
|
|
1044
|
+
* @param results 文本形式
|
|
1045
|
+
* @param filterScore 过滤的最低分数
|
|
1046
|
+
*/
|
|
1047
|
+
getAggregatedResults(results: RAGResult[], filterScore?: number): string;
|
|
1048
|
+
}
|
|
1049
|
+
//#endregion
|
|
1050
|
+
//#region src/rag/impl/VectorizerImpl.d.ts
|
|
1051
|
+
declare class VectorizerImpl implements Vectorizer {
|
|
1052
|
+
private client;
|
|
1053
|
+
private model;
|
|
1054
|
+
private dimensions;
|
|
1055
|
+
constructor(client: IClient, model: string, dimensions: number);
|
|
1056
|
+
textToVector(text: string): Promise<number[]>;
|
|
1057
|
+
batchTextToVector(texts: string[]): Promise<number[][]>;
|
|
1058
|
+
}
|
|
1059
|
+
//#endregion
|
|
1060
|
+
//#region src/types/document.d.ts
|
|
1061
|
+
type ParserType = 'docx' | 'xlsx' | 'pptx' | 'pdf' | 'txt' | 'other';
|
|
1062
|
+
type TypePredicate<T> = (value: unknown) => value is T;
|
|
1063
|
+
interface Parser<T> {
|
|
1064
|
+
type: ParserType;
|
|
1065
|
+
supportedExtensions: ValidExtension[];
|
|
1066
|
+
isCompatibleType: TypePredicate<T>;
|
|
1067
|
+
parse(document: T): Promise<string>;
|
|
1068
|
+
}
|
|
1069
|
+
type ValidExtension = `.${string}` | string;
|
|
1070
|
+
type FilePath = `${string}${ValidExtension}`;
|
|
1071
|
+
declare class DocumentPathParser implements Parser<FilePath> {
|
|
1072
|
+
isCompatibleType(value: unknown): value is string;
|
|
1073
|
+
supportedExtensions: ValidExtension[];
|
|
1074
|
+
type: ParserType;
|
|
1075
|
+
parse(document: FilePath): Promise<string>;
|
|
1076
|
+
}
|
|
1077
|
+
declare class DocumentFileParser implements Parser<Buffer> {
|
|
1078
|
+
isCompatibleType(value: unknown): value is Buffer;
|
|
1079
|
+
supportedExtensions: ValidExtension[];
|
|
1080
|
+
type: ParserType;
|
|
1081
|
+
parse(document: Buffer): Promise<string>;
|
|
1082
|
+
}
|
|
1083
|
+
//#endregion
|
|
1084
|
+
//#region src/rag/impl/PdfParser.d.ts
|
|
1085
|
+
declare class PdfFileParser extends DocumentPathParser {
|
|
1086
|
+
constructor();
|
|
1087
|
+
private initPromise;
|
|
1088
|
+
valid: boolean;
|
|
1089
|
+
type: ParserType;
|
|
1090
|
+
supportedExtensions: string[];
|
|
1091
|
+
private initializePdfParse;
|
|
1092
|
+
ready(): Promise<void>;
|
|
1093
|
+
parse(documentPath: string): Promise<string>;
|
|
1094
|
+
}
|
|
1095
|
+
declare class PdfBufferParser extends DocumentFileParser {
|
|
1096
|
+
constructor();
|
|
1097
|
+
private initPromise;
|
|
1098
|
+
private initializePdfParse;
|
|
1099
|
+
valid: boolean;
|
|
1100
|
+
type: ParserType;
|
|
1101
|
+
supportedExtensions: string[];
|
|
1102
|
+
ready(): Promise<void>;
|
|
1103
|
+
parse(buffer: Buffer): Promise<string>;
|
|
1104
|
+
}
|
|
1105
|
+
//#endregion
|
|
1106
|
+
//#region src/rag/impl/DocxParser.d.ts
|
|
1107
|
+
declare class DocxFileParser extends DocumentPathParser {
|
|
1108
|
+
constructor();
|
|
1109
|
+
type: ParserType;
|
|
1110
|
+
supportedExtensions: string[];
|
|
1111
|
+
parse(documentPath: string): Promise<string>;
|
|
1112
|
+
}
|
|
1113
|
+
declare class DocxBufferParser extends DocumentFileParser {
|
|
1114
|
+
constructor();
|
|
1115
|
+
type: ParserType;
|
|
1116
|
+
supportedExtensions: string[];
|
|
1117
|
+
parse(buffer: Buffer): Promise<string>;
|
|
1118
|
+
}
|
|
1119
|
+
//#endregion
|
|
1120
|
+
//#region src/rag/impl/PureTextParser.d.ts
|
|
1121
|
+
declare class PureTextFileParser extends DocumentPathParser {
|
|
1122
|
+
constructor();
|
|
1123
|
+
type: ParserType;
|
|
1124
|
+
supportedExtensions: string[];
|
|
1125
|
+
parse(documentPath: string): Promise<string>;
|
|
1126
|
+
}
|
|
1127
|
+
declare class PureTextBufferParser extends DocumentFileParser {
|
|
1128
|
+
constructor();
|
|
1129
|
+
type: ParserType;
|
|
1130
|
+
supportedExtensions: string[];
|
|
1131
|
+
parse(buffer: Buffer): Promise<string>;
|
|
1132
|
+
}
|
|
1133
|
+
//#endregion
|
|
1134
|
+
//#region src/rag/text.d.ts
|
|
1135
|
+
declare class TextProcessor {
|
|
1136
|
+
private static readonly punctuationRegex;
|
|
1137
|
+
private static readonly stopWords;
|
|
1138
|
+
/**
|
|
1139
|
+
* 将文本分割成小段落
|
|
1140
|
+
* @param text 输入的长文本
|
|
1141
|
+
* @param maxLength 每个段落的最大长度
|
|
1142
|
+
* @returns 分割后的段落数组
|
|
1143
|
+
*/
|
|
1144
|
+
static splitIntoChunks(text: string, maxLength: number): string[];
|
|
1145
|
+
/**
|
|
1146
|
+
* 清理和标准化文本
|
|
1147
|
+
* @param text 输入文本
|
|
1148
|
+
* @returns 清理后的文本
|
|
1149
|
+
*/
|
|
1150
|
+
static cleanText(text: string): string;
|
|
1151
|
+
/**
|
|
1152
|
+
* 简单的分词(按空格分割英文,按字符分割中文)
|
|
1153
|
+
* @param text 输入文本
|
|
1154
|
+
* @returns 分词后的数组
|
|
1155
|
+
*/
|
|
1156
|
+
static tokenize(text: string): string[];
|
|
1157
|
+
/**
|
|
1158
|
+
* 从文本中移除停用词
|
|
1159
|
+
* @param text 输入文本
|
|
1160
|
+
* @returns 移除停用词后的文本
|
|
1161
|
+
*/
|
|
1162
|
+
static removeStopWords(text: string): string;
|
|
1163
|
+
/**
|
|
1164
|
+
* 提取文本中的关键词(基于简单频率)
|
|
1165
|
+
* @param text 输入文本
|
|
1166
|
+
* @param topN 返回的关键词数量
|
|
1167
|
+
* @returns 关键词数组
|
|
1168
|
+
*/
|
|
1169
|
+
static extractKeywords(text: string, topN?: number): string[];
|
|
1170
|
+
/**
|
|
1171
|
+
* 计算两个文本之间的简单相似度
|
|
1172
|
+
* @param text1 第一个文本
|
|
1173
|
+
* @param text2 第二个文本
|
|
1174
|
+
* @returns 相似度分数(0-1之间)
|
|
1175
|
+
*/
|
|
1176
|
+
static simpleSimilarity(text1: string, text2: string): number;
|
|
1177
|
+
}
|
|
1178
|
+
//#endregion
|
|
1179
|
+
//#region src/core/chaite.d.ts
|
|
1180
|
+
/**
|
|
1181
|
+
* 入口
|
|
1182
|
+
*/
|
|
1183
|
+
declare class Chaite extends EventEmitter {
|
|
1184
|
+
private channelsManager;
|
|
1185
|
+
private toolsManager;
|
|
1186
|
+
private processorsManager;
|
|
1187
|
+
private chatPresetManager;
|
|
1188
|
+
private toolsGroupManager;
|
|
1189
|
+
private triggerManager;
|
|
1190
|
+
private userModeSelector;
|
|
1191
|
+
private userStateStorage;
|
|
1192
|
+
private historyManager;
|
|
1193
|
+
private logger;
|
|
1194
|
+
private static instance;
|
|
1195
|
+
private ragManager?;
|
|
1196
|
+
private frontendAuthHandler;
|
|
1197
|
+
private globalConfig?;
|
|
1198
|
+
private expressApp?;
|
|
1199
|
+
private constructor();
|
|
1200
|
+
static init(channelsManager: ChannelsManager, toolsManager: ToolManager, processorsManager: ProcessorsManager, chatPresetManager: ChatPresetManager, toolsGroupManager: ToolsGroupManager, triggerManager: TriggerManager<TriggerDTO>, userModeSelector: UserModeSelector, userStateStorage: BasicStorage<UserState>, historyManager: HistoryManager | undefined, logger: ILogger): Chaite;
|
|
1201
|
+
static getInstance(): Chaite;
|
|
1202
|
+
onUpdateCustomConfig: (config: CustomConfig) => Promise<CustomConfig>;
|
|
1203
|
+
setUpdateConfigCallback(callback: (config: CustomConfig) => Promise<CustomConfig>): void;
|
|
1204
|
+
getCustomConfig: () => Promise<CustomConfig>;
|
|
1205
|
+
setGetConfig(callback: () => Promise<CustomConfig>): void;
|
|
1206
|
+
setRAGManager(ragManager: RAGManager): void;
|
|
1207
|
+
getRAGManager(): RAGManager | undefined;
|
|
1208
|
+
setGlobalConfig(globalConfig: GlobalConfig): void;
|
|
1209
|
+
getGlobalConfig(): GlobalConfig | undefined;
|
|
1210
|
+
setFrontendAuthHandler(frontendAuthHandler: FrontEndAuthHandler): void;
|
|
1211
|
+
getFrontendAuthHandler(): FrontEndAuthHandler;
|
|
1212
|
+
/**
|
|
1213
|
+
* 对话
|
|
1214
|
+
* @param message
|
|
1215
|
+
* @param e
|
|
1216
|
+
* @param options 包含对话id和消息id
|
|
1217
|
+
*/
|
|
1218
|
+
sendMessage(message: UserMessage, e: EventMessage, options: SendMessageOption & {
|
|
1219
|
+
chatPreset?: ChatPreset;
|
|
1220
|
+
}): Promise<ModelResponse>;
|
|
1221
|
+
getChannelsManager(): ChannelsManager;
|
|
1222
|
+
setChannelsManager(channelsManager: ChannelsManager): void;
|
|
1223
|
+
getToolsManager(): ToolManager;
|
|
1224
|
+
setToolsManager(toolsManager: ToolManager): void;
|
|
1225
|
+
getProcessorsManager(): ProcessorsManager;
|
|
1226
|
+
setProcessorsManager(processorsManager: ProcessorsManager): void;
|
|
1227
|
+
getChatPresetManager(): ChatPresetManager;
|
|
1228
|
+
setChatPresetManager(chatPresetManager: ChatPresetManager): void;
|
|
1229
|
+
getToolsGroupManager(): ToolsGroupManager;
|
|
1230
|
+
setToolsGroupManager(toolsGroupManager: ToolsGroupManager): void;
|
|
1231
|
+
getTriggerManager(): TriggerManager<TriggerDTO>;
|
|
1232
|
+
setTriggerManager(triggerManager: TriggerManager<TriggerDTO>): void;
|
|
1233
|
+
getUserModeSelector(): UserModeSelector;
|
|
1234
|
+
setUserModeSelector(userModeSelector: UserModeSelector): void;
|
|
1235
|
+
getUserStateStorage(): BasicStorage<UserState>;
|
|
1236
|
+
setUserStateStorage(userStateStorage: BasicStorage<UserState>): void;
|
|
1237
|
+
getHistoryManager(): HistoryManager;
|
|
1238
|
+
setHistoryManager(historyManager: HistoryManager): void;
|
|
1239
|
+
getLogger(): ILogger;
|
|
1240
|
+
setLogger(logger: ILogger): void;
|
|
1241
|
+
/**
|
|
1242
|
+
* @deprecated Cloud service removed — local-only mode
|
|
1243
|
+
*/
|
|
1244
|
+
setCloudService(_cloudServiceBaseUrl: string): void;
|
|
1245
|
+
/**
|
|
1246
|
+
* @deprecated Cloud service removed — local-only mode
|
|
1247
|
+
*/
|
|
1248
|
+
auth(_apiKey: string): Promise<void>;
|
|
1249
|
+
getExpressApp(): Application | undefined;
|
|
1250
|
+
runApiServer(configureApp?: (app: Application) => void): Application;
|
|
1251
|
+
}
|
|
1252
|
+
//#endregion
|
|
1253
|
+
//#region src/types/common.d.ts
|
|
1254
|
+
declare const MultipleKeyStrategyChoice: {
|
|
1255
|
+
RANDOM: MultipleKeyStrategy;
|
|
1256
|
+
ROUND_ROBIN: MultipleKeyStrategy;
|
|
1257
|
+
CONVERSATION_HASH: MultipleKeyStrategy;
|
|
1258
|
+
};
|
|
1259
|
+
type MultipleKeyStrategy = 'random' | 'round-robin' | 'conversation-hash';
|
|
1260
|
+
declare class BaseClientOptions implements Serializable, DeSerializable<BaseClientOptions>, Wait {
|
|
1261
|
+
features: Feature[];
|
|
1262
|
+
tools: Tool[];
|
|
1263
|
+
baseUrl: string;
|
|
1264
|
+
apiKey: string | string[];
|
|
1265
|
+
multipleKeyStrategy?: MultipleKeyStrategy;
|
|
1266
|
+
proxy?: string;
|
|
1267
|
+
historyManager: HistoryManager;
|
|
1268
|
+
logger?: ILogger;
|
|
1269
|
+
postProcessorIds?: string[];
|
|
1270
|
+
private postProcessors?;
|
|
1271
|
+
preProcessorIds?: string[];
|
|
1272
|
+
private preProcessors?;
|
|
1273
|
+
constructor(options?: Partial<BaseClientOptions>);
|
|
1274
|
+
static create(options: BaseClientOptions | Partial<BaseClientOptions>): BaseClientOptions;
|
|
1275
|
+
private initPromise;
|
|
1276
|
+
ready(): Promise<void>;
|
|
1277
|
+
setHistoryManager(historyManager: HistoryManager): void;
|
|
1278
|
+
setLogger(logger: ILogger): void;
|
|
1279
|
+
getPostProcessors(): PostProcessor[];
|
|
1280
|
+
getPreProcessors(): PreProcessor[];
|
|
1281
|
+
init(): Promise<void>;
|
|
1282
|
+
toString(): string;
|
|
1283
|
+
fromString(str: string): BaseClientOptions;
|
|
1284
|
+
}
|
|
1285
|
+
interface ILogger {
|
|
1286
|
+
debug(msg: object | string, ...args: never[]): void;
|
|
1287
|
+
info(msg: object | string, ...args: never[]): void;
|
|
1288
|
+
warn(msg: object | string, ...args: never[]): void;
|
|
1289
|
+
error(msg: object | string, ...args: never[]): void;
|
|
1290
|
+
}
|
|
1291
|
+
declare const DefaultLogger: {
|
|
1292
|
+
readonly name: string;
|
|
1293
|
+
readonly enableColors: boolean;
|
|
1294
|
+
formatDate(): string;
|
|
1295
|
+
formatMessage(level: string, msg: object | string, args: never[]): string;
|
|
1296
|
+
debug(msg: object | string, ...args: never[]): void;
|
|
1297
|
+
error(msg: object | string, ...args: never[]): void;
|
|
1298
|
+
info(msg: object | string, ...args: never[]): void;
|
|
1299
|
+
warn(msg: object | string, ...args: never[]): void;
|
|
1300
|
+
};
|
|
1301
|
+
declare class ChaiteContext {
|
|
1302
|
+
constructor(logger?: ILogger);
|
|
1303
|
+
logger?: ILogger;
|
|
1304
|
+
chaite: Chaite;
|
|
1305
|
+
private options?;
|
|
1306
|
+
private historyMessages?;
|
|
1307
|
+
private event?;
|
|
1308
|
+
private data?;
|
|
1309
|
+
private client?;
|
|
1310
|
+
setHistoryMessages(histories: HistoryMessage[]): void;
|
|
1311
|
+
getHistoryMessages(): HistoryMessage[] | undefined;
|
|
1312
|
+
setOptions(options: SendMessageOption): void;
|
|
1313
|
+
getOptions(): SendMessageOption | undefined;
|
|
1314
|
+
setEvent(event: EventMessage): void;
|
|
1315
|
+
setChaite(chaite: Chaite): void;
|
|
1316
|
+
getEvent(): EventMessage | undefined;
|
|
1317
|
+
setData(data: Record<string, any>): void;
|
|
1318
|
+
getData(): Record<string, any> | undefined;
|
|
1319
|
+
setClient(client: AbstractClient): void;
|
|
1320
|
+
getClient(): AbstractClient | undefined;
|
|
1321
|
+
getChaite(): Chaite;
|
|
1322
|
+
}
|
|
1323
|
+
interface Into<U> {
|
|
1324
|
+
into(): U;
|
|
1325
|
+
}
|
|
1326
|
+
interface From<T> {
|
|
1327
|
+
from(value: T): this;
|
|
1328
|
+
}
|
|
1329
|
+
interface RAGResult {
|
|
1330
|
+
content: string;
|
|
1331
|
+
score: number;
|
|
1332
|
+
}
|
|
1333
|
+
interface Vectorizer {
|
|
1334
|
+
/**
|
|
1335
|
+
* 将文本转换为向量
|
|
1336
|
+
* @param text 输入文本
|
|
1337
|
+
* @returns 文本的向量表示
|
|
1338
|
+
*/
|
|
1339
|
+
textToVector(text: string): Promise<number[]>;
|
|
1340
|
+
/**
|
|
1341
|
+
* 批量将文本转换为向量
|
|
1342
|
+
* @param texts 输入文本数组
|
|
1343
|
+
* @returns 文本向量数组
|
|
1344
|
+
*/
|
|
1345
|
+
batchTextToVector(texts: string[]): Promise<number[][]>;
|
|
1346
|
+
}
|
|
1347
|
+
type CloudAPIType = 'tool' | 'processor' | 'chat-preset' | 'channel' | 'tool-group' | 'trigger';
|
|
1348
|
+
type CustomConfigValueType = string | number | boolean | object | undefined | null | CustomConfigValueType[];
|
|
1349
|
+
type CustomConfig = Record<string, CustomConfigValueType | Record<string, CustomConfigValueType>>;
|
|
1350
|
+
//#endregion
|
|
1351
|
+
//#region src/types/tools.d.ts
|
|
1352
|
+
interface Function {
|
|
1353
|
+
name: string;
|
|
1354
|
+
description: string;
|
|
1355
|
+
parameters: Parameter;
|
|
1356
|
+
}
|
|
1357
|
+
interface Parameter {
|
|
1358
|
+
type: 'object';
|
|
1359
|
+
properties: Record<string, Property>;
|
|
1360
|
+
required: string[];
|
|
1361
|
+
}
|
|
1362
|
+
interface Property {
|
|
1363
|
+
type: 'string' | 'number' | 'boolean' | 'array' | 'object';
|
|
1364
|
+
description: string | null;
|
|
1365
|
+
}
|
|
1366
|
+
interface Tool {
|
|
1367
|
+
name: Function['name'];
|
|
1368
|
+
type: 'function';
|
|
1369
|
+
function: Function;
|
|
1370
|
+
run(args: Record<string, ArgumentValue | Record<string, ArgumentValue>>, chaiteContext?: ChaiteContext): Promise<string>;
|
|
1371
|
+
}
|
|
1372
|
+
declare class ToolDTO extends AbstractShareable<ToolDTO> {
|
|
1373
|
+
constructor(params: Partial<ToolDTO>);
|
|
1374
|
+
status: 'enabled' | 'disabled';
|
|
1375
|
+
permission: 'public' | 'private' | 'onetime';
|
|
1376
|
+
toFormatedString(_verbose?: boolean): string;
|
|
1377
|
+
fromString(str: string): ToolDTO;
|
|
1378
|
+
}
|
|
1379
|
+
/**
|
|
1380
|
+
* 工具组,与若干个工具关联
|
|
1381
|
+
*/
|
|
1382
|
+
interface ToolsGroup {
|
|
1383
|
+
id: string;
|
|
1384
|
+
name: string;
|
|
1385
|
+
description: string;
|
|
1386
|
+
toolIds: string[];
|
|
1387
|
+
isDefault?: boolean;
|
|
1388
|
+
}
|
|
1389
|
+
declare class ToolsGroupDTO extends AbstractShareable<ToolsGroupDTO> implements ToolsGroup {
|
|
1390
|
+
constructor(params: Partial<ToolsGroupDTO>);
|
|
1391
|
+
toolIds: string[];
|
|
1392
|
+
isDefault?: boolean | undefined;
|
|
1393
|
+
toFormatedString(_verbose?: boolean): string;
|
|
1394
|
+
}
|
|
1395
|
+
/**
|
|
1396
|
+
* js写的工具可以继承这个抽象类
|
|
1397
|
+
*/
|
|
1398
|
+
declare abstract class CustomTool implements Tool {
|
|
1399
|
+
constructor();
|
|
1400
|
+
type: "function";
|
|
1401
|
+
function: Function;
|
|
1402
|
+
run(_args: Record<string, ArgumentValue | Record<string, ArgumentValue>>, _context?: ChaiteContext): Promise<string>;
|
|
1403
|
+
name: Function['name'];
|
|
1404
|
+
}
|
|
1405
|
+
//#endregion
|
|
1406
|
+
//#region src/types/channel.d.ts
|
|
1407
|
+
declare class ChannelStatistics implements Serializable, DeSerializable<ChannelStatistics> {
|
|
1408
|
+
callTimes?: number;
|
|
1409
|
+
useToken?: number;
|
|
1410
|
+
perModel: Record<string, Omit<ChannelStatistics, 'perModel'>>;
|
|
1411
|
+
fromString(str: string): ChannelStatistics;
|
|
1412
|
+
toString(): string;
|
|
1413
|
+
}
|
|
1414
|
+
interface ChannelsLoadBalancer {
|
|
1415
|
+
getChannel(model: string, channels: Channel[]): Promise<Channel | null>;
|
|
1416
|
+
getChannels(model: string, channels: Channel[], totalQuantity: number): Promise<{
|
|
1417
|
+
channel: Channel;
|
|
1418
|
+
quantity: number;
|
|
1419
|
+
}[]>;
|
|
1420
|
+
}
|
|
1421
|
+
//#endregion
|
|
1422
|
+
//#region src/types/storage.d.ts
|
|
1423
|
+
/**
|
|
1424
|
+
* 基本存储接口
|
|
1425
|
+
*/
|
|
1426
|
+
interface BasicStorage<T> {
|
|
1427
|
+
getName(): string;
|
|
1428
|
+
getItem(key: string): Promise<T | null>;
|
|
1429
|
+
setItem(key: string, value: T): Promise<string>;
|
|
1430
|
+
removeItem(key: string): Promise<void>;
|
|
1431
|
+
listItems(): Promise<T[]>;
|
|
1432
|
+
listItemsByEqFilter(filter: Record<string, unknown>): Promise<T[]>;
|
|
1433
|
+
listItemsByInQuery(query: Array<{
|
|
1434
|
+
field: string;
|
|
1435
|
+
values: unknown[];
|
|
1436
|
+
}>): Promise<T[]>;
|
|
1437
|
+
clear(): Promise<void>;
|
|
1438
|
+
}
|
|
1439
|
+
declare abstract class ChaiteStorage<T> implements BasicStorage<T> {
|
|
1440
|
+
abstract getItem(key: string): Promise<T | null>;
|
|
1441
|
+
abstract setItem(key: string, value: T): Promise<string>;
|
|
1442
|
+
abstract removeItem(key: string): Promise<void>;
|
|
1443
|
+
abstract listItems(): Promise<T[]>;
|
|
1444
|
+
abstract listItemsByEqFilter(filter: Record<string, unknown>): Promise<T[]>;
|
|
1445
|
+
abstract listItemsByInQuery(query: Array<{
|
|
1446
|
+
field: string;
|
|
1447
|
+
values: unknown[];
|
|
1448
|
+
}>): Promise<T[]>;
|
|
1449
|
+
abstract clear(): Promise<void>;
|
|
1450
|
+
getName(): string;
|
|
1451
|
+
}
|
|
1452
|
+
interface UserState {
|
|
1453
|
+
userId: number | string;
|
|
1454
|
+
nickname?: string;
|
|
1455
|
+
card?: string;
|
|
1456
|
+
conversations: Conversation[];
|
|
1457
|
+
settings: UserSettings;
|
|
1458
|
+
current: {
|
|
1459
|
+
conversationId?: string;
|
|
1460
|
+
messageId?: string;
|
|
1461
|
+
};
|
|
1462
|
+
}
|
|
1463
|
+
interface Conversation {
|
|
1464
|
+
id: string;
|
|
1465
|
+
name: string;
|
|
1466
|
+
lastMessageId: string;
|
|
1467
|
+
}
|
|
1468
|
+
interface UserSettings {
|
|
1469
|
+
preset: string;
|
|
1470
|
+
model: string;
|
|
1471
|
+
temperature: number;
|
|
1472
|
+
maxToken: number;
|
|
1473
|
+
systemOverride: string;
|
|
1474
|
+
enableReasoning: boolean;
|
|
1475
|
+
reasoningEffort: 'high' | 'medium' | 'low' | 'minimal';
|
|
1476
|
+
reasoningBudgetTokens: number;
|
|
1477
|
+
toolChoice: ToolChoice;
|
|
1478
|
+
}
|
|
1479
|
+
//#endregion
|
|
1480
|
+
//#region src/types/server.d.ts
|
|
1481
|
+
declare class ChaiteResponse<T> {
|
|
1482
|
+
private code;
|
|
1483
|
+
private data;
|
|
1484
|
+
private message;
|
|
1485
|
+
constructor(code: number, data: T, message: string);
|
|
1486
|
+
static ok<T>(data: T): ChaiteResponse<T>;
|
|
1487
|
+
static okm<T>(data: T, msg: string): ChaiteResponse<T>;
|
|
1488
|
+
static fail<T>(data: T, msg: string): ChaiteResponse<T>;
|
|
1489
|
+
static failc<T>(data: T, msg: string, code: number): ChaiteResponse<T>;
|
|
1490
|
+
}
|
|
1491
|
+
//#endregion
|
|
1492
|
+
//#region src/types/trigger.d.ts
|
|
1493
|
+
declare class TriggerDTO extends AbstractShareable<TriggerDTO> {
|
|
1494
|
+
constructor(params: Partial<TriggerDTO>);
|
|
1495
|
+
status: 'enabled' | 'disabled';
|
|
1496
|
+
isOneTime?: boolean;
|
|
1497
|
+
fromString(str: string): TriggerDTO;
|
|
1498
|
+
toFormatedString(verbose?: boolean): string;
|
|
1499
|
+
}
|
|
1500
|
+
interface Trigger {
|
|
1501
|
+
name: string;
|
|
1502
|
+
isOneTime?: boolean;
|
|
1503
|
+
register(context: ChaiteContext): Promise<void>;
|
|
1504
|
+
unregister(): Promise<void>;
|
|
1505
|
+
queryLLM(message: UserMessage, options: SendMessageOption & {
|
|
1506
|
+
chatPreset?: ChatPreset;
|
|
1507
|
+
}): Promise<ModelResponse>;
|
|
1508
|
+
}
|
|
1509
|
+
declare abstract class BaseTrigger implements Trigger {
|
|
1510
|
+
name: string;
|
|
1511
|
+
isOneTime?: boolean;
|
|
1512
|
+
private triggerExecuted;
|
|
1513
|
+
constructor(params: {
|
|
1514
|
+
name: string;
|
|
1515
|
+
isOneTime?: boolean;
|
|
1516
|
+
});
|
|
1517
|
+
protected abstract registerImpl(context: ChaiteContext): Promise<void>;
|
|
1518
|
+
protected abstract unregisterImpl(): Promise<void>;
|
|
1519
|
+
register(context: ChaiteContext): Promise<void>;
|
|
1520
|
+
unregister(): Promise<void>;
|
|
1521
|
+
protected checkOneTimeAndCleanup(): Promise<boolean>;
|
|
1522
|
+
protected triggerAction(action: () => Promise<void>): Promise<void>;
|
|
1523
|
+
queryLLM(message: UserMessage, options: SendMessageOption & {
|
|
1524
|
+
chatPreset?: ChatPreset;
|
|
1525
|
+
}): Promise<ModelResponse>;
|
|
1526
|
+
}
|
|
1527
|
+
declare abstract class CronTrigger extends BaseTrigger {
|
|
1528
|
+
protected cronExpression: string;
|
|
1529
|
+
protected cronJob?: Job;
|
|
1530
|
+
constructor(params: {
|
|
1531
|
+
name: string;
|
|
1532
|
+
description: string;
|
|
1533
|
+
cronExpression: string;
|
|
1534
|
+
isOneTime?: boolean;
|
|
1535
|
+
});
|
|
1536
|
+
protected registerImpl(context: ChaiteContext): Promise<void>;
|
|
1537
|
+
protected unregisterImpl(): Promise<void>;
|
|
1538
|
+
unregister(): Promise<void>;
|
|
1539
|
+
protected abstract execute(context: ChaiteContext): Promise<void>;
|
|
1540
|
+
}
|
|
1541
|
+
declare abstract class EventTrigger extends BaseTrigger {
|
|
1542
|
+
protected bot: EventEmitter;
|
|
1543
|
+
protected eventName: string;
|
|
1544
|
+
protected eventHandler: (...args: any[]) => void;
|
|
1545
|
+
private isRegistered;
|
|
1546
|
+
constructor(params: {
|
|
1547
|
+
id: string;
|
|
1548
|
+
name: string;
|
|
1549
|
+
description: string;
|
|
1550
|
+
eventName: string;
|
|
1551
|
+
bot: EventEmitter;
|
|
1552
|
+
isOneTime?: boolean;
|
|
1553
|
+
});
|
|
1554
|
+
register(context: ChaiteContext): Promise<void>;
|
|
1555
|
+
unregister(): Promise<void>;
|
|
1556
|
+
protected abstract handleEvent(...args: any[]): Promise<void>;
|
|
1557
|
+
}
|
|
1558
|
+
//#endregion
|
|
1559
|
+
//#region src/const/map.d.ts
|
|
1560
|
+
declare const CHANNEL_STATUS_MAP: {
|
|
1561
|
+
enabled: string;
|
|
1562
|
+
disabled: string;
|
|
1563
|
+
};
|
|
1564
|
+
declare const PROCESSOR_TYPE_MAP: {
|
|
1565
|
+
pre: string;
|
|
1566
|
+
post: string;
|
|
1567
|
+
};
|
|
1568
|
+
//#endregion
|
|
1569
|
+
//#region src/version.d.ts
|
|
1570
|
+
declare const VERSION = "1.9.3";
|
|
1571
|
+
//#endregion
|
|
1572
|
+
//#region src/controllers/index.d.ts
|
|
1573
|
+
declare function createApp(configure?: (app: Application) => void): Application;
|
|
1574
|
+
declare function runServer(host: string, port: number, configure?: (app: Application) => void): {
|
|
1575
|
+
app: Application;
|
|
1576
|
+
server: Server;
|
|
1577
|
+
};
|
|
1578
|
+
//#endregion
|
|
1579
|
+
export { AbstractClient, AbstractHistoryManager, AbstractShareable, AbstractUserModeSelector, AbstractVectorDatabase, ArgumentValue, AssistantMessage, AudioContent, BaseClientOptions, BaseTrigger, BasicStorage, CHANNEL_STATUS_MAP, Chaite, ChaiteContext, ChaiteResponse, ChaiteStorage, Channel, ChannelStatistics, ChannelsLoadBalancer, ChannelsManager, ChatPreset, ChatPresetManager, ClaudeClient, ClientType, CloudAPIResponse, CloudAPIType, CloudModel, CloudSharingService, Conversation, CronTrigger, CustomConfig, CustomConfigValueType, CustomTool, DEFAULT_HOST, DEFAULT_PORT, DeSerializable, DefaultChannelLoadBalancer, DefaultCloudService, DefaultLogger, DeveloperMessage, DocumentFileParser, DocumentPathParser, DocxBufferParser, DocxFileParser, EmbeddingOption, EmbeddingResult, EventMessage, EventTrigger, ExecutableSShareableType, ExecutableShareableManager, Feature, FilePath, Filter, From, FrontEndAuthHandler, Function, FunctionCall, GeminiClient, GeminiClientOptions, GlobalConfig, History, HistoryManager, HistoryMessage, IClient, ILogger, IMessage, ImageContent, InMemoryHistoryManager, Into, KVHistoryManager, KVStore, MessageContent, ModelResponse, ModelResponseChunk, ModelUsage, MultipleKeyStrategy, MultipleKeyStrategyChoice, NonExecutableSShareableType, NonExecutableShareableManager, OpenAIClient, OpenAIClientOptions, PROCESSOR_TYPE_MAP, PaginationResult, Parameter, Parser, ParserType, PdfBufferParser, PdfFileParser, PostProcessor, PreProcessor, Processor, ProcessorDTO, ProcessorsManager, Property, PureTextBufferParser, PureTextFileParser, RAGManager, RAGResult, ReasoningContent, ReasoningPart, Role, SearchOption, SendMessageOption, Serializable, Shareable, SystemMessage, TextContent, TextProcessor, Tool, ToolCall, ToolCallLimitConfig, ToolCallResult, ToolCallResultMessage, ToolChoice, ToolDTO, ToolManager, ToolsGroup, ToolsGroupDTO, ToolsGroupManager, Trigger, TriggerDTO, TriggerManager, User, UserMessage, UserModeSelector, UserSettings, UserState, VERSION, ValidExtension, VectorDatabase, Vectorizer, VectorizerImpl, Wait, asyncLocalStorage, createApp, createClient, extractClassName, getKey, getLogger, runServer, saveAndLoadModule, useEvent };
|