@qwen-code/qwen-code 0.19.11-nightly.20260718.767a32484 → 0.19.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled/qc-helper/docs/configuration/model-providers.md +0 -11
- package/bundled/qc-helper/docs/configuration/settings.md +9 -9
- package/bundled/qc-helper/docs/features/channels/overview.md +11 -24
- package/bundled/qc-helper/docs/qwen-serve-deploy-local.md +7 -42
- package/bundled/qc-helper/docs/qwen-serve.md +40 -66
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
- package/chunks/{MaxSizedBox-ZFHA4QEQ.js → MaxSizedBox-L6TGYDM3.js} +27 -27
- package/chunks/{StandaloneSessionPicker-YRWOQVQA.js → StandaloneSessionPicker-AKEQHU5P.js} +39 -39
- package/chunks/{acpAgent-U2P2IESZ.js → acpAgent-PTNBGJDN.js} +228 -501
- package/chunks/{agent-GQXX6X5Y.js → agent-AJOMOZPJ.js} +24 -24
- package/chunks/{agent-headless-3572NBCK.js → agent-headless-CYKOMAXS.js} +24 -24
- package/chunks/{anthropicContentGenerator-Y65DMM64.js → anthropicContentGenerator-HBRXJSP4.js} +6 -29
- package/chunks/{artifact-tool-WR7I2XON.js → artifact-tool-MIZLXBLF.js} +2 -2
- package/chunks/{askUserQuestion-B4FUTPHD.js → askUserQuestion-XMJVPNWM.js} +44 -2
- package/chunks/{bridge-N5RMGD7G.js → bridge-QKISWPCI.js} +29 -29
- package/chunks/{ca-M3GQQ26D.js → ca-CODEN7TD.js} +2 -2
- package/chunks/{channel-worker-group-HZVJKLGX.js → channel-worker-group-SOUWTFHC.js} +4 -4
- package/chunks/{channel-worker-manager-3WDK4HNS.js → channel-worker-manager-LOVSV3WW.js} +4 -4
- package/chunks/{channel-worker-supervisor-U2W6Q5F7.js → channel-worker-supervisor-XW6MHJBQ.js} +3 -3
- package/chunks/{chunk-3DJY4IFO.js → chunk-2FO5GFKZ.js} +1 -1
- package/chunks/chunk-2HRYPZT5.js +25 -0
- package/chunks/{chunk-LSFVUGXT.js → chunk-2OG646IN.js} +3 -3
- package/chunks/{chunk-OSSDHJDU.js → chunk-2Z5UX4KI.js} +1 -1
- package/chunks/{chunk-O2K6BLPZ.js → chunk-3AYLDB6B.js} +1 -1
- package/chunks/{chunk-MI2V6IWU.js → chunk-3DWIFU7L.js} +1 -1
- package/chunks/{chunk-AEKYFMYE.js → chunk-3M75MSVA.js} +1 -1
- package/chunks/{chunk-HIMIG6PI.js → chunk-4AGTGMCQ.js} +11 -11
- package/chunks/{chunk-V2FRLYHN.js → chunk-4BJVSIS3.js} +2 -2
- package/chunks/{chunk-64XGKNSI.js → chunk-4HUDDSO5.js} +3 -3
- package/chunks/{chunk-FSJGBUQI.js → chunk-4IJMTYCB.js} +28 -817
- package/chunks/{chunk-TYQMGACW.js → chunk-4LD5APFL.js} +0 -1
- package/chunks/{chunk-2XRGFF5K.js → chunk-4ROQY23C.js} +6 -6
- package/chunks/{chunk-KEVDWH3U.js → chunk-574PTLMU.js} +55 -207
- package/chunks/{chunk-Y72B36CP.js → chunk-5CNYZ7TN.js} +7 -7
- package/chunks/{chunk-DPSHAB47.js → chunk-5VWYKIMW.js} +1 -1
- package/chunks/{chunk-OXOEOOQU.js → chunk-5Z452MMD.js} +37 -64
- package/chunks/{chunk-U6OPT4H2.js → chunk-6EDDYPI3.js} +4 -4
- package/chunks/{chunk-XA7OKDWM.js → chunk-6WGZDD67.js} +2 -2
- package/chunks/{chunk-IENO2YAT.js → chunk-6WPJRYLZ.js} +3 -3
- package/chunks/{chunk-PWYLF7SS.js → chunk-6Y6ORE2G.js} +10 -7
- package/chunks/{chunk-UE5TZ55T.js → chunk-7NFB7LBQ.js} +0 -8
- package/chunks/{chunk-3CL5SEDT.js → chunk-7NMU22Q3.js} +6 -6
- package/chunks/{chunk-ECZFTRTP.js → chunk-7ZYHLN67.js} +75 -26
- package/chunks/{chunk-LKR7QQ63.js → chunk-A2HWMJVO.js} +3 -3
- package/chunks/{chunk-SGPFJMRP.js → chunk-ARKANCNX.js} +1 -1
- package/chunks/{chunk-5QRK2VZG.js → chunk-AU3MFJPL.js} +8 -8
- package/chunks/{chunk-R3VWUU2E.js → chunk-AVEOWVOM.js} +1 -1
- package/chunks/{chunk-6ITLKEOZ.js → chunk-BUAXJVNP.js} +3 -3
- package/chunks/{chunk-U4FJ26D2.js → chunk-BXBDC476.js} +2 -2
- package/chunks/{chunk-ZTSDZQZO.js → chunk-BYB3GF2T.js} +3 -130
- package/chunks/{chunk-4JBTZBCW.js → chunk-BYH2JRK3.js} +5 -5
- package/chunks/{chunk-4HCYNDMG.js → chunk-CAHY5ABC.js} +1 -1
- package/chunks/{chunk-JBAQ5BYX.js → chunk-CF5VJRGC.js} +1 -1
- package/chunks/{chunk-3NWYQ7FX.js → chunk-CH2XVB47.js} +2 -2
- package/chunks/{chunk-FHUXCRAF.js → chunk-CITWNIXJ.js} +4 -4
- package/chunks/{chunk-6YIRYY3P.js → chunk-CPFIQVZJ.js} +1 -1
- package/chunks/{chunk-EKG3BHQY.js → chunk-DOPUYNXO.js} +3 -3
- package/chunks/{chunk-VNN3JNYT.js → chunk-F333XEAU.js} +1 -1
- package/chunks/{chunk-FUTHTZVV.js → chunk-FBU7WRZI.js} +1 -1
- package/chunks/{chunk-OBYAX5QZ.js → chunk-FMNYGWOD.js} +6 -6
- package/chunks/{chunk-FZRES4GK.js → chunk-FNX3LGAK.js} +1 -1
- package/chunks/{chunk-F2RR4HO2.js → chunk-FSA7ERJ2.js} +1 -1
- package/chunks/{chunk-OPVIKLKK.js → chunk-FXKOAEXP.js} +14 -14
- package/chunks/{chunk-U2XBPBO3.js → chunk-FYQ22K62.js} +3 -4
- package/chunks/{chunk-KTKETHMY.js → chunk-GLNHPRZT.js} +1 -1
- package/chunks/{chunk-C5NSOSF4.js → chunk-GNBBAQ6J.js} +13 -30
- package/chunks/{chunk-GAQOQMHY.js → chunk-HASK4LMI.js} +6 -6
- package/chunks/{chunk-GG6RSNWS.js → chunk-JD44PNGJ.js} +4 -9
- package/chunks/{chunk-ANRANWVE.js → chunk-JGUT3LWZ.js} +1 -4
- package/chunks/{chunk-336KPNNV.js → chunk-JWICTOXS.js} +2 -2
- package/chunks/{chunk-57RWF6R7.js → chunk-K7VD4XLT.js} +1 -1
- package/chunks/{chunk-XSPFQQRE.js → chunk-KKRTYONM.js} +3 -3
- package/chunks/{chunk-JDIUK2Y3.js → chunk-KSZKSE23.js} +1 -1
- package/chunks/{chunk-HQXQCIT2.js → chunk-KXYJPRT5.js} +5 -25
- package/chunks/{chunk-X6YQWCIJ.js → chunk-L4Y55KIS.js} +1 -1
- package/chunks/{chunk-335ECZTA.js → chunk-L5U3ELZX.js} +1 -1
- package/chunks/{chunk-4CHDYDG3.js → chunk-LQIDP6K5.js} +1 -1
- package/chunks/{chunk-5O34IMY5.js → chunk-LS56TX3M.js} +1 -1
- package/chunks/{chunk-HCCR43AY.js → chunk-LXLTBIDP.js} +1 -1
- package/chunks/{chunk-66IT3EY2.js → chunk-MQOVXZAF.js} +48 -164
- package/chunks/{chunk-JUVTV4NF.js → chunk-N5VIZTND.js} +1 -1
- package/chunks/{chunk-3YJZ6WNY.js → chunk-NJOFRXTM.js} +593 -1317
- package/chunks/{chunk-CZSAIBUB.js → chunk-NVTQZXR7.js} +7 -7
- package/chunks/{chunk-G274ETR6.js → chunk-OKAIGAYW.js} +3 -3
- package/chunks/{chunk-TVYM3Q3J.js → chunk-OWT2CAEQ.js} +7 -100
- package/chunks/{chunk-T3W4SDRB.js → chunk-PZL23GTM.js} +0 -2
- package/chunks/{chunk-XAAEDML2.js → chunk-Q6TUALBE.js} +1 -1
- package/chunks/chunk-QAW7PIHT.js +168 -0
- package/chunks/{chunk-HT7L5FCZ.js → chunk-QDJ2R4CM.js} +3 -3
- package/chunks/{chunk-IX7O5WI3.js → chunk-QOTQH4CB.js} +8 -23
- package/chunks/{chunk-S4N3G4BB.js → chunk-QYG4BY6Q.js} +1 -1
- package/chunks/{chunk-4XCVGEEX.js → chunk-RCEEXIOO.js} +3 -3
- package/chunks/{chunk-IK5TYYVR.js → chunk-RP5R7MB6.js} +12 -12
- package/chunks/{chunk-U2LNTX56.js → chunk-RTV5TUYB.js} +1 -1
- package/chunks/{chunk-K2GBHL73.js → chunk-S63Z5V42.js} +4 -4
- package/chunks/{chunk-J2MKYJKZ.js → chunk-SPJQO2CE.js} +2 -2
- package/chunks/{chunk-LTD3CHGS.js → chunk-SQ5BK3GO.js} +1 -1
- package/chunks/{chunk-W7H223ZZ.js → chunk-STZQCNN3.js} +1 -1
- package/chunks/{chunk-2YSZE74N.js → chunk-SY7NEYX4.js} +2 -2
- package/chunks/{chunk-GA3WUOO7.js → chunk-T76DGHGG.js} +5 -5
- package/chunks/{chunk-QPRDXJIC.js → chunk-THXDQSTA.js} +29 -30
- package/chunks/{chunk-DASWPKXR.js → chunk-TIOE2OPE.js} +2 -2
- package/chunks/{chunk-F5XYN5VF.js → chunk-TL4R5TRK.js} +2 -2
- package/chunks/{chunk-4RPARQ5D.js → chunk-TV6K2FB4.js} +2 -2
- package/chunks/{chunk-JCJPZMJV.js → chunk-TYLOFD2U.js} +1 -1
- package/chunks/{chunk-632KROVU.js → chunk-V2DXTLUE.js} +3 -3
- package/chunks/{chunk-URP6O2PP.js → chunk-VFX7EZIR.js} +1 -1
- package/chunks/{chunk-CMVFTMRD.js → chunk-VRR65QYW.js} +1 -1
- package/chunks/{chunk-VAJS2E2D.js → chunk-WIEO4CWB.js} +1 -1
- package/chunks/{chunk-OCQ2QTFJ.js → chunk-WMNXXRGL.js} +25 -25
- package/chunks/{chunk-WEPXQKGP.js → chunk-WTNZ6DXB.js} +1 -1
- package/chunks/{chunk-LGY7PG7Q.js → chunk-Y3KFTWVX.js} +5 -5
- package/chunks/{chunk-4CA4WUMS.js → chunk-Y66VOBRP.js} +2 -2
- package/chunks/{chunk-IVKLDHU6.js → chunk-YFVO2HOR.js} +4 -4
- package/chunks/{chunk-GUNTLALV.js → chunk-YGYSMY2R.js} +47 -61
- package/chunks/{chunk-3X2CFOUM.js → chunk-YLSSEUAM.js} +274 -345
- package/chunks/{chunk-6Z5NRZVU.js → chunk-ZIXOTAPZ.js} +3 -92
- package/chunks/{chunk-Z2LBNX3R.js → chunk-ZPAHLFZU.js} +2 -2
- package/chunks/{chunk-ATJ7H5AS.js → chunk-ZQIYGQCG.js} +84 -230
- package/chunks/{computer-use-UIFBH25Y.js → computer-use-VZZMJEQ7.js} +24 -24
- package/chunks/{config-utils-2LHI7JXU.js → config-utils-IQQT3GCI.js} +3 -3
- package/chunks/{contextCommand-VGZHKEH2.js → contextCommand-PORKIZSY.js} +26 -26
- package/chunks/{create-sub-session-DIJOV6HV.js → create-sub-session-EAB2U5XW.js} +2 -2
- package/chunks/{create-sub-session-OFVI4H6I.js → create-sub-session-XVFKHAFW.js} +24 -24
- package/chunks/{cron-create-34GVLSW5.js → cron-create-GMVKSXZT.js} +4 -4
- package/chunks/{cron-delete-NMVKUL45.js → cron-delete-VDZKUAVK.js} +4 -4
- package/chunks/{cron-list-277ZOR7L.js → cron-list-UG7C7RAR.js} +4 -4
- package/chunks/{daemon-72MEV3TY.js → daemon-IHR6WSPB.js} +14 -59
- package/chunks/{daemon-status-provider-ZJJ6AOG2.js → daemon-status-provider-ABLBA3UJ.js} +33 -33
- package/chunks/{de-56TMDIKS.js → de-NOXPCSYN.js} +2 -2
- package/chunks/{dist-ILVRL322.js → dist-4WCQEZIN.js} +1 -1
- package/chunks/{dist-SVHAGOLN.js → dist-DOPL5LSQ.js} +1 -1
- package/chunks/{dist-LQHDHBPP.js → dist-GXJVCOS7.js} +1 -1
- package/chunks/{dist-KEZ5JWH4.js → dist-PX2ERZ6I.js} +2 -2
- package/chunks/{dist-G6QCGO2K.js → dist-V2YVLYOW.js} +1 -1
- package/chunks/{dist-4W3UGU2A.js → dist-VYWUKURL.js} +1 -1
- package/chunks/{earlyInputCapture-NPF4PVUE.js → earlyInputCapture-DJCU5SPU.js} +25 -25
- package/chunks/{edit-F7CT6NZH.js → edit-O4VV5AO6.js} +25 -25
- package/chunks/{en-AXS2N62H.js → en-JFVULHTB.js} +3 -6
- package/chunks/{enter-worktree-Z4ET3MZL.js → enter-worktree-XQYDDI2I.js} +24 -24
- package/chunks/{enterPlanMode-VYR7T5NX.js → enterPlanMode-CESVMQBV.js} +27 -25
- package/chunks/{environment-MBTXL57Q.js → environment-5KXOLZNR.js} +26 -26
- package/chunks/{errors-HN36J4FR.js → errors-EBUTCBAQ.js} +26 -26
- package/chunks/{exit-worktree-RU7JYFMF.js → exit-worktree-MWGNSPNX.js} +24 -24
- package/chunks/exitPlanMode-HYQL4XMB.js +909 -0
- package/chunks/{fast-path-RFT3CDNZ.js → fast-path-6V73F2T2.js} +2 -2
- package/chunks/{fr-ZJPE5OVN.js → fr-HVFNU42H.js} +2 -2
- package/chunks/{gemini-37NTNKZF.js → gemini-TEFJZCIZ.js} +70 -98
- package/chunks/{geminiContentGenerator-76HNOYNQ.js → geminiContentGenerator-M56BEXWI.js} +5 -5
- package/chunks/{glob-DWD7JCZE.js → glob-DMYFEEAZ.js} +25 -30
- package/chunks/{grep-NJRXFV5C.js → grep-GYE47MD4.js} +25 -30
- package/chunks/{handleAutoUpdate-7GBDXW6U.js → handleAutoUpdate-OLUY4L7L.js} +28 -28
- package/chunks/{i18n-MYD5VGED.js → i18n-462JC7IY.js} +25 -25
- package/chunks/{initializer-4DHPNAZG.js → initializer-Y7WD4D2I.js} +30 -30
- package/chunks/{installationInfo-RWOW6BZO.js → installationInfo-I2Z3BKCE.js} +25 -25
- package/chunks/{ja-57GG4QSL.js → ja-PY5AF544.js} +2 -2
- package/chunks/{keychain-token-storage-K23CFKGN.js → keychain-token-storage-AU22CQI6.js} +2 -2
- package/chunks/{list-MMCNNHE7.js → list-XQ5MSAXP.js} +32 -32
- package/chunks/{loadedSettingsAdapter-UK4JWPYU.js → loadedSettingsAdapter-TQOWYE7C.js} +29 -29
- package/chunks/{loop-wakeup-KCLY4XQM.js → loop-wakeup-QXWZSCYM.js} +5 -5
- package/chunks/{ls-UNI4LAJ3.js → ls-2OUTG3IZ.js} +4 -4
- package/chunks/{lsp-HPACPJAN.js → lsp-4VMNXZW6.js} +2 -2
- package/chunks/{mcp-AFCVA4UV.js → mcp-22LLEEVM.js} +29 -29
- package/chunks/{monitor-RK637BNO.js → monitor-VKG324X3.js} +24 -24
- package/chunks/nonInteractiveCli-UMYUT643.js +129 -0
- package/chunks/{notebook-edit-LY2X3CMF.js → notebook-edit-FJJRBQ3S.js} +25 -25
- package/chunks/{openaiContentGenerator-MDYDW7IA.js → openaiContentGenerator-4T2OGTR5.js} +13 -13
- package/chunks/{pidfile-2NUYRLKB.js → pidfile-XL3MDCBM.js} +25 -25
- package/chunks/{processUtils-7QH3VBVN.js → processUtils-7UCFN34D.js} +2 -2
- package/chunks/{pt-MCGZ3RZ4.js → pt-A3PRQXMU.js} +2 -2
- package/chunks/{qwenContentGenerator-3HT4TVDL.js → qwenContentGenerator-PQUXJDIZ.js} +26 -26
- package/chunks/{qwenOAuth2-3A4TJVZT.js → qwenOAuth2-LEYOU7RU.js} +5 -5
- package/chunks/{read-file-NE4FREFR.js → read-file-3EYQML7E.js} +10 -10
- package/chunks/{read-mcp-resource-C6NT52T6.js → read-mcp-resource-JUFHCKSC.js} +2 -2
- package/chunks/{record-artifact-ENCU7QCL.js → record-artifact-DWSMBXYY.js} +2 -2
- package/chunks/{ripGrep-DBLXWQCJ.js → ripGrep-S6WPGQNA.js} +24 -24
- package/chunks/{ru-GA3NZW5Q.js → ru-IBCWUTOC.js} +2 -2
- package/chunks/{run-qwen-serve-3NOCI6IL.js → run-qwen-serve-NSKBT3HU.js} +36 -52
- package/chunks/{runtime-ZI7DSZSS.js → runtime-LG5ZZ3VH.js} +33 -33
- package/chunks/{scheduler-SOVEP5K7.js → scheduler-PLX3VVTB.js} +24 -24
- package/chunks/{send-message-5IFPZTPE.js → send-message-JZ752NWD.js} +3 -3
- package/chunks/{serve-DB6OCXIA.js → serve-S2ZLRZZR.js} +29 -29
- package/chunks/{server-LDY4YVU4.js → server-5ECMV4TM.js} +679 -1413
- package/chunks/{session-D6OG5SKX.js → session-ILSONWG4.js} +66 -93
- package/chunks/{settings-L52ZV5LO.js → settings-BOE7WWSA.js} +28 -28
- package/chunks/{shell-IU27OY3Q.js → shell-VW664JIZ.js} +24 -24
- package/chunks/{skill-BSOJT7LE.js → skill-COHV6625.js} +12 -12
- package/chunks/{spawnChannel-HQAM25DD.js → spawnChannel-5UUR5XOZ.js} +26 -26
- package/chunks/{src-7ZBIMTJZ.js → src-XPKFZ3RN.js} +25 -43
- package/chunks/{standalone-update-77457VVK.js → standalone-update-IOOJ2NZQ.js} +26 -26
- package/chunks/{startInteractiveUI-S7WC6EZG.js → startInteractiveUI-3NGJGXXS.js} +1733 -2194
- package/chunks/{syntheticOutput-ULOVVLY4.js → syntheticOutput-LELY6HAI.js} +3 -3
- package/chunks/{task-create-V2DCDSET.js → task-create-QY3BIMNM.js} +7 -7
- package/chunks/{task-list-DPL5ZN55.js → task-list-D2U47WBJ.js} +5 -5
- package/chunks/{task-stop-CPEQWOT6.js → task-stop-N6E5IYLH.js} +2 -2
- package/chunks/{task-update-ZR45M5Q7.js → task-update-HJCQILLB.js} +7 -7
- package/chunks/{team-create-CO7HSUON.js → team-create-UPLVZQFX.js} +24 -24
- package/chunks/{team-delete-HIWXCWJU.js → team-delete-RCWYDRF4.js} +5 -5
- package/chunks/{team-plan-approval-QDZF5YZY.js → team-plan-approval-F5F432RO.js} +24 -24
- package/chunks/{theme-manager-UTUT3I4P.js → theme-manager-JJE4BJ67.js} +25 -25
- package/chunks/todoWrite-FKCGATPJ.js +531 -0
- package/chunks/{tool-search-2UUORA35.js → tool-search-LRXI4JLZ.js} +11 -11
- package/chunks/{total-session-admission-NTWG6G3F.js → total-session-admission-I4DHN6UP.js} +30 -30
- package/chunks/{trustedFolders-YF37ZCN5.js → trustedFolders-SEH7LNX2.js} +25 -25
- package/chunks/{update-relaunch-QFNHPMZZ.js → update-relaunch-T6ZKBUA6.js} +5 -5
- package/chunks/{updateCheck-B6O42VMD.js → updateCheck-FWLXZPRO.js} +26 -26
- package/chunks/{validateNonInterActiveAuth-SCIWJ4CX.js → validateNonInterActiveAuth-X6K2VWYT.js} +59 -59
- package/chunks/{version-7DA6LAI3.js → version-LIFSOGSE.js} +1 -1
- package/chunks/{web-fetch-B62SJXM2.js → web-fetch-CFCWTCAP.js} +5 -5
- package/chunks/{workflow-Q5WG4THP.js → workflow-NX2DFWGD.js} +25 -25
- package/chunks/{workspace-providers-status-WWLAGWQW.js → workspace-providers-status-VYD6M2NE.js} +32 -32
- package/chunks/{workspace-registration-store-BVYQVY2H.js → workspace-registration-store-2Y6PWOEL.js} +1 -1
- package/chunks/{workspace-registry-OD7ACADD.js → workspace-registry-PKBDBWCA.js} +30 -30
- package/chunks/{workspace-service-4LYJWS63.js → workspace-service-HHORUHTS.js} +35 -35
- package/chunks/{workspace-skills-status-P2AQLZZS.js → workspace-skills-status-O5Q26LIY.js} +30 -30
- package/chunks/{write-file-TEPGXNM3.js → write-file-NVAEZ3J2.js} +25 -58
- package/chunks/{zh-E34DZ2S3.js → zh-PAUNIMHQ.js} +3 -6
- package/chunks/{zh-TW-PEI2ZWUR.js → zh-TW-GNEUIUFF.js} +3 -6
- package/cli.js +11 -11
- package/locales/ca.js +2 -2
- package/locales/de.js +2 -2
- package/locales/en.js +5 -9
- package/locales/fr.js +2 -2
- package/locales/ja.js +2 -2
- package/locales/pt.js +2 -2
- package/locales/ru.js +2 -2
- package/locales/zh-TW.js +3 -8
- package/locales/zh.js +3 -8
- package/package.json +3 -3
- package/web-shell/assets/{arc-Dh-N5oEG.js → arc-H74fE8UR.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-DBOQgtfF.js → architectureDiagram-3BPJPVTR-DN3kEq-I.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-Dyxbuyju.js → blockDiagram-GPEHLZMM-BrqbsFUF.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-DCJR5HPT.js → c4Diagram-AAUBKEIU-ClFhU1P-.js} +1 -1
- package/web-shell/assets/channel-NFC5ADAa.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-BkMUcy3O.js → chunk-2J33WTMH-jCIcG0_M.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-BSm4pLQk.js → chunk-4BX2VUAB-DSkGe62-.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-CuRr-XgW.js → chunk-55IACEB6-BxBHOGTd.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-CLv7-w3t.js → chunk-727SXJPM-v_DS7dH7.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-Cz_n3-JW.js → chunk-AQP2D5EJ-1RzEKRPq.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-CFT_62Hq.js → chunk-FMBD7UC4-DyrSbLOX.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-DWz6DOZ6.js → chunk-ND2GUHAM-BCmdsZiy.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-C-mRhUzw.js → chunk-QZHKN3VN-CphHGW2D.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-DHgwjz3X.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DHgwjz3X.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-BqCZS3i1.js → cose-bilkent-S5V4N54A-D5kRC7Fi.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-BGasdP8i.js → dagre-BM42HDAG-DIiyJJ0U.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-BSyLDkMy.js → diagram-2AECGRRQ-BOcuB8xU.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-CM-ZJxWC.js → diagram-5GNKFQAL-CMgiZ4d3.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-wJdzt_C5.js → diagram-KO2AKTUF-Ctx8pfN0.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-DiH2fhpL.js → diagram-LMA3HP47-BT5REAWC.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-BZ9z1ZBl.js → diagram-OG6HWLK6-CJkUqXcp.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-BsyWDziR.js → erDiagram-TEJ5UH35-DyvNNX6v.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-CzdkxIrq.js → flowDiagram-I6XJVG4X-VBf8_My8.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-javIv2r2.js → ganttDiagram-6RSMTGT7-CviJnR7B.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CjHstylC.js → gitGraphDiagram-PVQCEYII-BY66_Oze.js} +1 -1
- package/web-shell/assets/index-8xIBbHV3.js +1143 -0
- package/web-shell/assets/index-DLyhlZZO.css +5 -0
- package/web-shell/assets/{index-BnJGxpah.js → index-DhYuvi3j.js} +1 -1
- package/web-shell/assets/{infoDiagram-5YYISTIA-yXuQsomo.js → infoDiagram-5YYISTIA-D2jaewWZ.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-a85JhE6F.js → ishikawaDiagram-YF4QCWOH-BpnNTyi5.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-Dak_4BVj.js → journeyDiagram-JHISSGLW-CA55GNZF.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-COA-LuCV.js → kanban-definition-UN3LZRKU-DyiSl_Ts.js} +1 -1
- package/web-shell/assets/{linear-DNAAAQWq.js → linear-B-sN3dkV.js} +1 -1
- package/web-shell/assets/{mermaid.core-7Ff3aIUD.js → mermaid.core-xf9SXDdb.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-_rCOIODU.js → mindmap-definition-RKZ34NQL-DXhr2kRk.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-C9QCQ8EW.js → pieDiagram-4H26LBE5-DUXpbfGQ.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-CsaE4FA8.js → quadrantDiagram-W4KKPZXB-NeDQYeWw.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-tV78naTg.js → requirementDiagram-4Y6WPE33-BSbFRL1A.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-Dk3Rw7BZ.js → sankeyDiagram-5OEKKPKP-gg27cAaN.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-BGsAWcMX.js → sequenceDiagram-3UESZ5HK-Bi_1TSs4.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-zSxdtdoB.js → stateDiagram-AJRCARHV-CboCCRaf.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CXRqms6P.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-j0BQh9Go.js → timeline-definition-PNZ67QCA-DrGpF_jn.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-CRaUFFIu.js → vennDiagram-CIIHVFJN-DCaJU67x.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-D7Py_ofm.js → wardley-L42UT6IY-p0QcW1aP.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BrDIAZcp.js → wardleyDiagram-YWT4CUSO-DiEVxj1W.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-Cecdw-w2.js → xychartDiagram-2RQKCTM6-iQB8nSlA.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-QFEY6OXH.js +0 -45
- package/chunks/exitPlanMode-LUBAWMZQ.js +0 -390
- package/chunks/nonInteractiveCli-OUGWLHNV.js +0 -129
- package/chunks/todoWrite-HK6B3RHJ.js +0 -358
- package/web-shell/assets/channel-DY0fkcKT.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-DBvJ6PZo.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-DBvJ6PZo.js +0 -1
- package/web-shell/assets/index-DhXB9nTa.js +0 -1161
- package/web-shell/assets/index-vYHgZ7bL.css +0 -5
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-vLEEtDpO.js +0 -1
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
resolveModelConfig,
|
|
5
5
|
resolveProviderProtocol,
|
|
6
6
|
stripRuntimeSnapshotPrefix
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-NJOFRXTM.js";
|
|
8
8
|
import {
|
|
9
9
|
external_exports
|
|
10
10
|
} from "./chunk-H6XPXXMH.js";
|
|
11
11
|
import {
|
|
12
12
|
AuthType,
|
|
13
13
|
MODEL_GENERATION_CONFIG_FIELDS
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-MQOVXZAF.js";
|
|
15
15
|
import {
|
|
16
16
|
REASONING_EFFORT_TIERS,
|
|
17
17
|
normalizeReasoningEffort
|
|
@@ -25,95 +25,10 @@ import {
|
|
|
25
25
|
|
|
26
26
|
// packages/cli/src/utils/acpModelUtils.ts
|
|
27
27
|
init_esbuild_shims();
|
|
28
|
-
import { createHash } from "node:crypto";
|
|
29
|
-
var ACP_ROUTE_ID_PREFIX = "qwen-route:v1:";
|
|
30
|
-
function getRouteEndpointIdentity(baseUrl) {
|
|
31
|
-
if (!baseUrl) return null;
|
|
32
|
-
try {
|
|
33
|
-
const url = new URL(baseUrl);
|
|
34
|
-
url.username = "";
|
|
35
|
-
url.password = "";
|
|
36
|
-
url.search = "";
|
|
37
|
-
url.hash = "";
|
|
38
|
-
return url.href;
|
|
39
|
-
} catch {
|
|
40
|
-
return sanitizeProviderBaseUrl(baseUrl).split(/[?#]/, 1)[0] ?? null;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
__name(getRouteEndpointIdentity, "getRouteEndpointIdentity");
|
|
44
28
|
function formatAcpModelId(modelId, authType) {
|
|
45
29
|
return `${modelId}(${authType})`;
|
|
46
30
|
}
|
|
47
31
|
__name(formatAcpModelId, "formatAcpModelId");
|
|
48
|
-
function buildAcpModelOptions(models) {
|
|
49
|
-
const candidates = models.filter((model) => model.fastOnly !== true && model.voiceOnly !== true).map((model) => {
|
|
50
|
-
const effectiveModelId = model.isRuntimeModel && model.runtimeSnapshotId ? model.runtimeSnapshotId : model.id;
|
|
51
|
-
return {
|
|
52
|
-
model,
|
|
53
|
-
effectiveModelId,
|
|
54
|
-
legacyModelId: formatAcpModelId(effectiveModelId, model.authType)
|
|
55
|
-
};
|
|
56
|
-
});
|
|
57
|
-
const counts = /* @__PURE__ */ new Map();
|
|
58
|
-
for (const candidate of candidates) {
|
|
59
|
-
counts.set(
|
|
60
|
-
candidate.legacyModelId,
|
|
61
|
-
(counts.get(candidate.legacyModelId) ?? 0) + 1
|
|
62
|
-
);
|
|
63
|
-
}
|
|
64
|
-
const discriminators = /* @__PURE__ */ new Set();
|
|
65
|
-
return candidates.map(({ model, effectiveModelId, legacyModelId }) => {
|
|
66
|
-
const discriminator = [
|
|
67
|
-
legacyModelId,
|
|
68
|
-
model.label,
|
|
69
|
-
model.envKey ?? null,
|
|
70
|
-
model.registryBaseUrl === void 0,
|
|
71
|
-
getRouteEndpointIdentity(model.registryBaseUrl ?? model.baseUrl)
|
|
72
|
-
];
|
|
73
|
-
const discriminatorKey = JSON.stringify(discriminator);
|
|
74
|
-
if (counts.get(legacyModelId) !== 1 && discriminators.has(discriminatorKey)) {
|
|
75
|
-
throw new Error(
|
|
76
|
-
`ACP model routes for "${legacyModelId}" need distinct names, envKey values, or public endpoints.`
|
|
77
|
-
);
|
|
78
|
-
}
|
|
79
|
-
discriminators.add(discriminatorKey);
|
|
80
|
-
return {
|
|
81
|
-
model,
|
|
82
|
-
effectiveModelId,
|
|
83
|
-
modelId: counts.get(legacyModelId) === 1 ? legacyModelId : `${ACP_ROUTE_ID_PREFIX}${createHash("sha256").update(discriminatorKey).digest("base64url").slice(0, 16)}`
|
|
84
|
-
};
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
__name(buildAcpModelOptions, "buildAcpModelOptions");
|
|
88
|
-
function resolveAcpModelOption(input, models) {
|
|
89
|
-
const matched = buildAcpModelOptions(models).find(
|
|
90
|
-
(option) => option.modelId === input.trim()
|
|
91
|
-
);
|
|
92
|
-
if (!matched) return null;
|
|
93
|
-
return {
|
|
94
|
-
modelId: matched.effectiveModelId,
|
|
95
|
-
authType: matched.model.authType,
|
|
96
|
-
...matched.model.registryBaseUrl !== void 0 ? { baseUrl: matched.model.registryBaseUrl } : {},
|
|
97
|
-
...!matched.model.isRuntimeModel ? { registryBaseUrl: matched.model.registryBaseUrl ?? null } : {},
|
|
98
|
-
isRuntime: matched.model.isRuntimeModel === true
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
__name(resolveAcpModelOption, "resolveAcpModelOption");
|
|
102
|
-
function getCurrentAcpModelId(options, modelId, authType, registryBaseUrl) {
|
|
103
|
-
if (!modelId || !authType) return modelId;
|
|
104
|
-
const matching = options.filter(
|
|
105
|
-
(option) => option.effectiveModelId === modelId && option.model.authType === authType
|
|
106
|
-
);
|
|
107
|
-
if (matching[0]?.model.isRuntimeModel) return matching[0].modelId;
|
|
108
|
-
if (registryBaseUrl !== void 0) {
|
|
109
|
-
const exact = matching.find(
|
|
110
|
-
(option) => (option.model.registryBaseUrl ?? null) === registryBaseUrl
|
|
111
|
-
);
|
|
112
|
-
return exact?.modelId ?? modelId;
|
|
113
|
-
}
|
|
114
|
-
return matching.length === 1 ? matching[0].modelId : formatAcpModelId(modelId, authType);
|
|
115
|
-
}
|
|
116
|
-
__name(getCurrentAcpModelId, "getCurrentAcpModelId");
|
|
117
32
|
function sanitizeProviderBaseUrl(baseUrl) {
|
|
118
33
|
const scheme = baseUrl.match(/^[A-Za-z][A-Za-z\d+.-]*:\/\//);
|
|
119
34
|
if (!scheme) {
|
|
@@ -427,7 +342,6 @@ function resolveCliGenerationConfig(inputs) {
|
|
|
427
342
|
apiKey: resolved.config.apiKey || "",
|
|
428
343
|
baseUrl: resolved.config.baseUrl || "",
|
|
429
344
|
generationConfig,
|
|
430
|
-
...modelProvider ? { registryBaseUrl: modelProvider.baseUrl ?? null } : {},
|
|
431
345
|
sources: resolved.sources,
|
|
432
346
|
warnings: [
|
|
433
347
|
...resolved.warnings,
|
|
@@ -444,10 +358,7 @@ function resolveCliGenerationConfig(inputs) {
|
|
|
444
358
|
__name(resolveCliGenerationConfig, "resolveCliGenerationConfig");
|
|
445
359
|
|
|
446
360
|
export {
|
|
447
|
-
|
|
448
|
-
buildAcpModelOptions,
|
|
449
|
-
resolveAcpModelOption,
|
|
450
|
-
getCurrentAcpModelId,
|
|
361
|
+
formatAcpModelId,
|
|
451
362
|
sanitizeProviderBaseUrl,
|
|
452
363
|
parseAcpBaseModelId,
|
|
453
364
|
parseAcpModelOption,
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
isTlsVerificationDisabled
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-LQIDP6K5.js";
|
|
6
6
|
import {
|
|
7
7
|
getErrorMessage,
|
|
8
8
|
isNodeError
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-7NFB7LBQ.js";
|
|
10
10
|
import {
|
|
11
11
|
init_esbuild_shims
|
|
12
12
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -771,8 +771,7 @@ var DaemonChannelBridge = class extends EventEmitter2 {
|
|
|
771
771
|
workspaceCwd: cwd || this.options.cwd,
|
|
772
772
|
modelServiceId: this.options.modelServiceId,
|
|
773
773
|
sessionScope: this.options.sessionScope ?? "thread",
|
|
774
|
-
...options?.approvalMode ? { approvalMode: options.approvalMode } : {}
|
|
775
|
-
...options?.sourceId ? { sourceId: options.sourceId } : {}
|
|
774
|
+
...options?.approvalMode ? { approvalMode: options.approvalMode } : {}
|
|
776
775
|
});
|
|
777
776
|
if (lifecycleGeneration !== this.lifecycleGeneration) {
|
|
778
777
|
await this.rejectStaleSession(session);
|
|
@@ -2001,7 +2000,7 @@ var SessionRouter = class {
|
|
|
2001
2000
|
async createAndStoreSession(key, input, operation) {
|
|
2002
2001
|
const loadWindow = this.beginSessionLoad();
|
|
2003
2002
|
try {
|
|
2004
|
-
const sessionId = await this.createLiveSession(input.cwd, loadWindow, key, this.sessionOptions(input.channelName), operation
|
|
2003
|
+
const sessionId = await this.createLiveSession(input.cwd, loadWindow, key, this.sessionOptions(input.channelName), operation);
|
|
2005
2004
|
try {
|
|
2006
2005
|
this.assertOperationCurrent(operation);
|
|
2007
2006
|
} catch (error) {
|
|
@@ -2057,7 +2056,7 @@ var SessionRouter = class {
|
|
|
2057
2056
|
} catch (loadError) {
|
|
2058
2057
|
this.assertOperationCurrent(operation);
|
|
2059
2058
|
try {
|
|
2060
|
-
const replacement = await this.createLiveSession(input.cwd, loadWindow, key, this.sessionOptions(input.channelName), operation
|
|
2059
|
+
const replacement = await this.createLiveSession(input.cwd, loadWindow, key, this.sessionOptions(input.channelName), operation);
|
|
2061
2060
|
try {
|
|
2062
2061
|
this.assertOperationCurrent(operation);
|
|
2063
2062
|
} catch (error) {
|
|
@@ -2423,11 +2422,11 @@ var SessionRouter = class {
|
|
|
2423
2422
|
}
|
|
2424
2423
|
}
|
|
2425
2424
|
}
|
|
2426
|
-
async createLiveSession(cwd, loadWindow, routingKey, options, operation
|
|
2425
|
+
async createLiveSession(cwd, loadWindow, routingKey, options, operation) {
|
|
2427
2426
|
const maxAttempts = 2;
|
|
2428
2427
|
let lastDeadSessionId;
|
|
2429
2428
|
for (let attempt = 0; attempt < maxAttempts; attempt++) {
|
|
2430
|
-
const sessionId = await this.bridge.newSession(cwd,
|
|
2429
|
+
const sessionId = await this.bridge.newSession(cwd, options, operation);
|
|
2431
2430
|
try {
|
|
2432
2431
|
this.assertOperationCurrent(operation);
|
|
2433
2432
|
} catch (error) {
|
|
@@ -2919,29 +2918,11 @@ var CLEAR_CONFIRM_PATTERNS = [
|
|
|
2919
2918
|
/^确认清除记忆$/u,
|
|
2920
2919
|
/^confirm clear memory$/iu
|
|
2921
2920
|
];
|
|
2922
|
-
var UPDATE_CONFIRM_PATTERNS = [
|
|
2923
|
-
/^确认更新记忆$/u,
|
|
2924
|
-
/^confirm memory update$/iu
|
|
2925
|
-
];
|
|
2926
|
-
var REMOVE_CONFIRM_PATTERNS = [
|
|
2927
|
-
/^确认删除记忆$/u,
|
|
2928
|
-
/^confirm memory removal$/iu
|
|
2929
|
-
];
|
|
2930
2921
|
function parseChannelMemoryIntent(text) {
|
|
2931
2922
|
const trimmed = text.replace(PROMPT_UNSAFE_INVISIBLES, "").trim();
|
|
2932
2923
|
if (!trimmed || trimmed.startsWith("/")) {
|
|
2933
2924
|
return null;
|
|
2934
2925
|
}
|
|
2935
|
-
for (const pattern of UPDATE_CONFIRM_PATTERNS) {
|
|
2936
|
-
if (pattern.test(trimmed)) {
|
|
2937
|
-
return { kind: "update_confirm" };
|
|
2938
|
-
}
|
|
2939
|
-
}
|
|
2940
|
-
for (const pattern of REMOVE_CONFIRM_PATTERNS) {
|
|
2941
|
-
if (pattern.test(trimmed)) {
|
|
2942
|
-
return { kind: "remove_confirm" };
|
|
2943
|
-
}
|
|
2944
|
-
}
|
|
2945
2926
|
for (const pattern of CLEAR_CONFIRM_PATTERNS) {
|
|
2946
2927
|
if (pattern.test(trimmed)) {
|
|
2947
2928
|
return { kind: "clear_confirm" };
|
|
@@ -2988,7 +2969,7 @@ function parseChannelMemoryIntent(text) {
|
|
|
2988
2969
|
const match = trimmed.match(pattern);
|
|
2989
2970
|
const remembered = match?.[1]?.replace(PROMPT_UNSAFE_INVISIBLES, "").trim();
|
|
2990
2971
|
if (remembered) {
|
|
2991
|
-
return { kind: "remember",
|
|
2972
|
+
return { kind: "remember", text: remembered };
|
|
2992
2973
|
}
|
|
2993
2974
|
}
|
|
2994
2975
|
return null;
|
|
@@ -3083,8 +3064,7 @@ var ChannelBase = class {
|
|
|
3083
3064
|
* so a cleared session can't be resurrected by an already-queued prompt.
|
|
3084
3065
|
*/
|
|
3085
3066
|
sessionGenerations = /* @__PURE__ */ new Map();
|
|
3086
|
-
|
|
3087
|
-
pendingChannelMemoryMutationDeliveries = /* @__PURE__ */ new Map();
|
|
3067
|
+
pendingClears = /* @__PURE__ */ new Map();
|
|
3088
3068
|
/** Per-session active prompt tracking for dispatch modes. */
|
|
3089
3069
|
activePrompts = /* @__PURE__ */ new Map();
|
|
3090
3070
|
/** Per-session message buffer for collect mode. */
|
|
@@ -4757,71 +4737,8 @@ ${requestList}`);
|
|
|
4757
4737
|
return;
|
|
4758
4738
|
}
|
|
4759
4739
|
if (intent.kind === "clear_request") {
|
|
4760
|
-
|
|
4761
|
-
|
|
4762
|
-
}
|
|
4763
|
-
if (intent.kind === "update_confirm" || intent.kind === "remove_confirm") {
|
|
4764
|
-
const pending = intent.kind === "update_confirm" ? this.takePendingChannelMemoryMutation(envelope, "update") : this.takePendingChannelMemoryMutation(envelope, "remove");
|
|
4765
|
-
if (!pending) {
|
|
4766
|
-
await this.sendMessage(envelope.chatId, intent.kind === "update_confirm" ? "No pending channel memory update. Start a new update request first." : "No pending channel memory removal. Start a new removal request first.");
|
|
4767
|
-
return;
|
|
4768
|
-
}
|
|
4769
|
-
const channelMemory2 = await this.getChannelMemory(envelope);
|
|
4770
|
-
if (!channelMemory2)
|
|
4771
|
-
return;
|
|
4772
|
-
const isUpdate = pending.kind === "update";
|
|
4773
|
-
let changed;
|
|
4774
|
-
try {
|
|
4775
|
-
if (isUpdate) {
|
|
4776
|
-
({ changed } = await channelMemory2.updateChannelMemoryEntry(this.channelMemoryTarget(envelope), {
|
|
4777
|
-
id: pending.id,
|
|
4778
|
-
text: pending.proposedText,
|
|
4779
|
-
expectedText: pending.expectedText
|
|
4780
|
-
}));
|
|
4781
|
-
} else {
|
|
4782
|
-
({ changed } = await channelMemory2.removeChannelMemoryEntries(this.channelMemoryTarget(envelope), {
|
|
4783
|
-
ids: [pending.id],
|
|
4784
|
-
expectedTextById: { [pending.id]: pending.expectedText }
|
|
4785
|
-
}));
|
|
4786
|
-
}
|
|
4787
|
-
} catch (error) {
|
|
4788
|
-
const message = this.channelMemoryErrorMessage(error);
|
|
4789
|
-
this.logChannelMemoryError(isUpdate ? "update" : "remove", envelope, message);
|
|
4790
|
-
await this.sendMessage(envelope.chatId, message === "Channel memory entry changed" ? "That channel memory entry changed since it was selected. View channel memory and start the operation again." : `Failed to ${isUpdate ? "update" : "remove"} channel memory: ${this.channelMemoryUserErrorMessage()}`);
|
|
4791
|
-
return;
|
|
4792
|
-
}
|
|
4793
|
-
if (!changed) {
|
|
4794
|
-
await this.sendMessage(envelope.chatId, `No channel memory entry ${pending.id}.`);
|
|
4795
|
-
return;
|
|
4796
|
-
}
|
|
4797
|
-
this.invalidateSessionContext(envelope);
|
|
4798
|
-
await this.sendMessage(envelope.chatId, `Channel memory ${pending.id} ${isUpdate ? "updated" : "removed"}.`);
|
|
4799
|
-
return;
|
|
4800
|
-
}
|
|
4801
|
-
if (intent.kind === "natural_update") {
|
|
4802
|
-
await this.deliverPendingChannelMemoryMutation(envelope, {
|
|
4803
|
-
kind: "update",
|
|
4804
|
-
id: intent.id,
|
|
4805
|
-
expectedText: intent.expectedText,
|
|
4806
|
-
proposedText: intent.text
|
|
4807
|
-
}, [
|
|
4808
|
-
`Update channel memory ${intent.id}?`,
|
|
4809
|
-
`Before: ${sanitizePromptText(intent.expectedText).trim()}`,
|
|
4810
|
-
`After: ${sanitizePromptText(intent.text).trim()}`,
|
|
4811
|
-
'Say "\u786E\u8BA4\u66F4\u65B0\u8BB0\u5FC6" or "confirm memory update" within 60 seconds.'
|
|
4812
|
-
].join("\n"));
|
|
4813
|
-
return;
|
|
4814
|
-
}
|
|
4815
|
-
if (intent.kind === "natural_remove") {
|
|
4816
|
-
await this.deliverPendingChannelMemoryMutation(envelope, {
|
|
4817
|
-
kind: "remove",
|
|
4818
|
-
id: intent.id,
|
|
4819
|
-
expectedText: intent.expectedText
|
|
4820
|
-
}, [
|
|
4821
|
-
`Remove channel memory ${intent.id}?`,
|
|
4822
|
-
sanitizePromptText(intent.expectedText).trim(),
|
|
4823
|
-
'Say "\u786E\u8BA4\u5220\u9664\u8BB0\u5FC6" or "confirm memory removal" within 60 seconds.'
|
|
4824
|
-
].join("\n"));
|
|
4740
|
+
this.setPendingClear(this.clearPendingKey(envelope));
|
|
4741
|
+
await this.sendMessage(envelope.chatId, 'This clears channel memory for this chat. Say "\u786E\u8BA4\u6E05\u7A7A\u8BB0\u5FC6" or "confirm clear memory" to proceed.');
|
|
4825
4742
|
return;
|
|
4826
4743
|
}
|
|
4827
4744
|
const channelMemory = await this.getChannelMemory(envelope);
|
|
@@ -4831,7 +4748,7 @@ ${requestList}`);
|
|
|
4831
4748
|
if (intent.kind === "remember") {
|
|
4832
4749
|
let result;
|
|
4833
4750
|
try {
|
|
4834
|
-
result = await channelMemory.addChannelMemoryEntries(this.channelMemoryTarget(envelope), intent.
|
|
4751
|
+
result = await channelMemory.addChannelMemoryEntries(this.channelMemoryTarget(envelope), [intent.text], envelope.senderId);
|
|
4835
4752
|
} catch (error) {
|
|
4836
4753
|
const message = this.channelMemoryErrorMessage(error);
|
|
4837
4754
|
this.logChannelMemoryError("save", envelope, message);
|
|
@@ -4843,7 +4760,7 @@ ${requestList}`);
|
|
|
4843
4760
|
}
|
|
4844
4761
|
if (result.added.length > 0) {
|
|
4845
4762
|
const ids = result.added.map((entry) => entry.id);
|
|
4846
|
-
await this.sendMessage(envelope.chatId,
|
|
4763
|
+
await this.sendMessage(envelope.chatId, ids.length === 1 ? `Channel memory ${ids[0]} saved.` : `Channel memory saved: ${ids.join(", ")}.`);
|
|
4847
4764
|
} else if (result.duplicateIds.length > 0) {
|
|
4848
4765
|
await this.sendMessage(envelope.chatId, `Channel memory already contains ${result.duplicateIds.join(", ")}.`);
|
|
4849
4766
|
} else {
|
|
@@ -4881,15 +4798,22 @@ ${sanitizePromptText(entry.text).trim()}` : `No channel memory entry ${intent.id
|
|
|
4881
4798
|
await this.sendMessage(envelope.chatId, [`Channel memory (page ${intent.page}/${totalPages}):`, ...lines].join("\n"));
|
|
4882
4799
|
return;
|
|
4883
4800
|
}
|
|
4884
|
-
if (intent.kind === "update" || intent.kind === "remove") {
|
|
4801
|
+
if (intent.kind === "update" || intent.kind === "remove" || intent.kind === "natural_update" || intent.kind === "natural_remove") {
|
|
4885
4802
|
let changed;
|
|
4886
|
-
const isUpdate = intent.kind === "update";
|
|
4803
|
+
const isUpdate = intent.kind === "update" || intent.kind === "natural_update";
|
|
4887
4804
|
const id = intent.id;
|
|
4888
4805
|
try {
|
|
4889
4806
|
if (isUpdate) {
|
|
4890
|
-
({ changed } = await channelMemory.updateChannelMemoryEntry(this.channelMemoryTarget(envelope),
|
|
4807
|
+
({ changed } = await channelMemory.updateChannelMemoryEntry(this.channelMemoryTarget(envelope), intent.kind === "natural_update" ? {
|
|
4808
|
+
id: intent.id,
|
|
4809
|
+
text: intent.text,
|
|
4810
|
+
expectedText: intent.expectedText
|
|
4811
|
+
} : { id: intent.id, text: intent.text }));
|
|
4891
4812
|
} else {
|
|
4892
|
-
({ changed } = await channelMemory.removeChannelMemoryEntries(this.channelMemoryTarget(envelope),
|
|
4813
|
+
({ changed } = await channelMemory.removeChannelMemoryEntries(this.channelMemoryTarget(envelope), intent.kind === "natural_remove" ? {
|
|
4814
|
+
ids: [intent.id],
|
|
4815
|
+
expectedTextById: { [intent.id]: intent.expectedText }
|
|
4816
|
+
} : { ids: [intent.id] }));
|
|
4893
4817
|
}
|
|
4894
4818
|
} catch (error) {
|
|
4895
4819
|
const message = this.channelMemoryErrorMessage(error);
|
|
@@ -4906,8 +4830,10 @@ ${sanitizePromptText(entry.text).trim()}` : `No channel memory entry ${intent.id
|
|
|
4906
4830
|
return;
|
|
4907
4831
|
}
|
|
4908
4832
|
if (intent.kind === "clear_confirm") {
|
|
4909
|
-
const
|
|
4910
|
-
|
|
4833
|
+
const pendingKey = this.clearPendingKey(envelope);
|
|
4834
|
+
const expiresAt = this.pendingClears.get(pendingKey);
|
|
4835
|
+
this.pendingClears.delete(pendingKey);
|
|
4836
|
+
if (expiresAt === void 0 || expiresAt < Date.now()) {
|
|
4911
4837
|
await this.sendMessage(envelope.chatId, 'No pending clear request. Say "\u6E05\u7A7A\u8BB0\u5FC6" first.');
|
|
4912
4838
|
return;
|
|
4913
4839
|
}
|
|
@@ -4933,61 +4859,17 @@ ${sanitizePromptText(entry.text).trim()}` : `No channel memory entry ${intent.id
|
|
|
4933
4859
|
const normalized = text.replace(PROMPT_UNSAFE_INVISIBLES, "").trim();
|
|
4934
4860
|
return this.channelMemory !== void 0 && this.memoryIntentClassifier !== void 0 && !normalized.startsWith("/") && CHANNEL_MEMORY_CLASSIFIER_TRIGGER_RE.test(normalized);
|
|
4935
4861
|
}
|
|
4936
|
-
|
|
4937
|
-
return
|
|
4938
|
-
this.name,
|
|
4939
|
-
envelope.chatId,
|
|
4940
|
-
envelope.threadId ?? null,
|
|
4941
|
-
envelope.senderId ?? null
|
|
4942
|
-
]);
|
|
4862
|
+
clearPendingKey(envelope) {
|
|
4863
|
+
return `${this.name}:${envelope.chatId}:${envelope.threadId ?? ""}:${envelope.senderId ?? ""}`;
|
|
4943
4864
|
}
|
|
4944
|
-
|
|
4865
|
+
setPendingClear(key) {
|
|
4945
4866
|
const now = Date.now();
|
|
4946
|
-
for (const [pendingKey,
|
|
4947
|
-
if (
|
|
4948
|
-
this.
|
|
4867
|
+
for (const [pendingKey, expiresAt] of this.pendingClears) {
|
|
4868
|
+
if (expiresAt < now) {
|
|
4869
|
+
this.pendingClears.delete(pendingKey);
|
|
4949
4870
|
}
|
|
4950
4871
|
}
|
|
4951
|
-
this.
|
|
4952
|
-
const key = this.channelMemoryPendingKey(envelope);
|
|
4953
|
-
this.pendingChannelMemoryMutationDeliveries.set(key, mutation);
|
|
4954
|
-
try {
|
|
4955
|
-
await this.sendMessage(envelope.chatId, message);
|
|
4956
|
-
} catch (error) {
|
|
4957
|
-
if (this.pendingChannelMemoryMutationDeliveries.get(key) === mutation) {
|
|
4958
|
-
this.pendingChannelMemoryMutationDeliveries.delete(key);
|
|
4959
|
-
}
|
|
4960
|
-
throw error;
|
|
4961
|
-
}
|
|
4962
|
-
if (this.pendingChannelMemoryMutationDeliveries.get(key) !== mutation) {
|
|
4963
|
-
return;
|
|
4964
|
-
}
|
|
4965
|
-
this.pendingChannelMemoryMutationDeliveries.delete(key);
|
|
4966
|
-
this.pendingChannelMemoryMutations.set(key, {
|
|
4967
|
-
...mutation,
|
|
4968
|
-
expiresAt: Date.now() + 6e4
|
|
4969
|
-
});
|
|
4970
|
-
}
|
|
4971
|
-
takePendingChannelMemoryMutation(envelope, kind) {
|
|
4972
|
-
const key = this.channelMemoryPendingKey(envelope);
|
|
4973
|
-
const pending = this.pendingChannelMemoryMutations.get(key);
|
|
4974
|
-
if (!pending) {
|
|
4975
|
-
return void 0;
|
|
4976
|
-
}
|
|
4977
|
-
if (pending.expiresAt < Date.now()) {
|
|
4978
|
-
this.pendingChannelMemoryMutations.delete(key);
|
|
4979
|
-
return void 0;
|
|
4980
|
-
}
|
|
4981
|
-
if (pending.kind !== kind) {
|
|
4982
|
-
return void 0;
|
|
4983
|
-
}
|
|
4984
|
-
this.pendingChannelMemoryMutations.delete(key);
|
|
4985
|
-
return pending;
|
|
4986
|
-
}
|
|
4987
|
-
deletePendingChannelMemoryMutation(envelope) {
|
|
4988
|
-
const key = this.channelMemoryPendingKey(envelope);
|
|
4989
|
-
this.pendingChannelMemoryMutations.delete(key);
|
|
4990
|
-
this.pendingChannelMemoryMutationDeliveries.delete(key);
|
|
4872
|
+
this.pendingClears.set(key, now + 6e4);
|
|
4991
4873
|
}
|
|
4992
4874
|
async classifyChannelMemoryIntent(envelope) {
|
|
4993
4875
|
if (!this.memoryIntentClassifier || !this.channelMemory) {
|
|
@@ -5008,89 +4890,64 @@ ${sanitizePromptText(entry.text).trim()}` : `No channel memory entry ${intent.id
|
|
|
5008
4890
|
`);
|
|
5009
4891
|
return null;
|
|
5010
4892
|
}
|
|
5011
|
-
|
|
5012
|
-
|
|
5013
|
-
|
|
5014
|
-
|
|
5015
|
-
|
|
5016
|
-
|
|
5017
|
-
|
|
5018
|
-
|
|
5019
|
-
|
|
5020
|
-
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
|
|
5025
|
-
let texts = [];
|
|
5026
|
-
if (hasMemory) {
|
|
5027
|
-
const memory2 = result.memory;
|
|
5028
|
-
texts = typeof memory2 === "string" ? [memory2.trim()] : [];
|
|
5029
|
-
} else {
|
|
5030
|
-
const memories = result.memories;
|
|
5031
|
-
if (Array.isArray(memories)) {
|
|
5032
|
-
const snapshot = Array.from(memories);
|
|
5033
|
-
if (snapshot.every((memory2) => typeof memory2 === "string")) {
|
|
5034
|
-
texts = snapshot.map((memory2) => memory2.trim());
|
|
5035
|
-
}
|
|
5036
|
-
}
|
|
5037
|
-
}
|
|
5038
|
-
return texts.length >= 1 && texts.length <= 10 && texts.every((text2) => text2.length > 0) ? { kind: "remember", texts } : null;
|
|
5039
|
-
}
|
|
5040
|
-
if (intent === "clear_all")
|
|
5041
|
-
return { kind: "clear_request" };
|
|
5042
|
-
if (intent !== "list" && intent !== "inspect" && intent !== "update" && intent !== "remove") {
|
|
5043
|
-
return null;
|
|
5044
|
-
}
|
|
5045
|
-
const targetIds = result.targetIds;
|
|
5046
|
-
if (intent === "list" && targetIds === void 0) {
|
|
4893
|
+
const confidence = classified && typeof classified === "object" ? classified.confidence : void 0;
|
|
4894
|
+
if (typeof confidence !== "number" || !Number.isFinite(confidence) || confidence < 0 || confidence > 1 || confidence < CHANNEL_MEMORY_CLASSIFIER_MIN_CONFIDENCE) {
|
|
4895
|
+
return null;
|
|
4896
|
+
}
|
|
4897
|
+
const result = classified;
|
|
4898
|
+
const targetIds = result.targetIds;
|
|
4899
|
+
const entryById = new Map(entries.map((entry2) => [entry2.id, entry2]));
|
|
4900
|
+
const resolvedEntries = targetIds === void 0 ? void 0 : Array.isArray(targetIds) && targetIds.every((id) => typeof id === "string" && entryById.has(id)) && new Set(targetIds).size === targetIds.length ? this.entriesForChannelMemoryIds(entries, targetIds) : null;
|
|
4901
|
+
if (result.intent === "remember") {
|
|
4902
|
+
const memory = typeof result.memory === "string" ? result.memory.trim() : "";
|
|
4903
|
+
return memory ? { kind: "remember", text: memory } : null;
|
|
4904
|
+
}
|
|
4905
|
+
if (result.intent === "list") {
|
|
4906
|
+
if (resolvedEntries === void 0)
|
|
5047
4907
|
return { kind: "list", page: 1 };
|
|
5048
|
-
|
|
5049
|
-
if (!Array.isArray(targetIds))
|
|
5050
|
-
return null;
|
|
5051
|
-
const targetIdSnapshot = Array.from(targetIds);
|
|
5052
|
-
const entryById = new Map(entries.map((entry2) => [entry2.id, entry2]));
|
|
5053
|
-
if (!targetIdSnapshot.every((id) => typeof id === "string" && entryById.has(id)) || new Set(targetIdSnapshot).size !== targetIdSnapshot.length) {
|
|
4908
|
+
if (resolvedEntries === null)
|
|
5054
4909
|
return null;
|
|
5055
|
-
}
|
|
5056
|
-
|
|
5057
|
-
|
|
5058
|
-
|
|
5059
|
-
|
|
5060
|
-
|
|
5061
|
-
|
|
5062
|
-
|
|
5063
|
-
|
|
5064
|
-
|
|
5065
|
-
|
|
5066
|
-
|
|
5067
|
-
|
|
5068
|
-
|
|
5069
|
-
|
|
5070
|
-
|
|
5071
|
-
|
|
5072
|
-
|
|
5073
|
-
|
|
5074
|
-
|
|
5075
|
-
|
|
5076
|
-
|
|
5077
|
-
|
|
5078
|
-
|
|
5079
|
-
|
|
5080
|
-
|
|
5081
|
-
|
|
5082
|
-
|
|
5083
|
-
|
|
4910
|
+
return resolvedEntries.length === 0 ? { kind: "no_match" } : {
|
|
4911
|
+
kind: "list_matches",
|
|
4912
|
+
ids: resolvedEntries.map((entry2) => entry2.id)
|
|
4913
|
+
};
|
|
4914
|
+
}
|
|
4915
|
+
if (result.intent === "clear_all") {
|
|
4916
|
+
return { kind: "clear_request" };
|
|
4917
|
+
}
|
|
4918
|
+
if (result.intent !== "inspect" && result.intent !== "update" && result.intent !== "remove") {
|
|
4919
|
+
return null;
|
|
4920
|
+
}
|
|
4921
|
+
if (resolvedEntries === null || resolvedEntries === void 0)
|
|
4922
|
+
return null;
|
|
4923
|
+
if (resolvedEntries.length === 0)
|
|
4924
|
+
return { kind: "no_match" };
|
|
4925
|
+
if (resolvedEntries.length > 1) {
|
|
4926
|
+
return {
|
|
4927
|
+
kind: "ambiguous",
|
|
4928
|
+
ids: resolvedEntries.map((entry2) => entry2.id)
|
|
4929
|
+
};
|
|
4930
|
+
}
|
|
4931
|
+
const entry = resolvedEntries[0];
|
|
4932
|
+
if (result.intent === "inspect")
|
|
4933
|
+
return { kind: "inspect", id: entry.id };
|
|
4934
|
+
if (result.intent === "remove") {
|
|
4935
|
+
return {
|
|
4936
|
+
kind: "natural_remove",
|
|
4937
|
+
id: entry.id,
|
|
4938
|
+
expectedText: entry.text
|
|
4939
|
+
};
|
|
4940
|
+
}
|
|
4941
|
+
const text = typeof result.memory === "string" ? result.memory.trim() : "";
|
|
4942
|
+
if (text) {
|
|
4943
|
+
return {
|
|
5084
4944
|
kind: "natural_update",
|
|
5085
4945
|
id: entry.id,
|
|
5086
4946
|
text,
|
|
5087
4947
|
expectedText: entry.text
|
|
5088
|
-
}
|
|
5089
|
-
} catch (error) {
|
|
5090
|
-
process.stderr.write(`[${this.name}] channel memory intent validation failed: ${sanitizeLogText(this.channelMemoryErrorMessage(error), 200)}
|
|
5091
|
-
`);
|
|
5092
|
-
return null;
|
|
4948
|
+
};
|
|
5093
4949
|
}
|
|
4950
|
+
return null;
|
|
5094
4951
|
}
|
|
5095
4952
|
channelMemoryErrorMessage(error) {
|
|
5096
4953
|
return error instanceof Error ? error.message : String(error);
|
|
@@ -5420,9 +5277,6 @@ ${promptText}`;
|
|
|
5420
5277
|
throw new Error("processInbound called without a successful preflightInbound check.");
|
|
5421
5278
|
}
|
|
5422
5279
|
let memoryIntent = parseChannelMemoryIntent(envelope.text);
|
|
5423
|
-
if (memoryIntent?.kind === "update" || memoryIntent?.kind === "remove") {
|
|
5424
|
-
this.deletePendingChannelMemoryMutation(envelope);
|
|
5425
|
-
}
|
|
5426
5280
|
if (!memoryIntent && this.shouldClassifyChannelMemoryIntent(envelope.text)) {
|
|
5427
5281
|
memoryIntent = await this.classifyChannelMemoryIntent(envelope);
|
|
5428
5282
|
}
|
|
@@ -4,56 +4,56 @@ import {
|
|
|
4
4
|
Client,
|
|
5
5
|
So,
|
|
6
6
|
StdioClientTransport
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-NJOFRXTM.js";
|
|
8
8
|
import "./chunk-T4TZQJ7W.js";
|
|
9
9
|
import "./chunk-H6XPXXMH.js";
|
|
10
10
|
import "./chunk-5M6IDOMF.js";
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-A2HWMJVO.js";
|
|
12
|
+
import "./chunk-RCEEXIOO.js";
|
|
13
|
+
import "./chunk-KKRTYONM.js";
|
|
14
|
+
import "./chunk-TV6K2FB4.js";
|
|
15
15
|
import "./chunk-E2UVIFI2.js";
|
|
16
16
|
import "./chunk-XU457J4V.js";
|
|
17
17
|
import "./chunk-VDDGDZMA.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-SPJQO2CE.js";
|
|
19
19
|
import "./chunk-SZRN75WQ.js";
|
|
20
20
|
import "./chunk-HTO4JFDZ.js";
|
|
21
21
|
import "./chunk-CPBF7KYF.js";
|
|
22
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-F333XEAU.js";
|
|
23
23
|
import "./chunk-6AM5D4ME.js";
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-2Z5UX4KI.js";
|
|
25
|
+
import "./chunk-ARKANCNX.js";
|
|
26
|
+
import "./chunk-L5U3ELZX.js";
|
|
27
|
+
import "./chunk-TYLOFD2U.js";
|
|
28
28
|
import {
|
|
29
29
|
safeJsonStringify
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-MQOVXZAF.js";
|
|
31
31
|
import "./chunk-4WKAA4KS.js";
|
|
32
32
|
import "./chunk-CR3C7WXL.js";
|
|
33
|
-
import "./chunk-
|
|
33
|
+
import "./chunk-RTV5TUYB.js";
|
|
34
34
|
import "./chunk-VGC4I5JJ.js";
|
|
35
|
-
import "./chunk-
|
|
36
|
-
import "./chunk-
|
|
37
|
-
import "./chunk-
|
|
35
|
+
import "./chunk-FBU7WRZI.js";
|
|
36
|
+
import "./chunk-Y66VOBRP.js";
|
|
37
|
+
import "./chunk-WTNZ6DXB.js";
|
|
38
38
|
import {
|
|
39
39
|
BaseDeclarativeTool,
|
|
40
40
|
BaseToolInvocation
|
|
41
|
-
} from "./chunk-
|
|
42
|
-
import "./chunk-
|
|
43
|
-
import "./chunk-
|
|
41
|
+
} from "./chunk-JGUT3LWZ.js";
|
|
42
|
+
import "./chunk-OKAIGAYW.js";
|
|
43
|
+
import "./chunk-ZPAHLFZU.js";
|
|
44
44
|
import "./chunk-JESCGQM3.js";
|
|
45
|
-
import "./chunk-
|
|
45
|
+
import "./chunk-WIEO4CWB.js";
|
|
46
46
|
import "./chunk-XVNQMZ2I.js";
|
|
47
47
|
import "./chunk-FEOZBUMT.js";
|
|
48
|
-
import "./chunk-
|
|
48
|
+
import "./chunk-VRR65QYW.js";
|
|
49
49
|
import "./chunk-A4UCTEB5.js";
|
|
50
50
|
import "./chunk-XWRJCPHC.js";
|
|
51
|
-
import "./chunk-
|
|
51
|
+
import "./chunk-4LD5APFL.js";
|
|
52
52
|
import "./chunk-TYAMGABM.js";
|
|
53
53
|
import "./chunk-FCMNKVXT.js";
|
|
54
54
|
import "./chunk-DJ2GSRLV.js";
|
|
55
|
-
import "./chunk-
|
|
56
|
-
import "./chunk-
|
|
55
|
+
import "./chunk-LQIDP6K5.js";
|
|
56
|
+
import "./chunk-7NFB7LBQ.js";
|
|
57
57
|
import "./chunk-75DOP5OR.js";
|
|
58
58
|
import "./chunk-DMTGGOSA.js";
|
|
59
59
|
import "./chunk-YQ3U5MUC.js";
|