openclaw-multi-auto 1.2.4 → 1.2.5
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-C_lW3Ag9.js → accounts-BOzyfwW4.js} +2 -2
- package/dist/{accounts-C9HcPI9h.js → accounts-L9ByEpnP.js} +2 -2
- package/dist/{accounts-Tgelvk0C.js → accounts-yfBeCZtS.js} +17 -17
- package/dist/{active-listener-BEdprTkn.js → active-listener-D1yqT1cw.js} +2 -2
- package/dist/{api-key-rotation-BJpKWXy0.js → api-key-rotation-DtsNS2Nb.js} +2 -2
- package/dist/{audio-preflight-5FEeDooz.js → audio-preflight-DDBLZBdb.js} +4 -4
- package/dist/{audio-preflight-BMvgEQ5j.js → audio-preflight-DoPfNXDz.js} +32 -32
- package/dist/{audio-transcription-runner-gLFfz8fr.js → audio-transcription-runner-CzjuH3uL.js} +12 -12
- package/dist/{audio-transcription-runner-B-UvoDjZ.js → audio-transcription-runner-DZbSWT9E.js} +1 -1
- package/dist/{audit-membership-runtime-Dntemq07.js → audit-membership-runtime-DWyHWAHM.js} +4 -4
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +51 -51
- package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
- package/dist/bundled/command-logger/handler.js +2 -2
- package/dist/bundled/session-memory/handler.js +51 -51
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-activity-BDnjYF7B.js → channel-activity-xHOMiarp.js} +3 -3
- package/dist/{chrome-D45SyhQL.js → chrome-CMU2WVFh.js} +8 -8
- package/dist/{chrome-DxxEKrY7.js → chrome-DlhJHqj8.js} +26 -26
- package/dist/{commands-registry-D5qXbFJn.js → commands-registry-V1zZ5pPC.js} +4 -4
- package/dist/{deliver-B9cys0EZ.js → deliver-BXVcFIHL.js} +1 -1
- package/dist/{deliver-DbdywYJE.js → deliver-CApVJA_l.js} +21 -21
- package/dist/deliver-runtime-D1z-h5eg.js +36 -0
- package/dist/{deliver-runtime-DhaQJ0pI.js → deliver-runtime-DTaIS-1i.js} +3 -3
- package/dist/deps-send-discord.runtime-DnbhTFX9.js +26 -0
- package/dist/deps-send-imessage.runtime-BOiQ6mDx.js +25 -0
- package/dist/deps-send-signal.runtime-CTcl388M.js +24 -0
- package/dist/deps-send-slack.runtime-CCqBz4Kg.js +22 -0
- package/dist/deps-send-telegram.runtime-DGSKTCpH.js +27 -0
- package/dist/{deps-send-whatsapp.runtime-DvTL2tzN.js → deps-send-whatsapp.runtime-CIZqFAqb.js} +7 -7
- package/dist/deps-send-whatsapp.runtime-Dz_4fi2D.js +60 -0
- package/dist/{diagnostic-Co6Kghr-.js → diagnostic-Bn4PZjMZ.js} +2 -2
- package/dist/{errors-xt401nuk.js → errors-CCLeFWAg.js} +1 -1
- package/dist/extensionAPI.js +6 -6
- package/dist/{fetch-DuraYswo.js → fetch-BlJWzEP6.js} +5 -5
- package/dist/{fetch-guard-DWr0d00H.js → fetch-guard-ChYBwfiy.js} +2 -2
- package/dist/{frontmatter-BkTfEZ93.js → frontmatter-CvaMP376.js} +3 -3
- package/dist/{fs-safe-CTYUrIgQ.js → fs-safe-0jAo_Whb.js} +4 -4
- package/dist/{github-copilot-token-BDioPmd6.js → github-copilot-token-D13V9YBz.js} +7 -7
- package/dist/{image-eT7Y-nP5.js → image-B3Mz7N5I.js} +6 -6
- package/dist/{image-DAOPwVXi.js → image-BCVLo0qw.js} +1 -1
- package/dist/{image-ops-BuUnEOE0.js → image-ops-CehkHxmW.js} +2 -2
- package/dist/image-runtime-DWjhow2W.js +29 -0
- package/dist/{image-runtime-wlCLVvVv.js → image-runtime-DtCKpMPZ.js} +3 -3
- package/dist/{ir-B83looB-.js → ir-DAP-B-Xw.js} +8 -8
- package/dist/{legacy-names-DOC03BkU.js → legacy-names-TyzbVqa_.js} +1 -1
- package/dist/llm-slug-generator.js +51 -51
- package/dist/{logger-BfjWMCSD.js → logger-DMZQQtxK.js} +7 -7
- package/dist/{login-CrIwcrVI.js → login-DiCctRo1.js} +5 -5
- package/dist/{login-qr-BpPDZdl_.js → login-qr-MUbXgjtd.js} +10 -10
- package/dist/{manager-1bvuGrNR.js → manager-BW_NSIMl.js} +13 -13
- package/dist/manager-runtime-BN6VevdC.js +18 -0
- package/dist/{model-selection-Dna0Gz1k.js → model-selection-idoqPmw0.js} +43 -43
- package/dist/{outbound-ChDjtuD6.js → outbound-C2kanETZ.js} +6 -6
- package/dist/{outbound-attachment-DqHlD21U.js → outbound-attachment-DBrYWX8h.js} +2 -2
- package/dist/{path-alias-guards-BzvdLvTI.js → path-alias-guards-DqXRZmsL.js} +1 -1
- package/dist/{paths-Cvc9EM8Y.js → paths-C6TxBCvO.js} +5 -5
- package/dist/{paths-Bkr-BCxW.js → paths-CCxysrzL.js} +4 -4
- package/dist/{pi-embedded-DYU79yGe.js → pi-embedded-CgQ_W6Xs.js} +24 -24
- package/dist/{pi-embedded-BQQa91aA.js → pi-embedded-bcjMe3wj.js} +167 -167
- package/dist/{pi-embedded-helpers-uTRAmQ4n.js → pi-embedded-helpers-CwuBTKza.js} +3 -3
- package/dist/{pi-embedded-helpers-CLXm10bV.js → pi-embedded-helpers-D5yyGEvA.js} +52 -52
- package/dist/pi-model-discovery-BGgOlX8N.js +134 -0
- package/dist/pi-model-discovery-runtime-Bwmi4Ev8.js +11 -0
- package/dist/{pi-tools.before-tool-call.runtime-Cwab_5W1.js → pi-tools.before-tool-call.runtime-BuLxSyx9.js} +9 -9
- package/dist/plugin-sdk/{accounts-DyFCXtHv.js → accounts-BslAlVYS.js} +2 -2
- package/dist/plugin-sdk/{accounts-BJAXxY46.js → accounts-C3m65--E.js} +2 -2
- package/dist/plugin-sdk/accounts-CJWOBzwB.js +35 -0
- package/dist/plugin-sdk/{accounts-C1j7HSL0.js → accounts-CNCCkdEF.js} +3 -3
- package/dist/plugin-sdk/accounts-DP1-L-QS.js +288 -0
- package/dist/plugin-sdk/accounts-DZhWlEg3.js +46 -0
- package/dist/plugin-sdk/{active-listener-CftX5jLD.js → active-listener-B_sLJTXM.js} +2 -2
- package/dist/plugin-sdk/active-listener-CkPnMUkB.js +50 -0
- package/dist/plugin-sdk/{api-key-rotation-8nyyt1kx.js → api-key-rotation-BRE4X2tf.js} +2 -2
- package/dist/plugin-sdk/api-key-rotation-BXnNsojA.js +181 -0
- package/dist/plugin-sdk/{audio-preflight-C_aSAPR1.js → audio-preflight-CtO4fFvp.js} +26 -26
- package/dist/plugin-sdk/audio-preflight-DGEUDxxR.js +69 -0
- package/dist/plugin-sdk/audio-transcription-runner-DkoPNPYt.js +2176 -0
- package/dist/plugin-sdk/{audio-transcription-runner-CB53F7_7.js → audio-transcription-runner-DnxvOS1-.js} +11 -11
- package/dist/plugin-sdk/{audit-membership-runtime-BXndI4LG.js → audit-membership-runtime-BpfoSk8M.js} +2 -2
- package/dist/plugin-sdk/audit-membership-runtime-DSBHHw7o.js +58 -0
- package/dist/plugin-sdk/channel-activity-F3d0yUwy.js +94 -0
- package/dist/plugin-sdk/{channel-activity-C5y8AgAV.js → channel-activity-WJYxcJ3S.js} +3 -3
- package/dist/plugin-sdk/channel-web-QF7EpjeP.js +2256 -0
- package/dist/plugin-sdk/{channel-web-DBTRO03V.js → channel-web-dO5k3ubM.js} +18 -18
- package/dist/plugin-sdk/chrome-BXoCyCkY.js +2415 -0
- package/dist/plugin-sdk/{chrome-f00sZkDX.js → chrome-CjNTuJML.js} +6 -6
- package/dist/plugin-sdk/{commands-registry-BJ_NxG2F.js → commands-registry-CdYjoI0i.js} +4 -4
- package/dist/plugin-sdk/commands-registry-t7cXBTfN.js +1125 -0
- package/dist/plugin-sdk/{common-Cf27Jwxu.js → common-oYc5vPFl.js} +2 -2
- package/dist/plugin-sdk/{config-CHQrpx-Q.js → config-B1z-UxQ3.js} +7 -7
- package/dist/plugin-sdk/config-BkEnz2Po.js +17913 -0
- package/dist/plugin-sdk/deliver-B6AG_l67.js +1694 -0
- package/dist/plugin-sdk/{deliver-DNEuetST.js → deliver-D5_6T567.js} +10 -10
- package/dist/plugin-sdk/deliver-runtime-C5dgvvga.js +32 -0
- package/dist/plugin-sdk/deliver-runtime-D585kJZc.js +32 -0
- package/dist/plugin-sdk/deps-send-discord.runtime-Dg4N7PHJ.js +23 -0
- package/dist/plugin-sdk/deps-send-discord.runtime-a_OKY2js.js +23 -0
- package/dist/plugin-sdk/deps-send-imessage.runtime-0OEwzMQm.js +22 -0
- package/dist/plugin-sdk/deps-send-imessage.runtime-Baxy9TD4.js +22 -0
- package/dist/plugin-sdk/deps-send-signal.runtime-BM1jRt3G.js +21 -0
- package/dist/plugin-sdk/deps-send-signal.runtime-BwXoCrFl.js +21 -0
- package/dist/plugin-sdk/deps-send-slack.runtime-1E3BYRdF.js +19 -0
- package/dist/plugin-sdk/deps-send-slack.runtime-CLmKjgso.js +19 -0
- package/dist/plugin-sdk/deps-send-telegram.runtime-BKfdBKnZ.js +24 -0
- package/dist/plugin-sdk/deps-send-telegram.runtime-DNCxIflA.js +24 -0
- package/dist/plugin-sdk/deps-send-whatsapp.runtime-BOTwkbx_.js +57 -0
- package/dist/plugin-sdk/deps-send-whatsapp.runtime-OLwr-9c8.js +57 -0
- package/dist/plugin-sdk/{diagnostic-LYUUmjJ5.js → diagnostic-Bxxu0ig-.js} +2 -2
- package/dist/plugin-sdk/diagnostic-CsP-lEkI.js +319 -0
- package/dist/plugin-sdk/{errors-CtMWwS2Z.js → errors-B3cHyZZA.js} +1 -1
- package/dist/plugin-sdk/errors-DaiAM-yU.js +54 -0
- package/dist/plugin-sdk/fetch-guard-DETCcJzQ.js +156 -0
- package/dist/plugin-sdk/{fetch-guard-CxYB5Kg6.js → fetch-guard-Dcgod0tg.js} +2 -2
- package/dist/plugin-sdk/fs-safe-B8y811FR.js +352 -0
- package/dist/plugin-sdk/{fs-safe-DtfhxbrI.js → fs-safe-BaKqI3G4.js} +3 -3
- package/dist/plugin-sdk/{image-BwjYjRHx.js → image-B2mQW9Rb.js} +6 -6
- package/dist/plugin-sdk/image-DjTEkYZE.js +2310 -0
- package/dist/plugin-sdk/image-ops-BSiMpAw4.js +584 -0
- package/dist/plugin-sdk/{image-ops-BnZKcbd6.js → image-ops-Cbzr4U9l.js} +2 -2
- package/dist/plugin-sdk/image-runtime-6xPp8m5a.js +25 -0
- package/dist/plugin-sdk/image-runtime-BFm45j49.js +25 -0
- package/dist/plugin-sdk/index.js +50 -50
- package/dist/plugin-sdk/ir-DQ7_HbvK.js +1296 -0
- package/dist/plugin-sdk/{ir-Z4hX67TJ.js → ir-ZEmrTr4J.js} +7 -7
- package/dist/plugin-sdk/local-roots-BUP4YBmR.js +186 -0
- package/dist/plugin-sdk/{local-roots-KhjQw04O.js → local-roots-CIPRxA-4.js} +4 -4
- package/dist/plugin-sdk/logger-CZY9KIoY.js +1163 -0
- package/dist/plugin-sdk/{logger-DHIIvMxj.js → logger-CvPFVOgT.js} +2 -2
- package/dist/plugin-sdk/login-BxEKLlCo.js +57 -0
- package/dist/plugin-sdk/{login-C31642Ld.js → login-CCTew9bt.js} +4 -4
- package/dist/plugin-sdk/{login-qr--y2SG_Ue.js → login-qr-BI3Vi_wJ.js} +5 -5
- package/dist/plugin-sdk/login-qr-BQIpMPr9.js +320 -0
- package/dist/plugin-sdk/{manager-2UZBMCc7.js → manager-BEoYPn7R.js} +8 -8
- package/dist/plugin-sdk/manager-I6KbPihW.js +3917 -0
- package/dist/plugin-sdk/manager-runtime-CFfYYWIQ.js +15 -0
- package/dist/plugin-sdk/manager-runtime-DxclHQ4U.js +15 -0
- package/dist/plugin-sdk/mattermost.js +3 -3
- package/dist/plugin-sdk/{outbound-Ba0QUI5h.js → outbound-ByOw1K6W.js} +5 -5
- package/dist/plugin-sdk/outbound-NS6UHnB6.js +212 -0
- package/dist/plugin-sdk/{outbound-attachment-B1Laso-8.js → outbound-attachment-BzVhxRRw.js} +2 -2
- package/dist/plugin-sdk/outbound-attachment-Dy6fyf6H.js +19 -0
- package/dist/plugin-sdk/{path-alias-guards-C7Vm5DZ1.js → path-alias-guards-DBjLbIX_.js} +1 -1
- package/dist/plugin-sdk/path-alias-guards-sWayacde.js +43 -0
- package/dist/plugin-sdk/{paths-DopV9PQG.js → paths-Dpg3qxcl.js} +1 -1
- package/dist/plugin-sdk/paths-vTM3Lh3X.js +166 -0
- package/dist/plugin-sdk/pi-embedded-helpers-1R1gu7eX.js +9627 -0
- package/dist/plugin-sdk/{pi-embedded-helpers-DnA_OCzP.js → pi-embedded-helpers-DIxXkGJf.js} +16 -16
- package/dist/plugin-sdk/{pi-model-discovery-DdPqXk8f.js → pi-model-discovery-DM_2uFtj.js} +1 -1
- package/dist/plugin-sdk/pi-model-discovery-runtime-BuzvkvNR.js +8 -0
- package/dist/plugin-sdk/pi-model-discovery-runtime-Do9o-dUd.js +8 -0
- package/dist/{pi-model-discovery-Dymwdjt0.js → plugin-sdk/pi-model-discovery-v-XPUOOf.js} +2 -2
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-D4sFsIks.js +354 -0
- package/dist/plugin-sdk/{pi-tools.before-tool-call.runtime-DxFHiLUE.js → pi-tools.before-tool-call.runtime-w1dqL_ty.js} +4 -4
- package/dist/plugin-sdk/{plugins-CbCt4osF.js → plugins-C4USiH29.js} +4 -4
- package/dist/plugin-sdk/plugins-DeBZB9l_.js +864 -0
- package/dist/plugin-sdk/{proxy-env-C63mMdas.js → proxy-env-ET-rp8eg.js} +1 -1
- package/dist/plugin-sdk/{proxy-fetch-Ch95c_Y2.js → proxy-fetch-ChxOhWF4.js} +1 -1
- package/dist/{proxy-fetch-B2pEfjbR.js → plugin-sdk/proxy-fetch-uDXGKG3Z.js} +1 -1
- package/dist/plugin-sdk/{pw-ai-DpJk62D4.js → pw-ai-CyOt3RDA.js} +9 -9
- package/dist/plugin-sdk/pw-ai-DEOmCSSC.js +1938 -0
- package/dist/plugin-sdk/{qmd-manager-Ca-iSfEE.js → qmd-manager-BySdoVR7.js} +7 -7
- package/dist/plugin-sdk/qmd-manager-HyYKoEch.js +1448 -0
- package/dist/plugin-sdk/{query-expansion-B_Xe41Ab.js → query-expansion-C6uS-7lj.js} +4 -4
- package/dist/plugin-sdk/query-expansion-CeyKUeDW.js +1011 -0
- package/dist/plugin-sdk/{redact-hp9TOulW.js → redact-Bvxt1T_Q.js} +1 -1
- package/dist/{redact-COik8ET1.js → plugin-sdk/redact-DjVX-1N3.js} +1 -1
- package/dist/plugin-sdk/{reply-CovBlFea.js → reply-CTCSeQqW.js} +73 -73
- package/dist/plugin-sdk/reply-DAo_Jt8K.js +97916 -0
- package/dist/plugin-sdk/resolve-outbound-target-B42qgQS9.js +40 -0
- package/dist/plugin-sdk/{resolve-outbound-target-BbrHgyUk.js → resolve-outbound-target-Bw8YNANu.js} +2 -2
- package/dist/plugin-sdk/run-with-concurrency-Bt_ks0Qa.js +1994 -0
- package/dist/plugin-sdk/{run-with-concurrency-BR1DXa8T.js → run-with-concurrency-C_KCHwvf.js} +1 -1
- package/dist/plugin-sdk/runtime-whatsapp-login.runtime-B6W989eF.js +10 -0
- package/dist/plugin-sdk/runtime-whatsapp-login.runtime-BxgRDkhc.js +10 -0
- package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-c_GDFy37.js +19 -0
- package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-elOqrkfg.js +19 -0
- package/dist/plugin-sdk/{send-BvAtLLPl.js → send-BZ6nYFZr.js} +5 -5
- package/dist/plugin-sdk/{send-BTztm3D2.js → send-C0w6xP2x.js} +6 -6
- package/dist/plugin-sdk/{send-CWJUuG0i.js → send-CFf-1V89.js} +8 -8
- package/dist/plugin-sdk/send-CQpMudwO.js +2587 -0
- package/dist/plugin-sdk/{send-EcglC4cG.js → send-CY-Qfwia.js} +7 -7
- package/dist/plugin-sdk/send-DQHLzVyO.js +414 -0
- package/dist/plugin-sdk/send-DTB24bEF.js +3135 -0
- package/dist/plugin-sdk/send-DfHadjZ_.js +503 -0
- package/dist/plugin-sdk/send-XXlW2iny.js +540 -0
- package/dist/plugin-sdk/{send-BXpXBwM_.js → send-qPyNGSe4.js} +13 -13
- package/dist/plugin-sdk/session-6TF6MyaC.js +169 -0
- package/dist/plugin-sdk/{session-k256LJZT.js → session-COrvpvUQ.js} +3 -3
- package/dist/plugin-sdk/skill-commands-CkGeFUMl.js +342 -0
- package/dist/plugin-sdk/{skill-commands-DoRqLzxm.js → skill-commands-DZqhtmiv.js} +4 -4
- package/dist/plugin-sdk/skills-CBkHBYPq.js +1428 -0
- package/dist/plugin-sdk/{skills-QudILG6e.js → skills-Cw_vXEJb.js} +6 -6
- package/dist/plugin-sdk/slash-commands.runtime-CxliuGaP.js +13 -0
- package/dist/plugin-sdk/slash-commands.runtime-D67JLweo.js +13 -0
- package/dist/plugin-sdk/slash-dispatch.runtime-DFaeYlJQ.js +52 -0
- package/dist/plugin-sdk/slash-dispatch.runtime-DvcpvCJ0.js +52 -0
- package/dist/plugin-sdk/slash-skill-commands.runtime-0M0OLCxq.js +16 -0
- package/dist/plugin-sdk/slash-skill-commands.runtime-BM1x3azR.js +16 -0
- package/dist/plugin-sdk/ssrf-cFtplYtS.js +202 -0
- package/dist/plugin-sdk/store-5nyxY3WU.js +81 -0
- package/dist/plugin-sdk/{store-BbDQw3g6.js → store-CMHj6IIw.js} +2 -2
- package/dist/plugin-sdk/subagent-registry-runtime-1lbDyRzz.js +52 -0
- package/dist/plugin-sdk/subagent-registry-runtime-DCtmDwna.js +52 -0
- package/dist/plugin-sdk/tables-C47P4GTN.js +55 -0
- package/dist/plugin-sdk/{tables-BhvloMKN.js → tables-CSqrHsKL.js} +1 -1
- package/dist/{target-errors-mnlwhAjP.js → plugin-sdk/target-errors-Blia4S69.js} +2 -2
- package/dist/plugin-sdk/thinking-Bo2eosVa.js +1206 -0
- package/dist/plugin-sdk/{thinking-URzkT-3p.js → thinking-DOnsR_A8.js} +7 -7
- package/dist/plugin-sdk/{tokens-B1PW5Ayy.js → tokens-BDr0Z9o3.js} +1 -1
- package/dist/{tokens-q32vI39c.js → plugin-sdk/tokens-DgNRBwIg.js} +1 -1
- package/dist/plugin-sdk/{tool-images-xpqbP6RR.js → tool-images-Gk_-0y2N.js} +2 -2
- package/dist/plugin-sdk/tool-images-eEfOVkzf.js +274 -0
- package/dist/plugin-sdk/web-BLyT64pW.js +56 -0
- package/dist/plugin-sdk/web-CVxZbXyH.js +56 -0
- package/dist/plugin-sdk/whatsapp-actions-Bw0H9g-n.js +80 -0
- package/dist/plugin-sdk/{whatsapp-actions-RcZ6vp61.js → whatsapp-actions-xcleMoMv.js} +17 -17
- package/dist/plugin-sdk/whatsapp.js +50 -50
- package/dist/{plugins-4Rj4OjLY.js → plugins-CWkRQYDj.js} +11 -11
- package/dist/{proxy-env-DlmzDx8x.js → proxy-env-Cq5gdrbj.js} +1 -1
- package/dist/proxy-fetch-CCjEYbFm.js +38 -0
- package/dist/{pw-ai-DNMjFMqH.js → pw-ai-CDQDCfUa.js} +14 -14
- package/dist/{pw-ai-GcYO6HPE.js → pw-ai-CmphSzHx.js} +1 -1
- package/dist/{qmd-manager-BtIKUaO9.js → qmd-manager-BsYsO9Ii.js} +10 -10
- package/dist/{query-expansion-CX-1fS52.js → query-expansion-DtLc3wjL.js} +6 -6
- package/dist/redact-ClbcYG1J.js +319 -0
- package/dist/{run-with-concurrency-BgYfgkXT.js → run-with-concurrency-D_ZpbgEG.js} +4 -4
- package/dist/runtime-whatsapp-login.runtime-IeylZEl4.js +13 -0
- package/dist/runtime-whatsapp-outbound.runtime-ClBRuLsq.js +22 -0
- package/dist/{send-dfu6_rgf.js → send-BQERFNyo.js} +5 -5
- package/dist/{send-L7gRiwyd.js → send-Bj776ESJ.js} +7 -7
- package/dist/{send-PE6cwoTe.js → send-DcxmcFi_.js} +8 -8
- package/dist/{send-6lz6rNVP.js → send-Dx2RkUOZ.js} +6 -6
- package/dist/{send-BHTiZcH3.js → send-vmONuVgL.js} +26 -26
- package/dist/{session-D8ImowSs.js → session-A4QhBRvH.js} +8 -8
- package/dist/{skill-commands-DNqJ-kwn.js → skill-commands-CMzBZKG2.js} +9 -9
- package/dist/{skills-7ODkHQYp.js → skills-CE_iqvM5.js} +22 -22
- package/dist/slash-commands.runtime-Cpn2tYW4.js +16 -0
- package/dist/{slash-dispatch.runtime-Dh053pQK.js → slash-dispatch.runtime-131yup2e.js} +6 -6
- package/dist/slash-dispatch.runtime-CWbpp23S.js +56 -0
- package/dist/slash-skill-commands.runtime-DKMvvdDW.js +20 -0
- package/dist/{store-D89wDcz9.js → store--eR1R_UX.js} +2 -2
- package/dist/subagent-registry-runtime-DEVpAaAP.js +56 -0
- package/dist/{subagent-registry-runtime-DSi5mnCQ.js → subagent-registry-runtime-DbSf_Je6.js} +6 -6
- package/dist/{subsystem-B45WV3qB.js → subsystem-Di1z8l0Z.js} +14 -14
- package/dist/{tables-mE4cJBN2.js → tables-d739Y1xW.js} +1 -1
- package/dist/target-errors-CBI2Ga0y.js +195 -0
- package/dist/{thinking-BeGmb5k6.js → thinking-DXYisHiZ.js} +7 -7
- package/dist/tokens-DxnY9ui_.js +52 -0
- package/dist/{tool-images-RZdHiZcG.js → tool-images-2cBx1W8h.js} +2 -2
- package/dist/{web-1hWJDzNA.js → web-MR9d7KyB.js} +6 -6
- package/dist/{web-Btj-e8kN.js → web-NWKn8ABz.js} +55 -55
- package/dist/{whatsapp-actions-BHbJJyqw.js → whatsapp-actions-iEArE_Ez.js} +21 -21
- package/dist/{workspace-U-DyR64O.js → workspace-CUVC6GX1.js} +20 -20
- package/package.json +1 -1
- package/scripts/create-instance.sh +142 -92
- package/dist/deliver-runtime-BFs7iAZF.js +0 -36
- package/dist/deps-send-discord.runtime-DZUccI6Z.js +0 -26
- package/dist/deps-send-imessage.runtime-CF3OpoqY.js +0 -25
- package/dist/deps-send-signal.runtime-Cw4-ozeO.js +0 -24
- package/dist/deps-send-slack.runtime-BDsDhS1P.js +0 -22
- package/dist/deps-send-telegram.runtime-D_4xVasO.js +0 -27
- package/dist/deps-send-whatsapp.runtime-DK8jqd14.js +0 -60
- package/dist/image-runtime-BcAK3n8a.js +0 -29
- package/dist/manager-runtime-FO1Sx3W8.js +0 -18
- package/dist/pi-model-discovery-runtime-BeY4EUPp.js +0 -11
- package/dist/plugin-sdk/deliver-runtime-BFdqklJM.js +0 -32
- package/dist/plugin-sdk/deps-send-discord.runtime-DuqpYwU0.js +0 -23
- package/dist/plugin-sdk/deps-send-imessage.runtime-CZ2rS8Lb.js +0 -22
- package/dist/plugin-sdk/deps-send-signal.runtime-BdqiWhIh.js +0 -21
- package/dist/plugin-sdk/deps-send-slack.runtime-04s36qiC.js +0 -19
- package/dist/plugin-sdk/deps-send-telegram.runtime-LE5tkPvr.js +0 -24
- package/dist/plugin-sdk/deps-send-whatsapp.runtime-Bz57lobC.js +0 -57
- package/dist/plugin-sdk/image-runtime-B8twoubs.js +0 -25
- package/dist/plugin-sdk/manager-runtime-CMeLwose.js +0 -15
- package/dist/plugin-sdk/pi-model-discovery-runtime-D8CJhtJY.js +0 -8
- package/dist/plugin-sdk/runtime-whatsapp-login.runtime-SkO91TZH.js +0 -10
- package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-B0VWK5hm.js +0 -19
- package/dist/plugin-sdk/slash-commands.runtime-DS6vCNSL.js +0 -13
- package/dist/plugin-sdk/slash-dispatch.runtime-BXrxb2wd.js +0 -52
- package/dist/plugin-sdk/slash-skill-commands.runtime-Bd6qQ2oT.js +0 -16
- package/dist/plugin-sdk/subagent-registry-runtime-1uwQbuXj.js +0 -52
- package/dist/plugin-sdk/web-B74yhL2N.js +0 -56
- package/dist/runtime-whatsapp-login.runtime-DUb55byQ.js +0 -13
- package/dist/runtime-whatsapp-outbound.runtime-Bii_xSfI.js +0 -22
- package/dist/slash-commands.runtime-CVw6566g.js +0 -16
- package/dist/slash-dispatch.runtime-B9Ygtzi4.js +0 -56
- package/dist/slash-skill-commands.runtime-DxZ4z5h6.js +0 -20
- package/dist/subagent-registry-runtime-DL1Wv7nA.js +0 -56
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { d as resolveRequiredHomeDir } from "./paths-
|
|
2
|
-
import { c as danger, p as shouldLogVerbose } from "./subsystem-
|
|
3
|
-
import { g as pathExists$1, n as logError, t as logDebug, y as resolveUserPath } from "./logger-
|
|
1
|
+
import { d as resolveRequiredHomeDir } from "./paths-C6TxBCvO.js";
|
|
2
|
+
import { c as danger, p as shouldLogVerbose } from "./subsystem-Di1z8l0Z.js";
|
|
3
|
+
import { g as pathExists$1, n as logError, t as logDebug, y as resolveUserPath } from "./logger-DMZQQtxK.js";
|
|
4
4
|
import fs from "node:fs/promises";
|
|
5
5
|
import os from "node:os";
|
|
6
6
|
import path from "node:path";
|
|
7
|
-
import
|
|
7
|
+
import syncFs from "node:fs";
|
|
8
8
|
import { promisify } from "node:util";
|
|
9
9
|
import { execFile, spawn } from "node:child_process";
|
|
10
10
|
import process$1 from "node:process";
|
|
@@ -560,7 +560,7 @@ function resolveBoundaryPathLexicalSync(params) {
|
|
|
560
560
|
rootCanonicalPath: params.rootCanonicalPath,
|
|
561
561
|
resolveParams: params.params,
|
|
562
562
|
absolutePath: params.absolutePath,
|
|
563
|
-
read: (cursor) =>
|
|
563
|
+
read: (cursor) => syncFs.lstatSync(cursor)
|
|
564
564
|
});
|
|
565
565
|
if (isPromiseLike(maybeStat)) throw new Error("Unexpected async lexical stat");
|
|
566
566
|
const stat = maybeStat;
|
|
@@ -706,15 +706,15 @@ function resolvePathViaExistingAncestorSync(targetPath) {
|
|
|
706
706
|
const normalized = path.resolve(targetPath);
|
|
707
707
|
let cursor = normalized;
|
|
708
708
|
const missingSuffix = [];
|
|
709
|
-
while (!isFilesystemRoot(cursor) && !
|
|
709
|
+
while (!isFilesystemRoot(cursor) && !syncFs.existsSync(cursor)) {
|
|
710
710
|
missingSuffix.unshift(path.basename(cursor));
|
|
711
711
|
const parent = path.dirname(cursor);
|
|
712
712
|
if (parent === cursor) break;
|
|
713
713
|
cursor = parent;
|
|
714
714
|
}
|
|
715
|
-
if (!
|
|
715
|
+
if (!syncFs.existsSync(cursor)) return normalized;
|
|
716
716
|
try {
|
|
717
|
-
const resolvedAncestor = path.resolve(
|
|
717
|
+
const resolvedAncestor = path.resolve(syncFs.realpathSync(cursor));
|
|
718
718
|
if (missingSuffix.length === 0) return resolvedAncestor;
|
|
719
719
|
return path.resolve(resolvedAncestor, ...missingSuffix);
|
|
720
720
|
} catch {
|
|
@@ -739,7 +739,7 @@ function getPathKindSync(absolutePath, preserveFinalSymlink) {
|
|
|
739
739
|
try {
|
|
740
740
|
return {
|
|
741
741
|
exists: true,
|
|
742
|
-
kind: toResolvedKind(preserveFinalSymlink ?
|
|
742
|
+
kind: toResolvedKind(preserveFinalSymlink ? syncFs.lstatSync(absolutePath) : syncFs.statSync(absolutePath))
|
|
743
743
|
};
|
|
744
744
|
} catch (error) {
|
|
745
745
|
if (isNotFoundPathError(error)) return {
|
|
@@ -799,10 +799,10 @@ async function resolveSymlinkHopPath(symlinkPath) {
|
|
|
799
799
|
}
|
|
800
800
|
function resolveSymlinkHopPathSync(symlinkPath) {
|
|
801
801
|
try {
|
|
802
|
-
return path.resolve(
|
|
802
|
+
return path.resolve(syncFs.realpathSync(symlinkPath));
|
|
803
803
|
} catch (error) {
|
|
804
804
|
if (!isNotFoundPathError(error)) throw error;
|
|
805
|
-
const linkTarget =
|
|
805
|
+
const linkTarget = syncFs.readlinkSync(symlinkPath);
|
|
806
806
|
return resolvePathViaExistingAncestorSync(path.resolve(path.dirname(symlinkPath), linkTarget));
|
|
807
807
|
}
|
|
808
808
|
}
|
|
@@ -828,7 +828,7 @@ function sameFileIdentity(left, right) {
|
|
|
828
828
|
return sameFileIdentity$1(left, right);
|
|
829
829
|
}
|
|
830
830
|
function openVerifiedFileSync(params) {
|
|
831
|
-
const ioFs = params.ioFs ??
|
|
831
|
+
const ioFs = params.ioFs ?? syncFs;
|
|
832
832
|
const allowedType = params.allowedType ?? "file";
|
|
833
833
|
const openReadFlags = ioFs.constants.O_RDONLY | (typeof ioFs.constants.O_NOFOLLOW === "number" ? ioFs.constants.O_NOFOLLOW : 0);
|
|
834
834
|
let fd = null;
|
|
@@ -905,7 +905,7 @@ function canUseBoundaryFileOpen(ioFs) {
|
|
|
905
905
|
return typeof ioFs.openSync === "function" && typeof ioFs.closeSync === "function" && typeof ioFs.fstatSync === "function" && typeof ioFs.lstatSync === "function" && typeof ioFs.realpathSync === "function" && typeof ioFs.readFileSync === "function" && typeof ioFs.constants === "object" && ioFs.constants !== null;
|
|
906
906
|
}
|
|
907
907
|
function openBoundaryFileSync(params) {
|
|
908
|
-
const ioFs = params.ioFs ??
|
|
908
|
+
const ioFs = params.ioFs ?? syncFs;
|
|
909
909
|
const resolved = resolveBoundaryFilePathGeneric({
|
|
910
910
|
absolutePath: params.absolutePath,
|
|
911
911
|
resolve: (absolutePath) => resolveBoundaryPathSync({
|
|
@@ -956,7 +956,7 @@ function finalizeBoundaryFileOpen(params) {
|
|
|
956
956
|
});
|
|
957
957
|
}
|
|
958
958
|
async function openBoundaryFile(params) {
|
|
959
|
-
const ioFs = params.ioFs ??
|
|
959
|
+
const ioFs = params.ioFs ?? syncFs;
|
|
960
960
|
const maybeResolved = resolveBoundaryFilePathGeneric({
|
|
961
961
|
absolutePath: params.absolutePath,
|
|
962
962
|
resolve: (absolutePath) => resolveBoundaryPath({
|
|
@@ -1105,7 +1105,7 @@ function resolveNpmArgvForWindows(argv) {
|
|
|
1105
1105
|
if (!cliName) return null;
|
|
1106
1106
|
const nodeDir = path.dirname(process$1.execPath);
|
|
1107
1107
|
const cliPath = path.join(nodeDir, "node_modules", "npm", "bin", cliName);
|
|
1108
|
-
if (!
|
|
1108
|
+
if (!syncFs.existsSync(cliPath)) return null;
|
|
1109
1109
|
return [
|
|
1110
1110
|
process$1.execPath,
|
|
1111
1111
|
cliPath,
|
|
@@ -1307,7 +1307,7 @@ async function readPackageName(dir) {
|
|
|
1307
1307
|
}
|
|
1308
1308
|
function readPackageNameSync(dir) {
|
|
1309
1309
|
try {
|
|
1310
|
-
const raw =
|
|
1310
|
+
const raw = syncFs.readFileSync(path.join(dir, "package.json"), "utf-8");
|
|
1311
1311
|
const parsed = JSON.parse(raw);
|
|
1312
1312
|
return typeof parsed.name === "string" ? parsed.name : null;
|
|
1313
1313
|
} catch {
|
|
@@ -1341,7 +1341,7 @@ function candidateDirsFromArgv1(argv1) {
|
|
|
1341
1341
|
const normalized = path.resolve(argv1);
|
|
1342
1342
|
const candidates = [path.dirname(normalized)];
|
|
1343
1343
|
try {
|
|
1344
|
-
const resolved =
|
|
1344
|
+
const resolved = syncFs.realpathSync(normalized);
|
|
1345
1345
|
if (resolved !== normalized) candidates.push(path.dirname(resolved));
|
|
1346
1346
|
} catch {}
|
|
1347
1347
|
const parts = normalized.split(path.sep);
|
|
@@ -1453,14 +1453,14 @@ async function readWorkspaceFileWithGuards(params) {
|
|
|
1453
1453
|
const identity = workspaceFileIdentity(opened.stat, opened.path);
|
|
1454
1454
|
const cached = workspaceFileCache.get(params.filePath);
|
|
1455
1455
|
if (cached && cached.identity === identity) {
|
|
1456
|
-
|
|
1456
|
+
syncFs.closeSync(opened.fd);
|
|
1457
1457
|
return {
|
|
1458
1458
|
ok: true,
|
|
1459
1459
|
content: cached.content
|
|
1460
1460
|
};
|
|
1461
1461
|
}
|
|
1462
1462
|
try {
|
|
1463
|
-
const content =
|
|
1463
|
+
const content = syncFs.readFileSync(opened.fd, "utf-8");
|
|
1464
1464
|
workspaceFileCache.set(params.filePath, {
|
|
1465
1465
|
content,
|
|
1466
1466
|
identity
|
|
@@ -1477,7 +1477,7 @@ async function readWorkspaceFileWithGuards(params) {
|
|
|
1477
1477
|
error
|
|
1478
1478
|
};
|
|
1479
1479
|
} finally {
|
|
1480
|
-
|
|
1480
|
+
syncFs.closeSync(opened.fd);
|
|
1481
1481
|
}
|
|
1482
1482
|
}
|
|
1483
1483
|
function stripFrontMatter(content) {
|
package/package.json
CHANGED
|
@@ -22,7 +22,82 @@ DEFAULT_SOURCE="${GLOBAL_PREFIX}/lib/node_modules/openclaw-multi-auto"
|
|
|
22
22
|
SOURCE_CODE="$DEFAULT_SOURCE"
|
|
23
23
|
echo "SOURCE_CODE = $SOURCE_CODE"
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
INSTANCE_DIR="$INSTANCES_BASE/${INSTANCE_NAME}"
|
|
26
|
+
DIST_DIR="${INSTANCE_DIR}/dist"
|
|
27
|
+
|
|
28
|
+
# 清理旧残留,防止隔离失效
|
|
29
|
+
if [ -d "$INSTANCE_DIR" ]; then
|
|
30
|
+
echo -e "${YELLOW}⚠️ 清理旧实例目录...${NC}"
|
|
31
|
+
rm -rf "$INSTANCE_DIR"
|
|
32
|
+
fi
|
|
33
|
+
# 删除可能存在的父目录 node_modules 和 workspace 文件
|
|
34
|
+
[ -d "${INSTANCES_BASE}/node_modules" ] && rm -rf "${INSTANCES_BASE}/node_modules"
|
|
35
|
+
[ -f "${INSTANCES_BASE}/pnpm-workspace.yaml" ] && rm -f "${INSTANCES_BASE}/pnpm-workspace.yaml"
|
|
36
|
+
|
|
37
|
+
echo -e "${BLUE}🏗️ 正在深度初始化实例: ${INSTANCE_NAME} (端口 ${PORT})${NC}"
|
|
38
|
+
|
|
39
|
+
# --- 2. 完整目录结构创建 ---
|
|
40
|
+
mkdir -p "${INSTANCE_DIR}/config" "${INSTANCE_DIR}/tmp" "${INSTANCE_DIR}/workspace"
|
|
41
|
+
mkdir -p "${INSTANCE_DIR}/workspace/memory"
|
|
42
|
+
mkdir -p "${INSTANCE_DIR}/agents/main/agent/sessions"
|
|
43
|
+
mkdir -p "${INSTANCE_DIR}/credentials" "${INSTANCE_DIR}/media"
|
|
44
|
+
|
|
45
|
+
# --- 3 动态提取母本版本号 ---
|
|
46
|
+
echo -e "${BLUE}🔍 正在提取母本版本信息...${NC}"
|
|
47
|
+
PKG_PATH="${SOURCE_CODE}/package.json"
|
|
48
|
+
if [ -f "$PKG_PATH" ]; then
|
|
49
|
+
CURRENT_VERSION=$(node -p "require('$PKG_PATH').version")
|
|
50
|
+
echo -e "${GREEN}✅ 检测到母本版本: v${CURRENT_VERSION}${NC}"
|
|
51
|
+
else
|
|
52
|
+
CURRENT_VERSION="2026.3.9"
|
|
53
|
+
echo -e "${YELLOW}⚠️ 未找到 package.json,使用兜底版本: ${CURRENT_VERSION}${NC}"
|
|
54
|
+
fi
|
|
55
|
+
|
|
56
|
+
# --- 4. 核心代码同步 (rsync 对齐并增加预检) ---
|
|
57
|
+
echo -e "${BLUE}🔄 分发代码产物 (物理对齐)...${NC}"
|
|
58
|
+
rm -rf "$DIST_DIR" && mkdir -p "$DIST_DIR"
|
|
59
|
+
if [ -d "${SOURCE_CODE}/dist" ]; then
|
|
60
|
+
cp -r "${SOURCE_CODE}/dist/." "${DIST_DIR}/"
|
|
61
|
+
echo "cp exit code: $?"
|
|
62
|
+
|
|
63
|
+
# 检查所有被引用的 utils 文件是否存在
|
|
64
|
+
for chunk in $(grep -oE "utils-[A-Za-z0-9]+\.js" "${DIST_DIR}/index.js" 2>/dev/null | sort -u); do
|
|
65
|
+
if [ ! -f "${DIST_DIR}/${chunk}" ]; then
|
|
66
|
+
echo -e "${RED}❌ 致命错误: dist 缺失关键模块 ${chunk}${NC}"
|
|
67
|
+
echo -e "${YELLOW}请在源码端执行: rm -rf dist && pnpm build && npm publish${NC}"
|
|
68
|
+
exit 1
|
|
69
|
+
fi
|
|
70
|
+
done
|
|
71
|
+
else
|
|
72
|
+
echo -e "${RED}❌ 错误: 母本 dist 不存在${NC}"; exit 1
|
|
73
|
+
fi
|
|
74
|
+
|
|
75
|
+
cp "${SOURCE_CODE}/package.json" "${INSTANCE_DIR}/package.json"
|
|
76
|
+
[ -f "${SOURCE_CODE}/pnpm-lock.yaml" ] && cp "${SOURCE_CODE}/pnpm-lock.yaml" "${INSTANCE_DIR}/pnpm-lock.yaml"
|
|
77
|
+
|
|
78
|
+
export SHARP_BINARY_HOST="https://npmmirror.com/mirrors/sharp"
|
|
79
|
+
export SHARP_LIBVIPS_BINARY_HOST="https://npmmirror.com/mirrors/sharp-libvips"
|
|
80
|
+
|
|
81
|
+
cd "${INSTANCE_DIR}"
|
|
82
|
+
echo -e "${YELLOW}📍 安装路径确认: $(pwd)${NC}"
|
|
83
|
+
|
|
84
|
+
# 检查并移除可能影响 workspace 的文件
|
|
85
|
+
if [ -f "${INSTANCES_BASE}/pnpm-workspace.yaml" ]; then
|
|
86
|
+
echo -e "${YELLOW}⚠️ 检测到 ${INSTANCES_BASE}/pnpm-workspace.yaml,临时重命名以避免干扰${NC}"
|
|
87
|
+
mv "${INSTANCES_BASE}/pnpm-workspace.yaml" "${INSTANCES_BASE}/pnpm-workspace.yaml.bak.$(date +%s)"
|
|
88
|
+
fi
|
|
89
|
+
|
|
90
|
+
# 强制安装依赖,添加 --ignore-workspace 避免 workspace 提升
|
|
91
|
+
pnpm install --shamefully-hoist --ignore-workspace --registry=https://registry.npmmirror.com --no-frozen-lockfile
|
|
92
|
+
|
|
93
|
+
# 验证 node_modules 是否生成
|
|
94
|
+
if [ ! -d "node_modules" ]; then
|
|
95
|
+
echo -e "${RED}❌ 严重错误: pnpm install 完成但 node_modules 目录未创建!${NC}"
|
|
96
|
+
exit 1
|
|
97
|
+
fi
|
|
98
|
+
echo -e "${GREEN}✅ 依赖安装成功,node_modules 已生成在实例目录${NC}"
|
|
99
|
+
|
|
100
|
+
# --- 5. 参数与交互式获取 ---
|
|
26
101
|
INSTANCE_NAME="${1:-}"
|
|
27
102
|
if [ -z "$INSTANCE_NAME" ]; then
|
|
28
103
|
read -p "请输入实例名称 (默认: yunwei): " INPUT_NAME
|
|
@@ -56,37 +131,7 @@ if [ -z "$API_KEY" ]; then
|
|
|
56
131
|
read -p "请输入您的 ${MODEL_PROVIDER} API Key: " API_KEY
|
|
57
132
|
fi
|
|
58
133
|
|
|
59
|
-
|
|
60
|
-
DIST_DIR="${INSTANCE_DIR}/dist"
|
|
61
|
-
|
|
62
|
-
# 清理旧残留,防止隔离失效
|
|
63
|
-
if [ -d "$INSTANCE_DIR" ]; then
|
|
64
|
-
echo -e "${YELLOW}⚠️ 清理旧实例目录...${NC}"
|
|
65
|
-
rm -rf "$INSTANCE_DIR"
|
|
66
|
-
fi
|
|
67
|
-
# 删除可能存在的父目录 node_modules 和 workspace 文件
|
|
68
|
-
[ -d "${INSTANCES_BASE}/node_modules" ] && rm -rf "${INSTANCES_BASE}/node_modules"
|
|
69
|
-
[ -f "${INSTANCES_BASE}/pnpm-workspace.yaml" ] && rm -f "${INSTANCES_BASE}/pnpm-workspace.yaml"
|
|
70
|
-
|
|
71
|
-
echo -e "${BLUE}🏗️ 正在深度初始化实例: ${INSTANCE_NAME} (端口 ${PORT})${NC}"
|
|
72
|
-
|
|
73
|
-
# --- 3. 完整目录结构创建 ---
|
|
74
|
-
mkdir -p "${INSTANCE_DIR}/config" "${INSTANCE_DIR}/tmp" "${INSTANCE_DIR}/workspace"
|
|
75
|
-
mkdir -p "${INSTANCE_DIR}/agents/main/agent/sessions"
|
|
76
|
-
mkdir -p "${INSTANCE_DIR}/credentials" "${INSTANCE_DIR}/media"
|
|
77
|
-
|
|
78
|
-
# --- 3.5 动态提取母本版本号 ---
|
|
79
|
-
echo -e "${BLUE}🔍 正在提取母本版本信息...${NC}"
|
|
80
|
-
PKG_PATH="${SOURCE_CODE}/package.json"
|
|
81
|
-
if [ -f "$PKG_PATH" ]; then
|
|
82
|
-
CURRENT_VERSION=$(node -p "require('$PKG_PATH').version")
|
|
83
|
-
echo -e "${GREEN}✅ 检测到母本版本: v${CURRENT_VERSION}${NC}"
|
|
84
|
-
else
|
|
85
|
-
CURRENT_VERSION="2026.3.9"
|
|
86
|
-
echo -e "${YELLOW}⚠️ 未找到 package.json,使用兜底版本: ${CURRENT_VERSION}${NC}"
|
|
87
|
-
fi
|
|
88
|
-
|
|
89
|
-
# --- 4. 生成深度配置文件 ---
|
|
134
|
+
# --- 6. 生成深度配置文件 ---
|
|
90
135
|
DEFAULT_MODEL="zai/glm-5"
|
|
91
136
|
ZAI_KEY=""; DS_KEY=""; MX_KEY=""; KIMI_KEY=""; QWEN_KEY=""
|
|
92
137
|
|
|
@@ -104,7 +149,7 @@ cat > "${INSTANCE_DIR}/config/openclaw.json" << EOF
|
|
|
104
149
|
"lastTouchedVersion": "${CURRENT_VERSION}",
|
|
105
150
|
"lastTouchedAt": "$(date -u +"%Y-%m-%dT%H:%M:%S.%3NZ")"
|
|
106
151
|
},
|
|
107
|
-
"
|
|
152
|
+
"models": {
|
|
108
153
|
"providers": {
|
|
109
154
|
"zai": {
|
|
110
155
|
"baseUrl": "https://open.bigmodel.cn/api/paas/v4",
|
|
@@ -176,67 +221,56 @@ cat > "${INSTANCE_DIR}/config/openclaw.json" << EOF
|
|
|
176
221
|
}
|
|
177
222
|
EOF
|
|
178
223
|
|
|
179
|
-
# ---
|
|
180
|
-
echo -e "${BLUE}
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
cp -r "${SOURCE_CODE}/dist/." "${DIST_DIR}/"
|
|
184
|
-
echo "cp exit code: $?"
|
|
185
|
-
|
|
186
|
-
# 检查所有被引用的 utils 文件是否存在
|
|
187
|
-
for chunk in $(grep -oE "utils-[A-Za-z0-9]+\.js" "${DIST_DIR}/index.js" 2>/dev/null | sort -u); do
|
|
188
|
-
if [ ! -f "${DIST_DIR}/${chunk}" ]; then
|
|
189
|
-
echo -e "${RED}❌ 致命错误: dist 缺失关键模块 ${chunk}${NC}"
|
|
190
|
-
echo -e "${YELLOW}请在源码端执行: rm -rf dist && pnpm build && npm publish${NC}"
|
|
191
|
-
exit 1
|
|
192
|
-
fi
|
|
193
|
-
done
|
|
194
|
-
else
|
|
195
|
-
echo -e "${RED}❌ 错误: 母本 dist 不存在${NC}"; exit 1
|
|
196
|
-
fi
|
|
224
|
+
# --- 7. 预装可选技能 (修复:即使失败也不影响主流程) ---
|
|
225
|
+
echo -e "${BLUE}🤖 正在注入飞书运维机器人引导...${NC}"
|
|
226
|
+
SKILLS_DIR="${INSTANCE_DIR}/workspace/skills"
|
|
227
|
+
mkdir -p "$SKILLS_DIR"
|
|
197
228
|
|
|
198
|
-
|
|
199
|
-
|
|
229
|
+
SKILL_PKG="jinyu-skill-feishu-config"
|
|
230
|
+
REGISTRY="https://registry.npmmirror.com"
|
|
200
231
|
|
|
201
|
-
#
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
export SHARP_LIBVIPS_BINARY_HOST="https://npmmirror.com/mirrors/sharp-libvips"
|
|
232
|
+
# 创建临时目录用于下载
|
|
233
|
+
TEMP_DIR=$(mktemp -d)
|
|
234
|
+
cd "$TEMP_DIR"
|
|
205
235
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
236
|
+
if npm pack "$SKILL_PKG@latest" --registry="$REGISTRY" --quiet > /dev/null 2>&1; then
|
|
237
|
+
TARBALL=$(ls *.tgz)
|
|
238
|
+
mkdir -p "$SKILLS_DIR/feishu-config"
|
|
239
|
+
tar -xzf "$TARBALL" -C "$SKILLS_DIR/feishu-config" --strip-components=1
|
|
240
|
+
echo -e "${GREEN}✅ 技能 feishu-config 安装成功${NC}"
|
|
241
|
+
else
|
|
242
|
+
echo -e "${YELLOW}⚠️ 技能 feishu-config 下载失败,跳过${NC}"
|
|
213
243
|
fi
|
|
214
244
|
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
#
|
|
219
|
-
if [
|
|
220
|
-
echo -e "${
|
|
221
|
-
|
|
245
|
+
cd - > /dev/null
|
|
246
|
+
rm -rf "$TEMP_DIR"
|
|
247
|
+
|
|
248
|
+
# --- 如果实例是 yunwei,安装角色包并初始化 workspace ---
|
|
249
|
+
if [ "$INSTANCE_NAME" = "yunwei" ]; then
|
|
250
|
+
echo -e "${BLUE}🛠️ 检测到运维实例,正在安装角色包 role-openclaw-yunwei...${NC}"
|
|
251
|
+
|
|
252
|
+
# 创建临时目录用于下载和解压
|
|
253
|
+
TEMP_ROLE_DIR=$(mktemp -d)
|
|
254
|
+
cd "$TEMP_ROLE_DIR"
|
|
255
|
+
|
|
256
|
+
# 使用 npm pack 下载包到临时目录(避免全局安装)
|
|
257
|
+
npm pack role-openclaw-yunwei@latest --registry=https://registry.npmmirror.com --quiet > /dev/null
|
|
258
|
+
TARBALL=$(ls *.tgz)
|
|
259
|
+
|
|
260
|
+
# 解压包内容,--strip-components=1 去除顶层 package/ 目录
|
|
261
|
+
tar -xzf "$TARBALL" --strip-components=1
|
|
262
|
+
rm "$TARBALL"
|
|
263
|
+
|
|
264
|
+
# 将包内所有文件复制到实例的 workspace 目录(不覆盖已有文件?根据需求选择)
|
|
265
|
+
# 使用 -n 避免覆盖已存在的文件(如用户可能修改过)
|
|
266
|
+
cp -rn "$TEMP_ROLE_DIR"/* "$INSTANCE_DIR/workspace/"
|
|
267
|
+
|
|
268
|
+
# 清理临时目录
|
|
269
|
+
cd - > /dev/null
|
|
270
|
+
rm -rf "$TEMP_ROLE_DIR"
|
|
271
|
+
|
|
272
|
+
echo -e "${GREEN}✅ 角色包安装完成,workspace 已初始化${NC}"
|
|
222
273
|
fi
|
|
223
|
-
echo -e "${GREEN}✅ 依赖安装成功,node_modules 已生成在实例目录${NC}"
|
|
224
|
-
|
|
225
|
-
# --- 7. 预装可选技能 (修复:即使失败也不影响主流程) ---
|
|
226
|
-
echo -e "${BLUE}🤖 正在注入飞书运维机器人引导...${NC}"
|
|
227
|
-
SKILLS_DIR="${INSTANCE_DIR}/workspace/skills"
|
|
228
|
-
mkdir -p "$SKILLS_DIR/workspace-git"
|
|
229
|
-
mkdir -p "$SKILLS_DIR/feishu-config"
|
|
230
|
-
|
|
231
|
-
# 使用 || true 防止私有包不存在导致 set -e 中断脚本
|
|
232
|
-
pnpm add jinyu-skill-git --prefix "$SKILLS_DIR/workspace-git" --registry=https://registry.npmmirror.com >/dev/null 2>&1 || echo "⚠️ 技能 git 跳过"
|
|
233
|
-
pnpm add jinyu-skill-feishu-config --prefix "$SKILLS_DIR/feishu-config" --registry=https://registry.npmmirror.com >/dev/null 2>&1 || echo "⚠️ 技能 feishu 跳过"
|
|
234
|
-
|
|
235
|
-
cat > "${INSTANCE_DIR}/workspace/BOOTSTRAP.md" << 'EOF'
|
|
236
|
-
# 首次启动引导任务
|
|
237
|
-
1. 调用 `feishu-config` 技能,开始飞书机器人自动配置流程。
|
|
238
|
-
2. 机器人名称设定为:**运维**。
|
|
239
|
-
EOF
|
|
240
274
|
|
|
241
275
|
# --- 8. 生成增强型启动脚本 ---
|
|
242
276
|
cat > "${INSTANCE_DIR}/start.sh" << 'EOF'
|
|
@@ -252,7 +286,7 @@ if [ -f "$OPENCLAW_CONFIG_PATH" ]; then
|
|
|
252
286
|
eval $(node -e "const env = require('$OPENCLAW_CONFIG_PATH').env || {}; Object.keys(env).forEach(k => { if(env[k]) console.log('export ' + k + '=\"' + env[k] + '\"'); })")
|
|
253
287
|
fi
|
|
254
288
|
|
|
255
|
-
# macOS launchd
|
|
289
|
+
# macOS launchd 守护配置(保持不变)
|
|
256
290
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
257
291
|
PLIST_LABEL="ai.openclaw.$INSTANCE_NAME"
|
|
258
292
|
PLIST_PATH="$HOME/Library/LaunchAgents/$PLIST_LABEL.plist"
|
|
@@ -273,8 +307,24 @@ EOP
|
|
|
273
307
|
fi
|
|
274
308
|
fi
|
|
275
309
|
|
|
276
|
-
|
|
277
|
-
|
|
310
|
+
# 检测 openclaw 命令是否存在
|
|
311
|
+
if command -v openclaw &> /dev/null; then
|
|
312
|
+
CMD="openclaw"
|
|
313
|
+
else
|
|
314
|
+
CMD="node ./dist/index.js"
|
|
315
|
+
fi
|
|
316
|
+
|
|
317
|
+
# 根据是否有命令行参数决定执行方式
|
|
318
|
+
if [ $# -eq 0 ]; then
|
|
319
|
+
# 无参数:启动网关(默认行为)
|
|
320
|
+
GATEWAY_PORT=$(node -e "console.log(require('$OPENCLAW_CONFIG_PATH').gateway.port)")
|
|
321
|
+
echo "🚀 使用 $CMD 启动 OpenClaw-$INSTANCE_NAME 网关..."
|
|
322
|
+
exec $CMD gateway run --port "$GATEWAY_PORT"
|
|
323
|
+
else
|
|
324
|
+
# 有参数:将所有参数传递给 openclaw/node 命令
|
|
325
|
+
echo "🚀 使用 $CMD 执行 OpenClaw-$INSTANCE_NAME 命令: $@"
|
|
326
|
+
exec $CMD "$@"
|
|
327
|
+
fi
|
|
278
328
|
EOF
|
|
279
329
|
chmod +x "${INSTANCE_DIR}/start.sh"
|
|
280
330
|
|
|
@@ -282,7 +332,7 @@ chmod +x "${INSTANCE_DIR}/start.sh"
|
|
|
282
332
|
echo -e "${BLUE}⚡ 正在后台启动服务...${NC}"
|
|
283
333
|
nohup ./start.sh > "${INSTANCE_DIR}/workspace/server.log" 2>&1 &
|
|
284
334
|
|
|
285
|
-
sleep 2
|
|
335
|
+
sleep 2ƒ
|
|
286
336
|
if ps -p $! > /dev/null; then
|
|
287
337
|
echo -e "${GREEN}================================================${NC}"
|
|
288
338
|
echo -e "${GREEN}🎉 实例 [${INSTANCE_NAME}] 初始化成功!${NC}"
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import "./run-with-concurrency-BgYfgkXT.js";
|
|
2
|
-
import "./paths-Cvc9EM8Y.js";
|
|
3
|
-
import "./subsystem-B45WV3qB.js";
|
|
4
|
-
import "./workspace-U-DyR64O.js";
|
|
5
|
-
import "./logger-BfjWMCSD.js";
|
|
6
|
-
import "./model-selection-Dna0Gz1k.js";
|
|
7
|
-
import "./github-copilot-token-BDioPmd6.js";
|
|
8
|
-
import "./legacy-names-DOC03BkU.js";
|
|
9
|
-
import "./thinking-BeGmb5k6.js";
|
|
10
|
-
import "./tokens-q32vI39c.js";
|
|
11
|
-
import "./plugins-4Rj4OjLY.js";
|
|
12
|
-
import "./accounts-Tgelvk0C.js";
|
|
13
|
-
import { t as deliverOutboundPayloads } from "./deliver-DbdywYJE.js";
|
|
14
|
-
import "./accounts-C9HcPI9h.js";
|
|
15
|
-
import "./image-ops-BuUnEOE0.js";
|
|
16
|
-
import "./pi-embedded-helpers-CLXm10bV.js";
|
|
17
|
-
import "./chrome-DxxEKrY7.js";
|
|
18
|
-
import "./frontmatter-BkTfEZ93.js";
|
|
19
|
-
import "./skills-7ODkHQYp.js";
|
|
20
|
-
import "./path-alias-guards-BzvdLvTI.js";
|
|
21
|
-
import "./redact-COik8ET1.js";
|
|
22
|
-
import "./errors-xt401nuk.js";
|
|
23
|
-
import "./fs-safe-CTYUrIgQ.js";
|
|
24
|
-
import "./proxy-env-DlmzDx8x.js";
|
|
25
|
-
import "./store-D89wDcz9.js";
|
|
26
|
-
import "./accounts-C_lW3Ag9.js";
|
|
27
|
-
import "./paths-Bkr-BCxW.js";
|
|
28
|
-
import "./tool-images-RZdHiZcG.js";
|
|
29
|
-
import "./fetch-DuraYswo.js";
|
|
30
|
-
import "./fetch-guard-DWr0d00H.js";
|
|
31
|
-
import "./ir-B83looB-.js";
|
|
32
|
-
import "./fetch-BfuG8uZ8.js";
|
|
33
|
-
import "./send-dfu6_rgf.js";
|
|
34
|
-
import "./outbound-attachment-DqHlD21U.js";
|
|
35
|
-
|
|
36
|
-
export { deliverOutboundPayloads };
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import "./run-with-concurrency-BgYfgkXT.js";
|
|
2
|
-
import "./paths-Cvc9EM8Y.js";
|
|
3
|
-
import "./subsystem-B45WV3qB.js";
|
|
4
|
-
import "./workspace-U-DyR64O.js";
|
|
5
|
-
import "./logger-BfjWMCSD.js";
|
|
6
|
-
import "./model-selection-Dna0Gz1k.js";
|
|
7
|
-
import "./github-copilot-token-BDioPmd6.js";
|
|
8
|
-
import "./legacy-names-DOC03BkU.js";
|
|
9
|
-
import "./plugins-4Rj4OjLY.js";
|
|
10
|
-
import "./accounts-Tgelvk0C.js";
|
|
11
|
-
import { h as sendMessageDiscord } from "./send-PE6cwoTe.js";
|
|
12
|
-
import "./image-ops-BuUnEOE0.js";
|
|
13
|
-
import "./path-alias-guards-BzvdLvTI.js";
|
|
14
|
-
import "./redact-COik8ET1.js";
|
|
15
|
-
import "./errors-xt401nuk.js";
|
|
16
|
-
import "./fs-safe-CTYUrIgQ.js";
|
|
17
|
-
import "./proxy-env-DlmzDx8x.js";
|
|
18
|
-
import "./fetch-DuraYswo.js";
|
|
19
|
-
import "./fetch-guard-DWr0d00H.js";
|
|
20
|
-
import "./ir-B83looB-.js";
|
|
21
|
-
import "./render-DW7AcFdD.js";
|
|
22
|
-
import "./fetch-BfuG8uZ8.js";
|
|
23
|
-
import "./channel-activity-BDnjYF7B.js";
|
|
24
|
-
import "./tables-mE4cJBN2.js";
|
|
25
|
-
|
|
26
|
-
export { sendMessageDiscord };
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import "./run-with-concurrency-BgYfgkXT.js";
|
|
2
|
-
import "./paths-Cvc9EM8Y.js";
|
|
3
|
-
import "./subsystem-B45WV3qB.js";
|
|
4
|
-
import "./workspace-U-DyR64O.js";
|
|
5
|
-
import "./logger-BfjWMCSD.js";
|
|
6
|
-
import "./model-selection-Dna0Gz1k.js";
|
|
7
|
-
import "./github-copilot-token-BDioPmd6.js";
|
|
8
|
-
import "./legacy-names-DOC03BkU.js";
|
|
9
|
-
import "./plugins-4Rj4OjLY.js";
|
|
10
|
-
import "./accounts-Tgelvk0C.js";
|
|
11
|
-
import "./image-ops-BuUnEOE0.js";
|
|
12
|
-
import "./path-alias-guards-BzvdLvTI.js";
|
|
13
|
-
import "./fs-safe-CTYUrIgQ.js";
|
|
14
|
-
import "./proxy-env-DlmzDx8x.js";
|
|
15
|
-
import "./store-D89wDcz9.js";
|
|
16
|
-
import "./accounts-C_lW3Ag9.js";
|
|
17
|
-
import "./fetch-DuraYswo.js";
|
|
18
|
-
import "./fetch-guard-DWr0d00H.js";
|
|
19
|
-
import "./ir-B83looB-.js";
|
|
20
|
-
import "./render-DW7AcFdD.js";
|
|
21
|
-
import "./tables-mE4cJBN2.js";
|
|
22
|
-
import "./outbound-attachment-DqHlD21U.js";
|
|
23
|
-
import { t as sendMessageIMessage } from "./send-L7gRiwyd.js";
|
|
24
|
-
|
|
25
|
-
export { sendMessageIMessage };
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import "./run-with-concurrency-BgYfgkXT.js";
|
|
2
|
-
import "./paths-Cvc9EM8Y.js";
|
|
3
|
-
import "./subsystem-B45WV3qB.js";
|
|
4
|
-
import "./workspace-U-DyR64O.js";
|
|
5
|
-
import "./logger-BfjWMCSD.js";
|
|
6
|
-
import "./model-selection-Dna0Gz1k.js";
|
|
7
|
-
import "./github-copilot-token-BDioPmd6.js";
|
|
8
|
-
import "./legacy-names-DOC03BkU.js";
|
|
9
|
-
import "./plugins-4Rj4OjLY.js";
|
|
10
|
-
import "./accounts-Tgelvk0C.js";
|
|
11
|
-
import "./accounts-C9HcPI9h.js";
|
|
12
|
-
import "./image-ops-BuUnEOE0.js";
|
|
13
|
-
import "./path-alias-guards-BzvdLvTI.js";
|
|
14
|
-
import "./fs-safe-CTYUrIgQ.js";
|
|
15
|
-
import "./proxy-env-DlmzDx8x.js";
|
|
16
|
-
import "./store-D89wDcz9.js";
|
|
17
|
-
import "./fetch-DuraYswo.js";
|
|
18
|
-
import "./fetch-guard-DWr0d00H.js";
|
|
19
|
-
import "./ir-B83looB-.js";
|
|
20
|
-
import "./fetch-BfuG8uZ8.js";
|
|
21
|
-
import { t as sendMessageSignal } from "./send-dfu6_rgf.js";
|
|
22
|
-
import "./outbound-attachment-DqHlD21U.js";
|
|
23
|
-
|
|
24
|
-
export { sendMessageSignal };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import "./run-with-concurrency-BgYfgkXT.js";
|
|
2
|
-
import "./paths-Cvc9EM8Y.js";
|
|
3
|
-
import "./subsystem-B45WV3qB.js";
|
|
4
|
-
import "./workspace-U-DyR64O.js";
|
|
5
|
-
import "./logger-BfjWMCSD.js";
|
|
6
|
-
import "./model-selection-Dna0Gz1k.js";
|
|
7
|
-
import "./github-copilot-token-BDioPmd6.js";
|
|
8
|
-
import "./legacy-names-DOC03BkU.js";
|
|
9
|
-
import "./tokens-q32vI39c.js";
|
|
10
|
-
import "./plugins-4Rj4OjLY.js";
|
|
11
|
-
import "./accounts-Tgelvk0C.js";
|
|
12
|
-
import { t as sendMessageSlack } from "./send-6lz6rNVP.js";
|
|
13
|
-
import "./image-ops-BuUnEOE0.js";
|
|
14
|
-
import "./path-alias-guards-BzvdLvTI.js";
|
|
15
|
-
import "./fs-safe-CTYUrIgQ.js";
|
|
16
|
-
import "./proxy-env-DlmzDx8x.js";
|
|
17
|
-
import "./fetch-DuraYswo.js";
|
|
18
|
-
import "./fetch-guard-DWr0d00H.js";
|
|
19
|
-
import "./ir-B83looB-.js";
|
|
20
|
-
import "./render-DW7AcFdD.js";
|
|
21
|
-
|
|
22
|
-
export { sendMessageSlack };
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import "./run-with-concurrency-BgYfgkXT.js";
|
|
2
|
-
import "./paths-Cvc9EM8Y.js";
|
|
3
|
-
import "./subsystem-B45WV3qB.js";
|
|
4
|
-
import "./workspace-U-DyR64O.js";
|
|
5
|
-
import "./logger-BfjWMCSD.js";
|
|
6
|
-
import "./model-selection-Dna0Gz1k.js";
|
|
7
|
-
import "./github-copilot-token-BDioPmd6.js";
|
|
8
|
-
import "./legacy-names-DOC03BkU.js";
|
|
9
|
-
import "./plugins-4Rj4OjLY.js";
|
|
10
|
-
import "./accounts-Tgelvk0C.js";
|
|
11
|
-
import "./image-ops-BuUnEOE0.js";
|
|
12
|
-
import { o as sendMessageTelegram } from "./send-BHTiZcH3.js";
|
|
13
|
-
import "./path-alias-guards-BzvdLvTI.js";
|
|
14
|
-
import "./redact-COik8ET1.js";
|
|
15
|
-
import "./errors-xt401nuk.js";
|
|
16
|
-
import "./fs-safe-CTYUrIgQ.js";
|
|
17
|
-
import "./proxy-env-DlmzDx8x.js";
|
|
18
|
-
import "./fetch-DuraYswo.js";
|
|
19
|
-
import "./fetch-guard-DWr0d00H.js";
|
|
20
|
-
import "./proxy-fetch-B2pEfjbR.js";
|
|
21
|
-
import "./ir-B83looB-.js";
|
|
22
|
-
import "./render-DW7AcFdD.js";
|
|
23
|
-
import "./fetch-BfuG8uZ8.js";
|
|
24
|
-
import "./channel-activity-BDnjYF7B.js";
|
|
25
|
-
import "./proxy-CecQTx_Z.js";
|
|
26
|
-
|
|
27
|
-
export { sendMessageTelegram };
|