@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
|
@@ -3,12 +3,12 @@ import { g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as
|
|
|
3
3
|
import { a as setConsoleSubsystemFilter, d as defaultRuntime, n as runtimeForLogger, o as setConsoleTimestampPrefix, t as createSubsystemLogger } from "./subsystem-BkPzfTiu.js";
|
|
4
4
|
import "./boolean-DtWR5bt3.js";
|
|
5
5
|
import { i as logAcceptedEnvOption, r as isTruthyEnvValue } from "./entry.js";
|
|
6
|
-
import { Ai as DEFAULT_MODEL, B as OpenClawSchema, Er as resolveThinkingDefault, F as readConfigFileSnapshotForWrite, Fn as resolveSubagentMaxConcurrent, I as resolveConfigSnapshotHash, Jn as loadAuthProfileStoreForRuntime, M as loadConfig, Mn as buildTalkConfigResponse, N as parseConfigJson5, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, R as writeConfigFile, Si as normalizeSecretInput, St as AVATAR_MAX_BYTES, Tt as isAvatarImageDataUrl, Un as upsertAuthProfile, _r as resolveAllowedModelRef, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, bn as applyLegacyMigrations, br as resolveDefaultModelForAgent, dr as isCliProvider, ir as isPidAlive, j as createConfigIO, ji as DEFAULT_PROVIDER, k as migrateLegacyConfig, ki as DEFAULT_CONTEXT_TOKENS, kt as looksLikeAvatarPath, l as resolveApiKeyForProfile, lr as getModelRefStatus, mr as normalizeModelSelection, ot as parseByteSize, wr as resolveSubagentConfiguredModelSelection, wt as isAvatarHttpUrl, xi as normalizeOptionalSecretInput, xn as ensureControlUiAllowedOriginsForNonLoopbackBind, xr as resolveHooksGmailModel, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins } from "./auth-profiles-
|
|
6
|
+
import { Ai as DEFAULT_MODEL, B as OpenClawSchema, Er as resolveThinkingDefault, F as readConfigFileSnapshotForWrite, Fn as resolveSubagentMaxConcurrent, I as resolveConfigSnapshotHash, Jn as loadAuthProfileStoreForRuntime, M as loadConfig, Mn as buildTalkConfigResponse, N as parseConfigJson5, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, R as writeConfigFile, Si as normalizeSecretInput, St as AVATAR_MAX_BYTES, Tt as isAvatarImageDataUrl, Un as upsertAuthProfile, _r as resolveAllowedModelRef, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, bn as applyLegacyMigrations, br as resolveDefaultModelForAgent, dr as isCliProvider, ir as isPidAlive, j as createConfigIO, ji as DEFAULT_PROVIDER, k as migrateLegacyConfig, ki as DEFAULT_CONTEXT_TOKENS, kt as looksLikeAvatarPath, l as resolveApiKeyForProfile, lr as getModelRefStatus, mr as normalizeModelSelection, ot as parseByteSize, wr as resolveSubagentConfiguredModelSelection, wt as isAvatarHttpUrl, xi as normalizeOptionalSecretInput, xn as ensureControlUiAllowedOriginsForNonLoopbackBind, xr as resolveHooksGmailModel, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins } from "./auth-profiles-DNfjfFON.js";
|
|
7
7
|
import { t as formatCliCommand } from "./command-format-Bu77oTl0.js";
|
|
8
|
-
import { a as resolveAgentDir, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
8
|
+
import { a as resolveAgentDir, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir } from "./agent-scope-BSkZamWK.js";
|
|
9
9
|
import { S as isCronRunSessionKey, T as parseAgentSessionKey, c as normalizeAgentId, g as normalizeAccountId$1, h as DEFAULT_ACCOUNT_ID, l as normalizeMainKey, m as toAgentStoreSessionKey, o as classifySessionKeyShape, p as toAgentRequestSessionKey, r as buildAgentMainSessionKey, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, w as isSubagentSessionKey } from "./session-key-BLprDJYq.js";
|
|
10
10
|
import { E as isPlainObject, T as truncateUtf16Safe, n as clamp, s as ensureDir, v as resolveUserPath, x as shortenHomePath } from "./utils-Dwy0Sy1G.js";
|
|
11
|
-
import { A as isNotFoundPathError, C as openBoundaryFileSync, P as matchesSkillFilter, S as openBoundaryFile, T as sameFileIdentity, a as DEFAULT_IDENTITY_FILENAME, c as DEFAULT_SOUL_FILENAME, d as ensureAgentWorkspace, h as resolveDefaultAgentWorkspaceDir, i as DEFAULT_HEARTBEAT_FILENAME, l as DEFAULT_TOOLS_FILENAME, o as DEFAULT_MEMORY_ALT_FILENAME, p as isWorkspaceOnboardingCompleted, r as DEFAULT_BOOTSTRAP_FILENAME, s as DEFAULT_MEMORY_FILENAME, t as DEFAULT_AGENTS_FILENAME, u as DEFAULT_USER_FILENAME, v as resolveWorkspaceTemplateDir, w as openVerifiedFileSync, y as resolveOpenClawPackageRoot } from "./workspace-
|
|
11
|
+
import { A as isNotFoundPathError, C as openBoundaryFileSync, P as matchesSkillFilter, S as openBoundaryFile, T as sameFileIdentity, a as DEFAULT_IDENTITY_FILENAME, c as DEFAULT_SOUL_FILENAME, d as ensureAgentWorkspace, h as resolveDefaultAgentWorkspaceDir, i as DEFAULT_HEARTBEAT_FILENAME, l as DEFAULT_TOOLS_FILENAME, o as DEFAULT_MEMORY_ALT_FILENAME, p as isWorkspaceOnboardingCompleted, r as DEFAULT_BOOTSTRAP_FILENAME, s as DEFAULT_MEMORY_FILENAME, t as DEFAULT_AGENTS_FILENAME, u as DEFAULT_USER_FILENAME, v as resolveWorkspaceTemplateDir, w as openVerifiedFileSync, y as resolveOpenClawPackageRoot } from "./workspace-CZCYGcgM.js";
|
|
12
12
|
import { i as logWarn, t as logDebug } from "./logger-JNFFzTLe.js";
|
|
13
13
|
import { n as runExec, t as runCommandWithTimeout } from "./exec-BxfdQ5hH.js";
|
|
14
14
|
import "./github-copilot-token-BqbY2oVI.js";
|
|
@@ -16,112 +16,112 @@ import "./host-env-security-CJMD0__Z.js";
|
|
|
16
16
|
import { n as resolveRuntimeServiceVersion, t as VERSION } from "./version-CGDNfh5C.js";
|
|
17
17
|
import "./env-vars-Dw0EwyGP.js";
|
|
18
18
|
import { C as clearInternalHooks, E as triggerInternalHook, T as registerInternalHook, h as createEmptyPluginRegistry, t as CHANNEL_IDS, u as getActivePluginRegistry, w as createInternalHookEvent } from "./registry-C4Fq5HtN.js";
|
|
19
|
-
import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-
|
|
20
|
-
import "./dock-
|
|
21
|
-
import "./model-
|
|
22
|
-
import "./pi-model-discovery-
|
|
19
|
+
import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-InPIGvqe.js";
|
|
20
|
+
import "./dock-Cki7hMDN.js";
|
|
21
|
+
import "./model-Cun06SAF.js";
|
|
22
|
+
import "./pi-model-discovery-BnW942uP.js";
|
|
23
23
|
import { d as hasBinary } from "./frontmatter-I4t5UjzX.js";
|
|
24
|
-
import { c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-
|
|
25
|
-
import { n as assertNoPathAliasEscape } from "./path-alias-guards-
|
|
26
|
-
import { t as buildWorkspaceSkillStatus } from "./skills-status-
|
|
24
|
+
import { c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-cQZqFYZM.js";
|
|
25
|
+
import { n as assertNoPathAliasEscape } from "./path-alias-guards-DCVgvjo3.js";
|
|
26
|
+
import { t as buildWorkspaceSkillStatus } from "./skills-status-DLQ7pr9r.js";
|
|
27
27
|
import { _ as normalizeGatewayClientMode, f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_IDS, r as isGatewayCliClient, s as isWebchatClient, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-DuRP9JPi.js";
|
|
28
|
-
import { $ as resolveAgentMainSessionKey, A as readSessionPreviewItemsFromTranscript, B as cleanStaleLockFiles, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, G as resolveSessionResetPolicy, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as canonicalizeMainSessionAlias, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as evaluateSessionFreshness, Y as mergeSessionEntry, Z as setSessionRuntimeModel, d as updateSessionStore, et as resolveExplicitAgentSessionKey, it as snapshotSessionOrigin, k as readSessionMessages, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKey, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-
|
|
29
|
-
import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as normalizeWhatsAppTarget } from "./plugins-
|
|
30
|
-
import { i as resolveWhatsAppAccount } from "./accounts-
|
|
31
|
-
import "./accounts-
|
|
28
|
+
import { $ as resolveAgentMainSessionKey, A as readSessionPreviewItemsFromTranscript, B as cleanStaleLockFiles, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, G as resolveSessionResetPolicy, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as canonicalizeMainSessionAlias, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as evaluateSessionFreshness, Y as mergeSessionEntry, Z as setSessionRuntimeModel, d as updateSessionStore, et as resolveExplicitAgentSessionKey, it as snapshotSessionOrigin, k as readSessionMessages, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKey, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-BUvaIZVg.js";
|
|
29
|
+
import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as normalizeWhatsAppTarget } from "./plugins-B9LVNfXo.js";
|
|
30
|
+
import { i as resolveWhatsAppAccount } from "./accounts-CAdzApsy.js";
|
|
31
|
+
import "./accounts-CuCtdH3C.js";
|
|
32
32
|
import "./logging-CcxUDNcI.js";
|
|
33
|
-
import "./accounts-
|
|
34
|
-
import { t as buildChannelAccountBindings } from "./bindings-
|
|
35
|
-
import "./send-
|
|
36
|
-
import "./send-
|
|
37
|
-
import { $n as
|
|
33
|
+
import "./accounts-Cz3RQNdH.js";
|
|
34
|
+
import { t as buildChannelAccountBindings } from "./bindings-B8U0BrYk.js";
|
|
35
|
+
import "./send-ofq5TYCm.js";
|
|
36
|
+
import "./send-B3N6ed5I.js";
|
|
37
|
+
import { $n as resolveAgentTimeoutMs, $t as getHookType, A as agentCommandFromIngress, Ar as setCommandLaneConcurrency, At as formatDoctorNonInteractiveHint, Br as getAgentRunContext, Bt as normalizeOptionalAgentId, C as readJsonBodyWithLimit, Cn as loadProviderUsageSummary, Cr as OPENAI_TTS_MODELS, D as sleepWithAbort, Dr as getTotalQueueSize, E as computeBackoff, Et as runWithModelFallback, F as createDefaultDeps, Fn as enqueueSystemEvent, Ft as writeRestartSentinel, Gn as DEFAULT_INPUT_IMAGE_MAX_BYTES, Gt as migrateLegacyCronPayload, Hr as registerAgentRunContext, Ht as normalizeOptionalText, I as createOutboundSendDeps$1, In as isSystemEventContextChanged, It as normalizeHttpWebhookUrl, Jn as DEFAULT_INPUT_TIMEOUT_MS, Jt as stripLegacyDeliveryFields, Kn as DEFAULT_INPUT_IMAGE_MIMES, Kt as buildDeliveryFromLegacyPayload, L as resolveAgentAvatar, Lr as stripHeartbeatToken, Lt as normalizeCronJobCreate, M as resolveAgentDeliveryPlan, Mr as CommandLane, N as resolveAgentOutboundTarget, Nr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, Nt as summarizeRestartSentinel, On as formatZonedTimestamp, Or as markGatewayDraining, Ot as isFailoverError, P as createOutboundSendDeps, Qn as resolveInputFileLimits, Qt as detectSuspiciousPatterns, Rr as clearAgentRunContext, Rt as normalizeCronJobPatch, S as handleSlackHttpRequest, Sr as textToSpeech, St as resolveOutboundChannelPlugin, Tr as getActiveTaskCount, Ut as normalizePayloadToSystemText, Vr as onAgentEvent, Vt as normalizeOptionalSessionKey, W as buildHistoryContextFromEntries, Wn as ACP_SESSION_IDENTITY_RENDERER_VERSION, Wt as normalizeRequiredName, Xn as extractImageContentFromSource, Yn as extractFileContentFromSource, Zn as normalizeMimeList, Zt as buildSafeExternalPrompt, _ as loadOpenClawPlugins, _n as setGatewaySigusr1RestartPolicy, _r as resolveTtsConfig, _t as resolveOutboundSessionRoute, a as runSubagentAnnounceFlow, ar as stopSubagentsForRequester, b as resolveAgentOutboundIdentity, bn as unbindThreadBindingsBySessionKey, br as setTtsEnabled, bt as resolveOutboundTarget, c as abortEmbeddedPiRun, cn as applyVerboseOverride, cr as getAcpSessionManager, ct as resolveCronStyleNow, d as applyToolPolicyPipeline, dn as consumeGatewaySigusr1RestartAuthorization, dr as clearBootstrapSnapshot, dt as runCliAgent, en as isExternalHookSession, er as normalizeSendPolicy, f as buildDefaultToolPolicyPipelineSteps, fn as deferGatewayRestartUntilIdle, fr as getTtsProvider, ft as createOpenClawTools, gn as scheduleGatewaySigusr1Restart, gr as resolveTtsAutoMode, gt as ensureOutboundSessionEntry, h as resolvePluginTools, hn as markGatewaySigusr1RestartHandled, hr as resolveTtsApiKey, ir as isAbortRequestText, jr as waitForActiveTasks, jt as formatRestartSentinelMessage, kr as resetAllLanes, kt as consumeRestartSentinel, l as getActiveEmbeddedRunCount, ln as parseVerboseOverride, lr as resolveAgentSessionDirs, lt as getCliSessionId, m as getPluginToolMeta, mn as isGatewaySigusr1RestartExternallyAllowed, mr as isTtsProviderConfigured, mt as resolveAnnounceTargetFromKey, n as initSubagentRegistry, nn as persistBrowserProxyFiles, nt as createReplyDispatcher, o as clearSessionQueues, ot as BARE_SESSION_RESET_PROMPT, pn as emitGatewayRestart, pr as isTtsEnabled, pt as readLatestAssistantReply, qn as DEFAULT_INPUT_MAX_REDIRECTS, qt as hasLegacyDeliveryHints, r as listDescendantRunsForRequester, rn as resolveSessionAuthProfileOverride, rt as getTotalPendingReplies, s as runEmbeddedPiAgent, sn as applyModelOverrideToSessionEntry, t as countActiveDescendantRuns, tn as applyBrowserProxyPaths, tr as resolveSendPolicy, tt as dispatchInboundMessage, u as waitForEmbeddedPiRunEnd, un as buildOutboundSessionContext, ur as resolveUserTimezone, ut as setCliSessionId, v as createPluginRuntime, vn as setPreRestartDeferralCheck, vr as resolveTtsPrefsPath, w as requestBodyErrorToText, wr as OPENAI_TTS_VOICES, wt as resetDirectoryCache, xn as normalizeGroupActivation, xr as setTtsProvider, xt as resolveSessionDeliveryTarget, yn as triggerOpenClawRestart, yr as resolveTtsProviderOrder, zn as requestHeartbeatNow, zr as emitAgentEvent, zt as inferLegacyName } from "./subagent-registry-DxueEkqw.js";
|
|
38
38
|
import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, s as resolveSessionTranscriptsDirForAgent } from "./paths-oIurw4YQ.js";
|
|
39
39
|
import { i as normalizeInputProvenance } from "./input-provenance-BDYpbBeC.js";
|
|
40
40
|
import "./chat-envelope-AUuZAcrC.js";
|
|
41
|
-
import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-
|
|
42
|
-
import { $ as validateNodePairApproveParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsAuthSetParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeDescribeParams, Jt as revokeDeviceToken, K as validateModelsListParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodeListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeInvokeParams, Xt as summarizeDeviceTokens, Y as validateNodeEventParams, Yt as rotateDeviceToken, Z as validateNodeInvokeResultParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validatePollParams, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairListParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validateNodeRenameParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodePairRequestParams, o as validateAgentsCreateParams, ot as validatePushTestParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateModelsVerifyParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validateNodePairVerifyParams, s as validateAgentsDeleteParams, st as validateRequestFrame, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairRejectParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-
|
|
43
|
-
import { f as loadGatewayTlsRuntime$1, l as authorizeOperatorScopesForMethod, n as callGateway, s as ADMIN_SCOPE$3, u as isNodeRoleMethod } from "./call-
|
|
41
|
+
import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-1hhV5hS6.js";
|
|
42
|
+
import { $ as validateNodePairApproveParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsAuthSetParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeDescribeParams, Jt as revokeDeviceToken, K as validateModelsListParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodeListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeInvokeParams, Xt as summarizeDeviceTokens, Y as validateNodeEventParams, Yt as rotateDeviceToken, Z as validateNodeInvokeResultParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validatePollParams, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairListParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validateNodeRenameParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodePairRequestParams, o as validateAgentsCreateParams, ot as validatePushTestParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateModelsVerifyParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validateNodePairVerifyParams, s as validateAgentsDeleteParams, st as validateRequestFrame, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairRejectParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-CbO7FTeL.js";
|
|
43
|
+
import { f as loadGatewayTlsRuntime$1, l as authorizeOperatorScopesForMethod, n as callGateway, s as ADMIN_SCOPE$3, u as isNodeRoleMethod } from "./call-Da49LtVk.js";
|
|
44
44
|
import "./pairing-token-fCKTYUJ-.js";
|
|
45
45
|
import { t as safeEqualSecret } from "./secret-equal-CzmdvIUc.js";
|
|
46
|
-
import { a as isTrustedProxyAddress, c as pickPrimaryLanIPv4, d as resolveGatewayListenHosts, f as rawDataToString, l as resolveClientIp, n as isLoopbackAddress, o as isValidIPv4, r as isLoopbackHost, s as normalizeHostHeader, t as isLocalishHost, u as resolveGatewayBindHost } from "./net-
|
|
47
|
-
import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-
|
|
46
|
+
import { a as isTrustedProxyAddress, c as pickPrimaryLanIPv4, d as resolveGatewayListenHosts, f as rawDataToString, l as resolveClientIp, n as isLoopbackAddress, o as isValidIPv4, r as isLoopbackHost, s as normalizeHostHeader, t as isLocalishHost, u as resolveGatewayBindHost } from "./net-Dsab06Rf.js";
|
|
47
|
+
import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-CQxQNgt6.js";
|
|
48
48
|
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-COy2Fxku.js";
|
|
49
|
-
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-
|
|
50
|
-
import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-
|
|
51
|
-
import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-
|
|
49
|
+
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-CojHmZpl.js";
|
|
50
|
+
import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-BCX2HRzP.js";
|
|
51
|
+
import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-CgNDbdut.js";
|
|
52
52
|
import "./diagnostic-session-state-B5Z0I32_.js";
|
|
53
|
-
import { S as saveCronStore, b as loadCronStore, x as resolveCronStorePath } from "./send-
|
|
54
|
-
import { c as detectMime } from "./image-ops-
|
|
55
|
-
import "./pi-embedded-helpers-
|
|
56
|
-
import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-
|
|
53
|
+
import { S as saveCronStore, b as loadCronStore, x as resolveCronStorePath } from "./send-CUhKEB1L.js";
|
|
54
|
+
import { c as detectMime } from "./image-ops-Cv4BHtyC.js";
|
|
55
|
+
import { F as resolveChatUiHintForError } from "./pi-embedded-helpers-YXFiUfat.js";
|
|
56
|
+
import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-GZ80o0rN.js";
|
|
57
57
|
import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-CDe8aNjS.js";
|
|
58
|
-
import "./chrome-
|
|
58
|
+
import "./chrome-BosxOvwr.js";
|
|
59
59
|
import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-DwvUI5Bb.js";
|
|
60
|
-
import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-
|
|
61
|
-
import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-
|
|
62
|
-
import "./paths-
|
|
60
|
+
import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-CVxYkRFJ.js";
|
|
61
|
+
import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-BIKTw3k8.js";
|
|
62
|
+
import "./paths-ufuDrRZO.js";
|
|
63
63
|
import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-CYcs8rK6.js";
|
|
64
64
|
import { o as isErrno, r as formatErrorMessage } from "./errors-BMwPyScO.js";
|
|
65
|
-
import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-
|
|
66
|
-
import { n as SsrFBlockedError } from "./proxy-env-
|
|
67
|
-
import "./store-
|
|
68
|
-
import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-
|
|
65
|
+
import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-BtSQvuQn.js";
|
|
66
|
+
import { n as SsrFBlockedError } from "./proxy-env-DQluNeAy.js";
|
|
67
|
+
import "./store-D1eSPAL7.js";
|
|
68
|
+
import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-BKC_uvax.js";
|
|
69
69
|
import { t as movePathToTrash } from "./trash-Dlgx3ady.js";
|
|
70
|
-
import "./server-middleware-
|
|
71
|
-
import "./tool-images-
|
|
70
|
+
import "./server-middleware-Q0-cjKBA.js";
|
|
71
|
+
import "./tool-images-hL7SizLq.js";
|
|
72
72
|
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 } from "./thinking-BxCyPtl0.js";
|
|
73
|
-
import "./models-config-
|
|
74
|
-
import "./exec-approvals-allowlist-
|
|
75
|
-
import "./exec-safe-bin-runtime-policy-
|
|
76
|
-
import { n as loadModelCatalog } from "./model-catalog-
|
|
77
|
-
import "./fetch-
|
|
78
|
-
import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-
|
|
79
|
-
import { t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
80
|
-
import { x as extractTextFromChatContent } from "./image-
|
|
73
|
+
import "./models-config-BjTFyv9Z.js";
|
|
74
|
+
import "./exec-approvals-allowlist-Bdtmhwgj.js";
|
|
75
|
+
import "./exec-safe-bin-runtime-policy-DfgvmbZG.js";
|
|
76
|
+
import { n as loadModelCatalog } from "./model-catalog-BoIN1v0Q.js";
|
|
77
|
+
import "./fetch-Dp9uG2qN.js";
|
|
78
|
+
import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-BEtb5Jme.js";
|
|
79
|
+
import { t as fetchWithSsrFGuard } from "./fetch-guard-ClzGpvFK.js";
|
|
80
|
+
import { x as extractTextFromChatContent } from "./image-CrLgaJde.js";
|
|
81
81
|
import "./tool-display-sVaWRESD.js";
|
|
82
|
-
import "./api-key-rotation-
|
|
82
|
+
import "./api-key-rotation-KLYtCoCN.js";
|
|
83
83
|
import "./proxy-fetch-ReVzadXq.js";
|
|
84
|
-
import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-
|
|
84
|
+
import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-BwXX5Jk8.js";
|
|
85
85
|
import "./chunk-BNLlgymK.js";
|
|
86
|
-
import "./markdown-tables-
|
|
87
|
-
import "./ir-
|
|
86
|
+
import "./markdown-tables-DoeNp6Yw.js";
|
|
87
|
+
import "./ir-Bov3hbIf.js";
|
|
88
88
|
import "./render-Bwu_WxwA.js";
|
|
89
|
-
import { a as ToolInputError } from "./target-errors-
|
|
90
|
-
import { r as isRestartEnabled } from "./commands-
|
|
91
|
-
import "./commands-registry-
|
|
89
|
+
import { a as ToolInputError } from "./target-errors-8-urss_s.js";
|
|
90
|
+
import { r as isRestartEnabled } from "./commands-pIMTT07J.js";
|
|
91
|
+
import "./commands-registry-DsvOsTTF.js";
|
|
92
92
|
import "./fetch-BAIuE19S.js";
|
|
93
93
|
import "./retry-BB6FMQn9.js";
|
|
94
|
-
import { a as readChannelAllowFromStoreSync } from "./pairing-store-
|
|
94
|
+
import { a as readChannelAllowFromStoreSync } from "./pairing-store-BBxShFYa.js";
|
|
95
95
|
import { a as mergeExecApprovalsSocketDefaults, c as readExecApprovalsSnapshot, p as saveExecApprovals, r as ensureExecApprovals, s as normalizeExecApprovals, t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-DW6bgoDc.js";
|
|
96
|
-
import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-
|
|
97
|
-
import { n as resolveSystemRunCommand } from "./system-run-command-
|
|
98
|
-
import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-
|
|
96
|
+
import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-BfHQppAv.js";
|
|
97
|
+
import { n as resolveSystemRunCommand } from "./system-run-command-BkdvGhnZ.js";
|
|
98
|
+
import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-dcEiC-U5.js";
|
|
99
99
|
import { c as hasNonzeroUsage, i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, s as deriveSessionTotalTokens, t as discoverAllSessions } from "./session-cost-usage-BsxmoBNj.js";
|
|
100
100
|
import { n as formatTokenCount, r as formatUsd } from "./usage-format-BzVVjHV2.js";
|
|
101
|
-
import { S as registerSkillsChangeListener, _ as requestNodePairing, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, g as renamePairedNode, h as rejectNodePairing, l as refreshRemoteBinsForConnectedNodes, m as listNodePairing, o as getRemoteSkillEligibility, p as approveNodePairing, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion, y as verifyNodeToken } from "./skill-commands-
|
|
102
|
-
import { t as listAgentWorkspaceDirs } from "./workspace-dirs-
|
|
101
|
+
import { S as registerSkillsChangeListener, _ as requestNodePairing, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, g as renamePairedNode, h as rejectNodePairing, l as refreshRemoteBinsForConnectedNodes, m as listNodePairing, o as getRemoteSkillEligibility, p as approveNodePairing, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion, y as verifyNodeToken } from "./skill-commands-Do5yZvPn.js";
|
|
102
|
+
import { t as listAgentWorkspaceDirs } from "./workspace-dirs-CksYiwHf.js";
|
|
103
103
|
import { t as getChannelActivity } from "./channel-activity-SjFx-6OM.js";
|
|
104
104
|
import { n as normalizePollInput } from "./polls-DXeUmcgz.js";
|
|
105
|
-
import "./tables-
|
|
106
|
-
import "./server-lifecycle-
|
|
105
|
+
import "./tables-CTFvIcTQ.js";
|
|
106
|
+
import "./server-lifecycle-N5bU8mjm.js";
|
|
107
107
|
import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-Bi1uV655.js";
|
|
108
|
-
import { n as resolveMessageChannelSelection } from "./channel-selection-
|
|
109
|
-
import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-
|
|
110
|
-
import "./send-
|
|
111
|
-
import "./outbound-attachment-
|
|
108
|
+
import { n as resolveMessageChannelSelection } from "./channel-selection-BuY5iEbg.js";
|
|
109
|
+
import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-MtcFdE6T.js";
|
|
110
|
+
import "./send-D52tAxa7.js";
|
|
111
|
+
import "./outbound-attachment-BLl9Vid0.js";
|
|
112
112
|
import "./delivery-queue-igSkk02R.js";
|
|
113
|
-
import "./send-
|
|
114
|
-
import "./resolve-route-
|
|
115
|
-
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-
|
|
113
|
+
import "./send-DyQvZx-9.js";
|
|
114
|
+
import "./resolve-route-BAFZr0AD.js";
|
|
115
|
+
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-ClPMGEq4.js";
|
|
116
116
|
import "./proxy-BmxJF3Z2.js";
|
|
117
|
-
import "./replies-
|
|
118
|
-
import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-
|
|
117
|
+
import "./replies-Cnwwqegi.js";
|
|
118
|
+
import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-BS_bPZKe.js";
|
|
119
119
|
import "./prompt-style-lCXEOxSK.js";
|
|
120
|
-
import "./pairing-labels-
|
|
121
|
-
import "./session-meta-
|
|
122
|
-
import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-
|
|
123
|
-
import { r as resolveMemorySearchConfig } from "./manager-
|
|
124
|
-
import "./query-expansion-
|
|
120
|
+
import "./pairing-labels-RbKVJQq5.js";
|
|
121
|
+
import "./session-meta-Dofh28uR.js";
|
|
122
|
+
import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-C0hNuh-t.js";
|
|
123
|
+
import { r as resolveMemorySearchConfig } from "./manager-ZjJ9M2x6.js";
|
|
124
|
+
import "./query-expansion-DmsmrMjB.js";
|
|
125
125
|
import { t as formatDocsLink } from "./links-EkBvdQLJ.js";
|
|
126
126
|
import { n as runCommandWithRuntime } from "./cli-utils-aSBNHQae.js";
|
|
127
127
|
import { t as formatHelpExamples } from "./help-format-BGSdS7w4.js";
|
|
@@ -134,45 +134,45 @@ import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-lwpZk6nY.
|
|
|
134
134
|
import { n as inheritOptionFromParent } from "./command-options-DGYxc3D_.js";
|
|
135
135
|
import { t as WizardCancelledError } from "./prompts-QSI6gA3k.js";
|
|
136
136
|
import { t as resolveChannelDefaultAccountId } from "./helpers-D6BlzJnx.js";
|
|
137
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
138
|
-
import { t as isWithinDir } from "./path-safety-
|
|
139
|
-
import { t as assertCanonicalPathWithinBase } from "./install-safe-path-
|
|
140
|
-
import "./skill-scanner-
|
|
141
|
-
import { n as formatConfigIssueLines } from "./issue-format-
|
|
137
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-P4PAeT4_.js";
|
|
138
|
+
import { t as isWithinDir } from "./path-safety-DmE3pKqe.js";
|
|
139
|
+
import { t as assertCanonicalPathWithinBase } from "./install-safe-path-CSglDbi-.js";
|
|
140
|
+
import "./skill-scanner-DiC9yuOY.js";
|
|
141
|
+
import { n as formatConfigIssueLines } from "./issue-format-Bnj64obT.js";
|
|
142
142
|
import { t as buildChannelAccountSnapshot } from "./status-BIupzBh9.js";
|
|
143
|
-
import "./channels-status-issues-
|
|
144
|
-
import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-
|
|
145
|
-
import "./daemon-install-helpers-
|
|
143
|
+
import "./channels-status-issues-C3zPqi31.js";
|
|
144
|
+
import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-BGusjTY9.js";
|
|
145
|
+
import "./daemon-install-helpers-BHTLKVCH.js";
|
|
146
146
|
import "./runtime-guard-Bif49nR1.js";
|
|
147
|
-
import "./systemd-
|
|
148
|
-
import "./service-
|
|
149
|
-
import "./lifecycle-core-
|
|
150
|
-
import "./systemd-hints-
|
|
147
|
+
import "./systemd-CTamqs8u.js";
|
|
148
|
+
import "./service-Bdwg8-MP.js";
|
|
149
|
+
import "./lifecycle-core-_8xJF_9z.js";
|
|
150
|
+
import "./systemd-hints-D4VSR4gB.js";
|
|
151
151
|
import { t as parsePort$1 } from "./parse-port-Dq63ch6Y.js";
|
|
152
|
-
import { n as addGatewayServiceCommands } from "./daemon-cli-
|
|
153
|
-
import "./diagnostics-
|
|
152
|
+
import { n as addGatewayServiceCommands } from "./daemon-cli-BMq2D7sp.js";
|
|
153
|
+
import "./diagnostics-DFZTmuFB.js";
|
|
154
154
|
import "./table-DHipKm5c.js";
|
|
155
155
|
import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-CJpVMOp6.js";
|
|
156
|
-
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-
|
|
157
|
-
import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-
|
|
158
|
-
import { t as discoverGatewayBeacons } from "./bonjour-discovery-
|
|
159
|
-
import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-
|
|
160
|
-
import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-
|
|
161
|
-
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-
|
|
162
|
-
import { o as isBitseekBuild } from "./status.update-
|
|
163
|
-
import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-
|
|
164
|
-
import { i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-
|
|
165
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
166
|
-
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-
|
|
156
|
+
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-CDevUk3t.js";
|
|
157
|
+
import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-DG0miQ3A.js";
|
|
158
|
+
import { t as discoverGatewayBeacons } from "./bonjour-discovery-CvAov_o2.js";
|
|
159
|
+
import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-EvQ73B8e.js";
|
|
160
|
+
import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-CgHjmUFQ.js";
|
|
161
|
+
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-CWYG-y7n.js";
|
|
162
|
+
import { o as isBitseekBuild } from "./status.update-DUDM6iUC.js";
|
|
163
|
+
import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-8QkfoueX.js";
|
|
164
|
+
import { i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-uZw9qW6d.js";
|
|
165
|
+
import { t as runOnboardingWizard } from "./onboarding-I5wAbpKA.js";
|
|
166
|
+
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-8_4x3QDX.js";
|
|
167
167
|
import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-Bk2GBbEH.js";
|
|
168
|
-
import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-
|
|
169
|
-
import "./node-service-
|
|
170
|
-
import "./shared-
|
|
171
|
-
import { d as verifyOpenAiCompatibleModel } from "./onboard-custom.shared-
|
|
172
|
-
import { n as formatInstallFailureMessage, t as installSkill } from "./skills-install-
|
|
173
|
-
import { t as runGatewayUpdate } from "./update-runner-
|
|
174
|
-
import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-
|
|
175
|
-
import { n as forceFreePortAndWait } from "./ports-
|
|
168
|
+
import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-CtLbfZ7S.js";
|
|
169
|
+
import "./node-service-Dc_k2bXh.js";
|
|
170
|
+
import "./shared-haEHGkpf.js";
|
|
171
|
+
import { d as verifyOpenAiCompatibleModel } from "./onboard-custom.shared-BJ1NdBPQ.js";
|
|
172
|
+
import { n as formatInstallFailureMessage, t as installSkill } from "./skills-install-BASrKfvX.js";
|
|
173
|
+
import { t as runGatewayUpdate } from "./update-runner-D3Dqz9wz.js";
|
|
174
|
+
import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-BxNxoapu.js";
|
|
175
|
+
import { n as forceFreePortAndWait } from "./ports-TfIbPY8z.js";
|
|
176
176
|
import { spawn, spawnSync } from "node:child_process";
|
|
177
177
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
178
178
|
import path from "node:path";
|
|
@@ -181,7 +181,7 @@ import * as fsSync from "node:fs";
|
|
|
181
181
|
import fs from "node:fs";
|
|
182
182
|
import chalk from "chalk";
|
|
183
183
|
import { isDeepStrictEqual } from "node:util";
|
|
184
|
-
import
|
|
184
|
+
import fsPromises from "node:fs/promises";
|
|
185
185
|
import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
|
|
186
186
|
import { z } from "zod";
|
|
187
187
|
import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
|
|
@@ -1251,7 +1251,7 @@ function resolveCheckIntervalMs(cfg) {
|
|
|
1251
1251
|
}
|
|
1252
1252
|
async function readState(statePath) {
|
|
1253
1253
|
try {
|
|
1254
|
-
const raw = await
|
|
1254
|
+
const raw = await fsPromises.readFile(statePath, "utf-8");
|
|
1255
1255
|
const parsed = JSON.parse(raw);
|
|
1256
1256
|
return parsed && typeof parsed === "object" ? parsed : {};
|
|
1257
1257
|
} catch {
|
|
@@ -1332,7 +1332,7 @@ async function runAutoUpdateCommand(params) {
|
|
|
1332
1332
|
path.join(params.root, "dist", "index.mjs")
|
|
1333
1333
|
];
|
|
1334
1334
|
for (const candidate of candidates) try {
|
|
1335
|
-
await
|
|
1335
|
+
await fsPromises.access(candidate);
|
|
1336
1336
|
argv.push(execPath, candidate, ...baseArgs);
|
|
1337
1337
|
break;
|
|
1338
1338
|
} catch {}
|
|
@@ -2799,7 +2799,7 @@ function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSess
|
|
|
2799
2799
|
broadcast("chat", payload, { dropIfSlow: true });
|
|
2800
2800
|
nodeSendToSession(sessionKey, "chat", payload);
|
|
2801
2801
|
};
|
|
2802
|
-
const emitChatFinal = (sessionKey, clientRunId, sourceRunId, seq, jobState, error) => {
|
|
2802
|
+
const emitChatFinal = (sessionKey, clientRunId, sourceRunId, seq, jobState, error, uiHint) => {
|
|
2803
2803
|
const normalizedHeartbeatText = normalizeHeartbeatChatFinalText({
|
|
2804
2804
|
runId: clientRunId,
|
|
2805
2805
|
sourceRunId,
|
|
@@ -2833,7 +2833,8 @@ function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSess
|
|
|
2833
2833
|
sessionKey,
|
|
2834
2834
|
seq,
|
|
2835
2835
|
state: "error",
|
|
2836
|
-
errorMessage: error ? formatForLog(error) : void 0
|
|
2836
|
+
errorMessage: error ? formatForLog(error) : void 0,
|
|
2837
|
+
...typeof uiHint === "string" && uiHint.trim() ? { uiHint } : {}
|
|
2837
2838
|
};
|
|
2838
2839
|
broadcast("chat", payload);
|
|
2839
2840
|
nodeSendToSession(sessionKey, "chat", payload);
|
|
@@ -2908,8 +2909,8 @@ function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSess
|
|
|
2908
2909
|
clearAgentRunContext(evt.runId);
|
|
2909
2910
|
return;
|
|
2910
2911
|
}
|
|
2911
|
-
emitChatFinal(finished.sessionKey, finished.clientRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error);
|
|
2912
|
-
} else emitChatFinal(sessionKey, eventRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error);
|
|
2912
|
+
emitChatFinal(finished.sessionKey, finished.clientRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error, evt.data?.uiHint);
|
|
2913
|
+
} else emitChatFinal(sessionKey, eventRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error, evt.data?.uiHint);
|
|
2913
2914
|
else if (isAborted && (lifecyclePhase === "end" || lifecyclePhase === "error")) {
|
|
2914
2915
|
chatRunState.abortedRuns.delete(clientRunId);
|
|
2915
2916
|
chatRunState.abortedRuns.delete(evt.runId);
|
|
@@ -4407,20 +4408,20 @@ async function drainPendingWrite(filePath) {
|
|
|
4407
4408
|
if (pending) await pending.catch(() => void 0);
|
|
4408
4409
|
}
|
|
4409
4410
|
async function pruneIfNeeded(filePath, opts) {
|
|
4410
|
-
const stat = await
|
|
4411
|
+
const stat = await fsPromises.stat(filePath).catch(() => null);
|
|
4411
4412
|
if (!stat || stat.size <= opts.maxBytes) return;
|
|
4412
|
-
const lines = (await
|
|
4413
|
+
const lines = (await fsPromises.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
|
|
4413
4414
|
const kept = lines.slice(Math.max(0, lines.length - opts.keepLines));
|
|
4414
4415
|
const { randomBytes } = await import("node:crypto");
|
|
4415
4416
|
const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
|
|
4416
|
-
await
|
|
4417
|
-
await
|
|
4417
|
+
await fsPromises.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
|
|
4418
|
+
await fsPromises.rename(tmp, filePath);
|
|
4418
4419
|
}
|
|
4419
4420
|
async function appendCronRunLog(filePath, entry, opts) {
|
|
4420
4421
|
const resolved = path.resolve(filePath);
|
|
4421
4422
|
const next = (writesByPath.get(resolved) ?? Promise.resolve()).catch(() => void 0).then(async () => {
|
|
4422
|
-
await
|
|
4423
|
-
await
|
|
4423
|
+
await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
|
|
4424
|
+
await fsPromises.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
|
|
4424
4425
|
await pruneIfNeeded(resolved, {
|
|
4425
4426
|
maxBytes: opts?.maxBytes ?? DEFAULT_CRON_RUN_LOG_MAX_BYTES,
|
|
4426
4427
|
keepLines: opts?.keepLines ?? DEFAULT_CRON_RUN_LOG_KEEP_LINES
|
|
@@ -4514,7 +4515,7 @@ function filterRunLogEntries(entries, opts) {
|
|
|
4514
4515
|
async function readCronRunLogEntriesPage(filePath, opts) {
|
|
4515
4516
|
await drainPendingWrite(filePath);
|
|
4516
4517
|
const limit = Math.max(1, Math.min(200, Math.floor(opts?.limit ?? 50)));
|
|
4517
|
-
const raw = await
|
|
4518
|
+
const raw = await fsPromises.readFile(path.resolve(filePath), "utf-8").catch(() => "");
|
|
4518
4519
|
const statuses = normalizeRunStatuses(opts);
|
|
4519
4520
|
const deliveryStatuses = normalizeDeliveryStatuses(opts);
|
|
4520
4521
|
const query = opts?.query?.trim().toLowerCase() ?? "";
|
|
@@ -4550,7 +4551,7 @@ async function readCronRunLogEntriesPageAll(opts) {
|
|
|
4550
4551
|
const query = opts.query?.trim().toLowerCase() ?? "";
|
|
4551
4552
|
const sortDir = opts.sortDir === "asc" ? "asc" : "desc";
|
|
4552
4553
|
const runsDir = path.resolve(path.dirname(path.resolve(opts.storePath)), "runs");
|
|
4553
|
-
const jsonlFiles = (await
|
|
4554
|
+
const jsonlFiles = (await fsPromises.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
|
|
4554
4555
|
if (jsonlFiles.length === 0) return {
|
|
4555
4556
|
entries: [],
|
|
4556
4557
|
total: 0,
|
|
@@ -4561,7 +4562,7 @@ async function readCronRunLogEntriesPageAll(opts) {
|
|
|
4561
4562
|
};
|
|
4562
4563
|
await Promise.all(jsonlFiles.map((f) => drainPendingWrite(f)));
|
|
4563
4564
|
const filtered = filterRunLogEntries((await Promise.all(jsonlFiles.map(async (filePath) => {
|
|
4564
|
-
return parseAllRunLogEntries(await
|
|
4565
|
+
return parseAllRunLogEntries(await fsPromises.readFile(filePath, "utf-8").catch(() => ""));
|
|
4565
4566
|
}))).flat(), {
|
|
4566
4567
|
statuses,
|
|
4567
4568
|
deliveryStatuses,
|
|
@@ -9769,7 +9770,7 @@ function resolveAgentWorkspaceFileOrRespondError(params, respond) {
|
|
|
9769
9770
|
}
|
|
9770
9771
|
async function resolveWorkspaceRealPath(workspaceDir) {
|
|
9771
9772
|
try {
|
|
9772
|
-
return await
|
|
9773
|
+
return await fsPromises.realpath(workspaceDir);
|
|
9773
9774
|
} catch {
|
|
9774
9775
|
return path.resolve(workspaceDir);
|
|
9775
9776
|
}
|
|
@@ -9793,7 +9794,7 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
9793
9794
|
}
|
|
9794
9795
|
let candidateLstat;
|
|
9795
9796
|
try {
|
|
9796
|
-
candidateLstat = await
|
|
9797
|
+
candidateLstat = await fsPromises.lstat(candidatePath);
|
|
9797
9798
|
} catch (err) {
|
|
9798
9799
|
if (isNotFoundPathError(err)) {
|
|
9799
9800
|
if (params.allowMissing) return {
|
|
@@ -9813,7 +9814,7 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
9813
9814
|
if (candidateLstat.isSymbolicLink()) {
|
|
9814
9815
|
let targetReal;
|
|
9815
9816
|
try {
|
|
9816
|
-
targetReal = await
|
|
9817
|
+
targetReal = await fsPromises.realpath(candidatePath);
|
|
9817
9818
|
} catch (err) {
|
|
9818
9819
|
if (isNotFoundPathError(err)) {
|
|
9819
9820
|
if (params.allowMissing) return {
|
|
@@ -9832,7 +9833,7 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
9832
9833
|
}
|
|
9833
9834
|
let targetStat;
|
|
9834
9835
|
try {
|
|
9835
|
-
targetStat = await
|
|
9836
|
+
targetStat = await fsPromises.stat(targetReal);
|
|
9836
9837
|
} catch (err) {
|
|
9837
9838
|
if (isNotFoundPathError(err)) {
|
|
9838
9839
|
if (params.allowMissing) return {
|
|
@@ -9879,13 +9880,13 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
9879
9880
|
return {
|
|
9880
9881
|
kind: "ready",
|
|
9881
9882
|
requestPath,
|
|
9882
|
-
ioPath: await
|
|
9883
|
+
ioPath: await fsPromises.realpath(candidatePath).catch(() => candidatePath),
|
|
9883
9884
|
workspaceReal
|
|
9884
9885
|
};
|
|
9885
9886
|
}
|
|
9886
9887
|
async function statFileSafely(filePath) {
|
|
9887
9888
|
try {
|
|
9888
|
-
const [stat, lstat] = await Promise.all([
|
|
9889
|
+
const [stat, lstat] = await Promise.all([fsPromises.stat(filePath), fsPromises.lstat(filePath)]);
|
|
9889
9890
|
if (lstat.isSymbolicLink() || !stat.isFile()) return null;
|
|
9890
9891
|
if (stat.nlink > 1) return null;
|
|
9891
9892
|
if (!sameFileIdentity(stat, lstat)) return null;
|
|
@@ -9970,7 +9971,7 @@ function resolveOptionalStringParam(value) {
|
|
|
9970
9971
|
async function moveToTrashBestEffort(pathname) {
|
|
9971
9972
|
if (!pathname) return;
|
|
9972
9973
|
try {
|
|
9973
|
-
await
|
|
9974
|
+
await fsPromises.access(pathname);
|
|
9974
9975
|
} catch {
|
|
9975
9976
|
return;
|
|
9976
9977
|
}
|
|
@@ -10046,7 +10047,7 @@ const agentsHandlers = {
|
|
|
10046
10047
|
dir: workspaceDir,
|
|
10047
10048
|
ensureBootstrapFiles: !Boolean(nextConfig.agents?.defaults?.skipBootstrap)
|
|
10048
10049
|
});
|
|
10049
|
-
await
|
|
10050
|
+
await fsPromises.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
|
|
10050
10051
|
await writeConfigFile(nextConfig);
|
|
10051
10052
|
const safeName = sanitizeIdentityLine(rawName);
|
|
10052
10053
|
const emoji = resolveOptionalStringParam(params.emoji);
|
|
@@ -10059,7 +10060,7 @@ const agentsHandlers = {
|
|
|
10059
10060
|
...avatar ? [`- Avatar: ${sanitizeIdentityLine(avatar)}`] : [],
|
|
10060
10061
|
""
|
|
10061
10062
|
];
|
|
10062
|
-
await
|
|
10063
|
+
await fsPromises.appendFile(identityPath, lines.join("\n"), "utf-8");
|
|
10063
10064
|
respond(true, {
|
|
10064
10065
|
ok: true,
|
|
10065
10066
|
agentId,
|
|
@@ -10094,9 +10095,9 @@ const agentsHandlers = {
|
|
|
10094
10095
|
});
|
|
10095
10096
|
if (avatar) {
|
|
10096
10097
|
const workspace = workspaceDir ?? resolveAgentWorkspaceDir(nextConfig, agentId);
|
|
10097
|
-
await
|
|
10098
|
+
await fsPromises.mkdir(workspace, { recursive: true });
|
|
10098
10099
|
const identityPath = path.join(workspace, DEFAULT_IDENTITY_FILENAME);
|
|
10099
|
-
await
|
|
10100
|
+
await fsPromises.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
|
|
10100
10101
|
}
|
|
10101
10102
|
respond(true, {
|
|
10102
10103
|
ok: true,
|
|
@@ -10220,7 +10221,7 @@ const agentsHandlers = {
|
|
|
10220
10221
|
const resolved = resolveAgentWorkspaceFileOrRespondError(params, respond);
|
|
10221
10222
|
if (!resolved) return;
|
|
10222
10223
|
const { agentId, workspaceDir, name } = resolved;
|
|
10223
|
-
await
|
|
10224
|
+
await fsPromises.mkdir(workspaceDir, { recursive: true });
|
|
10224
10225
|
const filePath = path.join(workspaceDir, name);
|
|
10225
10226
|
const resolvedPath = await resolveWorkspaceFilePathOrRespond({
|
|
10226
10227
|
respond,
|
|
@@ -11064,7 +11065,8 @@ function broadcastChatError(params) {
|
|
|
11064
11065
|
sessionKey: params.sessionKey,
|
|
11065
11066
|
seq,
|
|
11066
11067
|
state: "error",
|
|
11067
|
-
errorMessage: params.errorMessage
|
|
11068
|
+
errorMessage: params.errorMessage,
|
|
11069
|
+
...params.uiHint ? { uiHint: params.uiHint } : {}
|
|
11068
11070
|
};
|
|
11069
11071
|
params.context.broadcast("chat", payload);
|
|
11070
11072
|
params.context.nodeSendToSession(params.sessionKey, "chat", payload);
|
|
@@ -11398,6 +11400,11 @@ const chatHandlers = {
|
|
|
11398
11400
|
}
|
|
11399
11401
|
});
|
|
11400
11402
|
}).catch((err) => {
|
|
11403
|
+
const uiHint = isFailoverError(err) ? resolveChatUiHintForError({
|
|
11404
|
+
provider: err.provider,
|
|
11405
|
+
model: err.model,
|
|
11406
|
+
rawError: err.message
|
|
11407
|
+
}) : void 0;
|
|
11401
11408
|
const error = errorShape(ErrorCodes.UNAVAILABLE, String(err));
|
|
11402
11409
|
context.dedupe.set(`chat:${clientRunId}`, {
|
|
11403
11410
|
ts: Date.now(),
|
|
@@ -11413,7 +11420,8 @@ const chatHandlers = {
|
|
|
11413
11420
|
context,
|
|
11414
11421
|
runId: clientRunId,
|
|
11415
11422
|
sessionKey: rawSessionKey,
|
|
11416
|
-
errorMessage: String(err)
|
|
11423
|
+
errorMessage: String(err),
|
|
11424
|
+
uiHint
|
|
11417
11425
|
});
|
|
11418
11426
|
}).finally(() => {
|
|
11419
11427
|
context.chatAbortControllers.delete(clientRunId);
|
|
@@ -12513,14 +12521,14 @@ function isRollingLogFile(file) {
|
|
|
12513
12521
|
return ROLLING_LOG_RE.test(path.basename(file));
|
|
12514
12522
|
}
|
|
12515
12523
|
async function resolveLogFile(file) {
|
|
12516
|
-
if (await
|
|
12524
|
+
if (await fsPromises.stat(file).catch(() => null)) return file;
|
|
12517
12525
|
if (!isRollingLogFile(file)) return file;
|
|
12518
12526
|
const dir = path.dirname(file);
|
|
12519
|
-
const entries = await
|
|
12527
|
+
const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
|
|
12520
12528
|
if (!entries) return file;
|
|
12521
12529
|
return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
|
|
12522
12530
|
const fullPath = path.join(dir, entry.name);
|
|
12523
|
-
const fileStat = await
|
|
12531
|
+
const fileStat = await fsPromises.stat(fullPath).catch(() => null);
|
|
12524
12532
|
return fileStat ? {
|
|
12525
12533
|
path: fullPath,
|
|
12526
12534
|
mtimeMs: fileStat.mtimeMs
|
|
@@ -12528,7 +12536,7 @@ async function resolveLogFile(file) {
|
|
|
12528
12536
|
}))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
|
|
12529
12537
|
}
|
|
12530
12538
|
async function readLogSlice(params) {
|
|
12531
|
-
const stat = await
|
|
12539
|
+
const stat = await fsPromises.stat(params.file).catch(() => null);
|
|
12532
12540
|
if (!stat) return {
|
|
12533
12541
|
cursor: 0,
|
|
12534
12542
|
size: 0,
|
|
@@ -12566,7 +12574,7 @@ async function readLogSlice(params) {
|
|
|
12566
12574
|
truncated,
|
|
12567
12575
|
reset
|
|
12568
12576
|
};
|
|
12569
|
-
const handle = await
|
|
12577
|
+
const handle = await fsPromises.open(params.file, "r");
|
|
12570
12578
|
try {
|
|
12571
12579
|
let prefix = "";
|
|
12572
12580
|
if (start > 0) {
|
|
@@ -13613,7 +13621,7 @@ const nodeHandlers = {
|
|
|
13613
13621
|
const p = params;
|
|
13614
13622
|
const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
|
|
13615
13623
|
await respondUnavailableOnThrow(respond, async () => {
|
|
13616
|
-
const { handleNodeEvent } = await import("./server-node-events-
|
|
13624
|
+
const { handleNodeEvent } = await import("./server-node-events-DgNEG1Jq.js");
|
|
13617
13625
|
const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
|
|
13618
13626
|
await handleNodeEvent({
|
|
13619
13627
|
deps: context.deps,
|
|
@@ -14359,11 +14367,11 @@ async function installLocalMarketSkill(params) {
|
|
|
14359
14367
|
candidatePath: sourceDir,
|
|
14360
14368
|
boundaryLabel: "market templates directory"
|
|
14361
14369
|
});
|
|
14362
|
-
if (!(await
|
|
14370
|
+
if (!(await fsPromises.stat(sourceDir)).isDirectory()) return {
|
|
14363
14371
|
ok: false,
|
|
14364
14372
|
message: `Local template "${templateDir}" is not a directory.`
|
|
14365
14373
|
};
|
|
14366
|
-
if (!(await
|
|
14374
|
+
if (!(await fsPromises.stat(sourceSkillPath)).isFile()) return {
|
|
14367
14375
|
ok: false,
|
|
14368
14376
|
message: `Local template "${templateDir}" is missing SKILL.md.`
|
|
14369
14377
|
};
|
|
@@ -14377,13 +14385,13 @@ async function installLocalMarketSkill(params) {
|
|
|
14377
14385
|
const workspaceSkillsDir = path.join(workspaceDir, "skills");
|
|
14378
14386
|
const targetDir = path.join(workspaceSkillsDir, templateDir);
|
|
14379
14387
|
try {
|
|
14380
|
-
await
|
|
14388
|
+
await fsPromises.mkdir(workspaceSkillsDir, { recursive: true });
|
|
14381
14389
|
await assertCanonicalPathWithinBase({
|
|
14382
14390
|
baseDir: workspaceSkillsDir,
|
|
14383
14391
|
candidatePath: targetDir,
|
|
14384
14392
|
boundaryLabel: "workspace skills directory"
|
|
14385
14393
|
});
|
|
14386
|
-
await
|
|
14394
|
+
await fsPromises.cp(sourceDir, targetDir, {
|
|
14387
14395
|
recursive: true,
|
|
14388
14396
|
force: true
|
|
14389
14397
|
});
|
|
@@ -17227,7 +17235,7 @@ function normalizeAgentPayload(payload) {
|
|
|
17227
17235
|
async function startBrowserControlServerIfEnabled() {
|
|
17228
17236
|
if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
|
|
17229
17237
|
const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
|
|
17230
|
-
const mod = override ? await import(override) : await import("./server-
|
|
17238
|
+
const mod = override ? await import(override) : await import("./server-si15CkOB.js");
|
|
17231
17239
|
const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
|
|
17232
17240
|
const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
|
|
17233
17241
|
if (!start) return null;
|
|
@@ -17455,7 +17463,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
|
|
|
17455
17463
|
if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
|
|
17456
17464
|
const candidate = path.join(rootReal, rel);
|
|
17457
17465
|
try {
|
|
17458
|
-
const st = await
|
|
17466
|
+
const st = await fsPromises.lstat(candidate);
|
|
17459
17467
|
if (st.isSymbolicLink()) return null;
|
|
17460
17468
|
if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
|
|
17461
17469
|
} catch {}
|
|
@@ -17492,8 +17500,8 @@ async function resolveA2uiRoot() {
|
|
|
17492
17500
|
for (const dir of candidates) try {
|
|
17493
17501
|
const indexPath = path.join(dir, "index.html");
|
|
17494
17502
|
const bundlePath = path.join(dir, "a2ui.bundle.js");
|
|
17495
|
-
await
|
|
17496
|
-
await
|
|
17503
|
+
await fsPromises.stat(indexPath);
|
|
17504
|
+
await fsPromises.stat(bundlePath);
|
|
17497
17505
|
return dir;
|
|
17498
17506
|
} catch {}
|
|
17499
17507
|
return null;
|
|
@@ -17502,7 +17510,7 @@ async function resolveA2uiRootReal() {
|
|
|
17502
17510
|
if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
|
|
17503
17511
|
if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
|
|
17504
17512
|
const root = await resolveA2uiRoot();
|
|
17505
|
-
cachedA2uiRootReal = root ? await
|
|
17513
|
+
cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
|
|
17506
17514
|
cachedA2uiResolvedAtMs = Date.now();
|
|
17507
17515
|
resolvingA2uiRoot = null;
|
|
17508
17516
|
return cachedA2uiRootReal;
|
|
@@ -17723,13 +17731,13 @@ function normalizeBasePath(rawPath) {
|
|
|
17723
17731
|
}
|
|
17724
17732
|
async function prepareCanvasRoot(rootDir) {
|
|
17725
17733
|
await ensureDir(rootDir);
|
|
17726
|
-
const rootReal = await
|
|
17734
|
+
const rootReal = await fsPromises.realpath(rootDir);
|
|
17727
17735
|
try {
|
|
17728
17736
|
const indexPath = path.join(rootReal, "index.html");
|
|
17729
|
-
await
|
|
17737
|
+
await fsPromises.stat(indexPath);
|
|
17730
17738
|
} catch {
|
|
17731
17739
|
try {
|
|
17732
|
-
await
|
|
17740
|
+
await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
|
|
17733
17741
|
} catch {}
|
|
17734
17742
|
}
|
|
17735
17743
|
return rootReal;
|
|
@@ -20736,7 +20744,7 @@ async function resolveGatewayOwnerStatus(pid, payload, platform, port) {
|
|
|
20736
20744
|
}
|
|
20737
20745
|
async function readLockPayload(lockPath) {
|
|
20738
20746
|
try {
|
|
20739
|
-
const raw = await
|
|
20747
|
+
const raw = await fsPromises.readFile(lockPath, "utf8");
|
|
20740
20748
|
const parsed = JSON.parse(raw);
|
|
20741
20749
|
if (typeof parsed.pid !== "number") return null;
|
|
20742
20750
|
if (typeof parsed.createdAt !== "string") return null;
|
|
@@ -20771,11 +20779,11 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
20771
20779
|
const platform = opts.platform ?? process.platform;
|
|
20772
20780
|
const port = opts.port;
|
|
20773
20781
|
const { lockPath, configPath } = resolveGatewayLockPath(env);
|
|
20774
|
-
await
|
|
20782
|
+
await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
|
|
20775
20783
|
const startedAt = Date.now();
|
|
20776
20784
|
let lastPayload = null;
|
|
20777
20785
|
while (Date.now() - startedAt < timeoutMs) try {
|
|
20778
|
-
const handle = await
|
|
20786
|
+
const handle = await fsPromises.open(lockPath, "wx");
|
|
20779
20787
|
const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
|
|
20780
20788
|
const payload = {
|
|
20781
20789
|
pid: process.pid,
|
|
@@ -20789,7 +20797,7 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
20789
20797
|
configPath,
|
|
20790
20798
|
release: async () => {
|
|
20791
20799
|
await handle.close().catch(() => void 0);
|
|
20792
|
-
await
|
|
20800
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
20793
20801
|
}
|
|
20794
20802
|
};
|
|
20795
20803
|
} catch (err) {
|
|
@@ -20798,7 +20806,7 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
20798
20806
|
const ownerPid = lastPayload?.pid;
|
|
20799
20807
|
const ownerStatus = ownerPid ? await resolveGatewayOwnerStatus(ownerPid, lastPayload, platform, port) : "unknown";
|
|
20800
20808
|
if (ownerStatus === "dead" && ownerPid) {
|
|
20801
|
-
await
|
|
20809
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
20802
20810
|
continue;
|
|
20803
20811
|
}
|
|
20804
20812
|
if (ownerStatus !== "alive") {
|
|
@@ -20808,13 +20816,13 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
20808
20816
|
stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
|
|
20809
20817
|
}
|
|
20810
20818
|
if (!stale) try {
|
|
20811
|
-
const st = await
|
|
20819
|
+
const st = await fsPromises.stat(lockPath);
|
|
20812
20820
|
stale = Date.now() - st.mtimeMs > staleMs;
|
|
20813
20821
|
} catch {
|
|
20814
20822
|
stale = false;
|
|
20815
20823
|
}
|
|
20816
20824
|
if (stale) {
|
|
20817
|
-
await
|
|
20825
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
20818
20826
|
continue;
|
|
20819
20827
|
}
|
|
20820
20828
|
}
|
|
@@ -23124,7 +23132,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
|
|
|
23124
23132
|
if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
|
|
23125
23133
|
if (!minimalTestGateway) (async () => {
|
|
23126
23134
|
const { recoverPendingDeliveries } = await import("./delivery-queue-igSkk02R.js").then((n) => n.n);
|
|
23127
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
23135
|
+
const { deliverOutboundPayloads } = await import("./deliver-BCX2HRzP.js").then((n) => n.n);
|
|
23128
23136
|
await recoverPendingDeliveries({
|
|
23129
23137
|
deliver: deliverOutboundPayloads,
|
|
23130
23138
|
log: log.child("delivery-recovery"),
|