@bitseek/claw 1.3.9 → 1.3.10-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{accounts-UZBaDk40.js → accounts-CAdzApsy.js} +7 -7
- package/dist/{accounts-C9SoQRlD.js → accounts-CuCtdH3C.js} +1 -1
- package/dist/{accounts-MEuVJDoB.js → accounts-Cz3RQNdH.js} +1 -1
- package/dist/{acp-cli-BW0Dvkhh.js → acp-cli-BKsxHhdT.js} +2 -2
- package/dist/{acp-cli-Bt83My-G.js → acp-cli-Cpn_hxPA.js} +8 -8
- package/dist/{agent-scope-YUWhK3d-.js → agent-scope-BSkZamWK.js} +1 -1
- package/dist/{agents-DyoF_f3J.js → agents-CTTYn76G.js} +15 -15
- package/dist/{agents.config-DlsoquZH.js → agents.config-Dzz_a9Mp.js} +1 -1
- package/dist/{agents.config-D-pjQl0a.js → agents.config-P4PAeT4_.js} +2 -2
- package/dist/{api-key-rotation-D7ptHGeX.js → api-key-rotation-KLYtCoCN.js} +1 -1
- package/dist/{audio-preflight-Be5qvEQA.js → audio-preflight-B1d3Otlb.js} +36 -36
- package/dist/{audio-preflight-CRllHcyv.js → audio-preflight-COA5tnZv.js} +3 -3
- package/dist/{audio-preflight-BxZJpmRQ.js → audio-preflight-CoLgRr1u.js} +3 -3
- package/dist/{audio-preflight-UJQ0M6Hl.js → audio-preflight-q7ZFguqv.js} +3 -3
- package/dist/{audio-transcription-runner-Dnkt3gmf.js → audio-transcription-runner-BEtb5Jme.js} +22 -22
- package/dist/{audio-transcription-runner-_HLf10kW.js → audio-transcription-runner-BLpgvFWB.js} +1 -1
- package/dist/{audio-transcription-runner-DVI-SHAn.js → audio-transcription-runner-CrM5-5xi.js} +1 -1
- package/dist/{audio-transcription-runner-WwCG9VCF.js → audio-transcription-runner-s4TXhBuF.js} +1 -1
- package/dist/{audit-Ct605ugr.js → audit-D013ewlH.js} +3 -3
- package/dist/{audit-D-QnHZqm.js → audit-DG0miQ3A.js} +29 -29
- package/dist/{auth-DeS7F6Hd.js → auth-CVxYkRFJ.js} +1 -1
- package/dist/{auth-choice-BnlfU4y1.js → auth-choice-BRVQOSOG.js} +2 -2
- package/dist/{auth-choice-BtNLcXFy.js → auth-choice-CV8rLyb8.js} +12 -12
- package/dist/{auth-choice-jr1JhZAd.js → auth-choice-Cmq6GQD8.js} +14 -14
- package/dist/{auth-choice.apply-helpers-Cjj-3bz6.js → auth-choice.apply-helpers-CDB_05Fx.js} +1 -1
- package/dist/{auth-profiles-Dgxwr8Sa.js → auth-profiles-DNfjfFON.js} +16 -16
- package/dist/{auth-token-BYBDbosA.js → auth-token-CBowgXcm.js} +1 -1
- package/dist/{banner-Dl-V7Ptt.js → banner-CzgAzM1q.js} +2 -2
- package/dist/{bindings-BDScuSfd.js → bindings-B8U0BrYk.js} +1 -1
- package/dist/{bonjour-discovery-Cr9ghR-L.js → bonjour-discovery-CvAov_o2.js} +1 -1
- package/dist/{browser-cli-DGLAbUwi.js → browser-cli-CBBjI2Mu.js} +12 -12
- package/dist/{browser-cli-D2wMcHia.js → browser-cli-VBhMcj3d.js} +3 -3
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +5 -5
- package/dist/bundled/session-memory/handler.js +5 -5
- package/dist/{call-BdLuBL48.js → call-DU_f0KMj.js} +1 -1
- package/dist/{call-Dx2aHVrt.js → call-Da49LtVk.js} +10 -10
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-account-context-D__SZrX3.js → channel-account-context-8QkfoueX.js} +5 -5
- package/dist/{channel-options-BYE1VHBo.js → channel-options-CiMiQ1Q5.js} +3 -3
- package/dist/{channel-options-DbFmOvel.js → channel-options-CwgtYRMM.js} +1 -1
- package/dist/{channel-selection-ZJlD8RW_.js → channel-selection-BuY5iEbg.js} +1 -1
- package/dist/{channel-web-COoUoCJ1.js → channel-web-DNpAAGVd.js} +18 -18
- package/dist/{channel-web-DI8CzqrG.js → channel-web-DekWEF-x.js} +2 -2
- package/dist/{channels-cli-a630SQK6.js → channels-cli-DxMc7DH5.js} +95 -95
- package/dist/{channels-cli-CnwFvDuq.js → channels-cli-d0TsshWJ.js} +13 -13
- package/dist/{channels-status-issues-Ccr7cxgt.js → channels-status-issues-C3zPqi31.js} +1 -1
- package/dist/{chrome-F8yPeLCk.js → chrome-BosxOvwr.js} +4 -4
- package/dist/{clawbot-cli-CFFhJyHO.js → clawbot-cli-Cq5MLCVY.js} +5 -5
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-Dyjp2Eb9.js → cli-BN9QyJ2t.js} +76 -76
- package/dist/{cli-CSvBbD4L.js → cli-H2qqzBh-.js} +8 -8
- package/dist/{client-DVME2dNA.js → client-CbO7FTeL.js} +3 -2
- package/dist/{client-CluJsNRo.js → client-zj7haqMb.js} +1 -0
- package/dist/{command-registry-CiiKLf7K.js → command-registry-CZeXdavX.js} +13 -13
- package/dist/{commands-NkZDaV9a.js → commands-pIMTT07J.js} +1 -1
- package/dist/{commands-registry-BEOnewEO.js → commands-registry-DsvOsTTF.js} +3 -3
- package/dist/{completion-cli-A-7_BOG8.js → completion-cli-CtFPrLVk.js} +13 -13
- package/dist/{completion-cli-Cf-BVW55.js → completion-cli-CtlUQOU1.js} +1 -1
- package/dist/{config-cli-B8b1tCQT.js → config-cli-7YppRhHT.js} +1 -1
- package/dist/{config-cli-DKp1_Q2a.js → config-cli-CFOqOvdY.js} +7 -7
- package/dist/{config-guard-B9fTWjXL.js → config-guard-_F29cfDV.js} +3 -3
- package/dist/{config-validation-CA4J--dN.js → config-validation-DJiuTGa9.js} +3 -3
- package/dist/{configure-BFAj-ANy.js → configure-CyZK-h8l.js} +6 -6
- package/dist/{configure-C0LdxD84.js → configure-u6SJdWUT.js} +17 -17
- package/dist/control-ui/assets/{index-ixU5putu.js → index-BX-BH831.js} +408 -362
- package/dist/control-ui/assets/index-BX-BH831.js.map +1 -0
- package/dist/control-ui/assets/{index-EvU5ZebS.css → index-CG7TGGhP.css} +1 -1
- package/dist/control-ui/index.html +2 -2
- package/dist/{control-ui-assets-hAbiBedq.js → control-ui-assets-CWYG-y7n.js} +1 -1
- package/dist/{cron-cli-GqIWWgiC.js → cron-cli-9N0CgRKB.js} +12 -12
- package/dist/{cron-cli-CDE1OFDG.js → cron-cli-CF5BP-n7.js} +3 -3
- package/dist/{daemon-cli-D73VJA_5.js → daemon-cli-0g2nkiie.js} +2 -2
- package/dist/{daemon-cli-CEmNv817.js → daemon-cli-BMq2D7sp.js} +15 -15
- package/dist/daemon-cli.js +1 -0
- package/dist/{daemon-install-BmfoXdXy.js → daemon-install-C570xWh0.js} +4 -4
- package/dist/{daemon-install-helpers-BsUgG6nU.js → daemon-install-helpers-BHTLKVCH.js} +11 -11
- package/dist/{dashboard-DTlNIb75.js → dashboard-ChRtpalJ.js} +2 -2
- package/dist/{dashboard-DvN1mA5u.js → dashboard-EG5nMcy-.js} +1 -1
- package/dist/{deliver-CeItj33i.js → deliver-BCX2HRzP.js} +7 -7
- package/dist/{deliver-UlKfF5ki.js → deliver-CjCvs92K.js} +1 -1
- package/dist/{deliver-BR94HzGu.js → deliver-DvxmGKU7.js} +1 -1
- package/dist/{deliver-Ed6oj5Hr.js → deliver-nnwtUHe4.js} +1 -1
- package/dist/{devices-cli-BE_t6kEW.js → devices-cli-BRo35VQ8.js} +8 -8
- package/dist/{devices-cli-DolMfE77.js → devices-cli-DhkpGf9W.js} +2 -2
- package/dist/{diagnostic-BS_rmYNQ.js → diagnostic-CgNDbdut.js} +1 -1
- package/dist/{diagnostics-DCUyr8cM.js → diagnostics-DFZTmuFB.js} +5 -5
- package/dist/{directory-cli-CRSmIysH.js → directory-cli-BKfV5rcs.js} +8 -8
- package/dist/{dns-cli-CSAjz7bt.js → dns-cli--O5ugFD3.js} +5 -5
- package/dist/{dock-CslXtXH_.js → dock-Cki7hMDN.js} +4 -4
- package/dist/{docs-cli-BRb3xAC4.js → docs-cli-o8TMQTn6.js} +4 -4
- package/dist/{doctor-completion-DDa8Rj_C.js → doctor-completion-D1YQPRLZ.js} +1 -1
- package/dist/{doctor-completion-CqdGtWOU.js → doctor-completion-DdOKH1q8.js} +2 -2
- package/dist/{doctor-config-flow-BEveSr6U.js → doctor-config-flow-C2SyrY1V.js} +15 -15
- package/dist/{enable-rsx0VIgO.js → enable-mI_Pnmyk.js} +1 -1
- package/dist/entry.js +2 -2
- package/dist/{exec-approvals-allowlist-Dgb12MXc.js → exec-approvals-allowlist-Bdtmhwgj.js} +1 -1
- package/dist/{exec-approvals-cli-qbLlzazr.js → exec-approvals-cli-Cfh3OhWq.js} +4 -4
- package/dist/{exec-approvals-cli-xVv5uofa.js → exec-approvals-cli-U6R3GXsh.js} +16 -16
- package/dist/{exec-safe-bin-runtime-policy-BfybDm-q.js → exec-safe-bin-runtime-policy-DfgvmbZG.js} +2 -2
- package/dist/extensionAPI.js +5 -5
- package/dist/{fetch-BZWXCGP2.js → fetch-Dp9uG2qN.js} +3 -3
- package/dist/{fetch-guard-BplMfPrm.js → fetch-guard-ClzGpvFK.js} +1 -1
- package/dist/{fs-safe-nXGqHBF8.js → fs-safe-BtSQvuQn.js} +24 -24
- package/dist/{gateway-cli-CKOUY2y1.js → gateway-cli-D6K1V3Bk.js} +175 -167
- package/dist/{gateway-cli-D7OOfzP7.js → gateway-cli-RrWvU33e.js} +33 -25
- package/dist/{gateway-rpc-CEueWk1E.js → gateway-rpc-ByQgck-k.js} +1 -1
- package/dist/{gateway-rpc-yBoALaWH.js → gateway-rpc-DiWvH8Pq.js} +1 -1
- package/dist/{health-D7FO50c6.js → health-BEGEjMAH.js} +3 -3
- package/dist/{health-Dyd4RpCM.js → health-CgHjmUFQ.js} +14 -14
- package/dist/{hooks-cli-C0ESoNa0.js → hooks-cli-BqCZdnvb.js} +84 -84
- package/dist/{hooks-cli-DufRHJ0v.js → hooks-cli-Cigd_Wfj.js} +9 -9
- package/dist/{hooks-status-DC5Ls265.js → hooks-status-DLAFiQoD.js} +1 -1
- package/dist/{image-XqGcCt9q.js → image-5kjT0Ifv.js} +1 -1
- package/dist/{image-BKHeF2sO.js → image-Cboo5_y3.js} +1 -1
- package/dist/{image-DcfdUryQ.js → image-Cj831azd.js} +1 -1
- package/dist/{image-HyFl8MrD.js → image-CrLgaJde.js} +5 -5
- package/dist/{image-ops-_2-6WZ4r.js → image-ops-Cv4BHtyC.js} +10 -10
- package/dist/index.js +13 -13
- package/dist/{inspect-DRNo1VIP.js → inspect-BB0gFSLo.js} +4 -4
- package/dist/{install-safe-path-DBJEsbCp.js → install-safe-path-CSglDbi-.js} +25 -25
- package/dist/{installs-B2Z4DyUY.js → installs-D6ND4ZY7.js} +9 -9
- package/dist/{ipv4-BMbKD3zl.js → ipv4-Dw9v4ItT.js} +1 -1
- package/dist/{ir-DaZ8ITYK.js → ir-Bov3hbIf.js} +6 -6
- package/dist/{issue-format-BK98Hpx-.js → issue-format-Bnj64obT.js} +1 -1
- package/dist/{json-files-DrZ4qfxw.js → json-files-1hhV5hS6.js} +8 -8
- package/dist/{lifecycle-core-BrIHPmUB.js → lifecycle-core-_8xJF_9z.js} +5 -5
- package/dist/llm-slug-generator.js +5 -5
- package/dist/{login--V3ibRWJ.js → login-D-Js3AvX.js} +3 -3
- package/dist/{login-qr-TavUzvgE.js → login-qr-DzUhzJq4.js} +6 -6
- package/dist/{logs-cli-p5kAh0qi.js → logs-cli-Clchi69N.js} +3 -3
- package/dist/{logs-cli-Dv8TRwyI.js → logs-cli-DVtjPLN7.js} +9 -9
- package/dist/{manager-B74jUC6O.js → manager-ZjJ9M2x6.js} +14 -14
- package/dist/{manifest-registry-D1Y5hoq2.js → manifest-registry-InPIGvqe.js} +1 -1
- package/dist/{markdown-tables-BDe192Ai.js → markdown-tables-DoeNp6Yw.js} +1 -1
- package/dist/{memory-cli-BMul3CV1.js → memory-cli-C0hNuh-t.js} +12 -12
- package/dist/{model-BUgU1YvD.js → model-Cun06SAF.js} +2 -2
- package/dist/{model-catalog-D4hoiCav.js → model-catalog-BoIN1v0Q.js} +3 -3
- package/dist/{model-picker-C52jOYls.js → model-picker-HEDcBXIB.js} +4 -4
- package/dist/{models-Cdge-yuv.js → models-Xv17f3vZ.js} +18 -18
- package/dist/{models-cli-B3Xw4zlc.js → models-cli-BXyi6SWU.js} +81 -81
- package/dist/{models-cli-BfSKbP6r.js → models-cli-DUzbk_7x.js} +9 -9
- package/dist/{models-config-BUq1pLs3.js → models-config-BjTFyv9Z.js} +6 -6
- package/dist/{net-B1yWST2Q.js → net-Dsab06Rf.js} +2 -2
- package/dist/{node-cli-BabqC8Zy.js → node-cli-B15fr-qS.js} +33 -33
- package/dist/{node-cli-Do62XUPs.js → node-cli-Bw3p8-Sf.js} +1 -1
- package/dist/{node-command-policy-CcKer6vK.js → node-command-policy-B6a4rlIk.js} +1 -1
- package/dist/{node-command-policy-Dk_UuHKt.js → node-command-policy-CtLbfZ7S.js} +1 -1
- package/dist/{node-service-BNRDY7GU.js → node-service-Dc_k2bXh.js} +1 -1
- package/dist/{nodes-cli-pFODdHtG.js → nodes-cli-Cd4bT0G_.js} +3 -3
- package/dist/{nodes-cli-Dpzu3xiW.js → nodes-cli-DxNXbAjA.js} +16 -16
- package/dist/{nodes-screen-9RT6NG41.js → nodes-screen-BfHQppAv.js} +7 -7
- package/dist/{npm-pack-install-dRUKCY1x.js → npm-pack-install-BAwUbntz.js} +18 -18
- package/dist/{npm-resolution-CIbDK6N6.js → npm-resolution-B-kbVjrb.js} +1 -1
- package/dist/{npm-resolution-CEMLdRCK.js → npm-resolution-BAviHHRA.js} +5 -5
- package/dist/{onboard-D7KozrLf.js → onboard-Cu0G7EAR.js} +3 -3
- package/dist/{onboard-CMEmzKLW.js → onboard-RamoqBQh.js} +6 -6
- package/dist/{onboard-channels-BfnzcJrR.js → onboard-channels-DHx-uZCo.js} +2 -2
- package/dist/{onboard-channels-Bw9YbUzP.js → onboard-channels-xMJXbWfp.js} +20 -20
- package/dist/{onboard-custom-CtmSA7Ih.js → onboard-custom-Bdm0AEOf.js} +3 -3
- package/dist/{onboard-custom.shared-DGA1AopE.js → onboard-custom.shared-BJ1NdBPQ.js} +2 -2
- package/dist/{onboard-helpers-DLQ_XMs1.js → onboard-helpers-BS_bPZKe.js} +11 -11
- package/dist/{onboard-helpers-Oi4C_OMX.js → onboard-helpers-DEzzN6tA.js} +1 -1
- package/dist/{onboard-hooks-kJZEQTda.js → onboard-hooks-BKIWvalG.js} +4 -4
- package/dist/{onboard-remote-XXaOoJYC.js → onboard-remote-C_jBXm-z.js} +1 -1
- package/dist/{onboard-remote-C1-vrrIn.js → onboard-remote-St2_FGbe.js} +3 -3
- package/dist/{onboard-skills-C8Mue7Px.js → onboard-skills-D7ZRTLs3.js} +1 -1
- package/dist/{onboard-skills-BxC5udud.js → onboard-skills-m9oH0mp4.js} +4 -4
- package/dist/{onboarding-BLcdYzEJ.js → onboarding-I5wAbpKA.js} +13 -13
- package/dist/{onboarding-C1mU33hA.js → onboarding-VPTSOvzr.js} +7 -7
- package/dist/{onboarding.finalize-2exVy-pf.js → onboarding.finalize-DfoOvZxa.js} +13 -13
- package/dist/{onboarding.finalize-BP0DKBAn.js → onboarding.finalize-Dvd8Uqat.js} +89 -89
- package/dist/{onboarding.gateway-config-CsSayEFl.js → onboarding.gateway-config-BZkfmBr7.js} +18 -18
- package/dist/{onboarding.gateway-config-DImrb8_4.js → onboarding.gateway-config-DYozawla.js} +4 -4
- package/dist/{openai-model-default-DYxdi5ZX.js → openai-model-default-Dbn33YX3.js} +2 -2
- package/dist/{outbound-DhEQ9Uxy.js → outbound-SGcz-hQs.js} +4 -4
- package/dist/{outbound-attachment-Dhx3-Gcn.js → outbound-attachment-BLl9Vid0.js} +2 -2
- package/dist/{pairing-cli-CvCRXsUM.js → pairing-cli-6-9woWGC.js} +9 -9
- package/dist/{pairing-labels-BUGAt7vg.js → pairing-labels-RbKVJQq5.js} +1 -1
- package/dist/{pairing-store-B27cuhBQ.js → pairing-store-BBxShFYa.js} +3 -3
- package/dist/{path-alias-guards-BQRm9WIp.js → path-alias-guards-DCVgvjo3.js} +3 -3
- package/dist/{path-safety-DDHmx5YW.js → path-safety-DmE3pKqe.js} +1 -1
- package/dist/{paths-B0fezTQW.js → paths-ufuDrRZO.js} +9 -9
- package/dist/{pi-embedded-Dr2npoTx.js → pi-embedded-CLpkFzke.js} +58 -17
- package/dist/{pi-embedded-DzJti3AT.js → pi-embedded-JvXxFqT7.js} +58 -17
- package/dist/{pi-embedded-helpers-J2caGJww.js → pi-embedded-helpers-CKEoEHoe.js} +13 -1
- package/dist/{pi-embedded-helpers-DeshJQRZ.js → pi-embedded-helpers-CYvB-mUe.js} +13 -1
- package/dist/{pi-embedded-helpers-BvHlsuFU.js → pi-embedded-helpers-DQudcPte.js} +13 -1
- package/dist/{pi-embedded-helpers-C6qtvkzL.js → pi-embedded-helpers-YXFiUfat.js} +19 -7
- package/dist/{pi-model-discovery-P149vq2k.js → pi-model-discovery-BnW942uP.js} +1 -1
- package/dist/{pi-tools.policy-DwPGGCBG.js → pi-tools.policy-ClPMGEq4.js} +5 -5
- package/dist/{plugin-auto-enable-C4EhTu_y.js → plugin-auto-enable-MtcFdE6T.js} +3 -3
- package/dist/{plugin-registry-htTOE5ts.js → plugin-registry-BlrQgW0D.js} +3 -3
- package/dist/{plugin-registry-C6E8urZI.js → plugin-registry-gZUfqcq8.js} +1 -1
- package/dist/plugin-sdk/{accounts-CK8a9UID.js → accounts-B0MGFQ0N.js} +1 -1
- package/dist/plugin-sdk/{accounts-lwmUYGUE.js → accounts-C6gCLKxD.js} +3 -3
- package/dist/plugin-sdk/{accounts-CS3X-w75.js → accounts-CtdUkArQ.js} +1 -1
- package/dist/plugin-sdk/{active-listener-BWmkk9uJ.js → active-listener-B4jWKHgp.js} +1 -1
- package/dist/plugin-sdk/{agent-scope-hbikmG29.js → agent-scope-C86F9PtR.js} +3 -3
- package/dist/plugin-sdk/agents/pi-embedded-helpers/errors.d.ts +6 -0
- package/dist/plugin-sdk/agents/pi-embedded-helpers.d.ts +1 -1
- package/dist/plugin-sdk/agents/pi-embedded-subscribe.handlers.messages.d.ts +8 -0
- package/dist/plugin-sdk/{api-key-rotation-CRkGVkaE.js → api-key-rotation-Ckeuk7ma.js} +2 -2
- package/dist/plugin-sdk/{audio-preflight-CnShZx3d.js → audio-preflight-bn_-lI6T.js} +33 -33
- package/dist/plugin-sdk/{audio-transcription-runner-02Kf0QEw.js → audio-transcription-runner-B7Y82C4Z.js} +10 -10
- package/dist/plugin-sdk/{bindings-nNuMY2YM.js → bindings-ChmACL7A.js} +2 -2
- package/dist/plugin-sdk/{channel-activity-Bqbt4eXH.js → channel-activity-BmpQZg2e.js} +3 -3
- package/dist/plugin-sdk/{channel-web-g5RnVnVc.js → channel-web-DWi8zvvE.js} +23 -23
- package/dist/plugin-sdk/{chrome-2cewsnu1.js → chrome-DuBOBfOM.js} +7 -7
- package/dist/plugin-sdk/{chunk-BYCmTLPZ.js → chunk-C0X4iaGn.js} +1 -1
- package/dist/plugin-sdk/{command-format-BlehDg53.js → command-format-CElfSn4A.js} +1 -1
- package/dist/plugin-sdk/{commands-registry-BOYYhfZ3.js → commands-registry-B1R1u0Ef.js} +5 -5
- package/dist/plugin-sdk/{config-QlwvRinO.js → config-BIceFM4q.js} +10 -10
- package/dist/plugin-sdk/{deliver-TLuU1nrG.js → deliver-B8tQybg3.js} +11 -11
- package/dist/plugin-sdk/{diagnostic-Qi8YtEBS.js → diagnostic-BbwhaVH5.js} +2 -2
- package/dist/plugin-sdk/{dock-kzzjqc23.js → dock-ofKZIPvX.js} +6 -6
- package/dist/plugin-sdk/{errors-DVIIAWgf.js → errors-D1n_xg5Q.js} +1 -1
- package/dist/plugin-sdk/{fetch-guard-DBpNRDsE.js → fetch-guard-JfIUTAXW.js} +2 -2
- package/dist/plugin-sdk/{fs-safe-m9IoJqSI.js → fs-safe-C32W4lb9.js} +3 -3
- package/dist/plugin-sdk/gateway/protocol/schema/logs-chat.d.ts +1 -0
- package/dist/plugin-sdk/gateway/protocol/schema/protocol-schemas.d.ts +1 -0
- package/dist/plugin-sdk/{image-DthA-2Bt.js → image-C6HhIJq-.js} +6 -6
- package/dist/plugin-sdk/{image-ops-DZf5e0hi.js → image-ops-DgyVTXxr.js} +1 -1
- package/dist/plugin-sdk/index.js +64 -64
- package/dist/plugin-sdk/{ir-DqRMrArF.js → ir-CUJX2XmF.js} +6 -6
- package/dist/plugin-sdk/{local-roots-D45XofHa.js → local-roots-PQBdjF5V.js} +4 -4
- package/dist/plugin-sdk/{logger-DfvFauG1.js → logger-BnDVA5Pn.js} +1 -1
- package/dist/plugin-sdk/{login-jCR1wiz5.js → login-fF45LyM7.js} +6 -6
- package/dist/plugin-sdk/{login-qr-yj8Ns7nC.js → login-qr-IMrHS0CU.js} +9 -9
- package/dist/plugin-sdk/{manager-Cm_A6m9L.js → manager-B0SAEWzU.js} +10 -10
- package/dist/plugin-sdk/{markdown-tables-CBEW0AEz.js → markdown-tables-BTRy5g54.js} +1 -1
- package/dist/plugin-sdk/{message-channel-CettmQxR.js → message-channel-BBGSgNfZ.js} +1 -1
- package/dist/plugin-sdk/{outbound-Bciu0j21.js → outbound-CsQhMb1t.js} +7 -7
- package/dist/plugin-sdk/{outbound-attachment-JlTOABiQ.js → outbound-attachment-PV4MNgO7.js} +2 -2
- package/dist/plugin-sdk/{path-alias-guards-DJzjOH6k.js → path-alias-guards-CtvHdXkF.js} +1 -1
- package/dist/plugin-sdk/{pi-embedded-helpers-5SLsxaPD.js → pi-embedded-helpers-BHnEYKw0.js} +30 -18
- package/dist/plugin-sdk/{pi-model-discovery-D69omnZ4.js → pi-model-discovery-CeMr9qlX.js} +1 -1
- package/dist/plugin-sdk/{plugins-PXEjTi0a.js → plugins-DoosFTlv.js} +6 -6
- package/dist/plugin-sdk/{proxy-BJHqiC33.js → proxy-BC7TfAei.js} +1 -1
- package/dist/plugin-sdk/{proxy-fetch-nIK8JZcG.js → proxy-fetch-D7xNZwMz.js} +1 -1
- package/dist/plugin-sdk/{pw-ai-BYRY2b8b.js → pw-ai-COCVSS3S.js} +13 -13
- package/dist/plugin-sdk/{qmd-manager-BDZK_TQ2.js → qmd-manager-Dy2i7Yk2.js} +8 -8
- package/dist/plugin-sdk/{query-expansion-BbG3wPsu.js → query-expansion-Ce600EN-.js} +2 -2
- package/dist/plugin-sdk/{redact-CJpp3pJZ.js → redact-DR57Khnb.js} +1 -1
- package/dist/plugin-sdk/{registry-DZtlIW2B.js → registry-CoOCMLwt.js} +2 -2
- package/dist/plugin-sdk/{replies-EKccD3Vq.js → replies-DrAmBEev.js} +3 -3
- package/dist/plugin-sdk/{reply-Bn7G66m2.js → reply-UD3RANYz.js} +139 -98
- package/dist/plugin-sdk/{reply-prefix-DSjz9ex2.js → reply-prefix-S61xcDq5.js} +1 -1
- package/dist/plugin-sdk/{resolve-outbound-target-BWnhQoZm.js → resolve-outbound-target-CHbuy5MW.js} +2 -2
- package/dist/plugin-sdk/{resolve-route-f4hKLSdv.js → resolve-route-D17tpQod.js} +4 -4
- package/dist/plugin-sdk/{retry-WkwmuOq5.js → retry-BCP_IcXF.js} +1 -1
- package/dist/plugin-sdk/{send-By6LXMdT.js → send-4oPoqu-k.js} +8 -8
- package/dist/plugin-sdk/{send-D6q7DSEd.js → send-B-OjHj4t.js} +7 -7
- package/dist/plugin-sdk/{send-wah5ag3x.js → send-BnUKf8wg.js} +10 -10
- package/dist/plugin-sdk/{send-CLmu_bs1.js → send-DXz49rIh.js} +6 -6
- package/dist/plugin-sdk/{send-DVH_jqoJ.js → send-DfA6vCVP.js} +15 -15
- package/dist/plugin-sdk/{session-BfaJDj55.js → session-B_TxDBeW.js} +5 -5
- package/dist/plugin-sdk/{session-meta-CtcszwHp.js → session-meta-Cs9Hy3rA.js} +1 -1
- package/dist/plugin-sdk/{sessions-CCrnhL0f.js → sessions-D0O4NXJE.js} +6 -6
- package/dist/plugin-sdk/{skill-commands-BbZ5VC2j.js → skill-commands-Cq3lRmFA.js} +5 -5
- package/dist/plugin-sdk/{skills-DhjFSX9k.js → skills-CKk6dkB7.js} +8 -8
- package/dist/plugin-sdk/{ssrf-yJVFBwP_.js → ssrf-DWKS2l1Z.js} +1 -1
- package/dist/plugin-sdk/{store-B49PVNHw.js → store-D-KJbO1K.js} +2 -2
- package/dist/plugin-sdk/{subsystem-BSS_Lti_.js → subsystem-BOTkxxI1.js} +2 -2
- package/dist/plugin-sdk/{tables-B2ndgibI.js → tables-iAM0v6UL.js} +1 -1
- package/dist/plugin-sdk/{target-errors-3PJA_VbO.js → target-errors-Di5oh5b0.js} +2 -2
- package/dist/plugin-sdk/{tokens-CYf5ZhLm.js → tokens-DUELMaP-.js} +1 -1
- package/dist/plugin-sdk/{tool-images-DzNHghBZ.js → tool-images-4TDsVJHN.js} +2 -2
- package/dist/plugin-sdk/{tool-loop-detection-paUegJmP.js → tool-loop-detection-BooG-g5v.js} +2 -2
- package/dist/plugin-sdk/{utils-DaD2HGTy.js → utils-B7zMI7Td.js} +1 -1
- package/dist/plugin-sdk/web-UMF3rhRY.js +72 -0
- package/dist/plugin-sdk/{whatsapp-actions-fOVsMKWU.js → whatsapp-actions-CntfyIDF.js} +25 -25
- package/dist/{plugins-DPspmGax.js → plugins-B9LVNfXo.js} +2 -2
- package/dist/{plugins-cli-Bh8rE7t6.js → plugins-cli-BT_YdHlo.js} +9 -9
- package/dist/{plugins-cli-NTdICagm.js → plugins-cli-Dowiu6KT.js} +86 -86
- package/dist/{ports-Do_Plo8C.js → ports-BKC_uvax.js} +2 -2
- package/dist/{ports-BNwHSlzK.js → ports-TfIbPY8z.js} +1 -1
- package/dist/{program-BzrloeUd.js → program-BA-5175y.js} +84 -84
- package/dist/{program-context-Dj2_qoie.js → program-context-DFXBN0ZY.js} +31 -31
- package/dist/{prompt-select-styled-CRUyZ8Zn.js → prompt-select-styled-BcZ8H5DI.js} +39 -39
- package/dist/{prompt-select-styled-CRpJTxEn.js → prompt-select-styled-D6W6ZbLn.js} +6 -6
- package/dist/{provider-auth-helpers-CTHHzB9d.js → provider-auth-helpers-BEYTbEO-.js} +1 -1
- package/dist/{provider-auth-helpers-CGlrXlEv.js → provider-auth-helpers-Bu2aZSnq.js} +5 -5
- package/dist/{proxy-env-B9lqcBfU.js → proxy-env-DQluNeAy.js} +1 -1
- package/dist/{push-apns-CfIOYv6I.js → push-apns-8_4x3QDX.js} +5 -5
- package/dist/{push-apns-D6P4wyMo.js → push-apns-Cr1-03ZS.js} +1 -1
- package/dist/{pw-ai-B4CY-RXZ.js → pw-ai-CgRxvnyo.js} +15 -15
- package/dist/{qmd-manager-CoaYK3NS.js → qmd-manager-ZEPpjdm5.js} +20 -20
- package/dist/{qr-cli-tns16Dij.js → qr-cli-UOH4AqoB.js} +1 -1
- package/dist/{query-expansion-BOhTMSRT.js → query-expansion-DmsmrMjB.js} +12 -12
- package/dist/{redact-snapshot-Cx6qYiIY.js → redact-snapshot-BGusjTY9.js} +1 -1
- package/dist/{register.agent-CbbtPCTG.js → register.agent-CHE7Qalv.js} +97 -97
- package/dist/{register.agent-tUHan7i6.js → register.agent-FsyQ2Nm4.js} +13 -13
- package/dist/register.configure-CXDvAw-s.js +175 -0
- package/dist/{register.configure-H6uG1A19.js → register.configure-DS8ihv8X.js} +16 -16
- package/dist/{register.init-B2cwbe39.js → register.init-DY3iSz8Y.js} +16 -16
- package/dist/{register.maintenance-B4zbpuqh.js → register.maintenance-Dnr1w5A1.js} +15 -15
- package/dist/{register.maintenance-C4vUOdVb.js → register.maintenance-yrpKG5iB.js} +99 -99
- package/dist/{register.message-BNLwGPS-.js → register.message-DH4rUSVi.js} +77 -77
- package/dist/{register.message-BmweIh8D.js → register.message-p-nIqAYY.js} +9 -9
- package/dist/{register.onboard-B_CVsLWL.js → register.onboard-CC50fpnA.js} +5 -5
- package/dist/{register.onboard-DElUgwoa.js → register.onboard-maBvm3Rf.js} +18 -18
- package/dist/{register.setup-BF5BjQQE.js → register.setup-CwMkpOf-.js} +5 -5
- package/dist/{register.setup-DWIO5nY-.js → register.setup-igARJvnk.js} +21 -21
- package/dist/{register.start-BKHJP2Is.js → register.start-K1LpFGp0.js} +4 -4
- package/dist/{register.start-csWISzdo.js → register.start-nNZtIOVx.js} +17 -17
- package/dist/{register.status-health-sessions-CGnHeuq9.js → register.status-health-sessions-C3RoepIh.js} +12 -12
- package/dist/{register.status-health-sessions-DVQycJyO.js → register.status-health-sessions-TaLuKSkg.js} +91 -91
- package/dist/{register.subclis-CXCp9MIN.js → register.subclis-DscBnK86.js} +31 -31
- package/dist/{replies-9B0e_W0H.js → replies-Cnwwqegi.js} +1 -1
- package/dist/{reply-Cmqwu6vZ.js → reply-Cm66z0-z.js} +61 -21
- package/dist/{reply-prefix-CqTNlEbX.js → reply-prefix-BwXX5Jk8.js} +1 -1
- package/dist/{resolve-route-rhGDrrKc.js → resolve-route-BAFZr0AD.js} +2 -2
- package/dist/{rpc-Ca9dlA9v.js → rpc-CeTMYkun.js} +1 -1
- package/dist/{rpc-CI7SPdeS.js → rpc-rTqBtgDp.js} +1 -1
- package/dist/{run-main-LIh93d7b.js → run-main-w6C2SiYG.js} +95 -95
- package/dist/{runtime-vnX4kz3-.js → runtime-uZw9qW6d.js} +2 -2
- package/dist/{sandbox-ClasEjRW.js → sandbox-GZ80o0rN.js} +18 -18
- package/dist/{sandbox-cli-BxLxr8Ov.js → sandbox-cli-BdzWh2X7.js} +26 -26
- package/dist/{secrets-cli-DEGkMLrT.js → secrets-cli-DroWvA-9.js} +10 -10
- package/dist/{secrets-cli-DVRKrzox.js → secrets-cli-i2YWj3kH.js} +3 -3
- package/dist/{security-cli-D4O7OC12.js → security-cli-B-t3jhRM.js} +4 -4
- package/dist/{security-cli-608Hrkk0.js → security-cli-VJf80mpc.js} +43 -43
- package/dist/{send-BUqXYyi5.js → send-B3N6ed5I.js} +11 -11
- package/dist/{send-BLyXZjPe.js → send-CUhKEB1L.js} +8 -8
- package/dist/{send-DLfPZ3_F.js → send-D52tAxa7.js} +6 -6
- package/dist/{send-CwHSY0pB.js → send-DyQvZx-9.js} +6 -6
- package/dist/{send-BLv3U-2N.js → send-ofq5TYCm.js} +5 -5
- package/dist/{server-context-3YhieMNo.js → server-context-BIKTw3k8.js} +12 -12
- package/dist/{server-lifecycle-DE7bHlKs.js → server-lifecycle-N5bU8mjm.js} +2 -2
- package/dist/{server-middleware-hZnQvs4T.js → server-middleware-Q0-cjKBA.js} +1 -1
- package/dist/{server-node-events-DhzgyreJ.js → server-node-events-DIZCYbQS.js} +9 -9
- package/dist/{server-node-events-SLHkUEcI.js → server-node-events-DgNEG1Jq.js} +77 -77
- package/dist/{server-BAuP980-.js → server-si15CkOB.js} +19 -19
- package/dist/{service-DdLDWk4F.js → service-Bdwg8-MP.js} +15 -15
- package/dist/{session-D8FUKdiW.js → session-Cjlyc-CV.js} +1 -1
- package/dist/{session-meta-Cyjw6vgH.js → session-meta-Dofh28uR.js} +1 -1
- package/dist/{session-utils-BSsFceEN.js → session-utils-dcEiC-U5.js} +6 -6
- package/dist/{sessions-DugDYFTs.js → sessions-BUvaIZVg.js} +15 -15
- package/dist/{sessions-D0PiwO3b.js → sessions-DupNmVK4.js} +4 -4
- package/dist/{shared-fKlvovu7.js → shared-CDevUk3t.js} +1 -1
- package/dist/{shared-D96SvIQZ.js → shared-haEHGkpf.js} +3 -3
- package/dist/{skill-commands-KfP9rDJM.js → skill-commands-Do5yZvPn.js} +5 -5
- package/dist/{skill-scanner-D7WuF5Sb.js → skill-scanner-DiC9yuOY.js} +6 -6
- package/dist/{skills-CDZAo2Sd.js → skills-cQZqFYZM.js} +3 -3
- package/dist/{skills-cli-DaSd8Xc2.js → skills-cli-BXNcPNTR.js} +5 -5
- package/dist/{skills-install-Ba_1ws_H.js → skills-install-BASrKfvX.js} +6 -6
- package/dist/{skills-status-CV1r9Fs_.js → skills-status-DLQ7pr9r.js} +1 -1
- package/dist/{status-06d3zhTb.js → status-DeOsbp6k.js} +5 -5
- package/dist/{status-B8I9eCIt.js → status-EvQ73B8e.js} +26 -26
- package/dist/{status.update-CbAiJIbB.js → status.update-DUDM6iUC.js} +2 -2
- package/dist/{store-GKlw8Qa-.js → store-D1eSPAL7.js} +5 -5
- package/dist/{subagent-registry-CU894Q5r.js → subagent-registry-DxueEkqw.js} +203 -163
- package/dist/{system-cli-CFkPJfOG.js → system-cli-BXGiTYVZ.js} +9 -9
- package/dist/{system-cli-C0Ed85zv.js → system-cli-im47tHnN.js} +3 -3
- package/dist/{system-run-command-Pd55ipfO.js → system-run-command-BkdvGhnZ.js} +1 -1
- package/dist/{systemd-DVgFh5bF.js → systemd-CTamqs8u.js} +9 -9
- package/dist/{systemd-hints-BC7wmmDb.js → systemd-hints-D4VSR4gB.js} +6 -6
- package/dist/{systemd-linger-C0GrW0si.js → systemd-linger-BbxFU05t.js} +1 -1
- package/dist/{tables-B6wgQqYN.js → tables-CTFvIcTQ.js} +1 -1
- package/dist/{tailnet-D67wyPIH.js → tailnet-CQxQNgt6.js} +1 -1
- package/dist/{target-errors-AeE93vdq.js → target-errors-8-urss_s.js} +4 -4
- package/dist/{tool-images-rmLnTSxP.js → tool-images-hL7SizLq.js} +1 -1
- package/dist/{tui-B7dzJD1I.js → tui-DExFltkR.js} +6 -6
- package/dist/{tui-BRtGtxGi.js → tui-DhEGvFT0.js} +3 -3
- package/dist/{tui-cli-CjdbITUY.js → tui-cli-Bjx0DKT6.js} +4 -4
- package/dist/{tui-cli-q5z-00Hw.js → tui-cli-oM2kNbdj.js} +33 -33
- package/dist/{update-BPBo5wB4.js → update-Bifl3Vpi.js} +3 -3
- package/dist/{update-cli-Bq0E6UWE.js → update-cli-By-XQR0X.js} +107 -107
- package/dist/{update-cli-CL5aaHct.js → update-cli-CGZx-QNj.js} +15 -15
- package/dist/{update-runner-CDmAZF8g.js → update-runner-D3Dqz9wz.js} +16 -16
- package/dist/{update-runner-jAwo79K3.js → update-runner-meF3Yj68.js} +1 -1
- package/dist/{web-_WxgxGh7.js → web-C8qeseGa.js} +5 -5
- package/dist/{web-CadeCgho.js → web-CUoANEo6.js} +5 -5
- package/dist/{web-CGIjjBC-.js → web-pvjSSXiL.js} +9 -9
- package/dist/web-yRXxasJ5.js +127 -0
- package/dist/{webhooks-cli-Dov_rqUg.js → webhooks-cli-BsZ0IIku.js} +6 -6
- package/dist/{whatsapp-actions-COrqjCys.js → whatsapp-actions-DZxeDPhI.js} +19 -19
- package/dist/{with-timeout-DUosdGNq.js → with-timeout-CojHmZpl.js} +3 -3
- package/dist/{workspace-CoIrgiMR.js → workspace-BxNxoapu.js} +1 -1
- package/dist/{workspace-D3Bd1Wd-.js → workspace-CZCYGcgM.js} +23 -23
- package/dist/{workspace-dirs-x94RXrLL.js → workspace-dirs-CksYiwHf.js} +1 -1
- package/dist/{wsl-KDz114y6.js → wsl-CiVud8tt.js} +2 -2
- package/docs/install/installer.md +1 -0
- package/docs/plans/2026-03-27-bitseek-topup-modal-design.md +52 -0
- package/package.json +1 -1
- package/dist/control-ui/assets/index-ixU5putu.js.map +0 -1
- package/dist/plugin-sdk/web-BapRq5np.js +0 -72
- package/dist/register.configure-CurF_EBC.js +0 -175
- package/dist/web-B8lEM5aa.js +0 -127
|
@@ -4,122 +4,122 @@ import { g as resolveStateDir, r as STATE_DIR, u as resolveGatewayPort, y as res
|
|
|
4
4
|
import { d as defaultRuntime, t as createSubsystemLogger, u as createNonExitingRuntime } from "./subsystem-BkPzfTiu.js";
|
|
5
5
|
import { t as parseBooleanValue$1 } from "./boolean-DtWR5bt3.js";
|
|
6
6
|
import { r as isTruthyEnvValue } from "./entry.js";
|
|
7
|
-
import { $n as resolveAuthStorePathForDisplay, $r as buildAssistantMessageWithZeroUsage, Ai as DEFAULT_MODEL, Bn as listProfilesForProvider, Bt as unsetConfigValueAtPath, Cr as resolveReasoningDefault, Ct as isAvatarDataUrl, Dn as resolveSlackNativeStreaming, Dt as isSupportedLocalAvatarExtension, En as resolveDiscordPreviewStreamMode, Er as resolveThinkingDefault, Et as isPathWithinRoot, Ft as setConfigOverride, G as isInboundPathAllowed, H as normalizeTelegramCommandName, I as resolveConfigSnapshotHash, It as unsetConfigOverride, J as resolveIMessageRemoteAttachmentRoots, Jt as buildEnforcedShellCommand, Kn as ensureAuthProfileStore, Ln as resolveOwnerDisplaySetting, Lt as getConfigValueAtPath, M as loadConfig, Mi as resolveAuthProfileDisplayLabel, Nn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Nt as getConfigOverrides, Oi as splitTrailingAuthProfile, On as resolveSlackStreamingMode, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, Pt as resetConfigOverrides, Qr as buildAssistantMessage, R as writeConfigFile, Rt as parseConfigPath, Si as normalizeSecretInput, Sr as resolveModelRefFromString, St as AVATAR_MAX_BYTES, Tn as mapStreamingModeToSlackLegacyDraftStreamMode, Tr as resolveSubagentSpawnModelSelection, U as resolveTelegramCustomCommands, V as TELEGRAM_COMMAND_NAME_PATTERN, Vn as markAuthProfileGood, X as parseNonNegativeByteSize, Xr as OLLAMA_NATIVE_BASE_URL, Y as normalizeScpRemoteHost, Zr as createOllamaStreamFn, a as markAuthProfileFailure, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, br as resolveDefaultModelForAgent, c as resolveProfilesUnavailableReason, ci as resolveModelAuthMode, cr as findNormalizedProviderValue, di as resolveShellEnvFallbackTimeoutMs, dr as isCliProvider, ei as buildStreamErrorAssistantMessage, er as resolveOpenClawAgentDir, fr as modelKey, hr as normalizeProviderId, i as isProfileInCooldown, ii as requireApiKey, ji as DEFAULT_PROVIDER, jt as validateJsonSchemaValue, ki as DEFAULT_CONTEXT_TOKENS, l as resolveApiKeyForProfile, n as resolveAuthProfileOrder, ni as getApiKeyForModel, o as markAuthProfileUsed, or as buildConfiguredAllowlistKeys, pr as normalizeModelRef$2, q as resolveIMessageAttachmentRoots, r as getSoonestCooldownExpiry, ri as getCustomProviderApiKey, si as resolveEnvApiKey, sr as buildModelAliasIndex, ti as buildUsageWithNoCost, tr as withFileLock, ui as getShellPathFromLoginShell, wt as isAvatarHttpUrl, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins, zn as dedupeProfileIds, zt as setConfigValueAtPath } from "./auth-profiles-
|
|
7
|
+
import { $n as resolveAuthStorePathForDisplay, $r as buildAssistantMessageWithZeroUsage, Ai as DEFAULT_MODEL, Bn as listProfilesForProvider, Bt as unsetConfigValueAtPath, Cr as resolveReasoningDefault, Ct as isAvatarDataUrl, Dn as resolveSlackNativeStreaming, Dt as isSupportedLocalAvatarExtension, En as resolveDiscordPreviewStreamMode, Er as resolveThinkingDefault, Et as isPathWithinRoot, Ft as setConfigOverride, G as isInboundPathAllowed, H as normalizeTelegramCommandName, I as resolveConfigSnapshotHash, It as unsetConfigOverride, J as resolveIMessageRemoteAttachmentRoots, Jt as buildEnforcedShellCommand, Kn as ensureAuthProfileStore, Ln as resolveOwnerDisplaySetting, Lt as getConfigValueAtPath, M as loadConfig, Mi as resolveAuthProfileDisplayLabel, Nn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Nt as getConfigOverrides, Oi as splitTrailingAuthProfile, On as resolveSlackStreamingMode, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, Pt as resetConfigOverrides, Qr as buildAssistantMessage, R as writeConfigFile, Rt as parseConfigPath, Si as normalizeSecretInput, Sr as resolveModelRefFromString, St as AVATAR_MAX_BYTES, Tn as mapStreamingModeToSlackLegacyDraftStreamMode, Tr as resolveSubagentSpawnModelSelection, U as resolveTelegramCustomCommands, V as TELEGRAM_COMMAND_NAME_PATTERN, Vn as markAuthProfileGood, X as parseNonNegativeByteSize, Xr as OLLAMA_NATIVE_BASE_URL, Y as normalizeScpRemoteHost, Zr as createOllamaStreamFn, a as markAuthProfileFailure, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, br as resolveDefaultModelForAgent, c as resolveProfilesUnavailableReason, ci as resolveModelAuthMode, cr as findNormalizedProviderValue, di as resolveShellEnvFallbackTimeoutMs, dr as isCliProvider, ei as buildStreamErrorAssistantMessage, er as resolveOpenClawAgentDir, fr as modelKey, hr as normalizeProviderId, i as isProfileInCooldown, ii as requireApiKey, ji as DEFAULT_PROVIDER, jt as validateJsonSchemaValue, ki as DEFAULT_CONTEXT_TOKENS, l as resolveApiKeyForProfile, n as resolveAuthProfileOrder, ni as getApiKeyForModel, o as markAuthProfileUsed, or as buildConfiguredAllowlistKeys, pr as normalizeModelRef$2, q as resolveIMessageAttachmentRoots, r as getSoonestCooldownExpiry, ri as getCustomProviderApiKey, si as resolveEnvApiKey, sr as buildModelAliasIndex, ti as buildUsageWithNoCost, tr as withFileLock, ui as getShellPathFromLoginShell, wt as isAvatarHttpUrl, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins, zn as dedupeProfileIds, zt as setConfigValueAtPath } from "./auth-profiles-DNfjfFON.js";
|
|
8
8
|
import { t as formatCliCommand } from "./command-format-Bu77oTl0.js";
|
|
9
|
-
import { _ as resolveAgentModelPrimaryValue, a as resolveAgentDir, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, g as resolveAgentModelFallbackValues, h as resolveSessionAgentIds, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as toAgentModelListLike } from "./agent-scope-
|
|
9
|
+
import { _ as resolveAgentModelPrimaryValue, a as resolveAgentDir, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, g as resolveAgentModelFallbackValues, h as resolveSessionAgentIds, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as toAgentModelListLike } from "./agent-scope-BSkZamWK.js";
|
|
10
10
|
import { C as isCronSessionKey, E as resolveThreadParentSessionKey, T as parseAgentSessionKey, _ as normalizeOptionalAccountId, b as getSubagentDepth, c as normalizeAgentId, d as resolveThreadSessionKeys, f as sanitizeAgentId, g as normalizeAccountId$2, h as DEFAULT_ACCOUNT_ID, l as normalizeMainKey, o as classifySessionKeyShape, r as buildAgentMainSessionKey, s as isValidAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, v as isBlockedObjectKey, w as isSubagentSessionKey, x as isAcpSessionKey, y as deriveSessionChatType } from "./session-key-BLprDJYq.js";
|
|
11
11
|
import { C as sliceUtf16Safe, E as isPlainObject, S as sleep$1, T as truncateUtf16Safe, b as shortenHomeInString, c as escapeRegExp, p as normalizeE164, r as clampInt, t as CONFIG_DIR, u as isRecord$1, v as resolveUserPath, x as shortenHomePath } from "./utils-Dwy0Sy1G.js";
|
|
12
|
-
import { A as isNotFoundPathError, C as openBoundaryFileSync, N as normalizeWindowsPathForComparison, S as openBoundaryFile, a as DEFAULT_IDENTITY_FILENAME, d as ensureAgentWorkspace, f as filterBootstrapFilesForSession, g as resolveWorkspaceAttachmentsRoot, j as isPathInside, k as hasNodeErrorCode, m as loadWorkspaceBootstrapFiles, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, y as resolveOpenClawPackageRoot } from "./workspace-
|
|
12
|
+
import { A as isNotFoundPathError, C as openBoundaryFileSync, N as normalizeWindowsPathForComparison, S as openBoundaryFile, a as DEFAULT_IDENTITY_FILENAME, d as ensureAgentWorkspace, f as filterBootstrapFilesForSession, g as resolveWorkspaceAttachmentsRoot, j as isPathInside, k as hasNodeErrorCode, m as loadWorkspaceBootstrapFiles, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, y as resolveOpenClawPackageRoot } from "./workspace-CZCYGcgM.js";
|
|
13
13
|
import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-JNFFzTLe.js";
|
|
14
14
|
import { n as runExec, r as spawnWithFallback, t as runCommandWithTimeout } from "./exec-BxfdQ5hH.js";
|
|
15
15
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-BqbY2oVI.js";
|
|
16
16
|
import { n as isDangerousHostEnvVarName } from "./host-env-security-CJMD0__Z.js";
|
|
17
17
|
import { t as VERSION } from "./version-CGDNfh5C.js";
|
|
18
18
|
import { E as triggerInternalHook, S as matchPluginCommand, _ as normalizePluginHttpPath, b as getPluginCommandSpecs, c as normalizeChannelId$1, d as getActivePluginRegistryKey, g as createPluginRegistry, m as setActivePluginRegistry, n as CHAT_CHANNEL_ORDER, p as requireActivePluginRegistry, s as normalizeAnyChannelId, u as getActivePluginRegistry, v as clearPluginCommands, w as createInternalHookEvent, x as listPluginCommands, y as executePluginCommand } from "./registry-C4Fq5HtN.js";
|
|
19
|
-
import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside$1, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverOpenClawPlugins } from "./manifest-registry-
|
|
20
|
-
import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-
|
|
19
|
+
import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside$1, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverOpenClawPlugins } from "./manifest-registry-InPIGvqe.js";
|
|
20
|
+
import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-Cki7hMDN.js";
|
|
21
21
|
import { t as runTasksWithConcurrency } from "./run-with-concurrency-kzSMVKJz.js";
|
|
22
22
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-KDiSpWTU.js";
|
|
23
|
-
import { i as buildModelAliasLines, n as resolveModel } from "./model-
|
|
24
|
-
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-
|
|
25
|
-
import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-
|
|
26
|
-
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-
|
|
23
|
+
import { i as buildModelAliasLines, n as resolveModel } from "./model-Cun06SAF.js";
|
|
24
|
+
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BnW942uP.js";
|
|
25
|
+
import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-cQZqFYZM.js";
|
|
26
|
+
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-DCVgvjo3.js";
|
|
27
27
|
import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-DuRP9JPi.js";
|
|
28
|
-
import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, b as deliveryContextKey, c as recordSessionMetaFromInbound, ct as resolveGroupSessionKey, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-
|
|
28
|
+
import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, b as deliveryContextKey, c as recordSessionMetaFromInbound, ct as resolveGroupSessionKey, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-BUvaIZVg.js";
|
|
29
29
|
import { t as normalizeChatType } from "./chat-type-CfYBRycO.js";
|
|
30
30
|
import { n as resolveConversationLabel } from "./conversation-label-mOUC6IlY.js";
|
|
31
31
|
import { t as resolveAccountEntry } from "./account-lookup-9wuXWwa_.js";
|
|
32
|
-
import { C as resolveDiscordAccount, _ as isWhatsAppGroupJid, a as createTelegramActionGate, g as resolveSlackBotToken, h as resolveSlackAppToken, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeWhatsAppTarget, w as normalizeDiscordToken, x as listEnabledDiscordAccounts, y as createDiscordActionGate } from "./plugins-
|
|
33
|
-
import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-
|
|
34
|
-
import { r as resolveIMessageAccount } from "./accounts-
|
|
35
|
-
import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-
|
|
36
|
-
import { t as buildChannelAccountBindings } from "./bindings-
|
|
37
|
-
import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-
|
|
38
|
-
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-
|
|
32
|
+
import { C as resolveDiscordAccount, _ as isWhatsAppGroupJid, a as createTelegramActionGate, g as resolveSlackBotToken, h as resolveSlackAppToken, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeWhatsAppTarget, w as normalizeDiscordToken, x as listEnabledDiscordAccounts, y as createDiscordActionGate } from "./plugins-B9LVNfXo.js";
|
|
33
|
+
import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-CAdzApsy.js";
|
|
34
|
+
import { r as resolveIMessageAccount } from "./accounts-CuCtdH3C.js";
|
|
35
|
+
import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-Cz3RQNdH.js";
|
|
36
|
+
import { t as buildChannelAccountBindings } from "./bindings-B8U0BrYk.js";
|
|
37
|
+
import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-ofq5TYCm.js";
|
|
38
|
+
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-B3N6ed5I.js";
|
|
39
39
|
import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, t as resolveDefaultSessionStorePath } from "./paths-oIurw4YQ.js";
|
|
40
40
|
import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-BDYpbBeC.js";
|
|
41
|
-
import { r as writeJsonAtomic } from "./json-files-
|
|
41
|
+
import { r as writeJsonAtomic } from "./json-files-1hhV5hS6.js";
|
|
42
42
|
import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-GAEkuGlu.js";
|
|
43
|
-
import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-
|
|
44
|
-
import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-
|
|
45
|
-
import { r as isLoopbackHost } from "./net-
|
|
43
|
+
import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-CbO7FTeL.js";
|
|
44
|
+
import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-Da49LtVk.js";
|
|
45
|
+
import { r as isLoopbackHost } from "./net-Dsab06Rf.js";
|
|
46
46
|
import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-DfK6Oke5.js";
|
|
47
47
|
import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-COy2Fxku.js";
|
|
48
|
-
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-
|
|
48
|
+
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-CojHmZpl.js";
|
|
49
49
|
import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-C6AVByhV.js";
|
|
50
|
-
import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-
|
|
51
|
-
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-
|
|
50
|
+
import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-BCX2HRzP.js";
|
|
51
|
+
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-CgNDbdut.js";
|
|
52
52
|
import { n as getDiagnosticSessionState } from "./diagnostic-session-state-B5Z0I32_.js";
|
|
53
|
-
import { A as buildTypingThreadParams, B as resolveTelegramReplyId, C as buildGroupLabel, D as buildTelegramGroupPeerId, E as buildTelegramGroupFrom, F as normalizeForwardedContext, G as normalizeDmAllowFromWithStore$1, H as resolveTelegramThreadSpec, I as resolveTelegramDirectPeerId, J as toLocationContext, K as resolveSenderAllowMatch$1, L as resolveTelegramForumThreadId, M as expandTextLinks, N as extractTelegramLocation, O as buildTelegramParentPeer, P as hasBotMention, R as resolveTelegramGroupAllowFromContext, T as buildSenderName, U as isSenderAllowed$1, V as resolveTelegramStreamMode, W as normalizeAllowFrom$2, X as parseTelegramTarget, Y as isVoiceCompatibleAudio, Z as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as loadCronStore, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as describeReplyTarget, k as buildTelegramThreadParams, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildSenderLabel, x as resolveCronStorePath, y as withTelegramApiErrorLogging, z as resolveTelegramMediaPlaceholder } from "./send-
|
|
54
|
-
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-
|
|
55
|
-
import { A as isRawApiErrorPayload, B as
|
|
56
|
-
import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-
|
|
57
|
-
import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-
|
|
58
|
-
import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-
|
|
59
|
-
import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-
|
|
53
|
+
import { A as buildTypingThreadParams, B as resolveTelegramReplyId, C as buildGroupLabel, D as buildTelegramGroupPeerId, E as buildTelegramGroupFrom, F as normalizeForwardedContext, G as normalizeDmAllowFromWithStore$1, H as resolveTelegramThreadSpec, I as resolveTelegramDirectPeerId, J as toLocationContext, K as resolveSenderAllowMatch$1, L as resolveTelegramForumThreadId, M as expandTextLinks, N as extractTelegramLocation, O as buildTelegramParentPeer, P as hasBotMention, R as resolveTelegramGroupAllowFromContext, T as buildSenderName, U as isSenderAllowed$1, V as resolveTelegramStreamMode, W as normalizeAllowFrom$2, X as parseTelegramTarget, Y as isVoiceCompatibleAudio, Z as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as loadCronStore, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as describeReplyTarget, k as buildTelegramThreadParams, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildSenderLabel, x as resolveCronStorePath, y as withTelegramApiErrorLogging, z as resolveTelegramMediaPlaceholder } from "./send-CUhKEB1L.js";
|
|
54
|
+
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-Cv4BHtyC.js";
|
|
55
|
+
import { A as isRawApiErrorPayload, B as resolveBootstrapTotalMaxChars, C as isCloudCodeAssistFormatError, D as isFailoverErrorMessage, E as isFailoverAssistantError, F as resolveChatUiHintForError, I as sanitizeUserFacingText, L as buildBootstrapContextFiles, M as isTransientHttpError, N as parseImageDimensionError, O as isLikelyContextOverflowError, P as parseImageSizeError, R as ensureSessionHeader, S as isBillingAssistantError, T as isContextOverflowError, V as sanitizeGoogleTurnOrdering, _ as formatBillingErrorMessage, a as isMessagingToolDuplicateNormalized, b as isAuthAssistantError, c as extractToolCallsFromAssistant, d as downgradeOpenAIFunctionCallReasoningPairs, f as downgradeOpenAIReasoningBlocks, g as formatAssistantErrorText, h as classifyFailoverReason, j as isTimeoutErrorMessage, k as isRateLimitAssistantError, l as extractToolResultId, m as BILLING_ERROR_USER_MESSAGE, n as validateGeminiTurns, o as normalizeTextForComparison, p as isGoogleModelApi, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as sanitizeToolCallIdsForCloudCodeAssist, v as formatRawAssistantErrorForUi, w as isCompactionFailureError, x as isAuthPermanentErrorMessage, y as getApiErrorPayloadFingerprint, z as resolveBootstrapMaxChars } from "./pi-embedded-helpers-YXFiUfat.js";
|
|
56
|
+
import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-GZ80o0rN.js";
|
|
57
|
+
import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-BosxOvwr.js";
|
|
58
|
+
import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-BIKTw3k8.js";
|
|
59
|
+
import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-ufuDrRZO.js";
|
|
60
60
|
import { a as testRegexWithBoundedInput, i as compileSafeRegex, n as redactSensitiveText } from "./redact-CYcs8rK6.js";
|
|
61
61
|
import { i as formatUncaughtError, r as formatErrorMessage, s as readErrorName } from "./errors-BMwPyScO.js";
|
|
62
|
-
import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-
|
|
63
|
-
import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-
|
|
64
|
-
import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-
|
|
65
|
-
import { i as resolveLsofCommandSync } from "./ports-
|
|
66
|
-
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-
|
|
62
|
+
import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-BtSQvuQn.js";
|
|
63
|
+
import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-DQluNeAy.js";
|
|
64
|
+
import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-D1eSPAL7.js";
|
|
65
|
+
import { i as resolveLsofCommandSync } from "./ports-BKC_uvax.js";
|
|
66
|
+
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-hL7SizLq.js";
|
|
67
67
|
import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-BxCyPtl0.js";
|
|
68
|
-
import { t as ensureOpenClawModelsJson } from "./models-config-
|
|
69
|
-
import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-
|
|
70
|
-
import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-
|
|
71
|
-
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-
|
|
72
|
-
import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-
|
|
73
|
-
import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$1, v as resolveAttachmentKind } from "./audio-transcription-runner-
|
|
68
|
+
import { t as ensureOpenClawModelsJson } from "./models-config-BjTFyv9Z.js";
|
|
69
|
+
import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-Bdtmhwgj.js";
|
|
70
|
+
import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-DfgvmbZG.js";
|
|
71
|
+
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-BoIN1v0Q.js";
|
|
72
|
+
import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-Dp9uG2qN.js";
|
|
73
|
+
import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$1, v as resolveAttachmentKind } from "./audio-transcription-runner-BEtb5Jme.js";
|
|
74
74
|
import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-COrrU_w2.js";
|
|
75
|
-
import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
76
|
-
import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as isInsideCode, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as stripReasoningTagsFromText, x as extractTextFromChatContent, y as findCodeRegions } from "./image-
|
|
75
|
+
import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-ClzGpvFK.js";
|
|
76
|
+
import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as isInsideCode, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as stripReasoningTagsFromText, x as extractTextFromChatContent, y as findCodeRegions } from "./image-CrLgaJde.js";
|
|
77
77
|
import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-sVaWRESD.js";
|
|
78
78
|
import { t as makeProxyFetch } from "./proxy-fetch-ReVzadXq.js";
|
|
79
|
-
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-
|
|
79
|
+
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-BwXX5Jk8.js";
|
|
80
80
|
import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-BNLlgymK.js";
|
|
81
|
-
import { n as resolveMarkdownTableMode } from "./markdown-tables-
|
|
82
|
-
import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-
|
|
83
|
-
import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-
|
|
84
|
-
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-
|
|
85
|
-
import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody } from "./commands-registry-
|
|
81
|
+
import { n as resolveMarkdownTableMode } from "./markdown-tables-DoeNp6Yw.js";
|
|
82
|
+
import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-Bov3hbIf.js";
|
|
83
|
+
import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-8-urss_s.js";
|
|
84
|
+
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-pIMTT07J.js";
|
|
85
|
+
import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody } from "./commands-registry-DsvOsTTF.js";
|
|
86
86
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-DrgeDGXO.js";
|
|
87
87
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-BAIuE19S.js";
|
|
88
88
|
import { n as retryAsync } from "./retry-BB6FMQn9.js";
|
|
89
89
|
import { n as formatTimeAgo } from "./format-relative-DdvuDKIv.js";
|
|
90
|
-
import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-
|
|
90
|
+
import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-BBxShFYa.js";
|
|
91
91
|
import { d as resolveExecApprovals, f as resolveExecApprovalsFromFile, i as maxAsk, l as recordAllowlistUse, n as addAllowlistEntry, o as minSecurity, u as requiresExecApproval } from "./exec-approvals-DW6bgoDc.js";
|
|
92
|
-
import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-
|
|
92
|
+
import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-BfHQppAv.js";
|
|
93
93
|
import { t as killProcessTree$1 } from "./kill-tree-B3qqul4J.js";
|
|
94
|
-
import { t as formatExecCommand } from "./system-run-command-
|
|
94
|
+
import { t as formatExecCommand } from "./system-run-command-BkdvGhnZ.js";
|
|
95
95
|
import { i as parsePairingList, n as resolveNodeIdFromNodeList, r as parseNodeList, t as resolveNodeFromNodeList } from "./node-resolve-kOyUD0le.js";
|
|
96
96
|
import { i as formatDurationSeconds, r as formatDurationPrecise, t as formatDurationCompact$1 } from "./format-duration-BUg_QUd4.js";
|
|
97
|
-
import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, u as lookupContextTokens } from "./session-utils-
|
|
97
|
+
import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, u as lookupContextTokens } from "./session-utils-dcEiC-U5.js";
|
|
98
98
|
import { c as hasNonzeroUsage, l as makeZeroUsageSnapshot, n as loadCostUsageSummary, o as derivePromptTokens, r as loadSessionCostSummary, s as deriveSessionTotalTokens, u as normalizeUsage } from "./session-cost-usage-BsxmoBNj.js";
|
|
99
99
|
import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-BzVVjHV2.js";
|
|
100
|
-
import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-
|
|
100
|
+
import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-Do5yZvPn.js";
|
|
101
101
|
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-SjFx-6OM.js";
|
|
102
102
|
import { t as buildOutboundMediaLoadOptions } from "./load-options-BRu0610C.js";
|
|
103
103
|
import { n as normalizePollInput } from "./polls-DXeUmcgz.js";
|
|
104
|
-
import { t as convertMarkdownTables } from "./tables-
|
|
104
|
+
import { t as convertMarkdownTables } from "./tables-CTFvIcTQ.js";
|
|
105
105
|
import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel } from "./constants-CVdMnAs9.js";
|
|
106
106
|
import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-Bi1uV655.js";
|
|
107
|
-
import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-
|
|
108
|
-
import { t as applyPluginAutoEnable } from "./plugin-auto-enable-
|
|
109
|
-
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-
|
|
110
|
-
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-
|
|
111
|
-
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-
|
|
107
|
+
import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-BuY5iEbg.js";
|
|
108
|
+
import { t as applyPluginAutoEnable } from "./plugin-auto-enable-MtcFdE6T.js";
|
|
109
|
+
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-D52tAxa7.js";
|
|
110
|
+
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-DyQvZx-9.js";
|
|
111
|
+
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-BAFZr0AD.js";
|
|
112
112
|
import { n as isSenderIdAllowed, r as mergeDmAllowFromSources, t as firstDefined$1 } from "./allow-from-Dw5EiUPa.js";
|
|
113
113
|
import { t as parseTimeoutMs } from "./parse-timeout-kGl8Fsas.js";
|
|
114
114
|
import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-KaPfyrww.js";
|
|
115
|
-
import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-
|
|
115
|
+
import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-ClPMGEq4.js";
|
|
116
116
|
import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-CAHqhE34.js";
|
|
117
|
-
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
118
|
-
import { r as detectBinary } from "./onboard-helpers-
|
|
119
|
-
import { t as resolvePairingIdLabel } from "./pairing-labels-
|
|
120
|
-
import { t as recordInboundSessionMetaSafe } from "./session-meta-
|
|
121
|
-
import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-
|
|
122
|
-
import { r as resolveMemorySearchConfig } from "./manager-
|
|
117
|
+
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-Cnwwqegi.js";
|
|
118
|
+
import { r as detectBinary } from "./onboard-helpers-BS_bPZKe.js";
|
|
119
|
+
import { t as resolvePairingIdLabel } from "./pairing-labels-RbKVJQq5.js";
|
|
120
|
+
import { t as recordInboundSessionMetaSafe } from "./session-meta-Dofh28uR.js";
|
|
121
|
+
import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-C0hNuh-t.js";
|
|
122
|
+
import { r as resolveMemorySearchConfig } from "./manager-ZjJ9M2x6.js";
|
|
123
123
|
import { s as BITSEEK_PROVIDER_ID } from "./constants-By6nxsIT.js";
|
|
124
124
|
import { a as resolveContextWindowInfo, i as resolveContextWindowHardMinTokens, n as CONTEXT_WINDOW_WARN_BELOW_TOKENS, r as evaluateContextWindowGuard } from "./context-window-guard-aKoSfdAy.js";
|
|
125
125
|
import { createRequire } from "node:module";
|
|
@@ -130,7 +130,7 @@ import os, { homedir } from "node:os";
|
|
|
130
130
|
import fs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
|
|
131
131
|
import JSON5 from "json5";
|
|
132
132
|
import { inspect } from "node:util";
|
|
133
|
-
import
|
|
133
|
+
import fsPromises from "node:fs/promises";
|
|
134
134
|
import { complete, completeSimple, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
|
|
135
135
|
import crypto, { createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
|
|
136
136
|
import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
|
|
@@ -5075,7 +5075,7 @@ async function resolveAgentSessionDirs(stateDir) {
|
|
|
5075
5075
|
const agentsDir = path.join(stateDir, "agents");
|
|
5076
5076
|
let entries = [];
|
|
5077
5077
|
try {
|
|
5078
|
-
entries = await
|
|
5078
|
+
entries = await fsPromises.readdir(agentsDir, { withFileTypes: true });
|
|
5079
5079
|
} catch (err) {
|
|
5080
5080
|
if (err.code === "ENOENT") return [];
|
|
5081
5081
|
throw err;
|
|
@@ -8142,7 +8142,7 @@ async function sendTranscriptEcho(params) {
|
|
|
8142
8142
|
}
|
|
8143
8143
|
const text = formatEchoTranscript(transcript, params.format ?? DEFAULT_ECHO_TRANSCRIPT_FORMAT);
|
|
8144
8144
|
try {
|
|
8145
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
8145
|
+
const { deliverOutboundPayloads } = await import("./deliver-BCX2HRzP.js").then((n) => n.n);
|
|
8146
8146
|
await deliverOutboundPayloads({
|
|
8147
8147
|
cfg,
|
|
8148
8148
|
channel: normalizedChannel,
|
|
@@ -12944,7 +12944,7 @@ async function resolveSandboxWorkdir(params) {
|
|
|
12944
12944
|
cwd: process.cwd(),
|
|
12945
12945
|
root: params.sandbox.workspaceDir
|
|
12946
12946
|
});
|
|
12947
|
-
if (!(await
|
|
12947
|
+
if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
|
|
12948
12948
|
const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
|
|
12949
12949
|
const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
|
|
12950
12950
|
return {
|
|
@@ -14188,13 +14188,13 @@ async function validateScriptFileForShellBleed(params) {
|
|
|
14188
14188
|
cwd: params.workdir,
|
|
14189
14189
|
root: params.workdir
|
|
14190
14190
|
});
|
|
14191
|
-
stat = await
|
|
14191
|
+
stat = await fsPromises.stat(absPath);
|
|
14192
14192
|
} catch {
|
|
14193
14193
|
return;
|
|
14194
14194
|
}
|
|
14195
14195
|
if (!stat.isFile()) return;
|
|
14196
14196
|
if (stat.size > 512 * 1024) return;
|
|
14197
|
-
const content = await
|
|
14197
|
+
const content = await fsPromises.readFile(absPath, "utf-8");
|
|
14198
14198
|
const first = /\$[A-Z_][A-Z0-9_]{1,}/g.exec(content);
|
|
14199
14199
|
if (first) {
|
|
14200
14200
|
const idx = first.index;
|
|
@@ -23283,7 +23283,7 @@ async function routeReply(params) {
|
|
|
23283
23283
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
23284
23284
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
23285
23285
|
try {
|
|
23286
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
23286
|
+
const { deliverOutboundPayloads } = await import("./deliver-BCX2HRzP.js").then((n) => n.n);
|
|
23287
23287
|
const outboundSession = buildOutboundSessionContext({
|
|
23288
23288
|
cfg,
|
|
23289
23289
|
agentId: resolvedAgentId,
|
|
@@ -23363,7 +23363,7 @@ async function emitResetCommandHooks(params) {
|
|
|
23363
23363
|
try {
|
|
23364
23364
|
const messages = [];
|
|
23365
23365
|
if (sessionFile) {
|
|
23366
|
-
const content = await
|
|
23366
|
+
const content = await fsPromises.readFile(sessionFile, "utf-8");
|
|
23367
23367
|
for (const line of content.split("\n")) {
|
|
23368
23368
|
if (!line.trim()) continue;
|
|
23369
23369
|
try {
|
|
@@ -24149,7 +24149,7 @@ async function createModelSelectionState(params) {
|
|
|
24149
24149
|
}
|
|
24150
24150
|
}
|
|
24151
24151
|
if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
|
|
24152
|
-
const { ensureAuthProfileStore } = await import("./auth-profiles-
|
|
24152
|
+
const { ensureAuthProfileStore } = await import("./auth-profiles-DNfjfFON.js").then((n) => n.t);
|
|
24153
24153
|
const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
|
|
24154
24154
|
const providerKey = normalizeProviderId(provider);
|
|
24155
24155
|
if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
|
|
@@ -27745,7 +27745,7 @@ async function readJsonlFromPath(jsonlPath) {
|
|
|
27745
27745
|
if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${resolved}`);
|
|
27746
27746
|
throw new Error("jsonlPath outside allowed roots");
|
|
27747
27747
|
}
|
|
27748
|
-
const canonical = await
|
|
27748
|
+
const canonical = await fsPromises.realpath(resolved).catch(() => resolved);
|
|
27749
27749
|
if (!isInboundPathAllowed({
|
|
27750
27750
|
filePath: canonical,
|
|
27751
27751
|
roots
|
|
@@ -27753,7 +27753,7 @@ async function readJsonlFromPath(jsonlPath) {
|
|
|
27753
27753
|
if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${canonical}`);
|
|
27754
27754
|
throw new Error("jsonlPath outside allowed roots");
|
|
27755
27755
|
}
|
|
27756
|
-
return await
|
|
27756
|
+
return await fsPromises.readFile(canonical, "utf8");
|
|
27757
27757
|
}
|
|
27758
27758
|
const CanvasToolSchema = Type.Object({
|
|
27759
27759
|
action: stringEnum(CANVAS_ACTIONS),
|
|
@@ -28568,27 +28568,27 @@ function resolveRestartSentinelPath(env = process.env) {
|
|
|
28568
28568
|
}
|
|
28569
28569
|
async function writeRestartSentinel(payload, env = process.env) {
|
|
28570
28570
|
const filePath = resolveRestartSentinelPath(env);
|
|
28571
|
-
await
|
|
28571
|
+
await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
|
|
28572
28572
|
const data = {
|
|
28573
28573
|
version: 1,
|
|
28574
28574
|
payload
|
|
28575
28575
|
};
|
|
28576
|
-
await
|
|
28576
|
+
await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
|
|
28577
28577
|
return filePath;
|
|
28578
28578
|
}
|
|
28579
28579
|
async function readRestartSentinel(env = process.env) {
|
|
28580
28580
|
const filePath = resolveRestartSentinelPath(env);
|
|
28581
28581
|
try {
|
|
28582
|
-
const raw = await
|
|
28582
|
+
const raw = await fsPromises.readFile(filePath, "utf-8");
|
|
28583
28583
|
let parsed;
|
|
28584
28584
|
try {
|
|
28585
28585
|
parsed = JSON.parse(raw);
|
|
28586
28586
|
} catch {
|
|
28587
|
-
await
|
|
28587
|
+
await fsPromises.unlink(filePath).catch(() => {});
|
|
28588
28588
|
return null;
|
|
28589
28589
|
}
|
|
28590
28590
|
if (!parsed || parsed.version !== 1 || !parsed.payload) {
|
|
28591
|
-
await
|
|
28591
|
+
await fsPromises.unlink(filePath).catch(() => {});
|
|
28592
28592
|
return null;
|
|
28593
28593
|
}
|
|
28594
28594
|
return parsed;
|
|
@@ -28600,7 +28600,7 @@ async function consumeRestartSentinel(env = process.env) {
|
|
|
28600
28600
|
const filePath = resolveRestartSentinelPath(env);
|
|
28601
28601
|
const parsed = await readRestartSentinel(env);
|
|
28602
28602
|
if (!parsed) return null;
|
|
28603
|
-
await
|
|
28603
|
+
await fsPromises.unlink(filePath).catch(() => {});
|
|
28604
28604
|
return parsed;
|
|
28605
28605
|
}
|
|
28606
28606
|
function formatRestartSentinelMessage(payload) {
|
|
@@ -38791,18 +38791,18 @@ function appendImagePathsToPrompt(prompt, paths) {
|
|
|
38791
38791
|
return `${trimmed}${trimmed ? "\n\n" : ""}${paths.join("\n")}`;
|
|
38792
38792
|
}
|
|
38793
38793
|
async function writeCliImages(images) {
|
|
38794
|
-
const tempDir = await
|
|
38794
|
+
const tempDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
|
|
38795
38795
|
const paths = [];
|
|
38796
38796
|
for (let i = 0; i < images.length; i += 1) {
|
|
38797
38797
|
const image = images[i];
|
|
38798
38798
|
const ext = resolveImageExtension(image.mimeType);
|
|
38799
38799
|
const filePath = path.join(tempDir, `image-${i + 1}.${ext}`);
|
|
38800
38800
|
const buffer = Buffer.from(image.data, "base64");
|
|
38801
|
-
await
|
|
38801
|
+
await fsPromises.writeFile(filePath, buffer, { mode: 384 });
|
|
38802
38802
|
paths.push(filePath);
|
|
38803
38803
|
}
|
|
38804
38804
|
const cleanup = async () => {
|
|
38805
|
-
await
|
|
38805
|
+
await fsPromises.rm(tempDir, {
|
|
38806
38806
|
recursive: true,
|
|
38807
38807
|
force: true
|
|
38808
38808
|
});
|
|
@@ -42705,7 +42705,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
42705
42705
|
return;
|
|
42706
42706
|
}
|
|
42707
42707
|
try {
|
|
42708
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
42708
|
+
const { deliverOutboundPayloads } = await import("./deliver-BCX2HRzP.js").then((n) => n.n);
|
|
42709
42709
|
const outboundSession = buildOutboundSessionContext({
|
|
42710
42710
|
cfg: params.cfg,
|
|
42711
42711
|
sessionKey: params.sessionKey
|
|
@@ -43212,7 +43212,7 @@ async function stageSandboxMedia(params) {
|
|
|
43212
43212
|
const remoteMediaCacheDir = ctx.MediaRemoteHost ? path.join(CONFIG_DIR, "media", "remote-cache", sessionKey) : null;
|
|
43213
43213
|
const effectiveWorkspaceDir = sandbox?.workspaceDir ?? remoteMediaCacheDir;
|
|
43214
43214
|
if (!effectiveWorkspaceDir) return;
|
|
43215
|
-
await
|
|
43215
|
+
await fsPromises.mkdir(effectiveWorkspaceDir, { recursive: true });
|
|
43216
43216
|
const remoteAttachmentRoots = resolveIMessageRemoteAttachmentRoots({
|
|
43217
43217
|
cfg,
|
|
43218
43218
|
accountId: ctx.AccountId
|
|
@@ -43271,8 +43271,8 @@ async function stageLocalFileIntoRoot(params) {
|
|
|
43271
43271
|
}
|
|
43272
43272
|
async function stageRemoteFileIntoRoot(params) {
|
|
43273
43273
|
const tmpRoot = resolvePreferredOpenClawTmpDir();
|
|
43274
|
-
await
|
|
43275
|
-
const tmpDir = await
|
|
43274
|
+
await fsPromises.mkdir(tmpRoot, { recursive: true });
|
|
43275
|
+
const tmpDir = await fsPromises.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
|
|
43276
43276
|
const tmpPath = path.join(tmpDir, "download");
|
|
43277
43277
|
try {
|
|
43278
43278
|
await scpFile(params.remoteHost, params.remotePath, tmpPath);
|
|
@@ -43283,7 +43283,7 @@ async function stageRemoteFileIntoRoot(params) {
|
|
|
43283
43283
|
maxBytes: params.maxBytes
|
|
43284
43284
|
});
|
|
43285
43285
|
} finally {
|
|
43286
|
-
await
|
|
43286
|
+
await fsPromises.rm(tmpDir, {
|
|
43287
43287
|
recursive: true,
|
|
43288
43288
|
force: true
|
|
43289
43289
|
}).catch(() => {});
|
|
@@ -47629,8 +47629,8 @@ async function describeStickerImage(params) {
|
|
|
47629
47629
|
const { provider, model } = resolved;
|
|
47630
47630
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
47631
47631
|
try {
|
|
47632
|
-
const buffer = await
|
|
47633
|
-
const { describeImageWithModel } = await import("./image-
|
|
47632
|
+
const buffer = await fsPromises.readFile(imagePath);
|
|
47633
|
+
const { describeImageWithModel } = await import("./image-CrLgaJde.js").then((n) => n.n);
|
|
47634
47634
|
return (await describeImageWithModel({
|
|
47635
47635
|
buffer,
|
|
47636
47636
|
fileName: "sticker.webp",
|
|
@@ -49219,7 +49219,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
|
|
|
49219
49219
|
const needsPreflightTranscription = !params.isDirectMessage && params.shouldRequireMention && hasAudioAttachment && !hasTypedText && params.mentionRegexes.length > 0;
|
|
49220
49220
|
let transcript;
|
|
49221
49221
|
if (needsPreflightTranscription) try {
|
|
49222
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
49222
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-B1d3Otlb.js");
|
|
49223
49223
|
const audioUrls = audioAttachments.map((att) => att.url).filter((url) => typeof url === "string" && url.length > 0);
|
|
49224
49224
|
if (audioUrls.length > 0) transcript = await transcribeFirstAudio({
|
|
49225
49225
|
ctx: {
|
|
@@ -53795,27 +53795,27 @@ function createOutboundSendDepsFromCliSource(deps) {
|
|
|
53795
53795
|
function createDefaultDeps() {
|
|
53796
53796
|
return {
|
|
53797
53797
|
sendMessageWhatsApp: async (...args) => {
|
|
53798
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
53798
|
+
const { sendMessageWhatsApp } = await import("./web-yRXxasJ5.js");
|
|
53799
53799
|
return await sendMessageWhatsApp(...args);
|
|
53800
53800
|
},
|
|
53801
53801
|
sendMessageTelegram: async (...args) => {
|
|
53802
|
-
const { sendMessageTelegram } = await import("./send-
|
|
53802
|
+
const { sendMessageTelegram } = await import("./send-CUhKEB1L.js").then((n) => n.l);
|
|
53803
53803
|
return await sendMessageTelegram(...args);
|
|
53804
53804
|
},
|
|
53805
53805
|
sendMessageDiscord: async (...args) => {
|
|
53806
|
-
const { sendMessageDiscord } = await import("./send-
|
|
53806
|
+
const { sendMessageDiscord } = await import("./send-B3N6ed5I.js").then((n) => n.t);
|
|
53807
53807
|
return await sendMessageDiscord(...args);
|
|
53808
53808
|
},
|
|
53809
53809
|
sendMessageSlack: async (...args) => {
|
|
53810
|
-
const { sendMessageSlack } = await import("./send-
|
|
53810
|
+
const { sendMessageSlack } = await import("./send-ofq5TYCm.js").then((n) => n.n);
|
|
53811
53811
|
return await sendMessageSlack(...args);
|
|
53812
53812
|
},
|
|
53813
53813
|
sendMessageSignal: async (...args) => {
|
|
53814
|
-
const { sendMessageSignal } = await import("./send-
|
|
53814
|
+
const { sendMessageSignal } = await import("./send-D52tAxa7.js").then((n) => n.i);
|
|
53815
53815
|
return await sendMessageSignal(...args);
|
|
53816
53816
|
},
|
|
53817
53817
|
sendMessageIMessage: async (...args) => {
|
|
53818
|
-
const { sendMessageIMessage } = await import("./send-
|
|
53818
|
+
const { sendMessageIMessage } = await import("./send-DyQvZx-9.js").then((n) => n.n);
|
|
53819
53819
|
return await sendMessageIMessage(...args);
|
|
53820
53820
|
}
|
|
53821
53821
|
};
|
|
@@ -54956,10 +54956,10 @@ function estimateDurationSeconds(pcm) {
|
|
|
54956
54956
|
return pcm.length / (bytesPerSample * SAMPLE_RATE);
|
|
54957
54957
|
}
|
|
54958
54958
|
async function writeWavFile(pcm) {
|
|
54959
|
-
const tempDir = await
|
|
54959
|
+
const tempDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
|
|
54960
54960
|
const filePath = path.join(tempDir, `segment-${randomUUID()}.wav`);
|
|
54961
54961
|
const wav = buildWavBuffer(pcm);
|
|
54962
|
-
await
|
|
54962
|
+
await fsPromises.writeFile(filePath, wav);
|
|
54963
54963
|
scheduleTempCleanup(tempDir);
|
|
54964
54964
|
return {
|
|
54965
54965
|
path: filePath,
|
|
@@ -54968,7 +54968,7 @@ async function writeWavFile(pcm) {
|
|
|
54968
54968
|
}
|
|
54969
54969
|
function scheduleTempCleanup(tempDir, delayMs = 1800 * 1e3) {
|
|
54970
54970
|
setTimeout(() => {
|
|
54971
|
-
|
|
54971
|
+
fsPromises.rm(tempDir, {
|
|
54972
54972
|
recursive: true,
|
|
54973
54973
|
force: true
|
|
54974
54974
|
}).catch((err) => {
|
|
@@ -59265,7 +59265,7 @@ function normalizeAllowList$1(list) {
|
|
|
59265
59265
|
async function detectRemoteHostFromCliPath(cliPath) {
|
|
59266
59266
|
try {
|
|
59267
59267
|
const expanded = cliPath.startsWith("~") ? cliPath.replace(/^~/, process.env.HOME ?? "") : cliPath;
|
|
59268
|
-
const content = await
|
|
59268
|
+
const content = await fsPromises.readFile(expanded, "utf8");
|
|
59269
59269
|
const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
|
|
59270
59270
|
if (userHostMatch) return userHostMatch[1];
|
|
59271
59271
|
return content.match(/\bssh\b[^\n]*?\s+([a-zA-Z][a-zA-Z0-9._-]*)\s+\S*\bimsg\b/)?.[1];
|
|
@@ -65887,7 +65887,7 @@ function readSlackExternalArgMenuToken(raw) {
|
|
|
65887
65887
|
}
|
|
65888
65888
|
let commandsRegistry;
|
|
65889
65889
|
async function getCommandsRegistry() {
|
|
65890
|
-
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-
|
|
65890
|
+
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-DsvOsTTF.js").then((n) => n.n);
|
|
65891
65891
|
return commandsRegistry;
|
|
65892
65892
|
}
|
|
65893
65893
|
function encodeSlackCommandArgValue(parts) {
|
|
@@ -66217,14 +66217,14 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
66217
66217
|
const channelName = channelInfo?.name;
|
|
66218
66218
|
const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
|
|
66219
66219
|
const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
|
|
66220
|
-
import("./resolve-route-
|
|
66220
|
+
import("./resolve-route-BAFZr0AD.js").then((n) => n.r),
|
|
66221
66221
|
import("./inbound-context-DrgeDGXO.js").then((n) => n.n),
|
|
66222
66222
|
Promise.resolve().then(() => provider_dispatcher_exports)
|
|
66223
66223
|
]);
|
|
66224
66224
|
const [{ resolveConversationLabel }, { createReplyPrefixOptions }, { recordInboundSessionMetaSafe }] = await Promise.all([
|
|
66225
66225
|
import("./conversation-label-mOUC6IlY.js").then((n) => n.t),
|
|
66226
|
-
import("./reply-prefix-
|
|
66227
|
-
import("./session-meta-
|
|
66226
|
+
import("./reply-prefix-BwXX5Jk8.js").then((n) => n.n),
|
|
66227
|
+
import("./session-meta-Dofh28uR.js").then((n) => n.n)
|
|
66228
66228
|
]);
|
|
66229
66229
|
const route = resolveAgentRoute({
|
|
66230
66230
|
cfg,
|
|
@@ -66289,9 +66289,9 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
66289
66289
|
});
|
|
66290
66290
|
const deliverSlashPayloads = async (replies) => {
|
|
66291
66291
|
const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
|
|
66292
|
-
import("./replies-
|
|
66292
|
+
import("./replies-Cnwwqegi.js").then((n) => n.r),
|
|
66293
66293
|
import("./chunk-BNLlgymK.js").then((n) => n.s),
|
|
66294
|
-
import("./markdown-tables-
|
|
66294
|
+
import("./markdown-tables-DoeNp6Yw.js").then((n) => n.t)
|
|
66295
66295
|
]);
|
|
66296
66296
|
await deliverSlackSlashReplies({
|
|
66297
66297
|
replies,
|
|
@@ -66344,7 +66344,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
66344
66344
|
let nativeCommands = [];
|
|
66345
66345
|
if (nativeEnabled) {
|
|
66346
66346
|
reg = await getCommandsRegistry();
|
|
66347
|
-
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-
|
|
66347
|
+
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Do5yZvPn.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
|
|
66348
66348
|
nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
|
|
66349
66349
|
skillCommands,
|
|
66350
66350
|
provider: "slack"
|
|
@@ -69253,7 +69253,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
|
|
|
69253
69253
|
const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
|
|
69254
69254
|
let preflightTranscript;
|
|
69255
69255
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
|
|
69256
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
69256
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-B1d3Otlb.js");
|
|
69257
69257
|
preflightTranscript = await transcribeFirstAudio({
|
|
69258
69258
|
ctx: {
|
|
69259
69259
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -70615,7 +70615,7 @@ function resolveCommandHashPath(accountId, botIdentity) {
|
|
|
70615
70615
|
}
|
|
70616
70616
|
async function readCachedCommandHash(accountId, botIdentity) {
|
|
70617
70617
|
try {
|
|
70618
|
-
return (await
|
|
70618
|
+
return (await fsPromises.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
|
|
70619
70619
|
} catch {
|
|
70620
70620
|
return null;
|
|
70621
70621
|
}
|
|
@@ -70623,8 +70623,8 @@ async function readCachedCommandHash(accountId, botIdentity) {
|
|
|
70623
70623
|
async function writeCachedCommandHash(accountId, botIdentity, hash) {
|
|
70624
70624
|
const filePath = resolveCommandHashPath(accountId, botIdentity);
|
|
70625
70625
|
try {
|
|
70626
|
-
await
|
|
70627
|
-
await
|
|
70626
|
+
await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
|
|
70627
|
+
await fsPromises.writeFile(filePath, hash, "utf-8");
|
|
70628
70628
|
} catch {}
|
|
70629
70629
|
}
|
|
70630
70630
|
function syncTelegramMenuCommands(params) {
|
|
@@ -71462,7 +71462,7 @@ function safeParseState(raw) {
|
|
|
71462
71462
|
async function readTelegramUpdateOffset(params) {
|
|
71463
71463
|
const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
|
|
71464
71464
|
try {
|
|
71465
|
-
const parsed = safeParseState(await
|
|
71465
|
+
const parsed = safeParseState(await fsPromises.readFile(filePath, "utf-8"));
|
|
71466
71466
|
const expectedBotId = extractBotIdFromToken(params.botToken);
|
|
71467
71467
|
if (expectedBotId && parsed?.botId && parsed.botId !== expectedBotId) return null;
|
|
71468
71468
|
if (expectedBotId && parsed?.botId === null) return null;
|
|
@@ -71486,7 +71486,7 @@ async function writeTelegramUpdateOffset(params) {
|
|
|
71486
71486
|
async function deleteTelegramUpdateOffset(params) {
|
|
71487
71487
|
const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
|
|
71488
71488
|
try {
|
|
71489
|
-
await
|
|
71489
|
+
await fsPromises.unlink(filePath);
|
|
71490
71490
|
} catch (err) {
|
|
71491
71491
|
if (err.code === "ENOENT") return;
|
|
71492
71492
|
throw err;
|
|
@@ -71960,7 +71960,7 @@ function createWhatsAppLoginTool() {
|
|
|
71960
71960
|
force: Type.Optional(Type.Boolean())
|
|
71961
71961
|
}),
|
|
71962
71962
|
execute: async (_toolCallId, args) => {
|
|
71963
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
71963
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-DzUhzJq4.js");
|
|
71964
71964
|
if ((args?.action ?? "start") === "wait") {
|
|
71965
71965
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
71966
71966
|
return {
|
|
@@ -72035,23 +72035,23 @@ let webLoginQrPromise = null;
|
|
|
72035
72035
|
let webChannelPromise = null;
|
|
72036
72036
|
let whatsappActionsPromise = null;
|
|
72037
72037
|
function loadWebOutbound() {
|
|
72038
|
-
webOutboundPromise ??= import("./outbound-
|
|
72038
|
+
webOutboundPromise ??= import("./outbound-SGcz-hQs.js").then((n) => n.t);
|
|
72039
72039
|
return webOutboundPromise;
|
|
72040
72040
|
}
|
|
72041
72041
|
function loadWebLogin() {
|
|
72042
|
-
webLoginPromise ??= import("./login
|
|
72042
|
+
webLoginPromise ??= import("./login-D-Js3AvX.js").then((n) => n.n);
|
|
72043
72043
|
return webLoginPromise;
|
|
72044
72044
|
}
|
|
72045
72045
|
function loadWebLoginQr() {
|
|
72046
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
72046
|
+
webLoginQrPromise ??= import("./login-qr-DzUhzJq4.js");
|
|
72047
72047
|
return webLoginQrPromise;
|
|
72048
72048
|
}
|
|
72049
72049
|
function loadWebChannel() {
|
|
72050
|
-
webChannelPromise ??= import("./web-
|
|
72050
|
+
webChannelPromise ??= import("./web-yRXxasJ5.js");
|
|
72051
72051
|
return webChannelPromise;
|
|
72052
72052
|
}
|
|
72053
72053
|
function loadWhatsAppActions() {
|
|
72054
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
72054
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-DZxeDPhI.js");
|
|
72055
72055
|
return whatsappActionsPromise;
|
|
72056
72056
|
}
|
|
72057
72057
|
function createRuntimeWhatsApp() {
|
|
@@ -73094,7 +73094,7 @@ function resolvePluginTools(params) {
|
|
|
73094
73094
|
//#endregion
|
|
73095
73095
|
//#region src/agents/apply-patch-update.ts
|
|
73096
73096
|
async function defaultReadFile(filePath) {
|
|
73097
|
-
return
|
|
73097
|
+
return fsPromises.readFile(filePath, "utf8");
|
|
73098
73098
|
}
|
|
73099
73099
|
async function applyUpdateHunk(filePath, chunks, options) {
|
|
73100
73100
|
const originalLines = (await (options?.readFile ?? defaultReadFile)(filePath).catch((err) => {
|
|
@@ -73415,7 +73415,7 @@ function resolvePatchFileOps(options) {
|
|
|
73415
73415
|
const workspaceOnly = options.workspaceOnly !== false;
|
|
73416
73416
|
return {
|
|
73417
73417
|
readFile: async (filePath) => {
|
|
73418
|
-
if (!workspaceOnly) return await
|
|
73418
|
+
if (!workspaceOnly) return await fsPromises.readFile(filePath, "utf8");
|
|
73419
73419
|
const opened = await openBoundaryFile({
|
|
73420
73420
|
absolutePath: filePath,
|
|
73421
73421
|
rootPath: options.cwd,
|
|
@@ -73430,7 +73430,7 @@ function resolvePatchFileOps(options) {
|
|
|
73430
73430
|
},
|
|
73431
73431
|
writeFile: async (filePath, content) => {
|
|
73432
73432
|
if (!workspaceOnly) {
|
|
73433
|
-
await
|
|
73433
|
+
await fsPromises.writeFile(filePath, content, "utf8");
|
|
73434
73434
|
return;
|
|
73435
73435
|
}
|
|
73436
73436
|
const relative = toRelativeSandboxPath(options.cwd, filePath);
|
|
@@ -73441,8 +73441,8 @@ function resolvePatchFileOps(options) {
|
|
|
73441
73441
|
encoding: "utf8"
|
|
73442
73442
|
});
|
|
73443
73443
|
},
|
|
73444
|
-
remove: (filePath) =>
|
|
73445
|
-
mkdirp: (dir) =>
|
|
73444
|
+
remove: (filePath) => fsPromises.rm(filePath),
|
|
73445
|
+
mkdirp: (dir) => fsPromises.mkdir(dir, { recursive: true }).then(() => {})
|
|
73446
73446
|
};
|
|
73447
73447
|
}
|
|
73448
73448
|
async function ensureDir(filePath, ops) {
|
|
@@ -73742,7 +73742,7 @@ async function runBeforeToolCallHook(args) {
|
|
|
73742
73742
|
const params = args.params;
|
|
73743
73743
|
if (args.ctx?.sessionKey) {
|
|
73744
73744
|
const { getDiagnosticSessionState } = await import("./diagnostic-session-state-CDEk5vOn.js");
|
|
73745
|
-
const { logToolLoopAction } = await import("./diagnostic-
|
|
73745
|
+
const { logToolLoopAction } = await import("./diagnostic-CgNDbdut.js").then((n) => n.n);
|
|
73746
73746
|
const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-CXzainqq.js");
|
|
73747
73747
|
const sessionState = getDiagnosticSessionState({
|
|
73748
73748
|
sessionKey: args.ctx.sessionKey,
|
|
@@ -74060,7 +74060,7 @@ async function maybeCreateMemoryReadCompatibilityResult(params) {
|
|
|
74060
74060
|
const absolutePath = resolveReadPathWithinWorkspace(params.filePath, params.workspaceRoot);
|
|
74061
74061
|
if (!absolutePath) return null;
|
|
74062
74062
|
try {
|
|
74063
|
-
if ((await
|
|
74063
|
+
if ((await fsPromises.stat(absolutePath)).isDirectory()) return createMemoryDirectoryReadResult(params.filePath);
|
|
74064
74064
|
return null;
|
|
74065
74065
|
} catch (error) {
|
|
74066
74066
|
if (isNotFoundPathError(error)) return createMissingMemoryReadResult(params.filePath);
|
|
@@ -74390,7 +74390,7 @@ function wrapHostEditToolWithPostWriteRecovery(base, root) {
|
|
|
74390
74390
|
if (!pathParam || !newText) throw err;
|
|
74391
74391
|
try {
|
|
74392
74392
|
const absolutePath = resolveHostEditPath(root, pathParam);
|
|
74393
|
-
const content = await
|
|
74393
|
+
const content = await fsPromises.readFile(absolutePath, "utf-8");
|
|
74394
74394
|
const hasNew = content.includes(newText);
|
|
74395
74395
|
const stillHasOld = oldText !== void 0 && oldText.length > 0 && content.includes(oldText);
|
|
74396
74396
|
if (hasNew && !stillHasOld) return {
|
|
@@ -74509,14 +74509,14 @@ function createSandboxEditOperations(params) {
|
|
|
74509
74509
|
}
|
|
74510
74510
|
async function writeHostFile(absolutePath, content) {
|
|
74511
74511
|
const resolved = path.resolve(absolutePath);
|
|
74512
|
-
await
|
|
74513
|
-
await
|
|
74512
|
+
await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
|
|
74513
|
+
await fsPromises.writeFile(resolved, content, "utf-8");
|
|
74514
74514
|
}
|
|
74515
74515
|
function createHostWriteOperations(root, options) {
|
|
74516
74516
|
if (!(options?.workspaceOnly ?? false)) return {
|
|
74517
74517
|
mkdir: async (dir) => {
|
|
74518
74518
|
const resolved = path.resolve(dir);
|
|
74519
|
-
await
|
|
74519
|
+
await fsPromises.mkdir(resolved, { recursive: true });
|
|
74520
74520
|
},
|
|
74521
74521
|
writeFile: writeHostFile
|
|
74522
74522
|
};
|
|
@@ -74529,7 +74529,7 @@ function createHostWriteOperations(root, options) {
|
|
|
74529
74529
|
cwd: root,
|
|
74530
74530
|
root
|
|
74531
74531
|
});
|
|
74532
|
-
await
|
|
74532
|
+
await fsPromises.mkdir(resolved, { recursive: true });
|
|
74533
74533
|
},
|
|
74534
74534
|
writeFile: async (absolutePath, content) => {
|
|
74535
74535
|
await writeFileWithinRoot({
|
|
@@ -74545,12 +74545,12 @@ function createHostEditOperations(root, options) {
|
|
|
74545
74545
|
if (!(options?.workspaceOnly ?? false)) return {
|
|
74546
74546
|
readFile: async (absolutePath) => {
|
|
74547
74547
|
const resolved = path.resolve(absolutePath);
|
|
74548
|
-
return await
|
|
74548
|
+
return await fsPromises.readFile(resolved);
|
|
74549
74549
|
},
|
|
74550
74550
|
writeFile: writeHostFile,
|
|
74551
74551
|
access: async (absolutePath) => {
|
|
74552
74552
|
const resolved = path.resolve(absolutePath);
|
|
74553
|
-
await
|
|
74553
|
+
await fsPromises.access(resolved);
|
|
74554
74554
|
}
|
|
74555
74555
|
};
|
|
74556
74556
|
return {
|
|
@@ -75389,7 +75389,7 @@ async function repairSessionFileIfNeeded(params) {
|
|
|
75389
75389
|
};
|
|
75390
75390
|
let content;
|
|
75391
75391
|
try {
|
|
75392
|
-
content = await
|
|
75392
|
+
content = await fsPromises.readFile(sessionFile, "utf-8");
|
|
75393
75393
|
} catch (err) {
|
|
75394
75394
|
if (err?.code === "ENOENT") return {
|
|
75395
75395
|
repaired: false,
|
|
@@ -75437,15 +75437,15 @@ async function repairSessionFileIfNeeded(params) {
|
|
|
75437
75437
|
const backupPath = `${sessionFile}.bak-${process.pid}-${Date.now()}`;
|
|
75438
75438
|
const tmpPath = `${sessionFile}.repair-${process.pid}-${Date.now()}.tmp`;
|
|
75439
75439
|
try {
|
|
75440
|
-
const stat = await
|
|
75441
|
-
await
|
|
75442
|
-
if (stat) await
|
|
75443
|
-
await
|
|
75444
|
-
if (stat) await
|
|
75445
|
-
await
|
|
75440
|
+
const stat = await fsPromises.stat(sessionFile).catch(() => null);
|
|
75441
|
+
await fsPromises.writeFile(backupPath, content, "utf-8");
|
|
75442
|
+
if (stat) await fsPromises.chmod(backupPath, stat.mode);
|
|
75443
|
+
await fsPromises.writeFile(tmpPath, cleaned, "utf-8");
|
|
75444
|
+
if (stat) await fsPromises.chmod(tmpPath, stat.mode);
|
|
75445
|
+
await fsPromises.rename(tmpPath, sessionFile);
|
|
75446
75446
|
} catch (err) {
|
|
75447
75447
|
try {
|
|
75448
|
-
await
|
|
75448
|
+
await fsPromises.unlink(tmpPath);
|
|
75449
75449
|
} catch (cleanupErr) {
|
|
75450
75450
|
params.warn?.(`session file repair cleanup failed: ${cleanupErr instanceof Error ? cleanupErr.message : "unknown error"} (${path.basename(tmpPath)})`);
|
|
75451
75451
|
}
|
|
@@ -77046,7 +77046,7 @@ async function prewarmSessionFile(sessionFile) {
|
|
|
77046
77046
|
if (!isSessionManagerCacheEnabled()) return;
|
|
77047
77047
|
if (isSessionManagerCached(sessionFile)) return;
|
|
77048
77048
|
try {
|
|
77049
|
-
const handle = await
|
|
77049
|
+
const handle = await fsPromises.open(sessionFile, "r");
|
|
77050
77050
|
try {
|
|
77051
77051
|
const buffer = Buffer$1.alloc(4096);
|
|
77052
77052
|
await handle.read(buffer, 0, buffer.length, 0);
|
|
@@ -77402,7 +77402,7 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
77402
77402
|
} catch (err) {
|
|
77403
77403
|
return fail(describeUnknownError(err));
|
|
77404
77404
|
}
|
|
77405
|
-
await
|
|
77405
|
+
await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
|
|
77406
77406
|
const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
|
|
77407
77407
|
const sandbox = await resolveSandboxContext({
|
|
77408
77408
|
config: params.config,
|
|
@@ -77410,7 +77410,7 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
77410
77410
|
workspaceDir: resolvedWorkspace
|
|
77411
77411
|
});
|
|
77412
77412
|
const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
|
|
77413
|
-
await
|
|
77413
|
+
await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
|
|
77414
77414
|
await ensureSessionHeader({
|
|
77415
77415
|
sessionFile: params.sessionFile,
|
|
77416
77416
|
sessionId: params.sessionId,
|
|
@@ -78320,12 +78320,12 @@ function getQueuedFileWriter(writers, filePath) {
|
|
|
78320
78320
|
const existing = writers.get(filePath);
|
|
78321
78321
|
if (existing) return existing;
|
|
78322
78322
|
const dir = path.dirname(filePath);
|
|
78323
|
-
const ready =
|
|
78323
|
+
const ready = fsPromises.mkdir(dir, { recursive: true }).catch(() => void 0);
|
|
78324
78324
|
let queue = Promise.resolve();
|
|
78325
78325
|
const writer = {
|
|
78326
78326
|
filePath,
|
|
78327
78327
|
write: (line) => {
|
|
78328
|
-
queue = queue.then(() => ready).then(() =>
|
|
78328
|
+
queue = queue.then(() => ready).then(() => fsPromises.appendFile(filePath, line, "utf8")).catch(() => void 0);
|
|
78329
78329
|
}
|
|
78330
78330
|
};
|
|
78331
78331
|
writers.set(filePath, writer);
|
|
@@ -79592,6 +79592,11 @@ function handleAgentEnd(ctx) {
|
|
|
79592
79592
|
const lastAssistant = ctx.state.lastAssistant;
|
|
79593
79593
|
const isError = isAssistantMessage(lastAssistant) && lastAssistant.stopReason === "error";
|
|
79594
79594
|
if (isError && lastAssistant) {
|
|
79595
|
+
const uiHint = resolveChatUiHintForError({
|
|
79596
|
+
provider: lastAssistant.provider,
|
|
79597
|
+
model: lastAssistant.model,
|
|
79598
|
+
rawError: lastAssistant.errorMessage
|
|
79599
|
+
});
|
|
79595
79600
|
const errorText = (formatAssistantErrorText(lastAssistant, {
|
|
79596
79601
|
cfg: ctx.params.config,
|
|
79597
79602
|
sessionKey: ctx.params.sessionKey,
|
|
@@ -79605,6 +79610,7 @@ function handleAgentEnd(ctx) {
|
|
|
79605
79610
|
data: {
|
|
79606
79611
|
phase: "error",
|
|
79607
79612
|
error: errorText,
|
|
79613
|
+
...uiHint ? { uiHint } : {},
|
|
79608
79614
|
endedAt: Date.now()
|
|
79609
79615
|
}
|
|
79610
79616
|
});
|
|
@@ -79612,7 +79618,8 @@ function handleAgentEnd(ctx) {
|
|
|
79612
79618
|
stream: "lifecycle",
|
|
79613
79619
|
data: {
|
|
79614
79620
|
phase: "error",
|
|
79615
|
-
error: errorText
|
|
79621
|
+
error: errorText,
|
|
79622
|
+
...uiHint ? { uiHint } : {}
|
|
79616
79623
|
}
|
|
79617
79624
|
});
|
|
79618
79625
|
} else {
|
|
@@ -79678,6 +79685,34 @@ function resolveSilentReplyFallbackText(params) {
|
|
|
79678
79685
|
if (!fallback) return params.text;
|
|
79679
79686
|
return fallback;
|
|
79680
79687
|
}
|
|
79688
|
+
function summarizeAssistantMessageDebug(message) {
|
|
79689
|
+
const stopReason = typeof message.stopReason === "string" ? message.stopReason ?? void 0 : void 0;
|
|
79690
|
+
const content = message.content;
|
|
79691
|
+
if (!Array.isArray(content)) return {
|
|
79692
|
+
stopReason,
|
|
79693
|
+
contentTypes: []
|
|
79694
|
+
};
|
|
79695
|
+
const contentTypes = [];
|
|
79696
|
+
const toolCalls = [];
|
|
79697
|
+
for (const block of content) {
|
|
79698
|
+
if (!block || typeof block !== "object") {
|
|
79699
|
+
contentTypes.push(typeof block);
|
|
79700
|
+
continue;
|
|
79701
|
+
}
|
|
79702
|
+
const record = block;
|
|
79703
|
+
const blockType = typeof record.type === "string" ? record.type : "unknown";
|
|
79704
|
+
contentTypes.push(blockType);
|
|
79705
|
+
if (blockType === "toolCall") toolCalls.push({
|
|
79706
|
+
id: typeof record.id === "string" ? record.id : void 0,
|
|
79707
|
+
name: typeof record.name === "string" ? record.name : void 0
|
|
79708
|
+
});
|
|
79709
|
+
}
|
|
79710
|
+
return {
|
|
79711
|
+
stopReason,
|
|
79712
|
+
contentTypes,
|
|
79713
|
+
toolCalls: toolCalls.length > 0 ? toolCalls : void 0
|
|
79714
|
+
};
|
|
79715
|
+
}
|
|
79681
79716
|
function handleMessageStart(ctx, evt) {
|
|
79682
79717
|
if (evt.message?.role !== "assistant") return;
|
|
79683
79718
|
ctx.resetAssistantMessageState(ctx.state.assistantTexts.length);
|
|
@@ -79806,13 +79841,18 @@ function handleMessageEnd(ctx, evt) {
|
|
|
79806
79841
|
ctx.recordAssistantUsage(assistantMessage.usage);
|
|
79807
79842
|
promoteThinkingTagsToBlocks(assistantMessage);
|
|
79808
79843
|
const rawText = extractAssistantText$1(assistantMessage);
|
|
79844
|
+
const rawThinking = extractAssistantThinking(assistantMessage);
|
|
79845
|
+
const debugSummary = summarizeAssistantMessageDebug(assistantMessage);
|
|
79809
79846
|
appendRawStream({
|
|
79810
79847
|
ts: Date.now(),
|
|
79811
79848
|
event: "assistant_message_end",
|
|
79812
79849
|
runId: ctx.params.runId,
|
|
79813
79850
|
sessionId: ctx.params.session.id,
|
|
79814
79851
|
rawText,
|
|
79815
|
-
rawThinking
|
|
79852
|
+
rawThinking,
|
|
79853
|
+
stopReason: debugSummary.stopReason,
|
|
79854
|
+
contentTypes: debugSummary.contentTypes,
|
|
79855
|
+
toolCalls: debugSummary.toolCalls
|
|
79816
79856
|
});
|
|
79817
79857
|
const text = resolveSilentReplyFallbackText({
|
|
79818
79858
|
text: ctx.stripBlockTags(rawText, {
|
|
@@ -79821,8 +79861,8 @@ function handleMessageEnd(ctx, evt) {
|
|
|
79821
79861
|
}),
|
|
79822
79862
|
messagingToolSentTexts: ctx.state.messagingToolSentTexts
|
|
79823
79863
|
});
|
|
79824
|
-
const
|
|
79825
|
-
const formattedReasoning =
|
|
79864
|
+
const visibleRawThinking = ctx.state.includeReasoning || ctx.state.streamReasoning ? rawThinking || extractThinkingFromTaggedText(rawText) : "";
|
|
79865
|
+
const formattedReasoning = visibleRawThinking ? formatReasoningMessage(visibleRawThinking) : "";
|
|
79826
79866
|
const trimmedText = text.trim();
|
|
79827
79867
|
const parsedText = trimmedText ? parseReplyDirectives(stripTrailingDirective(trimmedText)) : null;
|
|
79828
79868
|
let cleanedText = parsedText?.text ?? "";
|
|
@@ -79903,7 +79943,7 @@ function handleMessageEnd(ctx, evt) {
|
|
|
79903
79943
|
}
|
|
79904
79944
|
}
|
|
79905
79945
|
if (!shouldEmitReasoningBeforeAnswer) maybeEmitReasoning();
|
|
79906
|
-
if (ctx.state.streamReasoning &&
|
|
79946
|
+
if (ctx.state.streamReasoning && visibleRawThinking) ctx.emitReasoningStream(visibleRawThinking);
|
|
79907
79947
|
if (ctx.state.blockReplyBreak === "text_end" && onBlockReply) emitSplitResultAsBlockReply(ctx.consumeReplyDirectives("", { final: true }));
|
|
79908
79948
|
ctx.state.deltaBuffer = "";
|
|
79909
79949
|
ctx.state.blockBuffer = "";
|
|
@@ -81243,7 +81283,7 @@ async function prepareSessionManagerForRun(params) {
|
|
|
81243
81283
|
return;
|
|
81244
81284
|
}
|
|
81245
81285
|
if (params.hadSessionFile && header && !hasAssistant) {
|
|
81246
|
-
await
|
|
81286
|
+
await fsPromises.writeFile(params.sessionFile, "", "utf-8");
|
|
81247
81287
|
sm.fileEntries = [header];
|
|
81248
81288
|
sm.byId?.clear?.();
|
|
81249
81289
|
sm.labelsById?.clear?.();
|
|
@@ -81977,7 +82017,7 @@ async function runEmbeddedAttempt(params) {
|
|
|
81977
82017
|
const prevCwd = process.cwd();
|
|
81978
82018
|
const runAbortController = new AbortController();
|
|
81979
82019
|
log$3.debug(`embedded run start: runId=${params.runId} sessionId=${params.sessionId} provider=${params.provider} model=${params.modelId} thinking=${params.thinkLevel} messageChannel=${params.messageChannel ?? params.messageProvider ?? "unknown"}`);
|
|
81980
|
-
await
|
|
82020
|
+
await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
|
|
81981
82021
|
const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
|
|
81982
82022
|
const sandbox = await resolveSandboxContext({
|
|
81983
82023
|
config: params.config,
|
|
@@ -81985,7 +82025,7 @@ async function runEmbeddedAttempt(params) {
|
|
|
81985
82025
|
workspaceDir: resolvedWorkspace
|
|
81986
82026
|
});
|
|
81987
82027
|
const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
|
|
81988
|
-
await
|
|
82028
|
+
await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
|
|
81989
82029
|
let restoreSkillEnv;
|
|
81990
82030
|
process.chdir(effectiveWorkspace);
|
|
81991
82031
|
try {
|
|
@@ -82229,7 +82269,7 @@ async function runEmbeddedAttempt(params) {
|
|
|
82229
82269
|
sessionFile: params.sessionFile,
|
|
82230
82270
|
warn: (message) => log$3.warn(message)
|
|
82231
82271
|
});
|
|
82232
|
-
const hadSessionFile = await
|
|
82272
|
+
const hadSessionFile = await fsPromises.stat(params.sessionFile).then(() => true).catch(() => false);
|
|
82233
82273
|
const transcriptPolicy = resolveTranscriptPolicy({
|
|
82234
82274
|
modelApi: params.model?.api,
|
|
82235
82275
|
provider: params.provider,
|
|
@@ -83372,7 +83412,7 @@ async function runEmbeddedPiAgent(params) {
|
|
|
83372
83412
|
const copilotAuthRetry = authRetryPending;
|
|
83373
83413
|
authRetryPending = false;
|
|
83374
83414
|
attemptedThinking.add(thinkLevel);
|
|
83375
|
-
await
|
|
83415
|
+
await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
|
|
83376
83416
|
const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
|
|
83377
83417
|
const attempt = await runEmbeddedAttempt({
|
|
83378
83418
|
sessionId: params.sessionId,
|
|
@@ -86034,4 +86074,4 @@ function initSubagentRegistry() {
|
|
|
86034
86074
|
}
|
|
86035
86075
|
|
|
86036
86076
|
//#endregion
|
|
86037
|
-
export { resolveInboundDebounceMs as $,
|
|
86077
|
+
export { resolveInboundDebounceMs as $, resolveAgentTimeoutMs as $n, getHookType as $t, agentCommandFromIngress as A, buildChannelAccountSnapshot as An, setCommandLaneConcurrency as Ar, formatDoctorNonInteractiveHint as At, parseIdentityMarkdown as B, setHeartbeatWakeHandler as Bn, getAgentRunContext as Br, normalizeOptionalAgentId$1 as Bt, readJsonBodyWithLimit as C, loadProviderUsageSummary as Cn, OPENAI_TTS_MODELS as Cr, formatTargetDisplay as Ct, sleepWithAbort as D, maskApiKey as Dn, getTotalQueueSize as Dr, describeFailoverError as Dt, computeBackoff as E, resolveUsageProviderId as En, getQueueSize as Er, runWithModelFallback as Et, createDefaultDeps as F, enqueueSystemEvent as Fn, isHeartbeatContentEffectivelyEmpty as Fr, writeRestartSentinel as Ft, recordPendingHistoryEntryIfEnabled as G, DEFAULT_INPUT_IMAGE_MAX_BYTES as Gn, migrateLegacyCronPayload as Gt, resolveMentionGating as H, resolveSlackUserAllowlist as Hn, registerAgentRunContext as Hr, normalizeOptionalText as Ht, createOutboundSendDeps$1 as I, isSystemEventContextChanged as In, resolveHeartbeatPrompt as Ir, normalizeHttpWebhookUrl as It, warnMissingProviderGroupPolicyFallbackOnce as J, DEFAULT_INPUT_TIMEOUT_MS as Jn, stripLegacyDeliveryFields as Jt, resolveDefaultGroupPolicy as K, DEFAULT_INPUT_IMAGE_MIMES as Kn, buildDeliveryFromLegacyPayload as Kt, resolveAgentAvatar as L, peekSystemEventEntries as Ln, stripHeartbeatToken as Lr, normalizeCronJobCreate as Lt, resolveAgentDeliveryPlan as M, resolveChannelAccountConfigured as Mn, CommandLane as Mr, readRestartSentinel as Mt, resolveAgentOutboundTarget as N, resolveChannelAccountEnabled as Nn, DEFAULT_HEARTBEAT_ACK_MAX_CHARS as Nr, summarizeRestartSentinel as Nt, resolveDiscordChannelAllowlist as O, formatZonedTimestamp as On, markGatewayDraining as Or, isFailoverError as Ot, createOutboundSendDeps as P, resolveCommitHash as Pn, DEFAULT_HEARTBEAT_EVERY as Pr, trimLogTail as Pt, createInboundDebouncer as Q, resolveInputFileLimits as Qn, detectSuspiciousPatterns as Qt, identityHasValues as R, peekSystemEvents as Rn, clearAgentRunContext as Rr, normalizeCronJobPatch as Rt, handleSlackHttpRequest as S, parseActivationCommand as Sn, textToSpeech as Sr, resolveOutboundChannelPlugin as St, resolveInboundSessionEnvelopeContext as T, formatUsageWindowSummary as Tn, getActiveTaskCount as Tr, CHANNEL_MESSAGE_ACTION_NAMES as Tt, DEFAULT_GROUP_HISTORY_LIMIT as U, resolveDiscordUserAllowlist as Un, normalizePayloadToSystemText as Ut, buildPairingReply as V, resolveHeartbeatReasonKind as Vn, onAgentEvent as Vr, normalizeOptionalSessionKey as Vt, buildHistoryContextFromEntries as W, ACP_SESSION_IDENTITY_RENDERER_VERSION as Wn, normalizeRequiredName as Wt, dispatchReplyWithBufferedBlockDispatcher as X, extractImageContentFromSource as Xn, CHANNEL_TARGET_DESCRIPTION as Xt, shouldAckReactionForWhatsApp as Y, extractFileContentFromSource as Yn, CHANNEL_TARGETS_DESCRIPTION as Yt, provider_dispatcher_exports as Z, normalizeMimeList as Zn, buildSafeExternalPrompt as Zt, loadOpenClawPlugins as _, setGatewaySigusr1RestartPolicy as _n, resolveTtsConfig as _r, resolveOutboundSessionRoute as _t, runSubagentAnnounceFlow as a, buildAuthHealthSummary as an, stopSubagentsForRequester as ar, getReplyFromConfig as at, resolveAgentOutboundIdentity as b, unbindThreadBindingsBySessionKey as bn, setTtsEnabled as br, resolveOutboundTarget as bt, abortEmbeddedPiRun as c, applyVerboseOverride as cn, getAcpSessionManager as cr, resolveCronStyleNow as ct, applyToolPolicyPipeline as d, consumeGatewaySigusr1RestartAuthorization as dn, clearBootstrapSnapshot as dr, runCliAgent as dt, isExternalHookSession as en, normalizeSendPolicy as er, formatInboundEnvelope as et, buildDefaultToolPolicyPipelineSteps as f, deferGatewayRestartUntilIdle as fn, getTtsProvider as fr, createOpenClawTools as ft, createPluginLoaderLogger as g, scheduleGatewaySigusr1Restart as gn, resolveTtsAutoMode as gr, ensureOutboundSessionEntry as gt, resolvePluginTools as h, markGatewaySigusr1RestartHandled as hn, resolveTtsApiKey as hr, runMessageAction as ht, subagent_registry_exports as i, DEFAULT_OAUTH_WARN_MS as in, isAbortRequestText as ir, createDedupeCache as it, resolveSessionKeyForRequest as j, formatChannelAllowFrom as jn, waitForActiveTasks as jr, formatRestartSentinelMessage as jt, agentCommand as k, buildChannelSummary as kn, resetAllLanes as kr, consumeRestartSentinel as kt, getActiveEmbeddedRunCount as l, parseVerboseOverride as ln, resolveAgentSessionDirs as lr, getCliSessionId as lt, getPluginToolMeta as m, isGatewaySigusr1RestartExternallyAllowed as mn, isTtsProviderConfigured as mr, resolveAnnounceTargetFromKey as mt, initSubagentRegistry as n, persistBrowserProxyFiles as nn, hasControlCommand as nr, createReplyDispatcher as nt, clearSessionQueues as o, formatRemainingShort as on, buildMentionRegexes as or, BARE_SESSION_RESET_PROMPT as ot, sniffMimeFromBase64 as p, emitGatewayRestart as pn, isTtsEnabled as pr, readLatestAssistantReply as pt, resolveOpenProviderRuntimeGroupPolicy as q, DEFAULT_INPUT_MAX_REDIRECTS as qn, hasLegacyDeliveryHints as qt, listDescendantRunsForRequester as r, resolveSessionAuthProfileOverride as rn, shouldComputeCommandAuthorized as rr, getTotalPendingReplies as rt, runEmbeddedPiAgent as s, applyModelOverrideToSessionEntry as sn, normalizeMentionText as sr, appendCronStyleCurrentTimeLine as st, countActiveDescendantRuns as t, applyBrowserProxyPaths as tn, resolveSendPolicy as tr, dispatchInboundMessage as tt, waitForEmbeddedPiRunEnd as u, buildOutboundSessionContext as un, resolveUserTimezone as ur, setCliSessionId as ut, createPluginRuntime as v, setPreRestartDeferralCheck as vn, resolveTtsPrefsPath as vr, resolveHeartbeatDeliveryTarget as vt, requestBodyErrorToText as w, formatUsageReportLines as wn, OPENAI_TTS_VOICES as wr, resetDirectoryCache as wt, resolveSlackChannelAllowlist as x, normalizeGroupActivation as xn, setTtsProvider as xr, resolveSessionDeliveryTarget as xt, deleteTelegramUpdateOffset as y, triggerOpenClawRestart as yn, resolveTtsProviderOrder as yr, resolveHeartbeatSenderContext as yt, loadAgentIdentityFromWorkspace as z, requestHeartbeatNow as zn, emitAgentEvent as zr, inferLegacyName as zt };
|