@qqbrowser/openclaw-qbot 0.0.139 → 0.0.142
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/account-lookup-CW-_CL7y.js +1 -0
- package/dist/acp-cli-BaslDuk6.js +1 -0
- package/dist/acp-cli-f5-uI85a.js +1 -0
- package/dist/active-listener-Cce5tcPa.js +1 -0
- package/dist/active-listener-D8VOdVx3.js +1 -0
- package/dist/active-listener-DeKRt_UV.js +1 -0
- package/dist/active-listener-Dle9QX40.js +1 -0
- package/dist/agent-scope-DAWJwFfl.js +1 -0
- package/dist/agent-scope-DXZc3eNT.js +1 -0
- package/dist/agents-Bpp_F5In.js +1 -0
- package/dist/agents.config-B6LRG9eP.js +1 -0
- package/dist/agents.config-DfIJAGcd.js +1 -0
- package/dist/allow-from-B6dI7oz8.js +1 -0
- package/dist/allow-from-DEeVIPKS.js +1 -0
- package/dist/api-BeG0ObSq.js +1 -0
- package/dist/api-Dx8x1KTs.js +1 -0
- package/dist/api-key-rotation-BRt-vnRV.js +1 -0
- package/dist/api-key-rotation-CCH1wYVU.js +1 -0
- package/dist/api-key-rotation-D0QU-kQ9.js +1 -0
- package/dist/api-key-rotation-Di6QgXx7.js +1 -0
- package/dist/arg-split-BOqSMBuf.js +1 -0
- package/dist/arg-split-DE5RqDHq.js +1 -0
- package/dist/audio-preflight-B5o7P9qi.js +1 -0
- package/dist/audio-preflight-CxD7VCHW.js +1 -0
- package/dist/audio-preflight-DKSCBKRb.js +1 -0
- package/dist/audio-preflight-Dpk8-Bmk.js +1 -0
- package/dist/audio-transcription-runner-Bd1OZC6K.js +1 -0
- package/dist/audio-transcription-runner-D4Bp6MM7.js +1 -0
- package/dist/audio-transcription-runner-DPwmBYQj.js +1 -0
- package/dist/audio-transcription-runner-DSr6OIz1.js +1 -0
- package/dist/audit-C7RP7G_g.js +1 -0
- package/dist/audit-jkdcAUep.js +1 -0
- package/dist/audit-membership-runtime-BpRsMj5-.js +1 -0
- package/dist/audit-membership-runtime-BsfLZNBj.js +1 -0
- package/dist/audit-membership-runtime-DRHirRmx.js +1 -0
- package/dist/audit-membership-runtime-g0dEWJTp.js +1 -0
- package/dist/audit-membership-runtime-kdyToskD.js +1 -0
- package/dist/auth-choice-B7LSoXZ_.js +1 -0
- package/dist/auth-choice-CxMH4c-u.js +1 -0
- package/dist/auth-choice-DvTApGhx.js +1 -0
- package/dist/auth-choice-EQdNd7jO.js +1 -0
- package/dist/auth-choice-options-B3WQyS7I.js +1 -0
- package/dist/auth-choice-options-Dw14noox.js +1 -0
- package/dist/auth-choice-prompt-uegl56cf.js +1 -0
- package/dist/auth-choice-prompt-xYj13czb.js +1 -0
- package/dist/auth-choice.apply-helpers-B7S-PcH_.js +1 -0
- package/dist/auth-choice.apply-helpers-gaL-oSft.js +1 -0
- package/dist/auth-profiles-T8DuH3ax.js +1 -0
- package/dist/auth-token-9OTF1FmL.js +1 -0
- package/dist/auth-token-kGltuM6S.js +1 -0
- package/dist/banner-9u45RL26.js +1 -0
- package/dist/bonjour-discovery-CFZXPega.js +1 -0
- package/dist/bonjour-discovery-CjivQOxi.js +1 -0
- package/dist/boolean-Ch3DfXPy.js +1 -0
- package/dist/boolean-D15s2V33.js +1 -0
- package/dist/boolean-DypnRoRK.js +1 -0
- package/dist/brew-COcDl8CB.js +1 -0
- package/dist/brew-DDPm_HfE.js +1 -0
- package/dist/browser-cli-DQHE2iPY.js +1 -0
- package/dist/browser-cli-Dt0ds-an.js +1 -0
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +1 -0
- package/dist/bundled/bootstrap-extra-files/handler.js +1 -0
- package/dist/bundled/command-logger/handler.js +1 -0
- package/dist/bundled/session-memory/handler.js +1 -0
- package/dist/call-B8Fb4_oh.js +1 -0
- package/dist/call-CqoMqP5b.js +1 -0
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/canvas-host/a2ui/a2ui.bundle.js +1705 -2
- package/dist/channel-account-context-BMPAMZEv.js +1 -0
- package/dist/channel-account-context-DAcarnqW.js +1 -0
- package/dist/channel-activity-B04WbrrK.js +1 -0
- package/dist/channel-activity-BBrgoad1.js +1 -0
- package/dist/channel-activity-CgbOWaay.js +1 -0
- package/dist/channel-activity-YIMhOAUo.js +1 -0
- package/dist/channel-activity-YjYNzCpJ.js +1 -0
- package/dist/channel-options-CEIzjOno.js +1 -0
- package/dist/channel-options-D2syI791.js +1 -0
- package/dist/channel-selection-BBeE1TmB.js +1 -0
- package/dist/channel-selection-CbNtbAEf.js +1 -0
- package/dist/channel-web-BrElpZAc.js +1 -0
- package/dist/channel-web-CxHbET4B.js +1 -0
- package/dist/channels/plugins/actions/discord.js +1 -0
- package/dist/channels/plugins/actions/signal.js +1 -0
- package/dist/channels/plugins/actions/telegram.js +1 -0
- package/dist/channels/plugins/agent-tools/whatsapp-login.js +1 -0
- package/dist/channels-cli-BmAJuuRs.js +1 -0
- package/dist/channels-cli-Dgosczr6.js +1 -0
- package/dist/channels-status-issues-8eFrGKyf.js +1 -0
- package/dist/channels-status-issues-PRgOT90w.js +1 -0
- package/dist/chat-envelope-Bznn2SoS.js +1 -0
- package/dist/chat-envelope-HVpKusFc.js +1 -0
- package/dist/clack-prompter-DBPdGdqp.js +1 -0
- package/dist/clack-prompter-Dq0aY6iM.js +1 -0
- package/dist/clawbot-cli-CgS7TkEx.js +1 -0
- package/dist/clawbot-cli-DZ2K0OTk.js +1 -0
- package/dist/cleanup-utils-BWm70DoD.js +1 -0
- package/dist/cleanup-utils-D-RhEX6F.js +1 -0
- package/dist/cli-BcnoCo4z.js +1 -0
- package/dist/cli-D8T2tphD.js +1 -0
- package/dist/cli-utils-BY7dLMFy.js +1 -0
- package/dist/cli-utils-BleB1eys.js +1 -0
- package/dist/clipboard-Bk8cviBt.js +1 -0
- package/dist/clipboard-CKT_VIkG.js +1 -0
- package/dist/cmd-argv-BBT5l8AV.js +1 -0
- package/dist/cmd-argv-Bh-KpaZ0.js +1 -0
- package/dist/command-format-BbDT1tlm.js +1 -0
- package/dist/command-format-CLxIPuLR.js +1 -0
- package/dist/command-options-BpOUDl2S.js +1 -0
- package/dist/command-options-Bq5nQxz6.js +1 -0
- package/dist/command-poll-backoff-BZLHYB2k.js +1 -0
- package/dist/command-poll-backoff-Cww_r-24.js +1 -0
- package/dist/command-poll-backoff-Df6cOQrX.js +1 -0
- package/dist/command-poll-backoff-endAPdwn.js +1 -0
- package/dist/command-registry-CfuXCRwV.js +1 -0
- package/dist/command-secret-targets-BVN3kiT9.js +1 -0
- package/dist/command-secret-targets-BlN-J_fA.js +1 -0
- package/dist/commands-CGpM84iR.js +1 -0
- package/dist/commands-Dy7duWlt.js +1 -0
- package/dist/commands-registry-B1x54ukc.js +1 -0
- package/dist/commands-registry-Cpl4QnG4.js +1 -0
- package/dist/commands-registry-D40KqYOm.js +1 -0
- package/dist/commands-registry-SeddSmFK.js +1 -0
- package/dist/compact-Dg66DXx_.js +1 -0
- package/dist/completion-cli-BZi4nuQb.js +1 -0
- package/dist/completion-cli-C40TWdsv.js +1 -0
- package/dist/config-BqW5S1xL.js +1 -0
- package/dist/config-D12ZLKqh.js +1 -0
- package/dist/config-cli-1ojSLwAj.js +1 -0
- package/dist/config-cli-CBte2b1h.js +1 -0
- package/dist/config-guard-BTNXbWoO.js +1 -0
- package/dist/config-guard-sYYx9zEF.js +1 -0
- package/dist/config-validation-C1La_IZU.js +1 -0
- package/dist/config-validation-DviYxW8Y.js +1 -0
- package/dist/configure-DJrNDEpR.js +1 -0
- package/dist/configure-kod4tmZa.js +1 -0
- package/dist/connection-auth-B_Uk6Vk8.js +1 -0
- package/dist/connection-auth-C8iru0UB.js +1 -0
- package/dist/context-window-guard-7crlatf9.js +1 -0
- package/dist/context-window-guard-CPChk363.js +1 -0
- package/dist/control-ui-assets-BIa0GGDg.js +1 -0
- package/dist/control-ui-assets-CTHGGgaX.js +1 -0
- package/dist/cron-cli-Dha16Lo-.js +1 -0
- package/dist/cron-cli-QHS2pKZ_.js +1 -0
- package/dist/daemon-cli-BuXTzSnU.js +1 -0
- package/dist/daemon-cli-DOTKuS7d.js +1 -0
- package/dist/daemon-cli.js +1 -0
- package/dist/daemon-install-C30rBssi.js +1 -0
- package/dist/daemon-install-HrqlOCrc.js +1 -0
- package/dist/daemon-install-plan.shared-CfA37Ut_.js +1 -0
- package/dist/daemon-install-plan.shared-Dx3DBXCG.js +1 -0
- package/dist/daemon-runtime-DHiDbRuC.js +1 -0
- package/dist/daemon-runtime-VcpeBRJV.js +1 -0
- package/dist/dangerous-name-matching-BOmvAibz.js +1 -0
- package/dist/dangerous-name-matching-DtllRqBD.js +1 -0
- package/dist/dangerous-tools-CFRYQJ6V.js +1 -0
- package/dist/dangerous-tools-oYCu5wfC.js +1 -0
- package/dist/deliver-56mQkDw3.js +1 -0
- package/dist/deliver-BFQ4Zx9z.js +1 -0
- package/dist/deliver-BHuhHfkH.js +1 -0
- package/dist/deliver-ClBkV2eD.js +1 -0
- package/dist/delivery-queue-CKbauSFq.js +1 -0
- package/dist/delivery-queue-nkPJu0fY.js +1 -0
- package/dist/device-pairing-CTFpaTrD.js +1 -0
- package/dist/device-pairing-QTK0dod3.js +1 -0
- package/dist/devices-cli-Ckxd0k0I.js +1 -0
- package/dist/devices-cli-Db36mBHq.js +1 -0
- package/dist/diagnostic-BrE4lMIf.js +1 -0
- package/dist/diagnostic-CDxNevIQ.js +1 -0
- package/dist/diagnostic-DOzHPnht.js +1 -0
- package/dist/diagnostic-DQq4Bwrs.js +1 -0
- package/dist/diagnostics-BgbeL9KE.js +1 -0
- package/dist/diagnostics-Cdctg9K_.js +1 -0
- package/dist/directory-cli-DDTaUkjW.js +1 -0
- package/dist/directory-cli-_gTFSHMW.js +1 -0
- package/dist/dns-cli--4PwtR2Y.js +1 -0
- package/dist/dns-cli-C4DwKquN.js +1 -0
- package/dist/docs-cli-Cdw9Iz9a.js +1 -0
- package/dist/docs-cli-ClD2UyX1.js +1 -0
- package/dist/doctor-completion-BJ6steqx.js +1 -0
- package/dist/doctor-completion-DMJhfrtC.js +1 -0
- package/dist/doctor-config-flow-D4F3mz4h.js +1 -0
- package/dist/doctor-config-flow-DnOyVZhQ.js +1 -0
- package/dist/enable-BhD84GhD.js +1 -0
- package/dist/enable-Ccf9wSM8.js +1 -0
- package/dist/entry-status-CCwwKO43.js +1 -0
- package/dist/entry-status-CoXkbJcX.js +1 -0
- package/dist/entry.js +1 -0
- package/dist/env-D7wNuBx1.js +1 -0
- package/dist/env-overrides-DHtB4kK3.js +1 -0
- package/dist/env-overrides-DXJbFrwI.js +1 -0
- package/dist/errors-6SQWM9dj.js +1 -0
- package/dist/errors-Bunti32V.js +1 -0
- package/dist/exec-B3eleY5O.js +1 -0
- package/dist/exec-DHqLtFYt.js +1 -0
- package/dist/exec-approvals-BXO9Cezj.js +1 -0
- package/dist/exec-approvals-BpBNEy6i.js +1 -0
- package/dist/exec-approvals-allowlist-CE3nYh0K.js +1 -0
- package/dist/exec-approvals-allowlist-D8mN7nxV.js +1 -0
- package/dist/exec-approvals-cli-CUcuN63y.js +1 -0
- package/dist/exec-approvals-cli-CxUGD08t.js +1 -0
- package/dist/exec-safe-bin-runtime-policy-Dt0GchLp.js +1 -0
- package/dist/exec-safe-bin-runtime-policy-dcCS_Adf.js +1 -0
- package/dist/fetch-B9tORjG8.js +1 -0
- package/dist/fetch-BJT3BrkJ.js +1 -0
- package/dist/fetch-B_wRifvZ.js +1 -0
- package/dist/fetch-Bn0mWg6a.js +1 -0
- package/dist/fetch-CQaNr5J1.js +1 -0
- package/dist/fetch-Ce-scEU-.js +1 -0
- package/dist/fetch-D0rZDHKO.js +1 -0
- package/dist/fetch-DHo17YmK.js +1 -0
- package/dist/fetch-Dh-apy46.js +1 -0
- package/dist/fetch-Dikjvc5M.js +1 -0
- package/dist/fetch-DsjPfQlp.js +1 -0
- package/dist/fetch-_g8lZ8K8.js +1 -0
- package/dist/fetch-guard-BrTtJw7h.js +1 -0
- package/dist/fetch-guard-D10s0raB.js +1 -0
- package/dist/fetch-guard-DPdY0NXR.js +1 -0
- package/dist/fetch-guard-cu7DGSRF.js +1 -0
- package/dist/fetch-hy0JKSsm.js +1 -0
- package/dist/fetch-timeout-CdYxWG9w.js +1 -0
- package/dist/fetch-timeout-Cj8_oAls.js +1 -0
- package/dist/fetch-timeout-DoOI_izT.js +1 -0
- package/dist/fetch-timeout-u8g99Ax0.js +1 -0
- package/dist/format-Bn1bwJKX.js +1 -0
- package/dist/format-Ce7I7s-k.js +1 -0
- package/dist/format-duration-C8AzNqKh.js +1 -0
- package/dist/format-duration-D5AMtmHa.js +1 -0
- package/dist/format-relative-B9pSIdGe.js +1 -0
- package/dist/format-relative-DkMjYy7z.js +1 -0
- package/dist/frontmatter-BkZkwkVO.js +1 -0
- package/dist/frontmatter-C7mzDNxd.js +1 -0
- package/dist/frontmatter-CzpfPBFl.js +1 -0
- package/dist/gateway-cli-CKu0FA7D.js +1 -0
- package/dist/gateway-cli-C_s9eMlC.js +1 -0
- package/dist/gateway-install-token-BCnuZeh1.js +1 -0
- package/dist/gateway-install-token-DiDvDPJQ.js +1 -0
- package/dist/gateway-rpc-iFvDyHYd.js +1 -0
- package/dist/gateway-rpc-tEEvY0kH.js +1 -0
- package/dist/github-copilot-token-C79yeDKS.js +1 -0
- package/dist/github-copilot-token-DGYAlOmV.js +1 -0
- package/dist/github-copilot-token-DePP-lIf.js +1 -0
- package/dist/github-copilot-token-wm6mbypz.js +1 -0
- package/dist/gmail-setup-utils-CYOH3zzx.js +1 -0
- package/dist/gmail-setup-utils-S-MyEGuj.js +1 -0
- package/dist/group-access-BHKVOhrj.js +1 -0
- package/dist/group-access-D2DOYMfr.js +1 -0
- package/dist/health-BgOggK9k.js +1 -0
- package/dist/health-PaRHFItm.js +1 -0
- package/dist/health-format-B1nj3Wfn.js +1 -0
- package/dist/health-format-VBr6LEpt.js +1 -0
- package/dist/heartbeat-visibility-BQ_esv2m.js +1 -0
- package/dist/heartbeat-visibility-q74UdY8O.js +1 -0
- package/dist/help-format-B4aEI7V9.js +1 -0
- package/dist/help-format-BRbF_INg.js +1 -0
- package/dist/helpers-COz1ghcB.js +1 -0
- package/dist/helpers-Cp8gcO6u.js +1 -0
- package/dist/hooks-cli-BzyzTNBx.js +1 -0
- package/dist/hooks-cli-CsBrScq0.js +1 -0
- package/dist/hooks-status-BHt-Xvh4.js +1 -0
- package/dist/hooks-status-CRJ4J0ZW.js +1 -0
- package/dist/image-BkWwI54C.js +1 -0
- package/dist/image-CcVQg-YN.js +1 -0
- package/dist/image-Cm1RUBqD.js +1 -0
- package/dist/image-DsoO5VP5.js +1 -0
- package/dist/index.js +1 -0
- package/dist/inspect-BKV-I1UE.js +1 -0
- package/dist/inspect-z59cgmYc.js +1 -0
- package/dist/install-safe-path-C6kc_8NW.js +1 -0
- package/dist/install-safe-path-iesxijn2.js +1 -0
- package/dist/installs-BNeI_oML.js +1 -0
- package/dist/installs-C1xQLuby.js +1 -0
- package/dist/ipv4-BOuNtoGn.js +1 -0
- package/dist/ipv4-CWdaEiVH.js +1 -0
- package/dist/ir-BF0M2kGp.js +1 -0
- package/dist/ir-D8Hh84ab.js +1 -0
- package/dist/ir-DBWscfBd.js +1 -0
- package/dist/ir-Dk7OQ4bA.js +1 -0
- package/dist/is-main-DG5ueqhF.js +1 -0
- package/dist/issue-format-BT7cQEt3.js +1 -0
- package/dist/issue-format-C_lNzrKa.js +1 -0
- package/dist/kill-tree-B3g7HrAO.js +1 -0
- package/dist/lifecycle-core-D9KNCvxY.js +1 -0
- package/dist/lifecycle-core-LM5UUUB1.js +1 -0
- package/dist/line/accounts.js +1 -0
- package/dist/line/send.js +1 -0
- package/dist/line/template-messages.js +1 -0
- package/dist/links-CBnmRP9D.js +1 -0
- package/dist/links-CySwdMcF.js +1 -0
- package/dist/llm-slug-generator.js +1 -0
- package/dist/load-options-BsOW74dp.js +1 -0
- package/dist/load-options-C7dLuybp.js +1 -0
- package/dist/load-options-DV4j6Aqb.js +1 -0
- package/dist/load-options-Dwt0CeEg.js +1 -0
- package/dist/local-roots-6waH0SZ0.js +1 -0
- package/dist/logger-5W0OocJW.js +1 -0
- package/dist/logger-Bl8URnrW.js +1 -0
- package/dist/logger-DwWqfo66.js +1 -0
- package/dist/logger-kQAOe3qp.js +1 -0
- package/dist/logging-Dqe9dxSX.js +1 -0
- package/dist/logging-tYw1NbJd.js +1 -0
- package/dist/login-BOlqRyr0.js +1 -0
- package/dist/login-CkWesqf_.js +1 -0
- package/dist/login-Do_NA1Je.js +1 -0
- package/dist/login-op9S8yqv.js +1 -0
- package/dist/login-qr-B6rxvoTS.js +1 -0
- package/dist/login-qr-BGH9zmhw.js +1 -0
- package/dist/login-qr-CiENvgog.js +1 -0
- package/dist/login-qr-DsV-lxFd.js +1 -0
- package/dist/login-qr-QcDMg23y.js +1 -0
- package/dist/logs-cli-B4eUg_87.js +1 -0
- package/dist/logs-cli-BA3Aso8a.js +1 -0
- package/dist/manager-4Y9fRgdw.js +1 -0
- package/dist/manager-C2YW7Hkq.js +1 -0
- package/dist/manager-Dtd_loL8.js +1 -0
- package/dist/manager-M1GKhLUC.js +1 -0
- package/dist/memory-cli-XaxtBQm1.js +1 -0
- package/dist/memory-cli-jhzJ3as7.js +1 -0
- package/dist/model-catalog-C1kpjR75.js +1 -0
- package/dist/model-catalog-COVzoZD9.js +1 -0
- package/dist/model-param-b-B0r2cPDw.js +1 -0
- package/dist/model-param-b-BqIr5rY5.js +1 -0
- package/dist/model-picker-D3ZSpr0i.js +1 -0
- package/dist/model-picker-bZNuI66U.js +1 -0
- package/dist/model-selection-B5JsBS9D.js +1 -0
- package/dist/model-selection-BlC_rXAN.js +1 -0
- package/dist/model-selection-vfhBuN9O.js +1 -0
- package/dist/models-C_Vg3Cty.js +1 -0
- package/dist/models-cli-CDZliTXq.js +1 -0
- package/dist/models-cli-bGr8jwAb.js +1 -0
- package/dist/models-config-CdMhNxKV.js +1 -0
- package/dist/models-config-_htt7eY5.js +1 -0
- package/dist/mutable-allowlist-detectors-C4rNVag8.js +1 -0
- package/dist/mutable-allowlist-detectors-CL0qe54J.js +1 -0
- package/dist/node-cli-5lYbDZ70.js +1 -0
- package/dist/node-cli-Br04Qmqo.js +1 -0
- package/dist/node-command-policy-CejeQemH.js +1 -0
- package/dist/node-command-policy-CqXhdnHh.js +1 -0
- package/dist/node-commands-8GBOiktk.js +1 -0
- package/dist/node-commands-DdkziOTx.js +1 -0
- package/dist/node-resolve-B3BJbmQX.js +1 -0
- package/dist/node-resolve-DLZf3-1V.js +1 -0
- package/dist/node-service-BRfrNp8l.js +1 -0
- package/dist/node-service-C0bl7jcZ.js +1 -0
- package/dist/node-shell-DyOfwHrh.js +1 -0
- package/dist/nodes-cli-8By8--bW.js +1 -0
- package/dist/nodes-cli-zq41EwJN.js +1 -0
- package/dist/nodes-screen-DECgxo6A.js +1 -0
- package/dist/note-D4GAwgha.js +1 -0
- package/dist/note-Dp-d_utk.js +1 -0
- package/dist/npm-pack-install-B23L-AtF.js +1 -0
- package/dist/npm-pack-install-C0te3Oap.js +1 -0
- package/dist/npm-resolution-BnJGLwhi.js +1 -0
- package/dist/npm-resolution-DWPloph4.js +1 -0
- package/dist/oauth-env-DAamJ1oz.js +1 -0
- package/dist/oauth-env-DSLBTWb1.js +1 -0
- package/dist/oauth-tls-preflight-BSBRDIfC.js +1 -0
- package/dist/oauth-tls-preflight-ByNjbUR5.js +1 -0
- package/dist/ollama-setup-BMEKWyIE.js +1 -0
- package/dist/ollama-setup-DlwS6Gl-.js +1 -0
- package/dist/onboard-B0BNCQaO.js +1 -0
- package/dist/onboard-CjVhdaiR.js +1 -0
- package/dist/onboard-channels-BMIOddLN.js +1 -0
- package/dist/onboard-channels-CZK_7xMR.js +1 -0
- package/dist/onboard-config-B7U20YRw.js +1 -0
- package/dist/onboard-config-DS9dUv8M.js +1 -0
- package/dist/onboard-custom-B03SlEHB.js +1 -0
- package/dist/onboard-custom-Bl0y8c-g.js +1 -0
- package/dist/onboard-helpers-PGl5bVPE.js +1 -0
- package/dist/onboard-helpers-zwybUJWu.js +1 -0
- package/dist/onboard-hooks-CERzXObm.js +1 -0
- package/dist/onboard-hooks-gQ3sxBNi.js +1 -0
- package/dist/onboard-provider-auth-flags-CqbipO7D.js +1 -0
- package/dist/onboard-provider-auth-flags-Dvwzdz37.js +1 -0
- package/dist/onboard-remote-BOpIRdDu.js +1 -0
- package/dist/onboard-remote-DPU-H_2O.js +1 -0
- package/dist/onboard-search-f2tJD4hg.js +1 -0
- package/dist/onboard-search-fslKKhyg.js +1 -0
- package/dist/onboard-skills-BMAJs6ly.js +1 -0
- package/dist/onboard-skills-CMSQc2Mm.js +1 -0
- package/dist/onboarding-B6ixWwgp.js +1 -0
- package/dist/onboarding-ouEqUuUr.js +1 -0
- package/dist/onboarding.finalize-Bgat5Npc.js +1 -0
- package/dist/onboarding.finalize-DsMVlTcH.js +1 -0
- package/dist/onboarding.gateway-config-BtLDJWJ2.js +1 -0
- package/dist/onboarding.gateway-config-y3pqsL9i.js +1 -0
- package/dist/onboarding.secret-input-BsBgh8Tc.js +1 -0
- package/dist/onboarding.secret-input-kO5OzYC7.js +1 -0
- package/dist/openai-codex-model-default-DuE2_wN7.js +1 -0
- package/dist/openai-codex-model-default-yVfRw-Mm.js +1 -0
- package/dist/openai-model-default-Bl8MHPb6.js +1 -0
- package/dist/openai-model-default-DJObMvLJ.js +1 -0
- package/dist/openclaw-exec-env-BWbOu_YC.js +1 -0
- package/dist/openclaw-root-CnsBf6ZU.js +1 -0
- package/dist/openclaw-root-D_0Q6--h.js +1 -0
- package/dist/outbound-BOSIEiEY.js +1 -0
- package/dist/outbound-BtUeDLjU.js +1 -0
- package/dist/outbound-Bx2Z2aYK.js +1 -0
- package/dist/outbound-Bz8bbrMI.js +1 -0
- package/dist/outbound-attachment-B7wMxwj6.js +1 -0
- package/dist/outbound-attachment-BgAe99RM.js +1 -0
- package/dist/outbound-attachment-Dds8xirj.js +1 -0
- package/dist/outbound-attachment-DqEKghQp.js +1 -0
- package/dist/pairing-cli-Bya9M-I_.js +1 -0
- package/dist/pairing-cli-D2JEhufv.js +1 -0
- package/dist/pairing-labels-BUU_-70B.js +1 -0
- package/dist/pairing-labels-D-kzQEL2.js +1 -0
- package/dist/pairing-store-BH-FTYkn.js +1 -0
- package/dist/pairing-store-Cg2UxreQ.js +1 -0
- package/dist/pairing-token-BjYBuREl.js +1 -0
- package/dist/pairing-token-DAR7V7FJ.js +1 -0
- package/dist/parse-duration-XTjMKl8s.js +1 -0
- package/dist/parse-finite-number-DqzUM-_s.js +1 -0
- package/dist/parse-finite-number-dBmDLLKL.js +1 -0
- package/dist/parse-log-line-CsYLg7Qu.js +1 -0
- package/dist/parse-log-line-NV-cipB_.js +1 -0
- package/dist/parse-port-Bv1Y9Wk5.js +1 -0
- package/dist/parse-port-JVwkxcZ8.js +1 -0
- package/dist/parse-timeout-DWSGfCkQ.js +1 -0
- package/dist/parse-timeout-Dx4QnVzo.js +1 -0
- package/dist/path-alias-guards-kY_ZbWs-.js +1 -0
- package/dist/path-alias-guards-mvyLCPlN.js +1 -0
- package/dist/path-env-BPd1Yd-i.js +1 -0
- package/dist/path-env-emdAQejM.js +1 -0
- package/dist/path-safety-BukYK8Kd.js +1 -0
- package/dist/path-safety-DaaMJFdt.js +1 -0
- package/dist/paths-B4IRk3wi.js +1 -0
- package/dist/paths-BfjJY2VL.js +1 -0
- package/dist/paths-BjD3T_xq.js +1 -0
- package/dist/paths-BpQOWYiT.js +1 -0
- package/dist/paths-CChBdtE8.js +1 -0
- package/dist/paths-CrCoPIVK.js +1 -0
- package/dist/paths-piJASC5k.js +1 -0
- package/dist/paths-yLEk_25I.js +1 -0
- package/dist/pi-embedded-BZSn84Bh.js +1 -0
- package/dist/pi-embedded-Dsz7p3MF.js +1 -0
- package/dist/pi-model-discovery-BbD1YJNx.js +1 -0
- package/dist/pi-model-discovery-CpjYoBQf.js +1 -0
- package/dist/pi-model-discovery-DeQdHV8O.js +1 -0
- package/dist/pi-model-discovery-Dps1PPWz.js +1 -0
- package/dist/pi-tools.before-tool-call.runtime-DseAq0gm.js +1 -0
- package/dist/pi-tools.before-tool-call.runtime-KKGILAuK.js +1 -0
- package/dist/pi-tools.before-tool-call.runtime-Pck2WdIO.js +1 -0
- package/dist/pi-tools.before-tool-call.runtime-ZzMJQ1BP.js +1 -0
- package/dist/pi-tools.policy-D40r0HmD.js +1 -0
- package/dist/plugin-auto-enable-DpVL6-ES.js +1 -0
- package/dist/plugin-auto-enable-NzmNh4oU.js +1 -0
- package/dist/plugin-install-plan-BobX0y9S.js +1 -0
- package/dist/plugin-install-plan-NvDGp0d8.js +1 -0
- package/dist/plugin-registry-C6dY-Et7.js +1 -0
- package/dist/plugin-registry-CIBiHZH1.js +1 -0
- package/dist/plugin-sdk/account-id.cjs +1 -0
- package/dist/plugin-sdk/account-id.js +1 -0
- package/dist/plugin-sdk/acpx.cjs +1 -0
- package/dist/plugin-sdk/acpx.js +1 -0
- package/dist/plugin-sdk/active-listener-BApFQlQn.js +1 -0
- package/dist/plugin-sdk/active-listener-BETopzG5.cjs +1 -0
- package/dist/plugin-sdk/active-listener-BEcmvyxh.cjs +1 -0
- package/dist/plugin-sdk/active-listener-BZPPbsNy.cjs +1 -0
- package/dist/plugin-sdk/active-listener-B_Mxemq7.cjs +1 -0
- package/dist/plugin-sdk/active-listener-BgW_qfd3.js +1 -0
- package/dist/plugin-sdk/active-listener-Coet66pF.cjs +1 -0
- package/dist/plugin-sdk/active-listener-CvML9qVF.js +1 -0
- package/dist/plugin-sdk/active-listener-DuO6KMXJ.js +1 -0
- package/dist/plugin-sdk/active-listener-DymzfmOG.cjs +1 -0
- package/dist/plugin-sdk/active-listener-ILBdBHMv.js +1 -0
- package/dist/plugin-sdk/active-listener-gRRIfN1q.js +1 -0
- package/dist/plugin-sdk/api-key-rotation-Bj1A9Slo.cjs +1 -0
- package/dist/plugin-sdk/api-key-rotation-CFPNzksf.cjs +1 -0
- package/dist/plugin-sdk/api-key-rotation-CXY0AyM1.js +1 -0
- package/dist/plugin-sdk/api-key-rotation-ClIwV8yq.js +1 -0
- package/dist/plugin-sdk/api-key-rotation-D5Nr1xl3.js +1 -0
- package/dist/plugin-sdk/api-key-rotation-DDCwA0KM.cjs +1 -0
- package/dist/plugin-sdk/api-key-rotation-DHMvXm70.cjs +1 -0
- package/dist/plugin-sdk/api-key-rotation-DaFFZfk5.js +1 -0
- package/dist/plugin-sdk/api-key-rotation-DcREl_0x.js +1 -0
- package/dist/plugin-sdk/api-key-rotation-X-5Fb7av.cjs +1 -0
- package/dist/plugin-sdk/api-key-rotation-_VfXYfHS.js +1 -0
- package/dist/plugin-sdk/api-key-rotation-wFUVOOfM.cjs +1 -0
- package/dist/plugin-sdk/audio-preflight-B1MP5_bc.cjs +1 -0
- package/dist/plugin-sdk/audio-preflight-BETx142T.cjs +1 -0
- package/dist/plugin-sdk/audio-preflight-BGRLhCLc.cjs +1 -0
- package/dist/plugin-sdk/audio-preflight-BNICfOY5.cjs +1 -0
- package/dist/plugin-sdk/audio-preflight-BV3Cav8M.js +1 -0
- package/dist/plugin-sdk/audio-preflight-BmO72Cqr.cjs +1 -0
- package/dist/plugin-sdk/audio-preflight-BpE8wFQc.js +1 -0
- package/dist/plugin-sdk/audio-preflight-CTAafaiH.js +1 -0
- package/dist/plugin-sdk/audio-preflight-D82aewIt.js +1 -0
- package/dist/plugin-sdk/audio-preflight-DmzxEaq3.cjs +1 -0
- package/dist/plugin-sdk/audio-preflight-DrSIYRnD.js +1 -0
- package/dist/plugin-sdk/audio-preflight-SZZoA2Ff.js +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-B54MyF1_.js +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-BIqM5H5q.js +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-BLAxZL-U.js +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-BVmaaA2k.js +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-BdY-TMcc.js +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-By3lSLub.cjs +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-CH5CoZrF.cjs +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-CMsp7bhn.cjs +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-ClGibmMi.cjs +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-QfEC19vE.cjs +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-g7L0m-Z5.cjs +1 -0
- package/dist/plugin-sdk/audio-transcription-runner-pVTD93vq.js +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-7LqcvqFo.js +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-BQFUzFc0.cjs +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-BYtdDX9G.cjs +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-BzEtBUX6.cjs +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-CBUmGrl4.js +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-ChlVgt2y.js +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-DLRX7LR0.js +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-DbJW5X3L.cjs +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-Du9LAxDa.cjs +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-DylNnj1m.js +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-voi5sPwF.js +1 -0
- package/dist/plugin-sdk/audit-membership-runtime-yWYvSpgZ.cjs +1 -0
- package/dist/plugin-sdk/bluebubbles.cjs +1 -0
- package/dist/plugin-sdk/bluebubbles.js +1 -0
- package/dist/plugin-sdk/channel-activity-BGK-Bj2_.cjs +1 -0
- package/dist/plugin-sdk/channel-activity-BRHvpV0C.js +1 -0
- package/dist/plugin-sdk/channel-activity-CKfWFchu.js +1 -0
- package/dist/plugin-sdk/channel-activity-CLUi31fX.cjs +1 -0
- package/dist/plugin-sdk/channel-activity-CVOp-PL4.cjs +1 -0
- package/dist/plugin-sdk/channel-activity-CgXnZ0GC.cjs +1 -0
- package/dist/plugin-sdk/channel-activity-CmYpOPAn.js +1 -0
- package/dist/plugin-sdk/channel-activity-CwaMf9qT.cjs +1 -0
- package/dist/plugin-sdk/channel-activity-D5D5tBWf.cjs +1 -0
- package/dist/plugin-sdk/channel-activity-D7tpmatp.js +1 -0
- package/dist/plugin-sdk/channel-activity-DpxSOlXF.js +1 -0
- package/dist/plugin-sdk/channel-activity-spvDzlTl.js +1 -0
- package/dist/plugin-sdk/channel-web-4ZQVqsrt.js +1 -0
- package/dist/plugin-sdk/channel-web-9zn1Itpg.cjs +1 -0
- package/dist/plugin-sdk/channel-web-BrB00HKH.js +1 -0
- package/dist/plugin-sdk/channel-web-DN5La-Ol.cjs +1 -0
- package/dist/plugin-sdk/command-poll-backoff-4910Mpwp.js +1 -0
- package/dist/plugin-sdk/command-poll-backoff-BLJZzV5W.cjs +1 -0
- package/dist/plugin-sdk/command-poll-backoff-CUNcN0dv.cjs +1 -0
- package/dist/plugin-sdk/command-poll-backoff-Cww_r-24.js +1 -0
- package/dist/plugin-sdk/command-poll-backoff-D0lJhquZ.js +1 -0
- package/dist/plugin-sdk/command-poll-backoff-Glwt3wHa.cjs +1 -0
- package/dist/plugin-sdk/commands-registry-5lStNoKW.cjs +1 -0
- package/dist/plugin-sdk/commands-registry-C8wnXqNa.cjs +1 -0
- package/dist/plugin-sdk/commands-registry-Cnr6PvIw.js +1 -0
- package/dist/plugin-sdk/commands-registry-CtYCWfuM.cjs +1 -0
- package/dist/plugin-sdk/commands-registry-D2gv242l.js +1 -0
- package/dist/plugin-sdk/commands-registry-DI2vPscP.js +1 -0
- package/dist/plugin-sdk/commands-registry-DcBvmwSU.js +1 -0
- package/dist/plugin-sdk/commands-registry-DkUhCIDk.cjs +1 -0
- package/dist/plugin-sdk/commands-registry-DsMbmie-.cjs +1 -0
- package/dist/plugin-sdk/commands-registry-MCsWR5Vf.js +1 -0
- package/dist/plugin-sdk/commands-registry-SHZVq_qf.cjs +1 -0
- package/dist/plugin-sdk/commands-registry-kRjFifgj.js +1 -0
- package/dist/plugin-sdk/common-B4iFXuoZ.cjs +1 -0
- package/dist/plugin-sdk/common-B6fDMl_i.js +1 -0
- package/dist/plugin-sdk/compat.cjs +1 -0
- package/dist/plugin-sdk/compat.js +1 -0
- package/dist/plugin-sdk/config-ByA2hluR.js +1 -0
- package/dist/plugin-sdk/config-rBz8C_Hi.cjs +1 -0
- package/dist/plugin-sdk/copilot-proxy.cjs +1 -0
- package/dist/plugin-sdk/copilot-proxy.js +1 -0
- package/dist/plugin-sdk/core.cjs +1 -0
- package/dist/plugin-sdk/core.js +1 -0
- package/dist/plugin-sdk/deliver-B0fB4hAV.js +1 -0
- package/dist/plugin-sdk/deliver-BOLmjIJ3.js +1 -0
- package/dist/plugin-sdk/deliver-BrfVwkYz.cjs +1 -0
- package/dist/plugin-sdk/deliver-C-tChWTI.cjs +1 -0
- package/dist/plugin-sdk/deliver-CjQPkWS-.cjs +1 -0
- package/dist/plugin-sdk/deliver-D1P0FNTu.js +1 -0
- package/dist/plugin-sdk/deliver-DCrO9mvv.cjs +1 -0
- package/dist/plugin-sdk/deliver-DQLekoj2.cjs +1 -0
- package/dist/plugin-sdk/deliver-DkfCVM78.js +1 -0
- package/dist/plugin-sdk/deliver-Dkh3lqXR.js +1 -0
- package/dist/plugin-sdk/deliver-DsFtXFyr.cjs +1 -0
- package/dist/plugin-sdk/deliver-vYe_sYOL.js +1 -0
- package/dist/plugin-sdk/device-pair.cjs +1 -0
- package/dist/plugin-sdk/device-pair.js +1 -0
- package/dist/plugin-sdk/diagnostic-8iX73nz_.cjs +1 -0
- package/dist/plugin-sdk/diagnostic-CLUtpxAp.js +1 -0
- package/dist/plugin-sdk/diagnostic-CVS4k9hh.cjs +1 -0
- package/dist/plugin-sdk/diagnostic-CkePwN5F.js +1 -0
- package/dist/plugin-sdk/diagnostic-Cu1PGj0E.cjs +1 -0
- package/dist/plugin-sdk/diagnostic-D0oCfBju.cjs +1 -0
- package/dist/plugin-sdk/diagnostic-D7A9cQYf.cjs +1 -0
- package/dist/plugin-sdk/diagnostic-DGLX0zXU.js +1 -0
- package/dist/plugin-sdk/diagnostic-DXscFT8t.cjs +1 -0
- package/dist/plugin-sdk/diagnostic-Efe4b81B.js +1 -0
- package/dist/plugin-sdk/diagnostic-EqHqw9xo.js +1 -0
- package/dist/plugin-sdk/diagnostic-vsjHZ_fY.js +1 -0
- package/dist/plugin-sdk/diagnostics-otel.cjs +1 -0
- package/dist/plugin-sdk/diagnostics-otel.js +1 -0
- package/dist/plugin-sdk/diffs.cjs +1 -0
- package/dist/plugin-sdk/diffs.js +1 -0
- package/dist/plugin-sdk/discord.cjs +1 -0
- package/dist/plugin-sdk/discord.js +1 -0
- package/dist/plugin-sdk/dispatch-5v3v8zzA.js +1 -0
- package/dist/plugin-sdk/dispatch-B6UbZCpL.cjs +1 -0
- package/dist/plugin-sdk/dispatch-BYlcmJ9u.js +1 -0
- package/dist/plugin-sdk/dispatch-C2YTqGlf.js +1 -0
- package/dist/plugin-sdk/dispatch-CNy3g9ma.cjs +1 -0
- package/dist/plugin-sdk/dispatch-DCSwqteL.js +1 -0
- package/dist/plugin-sdk/dispatch-DHbSBeFJ.js +1 -0
- package/dist/plugin-sdk/dispatch-DK5ub8qa.cjs +1 -0
- package/dist/plugin-sdk/dispatch-SWyfAZT0.cjs +1 -0
- package/dist/plugin-sdk/dispatch-mR2vLkGa.cjs +1 -0
- package/dist/plugin-sdk/feishu.cjs +1 -0
- package/dist/plugin-sdk/feishu.js +1 -0
- package/dist/plugin-sdk/fetch-7Iq9POda.js +1 -0
- package/dist/plugin-sdk/fetch-B1GR6-u4.js +1 -0
- package/dist/plugin-sdk/fetch-B27H-XCf.js +1 -0
- package/dist/plugin-sdk/fetch-BMYDLRWo.js +1 -0
- package/dist/plugin-sdk/fetch-BN9y3kTg.cjs +1 -0
- package/dist/plugin-sdk/fetch-BVEVk5YF.js +1 -0
- package/dist/plugin-sdk/fetch-BY6lVRlY.cjs +1 -0
- package/dist/plugin-sdk/fetch-Bi8krAaT.cjs +1 -0
- package/dist/plugin-sdk/fetch-BjXhwqrE.cjs +1 -0
- package/dist/plugin-sdk/fetch-BtZY623f.js +1 -0
- package/dist/plugin-sdk/fetch-C-HRWp5R.js +1 -0
- package/dist/plugin-sdk/fetch-C3LEMysf.js +1 -0
- package/dist/plugin-sdk/fetch-CCLWsYaQ.js +1 -0
- package/dist/plugin-sdk/fetch-CZewCAvu.cjs +1 -0
- package/dist/plugin-sdk/fetch-ClKErpni.cjs +1 -0
- package/dist/plugin-sdk/fetch-DBRI0sKI.js +1 -0
- package/dist/plugin-sdk/fetch-DQxuOB8o.cjs +1 -0
- package/dist/plugin-sdk/fetch-DUMEaqum.cjs +1 -0
- package/dist/plugin-sdk/fetch-DpwR_cJU.cjs +1 -0
- package/dist/plugin-sdk/fetch-J0IzopiJ.js +1 -0
- package/dist/plugin-sdk/fetch-guard-8I7EHbDM.cjs +1 -0
- package/dist/plugin-sdk/fetch-guard-CIJUkBIL.cjs +1 -0
- package/dist/plugin-sdk/fetch-guard-CY03i4gu.js +1 -0
- package/dist/plugin-sdk/fetch-guard-Cz-cgYmR.cjs +1 -0
- package/dist/plugin-sdk/fetch-guard-DB85MORy.cjs +1 -0
- package/dist/plugin-sdk/fetch-guard-DE9BslxX.js +1 -0
- package/dist/plugin-sdk/fetch-guard-DLNzldn9.cjs +1 -0
- package/dist/plugin-sdk/fetch-guard-DSvAbvSx.js +1 -0
- package/dist/plugin-sdk/fetch-guard-DXe8oqEE.js +1 -0
- package/dist/plugin-sdk/fetch-guard-DY9jpsXo.cjs +1 -0
- package/dist/plugin-sdk/fetch-guard-DbOZYxyN.js +1 -0
- package/dist/plugin-sdk/fetch-guard-_fifU0fX.js +1 -0
- package/dist/plugin-sdk/fetch-lw-aF17e.cjs +1 -0
- package/dist/plugin-sdk/fetch-timeout-6oZsqWxA.js +1 -0
- package/dist/plugin-sdk/fetch-timeout-BygUD0rd.cjs +1 -0
- package/dist/plugin-sdk/fetch-timeout-CLw1U7VS.js +1 -0
- package/dist/plugin-sdk/fetch-timeout-CX1w-9p4.cjs +1 -0
- package/dist/plugin-sdk/fetch-timeout-Coc9xyC3.cjs +1 -0
- package/dist/plugin-sdk/fetch-timeout-Cz6GuU_c.js +1 -0
- package/dist/plugin-sdk/fetch-timeout-DC8T2JCr.js +1 -0
- package/dist/plugin-sdk/fetch-timeout-DFDmks9T.cjs +1 -0
- package/dist/plugin-sdk/fetch-timeout-DkYpp08Q.js +1 -0
- package/dist/plugin-sdk/github-copilot-token-BHdMLLqf.cjs +1 -0
- package/dist/plugin-sdk/github-copilot-token-Bt4PduRB.js +1 -0
- package/dist/plugin-sdk/github-copilot-token-C1O2cBqk.cjs +1 -0
- package/dist/plugin-sdk/github-copilot-token-C1hiDugd.js +1 -0
- package/dist/plugin-sdk/github-copilot-token-C8j8_NjX.js +1 -0
- package/dist/plugin-sdk/github-copilot-token-CCrgp2py.cjs +1 -0
- package/dist/plugin-sdk/github-copilot-token-DoHgkI2r.cjs +1 -0
- package/dist/plugin-sdk/github-copilot-token-N8vnLZPw.js +1 -0
- package/dist/plugin-sdk/github-copilot-token-TMkfxxD2.cjs +1 -0
- package/dist/plugin-sdk/github-copilot-token-vKAKX6iE.js +1 -0
- package/dist/plugin-sdk/github-copilot-token-ylX_gawo.js +1 -0
- package/dist/plugin-sdk/github-copilot-token-zskwAEpd.cjs +1 -0
- package/dist/plugin-sdk/google-gemini-cli-auth.cjs +1 -0
- package/dist/plugin-sdk/google-gemini-cli-auth.js +1 -0
- package/dist/plugin-sdk/googlechat.cjs +1 -0
- package/dist/plugin-sdk/googlechat.js +1 -0
- package/dist/plugin-sdk/image-B6HEHWlJ.js +1 -0
- package/dist/plugin-sdk/image-Bte8cr4F.js +1 -0
- package/dist/plugin-sdk/image-BxafJgQ6.cjs +1 -0
- package/dist/plugin-sdk/image-CDI5SqeR.js +1 -0
- package/dist/plugin-sdk/image-CTgwucug.cjs +1 -0
- package/dist/plugin-sdk/image-CWnsS03L.js +1 -0
- package/dist/plugin-sdk/image-CoksjGBL.cjs +1 -0
- package/dist/plugin-sdk/image-CuOIoxl2.cjs +1 -0
- package/dist/plugin-sdk/image-DJyEMzkq.cjs +1 -0
- package/dist/plugin-sdk/image-DegWnAZU.cjs +1 -0
- package/dist/plugin-sdk/image-TCSQZpr6.js +1 -0
- package/dist/plugin-sdk/image-aG-5S1vd.js +1 -0
- package/dist/plugin-sdk/imessage.cjs +1 -0
- package/dist/plugin-sdk/imessage.js +1 -0
- package/dist/plugin-sdk/index.cjs +1 -0
- package/dist/plugin-sdk/index.js +1 -0
- package/dist/plugin-sdk/ir-8rDh7div.js +1 -0
- package/dist/plugin-sdk/ir-Bh6lKGdS.js +1 -0
- package/dist/plugin-sdk/ir-C3VNqnc2.cjs +1 -0
- package/dist/plugin-sdk/ir-CZOtKajq.cjs +1 -0
- package/dist/plugin-sdk/ir-CveCWs8q.cjs +1 -0
- package/dist/plugin-sdk/ir-DAxY-7c1.cjs +1 -0
- package/dist/plugin-sdk/ir-DSuLr2UE.cjs +1 -0
- package/dist/plugin-sdk/ir-DanxCjD-.cjs +1 -0
- package/dist/plugin-sdk/ir-Dgc6qZMX.js +1 -0
- package/dist/plugin-sdk/ir-OBi5zaEW.js +1 -0
- package/dist/plugin-sdk/ir-hQ6EW92h.js +1 -0
- package/dist/plugin-sdk/ir-ynWQeZD9.js +1 -0
- package/dist/plugin-sdk/irc.cjs +1 -0
- package/dist/plugin-sdk/irc.js +1 -0
- package/dist/plugin-sdk/keyed-async-queue.cjs +1 -0
- package/dist/plugin-sdk/keyed-async-queue.js +1 -0
- package/dist/plugin-sdk/line.cjs +1 -0
- package/dist/plugin-sdk/line.js +1 -0
- package/dist/plugin-sdk/llm-task.cjs +1 -0
- package/dist/plugin-sdk/llm-task.js +1 -0
- package/dist/plugin-sdk/load-options-B9Ss5YOO.js +1 -0
- package/dist/plugin-sdk/load-options-BOfn6Zgo.cjs +1 -0
- package/dist/plugin-sdk/load-options-BXvm8HVv.js +1 -0
- package/dist/plugin-sdk/load-options-Bb7u8yZz.cjs +1 -0
- package/dist/plugin-sdk/load-options-BcSg1ODN.js +1 -0
- package/dist/plugin-sdk/load-options-NqnXJ-Nh.cjs +1 -0
- package/dist/plugin-sdk/lobster.cjs +1 -0
- package/dist/plugin-sdk/lobster.js +1 -0
- package/dist/plugin-sdk/local-roots-5udQUs81.js +1 -0
- package/dist/plugin-sdk/local-roots-BmhNPIJm.cjs +1 -0
- package/dist/plugin-sdk/local-roots-C5UoE741.cjs +1 -0
- package/dist/plugin-sdk/local-roots-Ca8KoAAp.js +1 -0
- package/dist/plugin-sdk/local-roots-CeAYfmPb.cjs +1 -0
- package/dist/plugin-sdk/local-roots-Cu7YCpql.cjs +1 -0
- package/dist/plugin-sdk/local-roots-D0yN794S.js +1 -0
- package/dist/plugin-sdk/local-roots-D4i3H0UG.cjs +1 -0
- package/dist/plugin-sdk/local-roots-DGe-SRNu.js +1 -0
- package/dist/plugin-sdk/local-roots-bWA2msT0.js +1 -0
- package/dist/plugin-sdk/local-roots-tee85Q-1.js +1 -0
- package/dist/plugin-sdk/local-roots-wTkpE7go.cjs +1 -0
- package/dist/plugin-sdk/logger-6O6OsYBL.cjs +1 -0
- package/dist/plugin-sdk/logger-BlddiV_d.cjs +1 -0
- package/dist/plugin-sdk/logger-Bm93ZKOk.cjs +1 -0
- package/dist/plugin-sdk/logger-BtrWb0dj.js +1 -0
- package/dist/plugin-sdk/logger-C210xuWx.js +1 -0
- package/dist/plugin-sdk/logger-DJGHvDbX.js +1 -0
- package/dist/plugin-sdk/logger-DPlqYkRm.cjs +1 -0
- package/dist/plugin-sdk/logger-DUYnS-W3.cjs +1 -0
- package/dist/plugin-sdk/logger-DwWqfo66.js +1 -0
- package/dist/plugin-sdk/logger-vBDTZWl3.js +1 -0
- package/dist/plugin-sdk/login-B5IwNcl4.cjs +1 -0
- package/dist/plugin-sdk/login-BIbt7ZL_.js +1 -0
- package/dist/plugin-sdk/login-CxnDKwXC.js +1 -0
- package/dist/plugin-sdk/login-D5iTWowo.cjs +1 -0
- package/dist/plugin-sdk/login-DHE1rzB1.js +1 -0
- package/dist/plugin-sdk/login-DIPBcPQc.cjs +1 -0
- package/dist/plugin-sdk/login-DtDOozuU.js +1 -0
- package/dist/plugin-sdk/login-UrWNtI80.cjs +1 -0
- package/dist/plugin-sdk/login-VviMkBU2.js +1 -0
- package/dist/plugin-sdk/login-jQwwt6C-.js +1 -0
- package/dist/plugin-sdk/login-mGjCzJzb.cjs +1 -0
- package/dist/plugin-sdk/login-pZnnpj38.cjs +1 -0
- package/dist/plugin-sdk/login-qr-BexuTIDJ.cjs +1 -0
- package/dist/plugin-sdk/login-qr-C366Qlh-.cjs +1 -0
- package/dist/plugin-sdk/login-qr-CQY4ty0o.js +1 -0
- package/dist/plugin-sdk/login-qr-CSabEb-n.cjs +1 -0
- package/dist/plugin-sdk/login-qr-CUgNKijx.js +1 -0
- package/dist/plugin-sdk/login-qr-C_LEw1Bi.js +1 -0
- package/dist/plugin-sdk/login-qr-CcPvldsG.js +1 -0
- package/dist/plugin-sdk/login-qr-CnNGKwDR.cjs +1 -0
- package/dist/plugin-sdk/login-qr-DQm50pXk.js +1 -0
- package/dist/plugin-sdk/login-qr-DayvAWkx.js +1 -0
- package/dist/plugin-sdk/login-qr-eodIsL9V.cjs +1 -0
- package/dist/plugin-sdk/login-qr-yIJE7MmY.cjs +1 -0
- package/dist/plugin-sdk/manager-932XljTT.js +1 -0
- package/dist/plugin-sdk/manager-CGHd5p2T.js +1 -0
- package/dist/plugin-sdk/manager-CbGA_JDa.js +1 -0
- package/dist/plugin-sdk/manager-CdD7HaGW.cjs +1 -0
- package/dist/plugin-sdk/manager-CmAH_a7A.cjs +1 -0
- package/dist/plugin-sdk/manager-DIS4ywpb.cjs +1 -0
- package/dist/plugin-sdk/manager-DQ2C-2IU.cjs +1 -0
- package/dist/plugin-sdk/manager-DdvFnsT7.cjs +1 -0
- package/dist/plugin-sdk/manager-DfdDglld.js +1 -0
- package/dist/plugin-sdk/manager-MR9stU_p.js +1 -0
- package/dist/plugin-sdk/manager-WwW37IUu.js +1 -0
- package/dist/plugin-sdk/manager-gE9187gu.cjs +1 -0
- package/dist/plugin-sdk/matrix.cjs +1 -0
- package/dist/plugin-sdk/matrix.js +1 -0
- package/dist/plugin-sdk/mattermost.cjs +1 -0
- package/dist/plugin-sdk/mattermost.js +1 -0
- package/dist/plugin-sdk/memory-core.cjs +1 -0
- package/dist/plugin-sdk/memory-core.js +1 -0
- package/dist/plugin-sdk/minimax-portal-auth.cjs +1 -0
- package/dist/plugin-sdk/minimax-portal-auth.js +1 -0
- package/dist/plugin-sdk/model-auth-BpS4IWDi.cjs +1 -0
- package/dist/plugin-sdk/model-auth-BwajGuoF.cjs +1 -0
- package/dist/plugin-sdk/model-auth-C1YL9HcW.js +1 -0
- package/dist/plugin-sdk/model-auth-Cc-8H6Cu.js +1 -0
- package/dist/plugin-sdk/model-auth-Cw3fuhm_.js +1 -0
- package/dist/plugin-sdk/model-auth-CycDtQl-.js +1 -0
- package/dist/plugin-sdk/model-auth-D-7xiXhK.cjs +1 -0
- package/dist/plugin-sdk/model-auth-TFUxaK0f.cjs +1 -0
- package/dist/plugin-sdk/model-selection-BADTZM9n.cjs +1 -0
- package/dist/plugin-sdk/model-selection-DUAudCtL.js +1 -0
- package/dist/plugin-sdk/msteams.cjs +1 -0
- package/dist/plugin-sdk/msteams.js +1 -0
- package/dist/plugin-sdk/nextcloud-talk.cjs +1 -0
- package/dist/plugin-sdk/nextcloud-talk.js +1 -0
- package/dist/plugin-sdk/nostr.cjs +1 -0
- package/dist/plugin-sdk/nostr.js +1 -0
- package/dist/plugin-sdk/outbound-2Lo6mZEY.js +1 -0
- package/dist/plugin-sdk/outbound-9XFlZzaF.cjs +1 -0
- package/dist/plugin-sdk/outbound-BlWsUmjQ.js +1 -0
- package/dist/plugin-sdk/outbound-Bs2rUcWZ.cjs +1 -0
- package/dist/plugin-sdk/outbound-C18nEOFP.js +1 -0
- package/dist/plugin-sdk/outbound-CW3o4Eng.cjs +1 -0
- package/dist/plugin-sdk/outbound-CzsdW5sy.js +1 -0
- package/dist/plugin-sdk/outbound-DcP22VOo.cjs +1 -0
- package/dist/plugin-sdk/outbound-QhOJAEO8.cjs +1 -0
- package/dist/plugin-sdk/outbound-attachment-1pf06Oiu.cjs +1 -0
- package/dist/plugin-sdk/outbound-attachment-B8-ZVX2i.cjs +1 -0
- package/dist/plugin-sdk/outbound-attachment-BDwI_tn0.cjs +1 -0
- package/dist/plugin-sdk/outbound-attachment-BXhbJils.js +1 -0
- package/dist/plugin-sdk/outbound-attachment-Bgf1pCh8.js +1 -0
- package/dist/plugin-sdk/outbound-attachment-COgf85S8.cjs +1 -0
- package/dist/plugin-sdk/outbound-attachment-CfN9OvMC.js +1 -0
- package/dist/plugin-sdk/outbound-attachment-CftilZWd.js +1 -0
- package/dist/plugin-sdk/outbound-attachment-Cujprd6T.cjs +1 -0
- package/dist/plugin-sdk/outbound-attachment-CvSHb9ci.js +1 -0
- package/dist/plugin-sdk/outbound-attachment-DQYtdTUw.js +1 -0
- package/dist/plugin-sdk/outbound-attachment-FqWC0WJx.cjs +1 -0
- package/dist/plugin-sdk/outbound-dTvIiFIZ.js +1 -0
- package/dist/plugin-sdk/outbound-fZ1WJGfe.cjs +1 -0
- package/dist/plugin-sdk/outbound-oHoWYWxf.js +1 -0
- package/dist/plugin-sdk/paths-BPlgbwrb.cjs +1 -0
- package/dist/plugin-sdk/paths-Bcdg3ma0.cjs +1 -0
- package/dist/plugin-sdk/paths-BpQOWYiT.js +1 -0
- package/dist/plugin-sdk/paths-BvlJvmRS.cjs +1 -0
- package/dist/plugin-sdk/paths-CIcxeNL-.cjs +1 -0
- package/dist/plugin-sdk/paths-CXgWvWAM.js +1 -0
- package/dist/plugin-sdk/paths-Chp3zwtq.cjs +1 -0
- package/dist/plugin-sdk/paths-CnHSNSeR.js +1 -0
- package/dist/plugin-sdk/paths-Cqca1YmF.cjs +1 -0
- package/dist/plugin-sdk/paths-CtrEseGU.js +1 -0
- package/dist/plugin-sdk/paths-D55o_j8-.js +1 -0
- package/dist/plugin-sdk/paths-D90l3h_o.cjs +1 -0
- package/dist/plugin-sdk/paths-DaRoqzBQ.js +1 -0
- package/dist/plugin-sdk/paths-Dd7r1qlB.cjs +1 -0
- package/dist/plugin-sdk/paths-DhSjTRMz.js +1 -0
- package/dist/plugin-sdk/paths-Do0djuaj.js +1 -0
- package/dist/plugin-sdk/paths-J4JUiRsa.js +1 -0
- package/dist/plugin-sdk/paths-cBAF6Bj0.js +1 -0
- package/dist/plugin-sdk/paths-piJASC5k.js +1 -0
- package/dist/plugin-sdk/paths-rO4ehkyU.js +1 -0
- package/dist/plugin-sdk/pi-model-discovery-B9boErNZ.cjs +1 -0
- package/dist/plugin-sdk/pi-model-discovery-BJ8wTgFH.cjs +1 -0
- package/dist/plugin-sdk/pi-model-discovery-Bb2vCP6M.js +1 -0
- package/dist/plugin-sdk/pi-model-discovery-Bor7jHYd.js +1 -0
- package/dist/plugin-sdk/pi-model-discovery-BrTw1qE2.cjs +1 -0
- package/dist/plugin-sdk/pi-model-discovery-BuEMyAsU.js +1 -0
- package/dist/plugin-sdk/pi-model-discovery-CV9NTjC4.js +1 -0
- package/dist/plugin-sdk/pi-model-discovery-D5tLf04u.js +1 -0
- package/dist/plugin-sdk/pi-model-discovery-D5xlUS2J.cjs +1 -0
- package/dist/plugin-sdk/pi-model-discovery-DGoPUzBj.cjs +1 -0
- package/dist/plugin-sdk/pi-model-discovery-DMrqvV1O.cjs +1 -0
- package/dist/plugin-sdk/pi-model-discovery-DoY7qnlI.cjs +1 -0
- package/dist/plugin-sdk/pi-model-discovery-Dqq9Vm8o.js +1 -0
- package/dist/plugin-sdk/pi-model-discovery-zCuISPPq.js +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-4238P8NF.js +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BEoqzgFe.cjs +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BGPjibRD.js +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BJ_amISU.cjs +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BX2r_qPT.cjs +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CGLHFxSr.js +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CsNn_Lv8.js +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CsiKBTHg.cjs +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CuXQQk4F.cjs +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-DNatrz-3.cjs +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-PApjB0tY.js +1 -0
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-xsXDBYNq.js +1 -0
- package/dist/plugin-sdk/polls-BuaJuIpV.cjs +1 -0
- package/dist/plugin-sdk/polls-CBAGZuJ6.js +1 -0
- package/dist/plugin-sdk/polls-CSKMbBIS.js +1 -0
- package/dist/plugin-sdk/polls-D0wY0FvT.cjs +1 -0
- package/dist/plugin-sdk/polls-PGxiE05J.js +1 -0
- package/dist/plugin-sdk/polls-yWqSCEP0.cjs +1 -0
- package/dist/plugin-sdk/proxy-env-B765haXA.js +1 -0
- package/dist/plugin-sdk/proxy-env-Bcl14j2_.cjs +1 -0
- package/dist/plugin-sdk/proxy-env-BlrHtJWH.js +1 -0
- package/dist/plugin-sdk/proxy-env-D48qBPAr.cjs +1 -0
- package/dist/plugin-sdk/proxy-env-DGzNnnJh.js +1 -0
- package/dist/plugin-sdk/proxy-env-DQoJjkWE.cjs +1 -0
- package/dist/plugin-sdk/proxy-env-DWw9TnOj.cjs +1 -0
- package/dist/plugin-sdk/proxy-env-MEjSyzTr.js +1 -0
- package/dist/plugin-sdk/proxy-env-a590sPAz.cjs +1 -0
- package/dist/plugin-sdk/proxy-env-k93igu7v.cjs +1 -0
- package/dist/plugin-sdk/proxy-env-m9eG3uZN.js +1 -0
- package/dist/plugin-sdk/proxy-env-t6hcaFqC.js +1 -0
- package/dist/plugin-sdk/proxy-fetch-B9aXJVe-.js +1 -0
- package/dist/plugin-sdk/proxy-fetch-BaA3JYgW.cjs +1 -0
- package/dist/plugin-sdk/proxy-fetch-BwXFVsHE.cjs +1 -0
- package/dist/plugin-sdk/proxy-fetch-BzcKzknk.cjs +1 -0
- package/dist/plugin-sdk/proxy-fetch-CYVChsKE.js +1 -0
- package/dist/plugin-sdk/proxy-fetch-ClOb2LUH.js +1 -0
- package/dist/plugin-sdk/proxy-fetch-DH7VIiBH.cjs +1 -0
- package/dist/plugin-sdk/proxy-fetch-DPOhfrou.cjs +1 -0
- package/dist/plugin-sdk/proxy-fetch-DXt2R_Z5.js +1 -0
- package/dist/plugin-sdk/proxy-fetch-Del551nu.js +1 -0
- package/dist/plugin-sdk/proxy-fetch-YCVHz7Rl.js +1 -0
- package/dist/plugin-sdk/proxy-fetch-qbrYAz8k.cjs +1 -0
- package/dist/plugin-sdk/pw-ai-B0_rvdfF.js +1 -0
- package/dist/plugin-sdk/pw-ai-BqdrA15F.js +1 -0
- package/dist/plugin-sdk/pw-ai-CDzxu5B3.js +1 -0
- package/dist/plugin-sdk/pw-ai-CJIogpwF.cjs +1 -0
- package/dist/plugin-sdk/pw-ai-CL_gU5PJ.cjs +1 -0
- package/dist/plugin-sdk/pw-ai-Ca4aZTaG.cjs +1 -0
- package/dist/plugin-sdk/pw-ai-CrfYxLI8.cjs +1 -0
- package/dist/plugin-sdk/pw-ai-DCiFlwP8.js +1 -0
- package/dist/plugin-sdk/pw-ai-DSqXNmNZ.js +1 -0
- package/dist/plugin-sdk/pw-ai-Dh55xTz1.cjs +1 -0
- package/dist/plugin-sdk/pw-ai-DxAvipyK.cjs +1 -0
- package/dist/plugin-sdk/pw-ai-U9nPHH-0.js +1 -0
- package/dist/plugin-sdk/qmd-manager-B3xNbdye.cjs +1 -0
- package/dist/plugin-sdk/qmd-manager-BMyDNBPi.js +1 -0
- package/dist/plugin-sdk/qmd-manager-BZhiv_zq.cjs +1 -0
- package/dist/plugin-sdk/qmd-manager-C3uVDbhW.js +1 -0
- package/dist/plugin-sdk/qmd-manager-CW46NrS-.cjs +1 -0
- package/dist/plugin-sdk/qmd-manager-C_e04BNg.js +1 -0
- package/dist/plugin-sdk/qmd-manager-CczVoslK.cjs +1 -0
- package/dist/plugin-sdk/qmd-manager-CzLKqPmR.js +1 -0
- package/dist/plugin-sdk/qmd-manager-DFh8b5N-.cjs +1 -0
- package/dist/plugin-sdk/qmd-manager-DXLfZZMI.js +1 -0
- package/dist/plugin-sdk/qmd-manager-FL9fAfNo.cjs +1 -0
- package/dist/plugin-sdk/qmd-manager-fWxbGqzk.js +1 -0
- package/dist/plugin-sdk/query-expansion-0zYzKrrd.cjs +1 -0
- package/dist/plugin-sdk/query-expansion-BYSjmpkV.cjs +1 -0
- package/dist/plugin-sdk/query-expansion-CAboqtWr.js +1 -0
- package/dist/plugin-sdk/query-expansion-C_DnhmUy.js +1 -0
- package/dist/plugin-sdk/query-expansion-Cb2vnF6y.js +1 -0
- package/dist/plugin-sdk/query-expansion-DCeqywxh.cjs +1 -0
- package/dist/plugin-sdk/query-expansion-DF4LMxRQ.js +1 -0
- package/dist/plugin-sdk/query-expansion-DKJkqmNM.cjs +1 -0
- package/dist/plugin-sdk/query-expansion-DO2CFW4z.cjs +1 -0
- package/dist/plugin-sdk/query-expansion-DyCDaZbL.js +1 -0
- package/dist/plugin-sdk/query-expansion-cpXCyoDy.cjs +1 -0
- package/dist/plugin-sdk/query-expansion-r_iXkNzt.js +1 -0
- package/dist/plugin-sdk/qwen-portal-auth.cjs +1 -0
- package/dist/plugin-sdk/qwen-portal-auth.js +1 -0
- package/dist/plugin-sdk/render-6fCdtAr6.cjs +1 -0
- package/dist/plugin-sdk/render-CBsnn-2A.js +1 -0
- package/dist/plugin-sdk/render-CzHaQB0d.cjs +1 -0
- package/dist/plugin-sdk/render-DGmfCIRG.js +1 -0
- package/dist/plugin-sdk/render-DhTJXP1U.js +1 -0
- package/dist/plugin-sdk/render-Djx15dPh.js +1 -0
- package/dist/plugin-sdk/render-DxBO2Blp.cjs +1 -0
- package/dist/plugin-sdk/render-g5VlmgpF.cjs +1 -0
- package/dist/plugin-sdk/reply-0zCEbT4w.cjs +1 -0
- package/dist/plugin-sdk/reply-D-f2bbXy.js +1 -0
- package/dist/plugin-sdk/resolve-outbound-target-CrQGbaua.js +1 -0
- package/dist/plugin-sdk/resolve-outbound-target-H7Q9HcfW.js +1 -0
- package/dist/plugin-sdk/resolve-outbound-target-MS6Xpp17.cjs +1 -0
- package/dist/plugin-sdk/resolve-outbound-target-cDxjy3TL.cjs +1 -0
- package/dist/plugin-sdk/send-3VNTSIhr.js +1 -0
- package/dist/plugin-sdk/send-61GHLNYP.cjs +1 -0
- package/dist/plugin-sdk/send-6q4owAw0.js +1 -0
- package/dist/plugin-sdk/send-A2s5sPTd.js +1 -0
- package/dist/plugin-sdk/send-B2qa7CSk.js +1 -0
- package/dist/plugin-sdk/send-B3aEYvqG.cjs +1 -0
- package/dist/plugin-sdk/send-BAoqP09M.cjs +1 -0
- package/dist/plugin-sdk/send-BNBJ4CF8.js +1 -0
- package/dist/plugin-sdk/send-BTE2rI1E.js +1 -0
- package/dist/plugin-sdk/send-BlWuQHYB.js +1 -0
- package/dist/plugin-sdk/send-Bnvt7ZUE.cjs +1 -0
- package/dist/plugin-sdk/send-Bq6Mqs9G.cjs +1 -0
- package/dist/plugin-sdk/send-Bq787fi_.js +1 -0
- package/dist/plugin-sdk/send-BrAHLYBR.js +1 -0
- package/dist/plugin-sdk/send-Bt2eFBk2.js +1 -0
- package/dist/plugin-sdk/send-C4ZFbUux.js +1 -0
- package/dist/plugin-sdk/send-C4cyMW4S.cjs +1 -0
- package/dist/plugin-sdk/send-C8f5H4XV.cjs +1 -0
- package/dist/plugin-sdk/send-CDwTrbgT.cjs +1 -0
- package/dist/plugin-sdk/send-CEfs0Fsr.js +1 -0
- package/dist/plugin-sdk/send-CFuJjCNB.cjs +1 -0
- package/dist/plugin-sdk/send-CJGLeSJ8.cjs +1 -0
- package/dist/plugin-sdk/send-CL0W7jLW.js +1 -0
- package/dist/plugin-sdk/send-CLl490Gb.cjs +1 -0
- package/dist/plugin-sdk/send-CQtITZ7k.cjs +1 -0
- package/dist/plugin-sdk/send-CSGh_GVr.cjs +1 -0
- package/dist/plugin-sdk/send-CicLiXB4.js +1 -0
- package/dist/plugin-sdk/send-Cm7bEwx-.cjs +1 -0
- package/dist/plugin-sdk/send-CmO9z2-b.js +1 -0
- package/dist/plugin-sdk/send-Co_Wy2kT.cjs +1 -0
- package/dist/plugin-sdk/send-Cox_iyYB.cjs +1 -0
- package/dist/plugin-sdk/send-CuX4LcJ3.cjs +1 -0
- package/dist/plugin-sdk/send-CxMiTtxI.cjs +1 -0
- package/dist/plugin-sdk/send-CyyzWwDr.js +1 -0
- package/dist/plugin-sdk/send-D-HZnehy.cjs +1 -0
- package/dist/plugin-sdk/send-D-qD7BCb.js +1 -0
- package/dist/plugin-sdk/send-D3imkSlz.cjs +1 -0
- package/dist/plugin-sdk/send-D5UwpCoU.cjs +1 -0
- package/dist/plugin-sdk/send-D75OGJco.js +1 -0
- package/dist/plugin-sdk/send-DB4i1kUy.cjs +1 -0
- package/dist/plugin-sdk/send-DBjzdBda.cjs +1 -0
- package/dist/plugin-sdk/send-DPgRTM8s.js +1 -0
- package/dist/plugin-sdk/send-DPpBLiL4.js +1 -0
- package/dist/plugin-sdk/send-DV_afQnj.cjs +1 -0
- package/dist/plugin-sdk/send-DWuChr46.js +1 -0
- package/dist/plugin-sdk/send-DZ4szmEa.cjs +1 -0
- package/dist/plugin-sdk/send-DZr98eqE.cjs +1 -0
- package/dist/plugin-sdk/send-D_1K0zmx.cjs +1 -0
- package/dist/plugin-sdk/send-DaLB9Lca.js +1 -0
- package/dist/plugin-sdk/send-De4qiprb.js +1 -0
- package/dist/plugin-sdk/send-DeU-T5ps.js +1 -0
- package/dist/plugin-sdk/send-DtjJM0LO.js +1 -0
- package/dist/plugin-sdk/send-DvDCmTQf.js +1 -0
- package/dist/plugin-sdk/send-EvcsiFBC.cjs +1 -0
- package/dist/plugin-sdk/send-GuISe9C82.js +1 -0
- package/dist/plugin-sdk/send-IoGcE0w2.js +1 -0
- package/dist/plugin-sdk/send-JVdUTsN1.cjs +1 -0
- package/dist/plugin-sdk/send-NpNVFRmY.js +1 -0
- package/dist/plugin-sdk/send-XMOZsJcs.js +1 -0
- package/dist/plugin-sdk/send-h--iKoQE.cjs +1 -0
- package/dist/plugin-sdk/session-8BcB905y.cjs +1 -0
- package/dist/plugin-sdk/session-B2oURX5K.js +1 -0
- package/dist/plugin-sdk/session-BJhNqIOi.js +1 -0
- package/dist/plugin-sdk/session-BRgGsw96.cjs +1 -0
- package/dist/plugin-sdk/session-Be_7rXAz.js +1 -0
- package/dist/plugin-sdk/session-C66IXbE-.js +1 -0
- package/dist/plugin-sdk/session-CCYDbcyV.js +1 -0
- package/dist/plugin-sdk/session-CHu3C2m0.cjs +1 -0
- package/dist/plugin-sdk/session-DUlmK2IL.cjs +1 -0
- package/dist/plugin-sdk/session-DxTRZTnu.js +1 -0
- package/dist/plugin-sdk/session-DzhI0nj-.cjs +1 -0
- package/dist/plugin-sdk/session-WRCBgAzG.cjs +1 -0
- package/dist/plugin-sdk/sessions-DxXXAfdI.js +1 -0
- package/dist/plugin-sdk/sessions-Dz5JUL8j.cjs +1 -0
- package/dist/plugin-sdk/signal.cjs +1 -0
- package/dist/plugin-sdk/signal.js +1 -0
- package/dist/plugin-sdk/skill-commands-B4wI8ETo.cjs +1 -0
- package/dist/plugin-sdk/skill-commands-BoTeA376.cjs +1 -0
- package/dist/plugin-sdk/skill-commands-BwrYJu7Z.js +1 -0
- package/dist/plugin-sdk/skill-commands-BzkMuA58.cjs +1 -0
- package/dist/plugin-sdk/skill-commands-CIAf9cWN.cjs +1 -0
- package/dist/plugin-sdk/skill-commands-CKc7JO_c.cjs +1 -0
- package/dist/plugin-sdk/skill-commands-Cvb6oXym.js +1 -0
- package/dist/plugin-sdk/skill-commands-DWDtyCtB.js +1 -0
- package/dist/plugin-sdk/skill-commands-Hmuw0PPK.js +1 -0
- package/dist/plugin-sdk/skill-commands-KyN0FGaC.cjs +1 -0
- package/dist/plugin-sdk/skill-commands-KzwEqk5p.js +1 -0
- package/dist/plugin-sdk/skill-commands-Ny38ZFIC.js +1 -0
- package/dist/plugin-sdk/slack.cjs +1 -0
- package/dist/plugin-sdk/slack.js +1 -0
- package/dist/plugin-sdk/synology-chat.cjs +1 -0
- package/dist/plugin-sdk/synology-chat.js +1 -0
- package/dist/plugin-sdk/tables-BIDWwpX8.js +1 -0
- package/dist/plugin-sdk/tables-Bk8lHaPx.cjs +1 -0
- package/dist/plugin-sdk/tables-BlNIkMV8.js +1 -0
- package/dist/plugin-sdk/tables-Bp0a2WRP.cjs +1 -0
- package/dist/plugin-sdk/tables-BtVUf77b.cjs +1 -0
- package/dist/plugin-sdk/tables-C4j5Bar_.js +1 -0
- package/dist/plugin-sdk/tables-CZGtYzDC.cjs +1 -0
- package/dist/plugin-sdk/tables-CnrHab5d.cjs +1 -0
- package/dist/plugin-sdk/tables-DtslIPYw.js +1 -0
- package/dist/plugin-sdk/tables-NrdtIJGp.cjs +1 -0
- package/dist/plugin-sdk/tables-XYb3T-vE.js +1 -0
- package/dist/plugin-sdk/tables-lbv-0tl3.js +1 -0
- package/dist/plugin-sdk/target-errors-9cdJA1L2.cjs +1 -0
- package/dist/plugin-sdk/target-errors-BEkhKWCq.cjs +1 -0
- package/dist/plugin-sdk/target-errors-BZRN-lPd.js +1 -0
- package/dist/plugin-sdk/target-errors-BrwqillR.cjs +1 -0
- package/dist/plugin-sdk/target-errors-Buo5pfom.js +1 -0
- package/dist/plugin-sdk/target-errors-CFzzcffg.js +1 -0
- package/dist/plugin-sdk/target-errors-DFmK5loi.js +1 -0
- package/dist/plugin-sdk/target-errors-DXqwykNX.js +1 -0
- package/dist/plugin-sdk/target-errors-Dd6CopYF.cjs +1 -0
- package/dist/plugin-sdk/target-errors-DeNJ10ks.cjs +1 -0
- package/dist/plugin-sdk/targets-BSc11Uk8.cjs +1 -0
- package/dist/plugin-sdk/targets-BSkiizml.js +1 -0
- package/dist/plugin-sdk/targets-CBI0xqve.cjs +1 -0
- package/dist/plugin-sdk/targets-CL5fYQi7.js +1 -0
- package/dist/plugin-sdk/targets-CUZWrFrm.cjs +1 -0
- package/dist/plugin-sdk/targets-CVEYTFPQ.js +1 -0
- package/dist/plugin-sdk/targets-Co2R6K14.cjs +1 -0
- package/dist/plugin-sdk/targets-CrkJkzil.js +1 -0
- package/dist/plugin-sdk/targets-D-m7SV9x.cjs +1 -0
- package/dist/plugin-sdk/targets-D8HTxbo4.js +1 -0
- package/dist/plugin-sdk/targets-DcGNB9nk.cjs +1 -0
- package/dist/plugin-sdk/targets-Dn9gDiEw.js +1 -0
- package/dist/plugin-sdk/targets-X28mff4s.cjs +1 -0
- package/dist/plugin-sdk/targets-uycXZ8vQ.js +1 -0
- package/dist/plugin-sdk/telegram.cjs +1 -0
- package/dist/plugin-sdk/telegram.js +1 -0
- package/dist/plugin-sdk/test-utils.cjs +1 -0
- package/dist/plugin-sdk/test-utils.js +1 -0
- package/dist/plugin-sdk/tlon.cjs +1 -0
- package/dist/plugin-sdk/tlon.js +1 -0
- package/dist/plugin-sdk/tokens-AAdZjj0M.js +1 -0
- package/dist/plugin-sdk/tokens-B20KNIDD.js +1 -0
- package/dist/plugin-sdk/tokens-B8ys7Q2e.js +1 -0
- package/dist/plugin-sdk/tokens-BPc1fcZ3.js +1 -0
- package/dist/plugin-sdk/tokens-BqABmXSe.js +1 -0
- package/dist/plugin-sdk/tokens-CXsPDJTr.cjs +1 -0
- package/dist/plugin-sdk/tokens-CnB4dJmp.cjs +1 -0
- package/dist/plugin-sdk/tokens-CytSl1X8.cjs +1 -0
- package/dist/plugin-sdk/tokens-DgPZk2Uu.js +1 -0
- package/dist/plugin-sdk/tokens-Dq2wDF3_.cjs +1 -0
- package/dist/plugin-sdk/tokens-DtrljGtQ.cjs +1 -0
- package/dist/plugin-sdk/tokens-g5KWvWhD.cjs +1 -0
- package/dist/plugin-sdk/twitch.cjs +1 -0
- package/dist/plugin-sdk/twitch.js +1 -0
- package/dist/plugin-sdk/utils-BJtJR72k.js +1 -0
- package/dist/plugin-sdk/utils-PPIvU9qw.cjs +1 -0
- package/dist/plugin-sdk/voice-call.cjs +1 -0
- package/dist/plugin-sdk/voice-call.js +1 -0
- package/dist/plugin-sdk/web-B-QDcVRv.cjs +1 -0
- package/dist/plugin-sdk/web-B2PwjHsu.cjs +1 -0
- package/dist/plugin-sdk/web-BdnQzLgF.js +1 -0
- package/dist/plugin-sdk/web-C9T7tf6w.js +1 -0
- package/dist/plugin-sdk/web-CODD4ksc.cjs +1 -0
- package/dist/plugin-sdk/web-CkdCvvR-.js +1 -0
- package/dist/plugin-sdk/web-_tj8xNZE.js +1 -0
- package/dist/plugin-sdk/web-pcTha_l7.cjs +1 -0
- package/dist/plugin-sdk/weixin.cjs +1 -0
- package/dist/plugin-sdk/weixin.js +1 -0
- package/dist/plugin-sdk/whatsapp-actions-Bhz2j1uz.cjs +1 -0
- package/dist/plugin-sdk/whatsapp-actions-Bm2UyRYg.cjs +1 -0
- package/dist/plugin-sdk/whatsapp-actions-Bolz0jl5.js +1 -0
- package/dist/plugin-sdk/whatsapp-actions-CJ3LDpaG.js +1 -0
- package/dist/plugin-sdk/whatsapp-actions-CL1Gmkb0.js +1 -0
- package/dist/plugin-sdk/whatsapp-actions-D-bZRT7s.js +1 -0
- package/dist/plugin-sdk/whatsapp-actions-DSGTTE8M.cjs +1 -0
- package/dist/plugin-sdk/whatsapp-actions-DjQxgMpW.cjs +1 -0
- package/dist/plugin-sdk/whatsapp-actions-DrPBBi5t.cjs +1 -0
- package/dist/plugin-sdk/whatsapp-actions-DtK657CZ.cjs +1 -0
- package/dist/plugin-sdk/whatsapp-actions-Xwev51_N.js +1 -0
- package/dist/plugin-sdk/whatsapp-actions-m7vLtNAA.js +1 -0
- package/dist/plugin-sdk/whatsapp.cjs +1 -0
- package/dist/plugin-sdk/whatsapp.js +1 -0
- package/dist/plugin-sdk/zalo.cjs +1 -0
- package/dist/plugin-sdk/zalo.js +1 -0
- package/dist/plugin-sdk/zalouser.cjs +1 -0
- package/dist/plugin-sdk/zalouser.js +1 -0
- package/dist/plugins-CYLrFT4h.js +1 -0
- package/dist/plugins-DNlgeTTc.js +1 -0
- package/dist/plugins-cli-BbjMbzJU.js +1 -0
- package/dist/plugins-cli-BiVMAr5T.js +1 -0
- package/dist/polls-BIVz6a4F.js +1 -0
- package/dist/polls-Bh5wc9-6.js +1 -0
- package/dist/polls-C_XSFz3d.js +1 -0
- package/dist/polls-DKJOFSzJ.js +1 -0
- package/dist/ports-B0XdGTfS.js +1 -0
- package/dist/ports-BR0PLRtq.js +1 -0
- package/dist/probe-auth-BMA0yM94.js +1 -0
- package/dist/probe-auth-VI96zmTK.js +1 -0
- package/dist/profile-utils-CWmra1aY.js +1 -0
- package/dist/program-BrAZTwFr.js +1 -0
- package/dist/program-context-B9ydtPje.js +1 -0
- package/dist/program-context-CH9p6anW.js +1 -0
- package/dist/progress-LNttnI-y.js +1 -0
- package/dist/progress-d1m2sqR1.js +1 -0
- package/dist/prompt-select-styled-BeJNbzSa.js +1 -0
- package/dist/prompt-select-styled-DIOWLjl0.js +1 -0
- package/dist/prompt-style-BThRSQJR.js +1 -0
- package/dist/prompt-style-CXKekIBY.js +1 -0
- package/dist/prompts-CMzglboN.js +1 -0
- package/dist/prompts-wv-lfVrJ.js +1 -0
- package/dist/provider-auth-helpers-1lU43eTW.js +1 -0
- package/dist/provider-auth-helpers-pBVCjBj9.js +1 -0
- package/dist/provider-env-vars-D8p6Ohpj.js +1 -0
- package/dist/provider-env-vars-Dt0Q29Su.js +1 -0
- package/dist/proxy-env-BNhTHkd_.js +1 -0
- package/dist/proxy-env-DcmW_urA.js +1 -0
- package/dist/proxy-env-DrC3TIGh.js +1 -0
- package/dist/proxy-env-FJr5nlvs.js +1 -0
- package/dist/proxy-fetch-BADsUK4d.js +1 -0
- package/dist/proxy-fetch-BZ9O8Dvj.js +1 -0
- package/dist/proxy-fetch-DnjU1fEB.js +1 -0
- package/dist/proxy-fetch-gWETR3cl.js +1 -0
- package/dist/push-apns-BGUOmD5M.js +1 -0
- package/dist/push-apns-B_a2MBJ4.js +1 -0
- package/dist/pw-ai-C-Ffkwai.js +1 -0
- package/dist/pw-ai-CV1H1Vrs.js +1 -0
- package/dist/pw-ai-D_MB1lrR.js +1 -0
- package/dist/pw-ai-_l9lVice.js +1 -0
- package/dist/qmd-manager-C_e04BNg.js +1 -0
- package/dist/qmd-manager-DSQ_mDCl.js +1 -0
- package/dist/qmd-manager-DcBYbt_V.js +1 -0
- package/dist/qmd-manager-NLI0R6kp.js +1 -0
- package/dist/qr-cli-3aG6CB6K.js +1 -0
- package/dist/qr-cli-fiJxD5M4.js +1 -0
- package/dist/query-expansion-0OxEb1Io.js +1 -0
- package/dist/query-expansion-BUUx_oWg.js +1 -0
- package/dist/query-expansion-r_iXkNzt.js +1 -0
- package/dist/reaction-level-DVPHL14p.js +1 -0
- package/dist/reaction-message-id-BEEe7X3D.js +1 -0
- package/dist/read-only-account-inspect-DBwAwB3_.js +1 -0
- package/dist/redact-3_CiXMY6.js +1 -0
- package/dist/redact-CnRxK70G.js +1 -0
- package/dist/register.agent-CX78s_X9.js +1 -0
- package/dist/register.agent-DLDKQENq.js +1 -0
- package/dist/register.backup-DkFoTcuT.js +1 -0
- package/dist/register.backup-PzF5rmeU.js +1 -0
- package/dist/register.configure-BA5u9hT3.js +1 -0
- package/dist/register.configure-BhPtf3Qo.js +1 -0
- package/dist/register.maintenance-BhsBepKS.js +1 -0
- package/dist/register.maintenance-r_MzNK3-.js +1 -0
- package/dist/register.message-CTF--Z2a.js +1 -0
- package/dist/register.message-jcZ875be.js +1 -0
- package/dist/register.onboard-C3yL50_c.js +1 -0
- package/dist/register.onboard-CNwnStUk.js +1 -0
- package/dist/register.setup-BRJMzgfU.js +1 -0
- package/dist/register.setup-BvsS-zgm.js +1 -0
- package/dist/register.status-health-sessions-DVc__2pc.js +1 -0
- package/dist/register.status-health-sessions-Dqmkw820.js +1 -0
- package/dist/register.subclis-D-24j83X.js +1 -0
- package/dist/registry-BptzrW8D.js +1 -0
- package/dist/registry-hFAtCSWG.js +1 -0
- package/dist/render-BXEUPIHe.js +1 -0
- package/dist/render-CBsnn-2A.js +1 -0
- package/dist/render-D8OWO2hT.js +1 -0
- package/dist/render-DrrPmnMI.js +1 -0
- package/dist/reply-l-Y47HP4.js +1 -0
- package/dist/restart-CHXEHdSC.js +1 -0
- package/dist/rpc-B3ReBNXG.js +1 -0
- package/dist/rpc-DumDLalJ.js +1 -0
- package/dist/run-main-B_YBE_TN.js +1 -0
- package/dist/runtime-BC5Ep2pJ.js +1 -0
- package/dist/runtime-Dlg2-Omq.js +1 -0
- package/dist/runtime-guard-DFYBaYZS.js +1 -0
- package/dist/runtime-guard-DX2Ie4ri.js +1 -0
- package/dist/runtime-status-CqFBmdRd.js +1 -0
- package/dist/runtime-status-DszMjvJK.js +1 -0
- package/dist/runtime-web-tools-D8fms06-.js +1 -0
- package/dist/runtime-web-tools-bz76ZaRc.js +1 -0
- package/dist/sandbox-cli-BDorUBm-.js +1 -0
- package/dist/sandbox-cli-Bq40R5Vs.js +1 -0
- package/dist/scan-paths-C13EseXp.js +1 -0
- package/dist/scan-paths-CWtvWW40.js +1 -0
- package/dist/search-manager-Bp9x20r6.js +1 -0
- package/dist/secret-file-C7JffiM_.js +1 -0
- package/dist/secret-file-D60EFEOe.js +1 -0
- package/dist/secret-file-DuWm26jS.js +1 -0
- package/dist/secrets-cli-Bo6PC32U.js +1 -0
- package/dist/secrets-cli-CoXJv3Jp.js +1 -0
- package/dist/secure-random-D7JQgiK-.js +1 -0
- package/dist/security-cli-CgZL2KKh.js +1 -0
- package/dist/security-cli-DVOfhwAP.js +1 -0
- package/dist/send-B7sHR38c2.js +1 -0
- package/dist/send-Bx2Qr7VH.js +1 -0
- package/dist/send-C-AP01PR.js +1 -0
- package/dist/send-C1CJ-GHU.js +1 -0
- package/dist/send-C48Y9SAq.js +1 -0
- package/dist/send-CVplsJpw.js +1 -0
- package/dist/send-CW81y5Wz.js +1 -0
- package/dist/send-CYgHok1p.js +1 -0
- package/dist/send-Cgd_VJHR.js +1 -0
- package/dist/send-Chz0YMoJ.js +1 -0
- package/dist/send-D9hVVn7p2.js +1 -0
- package/dist/send-DKrzj_Ts.js +1 -0
- package/dist/send-DRLSCwCk.js +1 -0
- package/dist/send-DavpkzhH.js +1 -0
- package/dist/send-DbeEC2a3.js +1 -0
- package/dist/send-DkiKKUkt.js +1 -0
- package/dist/send-DlfVd5mL.js +1 -0
- package/dist/send-JYgM9Sm-2.js +1 -0
- package/dist/send-hZFDcGLM.js +1 -0
- package/dist/send-vthbs31u.js +1 -0
- package/dist/server-DpyBukwA.js +1 -0
- package/dist/server-IgiSKzXH.js +1 -0
- package/dist/server-node-events-CFSY_-4t.js +1 -0
- package/dist/server-node-events-ZFwmPwQ-.js +1 -0
- package/dist/service-BtB9epJk.js +1 -0
- package/dist/service-DZ9EbS15.js +1 -0
- package/dist/session-C9TDmUS7.js +1 -0
- package/dist/session-CUUGjiV3.js +1 -0
- package/dist/session-DA-i5xQ-.js +1 -0
- package/dist/session-bk3gFwO4.js +1 -0
- package/dist/session-cost-usage-BgqKixv0.js +1 -0
- package/dist/session-cost-usage-CHtVgnE8.js +1 -0
- package/dist/session-key-C7F_iqYg.js +1 -0
- package/dist/session-key-D3P0tf5P.js +1 -0
- package/dist/session-utils-8acNlxwP.js +1 -0
- package/dist/sessions-BsxT0V2m.js +1 -0
- package/dist/shared-9x5sqYRb.js +1 -0
- package/dist/shared-BKWhOp64.js +1 -0
- package/dist/shared-GesXrZzd.js +1 -0
- package/dist/skill-commands-BWW6mc6t.js +1 -0
- package/dist/skill-commands-CSF6wVPU.js +1 -0
- package/dist/skill-commands-Db232ZRp.js +1 -0
- package/dist/skill-commands-HJHHZqt6.js +1 -0
- package/dist/skill-scanner-CUUF3Fvo.js +1 -0
- package/dist/skill-scanner-CkxXNioD.js +1 -0
- package/dist/skills-CKTicUKS.js +1 -0
- package/dist/skills-DHbOKEGc.js +1 -0
- package/dist/skills-cli-9Ls94z5H.js +1 -0
- package/dist/skills-cli-BY7OhJzj.js +1 -0
- package/dist/skills-install-CIdGCXSy.js +1 -0
- package/dist/skills-install-DIdiVt9Y.js +1 -0
- package/dist/skills-status-BWIugRCz.js +1 -0
- package/dist/skills-status-DswSl5aD.js +1 -0
- package/dist/sqlite-CILF3z9U.js +1 -0
- package/dist/stagger-DmFYysrJ.js +1 -0
- package/dist/stagger-DxzgG2jd.js +1 -0
- package/dist/status-C-9fSiMn.js +1 -0
- package/dist/status-CeBGmSAz.js +1 -0
- package/dist/status-DYqPF0rB.js +1 -0
- package/dist/status-JIPeVrsc.js +1 -0
- package/dist/status.update-B_8Gumuc.js +1 -0
- package/dist/status.update-DoSzHu2F.js +1 -0
- package/dist/string-normalization-BrUPaXaM.js +1 -0
- package/dist/string-normalization-DJT5zuUF.js +1 -0
- package/dist/subsystem-BLbY429l.js +1 -0
- package/dist/subsystem-Bc2XrjUz.js +1 -0
- package/dist/subsystem-C5XF2Fy5.js +1 -0
- package/dist/system-cli-CeZfoVPN.js +1 -0
- package/dist/system-cli-DZkTYB9d.js +1 -0
- package/dist/system-run-command-BKfMiqQM.js +1 -0
- package/dist/system-run-command-DEWnZE0r.js +1 -0
- package/dist/systemd-D7odsu4K.js +1 -0
- package/dist/systemd-DbevZh65.js +1 -0
- package/dist/systemd-hints-C0DKDl35.js +1 -0
- package/dist/systemd-hints-lXpMy-kY.js +1 -0
- package/dist/systemd-linger-C2MJD6KG.js +1 -0
- package/dist/systemd-linger-cWKbFNpu.js +1 -0
- package/dist/table-CR7TFMew.js +1 -0
- package/dist/table-CY440fI1.js +1 -0
- package/dist/tables-Brc2lNcB.js +1 -0
- package/dist/tables-CrXdLc_6.js +1 -0
- package/dist/tables-Oieq7UbT.js +1 -0
- package/dist/tables-btcG3yFT.js +1 -0
- package/dist/target-errors-CRlevJJ5.js +1 -0
- package/dist/target-errors-CgWAJOam.js +1 -0
- package/dist/target-errors-CpKXh2RS.js +1 -0
- package/dist/target-errors-a35Md15n.js +1 -0
- package/dist/targets-4EaxWBal.js +1 -0
- package/dist/targets-BJTo7bqu.js +1 -0
- package/dist/targets-BYVMrXDf.js +1 -0
- package/dist/targets-Bq6rS6-Z.js +1 -0
- package/dist/targets-CL5fYQi7.js +1 -0
- package/dist/targets-fozeWOOg.js +1 -0
- package/dist/targets-m_41k_Mv.js +1 -0
- package/dist/telegram/audit.js +1 -0
- package/dist/text-format-CvrvBBre.js +1 -0
- package/dist/text-format-DEWK6oCT.js +1 -0
- package/dist/token-DnTmiyJu.js +1 -0
- package/dist/tokens-B2fq-rL6.js +1 -0
- package/dist/tokens-CL2fSjGl.js +1 -0
- package/dist/tokens-DRM8vzJx.js +1 -0
- package/dist/tokens-XGbQGn67.js +1 -0
- package/dist/tool-display-DJDtttQg.js +1 -0
- package/dist/tool-display-DjuSUUbH.js +1 -0
- package/dist/tui-B506apla.js +1 -0
- package/dist/tui-CJUkUxHb.js +1 -0
- package/dist/tui-cli-BEdGHmhc.js +1 -0
- package/dist/tui-cli-Cq_eXDAV.js +1 -0
- package/dist/types.secrets-C-5U96pc.js +1 -0
- package/dist/types.secrets-D4tbc3Wq.js +1 -0
- package/dist/update-BGrxUIyz.js +1 -0
- package/dist/update-CwTy5DPl.js +1 -0
- package/dist/update-cli-BwBMOeP0.js +1 -0
- package/dist/update-cli-YrBbmw4f.js +1 -0
- package/dist/update-runner-BvtyRBD2.js +1 -0
- package/dist/update-runner-DYamgo1V.js +1 -0
- package/dist/usage-format-BWD8FJFL.js +1 -0
- package/dist/usage-format-yPwal8Iz.js +1 -0
- package/dist/utils-CGdo13HV.js +1 -0
- package/dist/utils-D3t-vPka.js +1 -0
- package/dist/utils-R-mFyVJi.js +1 -0
- package/dist/utils-UGOV_184.js +1 -0
- package/dist/version-q3SkUw2K.js +1 -0
- package/dist/warning-filter.js +1 -0
- package/dist/web-Cq3xWCaD.js +1 -0
- package/dist/web-DwcxsgH0.js +1 -0
- package/dist/webhooks-cli-CIeyainW.js +1 -0
- package/dist/webhooks-cli-DSNAve_D.js +1 -0
- package/dist/whatsapp-actions-B6gt1KeB.js +1 -0
- package/dist/whatsapp-actions-DACoH7qd.js +1 -0
- package/dist/whatsapp-actions-iQhIeMya.js +1 -0
- package/dist/whatsapp-actions-tmjID75a.js +1 -0
- package/dist/widearea-dns-BDx7vkV2.js +1 -0
- package/dist/widearea-dns-BFjqKXu_.js +1 -0
- package/dist/windows-spawn-7oINn5ao.js +1 -0
- package/dist/windows-spawn-AB7ItGAE.js +1 -0
- package/dist/with-timeout-WveKxvFV.js +1 -0
- package/dist/with-timeout-c1CzdShT.js +1 -0
- package/dist/workspace-B0ZQeHXg.js +1 -0
- package/dist/workspace-C45T1Cxg.js +1 -0
- package/dist/workspace-dirs-A8Vib9_B.js +1 -0
- package/dist/workspace-dirs-BhF1Dzxt.js +1 -0
- package/dist/workspace-xNEpaJvu.js +1 -0
- package/dist/wsl-DHxB2Ew_.js +1 -0
- package/dist/wsl-Ok7GaSJ6.js +1 -0
- package/node_modules/@aws-sdk/client-bedrock-runtime/package.json +2 -2
- package/node_modules/@aws-sdk/token-providers/package.json +1 -1
- package/node_modules/@grammyjs/types/package.json +1 -1
- package/node_modules/@line/bot-sdk/dist/channel-access-token/api/channelAccessTokenClient.js +49 -3
- package/node_modules/@line/bot-sdk/dist/cjs/channel-access-token/api/channelAccessTokenClient.js +49 -3
- package/node_modules/@line/bot-sdk/dist/cjs/client.js +636 -0
- package/node_modules/@line/bot-sdk/dist/cjs/endpoints.js +7 -0
- package/node_modules/@line/bot-sdk/dist/cjs/exceptions.js +15 -1
- package/node_modules/@line/bot-sdk/dist/cjs/http-axios.js +2 -6
- package/node_modules/@line/bot-sdk/dist/cjs/http-fetch.js +5 -13
- package/node_modules/@line/bot-sdk/dist/cjs/index.js +3 -1
- package/node_modules/@line/bot-sdk/dist/cjs/insight/api/insightClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/liff/api/liffClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/line-bot-client.factory.generated.js +66 -0
- package/node_modules/@line/bot-sdk/dist/cjs/line-bot-client.generated.js +1999 -0
- package/node_modules/@line/bot-sdk/dist/cjs/line-bot-client.js +61 -0
- package/node_modules/@line/bot-sdk/dist/cjs/manage-audience/api/manageAudienceBlobClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/manage-audience/api/manageAudienceClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/messaging-api/api/messagingApiBlobClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/messaging-api/api/messagingApiClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/module/api/lineModuleClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/module-attach/api/lineModuleAttachClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/shop/api/shopClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/cjs/utils.js +10 -0
- package/node_modules/@line/bot-sdk/dist/cjs/version.js +1 -1
- package/node_modules/@line/bot-sdk/dist/client.js +636 -0
- package/node_modules/@line/bot-sdk/dist/endpoints.js +7 -0
- package/node_modules/@line/bot-sdk/dist/exceptions.js +15 -1
- package/node_modules/@line/bot-sdk/dist/http-axios.js +2 -6
- package/node_modules/@line/bot-sdk/dist/http-fetch.js +5 -13
- package/node_modules/@line/bot-sdk/dist/index.js +1 -0
- package/node_modules/@line/bot-sdk/dist/insight/api/insightClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/liff/api/liffClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/line-bot-client.factory.generated.js +63 -0
- package/node_modules/@line/bot-sdk/dist/line-bot-client.generated.js +1995 -0
- package/node_modules/@line/bot-sdk/dist/line-bot-client.js +58 -0
- package/node_modules/@line/bot-sdk/dist/manage-audience/api/manageAudienceBlobClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/manage-audience/api/manageAudienceClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/messaging-api/api/messagingApiBlobClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/messaging-api/api/messagingApiClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/module/api/lineModuleClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/module-attach/api/lineModuleAttachClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/shop/api/shopClient.js +3 -0
- package/node_modules/@line/bot-sdk/dist/utils.js +9 -0
- package/node_modules/@line/bot-sdk/dist/version.js +1 -1
- package/node_modules/@line/bot-sdk/package.json +10 -7
- package/node_modules/@mariozechner/clipboard-linux-x64-gnu/clipboard.linux-x64-gnu.node +0 -0
- package/node_modules/@mariozechner/clipboard-linux-x64-gnu/package.json +25 -0
- package/node_modules/@mariozechner/clipboard-linux-x64-musl/clipboard.linux-x64-musl.node +0 -0
- package/node_modules/@mariozechner/clipboard-linux-x64-musl/package.json +25 -0
- package/node_modules/@slack/bolt/dist/App.js +22 -30
- package/node_modules/@slack/bolt/dist/Assistant.js +21 -37
- package/node_modules/@slack/bolt/dist/CustomFunction.js +1 -43
- package/node_modules/@slack/bolt/dist/context/create-function-complete.js +23 -0
- package/node_modules/@slack/bolt/dist/context/create-function-fail.js +23 -0
- package/node_modules/@slack/bolt/dist/context/create-respond.js +11 -0
- package/node_modules/@slack/bolt/dist/context/create-say-stream.js +16 -0
- package/node_modules/@slack/bolt/dist/context/create-say.js +17 -0
- package/node_modules/@slack/bolt/dist/context/create-set-status.js +21 -0
- package/node_modules/@slack/bolt/dist/context/index.js +16 -0
- package/node_modules/@slack/bolt/dist/helpers.js +79 -3
- package/node_modules/@slack/bolt/dist/index.js +10 -8
- package/node_modules/@slack/bolt/dist/receivers/SocketModeReceiver.js +5 -1
- package/node_modules/@slack/bolt/dist/types/events/index.js +0 -4
- package/node_modules/@slack/bolt/package.json +7 -7
- package/node_modules/@smithy/config-resolver/package.json +10 -11
- package/node_modules/@smithy/core/dist-cjs/getSmithyContext.js +6 -0
- package/node_modules/@smithy/core/dist-cjs/index.js +1 -1
- package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js +21 -0
- package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js +21 -0
- package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js +46 -0
- package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/index.js +6 -0
- package/node_modules/@smithy/core/dist-cjs/middleware-http-auth-scheme/resolveAuthOptions.js +24 -0
- package/node_modules/@smithy/core/dist-cjs/middleware-http-signing/getHttpSigningMiddleware.js +19 -0
- package/node_modules/@smithy/core/dist-cjs/middleware-http-signing/httpSigningMiddleware.js +27 -0
- package/node_modules/@smithy/core/dist-cjs/middleware-http-signing/index.js +5 -0
- package/node_modules/@smithy/core/dist-cjs/normalizeProvider.js +10 -0
- package/node_modules/@smithy/core/dist-cjs/pagination/createPaginator.js +44 -0
- package/node_modules/@smithy/core/dist-cjs/request-builder/requestBuilder.js +5 -0
- package/node_modules/@smithy/core/dist-cjs/setFeature.js +14 -0
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/DefaultIdentityProviderConfig.js +17 -0
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js +38 -0
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js +15 -0
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/index.js +6 -0
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/httpAuthSchemes/noAuth.js +9 -0
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/index.js +6 -0
- package/node_modules/@smithy/core/dist-cjs/util-identity-and-auth/memoizeIdentityProvider.js +61 -0
- package/node_modules/@smithy/core/package.json +15 -16
- package/node_modules/@smithy/credential-provider-imds/package.json +9 -10
- package/node_modules/@smithy/eventstream-codec/dist-cjs/index.js +13 -0
- package/node_modules/@smithy/eventstream-codec/package.json +6 -7
- package/node_modules/@smithy/eventstream-serde-browser/package.json +7 -8
- package/node_modules/@smithy/eventstream-serde-config-resolver/package.json +7 -8
- package/node_modules/@smithy/eventstream-serde-node/package.json +7 -8
- package/node_modules/@smithy/eventstream-serde-universal/package.json +9 -10
- package/node_modules/@smithy/fetch-http-handler/package.json +12 -13
- package/node_modules/@smithy/hash-node/package.json +6 -7
- package/node_modules/@smithy/invalid-dependency/package.json +6 -7
- package/node_modules/@smithy/middleware-content-length/package.json +7 -8
- package/node_modules/@smithy/middleware-endpoint/dist-cjs/index.js +2 -2
- package/node_modules/@smithy/middleware-endpoint/package.json +13 -14
- package/node_modules/@smithy/middleware-retry/dist-cjs/index.js +70 -29
- package/node_modules/@smithy/middleware-retry/dist-es/index.js +5 -4
- package/node_modules/@smithy/middleware-retry/dist-es/longPollMiddleware.js +15 -0
- package/node_modules/@smithy/middleware-retry/dist-es/parseRetryAfterHeader.js +49 -0
- package/node_modules/@smithy/middleware-retry/dist-es/{StandardRetryStrategy.js → retry-pre-sra-deprecated/StandardRetryStrategy.js} +1 -1
- package/node_modules/@smithy/middleware-retry/dist-es/retryMiddleware.js +13 -20
- package/node_modules/@smithy/middleware-retry/package.json +16 -16
- package/node_modules/@smithy/middleware-serde/package.json +10 -11
- package/node_modules/@smithy/middleware-stack/package.json +7 -8
- package/node_modules/@smithy/node-config-provider/package.json +8 -9
- package/node_modules/@smithy/node-http-handler/package.json +10 -11
- package/node_modules/@smithy/property-provider/package.json +6 -7
- package/node_modules/@smithy/protocol-http/package.json +6 -7
- package/node_modules/@smithy/querystring-builder/package.json +6 -7
- package/node_modules/@smithy/querystring-parser/package.json +6 -7
- package/node_modules/@smithy/service-error-classification/package.json +6 -7
- package/node_modules/@smithy/shared-ini-file-loader/package.json +7 -8
- package/node_modules/@smithy/signature-v4/dist-cjs/index.js +13 -0
- package/node_modules/@smithy/signature-v4/package.json +9 -10
- package/node_modules/@smithy/smithy-client/dist-cjs/index.js +1 -1
- package/node_modules/@smithy/smithy-client/package.json +14 -15
- package/node_modules/@smithy/types/package.json +7 -8
- package/node_modules/@smithy/url-parser/package.json +7 -8
- package/node_modules/@smithy/util-defaults-mode-browser/package.json +8 -9
- package/node_modules/@smithy/util-defaults-mode-node/package.json +11 -12
- package/node_modules/@smithy/util-endpoints/package.json +9 -10
- package/node_modules/@smithy/util-middleware/package.json +6 -7
- package/node_modules/@smithy/util-retry/dist-cjs/index.js +123 -76
- package/node_modules/@smithy/util-retry/dist-es/AdaptiveRetryStrategy.js +7 -4
- package/node_modules/@smithy/util-retry/dist-es/ConfiguredRetryStrategy.js +2 -2
- package/node_modules/@smithy/util-retry/dist-es/DefaultRateLimiter.js +24 -25
- package/node_modules/@smithy/util-retry/dist-es/DefaultRetryBackoffStrategy.js +14 -0
- package/node_modules/@smithy/util-retry/dist-es/DefaultRetryToken.js +25 -0
- package/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js +39 -26
- package/node_modules/@smithy/util-retry/dist-es/index.js +1 -0
- package/node_modules/@smithy/util-retry/dist-es/retries-2026-config.js +18 -0
- package/node_modules/@smithy/util-retry/package.json +10 -11
- package/node_modules/@smithy/util-stream/package.json +12 -13
- package/node_modules/@snazzah/davey-linux-x64-gnu/davey.linux-x64-gnu.node +0 -0
- package/node_modules/@snazzah/davey-linux-x64-gnu/package.json +43 -0
- package/node_modules/@snazzah/davey-linux-x64-musl/davey.linux-x64-musl.node +0 -0
- package/node_modules/@snazzah/davey-linux-x64-musl/package.json +43 -0
- package/node_modules/dotenv/lib/main.js +1 -1
- package/node_modules/dotenv/package.json +1 -1
- package/node_modules/dotenv/skills/dotenv/SKILL.md +32 -52
- package/node_modules/dotenv/skills/dotenvx/SKILL.md +57 -273
- package/node_modules/grammy/out/bot.js +1 -0
- package/node_modules/grammy/out/context.js +35 -0
- package/node_modules/grammy/out/convenience/keyboard.js +30 -2
- package/node_modules/grammy/out/core/api.js +34 -0
- package/node_modules/grammy/out/filter.js +6 -2
- package/node_modules/grammy/out/web.mjs +58 -10
- package/node_modules/grammy/package.json +2 -2
- package/node_modules/lru-cache/dist/commonjs/diagnostics-channel.js +12 -0
- package/node_modules/lru-cache/dist/commonjs/index.js +227 -130
- package/node_modules/lru-cache/dist/commonjs/index.min.js +1 -1
- package/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.d.mts.map +1 -0
- package/node_modules/lru-cache/dist/esm/diagnostics-channel.js +17 -0
- package/node_modules/lru-cache/dist/esm/index.js +227 -130
- package/node_modules/lru-cache/dist/esm/index.min.js +1 -1
- package/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.d.mts.map +1 -0
- package/node_modules/lru-cache/dist/esm/node/diagnostics-channel.js +8 -0
- package/node_modules/lru-cache/dist/esm/node/index.js +1688 -0
- package/node_modules/lru-cache/dist/esm/node/index.min.js +2 -0
- package/node_modules/lru-cache/package.json +29 -9
- package/node_modules/netmask/dist/netmask.js +58 -0
- package/node_modules/netmask/dist/netmask4.js +189 -0
- package/node_modules/netmask/dist/netmask6.js +187 -0
- package/node_modules/netmask/package.json +15 -6
- package/node_modules/path-expression-matcher/lib/pem.cjs +1 -1
- package/node_modules/path-expression-matcher/lib/pem.d.cts +93 -0
- package/node_modules/path-expression-matcher/lib/pem.min.js +1 -1
- package/node_modules/path-expression-matcher/package.json +1 -1
- package/node_modules/path-expression-matcher/src/ExpressionSet.js +189 -0
- package/node_modules/path-expression-matcher/src/Matcher.js +50 -20
- package/node_modules/path-expression-matcher/src/index.js +3 -2
- package/node_modules/strnum/package.json +1 -1
- package/package.json +1 -1
- package/preset-config.json +12 -0
- package/node_modules/@smithy/util-retry/dist-es/defaultRetryBackoffStrategy.js +0 -14
- package/node_modules/@smithy/util-retry/dist-es/defaultRetryToken.js +0 -11
- package/node_modules/netmask/CREDITS.md +0 -30
- package/node_modules/netmask/lib/netmask.coffee +0 -167
- package/node_modules/netmask/lib/netmask.js +0 -208
- package/node_modules/strnum/.github/SECURITY.md +0 -5
- package/node_modules/strnum/.vscode/launch.json +0 -25
- package/node_modules/strnum/algo.stflow +0 -84
- package/skills/sherpa-onnx-tts/bin/sherpa-onnx-tts +0 -178
- /package/node_modules/@smithy/middleware-retry/dist-es/{AdaptiveRetryStrategy.js → retry-pre-sra-deprecated/AdaptiveRetryStrategy.js} +0 -0
- /package/node_modules/@smithy/middleware-retry/dist-es/{defaultRetryQuota.js → retry-pre-sra-deprecated/defaultRetryQuota.js} +0 -0
- /package/node_modules/@smithy/middleware-retry/dist-es/{delayDecider.js → retry-pre-sra-deprecated/delayDecider.js} +0 -0
- /package/node_modules/@smithy/middleware-retry/dist-es/{retryDecider.js → retry-pre-sra-deprecated/retryDecider.js} +0 -0
- /package/node_modules/@smithy/middleware-retry/dist-es/{types.js → retry-pre-sra-deprecated/types.js} +0 -0
package/dist/service-DZ9EbS15.js
CHANGED
|
@@ -30,3 +30,4 @@ fi
|
|
|
30
30
|
`)):Error(`launchctl bootstrap failed: ${e}`)}return await L([`kickstart`,`-k`,`${d}/${f}`]),S(t,[{label:`Installed LaunchAgent`,value:p},{label:`Logs`,value:l}],{leadingBlankLine:!0}),{plistPath:p}}async function me({stdout:e,env:t}){let n=t??process.env,r=R(),i=M({env:n}),a=P(n),o=`${r}/${i}`;if(ce(i)){let t=j({env:n,mode:`kickstart`,waitForPid:process.pid});if(!t.ok)throw Error(`launchd restart handoff failed: ${t.detail??`unknown error`}`);try{e.write(`${f(`Scheduled LaunchAgent restart`,o)}\n`)}catch(e){if(e?.code!==`EPIPE`)throw e}return{outcome:`scheduled`}}let s=await L([`kickstart`,`-k`,o]);if(s.code===0){try{e.write(`${f(`Restarted LaunchAgent`,o)}\n`)}catch(e){if(e?.code!==`EPIPE`)throw e}return{outcome:`completed`}}if(!G(s))throw Error(`launchctl kickstart failed: ${s.stderr||s.stdout}`.trim());await L([`enable`,o]);let c=await L([`bootstrap`,r,a]);if(c.code!==0){let e=(c.stderr||c.stdout).trim();throw K(e)?Error([`launchctl bootstrap failed: ${e}`,`LaunchAgent restart requires a logged-in macOS GUI session for this user (${r}).`,`This usually means you are running from SSH/headless context or as the wrong user (including sudo).`,"Fix: sign in to the macOS desktop as the target user and rerun `openclaw gateway restart`.",`Headless deployments should use a dedicated logged-in user session or a custom LaunchDaemon (not shipped): https://docs.openclaw.ai/gateway`].join(`
|
|
31
31
|
`)):Error(`launchctl bootstrap failed: ${e}`)}let l=await L([`kickstart`,`-k`,o]);if(l.code!==0)throw Error(`launchctl kickstart failed: ${l.stderr||l.stdout}`.trim());try{e.write(`${f(`Restarted LaunchAgent`,o)}\n`)}catch(e){if(e?.code!==`EPIPE`)throw e}return{outcome:`completed`}}async function q(e){return await m(`schtasks`,e,{windowsHide:!0})}function J(e){return e.OPENCLAW_WINDOWS_TASK_NAME?.trim()||i(e.OPENCLAW_PROFILE)}function Y(e){let t=e.OPENCLAW_TASK_SCRIPT?.trim();if(t)return t;let n=e.OPENCLAW_TASK_SCRIPT_NAME?.trim()||`gateway.cmd`,r=v(e);return T.join(r,n)}function he(e){return/[ \t"]/g.test(e)?`"${e.replace(/"/g,`\\"`)}"`:e}function ge(e){let t=e.USERNAME||e.USER||e.LOGNAME;if(!t)return null;if(t.includes(`\\`))return t;let n=e.USERDOMAIN;return n?`${n}\\${t}`:t}async function _e(e){let t=Y(e);try{let e=await E.readFile(t,`utf8`),n=``,r=``,i={};for(let t of e.split(/\r?\n/)){let e=t.trim();if(!e)continue;let a=e.toLowerCase();if(!e.startsWith(`@echo`)&&!a.startsWith(`rem `)){if(a.startsWith(`set `)){let t=c(e.slice(4));t&&(i[t.key]=t.value);continue}if(a.startsWith(`cd /d `)){n=e.slice(6).trim().replace(/^"|"$/g,``);continue}r=e;break}}return r?{programArguments:d(r),...n?{workingDirectory:n}:{},...Object.keys(i).length>0?{environment:i}:{}}:null}catch{return null}}function ve(e){let t=y(e,`:`),n={},r=t.status;r&&(n.status=r);let i=t[`last run time`];i&&(n.lastRunTime=i);let a=t[`last run result`];return a&&(n.lastRunResult=a),n}function ye(e){if(!e)return null;let t=e.trim().toLowerCase();if(!t)return null;if(/^0x[0-9a-f]+$/.test(t))return`0x${t.slice(2).replace(/^0+/,``)||`0`}`;if(/^\d+$/.test(t)){let e=Number.parseInt(t,10);if(Number.isFinite(e))return`0x${e.toString(16)}`}return null}const be=new Set([`0x41301`]);function xe(e){let t=ye(e.lastRunResult);return t==null?e.status?.trim()?{status:`unknown`,detail:`Task status is locale-dependent and no numeric Last Run Result was available.`}:{status:`unknown`}:be.has(t)?{status:`running`}:{status:`stopped`,detail:`Task Last Run Result=${e.lastRunResult}; treating as not running.`}}function Se({description:e,programArguments:t,workingDirectory:n,environment:r}){let i=[`@echo off`],a=e?.trim();if(a&&(u(a,`Task description`),i.push(`rem ${a}`)),n&&i.push(`cd /d ${l(n)}`),r)for(let[e,t]of Object.entries(r))t&&e.toUpperCase()!==`PATH`&&i.push(s(e,t));let o=t.map(l).join(` `);return i.push(o),`${i.join(`\r
|
|
32
32
|
`)}\r\n`}async function X(){let e=await q([`/Query`]);if(e.code===0)return;let t=e.stderr||e.stdout;throw Error(`schtasks unavailable: ${t||`unknown error`}`.trim())}async function Ce({env:e,stdout:t,programArguments:r,workingDirectory:i,environment:a,description:o}){await X();let s=Y(e);await E.mkdir(T.dirname(s),{recursive:!0});let c=Se({description:n({env:e,environment:a,description:o}),programArguments:r,workingDirectory:i,environment:a});await E.writeFile(s,c,`utf8`);let l=J(e),u=[`/Create`,`/F`,`/SC`,`ONLOGON`,`/RL`,`LIMITED`,`/TN`,l,`/TR`,he(s)],d=ge(e),f=await q(d?[...u,`/RU`,d,`/NP`,`/IT`]:u);if(f.code!==0&&d&&(f=await q(u)),f.code!==0){let e=f.stderr||f.stdout,t=/access is denied/i.test(e)?` Run PowerShell as Administrator or rerun without installing the daemon.`:``;throw Error(`schtasks create failed: ${e}${t}`.trim())}return await q([`/Run`,`/TN`,l]),S(t,[{label:`Installed Scheduled Task`,value:l},{label:`Task script`,value:s}],{leadingBlankLine:!0}),{scriptPath:s}}async function we({env:e,stdout:t}){await X(),await q([`/Delete`,`/F`,`/TN`,J(e)]);let n=Y(e);try{await E.unlink(n),t.write(`${f(`Removed task script`,n)}\n`)}catch{t.write(`Task script not found at ${n}\n`)}}function Z(e){return(e.stderr||e.stdout).toLowerCase().includes(`not running`)}async function Te({stdout:e,env:t}){await X();let n=J(t??process.env),r=await q([`/End`,`/TN`,n]);if(r.code!==0&&!Z(r))throw Error(`schtasks end failed: ${r.stderr||r.stdout}`.trim());e.write(`${f(`Stopped Scheduled Task`,n)}\n`)}async function Ee({stdout:e,env:t}){await X();let n=J(t??process.env);await q([`/End`,`/TN`,n]);let r=await q([`/Run`,`/TN`,n]);if(r.code!==0)throw Error(`schtasks run failed: ${r.stderr||r.stdout}`.trim());return e.write(`${f(`Restarted Scheduled Task`,n)}\n`),{outcome:`completed`}}async function De(e){return await X(),(await q([`/Query`,`/TN`,J(e.env??process.env)])).code===0}async function Oe(e=process.env){try{await X()}catch(e){return{status:`unknown`,detail:String(e)}}let t=await q([`/Query`,`/TN`,J(e),`/V`,`/FO`,`LIST`]);if(t.code!==0){let e=(t.stderr||t.stdout).trim(),n=e.toLowerCase().includes(`cannot find the file`);return{status:n?`stopped`:`unknown`,detail:e||void 0,missingUnit:n}}let n=ve(t.stdout||``),r=xe(n);return{status:r.status,state:n.status,lastRunTime:n.lastRunTime,lastRunResult:n.lastRunResult,...r.detail?{detail:r.detail}:{}}}function Q(e){return async t=>{await e(t)}}function ke(e,t){return t.outcome===`scheduled`?{scheduled:!0,daemonActionResult:`scheduled`,message:`restart scheduled, ${e.toLowerCase()} will restart momentarily`,progressMessage:`${e} service restart scheduled.`}:{scheduled:!1,daemonActionResult:`restarted`,message:`${e} service restarted.`,progressMessage:`${e} service restarted.`}}const $={darwin:{label:`LaunchAgent`,loadedText:`loaded`,notLoadedText:`not loaded`,install:Q(pe),uninstall:de,stop:fe,restart:me,isLoaded:V,readCommand:le,readRuntime:W},linux:{label:`systemd`,loadedText:`enabled`,notLoadedText:`disabled`,install:Q(ne),uninstall:g,stop:ee,restart:h,isLoaded:b,readCommand:p,readRuntime:te},win32:{label:`Scheduled Task`,loadedText:`registered`,notLoadedText:`missing`,install:Q(Ce),uninstall:we,stop:Te,restart:Ee,isLoaded:De,readCommand:_e,readRuntime:Oe}};function Ae(e){return Object.hasOwn($,e)}function je(){if(Ae(process.platform))return $[process.platform];throw Error(`Gateway service install not supported on ${process.platform}`)}export{V as a,F as c,H as i,P as l,je as n,U as o,q as r,ue as s,ke as t,j as u};
|
|
33
|
+
//# sourceMappingURL=service-DZ9EbS15.js.map
|
package/dist/session-C9TDmUS7.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{S as e,b as t,h as n,l as r}from"./subsystem-Bc2XrjUz.js";import{a as i,h as a}from"./utils-D3t-vPka.js";import{Dr as o,Er as s,Ms as c,Or as l,Sr as u,Ws as d,wr as f}from"./model-selection-B5JsBS9D.js";import p from"node:fs";import"node:crypto";import{DisconnectReason as m,fetchLatestBaileysVersion as h,makeCacheableSignalKeyStore as g,makeWASocket as _,useMultiFileAuthState as v}from"@whiskeysockets/baileys";import y from"qrcode-terminal";let b=Promise.resolve();function x(e,t,n){b=b.then(()=>S(e,t,n)).catch(e=>{n.warn({error:String(e)},`WhatsApp creds save queue error`)})}async function S(e,t,n){try{let t=l(e),n=o(e),r=f(t);if(r)try{JSON.parse(r),p.copyFileSync(t,n);try{p.chmodSync(n,384)}catch{}}catch{}}catch{}try{await Promise.resolve(t());try{p.chmodSync(l(e),384)}catch{}}catch(e){n.warn({error:String(e)},`failed saving WhatsApp creds`)}}async function C(o,l,f={}){let p=e(t({module:`baileys`},{level:l?`info`:`silent`}),l?`info`:`silent`),b=a(f.authDir??s());await i(b);let S=t({module:`web-session`});u(b);let{state:C,saveCreds:w}=await v(b),{version:E}=await h(),D=_({auth:{creds:C.creds,keys:g(C.keys,p)},version:E,logger:p,printQRInTerminal:!1,browser:[`openclaw`,`cli`,c],syncFullHistory:!1,markOnlineOnConnect:!1});return D.ev.on(`creds.update`,()=>x(b,w,S)),D.ev.on(`connection.update`,e=>{try{let{connection:t,lastDisconnect:i,qr:a}=e;a&&(f.onQr?.(a),o&&(console.log(`Scan this QR in WhatsApp (Linked Devices):`),y.generate(a,{small:!0}))),t===`close`&&T(i?.error)===m.loggedOut&&console.error(r(`WhatsApp session logged out. Run: ${d(`openclaw channels login`)}`)),t===`open`&&l&&console.log(n(`WhatsApp Web connected.`))}catch(e){S.error({error:String(e)},`connection.update handler error`)}}),D.ws&&typeof D.ws.on==`function`&&D.ws.on(`error`,e=>{S.error({error:String(e)},`WebSocket error`)}),D}async function w(e){return new Promise((t,n)=>{let r=e.ev,i=(...e)=>{let a=e[0]??{};a.connection===`open`&&(r.off?.(`connection.update`,i),t()),a.connection===`close`&&(r.off?.(`connection.update`,i),n(a.lastDisconnect??Error(`Connection closed`)))};e.ev.on(`connection.update`,i)})}function T(e){return e?.output?.statusCode??e?.status}function E(e,t=800){try{let n=new WeakSet,r=JSON.stringify(e,(e,t)=>{if(typeof t==`bigint`)return t.toString();if(typeof t==`function`){let e=t.name;return`[Function ${typeof e==`string`&&e.length>0?e:`anonymous`}]`}if(typeof t==`object`&&t){if(n.has(t))return`[Circular]`;n.add(t)}return t},2);return r?r.length>t?`${r.slice(0,t)}…`:r:String(e)}catch{return String(e)}}function D(e){if(!e||typeof e!=`object`)return null;let t=e?.output;if(!t||typeof t!=`object`)return null;let n=t.payload,r=typeof t.statusCode==`number`?t.statusCode:typeof n?.statusCode==`number`?n.statusCode:void 0,i=typeof n?.error==`string`?n.error:void 0,a=typeof n?.message==`string`?n.message:void 0;return!r&&!i&&!a?null:{statusCode:r,error:i,message:a}}function O(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;if(!e||typeof e!=`object`)return String(e);let t=D(e)??D(e?.error)??D(e?.lastDisconnect?.error),n=t?.statusCode??T(e),r=e?.code,i=typeof r==`string`||typeof r==`number`?String(r):void 0,a=[t?.message,typeof e?.message==`string`?e.message:void 0,typeof e?.error?.message==`string`?e.error?.message:void 0].filter(e=>!!(e&&e.trim().length>0))[0],o=[];return typeof n==`number`&&o.push(`status=${n}`),t?.error&&o.push(t.error),a&&o.push(a),i&&o.push(`code=${i}`),o.length>0?o.join(` `):E(e)}export{w as i,O as n,T as r,C as t};
|
|
2
|
+
//# sourceMappingURL=session-C9TDmUS7.js.map
|
package/dist/session-CUUGjiV3.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{E as e,P as t,j as n,v as r}from"./subsystem-C5XF2Fy5.js";import{c as i,y as a}from"./utils-UGOV_184.js";import{Ml as o}from"./model-selection-BlC_rXAN.js";import{t as s}from"./command-format-BbDT1tlm.js";import{Q as c,X as l,et as u,nt as d,tt as f}from"./plugins-CYLrFT4h.js";import p from"node:fs";import"node:crypto";import{DisconnectReason as m,fetchLatestBaileysVersion as h,makeCacheableSignalKeyStore as g,makeWASocket as _,useMultiFileAuthState as v}from"@whiskeysockets/baileys";import y from"qrcode-terminal";let b=Promise.resolve();function x(e,t,n){b=b.then(()=>S(e,t,n)).catch(e=>{n.warn({error:String(e)},`WhatsApp creds save queue error`)})}async function S(e,t,n){try{let t=d(e),n=f(e),r=c(t);if(r)try{JSON.parse(r),p.copyFileSync(t,n);try{p.chmodSync(n,384)}catch{}}catch{}}catch{}try{await Promise.resolve(t());try{p.chmodSync(d(e),384)}catch{}}catch(e){n.warn({error:String(e)},`failed saving WhatsApp creds`)}}async function C(c,d,f={}){let p=t(n({module:`baileys`},{level:d?`info`:`silent`}),d?`info`:`silent`),b=a(f.authDir??u());await i(b);let S=n({module:`web-session`});l(b);let{state:C,saveCreds:w}=await v(b),{version:E}=await h(),D=_({auth:{creds:C.creds,keys:g(C.keys,p)},version:E,logger:p,printQRInTerminal:!1,browser:[`openclaw`,`cli`,o],syncFullHistory:!1,markOnlineOnConnect:!1});return D.ev.on(`creds.update`,()=>x(b,w,S)),D.ev.on(`connection.update`,t=>{try{let{connection:n,lastDisconnect:i,qr:a}=t;a&&(f.onQr?.(a),c&&(console.log(`Scan this QR in WhatsApp (Linked Devices):`),y.generate(a,{small:!0}))),n===`close`&&T(i?.error)===m.loggedOut&&console.error(r(`WhatsApp session logged out. Run: ${s(`openclaw channels login`)}`)),n===`open`&&d&&console.log(e(`WhatsApp Web connected.`))}catch(e){S.error({error:String(e)},`connection.update handler error`)}}),D.ws&&typeof D.ws.on==`function`&&D.ws.on(`error`,e=>{S.error({error:String(e)},`WebSocket error`)}),D}async function w(e){return new Promise((t,n)=>{let r=e.ev,i=(...e)=>{let a=e[0]??{};a.connection===`open`&&(r.off?.(`connection.update`,i),t()),a.connection===`close`&&(r.off?.(`connection.update`,i),n(a.lastDisconnect??Error(`Connection closed`)))};e.ev.on(`connection.update`,i)})}function T(e){return e?.output?.statusCode??e?.status}function E(e,t=800){try{let n=new WeakSet,r=JSON.stringify(e,(e,t)=>{if(typeof t==`bigint`)return t.toString();if(typeof t==`function`){let e=t.name;return`[Function ${typeof e==`string`&&e.length>0?e:`anonymous`}]`}if(typeof t==`object`&&t){if(n.has(t))return`[Circular]`;n.add(t)}return t},2);return r?r.length>t?`${r.slice(0,t)}…`:r:String(e)}catch{return String(e)}}function D(e){if(!e||typeof e!=`object`)return null;let t=e?.output;if(!t||typeof t!=`object`)return null;let n=t.payload,r=typeof t.statusCode==`number`?t.statusCode:typeof n?.statusCode==`number`?n.statusCode:void 0,i=typeof n?.error==`string`?n.error:void 0,a=typeof n?.message==`string`?n.message:void 0;return!r&&!i&&!a?null:{statusCode:r,error:i,message:a}}function O(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;if(!e||typeof e!=`object`)return String(e);let t=D(e)??D(e?.error)??D(e?.lastDisconnect?.error),n=t?.statusCode??T(e),r=e?.code,i=typeof r==`string`||typeof r==`number`?String(r):void 0,a=[t?.message,typeof e?.message==`string`?e.message:void 0,typeof e?.error?.message==`string`?e.error?.message:void 0].filter(e=>!!(e&&e.trim().length>0))[0],o=[];return typeof n==`number`&&o.push(`status=${n}`),t?.error&&o.push(t.error),a&&o.push(a),i&&o.push(`code=${i}`),o.length>0?o.join(` `):E(e)}export{w as i,O as n,T as r,C as t};
|
|
2
|
+
//# sourceMappingURL=session-CUUGjiV3.js.map
|
package/dist/session-DA-i5xQ-.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{I as e,K as t,V as n,l as r,q as i,y as a}from"./logger-DwWqfo66.js";import{Dr as o,Er as s,Fs as c,Or as l,Sr as u,qs as d,wr as f}from"./model-selection-vfhBuN9O.js";import p from"node:fs";import"node:crypto";import{DisconnectReason as m,fetchLatestBaileysVersion as h,makeCacheableSignalKeyStore as g,makeWASocket as _,useMultiFileAuthState as v}from"@whiskeysockets/baileys";import y from"qrcode-terminal";let b=Promise.resolve();function x(e,t,n){b=b.then(()=>S(e,t,n)).catch(e=>{n.warn({error:String(e)},`WhatsApp creds save queue error`)})}async function S(e,t,n){try{let t=l(e),n=o(e),r=f(t);if(r)try{JSON.parse(r),p.copyFileSync(t,n);try{p.chmodSync(n,384)}catch{}}catch{}}catch{}try{await Promise.resolve(t());try{p.chmodSync(l(e),384)}catch{}}catch(e){n.warn({error:String(e)},`failed saving WhatsApp creds`)}}async function C(o,l,f={}){let p=i(t({module:`baileys`},{level:l?`info`:`silent`}),l?`info`:`silent`),b=a(f.authDir??s());await r(b);let S=t({module:`web-session`});u(b);let{state:C,saveCreds:w}=await v(b),{version:E}=await h(),D=_({auth:{creds:C.creds,keys:g(C.keys,p)},version:E,logger:p,printQRInTerminal:!1,browser:[`openclaw`,`cli`,c],syncFullHistory:!1,markOnlineOnConnect:!1});return D.ev.on(`creds.update`,()=>x(b,w,S)),D.ev.on(`connection.update`,t=>{try{let{connection:r,lastDisconnect:i,qr:a}=t;a&&(f.onQr?.(a),o&&(console.log(`Scan this QR in WhatsApp (Linked Devices):`),y.generate(a,{small:!0}))),r===`close`&&T(i?.error)===m.loggedOut&&console.error(e(`WhatsApp session logged out. Run: ${d(`openclaw channels login`)}`)),r===`open`&&l&&console.log(n(`WhatsApp Web connected.`))}catch(e){S.error({error:String(e)},`connection.update handler error`)}}),D.ws&&typeof D.ws.on==`function`&&D.ws.on(`error`,e=>{S.error({error:String(e)},`WebSocket error`)}),D}async function w(e){return new Promise((t,n)=>{let r=e.ev,i=(...e)=>{let a=e[0]??{};a.connection===`open`&&(r.off?.(`connection.update`,i),t()),a.connection===`close`&&(r.off?.(`connection.update`,i),n(a.lastDisconnect??Error(`Connection closed`)))};e.ev.on(`connection.update`,i)})}function T(e){return e?.output?.statusCode??e?.status}function E(e,t=800){try{let n=new WeakSet,r=JSON.stringify(e,(e,t)=>{if(typeof t==`bigint`)return t.toString();if(typeof t==`function`){let e=t.name;return`[Function ${typeof e==`string`&&e.length>0?e:`anonymous`}]`}if(typeof t==`object`&&t){if(n.has(t))return`[Circular]`;n.add(t)}return t},2);return r?r.length>t?`${r.slice(0,t)}…`:r:String(e)}catch{return String(e)}}function D(e){if(!e||typeof e!=`object`)return null;let t=e?.output;if(!t||typeof t!=`object`)return null;let n=t.payload,r=typeof t.statusCode==`number`?t.statusCode:typeof n?.statusCode==`number`?n.statusCode:void 0,i=typeof n?.error==`string`?n.error:void 0,a=typeof n?.message==`string`?n.message:void 0;return!r&&!i&&!a?null:{statusCode:r,error:i,message:a}}function O(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;if(!e||typeof e!=`object`)return String(e);let t=D(e)??D(e?.error)??D(e?.lastDisconnect?.error),n=t?.statusCode??T(e),r=e?.code,i=typeof r==`string`||typeof r==`number`?String(r):void 0,a=[t?.message,typeof e?.message==`string`?e.message:void 0,typeof e?.error?.message==`string`?e.error?.message:void 0].filter(e=>!!(e&&e.trim().length>0))[0],o=[];return typeof n==`number`&&o.push(`status=${n}`),t?.error&&o.push(t.error),a&&o.push(a),i&&o.push(`code=${i}`),o.length>0?o.join(` `):E(e)}export{w as i,O as n,T as r,C as t};
|
|
2
|
+
//# sourceMappingURL=session-DA-i5xQ-.js.map
|
package/dist/session-bk3gFwO4.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{E as e,P as t,j as n,v as r}from"./subsystem-BLbY429l.js";import{t as i}from"./command-format-CLxIPuLR.js";import{s as a,v as o}from"./utils-CGdo13HV.js";import{t as s}from"./version-q3SkUw2K.js";import{Q as c,X as l,et as u,nt as d,tt as f}from"./plugins-DNlgeTTc.js";import p from"node:fs";import"node:crypto";import{DisconnectReason as m,fetchLatestBaileysVersion as h,makeCacheableSignalKeyStore as g,makeWASocket as _,useMultiFileAuthState as v}from"@whiskeysockets/baileys";import y from"qrcode-terminal";let b=Promise.resolve();function x(e,t,n){b=b.then(()=>S(e,t,n)).catch(e=>{n.warn({error:String(e)},`WhatsApp creds save queue error`)})}async function S(e,t,n){try{let t=d(e),n=f(e),r=c(t);if(r)try{JSON.parse(r),p.copyFileSync(t,n);try{p.chmodSync(n,384)}catch{}}catch{}}catch{}try{await Promise.resolve(t());try{p.chmodSync(d(e),384)}catch{}}catch(e){n.warn({error:String(e)},`failed saving WhatsApp creds`)}}async function C(c,d,f={}){let p=t(n({module:`baileys`},{level:d?`info`:`silent`}),d?`info`:`silent`),b=o(f.authDir??u());await a(b);let S=n({module:`web-session`});l(b);let{state:C,saveCreds:w}=await v(b),{version:E}=await h(),D=_({auth:{creds:C.creds,keys:g(C.keys,p)},version:E,logger:p,printQRInTerminal:!1,browser:[`openclaw`,`cli`,s],syncFullHistory:!1,markOnlineOnConnect:!1});return D.ev.on(`creds.update`,()=>x(b,w,S)),D.ev.on(`connection.update`,t=>{try{let{connection:n,lastDisconnect:a,qr:o}=t;o&&(f.onQr?.(o),c&&(console.log(`Scan this QR in WhatsApp (Linked Devices):`),y.generate(o,{small:!0}))),n===`close`&&T(a?.error)===m.loggedOut&&console.error(r(`WhatsApp session logged out. Run: ${i(`openclaw channels login`)}`)),n===`open`&&d&&console.log(e(`WhatsApp Web connected.`))}catch(e){S.error({error:String(e)},`connection.update handler error`)}}),D.ws&&typeof D.ws.on==`function`&&D.ws.on(`error`,e=>{S.error({error:String(e)},`WebSocket error`)}),D}async function w(e){return new Promise((t,n)=>{let r=e.ev,i=(...e)=>{let a=e[0]??{};a.connection===`open`&&(r.off?.(`connection.update`,i),t()),a.connection===`close`&&(r.off?.(`connection.update`,i),n(a.lastDisconnect??Error(`Connection closed`)))};e.ev.on(`connection.update`,i)})}function T(e){return e?.output?.statusCode??e?.status}function E(e,t=800){try{let n=new WeakSet,r=JSON.stringify(e,(e,t)=>{if(typeof t==`bigint`)return t.toString();if(typeof t==`function`){let e=t.name;return`[Function ${typeof e==`string`&&e.length>0?e:`anonymous`}]`}if(typeof t==`object`&&t){if(n.has(t))return`[Circular]`;n.add(t)}return t},2);return r?r.length>t?`${r.slice(0,t)}…`:r:String(e)}catch{return String(e)}}function D(e){if(!e||typeof e!=`object`)return null;let t=e?.output;if(!t||typeof t!=`object`)return null;let n=t.payload,r=typeof t.statusCode==`number`?t.statusCode:typeof n?.statusCode==`number`?n.statusCode:void 0,i=typeof n?.error==`string`?n.error:void 0,a=typeof n?.message==`string`?n.message:void 0;return!r&&!i&&!a?null:{statusCode:r,error:i,message:a}}function O(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;if(!e||typeof e!=`object`)return String(e);let t=D(e)??D(e?.error)??D(e?.lastDisconnect?.error),n=t?.statusCode??T(e),r=e?.code,i=typeof r==`string`||typeof r==`number`?String(r):void 0,a=[t?.message,typeof e?.message==`string`?e.message:void 0,typeof e?.error?.message==`string`?e.error?.message:void 0].filter(e=>!!(e&&e.trim().length>0))[0],o=[];return typeof n==`number`&&o.push(`status=${n}`),t?.error&&o.push(t.error),a&&o.push(a),i&&o.push(`code=${i}`),o.length>0?o.join(` `):E(e)}export{w as i,O as n,T as r,C as t};
|
|
2
|
+
//# sourceMappingURL=session-bk3gFwO4.js.map
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import{t as e}from"./rolldown-runtime-CNxR59P3.js";import{n as t,s as n}from"./paths-yLEk_25I.js";import{i as r,n as i,o as a,s as o,t as s}from"./chat-envelope-HVpKusFc.js";import{i as c,t as l}from"./usage-format-BWD8FJFL.js";import u from"node:fs";import d from"node:path";import f from"node:readline";function p(){return{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}const m=e=>{if(typeof e==`number`&&Number.isFinite(e))return e};function h(e){return e?[e.input,e.output,e.cacheRead,e.cacheWrite,e.total].some(e=>typeof e==`number`&&Number.isFinite(e)&&e>0):!1}function g(e){if(!e)return;let t=m(e.input??e.inputTokens??e.input_tokens??e.promptTokens??e.prompt_tokens),n=t!==void 0&&t<0?0:t,r=m(e.output??e.outputTokens??e.output_tokens??e.completionTokens??e.completion_tokens),i=m(e.cacheRead??e.cache_read??e.cache_read_input_tokens??e.cached_tokens??e.prompt_tokens_details?.cached_tokens),a=m(e.cacheWrite??e.cache_write??e.cache_creation_input_tokens),o=m(e.total??e.totalTokens??e.total_tokens);if(!(n===void 0&&r===void 0&&i===void 0&&a===void 0&&o===void 0))return{input:n,output:r,cacheRead:i,cacheWrite:a,total:o}}function _(e){if(!e)return;let t=e.input??0,n=e.cacheRead??0,r=e.cacheWrite??0,i=t+n+r;return i>0?i:void 0}function v(e){let t=e.promptTokens,n=typeof t==`number`&&Number.isFinite(t)&&t>0,r=e.usage;if(!r&&!n)return;let i=n?t:_({input:r?.input,cacheRead:r?.cacheRead,cacheWrite:r?.cacheWrite});if(!(typeof i!=`number`||!Number.isFinite(i)||i<=0))return i}var y=e({discoverAllSessions:()=>P,loadCostUsageSummary:()=>N,loadSessionCostSummary:()=>F,loadSessionLogs:()=>L,loadSessionUsageTimeSeries:()=>I});const b=()=>({input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,totalCost:0,inputCost:0,outputCost:0,cacheReadCost:0,cacheWriteCost:0,missingCostEntries:0}),x=e=>{if(typeof e==`number`&&Number.isFinite(e))return e},S=e=>{if(!e||typeof e!=`object`)return;let t=e.cost;if(!t)return;let n=x(t.total);if(!(n===void 0||n<0))return{total:n,input:x(t.input),output:x(t.output),cacheRead:x(t.cacheRead),cacheWrite:x(t.cacheWrite)}},C=e=>{let t=e.timestamp;if(typeof t==`string`){let e=new Date(t);if(!Number.isNaN(e.valueOf()))return e}let n=e.message,r=x(n?.timestamp);if(r!==void 0){let e=new Date(r);if(!Number.isNaN(e.valueOf()))return e}},w=e=>{let t=e.message;if(!t||typeof t!=`object`)return null;let n=t.role,r=n===`user`||n===`assistant`?n:void 0;if(!r)return null;let i=t.usage??e.usage,s=i?g(i)??void 0:void 0,c=(typeof t.provider==`string`?t.provider:void 0)??(typeof e.provider==`string`?e.provider:void 0),l=(typeof t.model==`string`?t.model:void 0)??(typeof e.model==`string`?e.model:void 0),u=S(i),d=typeof t.stopReason==`string`?t.stopReason:void 0,f=x(t.durationMs??e.durationMs);return{message:t,role:r,timestamp:C(e),durationMs:f,usage:s,costTotal:u?.total,costBreakdown:u,provider:c,model:l,stopReason:d,toolNames:o(t),toolResultCounts:a(t)}},T=e=>e.toLocaleDateString(`en-CA`,{timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}),E=e=>{if(!e.length)return;let t=e.toSorted((e,t)=>e-t),n=t.reduce((e,t)=>e+t,0),r=t.length,i=Math.max(0,Math.ceil(r*.95)-1);return{count:r,avgMs:n/r,p95Ms:t[i]??t[r-1],minMs:t[0],maxMs:t[r-1]}},D=(e,t)=>{e.input+=t.input??0,e.output+=t.output??0,e.cacheRead+=t.cacheRead??0,e.cacheWrite+=t.cacheWrite??0;let n=t.total??(t.input??0)+(t.output??0)+(t.cacheRead??0)+(t.cacheWrite??0);e.totalTokens+=n},O=(e,t)=>{t===void 0||t.total===void 0||(e.totalCost+=t.total,e.inputCost+=t.input??0,e.outputCost+=t.output??0,e.cacheReadCost+=t.cacheRead??0,e.cacheWriteCost+=t.cacheWrite??0)},k=(e,t)=>{if(t===void 0){e.missingCostEntries+=1;return}e.totalCost+=t};async function*A(e){let t=u.createReadStream(e,{encoding:`utf-8`}),n=f.createInterface({input:t,crlfDelay:1/0});try{for await(let e of n){let t=e.trim();if(t)try{let e=JSON.parse(t);if(!e||typeof e!=`object`)continue;yield e}catch{}}}finally{n.close(),t.destroy()}}async function j(e){for await(let t of A(e.filePath)){let n=w(t);if(n){if(n.usage&&n.costTotal===void 0){let t=c({provider:n.provider,model:n.model,config:e.config});n.costTotal=l({usage:n.usage,cost:t})}e.onEntry(n)}}}async function M(e){await j({filePath:e.filePath,config:e.config,onEntry:t=>{t.usage&&e.onEntry({usage:t.usage,costTotal:t.costTotal,costBreakdown:t.costBreakdown,provider:t.provider,model:t.model,timestamp:t.timestamp})}})}async function N(e){let t=new Date,r,i;if(e?.startMs!==void 0&&e?.endMs!==void 0)r=e.startMs,i=e.endMs;else{let n=Math.max(1,Math.floor(e?.days??30)),a=new Date(t);a.setDate(a.getDate()-(n-1)),r=a.getTime(),i=t.getTime()}let a=new Map,o=b(),s=n(e?.agentId),c=await u.promises.readdir(s,{withFileTypes:!0}).catch(()=>[]),l=(await Promise.all(c.filter(e=>e.isFile()&&e.name.endsWith(`.jsonl`)).map(async e=>{let t=d.join(s,e.name),n=await u.promises.stat(t).catch(()=>null);return!n||n.mtimeMs<r?null:t}))).filter(e=>!!e);for(let n of l)await M({filePath:n,config:e?.config,onEntry:e=>{let n=e.timestamp?.getTime();if(!n||n<r||n>i)return;let s=T(e.timestamp??t),c=a.get(s)??b();D(c,e.usage),e.costBreakdown?.total===void 0?k(c,e.costTotal):O(c,e.costBreakdown),a.set(s,c),D(o,e.usage),e.costBreakdown?.total===void 0?k(o,e.costTotal):O(o,e.costBreakdown)}});let f=Array.from(a.entries()).map(([e,t])=>Object.assign({date:e},t)).toSorted((e,t)=>e.date.localeCompare(t.date)),p=Math.ceil((i-r)/(1440*60*1e3))+1;return{updatedAt:Date.now(),days:p,daily:f,totals:o}}async function P(e){let t=n(e?.agentId),r=await u.promises.readdir(t,{withFileTypes:!0}).catch(()=>[]),i=[];for(let n of r){if(!n.isFile()||!n.name.endsWith(`.jsonl`))continue;let r=d.join(t,n.name),a=await u.promises.stat(r).catch(()=>null);if(!a||e?.startMs&&a.mtimeMs<e.startMs)continue;let o=n.name.slice(0,-6),s;try{for await(let e of A(r))try{let t=e.message;if(t?.role===`user`){let e=t.content;if(typeof e==`string`)s=e.slice(0,100);else if(Array.isArray(e)){for(let t of e)if(typeof t==`object`&&t&&t.type===`text`){let e=t.text;typeof e==`string`&&(s=e.slice(0,100));break}}break}}catch{}}catch{}i.push({sessionId:o,sessionFile:r,mtime:a.mtimeMs,firstUserMessage:s})}return i.toSorted((e,t)=>t.mtime-e.mtime)}async function F(e){let n=e.sessionFile??(e.sessionId?t(e.sessionId,e.sessionEntry,{agentId:e.agentId}):void 0);if(!n||!u.existsSync(n))return null;let r=b(),i,a,o=new Set,s=new Map,c=new Map,l=new Map,d=new Map,f={total:0,user:0,assistant:0,toolCalls:0,toolResults:0,errors:0},p=new Map,m=new Map,h=new Set([`error`,`aborted`,`timeout`]),g=[],_;await j({filePath:n,config:e.config,onEntry:t=>{let n=t.timestamp?.getTime();if(!(e.startMs!==void 0&&n!==void 0&&n<e.startMs)&&!(e.endMs!==void 0&&n!==void 0&&n>e.endMs)){if(n!==void 0&&((!i||n<i)&&(i=n),(!a||n>a)&&(a=n)),t.role===`user`&&(f.user+=1,f.total+=1,t.timestamp&&(_=t.timestamp.getTime())),t.role===`assistant`){f.assistant+=1,f.total+=1;let e=t.timestamp?.getTime();if(e!==void 0){let n=t.durationMs??(_===void 0?void 0:Math.max(0,e-_));if(n!==void 0&&Number.isFinite(n)&&n<=432e5){g.push(n);let r=T(t.timestamp??new Date(e)),i=l.get(r)??[];i.push(n),l.set(r,i)}}}if(t.toolNames.length>0){f.toolCalls+=t.toolNames.length;for(let e of t.toolNames)p.set(e,(p.get(e)??0)+1)}if(t.toolResultCounts.total>0&&(f.toolResults+=t.toolResultCounts.total,f.errors+=t.toolResultCounts.errors),t.stopReason&&h.has(t.stopReason)&&(f.errors+=1),t.timestamp){let e=T(t.timestamp);o.add(e);let n=c.get(e)??{date:e,total:0,user:0,assistant:0,toolCalls:0,toolResults:0,errors:0};n.total+=t.role===`user`||t.role===`assistant`?1:0,t.role===`user`?n.user+=1:t.role===`assistant`&&(n.assistant+=1),n.toolCalls+=t.toolNames.length,n.toolResults+=t.toolResultCounts.total,n.errors+=t.toolResultCounts.errors,t.stopReason&&h.has(t.stopReason)&&(n.errors+=1),c.set(e,n)}if(t.usage){if(D(r,t.usage),t.costBreakdown?.total===void 0?k(r,t.costTotal):O(r,t.costBreakdown),t.timestamp){let e=T(t.timestamp),n=(t.usage.input??0)+(t.usage.output??0)+(t.usage.cacheRead??0)+(t.usage.cacheWrite??0),r=t.costBreakdown?.total??(t.costBreakdown?(t.costBreakdown.input??0)+(t.costBreakdown.output??0)+(t.costBreakdown.cacheRead??0)+(t.costBreakdown.cacheWrite??0):t.costTotal??0),i=s.get(e)??{tokens:0,cost:0};if(s.set(e,{tokens:i.tokens+n,cost:i.cost+r}),t.provider||t.model){let i=`${e}::${t.provider??`unknown`}::${t.model??`unknown`}`,a=d.get(i)??{date:e,provider:t.provider,model:t.model,tokens:0,cost:0,count:0};a.tokens+=n,a.cost+=r,a.count+=1,d.set(i,a)}}if(t.provider||t.model){let e=`${t.provider??`unknown`}::${t.model??`unknown`}`,n=m.get(e)??{provider:t.provider,model:t.model,count:0,totals:b()};n.count+=1,D(n.totals,t.usage),t.costBreakdown?.total===void 0?k(n.totals,t.costTotal):O(n.totals,t.costBreakdown),m.set(e,n)}}}}});let v=Array.from(s.entries()).map(([e,t])=>({date:e,tokens:t.tokens,cost:t.cost})).toSorted((e,t)=>e.date.localeCompare(t.date)),y=Array.from(c.values()).toSorted((e,t)=>e.date.localeCompare(t.date)),x=Array.from(l.entries()).map(([e,t])=>{let n=E(t);return n?{date:e,...n}:null}).filter(e=>!!e).toSorted((e,t)=>e.date.localeCompare(t.date)),S=Array.from(d.values()).toSorted((e,t)=>e.date.localeCompare(t.date)||t.cost-e.cost),C=p.size?{totalCalls:Array.from(p.values()).reduce((e,t)=>e+t,0),uniqueTools:p.size,tools:Array.from(p.entries()).map(([e,t])=>({name:e,count:t})).toSorted((e,t)=>t.count-e.count)}:void 0,w=m.size?Array.from(m.values()).toSorted((e,t)=>{let n=t.totals.totalCost-e.totals.totalCost;return n===0?t.totals.totalTokens-e.totals.totalTokens:n}):void 0;return{sessionId:e.sessionId,sessionFile:n,firstActivity:i,lastActivity:a,durationMs:i!==void 0&&a!==void 0?Math.max(0,a-i):void 0,activityDates:Array.from(o).toSorted(),dailyBreakdown:v,dailyMessageCounts:y,dailyLatency:x.length?x:void 0,dailyModelUsage:S.length?S:void 0,messageCounts:f,toolUsage:C,modelUsage:w,latency:E(g),...r}}async function I(e){let n=e.sessionFile??(e.sessionId?t(e.sessionId,e.sessionEntry,{agentId:e.agentId}):void 0);if(!n||!u.existsSync(n))return null;let r=[],i=0,a=0;await M({filePath:n,config:e.config,onEntry:e=>{let t=e.timestamp?.getTime();if(!t)return;let n=e.usage.input??0,o=e.usage.output??0,s=e.usage.cacheRead??0,c=e.usage.cacheWrite??0,l=e.usage.total??n+o+s+c,u=e.costTotal??0;i+=l,a+=u,r.push({timestamp:t,input:n,output:o,cacheRead:s,cacheWrite:c,totalTokens:l,cost:u,cumulativeTokens:i,cumulativeCost:a})}});let o=r.toSorted((e,t)=>e.timestamp-t.timestamp),s=e.maxPoints??100;if(o.length>s){let t=Math.ceil(o.length/s),n=[],r=0,i=0;for(let e=0;e<o.length;e+=t){let a=o.slice(e,e+t),s=a[a.length-1];if(!s)continue;let c=0,l=0,u=0,d=0,f=0,p=0;for(let e of a)c+=e.input,l+=e.output,u+=e.cacheRead,d+=e.cacheWrite,f+=e.totalTokens,p+=e.cost;r+=f,i+=p,n.push({timestamp:s.timestamp,input:c,output:l,cacheRead:u,cacheWrite:d,totalTokens:f,cost:p,cumulativeTokens:r,cumulativeCost:i})}return{sessionId:e.sessionId,points:n}}return{sessionId:e.sessionId,points:o}}async function L(e){let n=e.sessionFile??(e.sessionId?t(e.sessionId,e.sessionEntry,{agentId:e.agentId}):void 0);if(!n||!u.existsSync(n))return null;let a=[],o=e.limit??50;for await(let t of A(n))try{let n=t.message;if(!n)continue;let o=n.role;if(o!==`user`&&o!==`assistant`&&o!==`tool`&&o!==`toolResult`)continue;let u=[],d=n.toolName??n.tool_name??n.name??n.tool,f=typeof d==`string`&&d.trim()?d.trim():void 0;(o===`tool`||o===`toolResult`)&&(u.push(`[Tool: ${f??`tool`}]`),u.push(`[Tool Result]`));let p=n.content;if(typeof p==`string`)u.push(p);else if(Array.isArray(p)){let e=p.map(e=>{if(typeof e==`string`)return e;let t=e;return t.type===`text`&&typeof t.text==`string`?t.text:t.type===`tool_use`?`[Tool: ${typeof t.name==`string`?t.name:`unknown`}]`:t.type===`tool_result`?`[Tool Result]`:``}).filter(Boolean).join(`
|
|
2
2
|
`);e&&u.push(e)}let m=n.tool_calls??n.toolCalls??n.function_call??n.functionCall,h=Array.isArray(m)?m:m?[m]:[];if(h.length>0)for(let e of h){let t=e,n=typeof t.name==`string`?t.name:void 0,r=t.function,i=typeof r?.name==`string`?r.name:void 0,a=n??i??`unknown`;u.push(`[Tool: ${a}]`)}let _=u.join(`
|
|
3
3
|
`).trim();if(!_||(_=r(_),o===`user`&&(_=i(s(_)).trim()),!_))continue;let v=2e3;_.length>v&&(_=_.slice(0,v)+`…`);let y=0;typeof t.timestamp==`string`?y=new Date(t.timestamp).getTime():typeof n.timestamp==`number`&&(y=n.timestamp);let b,x;if(o===`assistant`){let t=n.usage,r=g(t);if(r){b=r.total??(r.input??0)+(r.output??0)+(r.cacheRead??0)+(r.cacheWrite??0);let i=S(t);x=i?.total===void 0?l({usage:r,cost:c({provider:n.provider,model:n.model,config:e.config})}):i.total}}a.push({timestamp:y,role:o,content:_,tokens:b,cost:x})}catch{}let d=a.toSorted((e,t)=>e.timestamp-t.timestamp);return d.length>o?d.slice(-o):d}export{y as a,h as c,I as i,p as l,N as n,_ as o,F as r,v as s,P as t,g as u};
|
|
4
|
+
//# sourceMappingURL=session-cost-usage-BgqKixv0.js.map
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import{t as e}from"./rolldown-runtime-CNxR59P3.js";import{n as t,s as n}from"./paths-BfjJY2VL.js";import{i as r,n as i,o as a,s as o,t as s}from"./chat-envelope-Bznn2SoS.js";import{i as c,t as l}from"./usage-format-yPwal8Iz.js";import u from"node:path";import d from"node:fs";import f from"node:readline";function p(){return{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}const m=e=>{if(typeof e==`number`&&Number.isFinite(e))return e};function h(e){return e?[e.input,e.output,e.cacheRead,e.cacheWrite,e.total].some(e=>typeof e==`number`&&Number.isFinite(e)&&e>0):!1}function g(e){if(!e)return;let t=m(e.input??e.inputTokens??e.input_tokens??e.promptTokens??e.prompt_tokens),n=t!==void 0&&t<0?0:t,r=m(e.output??e.outputTokens??e.output_tokens??e.completionTokens??e.completion_tokens),i=m(e.cacheRead??e.cache_read??e.cache_read_input_tokens??e.cached_tokens??e.prompt_tokens_details?.cached_tokens),a=m(e.cacheWrite??e.cache_write??e.cache_creation_input_tokens),o=m(e.total??e.totalTokens??e.total_tokens);if(!(n===void 0&&r===void 0&&i===void 0&&a===void 0&&o===void 0))return{input:n,output:r,cacheRead:i,cacheWrite:a,total:o}}function _(e){if(!e)return;let t=e.input??0,n=e.cacheRead??0,r=e.cacheWrite??0,i=t+n+r;return i>0?i:void 0}function v(e){let t=e.promptTokens,n=typeof t==`number`&&Number.isFinite(t)&&t>0,r=e.usage;if(!r&&!n)return;let i=n?t:_({input:r?.input,cacheRead:r?.cacheRead,cacheWrite:r?.cacheWrite});if(!(typeof i!=`number`||!Number.isFinite(i)||i<=0))return i}var y=e({discoverAllSessions:()=>P,loadCostUsageSummary:()=>N,loadSessionCostSummary:()=>F,loadSessionLogs:()=>L,loadSessionUsageTimeSeries:()=>I});const b=()=>({input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,totalCost:0,inputCost:0,outputCost:0,cacheReadCost:0,cacheWriteCost:0,missingCostEntries:0}),x=e=>{if(typeof e==`number`&&Number.isFinite(e))return e},S=e=>{if(!e||typeof e!=`object`)return;let t=e.cost;if(!t)return;let n=x(t.total);if(!(n===void 0||n<0))return{total:n,input:x(t.input),output:x(t.output),cacheRead:x(t.cacheRead),cacheWrite:x(t.cacheWrite)}},C=e=>{let t=e.timestamp;if(typeof t==`string`){let e=new Date(t);if(!Number.isNaN(e.valueOf()))return e}let n=e.message,r=x(n?.timestamp);if(r!==void 0){let e=new Date(r);if(!Number.isNaN(e.valueOf()))return e}},w=e=>{let t=e.message;if(!t||typeof t!=`object`)return null;let n=t.role,r=n===`user`||n===`assistant`?n:void 0;if(!r)return null;let i=t.usage??e.usage,s=i?g(i)??void 0:void 0,c=(typeof t.provider==`string`?t.provider:void 0)??(typeof e.provider==`string`?e.provider:void 0),l=(typeof t.model==`string`?t.model:void 0)??(typeof e.model==`string`?e.model:void 0),u=S(i),d=typeof t.stopReason==`string`?t.stopReason:void 0,f=x(t.durationMs??e.durationMs);return{message:t,role:r,timestamp:C(e),durationMs:f,usage:s,costTotal:u?.total,costBreakdown:u,provider:c,model:l,stopReason:d,toolNames:o(t),toolResultCounts:a(t)}},T=e=>e.toLocaleDateString(`en-CA`,{timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}),E=e=>{if(!e.length)return;let t=e.toSorted((e,t)=>e-t),n=t.reduce((e,t)=>e+t,0),r=t.length,i=Math.max(0,Math.ceil(r*.95)-1);return{count:r,avgMs:n/r,p95Ms:t[i]??t[r-1],minMs:t[0],maxMs:t[r-1]}},D=(e,t)=>{e.input+=t.input??0,e.output+=t.output??0,e.cacheRead+=t.cacheRead??0,e.cacheWrite+=t.cacheWrite??0;let n=t.total??(t.input??0)+(t.output??0)+(t.cacheRead??0)+(t.cacheWrite??0);e.totalTokens+=n},O=(e,t)=>{t===void 0||t.total===void 0||(e.totalCost+=t.total,e.inputCost+=t.input??0,e.outputCost+=t.output??0,e.cacheReadCost+=t.cacheRead??0,e.cacheWriteCost+=t.cacheWrite??0)},k=(e,t)=>{if(t===void 0){e.missingCostEntries+=1;return}e.totalCost+=t};async function*A(e){let t=d.createReadStream(e,{encoding:`utf-8`}),n=f.createInterface({input:t,crlfDelay:1/0});try{for await(let e of n){let t=e.trim();if(t)try{let e=JSON.parse(t);if(!e||typeof e!=`object`)continue;yield e}catch{}}}finally{n.close(),t.destroy()}}async function j(e){for await(let t of A(e.filePath)){let n=w(t);if(n){if(n.usage&&n.costTotal===void 0){let t=c({provider:n.provider,model:n.model,config:e.config});n.costTotal=l({usage:n.usage,cost:t})}e.onEntry(n)}}}async function M(e){await j({filePath:e.filePath,config:e.config,onEntry:t=>{t.usage&&e.onEntry({usage:t.usage,costTotal:t.costTotal,costBreakdown:t.costBreakdown,provider:t.provider,model:t.model,timestamp:t.timestamp})}})}async function N(e){let t=new Date,r,i;if(e?.startMs!==void 0&&e?.endMs!==void 0)r=e.startMs,i=e.endMs;else{let n=Math.max(1,Math.floor(e?.days??30)),a=new Date(t);a.setDate(a.getDate()-(n-1)),r=a.getTime(),i=t.getTime()}let a=new Map,o=b(),s=n(e?.agentId),c=await d.promises.readdir(s,{withFileTypes:!0}).catch(()=>[]),l=(await Promise.all(c.filter(e=>e.isFile()&&e.name.endsWith(`.jsonl`)).map(async e=>{let t=u.join(s,e.name),n=await d.promises.stat(t).catch(()=>null);return!n||n.mtimeMs<r?null:t}))).filter(e=>!!e);for(let n of l)await M({filePath:n,config:e?.config,onEntry:e=>{let n=e.timestamp?.getTime();if(!n||n<r||n>i)return;let s=T(e.timestamp??t),c=a.get(s)??b();D(c,e.usage),e.costBreakdown?.total===void 0?k(c,e.costTotal):O(c,e.costBreakdown),a.set(s,c),D(o,e.usage),e.costBreakdown?.total===void 0?k(o,e.costTotal):O(o,e.costBreakdown)}});let f=Array.from(a.entries()).map(([e,t])=>Object.assign({date:e},t)).toSorted((e,t)=>e.date.localeCompare(t.date)),p=Math.ceil((i-r)/(1440*60*1e3))+1;return{updatedAt:Date.now(),days:p,daily:f,totals:o}}async function P(e){let t=n(e?.agentId),r=await d.promises.readdir(t,{withFileTypes:!0}).catch(()=>[]),i=[];for(let n of r){if(!n.isFile()||!n.name.endsWith(`.jsonl`))continue;let r=u.join(t,n.name),a=await d.promises.stat(r).catch(()=>null);if(!a||e?.startMs&&a.mtimeMs<e.startMs)continue;let o=n.name.slice(0,-6),s;try{for await(let e of A(r))try{let t=e.message;if(t?.role===`user`){let e=t.content;if(typeof e==`string`)s=e.slice(0,100);else if(Array.isArray(e)){for(let t of e)if(typeof t==`object`&&t&&t.type===`text`){let e=t.text;typeof e==`string`&&(s=e.slice(0,100));break}}break}}catch{}}catch{}i.push({sessionId:o,sessionFile:r,mtime:a.mtimeMs,firstUserMessage:s})}return i.toSorted((e,t)=>t.mtime-e.mtime)}async function F(e){let n=e.sessionFile??(e.sessionId?t(e.sessionId,e.sessionEntry,{agentId:e.agentId}):void 0);if(!n||!d.existsSync(n))return null;let r=b(),i,a,o=new Set,s=new Map,c=new Map,l=new Map,u=new Map,f={total:0,user:0,assistant:0,toolCalls:0,toolResults:0,errors:0},p=new Map,m=new Map,h=new Set([`error`,`aborted`,`timeout`]),g=[],_;await j({filePath:n,config:e.config,onEntry:t=>{let n=t.timestamp?.getTime();if(!(e.startMs!==void 0&&n!==void 0&&n<e.startMs)&&!(e.endMs!==void 0&&n!==void 0&&n>e.endMs)){if(n!==void 0&&((!i||n<i)&&(i=n),(!a||n>a)&&(a=n)),t.role===`user`&&(f.user+=1,f.total+=1,t.timestamp&&(_=t.timestamp.getTime())),t.role===`assistant`){f.assistant+=1,f.total+=1;let e=t.timestamp?.getTime();if(e!==void 0){let n=t.durationMs??(_===void 0?void 0:Math.max(0,e-_));if(n!==void 0&&Number.isFinite(n)&&n<=432e5){g.push(n);let r=T(t.timestamp??new Date(e)),i=l.get(r)??[];i.push(n),l.set(r,i)}}}if(t.toolNames.length>0){f.toolCalls+=t.toolNames.length;for(let e of t.toolNames)p.set(e,(p.get(e)??0)+1)}if(t.toolResultCounts.total>0&&(f.toolResults+=t.toolResultCounts.total,f.errors+=t.toolResultCounts.errors),t.stopReason&&h.has(t.stopReason)&&(f.errors+=1),t.timestamp){let e=T(t.timestamp);o.add(e);let n=c.get(e)??{date:e,total:0,user:0,assistant:0,toolCalls:0,toolResults:0,errors:0};n.total+=t.role===`user`||t.role===`assistant`?1:0,t.role===`user`?n.user+=1:t.role===`assistant`&&(n.assistant+=1),n.toolCalls+=t.toolNames.length,n.toolResults+=t.toolResultCounts.total,n.errors+=t.toolResultCounts.errors,t.stopReason&&h.has(t.stopReason)&&(n.errors+=1),c.set(e,n)}if(t.usage){if(D(r,t.usage),t.costBreakdown?.total===void 0?k(r,t.costTotal):O(r,t.costBreakdown),t.timestamp){let e=T(t.timestamp),n=(t.usage.input??0)+(t.usage.output??0)+(t.usage.cacheRead??0)+(t.usage.cacheWrite??0),r=t.costBreakdown?.total??(t.costBreakdown?(t.costBreakdown.input??0)+(t.costBreakdown.output??0)+(t.costBreakdown.cacheRead??0)+(t.costBreakdown.cacheWrite??0):t.costTotal??0),i=s.get(e)??{tokens:0,cost:0};if(s.set(e,{tokens:i.tokens+n,cost:i.cost+r}),t.provider||t.model){let i=`${e}::${t.provider??`unknown`}::${t.model??`unknown`}`,a=u.get(i)??{date:e,provider:t.provider,model:t.model,tokens:0,cost:0,count:0};a.tokens+=n,a.cost+=r,a.count+=1,u.set(i,a)}}if(t.provider||t.model){let e=`${t.provider??`unknown`}::${t.model??`unknown`}`,n=m.get(e)??{provider:t.provider,model:t.model,count:0,totals:b()};n.count+=1,D(n.totals,t.usage),t.costBreakdown?.total===void 0?k(n.totals,t.costTotal):O(n.totals,t.costBreakdown),m.set(e,n)}}}}});let v=Array.from(s.entries()).map(([e,t])=>({date:e,tokens:t.tokens,cost:t.cost})).toSorted((e,t)=>e.date.localeCompare(t.date)),y=Array.from(c.values()).toSorted((e,t)=>e.date.localeCompare(t.date)),x=Array.from(l.entries()).map(([e,t])=>{let n=E(t);return n?{date:e,...n}:null}).filter(e=>!!e).toSorted((e,t)=>e.date.localeCompare(t.date)),S=Array.from(u.values()).toSorted((e,t)=>e.date.localeCompare(t.date)||t.cost-e.cost),C=p.size?{totalCalls:Array.from(p.values()).reduce((e,t)=>e+t,0),uniqueTools:p.size,tools:Array.from(p.entries()).map(([e,t])=>({name:e,count:t})).toSorted((e,t)=>t.count-e.count)}:void 0,w=m.size?Array.from(m.values()).toSorted((e,t)=>{let n=t.totals.totalCost-e.totals.totalCost;return n===0?t.totals.totalTokens-e.totals.totalTokens:n}):void 0;return{sessionId:e.sessionId,sessionFile:n,firstActivity:i,lastActivity:a,durationMs:i!==void 0&&a!==void 0?Math.max(0,a-i):void 0,activityDates:Array.from(o).toSorted(),dailyBreakdown:v,dailyMessageCounts:y,dailyLatency:x.length?x:void 0,dailyModelUsage:S.length?S:void 0,messageCounts:f,toolUsage:C,modelUsage:w,latency:E(g),...r}}async function I(e){let n=e.sessionFile??(e.sessionId?t(e.sessionId,e.sessionEntry,{agentId:e.agentId}):void 0);if(!n||!d.existsSync(n))return null;let r=[],i=0,a=0;await M({filePath:n,config:e.config,onEntry:e=>{let t=e.timestamp?.getTime();if(!t)return;let n=e.usage.input??0,o=e.usage.output??0,s=e.usage.cacheRead??0,c=e.usage.cacheWrite??0,l=e.usage.total??n+o+s+c,u=e.costTotal??0;i+=l,a+=u,r.push({timestamp:t,input:n,output:o,cacheRead:s,cacheWrite:c,totalTokens:l,cost:u,cumulativeTokens:i,cumulativeCost:a})}});let o=r.toSorted((e,t)=>e.timestamp-t.timestamp),s=e.maxPoints??100;if(o.length>s){let t=Math.ceil(o.length/s),n=[],r=0,i=0;for(let e=0;e<o.length;e+=t){let a=o.slice(e,e+t),s=a[a.length-1];if(!s)continue;let c=0,l=0,u=0,d=0,f=0,p=0;for(let e of a)c+=e.input,l+=e.output,u+=e.cacheRead,d+=e.cacheWrite,f+=e.totalTokens,p+=e.cost;r+=f,i+=p,n.push({timestamp:s.timestamp,input:c,output:l,cacheRead:u,cacheWrite:d,totalTokens:f,cost:p,cumulativeTokens:r,cumulativeCost:i})}return{sessionId:e.sessionId,points:n}}return{sessionId:e.sessionId,points:o}}async function L(e){let n=e.sessionFile??(e.sessionId?t(e.sessionId,e.sessionEntry,{agentId:e.agentId}):void 0);if(!n||!d.existsSync(n))return null;let a=[],o=e.limit??50;for await(let t of A(n))try{let n=t.message;if(!n)continue;let o=n.role;if(o!==`user`&&o!==`assistant`&&o!==`tool`&&o!==`toolResult`)continue;let u=[],d=n.toolName??n.tool_name??n.name??n.tool,f=typeof d==`string`&&d.trim()?d.trim():void 0;(o===`tool`||o===`toolResult`)&&(u.push(`[Tool: ${f??`tool`}]`),u.push(`[Tool Result]`));let p=n.content;if(typeof p==`string`)u.push(p);else if(Array.isArray(p)){let e=p.map(e=>{if(typeof e==`string`)return e;let t=e;return t.type===`text`&&typeof t.text==`string`?t.text:t.type===`tool_use`?`[Tool: ${typeof t.name==`string`?t.name:`unknown`}]`:t.type===`tool_result`?`[Tool Result]`:``}).filter(Boolean).join(`
|
|
2
2
|
`);e&&u.push(e)}let m=n.tool_calls??n.toolCalls??n.function_call??n.functionCall,h=Array.isArray(m)?m:m?[m]:[];if(h.length>0)for(let e of h){let t=e,n=typeof t.name==`string`?t.name:void 0,r=t.function,i=typeof r?.name==`string`?r.name:void 0,a=n??i??`unknown`;u.push(`[Tool: ${a}]`)}let _=u.join(`
|
|
3
3
|
`).trim();if(!_||(_=r(_),o===`user`&&(_=i(s(_)).trim()),!_))continue;let v=2e3;_.length>v&&(_=_.slice(0,v)+`…`);let y=0;typeof t.timestamp==`string`?y=new Date(t.timestamp).getTime():typeof n.timestamp==`number`&&(y=n.timestamp);let b,x;if(o===`assistant`){let t=n.usage,r=g(t);if(r){b=r.total??(r.input??0)+(r.output??0)+(r.cacheRead??0)+(r.cacheWrite??0);let i=S(t);x=i?.total===void 0?l({usage:r,cost:c({provider:n.provider,model:n.model,config:e.config})}):i.total}}a.push({timestamp:y,role:o,content:_,tokens:b,cost:x})}catch{}let u=a.toSorted((e,t)=>e.timestamp-t.timestamp);return u.length>o?u.slice(-o):u}export{y as a,h as c,I as i,p as l,N as n,_ as o,F as r,v as s,P as t,g as u};
|
|
4
|
+
//# sourceMappingURL=session-cost-usage-CHtVgnE8.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
function e(e){let t=(e??``).trim().toLowerCase();if(!t)return null;let n=t.split(`:`).filter(Boolean);if(n.length<3||n[0]!==`agent`)return null;let r=n[1]?.trim(),i=n.slice(2).join(`:`);return!r||!i?null:{agentId:r,rest:i}}function t(t){let n=(t??``).trim().toLowerCase();if(!n)return`unknown`;let r=e(n)?.rest??n,i=new Set(r.split(`:`).filter(Boolean));return i.has(`group`)?`group`:i.has(`channel`)?`channel`:i.has(`direct`)||i.has(`dm`)?`direct`:/^discord:(?:[^:]+:)?guild-[^:]+:channel-[^:]+$/.test(r)?`channel`:`unknown`}function n(t){let n=e(t);return n?/^cron:[^:]+:run:[^:]+$/.test(n.rest):!1}function r(t){let n=e(t);return n?n.rest.toLowerCase().startsWith(`cron:`):!1}function i(t){let n=(t??``).trim();return n?n.toLowerCase().startsWith(`subagent:`)?!0:!!(e(n)?.rest??``).toLowerCase().startsWith(`subagent:`):!1}function a(e){let t=(e??``).trim().toLowerCase();return t?t.split(`:subagent:`).length-1:0}function o(t){let n=(t??``).trim();return n?n.toLowerCase().startsWith(`acp:`)?!0:!!(e(n)?.rest??``).toLowerCase().startsWith(`acp:`):!1}const s=[`:thread:`,`:topic:`];function c(e){let t=(e??``).trim();if(!t)return null;let n=t.toLowerCase(),r=-1;for(let e of s){let t=n.lastIndexOf(e);t>r&&(r=t)}return r<=0?null:t.slice(0,r).trim()||null}const l=new Set([`__proto__`,`prototype`,`constructor`]);function u(e){return l.has(e)}const d=`default`,f=/^[a-z0-9][a-z0-9_-]{0,63}$/i,p=/[^a-z0-9_-]+/g,m=/^-+/,h=/-+$/,g=new Map,_=new Map;function v(e){return f.test(e)?e.toLowerCase():e.toLowerCase().replace(p,`-`).replace(m,``).replace(h,``).slice(0,64)}function y(e){let t=v(e);if(!(!t||u(t)))return t}function b(e){let t=(e??``).trim();if(!t)return d;let n=g.get(t);if(n)return n;let r=y(t)||`default`;return S(g,t,r),r}function x(e){let t=(e??``).trim();if(!t)return;if(_.has(t))return _.get(t);let n=y(t)||void 0;return S(_,t,n),n}function S(e,t,n){if(e.set(t,n),e.size<=512)return;let r=e.keys().next();r.done||e.delete(r.value)}const C=`main`,w=`main`,T=/^[a-z0-9][a-z0-9_-]{0,63}$/i,E=/[^a-z0-9_-]+/g,D=/^-+/,O=/-+$/;function k(e){return(e??``).trim().toLowerCase()}function A(t,n){return e(t)?{...n,sessionKey:t}:n}function j(e){let t=(e??``).trim();return t?t.toLowerCase():w}function M(t){let n=(t??``).trim();if(n)return e(n)?.rest??n}function N(t){let n=(t.requestKey??``).trim();if(!n||n.toLowerCase()===`main`)return z({agentId:t.agentId,mainKey:t.mainKey});let r=e(n);if(r)return`agent:${r.agentId}:${r.rest}`;let i=n.toLowerCase();return i.startsWith(`agent:`)?i:`agent:${I(t.agentId)}:${i}`}function P(t){return I(e(t)?.agentId??`main`)}function F(t){let n=(t??``).trim();return n?e(n)?`agent`:n.toLowerCase().startsWith(`agent:`)?`malformed_agent`:`legacy_or_alias`:`missing`}function I(e){let t=(e??``).trim();return t?T.test(t)?t.toLowerCase():t.toLowerCase().replace(E,`-`).replace(D,``).replace(O,``).slice(0,64)||`main`:C}function L(e){let t=(e??``).trim();return!!t&&T.test(t)}function R(e){return I(e)}function z(e){return`agent:${I(e.agentId)}:${j(e.mainKey)}`}function B(e){let t=e.peerKind??`direct`;if(t===`direct`){let t=e.dmScope??`main`,n=(e.peerId??``).trim(),r=t===`main`?null:V({identityLinks:e.identityLinks,channel:e.channel,peerId:n});if(r&&(n=r),n=n.toLowerCase(),t===`per-account-channel-peer`&&n){let t=(e.channel??``).trim().toLowerCase()||`unknown`,r=b(e.accountId);return`agent:${I(e.agentId)}:${t}:${r}:direct:${n}`}if(t===`per-channel-peer`&&n){let t=(e.channel??``).trim().toLowerCase()||`unknown`;return`agent:${I(e.agentId)}:${t}:direct:${n}`}return t===`per-peer`&&n?`agent:${I(e.agentId)}:direct:${n}`:z({agentId:e.agentId,mainKey:e.mainKey})}let n=(e.channel??``).trim().toLowerCase()||`unknown`,r=((e.peerId??``).trim()||`unknown`).toLowerCase();return`agent:${I(e.agentId)}:${n}:${t}:${r}`}function V(e){let t=e.identityLinks;if(!t)return null;let n=e.peerId.trim();if(!n)return null;let r=new Set,i=k(n);i&&r.add(i);let a=k(e.channel);if(a){let e=k(`${a}:${n}`);e&&r.add(e)}if(r.size===0)return null;for(let[e,n]of Object.entries(t)){let t=e.trim();if(t&&Array.isArray(n))for(let e of n){let n=k(e);if(n&&r.has(n))return t}}return null}function H(e){let t=k(e.channel)||`unknown`,n=b(e.accountId),r=e.peerId.trim().toLowerCase()||`unknown`;return`${t}:${n}:${e.peerKind}:${r}`}function U(e){let t=(e.threadId??``).trim();if(!t)return{sessionKey:e.baseSessionKey,parentSessionKey:void 0};let n=(e.normalizeThreadId??(e=>e.toLowerCase()))(t);return{sessionKey:e.useSuffix??!0?`${e.baseSessionKey}:thread:${n}`:e.baseSessionKey,parentSessionKey:e.parentSessionKey}}export{n as C,c as D,e as E,o as S,i as T,b as _,H as a,t as b,I as c,U as d,R as f,d as g,N as h,B as i,j as l,M as m,w as n,F as o,A as p,z as r,L as s,C as t,P as u,x as v,r as w,a as x,u as y};
|
|
2
|
+
//# sourceMappingURL=session-key-C7F_iqYg.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
function e(e){let t=(e??``).trim().toLowerCase();if(!t)return null;let n=t.split(`:`).filter(Boolean);if(n.length<3||n[0]!==`agent`)return null;let r=n[1]?.trim(),i=n.slice(2).join(`:`);return!r||!i?null:{agentId:r,rest:i}}function t(t){let n=(t??``).trim().toLowerCase();if(!n)return`unknown`;let r=e(n)?.rest??n,i=new Set(r.split(`:`).filter(Boolean));return i.has(`group`)?`group`:i.has(`channel`)?`channel`:i.has(`direct`)||i.has(`dm`)?`direct`:/^discord:(?:[^:]+:)?guild-[^:]+:channel-[^:]+$/.test(r)?`channel`:`unknown`}function n(t){let n=e(t);return n?/^cron:[^:]+:run:[^:]+$/.test(n.rest):!1}function r(t){let n=e(t);return n?n.rest.toLowerCase().startsWith(`cron:`):!1}function i(t){let n=(t??``).trim();return n?n.toLowerCase().startsWith(`subagent:`)?!0:!!(e(n)?.rest??``).toLowerCase().startsWith(`subagent:`):!1}function a(e){let t=(e??``).trim().toLowerCase();return t?t.split(`:subagent:`).length-1:0}function o(t){let n=(t??``).trim();return n?n.toLowerCase().startsWith(`acp:`)?!0:!!(e(n)?.rest??``).toLowerCase().startsWith(`acp:`):!1}const s=[`:thread:`,`:topic:`];function c(e){let t=(e??``).trim();if(!t)return null;let n=t.toLowerCase(),r=-1;for(let e of s){let t=n.lastIndexOf(e);t>r&&(r=t)}return r<=0?null:t.slice(0,r).trim()||null}const l=new Set([`__proto__`,`prototype`,`constructor`]);function u(e){return l.has(e)}const d=`default`,f=/^[a-z0-9][a-z0-9_-]{0,63}$/i,p=/[^a-z0-9_-]+/g,m=/^-+/,h=/-+$/,g=new Map,_=new Map;function v(e){return f.test(e)?e.toLowerCase():e.toLowerCase().replace(p,`-`).replace(m,``).replace(h,``).slice(0,64)}function y(e){let t=v(e);if(!(!t||u(t)))return t}function b(e){let t=(e??``).trim();if(!t)return d;let n=g.get(t);if(n)return n;let r=y(t)||`default`;return S(g,t,r),r}function x(e){let t=(e??``).trim();if(!t)return;if(_.has(t))return _.get(t);let n=y(t)||void 0;return S(_,t,n),n}function S(e,t,n){if(e.set(t,n),e.size<=512)return;let r=e.keys().next();r.done||e.delete(r.value)}const C=`main`,w=`main`,T=/^[a-z0-9][a-z0-9_-]{0,63}$/i,E=/[^a-z0-9_-]+/g,D=/^-+/,O=/-+$/;function k(e){return(e??``).trim().toLowerCase()}function A(t,n){return e(t)?{...n,sessionKey:t}:n}function j(e){let t=(e??``).trim();return t?t.toLowerCase():w}function M(t){let n=(t??``).trim();if(n)return e(n)?.rest??n}function N(t){let n=(t.requestKey??``).trim();if(!n||n.toLowerCase()===`main`)return z({agentId:t.agentId,mainKey:t.mainKey});let r=e(n);if(r)return`agent:${r.agentId}:${r.rest}`;let i=n.toLowerCase();return i.startsWith(`agent:`)?i:`agent:${I(t.agentId)}:${i}`}function P(t){return I(e(t)?.agentId??`main`)}function F(t){let n=(t??``).trim();return n?e(n)?`agent`:n.toLowerCase().startsWith(`agent:`)?`malformed_agent`:`legacy_or_alias`:`missing`}function I(e){let t=(e??``).trim();return t?T.test(t)?t.toLowerCase():t.toLowerCase().replace(E,`-`).replace(D,``).replace(O,``).slice(0,64)||`main`:C}function L(e){let t=(e??``).trim();return!!t&&T.test(t)}function R(e){return I(e)}function z(e){return`agent:${I(e.agentId)}:${j(e.mainKey)}`}function B(e){let t=e.peerKind??`direct`;if(t===`direct`){let t=e.dmScope??`main`,n=(e.peerId??``).trim(),r=t===`main`?null:V({identityLinks:e.identityLinks,channel:e.channel,peerId:n});if(r&&(n=r),n=n.toLowerCase(),t===`per-account-channel-peer`&&n){let t=(e.channel??``).trim().toLowerCase()||`unknown`,r=b(e.accountId);return`agent:${I(e.agentId)}:${t}:${r}:direct:${n}`}if(t===`per-channel-peer`&&n){let t=(e.channel??``).trim().toLowerCase()||`unknown`;return`agent:${I(e.agentId)}:${t}:direct:${n}`}return t===`per-peer`&&n?`agent:${I(e.agentId)}:direct:${n}`:z({agentId:e.agentId,mainKey:e.mainKey})}let n=(e.channel??``).trim().toLowerCase()||`unknown`,r=((e.peerId??``).trim()||`unknown`).toLowerCase();return`agent:${I(e.agentId)}:${n}:${t}:${r}`}function V(e){let t=e.identityLinks;if(!t)return null;let n=e.peerId.trim();if(!n)return null;let r=new Set,i=k(n);i&&r.add(i);let a=k(e.channel);if(a){let e=k(`${a}:${n}`);e&&r.add(e)}if(r.size===0)return null;for(let[e,n]of Object.entries(t)){let t=e.trim();if(t&&Array.isArray(n))for(let e of n){let n=k(e);if(n&&r.has(n))return t}}return null}function H(e){let t=k(e.channel)||`unknown`,n=b(e.accountId),r=e.peerId.trim().toLowerCase()||`unknown`;return`${t}:${n}:${e.peerKind}:${r}`}function U(e){let t=(e.threadId??``).trim();if(!t)return{sessionKey:e.baseSessionKey,parentSessionKey:void 0};let n=(e.normalizeThreadId??(e=>e.toLowerCase()))(t);return{sessionKey:e.useSuffix??!0?`${e.baseSessionKey}:thread:${n}`:e.baseSessionKey,parentSessionKey:e.parentSessionKey}}export{n as C,c as D,e as E,o as S,i as T,b as _,H as a,t as b,I as c,U as d,R as f,d as g,N as h,B as i,j as l,M as m,w as n,F as o,A as p,z as r,L as s,C as t,P as u,x as v,r as w,a as x,u as y};
|
|
2
|
+
//# sourceMappingURL=session-key-D3P0tf5P.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{nt as e}from"./subsystem-BLbY429l.js";import{g as t}from"./paths-BjD3T_xq.js";import{Bc as n,Cn as r,En as i,Jn as a,Kc as o,Mc as s,On as c,Tn as l,Xc as u,Yc as d,Yt as ee,_s as f,ds as p,du as m,fu as h,hs as g,jo as _,jt as v,ls as y,ps as b,rn as te,us as ne}from"./auth-profiles-T8DuH3ax.js";import{d as re,f as x}from"./agent-scope-DAWJwFfl.js";import{C as ie,E as S,c as C,l as w}from"./session-key-C7F_iqYg.js";import{a as T}from"./openclaw-root-CnsBf6ZU.js";import{c as E}from"./paths-BfjJY2VL.js";import{t as ae}from"./models-config-_htt7eY5.js";import D from"node:path";import O from"node:fs";import{setTimeout as oe}from"node:timers/promises";function k(e,t){let n=e.initialMs*e.factor**Math.max(t-1,0),r=n*e.jitter*Math.random();return Math.min(e.maxMs,Math.round(n+r))}async function A(e,t){if(!(e<=0))try{await oe(e,void 0,{signal:t})}catch(e){throw t?.aborted?Error(`aborted`,{cause:e}):e}}const se=[`claude-opus-4`,`claude-sonnet-4`],ce={initialMs:1e3,maxMs:6e4,factor:2,jitter:0};function le(e){for(let t of e.models){if(!t?.id)continue;let n=typeof t.contextWindow==`number`?Math.trunc(t.contextWindow):void 0;if(!n||n<=0)continue;let r=e.cache.get(t.id);(r===void 0||n<r)&&e.cache.set(t.id,n)}}function j(e){let t=e.modelsConfig?.providers;if(!(!t||typeof t!=`object`)){for(let n of Object.values(t))if(Array.isArray(n?.models))for(let t of n.models){let n=typeof t?.id==`string`?t.id:void 0,r=typeof t?.contextWindow==`number`?t.contextWindow:void 0;!n||!r||r<=0||e.cache.set(n,r)}}}const M=new Map;let N=null,P,F=0,I=0;function ue(t){let n=t.slice(2),r=[];for(let t=0;t<n.length;t+=1){let i=n[t];if(!i||i===`--`)break;let a=e(n,t);if(a>0){t+=a-1;continue}if(!i.startsWith(`-`)&&(r.push(i),r.length>=2))break}return r}function de(e=process.argv){let[t,n]=ue(e);return t===`config`&&n===`validate`}function L(){if(P)return P;if(!(Date.now()<I))try{let e=_();return j({cache:M,modelsConfig:e.models}),P=e,F=0,I=0,e}catch{F+=1;let e=k(ce,F);I=Date.now()+e;return}}function R(){if(N)return N;let e=L();return e?(N=(async()=>{try{await ae(e)}catch{}try{let{discoverAuthStorage:e,discoverModels:t}=await import(`./pi-model-discovery-CpjYoBQf.js`).then(e=>e.r),n=s(),r=t(e(n),n);le({cache:M,models:typeof r.getAvailable==`function`?r.getAvailable():r.getAll()})}catch{}j({cache:M,modelsConfig:e.models})})().catch(()=>{}),N):Promise.resolve()}function z(e){if(e)return R(),M.get(e)}de()||R();function B(e,t,n){let r=e?.agents?.defaults?.models;if(!r)return;let i=`${t}/${n}`.trim().toLowerCase();for(let[e,t]of Object.entries(r))if(e.trim().toLowerCase()===i){let e=t?.params;return e&&typeof e==`object`?e:void 0}}function V(e){let t=e.model?.trim();if(!t)return;let n=e.provider?.trim();if(n)return{provider:n.toLowerCase(),model:t};let r=t.indexOf(`/`);if(r<=0)return;let i=t.slice(0,r).trim().toLowerCase(),a=t.slice(r+1).trim();if(!(!i||!a))return{provider:i,model:a}}function H(e,t){if(e!==`anthropic`)return!1;let n=t.trim().toLowerCase(),r=n.includes(`/`)?n.split(`/`).at(-1)??n:n;return se.some(e=>r.startsWith(e))}function fe(e){if(typeof e.contextTokensOverride==`number`&&e.contextTokensOverride>0)return e.contextTokensOverride;let t=V({provider:e.provider,model:e.model});return t&&B(e.cfg,t.provider,t.model)?.context1m===!0&&H(t.provider,t.model)?1048576:z(e.model)??e.fallbackContextTokens}function pe(e){try{return O.realpathSync(e)}catch{return null}}function me(e,t,n){if(!n)return;let r=n.trim();if(!r)return;if(ne(r)||p(r))return r;if(!g(r))return;let i=re(e,t),a=pe(i)??D.resolve(i),o=D.resolve(a,r);if(b(a,o))try{let e=T({absolutePath:o,rootPath:a,rootRealPath:a,boundaryLabel:`workspace root`,maxBytes:y,skipLexicalRootCheck:!0});if(!e.ok)return;try{let t=O.readFileSync(e.fd);return`data:${f(o)};base64,${t.toString(`base64`)}`}finally{O.closeSync(e.fd)}}catch{return}}function he(e,t){let n=e.slice(0,8);return t&&t>0?`${n} (${new Date(t).toISOString().slice(0,10)})`:n}function U(e,t){if(e.length<=t)return e;let n=e.slice(0,t-1),r=n.lastIndexOf(` `);return r>t*.6?n.slice(0,r)+`…`:n+`…`}function ge(e,t){if(e){if(e.displayName?.trim())return e.displayName.trim();if(e.subject?.trim())return e.subject.trim();if(t?.trim())return U(t.replace(/\s+/g,` `).trim(),60);if(e.sessionId)return he(e.sessionId,e.updatedAt)}}function _e(e){let t=_(),n=t.session,r=Y({cfg:t,sessionKey:e}),i=X(t,r),a=E(n?.store,{agentId:i}),o=v(a),s=ve(o,r,e.trim()),c=s?.key===r?void 0:s?.key;return{cfg:t,storePath:a,store:o,entry:s?.entry,canonicalKey:r,legacyKey:c}}function ve(e,...t){for(let n of t)if(n&&e[n])return{entry:e[n],key:n};let n=new Set(t.filter(Boolean).map(e=>e.toLowerCase()));for(let t of Object.keys(e))if(n.has(t.toLowerCase()))return{entry:e[t],key:t}}function W(e,t){let n=t.toLowerCase(),r=[];for(let t of Object.keys(e))t.toLowerCase()===n&&r.push(t);return r}function ye(e){let t=new Set;for(let n of e.candidates){let r=String(n??``).trim();if(r){r!==e.canonicalKey&&t.add(r);for(let n of W(e.store,r))n!==e.canonicalKey&&t.add(n)}}for(let n of t)delete e.store[n]}function G(e,t){return e===`global`?`global`:e===`unknown`?`unknown`:t?.chatType===`group`||t?.chatType===`channel`||e.includes(`:group:`)||e.includes(`:channel:`)?`group`:`direct`}function be(e){let t=(S(e)?.rest??e).split(`:`).filter(Boolean);if(t.length>=3){let[e,n,...r]=t;if(n===`group`||n===`channel`)return{channel:e,kind:n,id:r.join(`:`)}}return null}function xe(e){return typeof e==`string`&&e.includes(`{agentId}`)}function Se(){let e=t(),n=D.join(e,`agents`);try{return O.readdirSync(n,{withFileTypes:!0}).filter(e=>e.isDirectory()).map(e=>C(e.name)).filter(Boolean)}catch{return[]}}function K(e){let t=new Set,n=C(x(e));t.add(n);for(let n of e.agents?.list??[])n?.id&&t.add(C(n.id));for(let e of Se())t.add(e);let r=Array.from(t).filter(Boolean);return r.sort((e,t)=>e.localeCompare(t)),r.includes(n)?[n,...r.filter(e=>e!==n)]:r}function Ce(e){let t=C(x(e)),n=w(e.session?.mainKey),r=e.session?.scope??`per-sender`,i=new Map;for(let t of e.agents?.list??[]){if(!t?.id)continue;let n=t.identity?{name:t.identity.name?.trim()||void 0,theme:t.identity.theme?.trim()||void 0,emoji:t.identity.emoji?.trim()||void 0,avatar:t.identity.avatar?.trim()||void 0,avatarUrl:me(e,C(t.id),t.identity.avatar?.trim())}:void 0;i.set(C(t.id),{name:typeof t.name==`string`&&t.name.trim()?t.name.trim():void 0,identity:n})}let a=new Set((e.agents?.list??[]).map(e=>e?.id?C(e.id):``).filter(Boolean)),o=a.size>0?new Set([...a,t]):null,s=K(e).filter(e=>o?o.has(e):!0);return n&&!s.includes(n)&&(!o||o.has(n))&&(s=[...s,n]),{defaultId:t,mainKey:n,scope:r,agents:s.map(e=>{let t=i.get(e);return{id:e,name:t?.name,identity:t?.identity}})}}function q(e,t){let n=t.toLowerCase();return n===`global`||n===`unknown`||n.startsWith(`agent:`)?n:`agent:${C(e)}:${n}`}function J(e){return C(x(e))}function Y(e){let t=(e.sessionKey??``).trim();if(!t)return t;let n=t.toLowerCase();if(n===`global`||n===`unknown`)return n;let r=S(t);if(r){let n=C(r.agentId),i=t.toLowerCase(),a=l({cfg:e.cfg,agentId:n,sessionKey:i});return a===i?i:a}let i=t.toLowerCase(),a=w(e.cfg.session?.mainKey);return i===`main`||i===a?c(e.cfg):q(J(e.cfg),i)}function X(e,t){if(t===`global`||t===`unknown`)return J(e);let n=S(t);return n?.agentId?C(n.agentId):J(e)}function Z(e,t,n){let r=n?.trim();if(!r)return;let i=r.toLowerCase();if(i===`global`||i===`unknown`)return i;let a;a=r.toLowerCase().startsWith(`agent:`)?r.toLowerCase():`agent:${C(t)}:${i}`;let o=S(a);return l({cfg:e,agentId:o?.agentId?C(o.agentId):t,sessionKey:a})}function we(e){let t=e.key.trim(),n=Y({cfg:e.cfg,sessionKey:t}),r=X(e.cfg,n),a=e.cfg.session?.store,o=E(a,{agentId:r});if(n===`global`||n===`unknown`)return{agentId:r,storePath:o,canonicalKey:n,storeKeys:t&&t!==n?[n,t]:[t]};let s=new Set;if(s.add(n),t&&t!==n&&s.add(t),e.scanLegacyKeys!==!1){let t=new Set(s);n===i({cfg:e.cfg,agentId:r})&&t.add(`agent:${r}:main`);let a=e.store??v(o);for(let e of t)for(let t of W(a,e))s.add(t)}return{agentId:r,storePath:o,canonicalKey:n,storeKeys:Array.from(s)}}function Q(e){let{cfg:t,combined:n,entry:r,agentId:i,canonicalKey:a}=e,o=n[a];o&&(o.updatedAt??0)>(r.updatedAt??0)?n[a]={...r,...o,spawnedBy:Z(t,i,o.spawnedBy??r.spawnedBy)}:n[a]={...o,...r,spawnedBy:Z(t,i,r.spawnedBy??o?.spawnedBy)}}function Te(e){let t=e.session?.store;if(t&&!xe(t)){let n=E(t),r=C(x(e)),i=v(n),a={};for(let[t,n]of Object.entries(i))Q({cfg:e,combined:a,entry:n,agentId:r,canonicalKey:q(r,t)});return{storePath:n,store:a}}let n=K(e),r={};for(let i of n){let n=v(E(t,{agentId:i}));for(let[t,a]of Object.entries(n))Q({cfg:e,combined:r,entry:a,agentId:i,canonicalKey:q(i,t)})}return{storePath:typeof t==`string`&&t.trim()?t.trim():`(multiple)`,store:r}}function Ee(e){let t=d({cfg:e,defaultProvider:h,defaultModel:m}),n=e.agents?.defaults?.contextTokens??z(t.model)??2e5;return{modelProvider:t.provider??null,model:t.model??null,contextTokens:n??null}}function $(e,t,n){let r=n?u({cfg:e,agentId:n}):d({cfg:e,defaultProvider:h,defaultModel:m}),i=r.provider,a=r.model,s=t?.model?.trim(),c=t?.modelProvider?.trim();if(s){if(c)return{provider:c,model:s};let e=o(s,i||`anthropic`);return e?(i=e.provider,a=e.model):a=s,{provider:i,model:a}}let l=t?.modelOverride?.trim();if(l){let e=t?.providerOverride?.trim()||i||`anthropic`,n=o(l,e);n?(i=n.provider,a=n.model):(i=e,a=l)}return{provider:i,model:a}}function De(e,t,r){let i=t?.model?.trim(),a=t?.modelProvider?.trim();if(i){if(a)return{provider:a,model:i};let t=n({cfg:e,model:i});if(t)return{provider:t,model:i};if(i.includes(`/`)){let e=o(i,h);return e?{provider:e.provider,model:e.model}:{model:i}}return{model:i}}let s=$(e,t,r);return{provider:s.provider,model:s.model}}function Oe(e){let{cfg:t,storePath:n,store:i,opts:o}=e,s=Date.now(),c=o.includeGlobal===!0,l=o.includeUnknown===!0,u=o.includeDerivedTitles===!0,d=o.includeLastMessage===!0,f=typeof o.spawnedBy==`string`?o.spawnedBy:``,p=typeof o.label==`string`?o.label.trim():``,m=typeof o.agentId==`string`?C(o.agentId):``,h=typeof o.search==`string`?o.search.trim().toLowerCase():``,g=typeof o.activeMinutes==`number`&&Number.isFinite(o.activeMinutes)?Math.max(1,Math.floor(o.activeMinutes)):void 0,_=Object.entries(i).filter(([e])=>{if(ie(e)||!c&&e===`global`||!l&&e===`unknown`)return!1;if(m){if(e===`global`||e===`unknown`)return!1;let t=S(e);return t?C(t.agentId)===m:!1}return!0}).filter(([e,t])=>f?e===`unknown`||e===`global`?!1:t?.spawnedBy===f:!0).filter(([,e])=>p?e?.label===p:!0).map(([e,n])=>{let i=n?.updatedAt??null,o=r(n),s=typeof n?.totalTokens==`number`?n?.totalTokensFresh!==!1:!1,c=be(e),l=n?.channel??c?.channel,u=n?.subject,d=n?.groupChannel,f=n?.space,p=c?.id,m=n?.origin,h=m?.label,g=n?.displayName??(l?a({provider:l,subject:u,groupChannel:d,space:f,id:p,key:e}):void 0)??n?.label??h,_=ee(n),v=De(t,n,C(S(e)?.agentId??x(t))),y=v.provider,b=v.model??`claude-opus-4-6`;return{key:e,entry:n,kind:G(e,n),label:n?.label,displayName:g,channel:l,subject:u,groupChannel:d,space:f,chatType:n?.chatType,origin:m,updatedAt:i,sessionId:n?.sessionId,systemSent:n?.systemSent,abortedLastRun:n?.abortedLastRun,thinkingLevel:n?.thinkingLevel,verboseLevel:n?.verboseLevel,reasoningLevel:n?.reasoningLevel,elevatedLevel:n?.elevatedLevel,sendPolicy:n?.sendPolicy,inputTokens:n?.inputTokens,outputTokens:n?.outputTokens,totalTokens:o,totalTokensFresh:s,responseUsage:n?.responseUsage,modelProvider:y,model:b,contextTokens:n?.contextTokens,deliveryContext:_.deliveryContext,lastChannel:_.lastChannel??n?.lastChannel,lastTo:_.lastTo??n?.lastTo,lastAccountId:_.lastAccountId??n?.lastAccountId}}).toSorted((e,t)=>(t.updatedAt??0)-(e.updatedAt??0));if(h&&(_=_.filter(e=>[e.displayName,e.label,e.subject,e.sessionId,e.key].some(e=>typeof e==`string`&&e.toLowerCase().includes(h)))),g!==void 0){let e=s-g*6e4;_=_.filter(t=>(t.updatedAt??0)>=e)}if(typeof o.limit==`number`&&Number.isFinite(o.limit)){let e=Math.max(1,Math.floor(o.limit));_=_.slice(0,e)}let v=_.map(e=>{let{entry:r,...i}=e,a,o;if(r?.sessionId&&(u||d)){let i=S(e.key),s=i&&i.agentId?C(i.agentId):x(t),c=te(r.sessionId,n,r.sessionFile,s);u&&(a=ge(r,c.firstUserMessage)),d&&c.lastMessagePreview&&(o=c.lastMessagePreview)}return{...i,derivedTitle:a,lastMessagePreview:o}});return{ts:s,path:n,count:v.length,defaults:Ee(t),sessions:v}}export{Te as a,we as c,fe as d,k as f,Oe as i,$ as l,G as n,_e as o,A as p,Ce as r,ye as s,Z as t,z as u};
|
|
2
|
+
//# sourceMappingURL=session-utils-8acNlxwP.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{A as e,k as t,y as n}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import{Cn as r,Yc as i,jo as a,jt as o}from"./auth-profiles-T8DuH3ax.js";import{f as s,r as c}from"./agent-scope-DAWJwFfl.js";import{E as l,c as u}from"./session-key-C7F_iqYg.js";import"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-CKTicUKS.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import{c as d}from"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import"./models-config-_htt7eY5.js";import{l as f,n as p,u as m}from"./session-utils-8acNlxwP.js";import{n as h}from"./format-relative-DkMjYy7z.js";function g(e){let t=new Map;for(let n of e)t.has(n.storePath)||t.set(n.storePath,n);return[...t.values()]}function _(e,t){let n=s(e),r=!!t.agent?.trim(),i=t.allAgents===!0;if(r&&i)throw Error(`--agent and --all-agents cannot be used together`);if(t.store&&(r||i))throw Error(`--store cannot be combined with --agent or --all-agents`);if(t.store)return[{agentId:n,storePath:d(t.store,{agentId:n})}];if(i)return g(c(e).map(t=>({agentId:t,storePath:d(e.session?.store,{agentId:t})})));if(r){let n=c(e),r=u(t.agent??``);if(!n.includes(r))throw Error(`Unknown agent id "${t.agent}". Use "openclaw agents list" to see configured agents.`);return[{agentId:r,storePath:d(e.session?.store,{agentId:r})}]}return[{agentId:n,storePath:d(e.session?.store,{agentId:n})}]}function v(e){try{return _(e.cfg,e.opts)}catch(t){return e.runtime.error(t instanceof Error?t.message:String(t)),e.runtime.exit(1),null}}function y(e){return Object.entries(e).map(([e,t])=>{let n=t?.updatedAt??null;return{key:e,updatedAt:n,ageMs:n?Date.now()-n:null,sessionId:t?.sessionId,systemSent:t?.systemSent,abortedLastRun:t?.abortedLastRun,thinkingLevel:t?.thinkingLevel,verboseLevel:t?.verboseLevel,reasoningLevel:t?.reasoningLevel,elevatedLevel:t?.elevatedLevel,responseUsage:t?.responseUsage,groupActivation:t?.groupActivation,inputTokens:t?.inputTokens,outputTokens:t?.outputTokens,totalTokens:t?.totalTokens,totalTokensFresh:t?.totalTokensFresh,model:t?.model,modelProvider:t?.modelProvider,providerOverride:t?.providerOverride,modelOverride:t?.modelOverride,contextTokens:t?.contextTokens}}).toSorted((e,t)=>(t.updatedAt??0)-(e.updatedAt??0))}function b(e){return{model:i({cfg:e,defaultProvider:`anthropic`,defaultModel:`claude-opus-4-6`}).model??`claude-opus-4-6`}}function x(e,t,n){return f(e,t,l(t.key)?.agentId).model??n.model}function S(e){return e.length<=26?e:`${e.slice(0,16)}...${e.slice(-6)}`}function C(t,n){let r=S(t).padEnd(26);return n?e.accent(r):r}function w(t,n){let r=(t?h(Date.now()-t):`unknown`).padEnd(9);return n?e.muted(r):r}function T(t,n){let r=(t??`unknown`).padEnd(14);return n?e.info(r):r}function E(t,n){let r=[t.thinkingLevel?`think:${t.thinkingLevel}`:null,t.verboseLevel?`verbose:${t.verboseLevel}`:null,t.reasoningLevel?`reasoning:${t.reasoningLevel}`:null,t.elevatedLevel?`elev:${t.elevatedLevel}`:null,t.responseUsage?`usage:${t.responseUsage}`:null,t.groupActivation?`activation:${t.groupActivation}`:null,t.systemSent?`system`:null,t.abortedLastRun?`aborted`:null,t.sessionId?`id:${t.sessionId}`:null].filter(Boolean).join(` `);return r.length===0?``:n?e.muted(r):r}const D=e=>`${(e/1e3).toFixed(e>=1e4?0:1)}k`,O=(t,n,r)=>!r||n===null?t:n>=95?e.error(t):n>=80?e.warn(t):n>=60?e.success(t):e.muted(t),k=(t,n,r)=>{if(t===void 0){let t=`unknown/${n?D(n):`?`} (?%)`;return r?e.muted(t.padEnd(20)):t.padEnd(20)}let i=D(t),a=n?D(n):`?`,o=n?Math.min(999,Math.round(t/n*100)):null;return O(`${i}/${a} (${o??`?`}%)`.padEnd(20),o,r)},A=(t,n)=>{let r=t.padEnd(6);return n?t===`group`?e.accentBright(r):t===`global`?e.warn(r):t===`direct`?e.accent(r):e.muted(r):r};async function j(i,s){let c=i.allAgents===!0,u=a(),d=b(u),f=u.agents?.defaults?.contextTokens??m(d.model)??2e5,h=v({cfg:u,opts:{store:i.store,agent:i.agent,allAgents:i.allAgents},runtime:s});if(!h)return;let g;if(i.active!==void 0){let e=Number.parseInt(String(i.active),10);if(Number.isNaN(e)||e<=0){s.error(`--active must be a positive integer (minutes)`),s.exit(1);return}g=e}let _=h.flatMap(e=>{let t=o(e.storePath);return y(t).map(n=>({...n,agentId:l(n.key)?.agentId??e.agentId,kind:p(n.key,t[n.key])}))}).filter(e=>g===void 0?!0:e.updatedAt?Date.now()-e.updatedAt<=g*6e4:!1).toSorted((e,t)=>(t.updatedAt??0)-(e.updatedAt??0));if(i.json){let e=h.length>1,t=c||e;s.log(JSON.stringify({path:t?null:h[0]?.storePath??null,stores:t?h.map(e=>({agentId:e.agentId,path:e.storePath})):void 0,allAgents:c?!0:void 0,count:_.length,activeMinutes:g??null,sessions:_.map(e=>{let t=x(u,e,d);return{...e,totalTokens:r(e)??null,totalTokensFresh:typeof e.totalTokens==`number`?e.totalTokensFresh!==!1:!1,contextTokens:e.contextTokens??m(t)??f??null,model:t}})},null,2));return}if(h.length===1&&!c?s.log(n(`Session store: ${h[0]?.storePath}`)):s.log(n(`Session stores: ${h.length} (${h.map(e=>e.agentId).join(`, `)})`)),s.log(n(`Sessions listed: ${_.length}`)),g&&s.log(n(`Filtered to last ${g} minute(s)`)),_.length===0){s.log(`No sessions found.`);return}let S=t(),D=c||h.length>1,O=[...D?[`Agent`.padEnd(10)]:[],`Kind`.padEnd(6),`Key`.padEnd(26),`Age`.padEnd(9),`Model`.padEnd(14),`Tokens (ctx %)`.padEnd(20),`Flags`].join(` `);s.log(S?e.heading(O):O);for(let t of _){let n=x(u,t,d),i=t.contextTokens??m(n)??f,a=r(t),o=[...D?[S?e.accentBright(t.agentId.padEnd(10)):t.agentId.padEnd(10)]:[],A(t.kind,S),C(t.key,S),w(t.updatedAt,S),T(n,S),k(a,i??null,S),E(t,S)].join(` `);s.log(o.trimEnd())}}export{b as a,v as c,T as i,E as n,x as o,C as r,y as s,j as sessionsCommand,w as t};
|
|
2
|
+
//# sourceMappingURL=sessions-BsxT0V2m.js.map
|
package/dist/shared-9x5sqYRb.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{p as e}from"./subsystem-C5XF2Fy5.js";import{t}from"./command-format-BbDT1tlm.js";import{m as n,p as r,u as i}from"./arg-split-DE5RqDHq.js";import{n as a}from"./service-BtB9epJk.js";const o=e=>{if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`bigint`)return e.toString()};function s(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`bigint`)return e.toString();if(typeof e==`boolean`)return e?`true`:`false`;if(e&&typeof e==`object`){if(`message`in e&&typeof e.message==`string`)return e.message;try{return JSON.stringify(e)}catch{return`Unknown error`}}return`Unknown error`}function c(e){if(!e||typeof e!=`object`)return{hasGatewayToken:!1,hasRemoteToken:!1};let t=e.gateway;if(!t||typeof t!=`object`)return{hasGatewayToken:!1,hasRemoteToken:!1};let n=`token`in t,r=t.remote;return{hasGatewayToken:n,hasRemoteToken:r&&typeof r==`object`?`token`in r:!1}}function l(e=process.env){let a=e.OPENCLAW_PROFILE;switch(process.platform){case`darwin`:return[`Tip: ${t(`openclaw gateway stop`)}`,`Or: launchctl bootout gui/$UID/${i(a)}`];case`linux`:return[`Tip: ${t(`openclaw gateway stop`)}`,`Or: systemctl --user stop ${r(a)}.service`];case`win32`:return[`Tip: ${t(`openclaw gateway stop`)}`,`Or: schtasks /End /TN "${n(a)}"`];default:return[`Tip: ${t(`openclaw gateway stop`)}`]}}async function u(){let t=a(),n=null;try{n=await t.isLoaded({env:process.env})}catch{n=null}if(n!==!1){e.error(n?`Gateway service appears ${t.loadedText}. Stop it first.`:`Gateway service status unknown; if supervised, stop it first.`);for(let t of l())e.error(t)}}export{o as i,c as n,u as r,s as t};
|
|
2
|
+
//# sourceMappingURL=shared-9x5sqYRb.js.map
|
package/dist/shared-BKWhOp64.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{p as e}from"./subsystem-BLbY429l.js";import{t}from"./command-format-CLxIPuLR.js";import{m as n,p as r,u as i}from"./arg-split-BOqSMBuf.js";import{n as a}from"./service-DZ9EbS15.js";const o=e=>{if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`bigint`)return e.toString()};function s(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`bigint`)return e.toString();if(typeof e==`boolean`)return e?`true`:`false`;if(e&&typeof e==`object`){if(`message`in e&&typeof e.message==`string`)return e.message;try{return JSON.stringify(e)}catch{return`Unknown error`}}return`Unknown error`}function c(e){if(!e||typeof e!=`object`)return{hasGatewayToken:!1,hasRemoteToken:!1};let t=e.gateway;if(!t||typeof t!=`object`)return{hasGatewayToken:!1,hasRemoteToken:!1};let n=`token`in t,r=t.remote;return{hasGatewayToken:n,hasRemoteToken:r&&typeof r==`object`?`token`in r:!1}}function l(e=process.env){let a=e.OPENCLAW_PROFILE;switch(process.platform){case`darwin`:return[`Tip: ${t(`openclaw gateway stop`)}`,`Or: launchctl bootout gui/$UID/${i(a)}`];case`linux`:return[`Tip: ${t(`openclaw gateway stop`)}`,`Or: systemctl --user stop ${r(a)}.service`];case`win32`:return[`Tip: ${t(`openclaw gateway stop`)}`,`Or: schtasks /End /TN "${n(a)}"`];default:return[`Tip: ${t(`openclaw gateway stop`)}`]}}async function u(){let t=a(),n=null;try{n=await t.isLoaded({env:process.env})}catch{n=null}if(n!==!1){e.error(n?`Gateway service appears ${t.loadedText}. Stop it first.`:`Gateway service status unknown; if supervised, stop it first.`);for(let t of l())e.error(t)}}export{o as i,c as n,u as r,s as t};
|
|
2
|
+
//# sourceMappingURL=shared-BKWhOp64.js.map
|
package/dist/shared-GesXrZzd.js
CHANGED
|
@@ -26,3 +26,4 @@ import{$ as e,D as t,F as n,G as r,I as i,J as a,K as o,L as s,O as c,P as l,U a
|
|
|
26
26
|
`);break;case`code_block`:case`fence`:mt(t,n.content??``);break;case`html_block`:case`html_inline`:G(t,n.content??``);break;case`table_open`:t.tableMode!==`off`&&(t.table=gt(),t.hasTables=!0);break;case`table_close`:t.table&&(t.tableMode===`bullets`?bt(t):t.tableMode===`code`&&xt(t)),t.table=null;break;case`thead_open`:t.table&&(t.table.inHeader=!0);break;case`thead_close`:t.table&&(t.table.inHeader=!1);break;case`tbody_open`:case`tbody_close`:break;case`tr_open`:t.table&&(t.table.currentRow=[]);break;case`tr_close`:t.table&&(t.table.inHeader?t.table.headers=t.table.currentRow:t.table.rows.push(t.table.currentRow),t.table.currentRow=[]);break;case`th_open`:case`td_open`:t.table&&(t.table.currentCell=ut());break;case`th_close`:case`td_close`:t.table?.currentCell&&(t.table.currentRow.push(_t(t.table.currentCell)),t.table.currentCell=null);break;case`hr`:t.text+=`───
|
|
27
27
|
|
|
28
28
|
`;break;default:n.children&&X(n.children,t);break}}function Z(e){for(let t=e.openStyles.length-1;t>=0;--t){let n=e.openStyles[t],r=e.text.length;r>n.start&&e.styles.push({start:n.start,end:r,style:n.style})}e.openStyles=[]}function St(e,t){let n=[];for(let r of e){let e=Math.max(0,Math.min(r.start,t)),i=Math.max(e,Math.min(r.end,t));i>e&&n.push({start:e,end:i,style:r.style})}return n}function Ct(e,t){let n=[];for(let r of e){let e=Math.max(0,Math.min(r.start,t)),i=Math.max(e,Math.min(r.end,t));i>e&&n.push({start:e,end:i,href:r.href})}return n}function wt(e){let t=[...e].toSorted((e,t)=>e.start===t.start?e.end===t.end?e.style.localeCompare(t.style):e.end-t.end:e.start-t.start),n=[];for(let e of t){let t=n[n.length-1];if(t&&t.style===e.style&&(e.start<t.end||e.start===t.end&&e.style!==`blockquote`)){t.end=Math.max(t.end,e.end);continue}n.push({...e})}return n}function Tt(e,t={}){return Q(e,t).ir}function Q(e,t={}){let n={listStack:[]},r=ot(t).parse(e??``,n);t.enableSpoilers&&ct(r);let i=t.tableMode??`off`,a={text:``,styles:[],openStyles:[],links:[],linkStack:[],env:n,headingStyle:t.headingStyle??`none`,blockquotePrefix:t.blockquotePrefix??``,enableSpoilers:t.enableSpoilers??!1,tableMode:i,table:null,hasTables:!1};X(r,a),Z(a);let o=a.text.trimEnd().length,s=0;for(let e of a.styles)e.style===`code_block`&&e.end>s&&(s=e.end);let c=Math.max(o,s);return{ir:{text:c===a.text.length?a.text:a.text.slice(0,c),styles:wt(St(a.styles,c)),links:Ct(a.links,c)},hasTables:a.hasTables}}const $=new Map([`blockquote`,`code_block`,`code`,`bold`,`italic`,`strikethrough`,`spoiler`].map((e,t)=>[e,t]));function Et(e){return[...e].toSorted((e,t)=>e.start===t.start?e.end===t.end?($.get(e.style)??0)-($.get(t.style)??0):t.end-e.end:e.start-t.start)}function Dt(e,t){let n=e.text??``;if(!n)return``;let r=t.styleMarkers,i=Et(e.styles.filter(e=>!!r[e.style])),a=new Set;a.add(0),a.add(n.length);let o=new Map;for(let e of i){if(e.start===e.end)continue;a.add(e.start),a.add(e.end);let t=o.get(e.start);t?t.push(e):o.set(e.start,[e])}for(let e of o.values())e.sort((e,t)=>e.end===t.end?($.get(e.style)??0)-($.get(t.style)??0):t.end-e.end);let s=new Map;if(t.buildLink)for(let r of e.links){if(r.start===r.end)continue;let e=t.buildLink(r,n);if(!e)continue;a.add(e.start),a.add(e.end);let i=s.get(e.start);i?i.push(e):s.set(e.start,[e])}let c=[...a].toSorted((e,t)=>e-t),l=[],u=``;for(let e=0;e<c.length;e+=1){let i=c[e];for(;l.length&&l[l.length-1]?.end===i;){let e=l.pop();e&&(u+=e.close)}let a=[],d=s.get(i);if(d&&d.length>0)for(let[e,t]of d.entries())a.push({end:t.end,open:t.open,close:t.close,kind:`link`,index:e});let f=o.get(i);if(f)for(let[e,t]of f.entries()){let n=r[t.style];n&&a.push({end:t.end,open:n.open,close:n.close,kind:`style`,style:t.style,index:e})}if(a.length>0){a.sort((e,t)=>e.end===t.end?e.kind===t.kind?e.kind===`style`&&t.kind===`style`?($.get(e.style)??0)-($.get(t.style)??0):e.index-t.index:e.kind===`link`?-1:1:t.end-e.end);for(let e of a)u+=e.open,l.push({close:e.close,end:e.end})}let p=c[e+1];if(p===void 0)break;p>i&&(u+=t.escapeText(n.slice(i,p)))}return u}function Ot(e,t){let n=e[t];if(typeof n==`boolean`)return n;if(typeof n==`string`){let e=n.trim().toLowerCase();if(e===`true`)return!0;if(e===`false`)return!1}}function kt(e){return e.filter(e=>e.tokenSource!==`none`)}function At(e,t){let n=e.map(e=>t(e));return(e,t=!0)=>n.some(n=>n(e,t))}export{me as _,Tt as a,et as c,Ue as d,Re as f,he as g,ge as h,Dt as i,tt as l,D as m,kt as n,Q as o,ze as p,Ot as r,at as s,At as t,Ge as u,pe as v};
|
|
29
|
+
//# sourceMappingURL=shared-GesXrZzd.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{G as e,W as t,z as n}from"./paths-CrCoPIVK.js";import{d as r,t as i}from"./subsystem-Bc2XrjUz.js";import{h as a,t as o}from"./utils-D3t-vPka.js";import{ci as s,ea as c,ia as l}from"./model-selection-B5JsBS9D.js";import{i as u}from"./commands-registry-SeddSmFK.js";import d from"node:os";import f from"node:path";import p from"node:fs";import"node:crypto";import m from"chokidar";const h=i(`gateway/skills`),g=new Set,_=new Map,v=new Map;let y=0;const b=[/(^|[\\/])\.git([\\/]|$)/,/(^|[\\/])node_modules([\\/]|$)/,/(^|[\\/])dist([\\/]|$)/,/(^|[\\/])\.venv([\\/]|$)/,/(^|[\\/])venv([\\/]|$)/,/(^|[\\/])__pycache__([\\/]|$)/,/(^|[\\/])\.mypy_cache([\\/]|$)/,/(^|[\\/])\.pytest_cache([\\/]|$)/,/(^|[\\/])build([\\/]|$)/,/(^|[\\/])\.cache([\\/]|$)/];function x(e){let t=Date.now();return t<=e?e+1:t}function S(e){for(let t of g)try{t(e)}catch(e){h.warn(`skills change listener failed: ${String(e)}`)}}function C(e,t){let n=[];e.trim()&&(n.push(f.join(e,`skills`)),n.push(f.join(e,`.agents`,`skills`))),n.push(f.join(o,`skills`)),n.push(f.join(d.homedir(),`.qbotclaw`,`openclaw-qbot`,`skills`));let r=(t?.skills?.load?.extraDirs??[]).map(e=>typeof e==`string`?e.trim():``).filter(Boolean).map(e=>a(e));n.push(...r);let i=l({workspaceDir:e,config:t});return n.push(...i),n}function w(e){return e.replaceAll(`\\`,`/`).replace(/\/+$/,``)}function T(e,t){let n=new Set;for(let r of C(e,t)){let e=w(r);n.add(`${e}/SKILL.md`),n.add(`${e}/*/SKILL.md`)}return Array.from(n).toSorted()}function E(e){let t=e?.reason??`manual`,n=e?.changedPath;if(e?.workspaceDir){let r=x(_.get(e.workspaceDir)??0);return _.set(e.workspaceDir,r),S({workspaceDir:e.workspaceDir,reason:t,changedPath:n}),r}return y=x(y),S({reason:t,changedPath:n}),y}function D(e){if(!e)return y;let t=_.get(e)??0;return Math.max(y,t)}function O(e){let t=e.workspaceDir.trim();if(!t)return;let n=e.config?.skills?.load?.watch!==!1,r=e.config?.skills?.load?.watchDebounceMs,i=typeof r==`number`&&Number.isFinite(r)?Math.max(0,r):250,a=v.get(t);if(!n){a&&(v.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));return}let o=T(t,e.config),s=o.join(`|`);if(a&&a.pathsKey===s&&a.debounceMs===i)return;a&&(v.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));let c=m.watch(o,{ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:i,pollInterval:100},ignored:b}),l={watcher:c,pathsKey:s,debounceMs:i},u=e=>{l.pendingPath=e??l.pendingPath,l.timer&&clearTimeout(l.timer),l.timer=setTimeout(()=>{let e=l.pendingPath;l.pendingPath=void 0,l.timer=void 0,E({workspaceDir:t,reason:`watch`,changedPath:e})},i)};c.on(`add`,e=>u(e)),c.on(`change`,e=>u(e)),c.on(`unlink`,e=>u(e)),c.on(`error`,e=>{h.warn(`skills watcher error (${t}): ${String(e)}`)}),v.set(t,l)}s(),i(`gateway/skills-remote`);const k=new Map;function A(e,t){let n=String(e??``).trim().toLowerCase(),r=String(t??``).trim().toLowerCase();return!!(n.includes(`mac`)||n.includes(`darwin`)||r===`mac`)}function j(e){return Array.isArray(e)&&e.includes(`system.run`)}function M(){let e=[...k.values()].filter(e=>A(e.platform,e.deviceFamily)&&j(e.commands));if(e.length===0)return;let t=new Set;for(let n of e)for(let e of n.bins)t.add(e);let n=e.map(e=>e.displayName??e.nodeId).filter(Boolean);return{platforms:[`darwin`],hasBin:e=>t.has(e),hasAnyBin:e=>e.some(e=>t.has(e)),note:n.length>0?`Remote macOS node available (${n.join(`, `)}). Run macOS-only skills via nodes.run on that node.`:`Remote macOS node available. Run macOS-only skills via nodes.run on that node.`}}function N(e=[]){let t=new Set;for(let e of u()){e.nativeName&&t.add(e.nativeName.toLowerCase());for(let n of e.textAliases){let e=n.trim();e.startsWith(`/`)&&t.add(e.slice(1).toLowerCase())}}for(let n of e){let e=n.trim().toLowerCase();e&&t.add(e)}return t}function P(e){return c(e.workspaceDir,{config:e.cfg,skillFilter:e.skillFilter,eligibility:{remote:M()},reservedNames:N()})}function F(e){let t=new Set,n=[];for(let r of e){let e=r.skillName.trim().toLowerCase();e&&t.has(e)||(e&&t.add(e),n.push(r))}return n}function I(i){let a=(e,t)=>{if(!(e===void 0||t===void 0))return e.length===0?Array.from(new Set(t)):t.length===0?Array.from(new Set(e)):Array.from(new Set([...e,...t]))},o=i.agentIds??n(i.cfg),s=N(),l=[],u=new Map;for(let n of o){let o=e(i.cfg,n);if(!p.existsSync(o)){r(`Skipping agent "${n}": workspace does not exist: ${o}`);continue}let s;try{s=p.realpathSync(o)}catch{r(`Skipping agent "${n}": cannot resolve workspace: ${o}`);continue}let c=t(i.cfg,n),l=u.get(s);if(l){l.skillFilter=a(l.skillFilter,c);continue}u.set(s,{workspaceDir:o,skillFilter:c})}for(let{workspaceDir:e,skillFilter:t}of u.values()){let n=c(e,{config:i.cfg,skillFilter:t,eligibility:{remote:M()},reservedNames:s});for(let e of n)s.add(e.name.toLowerCase()),l.push(e)}return F(l)}function L(e){return e.trim().toLowerCase().replace(/[\s_]+/g,`-`)}function R(e,t){let n=t.trim();if(!n)return;let r=n.toLowerCase(),i=L(n);return e.find(e=>e.name.toLowerCase()===r||e.skillName.toLowerCase()===r?!0:L(e.name)===i||L(e.skillName)===i)}function z(e){let t=e.commandBodyNormalized.trim();if(!t.startsWith(`/`))return null;let n=t.match(/^\/([^\s]+)(?:\s+([\s\S]+))?$/);if(!n)return null;let r=n[1]?.trim().toLowerCase();if(!r)return null;if(r===`skill`){let t=n[2]?.trim();if(!t)return null;let r=t.match(/^([^\s]+)(?:\s+([\s\S]+))?$/);if(!r)return null;let i=R(e.skillCommands,r[1]??``);return i?{command:i,args:r[2]?.trim()||void 0}:null}let i=e.skillCommands.find(e=>e.name.toLowerCase()===r);return i?{command:i,args:n[2]?.trim()||void 0}:null}export{M as a,z as i,I as n,O as o,P as r,D as s,N as t};
|
|
2
|
+
//# sourceMappingURL=skill-commands-BWW6mc6t.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{S as e,t}from"./subsystem-BLbY429l.js";import{br as n,vr as r,yr as i}from"./auth-profiles-T8DuH3ax.js";import{d as a,r as o,u as s}from"./agent-scope-DAWJwFfl.js";import{t as c,v as l}from"./utils-CGdo13HV.js";import{i as u,n as d,s as f}from"./skills-CKTicUKS.js";import{i as ee}from"./commands-registry-Cpl4QnG4.js";import{t as te}from"./workspace-dirs-A8Vib9_B.js";import{a as p,i as m,n as h,o as g,r as _,t as ne}from"./pairing-token-DAR7V7FJ.js";import re from"node:os";import v from"node:path";import y from"node:fs";import{randomUUID as b}from"node:crypto";import x from"chokidar";const S=t(`gateway/skills`),C=new Set,w=new Map,T=new Map;let E=0;const ie=[/(^|[\\/])\.git([\\/]|$)/,/(^|[\\/])node_modules([\\/]|$)/,/(^|[\\/])dist([\\/]|$)/,/(^|[\\/])\.venv([\\/]|$)/,/(^|[\\/])venv([\\/]|$)/,/(^|[\\/])__pycache__([\\/]|$)/,/(^|[\\/])\.mypy_cache([\\/]|$)/,/(^|[\\/])\.pytest_cache([\\/]|$)/,/(^|[\\/])build([\\/]|$)/,/(^|[\\/])\.cache([\\/]|$)/];function D(e){let t=Date.now();return t<=e?e+1:t}function O(e){for(let t of C)try{t(e)}catch(e){S.warn(`skills change listener failed: ${String(e)}`)}}function ae(e,t){let n=[];e.trim()&&(n.push(v.join(e,`skills`)),n.push(v.join(e,`.agents`,`skills`))),n.push(v.join(c,`skills`)),n.push(v.join(re.homedir(),`.qbotclaw`,`openclaw-qbot`,`skills`));let r=(t?.skills?.load?.extraDirs??[]).map(e=>typeof e==`string`?e.trim():``).filter(Boolean).map(e=>l(e));n.push(...r);let i=f({workspaceDir:e,config:t});return n.push(...i),n}function oe(e){return e.replaceAll(`\\`,`/`).replace(/\/+$/,``)}function se(e,t){let n=new Set;for(let r of ae(e,t)){let e=oe(r);n.add(`${e}/SKILL.md`),n.add(`${e}/*/SKILL.md`)}return Array.from(n).toSorted()}function ce(e){return C.add(e),()=>{C.delete(e)}}function k(e){let t=e?.reason??`manual`,n=e?.changedPath;if(e?.workspaceDir){let r=D(w.get(e.workspaceDir)??0);return w.set(e.workspaceDir,r),O({workspaceDir:e.workspaceDir,reason:t,changedPath:n}),r}return E=D(E),O({reason:t,changedPath:n}),E}function le(e){if(!e)return E;let t=w.get(e)??0;return Math.max(E,t)}function ue(e){let t=e.workspaceDir.trim();if(!t)return;let n=e.config?.skills?.load?.watch!==!1,r=e.config?.skills?.load?.watchDebounceMs,i=typeof r==`number`&&Number.isFinite(r)?Math.max(0,r):250,a=T.get(t);if(!n){a&&(T.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));return}let o=se(t,e.config),s=o.join(`|`);if(a&&a.pathsKey===s&&a.debounceMs===i)return;a&&(T.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));let c=x.watch(o,{ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:i,pollInterval:100},ignored:ie}),l={watcher:c,pathsKey:s,debounceMs:i},u=e=>{l.pendingPath=e??l.pendingPath,l.timer&&clearTimeout(l.timer),l.timer=setTimeout(()=>{let e=l.pendingPath;l.pendingPath=void 0,l.timer=void 0,k({workspaceDir:t,reason:`watch`,changedPath:e})},i)};c.on(`add`,e=>u(e)),c.on(`change`,e=>u(e)),c.on(`unlink`,e=>u(e)),c.on(`error`,e=>{S.warn(`skills watcher error (${t}): ${String(e)}`)}),T.set(t,l)}const A=r();async function j(e){let{pendingPath:t,pairedPath:n}=p(e,`nodes`),[r,a]=await Promise.all([i(t),i(n)]),o={pendingById:r??{},pairedByNodeId:a??{}};return m(o.pendingById,Date.now(),3e5),o}async function M(e,t){let{pendingPath:r,pairedPath:i}=p(t,`nodes`);await Promise.all([n(r,e.pendingById),n(i,e.pairedByNodeId)])}function N(e){return e.trim()}function P(){return ne()}async function F(e){let t=await j(e);return{pending:Object.values(t.pendingById).toSorted((e,t)=>t.ts-e.ts),paired:Object.values(t.pairedByNodeId).toSorted((e,t)=>t.approvedAtMs-e.approvedAtMs)}}async function I(e,t){return await A(async()=>{let n=await j(t),r=N(e.nodeId);if(!r)throw Error(`nodeId required`);return await g({pendingById:n.pendingById,isExisting:e=>e.nodeId===r,isRepair:!!n.pairedByNodeId[r],createRequest:t=>({requestId:b(),nodeId:r,displayName:e.displayName,platform:e.platform,version:e.version,coreVersion:e.coreVersion,uiVersion:e.uiVersion,deviceFamily:e.deviceFamily,modelIdentifier:e.modelIdentifier,caps:e.caps,commands:e.commands,permissions:e.permissions,remoteIp:e.remoteIp,silent:e.silent,isRepair:t,ts:Date.now()}),persist:async()=>await M(n,t)})})}async function L(e,t){return await A(async()=>{let n=await j(t),r=n.pendingById[e];if(!r)return null;let i=Date.now(),a=n.pairedByNodeId[r.nodeId],o={nodeId:r.nodeId,token:P(),displayName:r.displayName,platform:r.platform,version:r.version,coreVersion:r.coreVersion,uiVersion:r.uiVersion,deviceFamily:r.deviceFamily,modelIdentifier:r.modelIdentifier,caps:r.caps,commands:r.commands,permissions:r.permissions,remoteIp:r.remoteIp,createdAtMs:a?.createdAtMs??i,approvedAtMs:i};return delete n.pendingById[e],n.pairedByNodeId[r.nodeId]=o,await M(n,t),{requestId:e,node:o}})}async function R(e,t){return await A(async()=>await _({requestId:e,idKey:`nodeId`,loadState:()=>j(t),persistState:e=>M(e,t),getId:e=>e.nodeId}))}async function z(e,t,n){let r=await j(n),i=N(e),a=r.pairedByNodeId[i];return a&&h(t,a.token)?{ok:!0,node:a}:{ok:!1}}async function B(e,t,n){await A(async()=>{let r=await j(n),i=N(e),a=r.pairedByNodeId[i];if(!a)return;let o={...a,displayName:t.displayName??a.displayName,platform:t.platform??a.platform,version:t.version??a.version,coreVersion:t.coreVersion??a.coreVersion,uiVersion:t.uiVersion??a.uiVersion,deviceFamily:t.deviceFamily??a.deviceFamily,modelIdentifier:t.modelIdentifier??a.modelIdentifier,remoteIp:t.remoteIp??a.remoteIp,caps:t.caps??a.caps,commands:t.commands??a.commands,bins:t.bins??a.bins,permissions:t.permissions??a.permissions,lastConnectedAtMs:t.lastConnectedAtMs??a.lastConnectedAtMs};r.pairedByNodeId[i]=o,await M(r,n)})}async function V(e,t,n){return await A(async()=>{let r=await j(n),i=N(e),a=r.pairedByNodeId[i];if(!a)return null;let o=t.trim();if(!o)throw Error(`displayName required`);let s={...a,displayName:o};return r.pairedByNodeId[i]=s,await M(r,n),s})}const H=t(`gateway/skills-remote`),U=new Map;let W=null;function de(e){let t=U.get(e),n=t?.displayName?.trim(),r=n&&n!==e?`${n} (${e})`:e,i=t?.remoteIp?.trim();return i?`${r} @ ${i}`:r}function fe(e){if(e){if(typeof e==`string`)return e;if(e instanceof Error||typeof e==`object`&&`message`in e&&typeof e.message==`string`)return e.message;if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)return String(e);if(typeof e==`symbol`)return e.toString();if(typeof e==`object`)try{return JSON.stringify(e)}catch{return}}}function G(e,t){let n=fe(t),r=de(e);if(n?.includes(`node not connected`)||n?.includes(`node disconnected`)){H.info(`remote bin probe skipped: node unavailable (${r})`);return}if(n?.includes(`invoke timed out`)||n?.includes(`timeout`)){H.warn(`remote bin probe timed out (${r}); check node connectivity for ${r}`);return}H.warn(`remote bin probe error (${r}): ${n??`unknown`}`)}function K(e,t){let n=String(e??``).trim().toLowerCase(),r=String(t??``).trim().toLowerCase();return!!(n.includes(`mac`)||n.includes(`darwin`)||r===`mac`)}function q(e){return Array.isArray(e)&&e.includes(`system.run`)}function pe(e){return Array.isArray(e)&&e.includes(`system.which`)}function J(e){let t=U.get(e.nodeId),n=new Set(e.bins??t?.bins??[]);U.set(e.nodeId,{nodeId:e.nodeId,displayName:e.displayName??t?.displayName,platform:e.platform??t?.platform,deviceFamily:e.deviceFamily??t?.deviceFamily,commands:e.commands??t?.commands,remoteIp:e.remoteIp??t?.remoteIp,bins:n})}function me(e){W=e}async function he(){try{let e=await F(),t=!1;for(let n of e.paired)J({nodeId:n.nodeId,displayName:n.displayName,platform:n.platform,deviceFamily:n.deviceFamily,commands:n.commands,remoteIp:n.remoteIp,bins:n.bins}),K(n.platform,n.deviceFamily)&&q(n.commands)&&(t=!0);t&&k({reason:`remote-node`})}catch(e){H.warn(`failed to prime remote skills cache: ${String(e)}`)}}function ge(e){J(e)}function _e(e,t){J({nodeId:e,bins:t})}function ve(e){U.delete(e)}function ye(e,t){let n=new Set;for(let r of e){let e=r.metadata?.os??[];if(e.length>0&&!e.includes(t))continue;let i=r.metadata?.requires?.bins??[],a=r.metadata?.requires?.anyBins??[];for(let e of i)e.trim()&&n.add(e.trim());for(let e of a)e.trim()&&n.add(e.trim())}return[...n]}function be(e){return`for b in ${e.map(e=>`'${e.replace(/'/g,`'\\''`)}'`).join(` `)}; do if command -v "$b" >/dev/null 2>&1; then echo "$b"; fi; done`}function xe(e,t){if(!e&&!t)return[];try{let n=e?JSON.parse(e):t;if(Array.isArray(n.bins))return n.bins.map(e=>String(e).trim()).filter(Boolean);if(typeof n.stdout==`string`)return n.stdout.split(/\r?\n/).map(e=>e.trim()).filter(Boolean)}catch{return[]}return[]}function Se(e,t){if(!e||e.size!==t.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}async function Y(e){if(!W||!K(e.platform,e.deviceFamily))return;let t=pe(e.commands),n=q(e.commands);if(!t&&!n)return;let r=te(e.cfg),i=new Set;for(let t of r){let n=u(t,{config:e.cfg});for(let e of ye(n,`darwin`))i.add(e)}if(i.size!==0)try{let n=[...i],r=await W.invoke(t?{nodeId:e.nodeId,command:`system.which`,params:{bins:n},timeoutMs:e.timeoutMs??15e3}:{nodeId:e.nodeId,command:`system.run`,params:{command:[`/bin/sh`,`-lc`,be(n)]},timeoutMs:e.timeoutMs??15e3});if(!r.ok){G(e.nodeId,r.error?.message??`unknown`);return}let a=xe(r.payloadJSON,r.payload),o=U.get(e.nodeId)?.bins,s=!Se(o,new Set(a));if(_e(e.nodeId,a),!s)return;await B(e.nodeId,{bins:a}),k({reason:`remote-node`})}catch(t){G(e.nodeId,t)}}function X(){let e=[...U.values()].filter(e=>K(e.platform,e.deviceFamily)&&q(e.commands));if(e.length===0)return;let t=new Set;for(let n of e)for(let e of n.bins)t.add(e);let n=e.map(e=>e.displayName??e.nodeId).filter(Boolean);return{platforms:[`darwin`],hasBin:e=>t.has(e),hasAnyBin:e=>e.some(e=>t.has(e)),note:n.length>0?`Remote macOS node available (${n.join(`, `)}). Run macOS-only skills via nodes.run on that node.`:`Remote macOS node available. Run macOS-only skills via nodes.run on that node.`}}async function Z(e){if(!W)return;let t=W.listConnected();for(let n of t)await Y({nodeId:n.nodeId,platform:n.platform,deviceFamily:n.deviceFamily,commands:n.commands,cfg:e})}function Q(e=[]){let t=new Set;for(let e of ee()){e.nativeName&&t.add(e.nativeName.toLowerCase());for(let n of e.textAliases){let e=n.trim();e.startsWith(`/`)&&t.add(e.slice(1).toLowerCase())}}for(let n of e){let e=n.trim().toLowerCase();e&&t.add(e)}return t}function Ce(e){return d(e.workspaceDir,{config:e.cfg,skillFilter:e.skillFilter,eligibility:{remote:X()},reservedNames:Q()})}function we(e){let t=new Set,n=[];for(let r of e){let e=r.skillName.trim().toLowerCase();e&&t.has(e)||(e&&t.add(e),n.push(r))}return n}function Te(t){let n=(e,t)=>{if(!(e===void 0||t===void 0))return e.length===0?Array.from(new Set(t)):t.length===0?Array.from(new Set(e)):Array.from(new Set([...e,...t]))},r=t.agentIds??o(t.cfg),i=Q(),c=[],l=new Map;for(let i of r){let r=a(t.cfg,i);if(!y.existsSync(r)){e(`Skipping agent "${i}": workspace does not exist: ${r}`);continue}let o;try{o=y.realpathSync(r)}catch{e(`Skipping agent "${i}": cannot resolve workspace: ${r}`);continue}let c=s(t.cfg,i),u=l.get(o);if(u){u.skillFilter=n(u.skillFilter,c);continue}l.set(o,{workspaceDir:r,skillFilter:c})}for(let{workspaceDir:e,skillFilter:n}of l.values()){let r=d(e,{config:t.cfg,skillFilter:n,eligibility:{remote:X()},reservedNames:i});for(let e of r)i.add(e.name.toLowerCase()),c.push(e)}return we(c)}function $(e){return e.trim().toLowerCase().replace(/[\s_]+/g,`-`)}function Ee(e,t){let n=t.trim();if(!n)return;let r=n.toLowerCase(),i=$(n);return e.find(e=>e.name.toLowerCase()===r||e.skillName.toLowerCase()===r?!0:$(e.name)===i||$(e.skillName)===i)}function De(e){let t=e.commandBodyNormalized.trim();if(!t.startsWith(`/`))return null;let n=t.match(/^\/([^\s]+)(?:\s+([\s\S]+))?$/);if(!n)return null;let r=n[1]?.trim().toLowerCase();if(!r)return null;if(r===`skill`){let t=n[2]?.trim();if(!t)return null;let r=t.match(/^([^\s]+)(?:\s+([\s\S]+))?$/);if(!r)return null;let i=Ee(e.skillCommands,r[1]??``);return i?{command:i,args:r[2]?.trim()||void 0}:null}let i=e.skillCommands.find(e=>e.name.toLowerCase()===r);return i?{command:i,args:n[2]?.trim()||void 0}:null}export{B as _,X as a,le as b,Z as c,me as d,L as f,I as g,V as h,De as i,Y as l,R as m,Te as n,he as o,F as p,Ce as r,ge as s,Q as t,ve as u,z as v,ce as x,ue as y};
|
|
2
|
+
//# sourceMappingURL=skill-commands-CSF6wVPU.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{U as e,W as t,z as n}from"./paths-piJASC5k.js";import{O as r,R as i,a,y as o}from"./logger-DwWqfo66.js";import{ci as s,ea as c,ia as l}from"./model-selection-vfhBuN9O.js";import{i as u}from"./commands-registry-D40KqYOm.js";import d from"node:fs";import f from"node:path";import p from"node:os";import"node:crypto";import m from"chokidar";const h=r(`gateway/skills`),g=new Set,_=new Map,v=new Map;let y=0;const b=[/(^|[\\/])\.git([\\/]|$)/,/(^|[\\/])node_modules([\\/]|$)/,/(^|[\\/])dist([\\/]|$)/,/(^|[\\/])\.venv([\\/]|$)/,/(^|[\\/])venv([\\/]|$)/,/(^|[\\/])__pycache__([\\/]|$)/,/(^|[\\/])\.mypy_cache([\\/]|$)/,/(^|[\\/])\.pytest_cache([\\/]|$)/,/(^|[\\/])build([\\/]|$)/,/(^|[\\/])\.cache([\\/]|$)/];function x(e){let t=Date.now();return t<=e?e+1:t}function S(e){for(let t of g)try{t(e)}catch(e){h.warn(`skills change listener failed: ${String(e)}`)}}function C(e,t){let n=[];e.trim()&&(n.push(f.join(e,`skills`)),n.push(f.join(e,`.agents`,`skills`))),n.push(f.join(a,`skills`)),n.push(f.join(p.homedir(),`.qbotclaw`,`openclaw-qbot`,`skills`));let r=(t?.skills?.load?.extraDirs??[]).map(e=>typeof e==`string`?e.trim():``).filter(Boolean).map(e=>o(e));n.push(...r);let i=l({workspaceDir:e,config:t});return n.push(...i),n}function w(e){return e.replaceAll(`\\`,`/`).replace(/\/+$/,``)}function T(e,t){let n=new Set;for(let r of C(e,t)){let e=w(r);n.add(`${e}/SKILL.md`),n.add(`${e}/*/SKILL.md`)}return Array.from(n).toSorted()}function E(e){let t=e?.reason??`manual`,n=e?.changedPath;if(e?.workspaceDir){let r=x(_.get(e.workspaceDir)??0);return _.set(e.workspaceDir,r),S({workspaceDir:e.workspaceDir,reason:t,changedPath:n}),r}return y=x(y),S({reason:t,changedPath:n}),y}function D(e){if(!e)return y;let t=_.get(e)??0;return Math.max(y,t)}function O(e){let t=e.workspaceDir.trim();if(!t)return;let n=e.config?.skills?.load?.watch!==!1,r=e.config?.skills?.load?.watchDebounceMs,i=typeof r==`number`&&Number.isFinite(r)?Math.max(0,r):250,a=v.get(t);if(!n){a&&(v.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));return}let o=T(t,e.config),s=o.join(`|`);if(a&&a.pathsKey===s&&a.debounceMs===i)return;a&&(v.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));let c=m.watch(o,{ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:i,pollInterval:100},ignored:b}),l={watcher:c,pathsKey:s,debounceMs:i},u=e=>{l.pendingPath=e??l.pendingPath,l.timer&&clearTimeout(l.timer),l.timer=setTimeout(()=>{let e=l.pendingPath;l.pendingPath=void 0,l.timer=void 0,E({workspaceDir:t,reason:`watch`,changedPath:e})},i)};c.on(`add`,e=>u(e)),c.on(`change`,e=>u(e)),c.on(`unlink`,e=>u(e)),c.on(`error`,e=>{h.warn(`skills watcher error (${t}): ${String(e)}`)}),v.set(t,l)}s(),r(`gateway/skills-remote`);const k=new Map;function A(e,t){let n=String(e??``).trim().toLowerCase(),r=String(t??``).trim().toLowerCase();return!!(n.includes(`mac`)||n.includes(`darwin`)||r===`mac`)}function j(e){return Array.isArray(e)&&e.includes(`system.run`)}function M(){let e=[...k.values()].filter(e=>A(e.platform,e.deviceFamily)&&j(e.commands));if(e.length===0)return;let t=new Set;for(let n of e)for(let e of n.bins)t.add(e);let n=e.map(e=>e.displayName??e.nodeId).filter(Boolean);return{platforms:[`darwin`],hasBin:e=>t.has(e),hasAnyBin:e=>e.some(e=>t.has(e)),note:n.length>0?`Remote macOS node available (${n.join(`, `)}). Run macOS-only skills via nodes.run on that node.`:`Remote macOS node available. Run macOS-only skills via nodes.run on that node.`}}function N(e=[]){let t=new Set;for(let e of u()){e.nativeName&&t.add(e.nativeName.toLowerCase());for(let n of e.textAliases){let e=n.trim();e.startsWith(`/`)&&t.add(e.slice(1).toLowerCase())}}for(let n of e){let e=n.trim().toLowerCase();e&&t.add(e)}return t}function P(e){return c(e.workspaceDir,{config:e.cfg,skillFilter:e.skillFilter,eligibility:{remote:M()},reservedNames:N()})}function F(e){let t=new Set,n=[];for(let r of e){let e=r.skillName.trim().toLowerCase();e&&t.has(e)||(e&&t.add(e),n.push(r))}return n}function I(r){let a=(e,t)=>{if(!(e===void 0||t===void 0))return e.length===0?Array.from(new Set(t)):t.length===0?Array.from(new Set(e)):Array.from(new Set([...e,...t]))},o=r.agentIds??n(r.cfg),s=N(),l=[],u=new Map;for(let n of o){let o=t(r.cfg,n);if(!d.existsSync(o)){i(`Skipping agent "${n}": workspace does not exist: ${o}`);continue}let s;try{s=d.realpathSync(o)}catch{i(`Skipping agent "${n}": cannot resolve workspace: ${o}`);continue}let c=e(r.cfg,n),l=u.get(s);if(l){l.skillFilter=a(l.skillFilter,c);continue}u.set(s,{workspaceDir:o,skillFilter:c})}for(let{workspaceDir:e,skillFilter:t}of u.values()){let n=c(e,{config:r.cfg,skillFilter:t,eligibility:{remote:M()},reservedNames:s});for(let e of n)s.add(e.name.toLowerCase()),l.push(e)}return F(l)}function L(e){return e.trim().toLowerCase().replace(/[\s_]+/g,`-`)}function R(e,t){let n=t.trim();if(!n)return;let r=n.toLowerCase(),i=L(n);return e.find(e=>e.name.toLowerCase()===r||e.skillName.toLowerCase()===r?!0:L(e.name)===i||L(e.skillName)===i)}function z(e){let t=e.commandBodyNormalized.trim();if(!t.startsWith(`/`))return null;let n=t.match(/^\/([^\s]+)(?:\s+([\s\S]+))?$/);if(!n)return null;let r=n[1]?.trim().toLowerCase();if(!r)return null;if(r===`skill`){let t=n[2]?.trim();if(!t)return null;let r=t.match(/^([^\s]+)(?:\s+([\s\S]+))?$/);if(!r)return null;let i=R(e.skillCommands,r[1]??``);return i?{command:i,args:r[2]?.trim()||void 0}:null}let i=e.skillCommands.find(e=>e.name.toLowerCase()===r);return i?{command:i,args:n[2]?.trim()||void 0}:null}export{M as a,z as i,I as n,O as o,P as r,D as s,N as t};
|
|
2
|
+
//# sourceMappingURL=skill-commands-Db232ZRp.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
1
|
import{S as e,t}from"./subsystem-C5XF2Fy5.js";import{t as n,y as r}from"./utils-UGOV_184.js";import{Ai as i,Mi as a,ji as o}from"./model-selection-BlC_rXAN.js";import{d as s,r as c,u as l}from"./agent-scope-DXZc3eNT.js";import{i as u,n as d,s as f}from"./skills-DHbOKEGc.js";import{i as ee}from"./commands-registry-B1x54ukc.js";import{t as te}from"./workspace-dirs-BhF1Dzxt.js";import{a as p,i as m,n as h,o as g,r as _,t as ne}from"./pairing-token-BjYBuREl.js";import v from"node:fs";import re from"node:os";import y from"node:path";import{randomUUID as b}from"node:crypto";import x from"chokidar";const S=t(`gateway/skills`),C=new Set,w=new Map,T=new Map;let E=0;const ie=[/(^|[\\/])\.git([\\/]|$)/,/(^|[\\/])node_modules([\\/]|$)/,/(^|[\\/])dist([\\/]|$)/,/(^|[\\/])\.venv([\\/]|$)/,/(^|[\\/])venv([\\/]|$)/,/(^|[\\/])__pycache__([\\/]|$)/,/(^|[\\/])\.mypy_cache([\\/]|$)/,/(^|[\\/])\.pytest_cache([\\/]|$)/,/(^|[\\/])build([\\/]|$)/,/(^|[\\/])\.cache([\\/]|$)/];function D(e){let t=Date.now();return t<=e?e+1:t}function O(e){for(let t of C)try{t(e)}catch(e){S.warn(`skills change listener failed: ${String(e)}`)}}function ae(e,t){let i=[];e.trim()&&(i.push(y.join(e,`skills`)),i.push(y.join(e,`.agents`,`skills`))),i.push(y.join(n,`skills`)),i.push(y.join(re.homedir(),`.qbotclaw`,`openclaw-qbot`,`skills`));let a=(t?.skills?.load?.extraDirs??[]).map(e=>typeof e==`string`?e.trim():``).filter(Boolean).map(e=>r(e));i.push(...a);let o=f({workspaceDir:e,config:t});return i.push(...o),i}function oe(e){return e.replaceAll(`\\`,`/`).replace(/\/+$/,``)}function se(e,t){let n=new Set;for(let r of ae(e,t)){let e=oe(r);n.add(`${e}/SKILL.md`),n.add(`${e}/*/SKILL.md`)}return Array.from(n).toSorted()}function ce(e){return C.add(e),()=>{C.delete(e)}}function k(e){let t=e?.reason??`manual`,n=e?.changedPath;if(e?.workspaceDir){let r=D(w.get(e.workspaceDir)??0);return w.set(e.workspaceDir,r),O({workspaceDir:e.workspaceDir,reason:t,changedPath:n}),r}return E=D(E),O({reason:t,changedPath:n}),E}function le(e){if(!e)return E;let t=w.get(e)??0;return Math.max(E,t)}function ue(e){let t=e.workspaceDir.trim();if(!t)return;let n=e.config?.skills?.load?.watch!==!1,r=e.config?.skills?.load?.watchDebounceMs,i=typeof r==`number`&&Number.isFinite(r)?Math.max(0,r):250,a=T.get(t);if(!n){a&&(T.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));return}let o=se(t,e.config),s=o.join(`|`);if(a&&a.pathsKey===s&&a.debounceMs===i)return;a&&(T.delete(t),a.timer&&clearTimeout(a.timer),a.watcher.close().catch(()=>{}));let c=x.watch(o,{ignoreInitial:!0,awaitWriteFinish:{stabilityThreshold:i,pollInterval:100},ignored:ie}),l={watcher:c,pathsKey:s,debounceMs:i},u=e=>{l.pendingPath=e??l.pendingPath,l.timer&&clearTimeout(l.timer),l.timer=setTimeout(()=>{let e=l.pendingPath;l.pendingPath=void 0,l.timer=void 0,k({workspaceDir:t,reason:`watch`,changedPath:e})},i)};c.on(`add`,e=>u(e)),c.on(`change`,e=>u(e)),c.on(`unlink`,e=>u(e)),c.on(`error`,e=>{S.warn(`skills watcher error (${t}): ${String(e)}`)}),T.set(t,l)}const A=i();async function j(e){let{pendingPath:t,pairedPath:n}=p(e,`nodes`),[r,i]=await Promise.all([o(t),o(n)]),a={pendingById:r??{},pairedByNodeId:i??{}};return m(a.pendingById,Date.now(),3e5),a}async function M(e,t){let{pendingPath:n,pairedPath:r}=p(t,`nodes`);await Promise.all([a(n,e.pendingById),a(r,e.pairedByNodeId)])}function N(e){return e.trim()}function P(){return ne()}async function F(e){let t=await j(e);return{pending:Object.values(t.pendingById).toSorted((e,t)=>t.ts-e.ts),paired:Object.values(t.pairedByNodeId).toSorted((e,t)=>t.approvedAtMs-e.approvedAtMs)}}async function I(e,t){return await A(async()=>{let n=await j(t),r=N(e.nodeId);if(!r)throw Error(`nodeId required`);return await g({pendingById:n.pendingById,isExisting:e=>e.nodeId===r,isRepair:!!n.pairedByNodeId[r],createRequest:t=>({requestId:b(),nodeId:r,displayName:e.displayName,platform:e.platform,version:e.version,coreVersion:e.coreVersion,uiVersion:e.uiVersion,deviceFamily:e.deviceFamily,modelIdentifier:e.modelIdentifier,caps:e.caps,commands:e.commands,permissions:e.permissions,remoteIp:e.remoteIp,silent:e.silent,isRepair:t,ts:Date.now()}),persist:async()=>await M(n,t)})})}async function L(e,t){return await A(async()=>{let n=await j(t),r=n.pendingById[e];if(!r)return null;let i=Date.now(),a=n.pairedByNodeId[r.nodeId],o={nodeId:r.nodeId,token:P(),displayName:r.displayName,platform:r.platform,version:r.version,coreVersion:r.coreVersion,uiVersion:r.uiVersion,deviceFamily:r.deviceFamily,modelIdentifier:r.modelIdentifier,caps:r.caps,commands:r.commands,permissions:r.permissions,remoteIp:r.remoteIp,createdAtMs:a?.createdAtMs??i,approvedAtMs:i};return delete n.pendingById[e],n.pairedByNodeId[r.nodeId]=o,await M(n,t),{requestId:e,node:o}})}async function R(e,t){return await A(async()=>await _({requestId:e,idKey:`nodeId`,loadState:()=>j(t),persistState:e=>M(e,t),getId:e=>e.nodeId}))}async function z(e,t,n){let r=await j(n),i=N(e),a=r.pairedByNodeId[i];return a&&h(t,a.token)?{ok:!0,node:a}:{ok:!1}}async function B(e,t,n){await A(async()=>{let r=await j(n),i=N(e),a=r.pairedByNodeId[i];if(!a)return;let o={...a,displayName:t.displayName??a.displayName,platform:t.platform??a.platform,version:t.version??a.version,coreVersion:t.coreVersion??a.coreVersion,uiVersion:t.uiVersion??a.uiVersion,deviceFamily:t.deviceFamily??a.deviceFamily,modelIdentifier:t.modelIdentifier??a.modelIdentifier,remoteIp:t.remoteIp??a.remoteIp,caps:t.caps??a.caps,commands:t.commands??a.commands,bins:t.bins??a.bins,permissions:t.permissions??a.permissions,lastConnectedAtMs:t.lastConnectedAtMs??a.lastConnectedAtMs};r.pairedByNodeId[i]=o,await M(r,n)})}async function V(e,t,n){return await A(async()=>{let r=await j(n),i=N(e),a=r.pairedByNodeId[i];if(!a)return null;let o=t.trim();if(!o)throw Error(`displayName required`);let s={...a,displayName:o};return r.pairedByNodeId[i]=s,await M(r,n),s})}const H=t(`gateway/skills-remote`),U=new Map;let W=null;function de(e){let t=U.get(e),n=t?.displayName?.trim(),r=n&&n!==e?`${n} (${e})`:e,i=t?.remoteIp?.trim();return i?`${r} @ ${i}`:r}function fe(e){if(e){if(typeof e==`string`)return e;if(e instanceof Error||typeof e==`object`&&`message`in e&&typeof e.message==`string`)return e.message;if(typeof e==`number`||typeof e==`boolean`||typeof e==`bigint`)return String(e);if(typeof e==`symbol`)return e.toString();if(typeof e==`object`)try{return JSON.stringify(e)}catch{return}}}function G(e,t){let n=fe(t),r=de(e);if(n?.includes(`node not connected`)||n?.includes(`node disconnected`)){H.info(`remote bin probe skipped: node unavailable (${r})`);return}if(n?.includes(`invoke timed out`)||n?.includes(`timeout`)){H.warn(`remote bin probe timed out (${r}); check node connectivity for ${r}`);return}H.warn(`remote bin probe error (${r}): ${n??`unknown`}`)}function K(e,t){let n=String(e??``).trim().toLowerCase(),r=String(t??``).trim().toLowerCase();return!!(n.includes(`mac`)||n.includes(`darwin`)||r===`mac`)}function q(e){return Array.isArray(e)&&e.includes(`system.run`)}function pe(e){return Array.isArray(e)&&e.includes(`system.which`)}function J(e){let t=U.get(e.nodeId),n=new Set(e.bins??t?.bins??[]);U.set(e.nodeId,{nodeId:e.nodeId,displayName:e.displayName??t?.displayName,platform:e.platform??t?.platform,deviceFamily:e.deviceFamily??t?.deviceFamily,commands:e.commands??t?.commands,remoteIp:e.remoteIp??t?.remoteIp,bins:n})}function me(e){W=e}async function he(){try{let e=await F(),t=!1;for(let n of e.paired)J({nodeId:n.nodeId,displayName:n.displayName,platform:n.platform,deviceFamily:n.deviceFamily,commands:n.commands,remoteIp:n.remoteIp,bins:n.bins}),K(n.platform,n.deviceFamily)&&q(n.commands)&&(t=!0);t&&k({reason:`remote-node`})}catch(e){H.warn(`failed to prime remote skills cache: ${String(e)}`)}}function ge(e){J(e)}function _e(e,t){J({nodeId:e,bins:t})}function ve(e){U.delete(e)}function ye(e,t){let n=new Set;for(let r of e){let e=r.metadata?.os??[];if(e.length>0&&!e.includes(t))continue;let i=r.metadata?.requires?.bins??[],a=r.metadata?.requires?.anyBins??[];for(let e of i)e.trim()&&n.add(e.trim());for(let e of a)e.trim()&&n.add(e.trim())}return[...n]}function be(e){return`for b in ${e.map(e=>`'${e.replace(/'/g,`'\\''`)}'`).join(` `)}; do if command -v "$b" >/dev/null 2>&1; then echo "$b"; fi; done`}function xe(e,t){if(!e&&!t)return[];try{let n=e?JSON.parse(e):t;if(Array.isArray(n.bins))return n.bins.map(e=>String(e).trim()).filter(Boolean);if(typeof n.stdout==`string`)return n.stdout.split(/\r?\n/).map(e=>e.trim()).filter(Boolean)}catch{return[]}return[]}function Se(e,t){if(!e||e.size!==t.size)return!1;for(let n of t)if(!e.has(n))return!1;return!0}async function Y(e){if(!W||!K(e.platform,e.deviceFamily))return;let t=pe(e.commands),n=q(e.commands);if(!t&&!n)return;let r=te(e.cfg),i=new Set;for(let t of r){let n=u(t,{config:e.cfg});for(let e of ye(n,`darwin`))i.add(e)}if(i.size!==0)try{let n=[...i],r=await W.invoke(t?{nodeId:e.nodeId,command:`system.which`,params:{bins:n},timeoutMs:e.timeoutMs??15e3}:{nodeId:e.nodeId,command:`system.run`,params:{command:[`/bin/sh`,`-lc`,be(n)]},timeoutMs:e.timeoutMs??15e3});if(!r.ok){G(e.nodeId,r.error?.message??`unknown`);return}let a=xe(r.payloadJSON,r.payload),o=U.get(e.nodeId)?.bins,s=!Se(o,new Set(a));if(_e(e.nodeId,a),!s)return;await B(e.nodeId,{bins:a}),k({reason:`remote-node`})}catch(t){G(e.nodeId,t)}}function X(){let e=[...U.values()].filter(e=>K(e.platform,e.deviceFamily)&&q(e.commands));if(e.length===0)return;let t=new Set;for(let n of e)for(let e of n.bins)t.add(e);let n=e.map(e=>e.displayName??e.nodeId).filter(Boolean);return{platforms:[`darwin`],hasBin:e=>t.has(e),hasAnyBin:e=>e.some(e=>t.has(e)),note:n.length>0?`Remote macOS node available (${n.join(`, `)}). Run macOS-only skills via nodes.run on that node.`:`Remote macOS node available. Run macOS-only skills via nodes.run on that node.`}}async function Z(e){if(!W)return;let t=W.listConnected();for(let n of t)await Y({nodeId:n.nodeId,platform:n.platform,deviceFamily:n.deviceFamily,commands:n.commands,cfg:e})}function Q(e=[]){let t=new Set;for(let e of ee()){e.nativeName&&t.add(e.nativeName.toLowerCase());for(let n of e.textAliases){let e=n.trim();e.startsWith(`/`)&&t.add(e.slice(1).toLowerCase())}}for(let n of e){let e=n.trim().toLowerCase();e&&t.add(e)}return t}function Ce(e){return d(e.workspaceDir,{config:e.cfg,skillFilter:e.skillFilter,eligibility:{remote:X()},reservedNames:Q()})}function we(e){let t=new Set,n=[];for(let r of e){let e=r.skillName.trim().toLowerCase();e&&t.has(e)||(e&&t.add(e),n.push(r))}return n}function Te(t){let n=(e,t)=>{if(!(e===void 0||t===void 0))return e.length===0?Array.from(new Set(t)):t.length===0?Array.from(new Set(e)):Array.from(new Set([...e,...t]))},r=t.agentIds??c(t.cfg),i=Q(),a=[],o=new Map;for(let i of r){let r=s(t.cfg,i);if(!v.existsSync(r)){e(`Skipping agent "${i}": workspace does not exist: ${r}`);continue}let a;try{a=v.realpathSync(r)}catch{e(`Skipping agent "${i}": cannot resolve workspace: ${r}`);continue}let c=l(t.cfg,i),u=o.get(a);if(u){u.skillFilter=n(u.skillFilter,c);continue}o.set(a,{workspaceDir:r,skillFilter:c})}for(let{workspaceDir:e,skillFilter:n}of o.values()){let r=d(e,{config:t.cfg,skillFilter:n,eligibility:{remote:X()},reservedNames:i});for(let e of r)i.add(e.name.toLowerCase()),a.push(e)}return we(a)}function $(e){return e.trim().toLowerCase().replace(/[\s_]+/g,`-`)}function Ee(e,t){let n=t.trim();if(!n)return;let r=n.toLowerCase(),i=$(n);return e.find(e=>e.name.toLowerCase()===r||e.skillName.toLowerCase()===r?!0:$(e.name)===i||$(e.skillName)===i)}function De(e){let t=e.commandBodyNormalized.trim();if(!t.startsWith(`/`))return null;let n=t.match(/^\/([^\s]+)(?:\s+([\s\S]+))?$/);if(!n)return null;let r=n[1]?.trim().toLowerCase();if(!r)return null;if(r===`skill`){let t=n[2]?.trim();if(!t)return null;let r=t.match(/^([^\s]+)(?:\s+([\s\S]+))?$/);if(!r)return null;let i=Ee(e.skillCommands,r[1]??``);return i?{command:i,args:r[2]?.trim()||void 0}:null}let i=e.skillCommands.find(e=>e.name.toLowerCase()===r);return i?{command:i,args:n[2]?.trim()||void 0}:null}export{B as _,X as a,le as b,Z as c,me as d,L as f,I as g,V as h,De as i,Y as l,R as m,Te as n,he as o,F as p,Ce as r,ge as s,Q as t,ve as u,z as v,ce as x,ue as y};
|
|
2
|
+
//# sourceMappingURL=skill-commands-HJHHZqt6.js.map
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import{n as e}from"./scan-paths-C13EseXp.js";import{a as t}from"./errors-Bunti32V.js";import n from"node:path";import r from"node:fs/promises";const i=new Set([`.js`,`.ts`,`.mjs`,`.cjs`,`.mts`,`.cts`,`.jsx`,`.tsx`]),a=new Map,o=new Map;function s(e){return i.has(n.extname(e).toLowerCase())}function c(e){let t=a.get(e.filePath);if(t){if(t.size!==e.size||t.mtimeMs!==e.mtimeMs||t.maxFileBytes!==e.maxFileBytes){a.delete(e.filePath);return}return t}}function l(e,t){if(a.size>=5e3){let e=a.keys().next();e.done||a.delete(e.value)}a.set(e,t)}function u(e,t){if(o.size>=5e3){let e=o.keys().next();e.done||o.delete(e.value)}o.set(e,t)}const d=[{ruleId:`dangerous-exec`,severity:`critical`,message:`Shell command execution detected (child_process)`,pattern:/\b(exec|execSync|spawn|spawnSync|execFile|execFileSync)\s*\(/,requiresContext:/child_process/},{ruleId:`dynamic-code-execution`,severity:`critical`,message:`Dynamic code execution detected`,pattern:/\beval\s*\(|new\s+Function\s*\(/},{ruleId:`crypto-mining`,severity:`critical`,message:`Possible crypto-mining reference detected`,pattern:/stratum\+tcp|stratum\+ssl|coinhive|cryptonight|xmrig/i},{ruleId:`suspicious-network`,severity:`warn`,message:`WebSocket connection to non-standard port`,pattern:/new\s+WebSocket\s*\(\s*["']wss?:\/\/[^"']*:(\d+)/}],f=new Set([80,443,8080,8443,3e3]),p=[{ruleId:`potential-exfiltration`,severity:`warn`,message:`File read combined with network send — possible data exfiltration`,pattern:/readFileSync|readFile/,requiresContext:/\bfetch\b|\bpost\b|http\.request/i},{ruleId:`obfuscated-code`,severity:`warn`,message:`Hex-encoded string sequence detected (possible obfuscation)`,pattern:/(\\x[0-9a-fA-F]{2}){6,}/},{ruleId:`obfuscated-code`,severity:`warn`,message:`Large base64 payload with decode call detected (possible obfuscation)`,pattern:/(?:atob|Buffer\.from)\s*\(\s*["'][A-Za-z0-9+/=]{200,}["']/},{ruleId:`env-harvesting`,severity:`critical`,message:`Environment variable access combined with network send — possible credential harvesting`,pattern:/process\.env/,requiresContext:/\bfetch\b|\bpost\b|http\.request/i}];function m(e,t=120){return e.length<=t?e:`${e.slice(0,t)}…`}function h(e,t){let n=[],r=e.split(`
|
|
2
2
|
`),i=new Set;for(let a of d)if(!i.has(a.ruleId)&&!(a.requiresContext&&!a.requiresContext.test(e)))for(let e=0;e<r.length;e++){let o=r[e],s=a.pattern.exec(o);if(s){if(a.ruleId===`suspicious-network`){let e=parseInt(s[1],10);if(f.has(e))continue}n.push({ruleId:a.ruleId,severity:a.severity,file:t,line:e+1,message:a.message,evidence:m(o.trim())}),i.add(a.ruleId);break}}let a=new Set;for(let i of p){let o=`${i.ruleId}::${i.message}`;if(a.has(o)||!i.pattern.test(e)||i.requiresContext&&!i.requiresContext.test(e))continue;let s=0,c=``;for(let e=0;e<r.length;e++)if(i.pattern.test(r[e])){s=e+1,c=r[e].trim();break}s===0&&(s=1,c=e.slice(0,120)),n.push({ruleId:i.ruleId,severity:i.severity,file:t,line:s,message:i.message,evidence:m(c)}),a.add(o)}return n}function g(e){return{includeFiles:e?.includeFiles??[],maxFiles:Math.max(1,e?.maxFiles??500),maxFileBytes:Math.max(1,e?.maxFileBytes??1048576)}}async function _(e,t){let r=[],i=[e];for(;i.length>0&&r.length<t;){let e=i.pop();if(!e)break;let a=await v(e);for(let o of a){if(r.length>=t)break;if(o.name.startsWith(`.`)||o.name===`node_modules`)continue;let a=n.join(e,o.name);o.kind===`dir`?i.push(a):o.kind===`file`&&s(o.name)&&r.push(a)}}return r}async function v(e){let n=null;try{n=await r.stat(e)}catch(e){if(t(e,`ENOENT`))return[];throw e}if(!n?.isDirectory())return[];let i=o.get(e);if(i&&i.mtimeMs===n.mtimeMs)return i.entries;let a=await r.readdir(e,{withFileTypes:!0}),s=[];for(let e of a)e.isDirectory()?s.push({name:e.name,kind:`dir`}):e.isFile()&&s.push({name:e.name,kind:`file`});return u(e,{mtimeMs:n.mtimeMs,entries:s}),s}async function y(i){if(i.includeFiles.length===0)return[];let a=new Set,o=[];for(let c of i.includeFiles){let l=n.resolve(i.rootDir,c);if(!e(i.rootDir,l)||!s(l)||a.has(l))continue;let u=null;try{u=await r.stat(l)}catch(e){if(t(e,`ENOENT`))continue;throw e}u?.isFile()&&(o.push(l),a.add(l))}return o}async function b(e,t){let r=await y({rootDir:e,includeFiles:t.includeFiles});if(r.length>=t.maxFiles)return r.slice(0,t.maxFiles);let i=await _(e,t.maxFiles),a=new Set(r.map(e=>n.resolve(e))),o=[...r];for(let e of i){if(o.length>=t.maxFiles)break;let r=n.resolve(e);a.has(r)||(o.push(e),a.add(r))}return o}async function x(e){let{filePath:n,maxFileBytes:i}=e,a=null;try{a=await r.stat(n)}catch(e){if(t(e,`ENOENT`))return{scanned:!1,findings:[]};throw e}if(!a?.isFile())return{scanned:!1,findings:[]};let o=c({filePath:n,size:a.size,mtimeMs:a.mtimeMs,maxFileBytes:i});if(o)return{scanned:o.scanned,findings:o.findings};if(a.size>i)return l(n,{size:a.size,mtimeMs:a.mtimeMs,maxFileBytes:i,scanned:!1,findings:[]}),{scanned:!1,findings:[]};let s;try{s=await r.readFile(n,`utf-8`)}catch(e){if(t(e,`ENOENT`))return{scanned:!1,findings:[]};throw e}let u=h(s,n);return l(n,{size:a.size,mtimeMs:a.mtimeMs,maxFileBytes:i,scanned:!0,findings:u}),{scanned:!0,findings:u}}async function S(e,t){let n=g(t),r=await b(e,n),i=[],a=0,o=0,s=0,c=0;for(let e of r){let t=await x({filePath:e,maxFileBytes:n.maxFileBytes});if(t.scanned){a+=1;for(let e of t.findings)i.push(e),e.severity===`critical`?o+=1:e.severity===`warn`?s+=1:c+=1}}return{scannedFiles:a,critical:o,warn:s,info:c,findings:i}}export{S as t};
|
|
3
|
+
//# sourceMappingURL=skill-scanner-CUUF3Fvo.js.map
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import{n as e}from"./scan-paths-CWtvWW40.js";import{a as t}from"./errors-6SQWM9dj.js";import n from"node:path";import r from"node:fs/promises";const i=new Set([`.js`,`.ts`,`.mjs`,`.cjs`,`.mts`,`.cts`,`.jsx`,`.tsx`]),a=new Map,o=new Map;function s(e){return i.has(n.extname(e).toLowerCase())}function c(e){let t=a.get(e.filePath);if(t){if(t.size!==e.size||t.mtimeMs!==e.mtimeMs||t.maxFileBytes!==e.maxFileBytes){a.delete(e.filePath);return}return t}}function l(e,t){if(a.size>=5e3){let e=a.keys().next();e.done||a.delete(e.value)}a.set(e,t)}function u(e,t){if(o.size>=5e3){let e=o.keys().next();e.done||o.delete(e.value)}o.set(e,t)}const d=[{ruleId:`dangerous-exec`,severity:`critical`,message:`Shell command execution detected (child_process)`,pattern:/\b(exec|execSync|spawn|spawnSync|execFile|execFileSync)\s*\(/,requiresContext:/child_process/},{ruleId:`dynamic-code-execution`,severity:`critical`,message:`Dynamic code execution detected`,pattern:/\beval\s*\(|new\s+Function\s*\(/},{ruleId:`crypto-mining`,severity:`critical`,message:`Possible crypto-mining reference detected`,pattern:/stratum\+tcp|stratum\+ssl|coinhive|cryptonight|xmrig/i},{ruleId:`suspicious-network`,severity:`warn`,message:`WebSocket connection to non-standard port`,pattern:/new\s+WebSocket\s*\(\s*["']wss?:\/\/[^"']*:(\d+)/}],f=new Set([80,443,8080,8443,3e3]),p=[{ruleId:`potential-exfiltration`,severity:`warn`,message:`File read combined with network send — possible data exfiltration`,pattern:/readFileSync|readFile/,requiresContext:/\bfetch\b|\bpost\b|http\.request/i},{ruleId:`obfuscated-code`,severity:`warn`,message:`Hex-encoded string sequence detected (possible obfuscation)`,pattern:/(\\x[0-9a-fA-F]{2}){6,}/},{ruleId:`obfuscated-code`,severity:`warn`,message:`Large base64 payload with decode call detected (possible obfuscation)`,pattern:/(?:atob|Buffer\.from)\s*\(\s*["'][A-Za-z0-9+/=]{200,}["']/},{ruleId:`env-harvesting`,severity:`critical`,message:`Environment variable access combined with network send — possible credential harvesting`,pattern:/process\.env/,requiresContext:/\bfetch\b|\bpost\b|http\.request/i}];function m(e,t=120){return e.length<=t?e:`${e.slice(0,t)}…`}function h(e,t){let n=[],r=e.split(`
|
|
2
2
|
`),i=new Set;for(let a of d)if(!i.has(a.ruleId)&&!(a.requiresContext&&!a.requiresContext.test(e)))for(let e=0;e<r.length;e++){let o=r[e],s=a.pattern.exec(o);if(s){if(a.ruleId===`suspicious-network`){let e=parseInt(s[1],10);if(f.has(e))continue}n.push({ruleId:a.ruleId,severity:a.severity,file:t,line:e+1,message:a.message,evidence:m(o.trim())}),i.add(a.ruleId);break}}let a=new Set;for(let i of p){let o=`${i.ruleId}::${i.message}`;if(a.has(o)||!i.pattern.test(e)||i.requiresContext&&!i.requiresContext.test(e))continue;let s=0,c=``;for(let e=0;e<r.length;e++)if(i.pattern.test(r[e])){s=e+1,c=r[e].trim();break}s===0&&(s=1,c=e.slice(0,120)),n.push({ruleId:i.ruleId,severity:i.severity,file:t,line:s,message:i.message,evidence:m(c)}),a.add(o)}return n}function g(e){return{includeFiles:e?.includeFiles??[],maxFiles:Math.max(1,e?.maxFiles??500),maxFileBytes:Math.max(1,e?.maxFileBytes??1048576)}}async function _(e,t){let r=[],i=[e];for(;i.length>0&&r.length<t;){let e=i.pop();if(!e)break;let a=await v(e);for(let o of a){if(r.length>=t)break;if(o.name.startsWith(`.`)||o.name===`node_modules`)continue;let a=n.join(e,o.name);o.kind===`dir`?i.push(a):o.kind===`file`&&s(o.name)&&r.push(a)}}return r}async function v(e){let n=null;try{n=await r.stat(e)}catch(e){if(t(e,`ENOENT`))return[];throw e}if(!n?.isDirectory())return[];let i=o.get(e);if(i&&i.mtimeMs===n.mtimeMs)return i.entries;let a=await r.readdir(e,{withFileTypes:!0}),s=[];for(let e of a)e.isDirectory()?s.push({name:e.name,kind:`dir`}):e.isFile()&&s.push({name:e.name,kind:`file`});return u(e,{mtimeMs:n.mtimeMs,entries:s}),s}async function y(i){if(i.includeFiles.length===0)return[];let a=new Set,o=[];for(let c of i.includeFiles){let l=n.resolve(i.rootDir,c);if(!e(i.rootDir,l)||!s(l)||a.has(l))continue;let u=null;try{u=await r.stat(l)}catch(e){if(t(e,`ENOENT`))continue;throw e}u?.isFile()&&(o.push(l),a.add(l))}return o}async function b(e,t){let r=await y({rootDir:e,includeFiles:t.includeFiles});if(r.length>=t.maxFiles)return r.slice(0,t.maxFiles);let i=await _(e,t.maxFiles),a=new Set(r.map(e=>n.resolve(e))),o=[...r];for(let e of i){if(o.length>=t.maxFiles)break;let r=n.resolve(e);a.has(r)||(o.push(e),a.add(r))}return o}async function x(e){let{filePath:n,maxFileBytes:i}=e,a=null;try{a=await r.stat(n)}catch(e){if(t(e,`ENOENT`))return{scanned:!1,findings:[]};throw e}if(!a?.isFile())return{scanned:!1,findings:[]};let o=c({filePath:n,size:a.size,mtimeMs:a.mtimeMs,maxFileBytes:i});if(o)return{scanned:o.scanned,findings:o.findings};if(a.size>i)return l(n,{size:a.size,mtimeMs:a.mtimeMs,maxFileBytes:i,scanned:!1,findings:[]}),{scanned:!1,findings:[]};let s;try{s=await r.readFile(n,`utf-8`)}catch(e){if(t(e,`ENOENT`))return{scanned:!1,findings:[]};throw e}let u=h(s,n);return l(n,{size:a.size,mtimeMs:a.mtimeMs,maxFileBytes:i,scanned:!0,findings:u}),{scanned:!0,findings:u}}async function S(e,t){let n=g(t),r=await b(e,n),i=[],a=0,o=0,s=0,c=0;for(let e of r){let t=await x({filePath:e,maxFileBytes:n.maxFileBytes});if(t.scanned){a+=1;for(let e of t.findings)i.push(e),e.severity===`critical`?o+=1:e.severity===`warn`?s+=1:c+=1}}return{scannedFiles:a,critical:o,warn:s,info:c,findings:i}}export{S as t};
|
|
3
|
+
//# sourceMappingURL=skill-scanner-CkxXNioD.js.map
|
package/dist/skills-CKTicUKS.js
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import{H as e,t}from"./subsystem-BLbY429l.js";import{h as n,t as r,u as i,v as a}from"./utils-CGdo13HV.js";import{_ as o,a as s,n as c,p as l}from"./openclaw-root-CnsBf6ZU.js";import{d as u,f as d,l as f,u as ee}from"./env-overrides-DHtB4kK3.js";import{r as p}from"./scan-paths-CWtvWW40.js";import{P as m,l as h}from"./registry-BptzrW8D.js";import{m as g}from"./frontmatter-C7mzDNxd.js";import{n as _}from"./path-alias-guards-kY_ZbWs-.js";import{URL as v,fileURLToPath as y}from"node:url";import b from"node:os";import x from"node:path";import S from"node:fs";import{formatSkillsForPrompt as C,loadSkillsFromDir as te}from"@mariozechner/pi-coding-agent";const ne=new Set([`openclaw-telemetry-galileo-embedded`,`x5use-browser-control`]),w=e=>Array.isArray(e)?e.map(e=>typeof e==`string`?e.trim():``).filter(Boolean):[],re=e=>{if(typeof e!=`string`)return;let t=e.trim();if(t)return t.toLowerCase()===`none`?null:t},ie=e=>{if(!e||typeof e!=`object`||Array.isArray(e))return{};let t={};for(let[n,r]of Object.entries(e)){if(!n.trim())continue;if(!r||typeof r!=`object`||Array.isArray(r)){t[n]={};continue}let e=r,i=e.hooks,a=i&&typeof i==`object`&&!Array.isArray(i)?{allowPromptInjection:i.allowPromptInjection}:void 0,o=a&&typeof a.allowPromptInjection==`boolean`?{allowPromptInjection:a.allowPromptInjection}:void 0;t[n]={enabled:typeof e.enabled==`boolean`?e.enabled:void 0,hooks:o,config:`config`in e?e.config:void 0}}return t},T=e=>{let t=re(e?.slots?.memory);return{enabled:e?.enabled!==!1,allow:w(e?.allow),deny:w(e?.deny),loadPaths:w(e?.load?.paths),slots:{memory:t===void 0?m(`memory`):t},entries:ie(e?.entries)}},E=e=>!!(e?.slots&&Object.prototype.hasOwnProperty.call(e.slots,`memory`)),ae=e=>!!(e?.entries&&Object.prototype.hasOwnProperty.call(e.entries,`memory-core`)),oe=e=>e?!!(typeof e.enabled==`boolean`||Array.isArray(e.allow)&&e.allow.length>0||Array.isArray(e.deny)&&e.deny.length>0||e.load?.paths&&Array.isArray(e.load.paths)&&e.load.paths.length>0||e.slots&&Object.keys(e.slots).length>0||e.entries&&Object.keys(e.entries).length>0):!1;function se(e,t=process.env){if(!t.VITEST)return e;let n=e.plugins;return oe(n)?E(n)||ae(n)?e:{...e,plugins:{...n,slots:{...n?.slots,memory:`none`}}}:{...e,plugins:{...n,enabled:!1,slots:{...n?.slots,memory:`none`}}}}function ce(e,t=process.env){if(!t.VITEST)return!1;let n=e.plugins;return!(E(n)||ae(n))}function le(e,t,n){if(t===`bundled`&&ne.has(e))return{enabled:!0};if(!n.enabled)return{enabled:!1,reason:`plugins disabled`};if(n.deny.includes(e))return{enabled:!1,reason:`blocked by denylist`};let r=n.entries[e];return r?.enabled===!1?{enabled:!1,reason:`disabled in config`}:n.slots.memory===e?{enabled:!0}:n.allow.length>0&&!n.allow.includes(e)?{enabled:!1,reason:`not in allowlist`}:r?.enabled===!0?{enabled:!0}:t===`bundled`?{enabled:!1,reason:`bundled (disabled by default)`}:{enabled:!0}}function ue(e,t){if(!e)return!1;let n=h(t);if(!n)return!1;let r=e.channels?.[n];return!r||typeof r!=`object`||Array.isArray(r)?!1:r.enabled===!0}function de(e){let t=le(e.id,e.origin,e.config);return!t.enabled&&t.reason===`bundled (disabled by default)`&&ue(e.rootConfig,e.id)?{enabled:!0}:t}function fe(e){return e.kind===`memory`?e.slot===null?{enabled:!1,reason:`memory slot disabled`}:typeof e.slot==`string`?e.slot===e.id?{enabled:!0,selected:!0}:{enabled:!1,reason:`memory slot set to "${e.slot}"`}:e.selectedId&&e.selectedId!==e.id?{enabled:!1,reason:`memory slot already filled by "${e.selectedId}"`}:{enabled:!0,selected:!0}:{enabled:!0}}function D(e=process.env){let t=e.OPENCLAW_BUNDLED_PLUGINS_DIR?.trim();if(t)return t;try{let e=x.dirname(process.execPath),t=x.join(e,`extensions`);if(S.existsSync(t))return t}catch{}try{let e=x.dirname(y(import.meta.url));for(let t=0;t<6;t+=1){let t=x.join(e,`extensions`);if(S.existsSync(t))return t;let n=x.dirname(e);if(n===e)break;e=n}}catch{}}const pe=`openclaw.plugin.json`,me=[pe];function O(e){return Array.isArray(e)?e.map(e=>typeof e==`string`?e.trim():``).filter(Boolean):[]}function he(e){for(let t of me){let n=x.join(e,t);if(S.existsSync(n))return n}return x.join(e,pe)}function ge(e,t=!0){let n=he(e),r=s({absolutePath:n,rootPath:e,boundaryLabel:`plugin root`,rejectHardlinks:t});if(!r.ok)return r.reason===`path`?{ok:!1,error:`plugin manifest not found: ${n}`,manifestPath:n}:{ok:!1,error:`unsafe plugin manifest path: ${n} (${r.reason})`,manifestPath:n};let a;try{a=JSON.parse(S.readFileSync(r.fd,`utf-8`))}catch(e){return{ok:!1,error:`failed to parse plugin manifest: ${String(e)}`,manifestPath:n}}finally{S.closeSync(r.fd)}if(!i(a))return{ok:!1,error:`plugin manifest must be an object`,manifestPath:n};let o=typeof a.id==`string`?a.id.trim():``;if(!o)return{ok:!1,error:`plugin manifest requires id`,manifestPath:n};let c=i(a.configSchema)?a.configSchema:null;if(!c)return{ok:!1,error:`plugin manifest requires configSchema`,manifestPath:n};let l=typeof a.kind==`string`?a.kind:void 0,u=typeof a.name==`string`?a.name.trim():void 0,d=typeof a.description==`string`?a.description.trim():void 0,f=typeof a.version==`string`?a.version.trim():void 0,ee=O(a.channels),p=O(a.providers),m=O(a.skills),h;return i(a.uiHints)&&(h=a.uiHints),{ok:!0,manifest:{id:o,configSchema:c,kind:l,channels:ee,providers:p,skills:m,name:u,description:d,version:f,uiHints:h},manifestPath:n}}const _e=[`index.ts`,`index.js`,`index.mjs`,`index.cjs`];function k(e){if(e)return e[g]}function A(e){let t=k(e)?.extensions;if(!Array.isArray(t))return{status:`missing`,entries:[]};let n=t.map(e=>typeof e==`string`?e.trim():``).filter(Boolean);return n.length===0?{status:`empty`,entries:[]}:{status:`ok`,entries:n}}function j(e,t){return l(e,t)}function M(e,t){let n=t?.get(e);if(n)return n;try{let n=S.realpathSync(e);return t?.set(e,n),n}catch{return null}}function N(e){try{return S.statSync(e)}catch{return null}}function ve(e){return(e&511).toString(8).padStart(3,`0`)}const ye=new Set([`.ts`,`.js`,`.mts`,`.cts`,`.mjs`,`.cjs`]),P=new Map,F=1e3;function be(){P.clear()}function I(e){let t=e.OPENCLAW_PLUGIN_DISCOVERY_CACHE_MS?.trim();if(t===``||t===`0`)return 0;if(!t)return F;let n=Number.parseInt(t,10);return Number.isFinite(n)?Math.max(0,n):F}function xe(e){return e.OPENCLAW_DISABLE_PLUGIN_DISCOVERY_CACHE?.trim()?!1:I(e)>0}function Se(e){let t=e.workspaceDir?a(e.workspaceDir):``,r=x.join(n(e.env),`extensions`),i=D(e.env)??``,o=(e.extraPaths??[]).filter(e=>typeof e==`string`).map(e=>e.trim()).filter(Boolean).map(e=>a(e)).toSorted();return`${t}::${e.ownershipUid??L()??`none`}::${r}::${i}::${JSON.stringify(o)}`}function L(e){return e===void 0?process.platform===`win32`||typeof process.getuid!=`function`?null:process.getuid():e}function Ce(e){let t=M(e.source),n=M(e.rootDir);return!t||!n||j(n,t)?null:{reason:`source_escapes_root`,sourcePath:e.source,rootPath:e.rootDir,targetPath:e.source,sourceRealPath:t,rootRealPath:n}}function we(e){if(process.platform===`win32`)return null;let t=[e.rootDir,e.source],n=new Set;for(let r of t){let t=x.resolve(r);if(n.has(t))continue;n.add(t);let i=N(r);if(!i)return{reason:`path_stat_failed`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r};let a=i.mode&511;if(a&2&&e.origin===`bundled`)try{S.chmodSync(r,a&-19);let t=N(r);if(!t)return{reason:`path_stat_failed`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r};i=t,a=t.mode&511}catch{}if(a&2)return{reason:`path_world_writable`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r,modeBits:a};if(e.origin!==`bundled`&&e.uid!==null&&typeof i.uid==`number`&&i.uid!==e.uid&&i.uid!==0)return{reason:`path_suspicious_ownership`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r,foundUid:i.uid,expectedUid:e.uid}}return null}function Te(e){return Ce({source:e.source,rootDir:e.rootDir})||we({source:e.source,rootDir:e.rootDir,origin:e.origin,uid:L(e.ownershipUid)})}function Ee(e){return e.reason===`source_escapes_root`?`blocked plugin candidate: source escapes plugin root (${e.sourcePath} -> ${e.sourceRealPath}; root=${e.rootRealPath})`:e.reason===`path_stat_failed`?`blocked plugin candidate: cannot stat path (${e.targetPath})`:e.reason===`path_world_writable`?`blocked plugin candidate: world-writable path (${e.targetPath}, mode=${ve(e.modeBits??0)})`:`blocked plugin candidate: suspicious ownership (${e.targetPath}, uid=${e.foundUid}, expected uid=${e.expectedUid} or root)`}function De(e){let t=Te({source:e.source,rootDir:e.rootDir,origin:e.origin,ownershipUid:e.ownershipUid});return t?(e.diagnostics.push({level:`warn`,source:t.targetPath,message:Ee(t)}),!0):!1}function R(e){let t=x.extname(e);return ye.has(t)?!e.endsWith(`.d.ts`):!1}function Oe(e){let t=e.trim().toLowerCase();return!!(!t||t.endsWith(`.bak`)||t.includes(`.backup-`)||t.includes(`.disabled`))}function z(e,t=!0){let n=s({absolutePath:x.join(e,`package.json`),rootPath:e,boundaryLabel:`plugin package directory`,rejectHardlinks:t});if(!n.ok)return null;try{let e=S.readFileSync(n.fd,`utf-8`);return JSON.parse(e)}catch{return null}finally{S.closeSync(n.fd)}}function B(e){let t=x.basename(e.filePath,x.extname(e.filePath)),n=e.packageName?.trim();if(!n)return t;let r=n.includes(`/`)?n.split(`/`).pop()??n:n;return e.hasMultipleExtensions?`${r}/${t}`:r}function V(e){let t=x.resolve(e.source);if(e.seen.has(t))return;let n=M(e.rootDir)??x.resolve(e.rootDir);if(De({source:t,rootDir:n,origin:e.origin,diagnostics:e.diagnostics,ownershipUid:e.ownershipUid}))return;e.seen.add(t);let r=e.manifest??null;e.candidates.push({idHint:e.idHint,source:t,rootDir:n,origin:e.origin,workspaceDir:e.workspaceDir,packageName:r?.name?.trim()||void 0,packageVersion:r?.version?.trim()||void 0,packageDescription:r?.description?.trim()||void 0,packageDir:e.packageDir,packageManifest:k(r??void 0)})}function ke(e){let t=s({absolutePath:x.resolve(e.packageDir,e.entryPath),rootPath:e.packageDir,boundaryLabel:`plugin package directory`,rejectHardlinks:e.rejectHardlinks??!0});if(!t.ok)return e.diagnostics.push({level:`error`,message:`extension entry escapes package directory: ${e.entryPath}`,source:e.sourceLabel}),null;let n=t.path;return S.closeSync(t.fd),n}function H(e){if(!S.existsSync(e.dir))return;let t=[];try{t=S.readdirSync(e.dir,{withFileTypes:!0})}catch(t){e.diagnostics.push({level:`warn`,message:`failed to read extensions dir: ${e.dir} (${String(t)})`,source:e.dir});return}for(let n of t){let t=x.join(e.dir,n.name);if(n.isFile()){if(!R(t))continue;V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:x.basename(n.name,x.extname(n.name)),source:t,rootDir:x.dirname(t),origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir})}if(!n.isDirectory()||Oe(n.name))continue;let r=e.origin!==`bundled`,i=z(t,r),a=A(i??void 0),o=a.status===`ok`?a.entries:[];if(o.length>0){for(let n of o){let a=ke({packageDir:t,entryPath:n,sourceLabel:t,diagnostics:e.diagnostics,rejectHardlinks:r});a&&V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:B({filePath:a,packageName:i?.name,hasMultipleExtensions:o.length>1}),source:a,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:i,packageDir:t})}continue}let s=[..._e].map(e=>x.join(t,e)).find(e=>S.existsSync(e));s&&R(s)&&V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:n.name,source:s,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:i,packageDir:t})}}function Ae(e){let t=a(e.rawPath);if(!S.existsSync(t)){e.diagnostics.push({level:`error`,message:`plugin path not found: ${t}`,source:t});return}let n=S.statSync(t);if(n.isFile()){if(!R(t)){e.diagnostics.push({level:`error`,message:`plugin path is not a supported file: ${t}`,source:t});return}V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:x.basename(t,x.extname(t)),source:t,rootDir:x.dirname(t),origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir});return}if(n.isDirectory()){let n=e.origin!==`bundled`,r=z(t,n),i=A(r??void 0),a=i.status===`ok`?i.entries:[];if(a.length>0){for(let i of a){let o=ke({packageDir:t,entryPath:i,sourceLabel:t,diagnostics:e.diagnostics,rejectHardlinks:n});o&&V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:B({filePath:o,packageName:r?.name,hasMultipleExtensions:a.length>1}),source:o,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:r,packageDir:t})}return}let o=[..._e].map(e=>x.join(t,e)).find(e=>S.existsSync(e));if(o&&R(o)){V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:x.basename(t),source:o,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:r,packageDir:t});return}H({dir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen});return}}function je(e){let t=e.env??process.env,r=e.cache!==!1&&xe(t),i=Se({workspaceDir:e.workspaceDir,extraPaths:e.extraPaths,ownershipUid:e.ownershipUid,env:t});if(r){let e=P.get(i);if(e&&e.expiresAt>Date.now())return e.result}let o=[],s=[],c=new Set,l=e.workspaceDir?.trim(),u=e.extraPaths??[];for(let t of u){if(typeof t!=`string`)continue;let n=t.trim();n&&Ae({rawPath:n,origin:`config`,ownershipUid:e.ownershipUid,workspaceDir:l?.trim()||void 0,candidates:o,diagnostics:s,seen:c})}if(l){let t=a(l),n=[x.join(t,`.openclaw`,`extensions`)];for(let r of n)H({dir:r,origin:`workspace`,ownershipUid:e.ownershipUid,workspaceDir:t,candidates:o,diagnostics:s,seen:c})}let d=D(t);d&&H({dir:d,origin:`bundled`,ownershipUid:e.ownershipUid,candidates:o,diagnostics:s,seen:c}),H({dir:x.join(n(t),`extensions`),origin:`global`,ownershipUid:e.ownershipUid,candidates:o,diagnostics:s,seen:c});let f={candidates:o,diagnostics:s};if(r){let e=I(t);e>0&&P.set(i,{expiresAt:Date.now()+e,result:f})}return f}const Me={config:0,workspace:1,global:2,bundled:3},U=new Map,Ne=1e3;function Pe(){U.clear()}function Fe(e){let t=e.OPENCLAW_PLUGIN_MANIFEST_CACHE_MS?.trim();if(t===``||t===`0`)return 0;if(!t)return Ne;let n=Number.parseInt(t,10);return Number.isFinite(n)?Math.max(0,n):Ne}function Ie(e){return e.OPENCLAW_DISABLE_PLUGIN_MANIFEST_CACHE?.trim()?!1:Fe(e)>0}function Le(e){let t=e.workspaceDir?a(e.workspaceDir):``,r=x.join(n(e.env),`extensions`),i=D(e.env)??``,o=e.plugins.loadPaths.map(e=>a(e)).map(e=>e.trim()).filter(Boolean).toSorted();return`${t}::${r}::${i}::${JSON.stringify(o)}`}function Re(e){try{return S.statSync(e).mtimeMs}catch{return null}}function W(e){return e?.trim()||void 0}function ze(e){return{id:e.manifest.id,name:W(e.manifest.name)??e.candidate.packageName,description:W(e.manifest.description)??e.candidate.packageDescription,version:W(e.manifest.version)??e.candidate.packageVersion,kind:e.manifest.kind,channels:e.manifest.channels??[],providers:e.manifest.providers??[],skills:e.manifest.skills??[],origin:e.candidate.origin,workspaceDir:e.candidate.workspaceDir,rootDir:e.candidate.rootDir,source:e.candidate.source,manifestPath:e.manifestPath,schemaCacheKey:e.schemaCacheKey,configSchema:e.configSchema,configUiHints:e.manifest.uiHints}}function Be(e){let t=T((e.config??{}).plugins),n=e.env??process.env,r=Le({workspaceDir:e.workspaceDir,plugins:t,env:n}),i=e.cache!==!1&&Ie(n);if(i){let e=U.get(r);if(e&&e.expiresAt>Date.now())return e.registry}let a=e.candidates?{candidates:e.candidates,diagnostics:e.diagnostics??[]}:je({workspaceDir:e.workspaceDir,extraPaths:t.loadPaths,env:n}),o=[...a.diagnostics],s=a.candidates,c=[],l=new Map,u=new Map;for(let e of s){let t=e.origin!==`bundled`,n=ge(e.rootDir,t);if(!n.ok){o.push({level:`error`,message:n.error,source:n.manifestPath});continue}let r=n.manifest;e.idHint&&e.idHint!==r.id&&o.push({level:`warn`,pluginId:r.id,source:e.source,message:`plugin id mismatch (manifest uses "${r.id}", entry hints "${e.idHint}")`});let i=r.configSchema,a=(()=>{if(!i)return;let e=Re(n.manifestPath);return e?`${n.manifestPath}:${e}`:n.manifestPath})(),s=l.get(r.id);if(s){let t=s.candidate.rootDir===e.rootDir;if((()=>{if(t)return!0;let n=M(s.candidate.rootDir,u),r=M(e.rootDir,u);return!!(n&&r&&n===r)})()){Me[e.origin]<Me[s.candidate.origin]&&(c[s.recordIndex]=ze({manifest:r,candidate:e,manifestPath:n.manifestPath,schemaCacheKey:a,configSchema:i}),l.set(r.id,{candidate:e,recordIndex:s.recordIndex}));continue}o.push({level:`warn`,pluginId:r.id,source:e.source,message:`duplicate plugin id detected; later plugin may be overridden (${e.source})`})}else l.set(r.id,{candidate:e,recordIndex:c.length});c.push(ze({manifest:r,candidate:e,manifestPath:n.manifestPath,schemaCacheKey:a,configSchema:i}))}let d={plugins:c,diagnostics:o};if(i){let e=Fe(n);e>0&&U.set(r,{expiresAt:Date.now()+e,registry:d})}return d}const Ve=/[\u00A0\u2000-\u200A\u202F\u205F\u3000]/g,He=/^https?:\/\//i,Ue=/^data:/i,G=`/workspace`;function We(e){return e.replace(Ve,` `)}function Ge(e){return e.startsWith(`@`)?e.slice(1):e}function Ke(e){let t=We(Ge(e));return t===`~`?b.homedir():t.startsWith(`~/`)?b.homedir()+t.slice(1):t}function qe(e,t){let n=Ke(e);return x.isAbsolute(n)?n:x.resolve(t,n)}function K(e,t){return qe(e,t)}function q(e){let t=K(e.filePath,e.cwd),n=x.resolve(e.root),r=x.relative(n,t);if(!r||r===``)return{resolved:t,relative:``};if(r.startsWith(`..`)||x.isAbsolute(r))throw Error(`Path escapes sandbox root (${tt(n)}): ${e.filePath}`);return{resolved:t,relative:r}}async function Je(e){let t=q(e),n={allowFinalSymlinkForUnlink:e.allowFinalSymlinkForUnlink,allowFinalHardlinkForUnlink:e.allowFinalHardlinkForUnlink};return await _({absolutePath:t.resolved,rootPath:e.root,boundaryLabel:`sandbox root`,policy:n}),t}function Ye(e){let t=e.trim();if(Ue.test(t))throw Error(`data: URLs are not supported for media. Use buffer instead.`)}async function Xe(e){let t=e.media.trim();if(!t||He.test(t))return t;let n=t;if(/^file:\/\//i.test(n)){let r=Ze({fileUrl:n,sandboxRoot:e.sandboxRoot});if(r)n=r;else try{n=y(n)}catch{throw Error(`Invalid file:// URL for sandboxed media: ${t}`)}}let r=Qe({candidate:n,sandboxRoot:e.sandboxRoot});return r&&(n=r),await $e({candidate:n,sandboxRoot:e.sandboxRoot})||(await Je({filePath:n,cwd:e.sandboxRoot,root:e.sandboxRoot})).resolved}function Ze(e){let t;try{t=new v(e.fileUrl)}catch{return}if(t.protocol!==`file:`)return;let n=decodeURIComponent(t.pathname).replace(/\\/g,`/`);if(!(n!==G&&!n.startsWith(`${G}/`)))return Qe({candidate:n,sandboxRoot:e.sandboxRoot})}function Qe(e){let t=e.candidate.replace(/\\/g,`/`);if(t===G)return x.resolve(e.sandboxRoot);let n=`${G}/`;if(!t.startsWith(n))return;let r=t.slice(n.length);return r?x.resolve(e.sandboxRoot,...r.split(`/`).filter(Boolean)):x.resolve(e.sandboxRoot)}async function $e(t){if(!x.isAbsolute(Ke(t.candidate)))return;let n=x.resolve(K(t.candidate,t.sandboxRoot)),r=x.resolve(e());if(l(r,n))return await et({filePath:n,tmpRoot:r}),n}async function et(e){await _({absolutePath:e.filePath,rootPath:e.tmpRoot,boundaryLabel:`tmp root`})}function tt(e){return e.startsWith(b.homedir())?`~${e.slice(b.homedir().length)}`:e}function nt(e){try{let t=S.readdirSync(e,{withFileTypes:!0});for(let n of t){if(n.name.startsWith(`.`))continue;let t=x.join(e,n.name);if(n.isFile()&&n.name.endsWith(`.md`)||n.isDirectory()&&S.existsSync(x.join(t,`SKILL.md`)))return!0}}catch{return!1}return!1}function rt(e={}){let t=process.env.OPENCLAW_BUNDLED_SKILLS_DIR?.trim();if(t)return t;try{let t=e.execPath??process.execPath,n=x.dirname(t),r=x.join(n,`skills`);if(S.existsSync(r))return r}catch{}try{let t=e.moduleUrl??import.meta.url,n=x.dirname(y(t)),r=c({argv1:e.argv1??process.argv[1],moduleUrl:t,cwd:e.cwd??process.cwd()});if(r){let e=x.join(r,`skills`);if(nt(e))return e}let i=n;for(let e=0;e<6;e+=1){let e=x.join(i,`skills`);if(nt(e))return e;let t=x.dirname(i);if(t===i)break;i=t}}catch{}}const it=t(`skills`);function at(e){let t=(e.workspaceDir??``).trim();if(!t)return[];let n=Be({workspaceDir:t,config:e.config});if(n.plugins.length===0)return[];let r=T(e.config?.plugins),i=e.config?.acp?.enabled!==!1,a=r.slots.memory,o=null,s=new Set,c=[];for(let t of n.plugins){if(!t.skills||t.skills.length===0||!de({id:t.id,origin:t.origin,config:r,rootConfig:e.config}).enabled||!i&&t.id===`acpx`)continue;let n=fe({id:t.id,kind:t.kind,slot:a,selectedId:o});if(n.enabled){n.selected&&t.kind===`memory`&&(o=t.id);for(let e of t.skills){let n=e.trim();if(!n)continue;let r=x.resolve(t.rootDir,n);if(!S.existsSync(r)){it.warn(`plugin skill path not found (${t.id}): ${r}`);continue}if(!p(t.rootDir,r,{requireRealpath:!0})){it.warn(`plugin skill path escapes plugin root (${t.id}): ${r}`);continue}s.has(r)||(s.add(r),c.push(r))}}}return c}const J=new Map;async function ot(e,t){let n=(J.get(e)??Promise.resolve()).then(t,t);J.set(e,n);try{return await n}finally{J.get(e)===n&&J.delete(e)}}const Y=S.promises,X=t(`skills`),st=new Set;function ct(e){let t=b.homedir();if(!t)return e;let n=t.endsWith(x.sep)?t:t+x.sep;return e.map(e=>({...e,filePath:e.filePath.startsWith(n)?`~/`+e.filePath.slice(n.length):e.filePath}))}function Z(e,t,n){st.has(e)||(st.add(e),X.debug(t,n))}function lt(e,t,n,r){let i=e.filter(e=>f({entry:e,config:t,eligibility:r}));if(n!==void 0){let e=o(n)??[],t=e.length>0?e.join(`, `):`(none)`;X.debug(`Applying skill filter: ${t}`),i=e.length>0?i.filter(t=>e.includes(t.skill.name)):[],X.debug(`After skill filter: ${i.map(e=>e.skill.name).join(`, `)||`(none)`}`)}return i}function ut(e){return e.toLowerCase().replace(/[^a-z0-9_]+/g,`_`).replace(/_+/g,`_`).replace(/^_+|_+$/g,``).slice(0,32)||`skill`}function dt(e,t){let n=e.toLowerCase();if(!t.has(n))return e;for(let n=2;n<1e3;n+=1){let r=`_${n}`,i=Math.max(1,32-r.length),a=`${e.slice(0,i)}${r}`,o=a.toLowerCase();if(!t.has(o))return a}return`${e.slice(0,30)}_x`}function ft(e){let t=e?.skills?.limits;return{maxCandidatesPerRoot:t?.maxCandidatesPerRoot??300,maxSkillsLoadedPerSource:t?.maxSkillsLoadedPerSource??200,maxSkillsInPrompt:t?.maxSkillsInPrompt??150,maxSkillsPromptChars:t?.maxSkillsPromptChars??3e4,maxSkillFileBytes:t?.maxSkillFileBytes??256e3}}function pt(e){try{let t=S.readdirSync(e,{withFileTypes:!0}),n=[];for(let r of t){if(r.name.startsWith(`.`)||r.name===`node_modules`)continue;let t=x.join(e,r.name);if(r.isDirectory()){n.push(r.name);continue}if(r.isSymbolicLink())try{S.statSync(t).isDirectory()&&n.push(r.name)}catch{}}return n}catch{return[]}}function mt(e){try{return S.realpathSync(e)}catch{return null}}function ht(e){X.warn(`Skipping skill path that resolves outside its configured root.`,{source:e.source,rootDir:e.rootDir,path:e.candidatePath,realPath:e.candidateRealPath})}function Q(e){let t=mt(e.candidatePath);return t?l(e.rootRealPath,t)?t:(ht({source:e.source,rootDir:e.rootDir,candidatePath:x.resolve(e.candidatePath),candidateRealPath:t}),null):null}function gt(e){return e.skills.filter(t=>Q({source:e.source,rootDir:e.rootDir,rootRealPath:e.rootRealPath,candidatePath:t.baseDir})?!!Q({source:e.source,rootDir:e.rootDir,rootRealPath:e.rootRealPath,candidatePath:t.filePath}):!1)}function _t(e,t){let n=x.join(e,`skills`);try{if(!S.existsSync(n)||!S.statSync(n).isDirectory())return{baseDir:e}}catch{return{baseDir:e}}let r=pt(n),i=Math.max(0,t?.maxEntriesToScan??100),a=i===0?[]:r.slice(0,Math.min(r.length,i));for(let e of a){let t=x.join(n,e,`SKILL.md`);if(S.existsSync(t))return{baseDir:n,note:`Detected nested skills root at ${n}`}}return{baseDir:e}}function vt(e){if(Array.isArray(e))return e;if(e&&typeof e==`object`&&`skills`in e){let t=e.skills;if(Array.isArray(t))return t}return[]}function $(e,t){let n=ft(t?.config),i=e=>{let t=x.resolve(e.dir),r=mt(t)??t,i=_t(e.dir,{maxEntriesToScan:n.maxCandidatesPerRoot}).baseDir,a=Q({source:e.source,rootDir:t,rootRealPath:r,candidatePath:i});if(!a)return[];let o=x.join(i,`SKILL.md`);if(S.existsSync(o)){let r=Q({source:e.source,rootDir:t,rootRealPath:a,candidatePath:o});if(!r)return[];try{let e=S.statSync(r).size;if(e>n.maxSkillFileBytes)return X.warn(`Skipping skills root due to oversized SKILL.md.`,{dir:i,filePath:o,size:e,maxSkillFileBytes:n.maxSkillFileBytes}),[]}catch{return[]}return gt({skills:vt(te({dir:i,source:e.source})),source:e.source,rootDir:t,rootRealPath:a})}let s=pt(i),c=s.length>n.maxCandidatesPerRoot,l=Math.max(0,n.maxSkillsLoadedPerSource),u=s.slice().sort().slice(0,l);c?X.warn(`Skills root looks suspiciously large, truncating discovery.`,{dir:e.dir,baseDir:i,childDirCount:s.length,maxCandidatesPerRoot:n.maxCandidatesPerRoot,maxSkillsLoadedPerSource:n.maxSkillsLoadedPerSource}):s.length>l&&X.warn(`Skills root has many entries, truncating discovery.`,{dir:e.dir,baseDir:i,childDirCount:s.length,maxSkillsLoadedPerSource:n.maxSkillsLoadedPerSource});let d=[];for(let r of u){let o=x.join(i,r);if(!Q({source:e.source,rootDir:t,rootRealPath:a,candidatePath:o}))continue;let s=x.join(o,`SKILL.md`);if(!S.existsSync(s))continue;let c=Q({source:e.source,rootDir:t,rootRealPath:a,candidatePath:s});if(!c)continue;try{let e=S.statSync(c).size;if(e>n.maxSkillFileBytes){X.warn(`Skipping skill due to oversized SKILL.md.`,{skill:r,filePath:s,size:e,maxSkillFileBytes:n.maxSkillFileBytes});continue}}catch{continue}let l=te({dir:o,source:e.source});if(d.push(...gt({skills:vt(l),source:e.source,rootDir:t,rootRealPath:a})),d.length>=n.maxSkillsLoadedPerSource)break}return d.length>n.maxSkillsLoadedPerSource?d.slice().sort((e,t)=>e.name.localeCompare(t.name)).slice(0,n.maxSkillsLoadedPerSource):d},o=t?.managedSkillsDir??x.join(r,`skills`),s=x.resolve(e,`skills`),c=t?.bundledSkillsDir??rt(),l=(t?.config?.skills?.load?.extraDirs??[]).map(e=>typeof e==`string`?e.trim():``).filter(Boolean),f=at({workspaceDir:e,config:t?.config}),p=[...l,...f],m=c?i({dir:c,source:`openclaw-bundled`}):[],h=p.flatMap(e=>i({dir:a(e),source:`openclaw-extra`})),g=i({dir:o,source:`openclaw-managed`}),_=i({dir:x.resolve(e,`.agents`,`skills`),source:`agents-skills-project`}),v=i({dir:s,source:`openclaw-workspace`}),y=i({dir:x.resolve(b.homedir(),`.qbotclaw`,`openclaw-qbot`,`skills`),source:`openclaw-qbotclaw`}),C=new Map;for(let e of h)C.set(e.name,e);for(let e of m)C.set(e.name,e);for(let e of g)C.set(e.name,e);for(let e of _)C.set(e.name,e);for(let e of v)C.set(e.name,e);for(let e of y)C.set(e.name,e);return Array.from(C.values()).map(e=>{let t={};try{t=ee(S.readFileSync(e.filePath,`utf-8`))}catch{}return{skill:e,frontmatter:t,metadata:u(t),invocation:d(t)}})}function yt(e){let t=ft(e.config),n=e.skills.length,r=e.skills.slice(0,Math.max(0,t.maxSkillsInPrompt)),i=r,a=n>r.length,o=a?`count`:null,s=e=>C(e).length<=t.maxSkillsPromptChars;if(!s(i)){let e=0,t=i.length;for(;e<t;){let n=Math.ceil((e+t)/2);s(i.slice(0,n))?e=n:t=n-1}i=i.slice(0,e),a=!0,o=`chars`}return{skillsForPrompt:i,truncated:a,truncatedReason:o}}function bt(e,t){let{eligible:n,prompt:r,resolvedSkills:i}=St(e,t),a=o(t?.skillFilter);return{prompt:r,skills:n.map(e=>({name:e.skill.name,primaryEnv:e.metadata?.primaryEnv,requiredEnv:e.metadata?.requires?.env?.slice()})),...a===void 0?{}:{skillFilter:a},resolvedSkills:i,version:t?.snapshotVersion}}function xt(e,t){return St(e,t).prompt}function St(e,t){let n=lt(t?.entries??$(e,t),t?.config,t?.skillFilter,t?.eligibility),r=n.filter(e=>e.invocation?.disableModelInvocation!==!0),i=t?.eligibility?.remote?.note?.trim(),a=r.map(e=>e.skill),{skillsForPrompt:o,truncated:s}=yt({skills:a,config:t?.config});return{eligible:n,prompt:[i,s?`⚠️ Skills truncated: included ${o.length} of ${a.length}. Run \`openclaw skills check\` to audit.`:``,C(ct(o))].filter(Boolean).join(`
|
|
2
2
|
`),resolvedSkills:a}}function Ct(e){let t=e.skillsSnapshot?.prompt?.trim();if(t)return t;if(e.entries&&e.entries.length>0){let t=xt(e.workspaceDir,{entries:e.entries,config:e.config});return t.trim()?t:``}return``}function wt(e,t){return $(e,t)}function Tt(e,t){if(!t.has(e))return t.add(e),e;for(let n=2;n<1e4;n+=1){let r=`${e}-${n}`;if(!t.has(r))return t.add(r),r}let n=1e4,r=`${e}-${n}`;for(;t.has(r);)n+=1,r=`${e}-${n}`;return t.add(r),r}function Et(e){let t=x.basename(e.entry.skill.baseDir).trim();return!t||t===`.`||t===`..`?null:q({filePath:Tt(t,e.usedDirNames),cwd:e.targetSkillsDir,root:e.targetSkillsDir}).resolved}async function Dt(e){let t=a(e.sourceWorkspaceDir),n=a(e.targetWorkspaceDir);t!==n&&await ot(`syncSkills:${n}`,async()=>{let r=x.join(n,`skills`),i=$(t,{config:e.config,managedSkillsDir:e.managedSkillsDir,bundledSkillsDir:e.bundledSkillsDir});await Y.rm(r,{recursive:!0,force:!0}),await Y.mkdir(r,{recursive:!0});let a=new Set;for(let e of i){let t=null;try{t=Et({targetSkillsDir:r,entry:e,usedDirNames:a})}catch(t){let n=t instanceof Error?t.message:JSON.stringify(t);X.warn(`Failed to resolve safe destination for ${e.skill.name}: ${n}`);continue}if(!t){X.warn(`Failed to resolve safe destination for ${e.skill.name}: invalid source directory name`);continue}try{await Y.cp(e.skill.baseDir,t,{recursive:!0,force:!0})}catch(t){let n=t instanceof Error?t.message:JSON.stringify(t);X.warn(`Failed to copy ${e.skill.name} to sandbox: ${n}`)}}})}function Ot(e,t){let n=lt(t?.entries??$(e,t),t?.config,t?.skillFilter,t?.eligibility).filter(e=>e.invocation?.userInvocable!==!1),r=new Set;for(let e of t?.reservedNames??[])r.add(e.toLowerCase());let i=[];for(let e of n){let t=e.skill.name,n=ut(t);n!==t&&Z(`sanitize:${t}:${n}`,`Sanitized skill command name "${t}" to "/${n}".`,{rawName:t,sanitized:`/${n}`});let a=dt(n,r);a!==n&&Z(`dedupe:${t}:${a}`,`De-duplicated skill command name for "${t}" to "/${a}".`,{rawName:t,deduped:`/${a}`}),r.add(a.toLowerCase());let o=e.skill.description?.trim()||t,s=o.length>100?o.slice(0,99)+`…`:o,c=(()=>{let n=(e.frontmatter?.[`command-dispatch`]??e.frontmatter?.command_dispatch??``).trim().toLowerCase();if(!n||n!==`tool`)return;let r=(e.frontmatter?.[`command-tool`]??e.frontmatter?.command_tool??``).trim();if(!r){Z(`dispatch:missingTool:${t}`,`Skill command "/${a}" requested tool dispatch but did not provide command-tool. Ignoring dispatch.`,{skillName:t,command:a});return}let i=(e.frontmatter?.[`command-arg-mode`]??e.frontmatter?.command_arg_mode??``).trim().toLowerCase();return!i||i===`raw`||Z(`dispatch:badArgMode:${t}:${i}`,`Skill command "/${a}" requested tool dispatch but has unknown command-arg-mode. Falling back to raw.`,{skillName:t,command:a,argMode:i}),{kind:`tool`,toolName:r,argMode:`raw`}})();i.push({name:a,skillName:t,description:s,...c?{dispatch:c}:{}})}return i}function kt(e){let t=e?.skills?.install,n=t?.preferBrew??!0,r=(typeof t?.nodeManager==`string`?t.nodeManager.trim():``).toLowerCase();return{preferBrew:n,nodeManager:r===`pnpm`||r===`yarn`||r===`bun`||r===`npm`?r:`npm`}}export{se as C,fe as D,de as E,D as S,T,je as _,Ct as a,ge as b,rt as c,K as d,q as f,be as g,Be as h,wt as i,Ye as l,Pe as m,Ot as n,Dt as o,Xe as p,bt as r,at as s,kt as t,Je as u,j as v,ce as w,A as x,N as y};
|
|
3
|
+
//# sourceMappingURL=skills-CKTicUKS.js.map
|
package/dist/skills-DHbOKEGc.js
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import{H as e,t}from"./subsystem-C5XF2Fy5.js";import{d as n,g as r,t as i,y as a}from"./utils-UGOV_184.js";import{_ as o,a as s,n as c,p as l}from"./openclaw-root-D_0Q6--h.js";import{d as u,f as d,l as f,u as ee}from"./env-overrides-DXJbFrwI.js";import{r as p}from"./scan-paths-C13EseXp.js";import{P as m,l as h}from"./registry-hFAtCSWG.js";import{m as g}from"./frontmatter-BkZkwkVO.js";import{n as _}from"./path-alias-guards-mvyLCPlN.js";import{URL as v,fileURLToPath as y}from"node:url";import b from"node:fs";import x from"node:os";import S from"node:path";import{formatSkillsForPrompt as C,loadSkillsFromDir as te}from"@mariozechner/pi-coding-agent";const ne=new Set([`openclaw-telemetry-galileo-embedded`,`x5use-browser-control`]),w=e=>Array.isArray(e)?e.map(e=>typeof e==`string`?e.trim():``).filter(Boolean):[],re=e=>{if(typeof e!=`string`)return;let t=e.trim();if(t)return t.toLowerCase()===`none`?null:t},ie=e=>{if(!e||typeof e!=`object`||Array.isArray(e))return{};let t={};for(let[n,r]of Object.entries(e)){if(!n.trim())continue;if(!r||typeof r!=`object`||Array.isArray(r)){t[n]={};continue}let e=r,i=e.hooks,a=i&&typeof i==`object`&&!Array.isArray(i)?{allowPromptInjection:i.allowPromptInjection}:void 0,o=a&&typeof a.allowPromptInjection==`boolean`?{allowPromptInjection:a.allowPromptInjection}:void 0;t[n]={enabled:typeof e.enabled==`boolean`?e.enabled:void 0,hooks:o,config:`config`in e?e.config:void 0}}return t},T=e=>{let t=re(e?.slots?.memory);return{enabled:e?.enabled!==!1,allow:w(e?.allow),deny:w(e?.deny),loadPaths:w(e?.load?.paths),slots:{memory:t===void 0?m(`memory`):t},entries:ie(e?.entries)}},E=e=>!!(e?.slots&&Object.prototype.hasOwnProperty.call(e.slots,`memory`)),ae=e=>!!(e?.entries&&Object.prototype.hasOwnProperty.call(e.entries,`memory-core`)),oe=e=>e?!!(typeof e.enabled==`boolean`||Array.isArray(e.allow)&&e.allow.length>0||Array.isArray(e.deny)&&e.deny.length>0||e.load?.paths&&Array.isArray(e.load.paths)&&e.load.paths.length>0||e.slots&&Object.keys(e.slots).length>0||e.entries&&Object.keys(e.entries).length>0):!1;function se(e,t=process.env){if(!t.VITEST)return e;let n=e.plugins;return oe(n)?E(n)||ae(n)?e:{...e,plugins:{...n,slots:{...n?.slots,memory:`none`}}}:{...e,plugins:{...n,enabled:!1,slots:{...n?.slots,memory:`none`}}}}function ce(e,t=process.env){if(!t.VITEST)return!1;let n=e.plugins;return!(E(n)||ae(n))}function le(e,t,n){if(t===`bundled`&&ne.has(e))return{enabled:!0};if(!n.enabled)return{enabled:!1,reason:`plugins disabled`};if(n.deny.includes(e))return{enabled:!1,reason:`blocked by denylist`};let r=n.entries[e];return r?.enabled===!1?{enabled:!1,reason:`disabled in config`}:n.slots.memory===e?{enabled:!0}:n.allow.length>0&&!n.allow.includes(e)?{enabled:!1,reason:`not in allowlist`}:r?.enabled===!0?{enabled:!0}:t===`bundled`?{enabled:!1,reason:`bundled (disabled by default)`}:{enabled:!0}}function ue(e,t){if(!e)return!1;let n=h(t);if(!n)return!1;let r=e.channels?.[n];return!r||typeof r!=`object`||Array.isArray(r)?!1:r.enabled===!0}function de(e){let t=le(e.id,e.origin,e.config);return!t.enabled&&t.reason===`bundled (disabled by default)`&&ue(e.rootConfig,e.id)?{enabled:!0}:t}function fe(e){return e.kind===`memory`?e.slot===null?{enabled:!1,reason:`memory slot disabled`}:typeof e.slot==`string`?e.slot===e.id?{enabled:!0,selected:!0}:{enabled:!1,reason:`memory slot set to "${e.slot}"`}:e.selectedId&&e.selectedId!==e.id?{enabled:!1,reason:`memory slot already filled by "${e.selectedId}"`}:{enabled:!0,selected:!0}:{enabled:!0}}function D(e=process.env){let t=e.OPENCLAW_BUNDLED_PLUGINS_DIR?.trim();if(t)return t;try{let e=S.dirname(process.execPath),t=S.join(e,`extensions`);if(b.existsSync(t))return t}catch{}try{let e=S.dirname(y(import.meta.url));for(let t=0;t<6;t+=1){let t=S.join(e,`extensions`);if(b.existsSync(t))return t;let n=S.dirname(e);if(n===e)break;e=n}}catch{}}const pe=`openclaw.plugin.json`,me=[pe];function O(e){return Array.isArray(e)?e.map(e=>typeof e==`string`?e.trim():``).filter(Boolean):[]}function he(e){for(let t of me){let n=S.join(e,t);if(b.existsSync(n))return n}return S.join(e,pe)}function ge(e,t=!0){let r=he(e),i=s({absolutePath:r,rootPath:e,boundaryLabel:`plugin root`,rejectHardlinks:t});if(!i.ok)return i.reason===`path`?{ok:!1,error:`plugin manifest not found: ${r}`,manifestPath:r}:{ok:!1,error:`unsafe plugin manifest path: ${r} (${i.reason})`,manifestPath:r};let a;try{a=JSON.parse(b.readFileSync(i.fd,`utf-8`))}catch(e){return{ok:!1,error:`failed to parse plugin manifest: ${String(e)}`,manifestPath:r}}finally{b.closeSync(i.fd)}if(!n(a))return{ok:!1,error:`plugin manifest must be an object`,manifestPath:r};let o=typeof a.id==`string`?a.id.trim():``;if(!o)return{ok:!1,error:`plugin manifest requires id`,manifestPath:r};let c=n(a.configSchema)?a.configSchema:null;if(!c)return{ok:!1,error:`plugin manifest requires configSchema`,manifestPath:r};let l=typeof a.kind==`string`?a.kind:void 0,u=typeof a.name==`string`?a.name.trim():void 0,d=typeof a.description==`string`?a.description.trim():void 0,f=typeof a.version==`string`?a.version.trim():void 0,ee=O(a.channels),p=O(a.providers),m=O(a.skills),h;return n(a.uiHints)&&(h=a.uiHints),{ok:!0,manifest:{id:o,configSchema:c,kind:l,channels:ee,providers:p,skills:m,name:u,description:d,version:f,uiHints:h},manifestPath:r}}const _e=[`index.ts`,`index.js`,`index.mjs`,`index.cjs`];function k(e){if(e)return e[g]}function A(e){let t=k(e)?.extensions;if(!Array.isArray(t))return{status:`missing`,entries:[]};let n=t.map(e=>typeof e==`string`?e.trim():``).filter(Boolean);return n.length===0?{status:`empty`,entries:[]}:{status:`ok`,entries:n}}function j(e,t){return l(e,t)}function M(e,t){let n=t?.get(e);if(n)return n;try{let n=b.realpathSync(e);return t?.set(e,n),n}catch{return null}}function N(e){try{return b.statSync(e)}catch{return null}}function ve(e){return(e&511).toString(8).padStart(3,`0`)}const ye=new Set([`.ts`,`.js`,`.mts`,`.cts`,`.mjs`,`.cjs`]),P=new Map,F=1e3;function be(){P.clear()}function I(e){let t=e.OPENCLAW_PLUGIN_DISCOVERY_CACHE_MS?.trim();if(t===``||t===`0`)return 0;if(!t)return F;let n=Number.parseInt(t,10);return Number.isFinite(n)?Math.max(0,n):F}function xe(e){return e.OPENCLAW_DISABLE_PLUGIN_DISCOVERY_CACHE?.trim()?!1:I(e)>0}function Se(e){let t=e.workspaceDir?a(e.workspaceDir):``,n=S.join(r(e.env),`extensions`),i=D(e.env)??``,o=(e.extraPaths??[]).filter(e=>typeof e==`string`).map(e=>e.trim()).filter(Boolean).map(e=>a(e)).toSorted();return`${t}::${e.ownershipUid??L()??`none`}::${n}::${i}::${JSON.stringify(o)}`}function L(e){return e===void 0?process.platform===`win32`||typeof process.getuid!=`function`?null:process.getuid():e}function Ce(e){let t=M(e.source),n=M(e.rootDir);return!t||!n||j(n,t)?null:{reason:`source_escapes_root`,sourcePath:e.source,rootPath:e.rootDir,targetPath:e.source,sourceRealPath:t,rootRealPath:n}}function we(e){if(process.platform===`win32`)return null;let t=[e.rootDir,e.source],n=new Set;for(let r of t){let t=S.resolve(r);if(n.has(t))continue;n.add(t);let i=N(r);if(!i)return{reason:`path_stat_failed`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r};let a=i.mode&511;if(a&2&&e.origin===`bundled`)try{b.chmodSync(r,a&-19);let t=N(r);if(!t)return{reason:`path_stat_failed`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r};i=t,a=t.mode&511}catch{}if(a&2)return{reason:`path_world_writable`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r,modeBits:a};if(e.origin!==`bundled`&&e.uid!==null&&typeof i.uid==`number`&&i.uid!==e.uid&&i.uid!==0)return{reason:`path_suspicious_ownership`,sourcePath:e.source,rootPath:e.rootDir,targetPath:r,foundUid:i.uid,expectedUid:e.uid}}return null}function Te(e){return Ce({source:e.source,rootDir:e.rootDir})||we({source:e.source,rootDir:e.rootDir,origin:e.origin,uid:L(e.ownershipUid)})}function Ee(e){return e.reason===`source_escapes_root`?`blocked plugin candidate: source escapes plugin root (${e.sourcePath} -> ${e.sourceRealPath}; root=${e.rootRealPath})`:e.reason===`path_stat_failed`?`blocked plugin candidate: cannot stat path (${e.targetPath})`:e.reason===`path_world_writable`?`blocked plugin candidate: world-writable path (${e.targetPath}, mode=${ve(e.modeBits??0)})`:`blocked plugin candidate: suspicious ownership (${e.targetPath}, uid=${e.foundUid}, expected uid=${e.expectedUid} or root)`}function De(e){let t=Te({source:e.source,rootDir:e.rootDir,origin:e.origin,ownershipUid:e.ownershipUid});return t?(e.diagnostics.push({level:`warn`,source:t.targetPath,message:Ee(t)}),!0):!1}function R(e){let t=S.extname(e);return ye.has(t)?!e.endsWith(`.d.ts`):!1}function Oe(e){let t=e.trim().toLowerCase();return!!(!t||t.endsWith(`.bak`)||t.includes(`.backup-`)||t.includes(`.disabled`))}function z(e,t=!0){let n=s({absolutePath:S.join(e,`package.json`),rootPath:e,boundaryLabel:`plugin package directory`,rejectHardlinks:t});if(!n.ok)return null;try{let e=b.readFileSync(n.fd,`utf-8`);return JSON.parse(e)}catch{return null}finally{b.closeSync(n.fd)}}function B(e){let t=S.basename(e.filePath,S.extname(e.filePath)),n=e.packageName?.trim();if(!n)return t;let r=n.includes(`/`)?n.split(`/`).pop()??n:n;return e.hasMultipleExtensions?`${r}/${t}`:r}function V(e){let t=S.resolve(e.source);if(e.seen.has(t))return;let n=M(e.rootDir)??S.resolve(e.rootDir);if(De({source:t,rootDir:n,origin:e.origin,diagnostics:e.diagnostics,ownershipUid:e.ownershipUid}))return;e.seen.add(t);let r=e.manifest??null;e.candidates.push({idHint:e.idHint,source:t,rootDir:n,origin:e.origin,workspaceDir:e.workspaceDir,packageName:r?.name?.trim()||void 0,packageVersion:r?.version?.trim()||void 0,packageDescription:r?.description?.trim()||void 0,packageDir:e.packageDir,packageManifest:k(r??void 0)})}function ke(e){let t=s({absolutePath:S.resolve(e.packageDir,e.entryPath),rootPath:e.packageDir,boundaryLabel:`plugin package directory`,rejectHardlinks:e.rejectHardlinks??!0});if(!t.ok)return e.diagnostics.push({level:`error`,message:`extension entry escapes package directory: ${e.entryPath}`,source:e.sourceLabel}),null;let n=t.path;return b.closeSync(t.fd),n}function H(e){if(!b.existsSync(e.dir))return;let t=[];try{t=b.readdirSync(e.dir,{withFileTypes:!0})}catch(t){e.diagnostics.push({level:`warn`,message:`failed to read extensions dir: ${e.dir} (${String(t)})`,source:e.dir});return}for(let n of t){let t=S.join(e.dir,n.name);if(n.isFile()){if(!R(t))continue;V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:S.basename(n.name,S.extname(n.name)),source:t,rootDir:S.dirname(t),origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir})}if(!n.isDirectory()||Oe(n.name))continue;let r=e.origin!==`bundled`,i=z(t,r),a=A(i??void 0),o=a.status===`ok`?a.entries:[];if(o.length>0){for(let n of o){let a=ke({packageDir:t,entryPath:n,sourceLabel:t,diagnostics:e.diagnostics,rejectHardlinks:r});a&&V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:B({filePath:a,packageName:i?.name,hasMultipleExtensions:o.length>1}),source:a,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:i,packageDir:t})}continue}let s=[..._e].map(e=>S.join(t,e)).find(e=>b.existsSync(e));s&&R(s)&&V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:n.name,source:s,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:i,packageDir:t})}}function Ae(e){let t=a(e.rawPath);if(!b.existsSync(t)){e.diagnostics.push({level:`error`,message:`plugin path not found: ${t}`,source:t});return}let n=b.statSync(t);if(n.isFile()){if(!R(t)){e.diagnostics.push({level:`error`,message:`plugin path is not a supported file: ${t}`,source:t});return}V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:S.basename(t,S.extname(t)),source:t,rootDir:S.dirname(t),origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir});return}if(n.isDirectory()){let n=e.origin!==`bundled`,r=z(t,n),i=A(r??void 0),a=i.status===`ok`?i.entries:[];if(a.length>0){for(let i of a){let o=ke({packageDir:t,entryPath:i,sourceLabel:t,diagnostics:e.diagnostics,rejectHardlinks:n});o&&V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:B({filePath:o,packageName:r?.name,hasMultipleExtensions:a.length>1}),source:o,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:r,packageDir:t})}return}let o=[..._e].map(e=>S.join(t,e)).find(e=>b.existsSync(e));if(o&&R(o)){V({candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen,idHint:S.basename(t),source:o,rootDir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,manifest:r,packageDir:t});return}H({dir:t,origin:e.origin,ownershipUid:e.ownershipUid,workspaceDir:e.workspaceDir,candidates:e.candidates,diagnostics:e.diagnostics,seen:e.seen});return}}function je(e){let t=e.env??process.env,n=e.cache!==!1&&xe(t),i=Se({workspaceDir:e.workspaceDir,extraPaths:e.extraPaths,ownershipUid:e.ownershipUid,env:t});if(n){let e=P.get(i);if(e&&e.expiresAt>Date.now())return e.result}let o=[],s=[],c=new Set,l=e.workspaceDir?.trim(),u=e.extraPaths??[];for(let t of u){if(typeof t!=`string`)continue;let n=t.trim();n&&Ae({rawPath:n,origin:`config`,ownershipUid:e.ownershipUid,workspaceDir:l?.trim()||void 0,candidates:o,diagnostics:s,seen:c})}if(l){let t=a(l),n=[S.join(t,`.openclaw`,`extensions`)];for(let r of n)H({dir:r,origin:`workspace`,ownershipUid:e.ownershipUid,workspaceDir:t,candidates:o,diagnostics:s,seen:c})}let d=D(t);d&&H({dir:d,origin:`bundled`,ownershipUid:e.ownershipUid,candidates:o,diagnostics:s,seen:c}),H({dir:S.join(r(t),`extensions`),origin:`global`,ownershipUid:e.ownershipUid,candidates:o,diagnostics:s,seen:c});let f={candidates:o,diagnostics:s};if(n){let e=I(t);e>0&&P.set(i,{expiresAt:Date.now()+e,result:f})}return f}const Me={config:0,workspace:1,global:2,bundled:3},U=new Map,Ne=1e3;function Pe(){U.clear()}function Fe(e){let t=e.OPENCLAW_PLUGIN_MANIFEST_CACHE_MS?.trim();if(t===``||t===`0`)return 0;if(!t)return Ne;let n=Number.parseInt(t,10);return Number.isFinite(n)?Math.max(0,n):Ne}function Ie(e){return e.OPENCLAW_DISABLE_PLUGIN_MANIFEST_CACHE?.trim()?!1:Fe(e)>0}function Le(e){let t=e.workspaceDir?a(e.workspaceDir):``,n=S.join(r(e.env),`extensions`),i=D(e.env)??``,o=e.plugins.loadPaths.map(e=>a(e)).map(e=>e.trim()).filter(Boolean).toSorted();return`${t}::${n}::${i}::${JSON.stringify(o)}`}function Re(e){try{return b.statSync(e).mtimeMs}catch{return null}}function W(e){return e?.trim()||void 0}function ze(e){return{id:e.manifest.id,name:W(e.manifest.name)??e.candidate.packageName,description:W(e.manifest.description)??e.candidate.packageDescription,version:W(e.manifest.version)??e.candidate.packageVersion,kind:e.manifest.kind,channels:e.manifest.channels??[],providers:e.manifest.providers??[],skills:e.manifest.skills??[],origin:e.candidate.origin,workspaceDir:e.candidate.workspaceDir,rootDir:e.candidate.rootDir,source:e.candidate.source,manifestPath:e.manifestPath,schemaCacheKey:e.schemaCacheKey,configSchema:e.configSchema,configUiHints:e.manifest.uiHints}}function Be(e){let t=T((e.config??{}).plugins),n=e.env??process.env,r=Le({workspaceDir:e.workspaceDir,plugins:t,env:n}),i=e.cache!==!1&&Ie(n);if(i){let e=U.get(r);if(e&&e.expiresAt>Date.now())return e.registry}let a=e.candidates?{candidates:e.candidates,diagnostics:e.diagnostics??[]}:je({workspaceDir:e.workspaceDir,extraPaths:t.loadPaths,env:n}),o=[...a.diagnostics],s=a.candidates,c=[],l=new Map,u=new Map;for(let e of s){let t=e.origin!==`bundled`,n=ge(e.rootDir,t);if(!n.ok){o.push({level:`error`,message:n.error,source:n.manifestPath});continue}let r=n.manifest;e.idHint&&e.idHint!==r.id&&o.push({level:`warn`,pluginId:r.id,source:e.source,message:`plugin id mismatch (manifest uses "${r.id}", entry hints "${e.idHint}")`});let i=r.configSchema,a=(()=>{if(!i)return;let e=Re(n.manifestPath);return e?`${n.manifestPath}:${e}`:n.manifestPath})(),s=l.get(r.id);if(s){let t=s.candidate.rootDir===e.rootDir;if((()=>{if(t)return!0;let n=M(s.candidate.rootDir,u),r=M(e.rootDir,u);return!!(n&&r&&n===r)})()){Me[e.origin]<Me[s.candidate.origin]&&(c[s.recordIndex]=ze({manifest:r,candidate:e,manifestPath:n.manifestPath,schemaCacheKey:a,configSchema:i}),l.set(r.id,{candidate:e,recordIndex:s.recordIndex}));continue}o.push({level:`warn`,pluginId:r.id,source:e.source,message:`duplicate plugin id detected; later plugin may be overridden (${e.source})`})}else l.set(r.id,{candidate:e,recordIndex:c.length});c.push(ze({manifest:r,candidate:e,manifestPath:n.manifestPath,schemaCacheKey:a,configSchema:i}))}let d={plugins:c,diagnostics:o};if(i){let e=Fe(n);e>0&&U.set(r,{expiresAt:Date.now()+e,registry:d})}return d}const Ve=/[\u00A0\u2000-\u200A\u202F\u205F\u3000]/g,He=/^https?:\/\//i,Ue=/^data:/i,G=`/workspace`;function We(e){return e.replace(Ve,` `)}function Ge(e){return e.startsWith(`@`)?e.slice(1):e}function Ke(e){let t=We(Ge(e));return t===`~`?x.homedir():t.startsWith(`~/`)?x.homedir()+t.slice(1):t}function qe(e,t){let n=Ke(e);return S.isAbsolute(n)?n:S.resolve(t,n)}function K(e,t){return qe(e,t)}function q(e){let t=K(e.filePath,e.cwd),n=S.resolve(e.root),r=S.relative(n,t);if(!r||r===``)return{resolved:t,relative:``};if(r.startsWith(`..`)||S.isAbsolute(r))throw Error(`Path escapes sandbox root (${tt(n)}): ${e.filePath}`);return{resolved:t,relative:r}}async function Je(e){let t=q(e),n={allowFinalSymlinkForUnlink:e.allowFinalSymlinkForUnlink,allowFinalHardlinkForUnlink:e.allowFinalHardlinkForUnlink};return await _({absolutePath:t.resolved,rootPath:e.root,boundaryLabel:`sandbox root`,policy:n}),t}function Ye(e){let t=e.trim();if(Ue.test(t))throw Error(`data: URLs are not supported for media. Use buffer instead.`)}async function Xe(e){let t=e.media.trim();if(!t||He.test(t))return t;let n=t;if(/^file:\/\//i.test(n)){let r=Ze({fileUrl:n,sandboxRoot:e.sandboxRoot});if(r)n=r;else try{n=y(n)}catch{throw Error(`Invalid file:// URL for sandboxed media: ${t}`)}}let r=Qe({candidate:n,sandboxRoot:e.sandboxRoot});return r&&(n=r),await $e({candidate:n,sandboxRoot:e.sandboxRoot})||(await Je({filePath:n,cwd:e.sandboxRoot,root:e.sandboxRoot})).resolved}function Ze(e){let t;try{t=new v(e.fileUrl)}catch{return}if(t.protocol!==`file:`)return;let n=decodeURIComponent(t.pathname).replace(/\\/g,`/`);if(!(n!==G&&!n.startsWith(`${G}/`)))return Qe({candidate:n,sandboxRoot:e.sandboxRoot})}function Qe(e){let t=e.candidate.replace(/\\/g,`/`);if(t===G)return S.resolve(e.sandboxRoot);let n=`${G}/`;if(!t.startsWith(n))return;let r=t.slice(n.length);return r?S.resolve(e.sandboxRoot,...r.split(`/`).filter(Boolean)):S.resolve(e.sandboxRoot)}async function $e(t){if(!S.isAbsolute(Ke(t.candidate)))return;let n=S.resolve(K(t.candidate,t.sandboxRoot)),r=S.resolve(e());if(l(r,n))return await et({filePath:n,tmpRoot:r}),n}async function et(e){await _({absolutePath:e.filePath,rootPath:e.tmpRoot,boundaryLabel:`tmp root`})}function tt(e){return e.startsWith(x.homedir())?`~${e.slice(x.homedir().length)}`:e}function nt(e){try{let t=b.readdirSync(e,{withFileTypes:!0});for(let n of t){if(n.name.startsWith(`.`))continue;let t=S.join(e,n.name);if(n.isFile()&&n.name.endsWith(`.md`)||n.isDirectory()&&b.existsSync(S.join(t,`SKILL.md`)))return!0}}catch{return!1}return!1}function rt(e={}){let t=process.env.OPENCLAW_BUNDLED_SKILLS_DIR?.trim();if(t)return t;try{let t=e.execPath??process.execPath,n=S.dirname(t),r=S.join(n,`skills`);if(b.existsSync(r))return r}catch{}try{let t=e.moduleUrl??import.meta.url,n=S.dirname(y(t)),r=c({argv1:e.argv1??process.argv[1],moduleUrl:t,cwd:e.cwd??process.cwd()});if(r){let e=S.join(r,`skills`);if(nt(e))return e}let i=n;for(let e=0;e<6;e+=1){let e=S.join(i,`skills`);if(nt(e))return e;let t=S.dirname(i);if(t===i)break;i=t}}catch{}}const it=t(`skills`);function at(e){let t=(e.workspaceDir??``).trim();if(!t)return[];let n=Be({workspaceDir:t,config:e.config});if(n.plugins.length===0)return[];let r=T(e.config?.plugins),i=e.config?.acp?.enabled!==!1,a=r.slots.memory,o=null,s=new Set,c=[];for(let t of n.plugins){if(!t.skills||t.skills.length===0||!de({id:t.id,origin:t.origin,config:r,rootConfig:e.config}).enabled||!i&&t.id===`acpx`)continue;let n=fe({id:t.id,kind:t.kind,slot:a,selectedId:o});if(n.enabled){n.selected&&t.kind===`memory`&&(o=t.id);for(let e of t.skills){let n=e.trim();if(!n)continue;let r=S.resolve(t.rootDir,n);if(!b.existsSync(r)){it.warn(`plugin skill path not found (${t.id}): ${r}`);continue}if(!p(t.rootDir,r,{requireRealpath:!0})){it.warn(`plugin skill path escapes plugin root (${t.id}): ${r}`);continue}s.has(r)||(s.add(r),c.push(r))}}}return c}const J=new Map;async function ot(e,t){let n=(J.get(e)??Promise.resolve()).then(t,t);J.set(e,n);try{return await n}finally{J.get(e)===n&&J.delete(e)}}const Y=b.promises,X=t(`skills`),st=new Set;function ct(e){let t=x.homedir();if(!t)return e;let n=t.endsWith(S.sep)?t:t+S.sep;return e.map(e=>({...e,filePath:e.filePath.startsWith(n)?`~/`+e.filePath.slice(n.length):e.filePath}))}function Z(e,t,n){st.has(e)||(st.add(e),X.debug(t,n))}function lt(e,t,n,r){let i=e.filter(e=>f({entry:e,config:t,eligibility:r}));if(n!==void 0){let e=o(n)??[],t=e.length>0?e.join(`, `):`(none)`;X.debug(`Applying skill filter: ${t}`),i=e.length>0?i.filter(t=>e.includes(t.skill.name)):[],X.debug(`After skill filter: ${i.map(e=>e.skill.name).join(`, `)||`(none)`}`)}return i}function ut(e){return e.toLowerCase().replace(/[^a-z0-9_]+/g,`_`).replace(/_+/g,`_`).replace(/^_+|_+$/g,``).slice(0,32)||`skill`}function dt(e,t){let n=e.toLowerCase();if(!t.has(n))return e;for(let n=2;n<1e3;n+=1){let r=`_${n}`,i=Math.max(1,32-r.length),a=`${e.slice(0,i)}${r}`,o=a.toLowerCase();if(!t.has(o))return a}return`${e.slice(0,30)}_x`}function ft(e){let t=e?.skills?.limits;return{maxCandidatesPerRoot:t?.maxCandidatesPerRoot??300,maxSkillsLoadedPerSource:t?.maxSkillsLoadedPerSource??200,maxSkillsInPrompt:t?.maxSkillsInPrompt??150,maxSkillsPromptChars:t?.maxSkillsPromptChars??3e4,maxSkillFileBytes:t?.maxSkillFileBytes??256e3}}function pt(e){try{let t=b.readdirSync(e,{withFileTypes:!0}),n=[];for(let r of t){if(r.name.startsWith(`.`)||r.name===`node_modules`)continue;let t=S.join(e,r.name);if(r.isDirectory()){n.push(r.name);continue}if(r.isSymbolicLink())try{b.statSync(t).isDirectory()&&n.push(r.name)}catch{}}return n}catch{return[]}}function mt(e){try{return b.realpathSync(e)}catch{return null}}function ht(e){X.warn(`Skipping skill path that resolves outside its configured root.`,{source:e.source,rootDir:e.rootDir,path:e.candidatePath,realPath:e.candidateRealPath})}function Q(e){let t=mt(e.candidatePath);return t?l(e.rootRealPath,t)?t:(ht({source:e.source,rootDir:e.rootDir,candidatePath:S.resolve(e.candidatePath),candidateRealPath:t}),null):null}function gt(e){return e.skills.filter(t=>Q({source:e.source,rootDir:e.rootDir,rootRealPath:e.rootRealPath,candidatePath:t.baseDir})?!!Q({source:e.source,rootDir:e.rootDir,rootRealPath:e.rootRealPath,candidatePath:t.filePath}):!1)}function _t(e,t){let n=S.join(e,`skills`);try{if(!b.existsSync(n)||!b.statSync(n).isDirectory())return{baseDir:e}}catch{return{baseDir:e}}let r=pt(n),i=Math.max(0,t?.maxEntriesToScan??100),a=i===0?[]:r.slice(0,Math.min(r.length,i));for(let e of a){let t=S.join(n,e,`SKILL.md`);if(b.existsSync(t))return{baseDir:n,note:`Detected nested skills root at ${n}`}}return{baseDir:e}}function vt(e){if(Array.isArray(e))return e;if(e&&typeof e==`object`&&`skills`in e){let t=e.skills;if(Array.isArray(t))return t}return[]}function $(e,t){let n=ft(t?.config),r=e=>{let t=S.resolve(e.dir),r=mt(t)??t,i=_t(e.dir,{maxEntriesToScan:n.maxCandidatesPerRoot}).baseDir,a=Q({source:e.source,rootDir:t,rootRealPath:r,candidatePath:i});if(!a)return[];let o=S.join(i,`SKILL.md`);if(b.existsSync(o)){let r=Q({source:e.source,rootDir:t,rootRealPath:a,candidatePath:o});if(!r)return[];try{let e=b.statSync(r).size;if(e>n.maxSkillFileBytes)return X.warn(`Skipping skills root due to oversized SKILL.md.`,{dir:i,filePath:o,size:e,maxSkillFileBytes:n.maxSkillFileBytes}),[]}catch{return[]}return gt({skills:vt(te({dir:i,source:e.source})),source:e.source,rootDir:t,rootRealPath:a})}let s=pt(i),c=s.length>n.maxCandidatesPerRoot,l=Math.max(0,n.maxSkillsLoadedPerSource),u=s.slice().sort().slice(0,l);c?X.warn(`Skills root looks suspiciously large, truncating discovery.`,{dir:e.dir,baseDir:i,childDirCount:s.length,maxCandidatesPerRoot:n.maxCandidatesPerRoot,maxSkillsLoadedPerSource:n.maxSkillsLoadedPerSource}):s.length>l&&X.warn(`Skills root has many entries, truncating discovery.`,{dir:e.dir,baseDir:i,childDirCount:s.length,maxSkillsLoadedPerSource:n.maxSkillsLoadedPerSource});let d=[];for(let r of u){let o=S.join(i,r);if(!Q({source:e.source,rootDir:t,rootRealPath:a,candidatePath:o}))continue;let s=S.join(o,`SKILL.md`);if(!b.existsSync(s))continue;let c=Q({source:e.source,rootDir:t,rootRealPath:a,candidatePath:s});if(!c)continue;try{let e=b.statSync(c).size;if(e>n.maxSkillFileBytes){X.warn(`Skipping skill due to oversized SKILL.md.`,{skill:r,filePath:s,size:e,maxSkillFileBytes:n.maxSkillFileBytes});continue}}catch{continue}let l=te({dir:o,source:e.source});if(d.push(...gt({skills:vt(l),source:e.source,rootDir:t,rootRealPath:a})),d.length>=n.maxSkillsLoadedPerSource)break}return d.length>n.maxSkillsLoadedPerSource?d.slice().sort((e,t)=>e.name.localeCompare(t.name)).slice(0,n.maxSkillsLoadedPerSource):d},o=t?.managedSkillsDir??S.join(i,`skills`),s=S.resolve(e,`skills`),c=t?.bundledSkillsDir??rt(),l=(t?.config?.skills?.load?.extraDirs??[]).map(e=>typeof e==`string`?e.trim():``).filter(Boolean),f=at({workspaceDir:e,config:t?.config}),p=[...l,...f],m=c?r({dir:c,source:`openclaw-bundled`}):[],h=p.flatMap(e=>r({dir:a(e),source:`openclaw-extra`})),g=r({dir:o,source:`openclaw-managed`}),_=r({dir:S.resolve(e,`.agents`,`skills`),source:`agents-skills-project`}),v=r({dir:s,source:`openclaw-workspace`}),y=r({dir:S.resolve(x.homedir(),`.qbotclaw`,`openclaw-qbot`,`skills`),source:`openclaw-qbotclaw`}),C=new Map;for(let e of h)C.set(e.name,e);for(let e of m)C.set(e.name,e);for(let e of g)C.set(e.name,e);for(let e of _)C.set(e.name,e);for(let e of v)C.set(e.name,e);for(let e of y)C.set(e.name,e);return Array.from(C.values()).map(e=>{let t={};try{t=ee(b.readFileSync(e.filePath,`utf-8`))}catch{}return{skill:e,frontmatter:t,metadata:u(t),invocation:d(t)}})}function yt(e){let t=ft(e.config),n=e.skills.length,r=e.skills.slice(0,Math.max(0,t.maxSkillsInPrompt)),i=r,a=n>r.length,o=a?`count`:null,s=e=>C(e).length<=t.maxSkillsPromptChars;if(!s(i)){let e=0,t=i.length;for(;e<t;){let n=Math.ceil((e+t)/2);s(i.slice(0,n))?e=n:t=n-1}i=i.slice(0,e),a=!0,o=`chars`}return{skillsForPrompt:i,truncated:a,truncatedReason:o}}function bt(e,t){let{eligible:n,prompt:r,resolvedSkills:i}=St(e,t),a=o(t?.skillFilter);return{prompt:r,skills:n.map(e=>({name:e.skill.name,primaryEnv:e.metadata?.primaryEnv,requiredEnv:e.metadata?.requires?.env?.slice()})),...a===void 0?{}:{skillFilter:a},resolvedSkills:i,version:t?.snapshotVersion}}function xt(e,t){return St(e,t).prompt}function St(e,t){let n=lt(t?.entries??$(e,t),t?.config,t?.skillFilter,t?.eligibility),r=n.filter(e=>e.invocation?.disableModelInvocation!==!0),i=t?.eligibility?.remote?.note?.trim(),a=r.map(e=>e.skill),{skillsForPrompt:o,truncated:s}=yt({skills:a,config:t?.config});return{eligible:n,prompt:[i,s?`⚠️ Skills truncated: included ${o.length} of ${a.length}. Run \`openclaw skills check\` to audit.`:``,C(ct(o))].filter(Boolean).join(`
|
|
2
2
|
`),resolvedSkills:a}}function Ct(e){let t=e.skillsSnapshot?.prompt?.trim();if(t)return t;if(e.entries&&e.entries.length>0){let t=xt(e.workspaceDir,{entries:e.entries,config:e.config});return t.trim()?t:``}return``}function wt(e,t){return $(e,t)}function Tt(e,t){if(!t.has(e))return t.add(e),e;for(let n=2;n<1e4;n+=1){let r=`${e}-${n}`;if(!t.has(r))return t.add(r),r}let n=1e4,r=`${e}-${n}`;for(;t.has(r);)n+=1,r=`${e}-${n}`;return t.add(r),r}function Et(e){let t=S.basename(e.entry.skill.baseDir).trim();return!t||t===`.`||t===`..`?null:q({filePath:Tt(t,e.usedDirNames),cwd:e.targetSkillsDir,root:e.targetSkillsDir}).resolved}async function Dt(e){let t=a(e.sourceWorkspaceDir),n=a(e.targetWorkspaceDir);t!==n&&await ot(`syncSkills:${n}`,async()=>{let r=S.join(n,`skills`),i=$(t,{config:e.config,managedSkillsDir:e.managedSkillsDir,bundledSkillsDir:e.bundledSkillsDir});await Y.rm(r,{recursive:!0,force:!0}),await Y.mkdir(r,{recursive:!0});let a=new Set;for(let e of i){let t=null;try{t=Et({targetSkillsDir:r,entry:e,usedDirNames:a})}catch(t){let n=t instanceof Error?t.message:JSON.stringify(t);X.warn(`Failed to resolve safe destination for ${e.skill.name}: ${n}`);continue}if(!t){X.warn(`Failed to resolve safe destination for ${e.skill.name}: invalid source directory name`);continue}try{await Y.cp(e.skill.baseDir,t,{recursive:!0,force:!0})}catch(t){let n=t instanceof Error?t.message:JSON.stringify(t);X.warn(`Failed to copy ${e.skill.name} to sandbox: ${n}`)}}})}function Ot(e,t){let n=lt(t?.entries??$(e,t),t?.config,t?.skillFilter,t?.eligibility).filter(e=>e.invocation?.userInvocable!==!1),r=new Set;for(let e of t?.reservedNames??[])r.add(e.toLowerCase());let i=[];for(let e of n){let t=e.skill.name,n=ut(t);n!==t&&Z(`sanitize:${t}:${n}`,`Sanitized skill command name "${t}" to "/${n}".`,{rawName:t,sanitized:`/${n}`});let a=dt(n,r);a!==n&&Z(`dedupe:${t}:${a}`,`De-duplicated skill command name for "${t}" to "/${a}".`,{rawName:t,deduped:`/${a}`}),r.add(a.toLowerCase());let o=e.skill.description?.trim()||t,s=o.length>100?o.slice(0,99)+`…`:o,c=(()=>{let n=(e.frontmatter?.[`command-dispatch`]??e.frontmatter?.command_dispatch??``).trim().toLowerCase();if(!n||n!==`tool`)return;let r=(e.frontmatter?.[`command-tool`]??e.frontmatter?.command_tool??``).trim();if(!r){Z(`dispatch:missingTool:${t}`,`Skill command "/${a}" requested tool dispatch but did not provide command-tool. Ignoring dispatch.`,{skillName:t,command:a});return}let i=(e.frontmatter?.[`command-arg-mode`]??e.frontmatter?.command_arg_mode??``).trim().toLowerCase();return!i||i===`raw`||Z(`dispatch:badArgMode:${t}:${i}`,`Skill command "/${a}" requested tool dispatch but has unknown command-arg-mode. Falling back to raw.`,{skillName:t,command:a,argMode:i}),{kind:`tool`,toolName:r,argMode:`raw`}})();i.push({name:a,skillName:t,description:s,...c?{dispatch:c}:{}})}return i}function kt(e){let t=e?.skills?.install,n=t?.preferBrew??!0,r=(typeof t?.nodeManager==`string`?t.nodeManager.trim():``).toLowerCase();return{preferBrew:n,nodeManager:r===`pnpm`||r===`yarn`||r===`bun`||r===`npm`?r:`npm`}}export{se as C,fe as D,de as E,D as S,T,je as _,Ct as a,ge as b,rt as c,K as d,q as f,be as g,Be as h,wt as i,Ye as l,Pe as m,Ot as n,Dt as o,Xe as p,bt as r,at as s,kt as t,Je as u,j as v,ce as w,A as x,N as y};
|
|
3
|
+
//# sourceMappingURL=skills-DHbOKEGc.js.map
|
|
@@ -2,3 +2,4 @@ import"./paths-B4IRk3wi.js";import{A as e,p as t,u as n}from"./subsystem-C5XF2Fy
|
|
|
2
2
|
`),n.json)}function x(t,n,i){let a=t.skills.find(e=>e.name===n||e.skillKey===n);if(!a)return i.json?JSON.stringify({error:`not found`,skill:n},null,2):d(`Skill "${n}" not found. Run \`${s(`openclaw skills list`)}\` to see available skills.`,i.json);if(i.json)return JSON.stringify(_(a),null,2);let o=[],c=p(a.emoji),l=a.eligible?e.success(`✓ Ready`):a.disabled?e.warn(`⏸ Disabled`):a.blockedByAllowlist?e.warn(`🚫 Blocked by allowlist`):e.error(`✗ Missing requirements`);if(o.push(`${c} ${e.heading(a.name)} ${l}`),o.push(``),o.push(a.description),o.push(``),o.push(e.heading(`Details:`)),o.push(`${e.muted(` Source:`)} ${a.source}`),o.push(`${e.muted(` Path:`)} ${r(a.filePath)}`),a.homepage&&o.push(`${e.muted(` Homepage:`)} ${a.homepage}`),a.primaryEnv&&o.push(`${e.muted(` Primary env:`)} ${a.primaryEnv}`),a.requirements.bins.length>0||a.requirements.anyBins.length>0||a.requirements.env.length>0||a.requirements.config.length>0||a.requirements.os.length>0){if(o.push(``),o.push(e.heading(`Requirements:`)),a.requirements.bins.length>0){let t=a.requirements.bins.map(t=>a.missing.bins.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` Binaries:`)} ${t.join(`, `)}`)}if(a.requirements.anyBins.length>0){let t=a.missing.anyBins.length>0,n=a.requirements.anyBins.map(n=>t?e.error(`✗ ${n}`):e.success(`✓ ${n}`));o.push(`${e.muted(` Any binaries:`)} ${n.join(`, `)}`)}if(a.requirements.env.length>0){let t=a.requirements.env.map(t=>a.missing.env.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` Environment:`)} ${t.join(`, `)}`)}if(a.requirements.config.length>0){let t=a.requirements.config.map(t=>a.missing.config.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` Config:`)} ${t.join(`, `)}`)}if(a.requirements.os.length>0){let t=a.requirements.os.map(t=>a.missing.os.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` OS:`)} ${t.join(`, `)}`)}}if(a.install.length>0&&!a.eligible){o.push(``),o.push(e.heading(`Install options:`));for(let t of a.install)o.push(` ${e.warn(`→`)} ${t.label}`)}return d(o.join(`
|
|
3
3
|
`),i.json)}function S(t,n){let r=t.skills.filter(e=>e.eligible),i=t.skills.filter(e=>e.disabled),a=t.skills.filter(e=>e.blockedByAllowlist&&!e.disabled),o=t.skills.filter(e=>!e.eligible&&!e.disabled&&!e.blockedByAllowlist);if(n.json)return JSON.stringify(_({summary:{total:t.skills.length,eligible:r.length,disabled:i.length,blocked:a.length,missingRequirements:o.length},eligible:r.map(e=>e.name),disabled:i.map(e=>e.name),blocked:a.map(e=>e.name),missingRequirements:o.map(e=>({name:e.name,missing:e.missing,install:e.install}))}),null,2);let s=[];if(s.push(e.heading(`Skills Status Check`)),s.push(``),s.push(`${e.muted(`Total:`)} ${t.skills.length}`),s.push(`${e.success(`✓`)} ${e.muted(`Eligible:`)} ${r.length}`),s.push(`${e.warn(`⏸`)} ${e.muted(`Disabled:`)} ${i.length}`),s.push(`${e.warn(`🚫`)} ${e.muted(`Blocked by allowlist:`)} ${a.length}`),s.push(`${e.error(`✗`)} ${e.muted(`Missing requirements:`)} ${o.length}`),r.length>0){s.push(``),s.push(e.heading(`Ready to use:`));for(let e of r){let t=p(e.emoji);s.push(` ${t} ${e.name}`)}}if(o.length>0){s.push(``),s.push(e.heading(`Missing requirements:`));for(let t of o){let n=p(t.emoji),r=y(t);s.push(` ${n} ${t.name} ${e.muted(`(${r})`)}`)}}return d(s.join(`
|
|
4
4
|
`),n.json)}async function C(){let e=i(),t=a(e,o(e)),{buildWorkspaceSkillStatus:n}=await import(`./skills-status-BWIugRCz.js`).then(e=>e.n);return n(t,{config:e})}async function w(e){try{let n=await C();t.log(e(n))}catch(e){t.error(String(e)),t.exit(1)}}function T(t){let n=t.command(`skills`).description(`List and inspect available skills`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${c(`/cli/skills`,`docs.openclaw.ai/cli/skills`)}\n`);n.command(`list`).description(`List all available skills`).option(`--json`,`Output as JSON`,!1).option(`--eligible`,`Show only eligible (ready to use) skills`,!1).option(`-v, --verbose`,`Show more details including missing requirements`,!1).action(async e=>{await w(t=>b(t,e))}),n.command(`info`).description(`Show detailed information about a skill`).argument(`<name>`,`Skill name`).option(`--json`,`Output as JSON`,!1).action(async(e,t)=>{await w(n=>x(n,e,t))}),n.command(`check`).description(`Check which skills are ready vs missing requirements`).option(`--json`,`Output as JSON`,!1).action(async e=>{await w(t=>S(t,e))}),n.action(async()=>{await w(e=>b(e,{}))})}export{T as registerSkillsCli};
|
|
5
|
+
//# sourceMappingURL=skills-cli-9Ls94z5H.js.map
|
|
@@ -2,3 +2,4 @@ import{A as e,p as t,u as n}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_x
|
|
|
2
2
|
`),n.json)}function x(t,n,r){let a=t.skills.find(e=>e.name===n||e.skillKey===n);if(!a)return r.json?JSON.stringify({error:`not found`,skill:n},null,2):d(`Skill "${n}" not found. Run \`${i(`openclaw skills list`)}\` to see available skills.`,r.json);if(r.json)return JSON.stringify(_(a),null,2);let o=[],c=p(a.emoji),l=a.eligible?e.success(`✓ Ready`):a.disabled?e.warn(`⏸ Disabled`):a.blockedByAllowlist?e.warn(`🚫 Blocked by allowlist`):e.error(`✗ Missing requirements`);if(o.push(`${c} ${e.heading(a.name)} ${l}`),o.push(``),o.push(a.description),o.push(``),o.push(e.heading(`Details:`)),o.push(`${e.muted(` Source:`)} ${a.source}`),o.push(`${e.muted(` Path:`)} ${s(a.filePath)}`),a.homepage&&o.push(`${e.muted(` Homepage:`)} ${a.homepage}`),a.primaryEnv&&o.push(`${e.muted(` Primary env:`)} ${a.primaryEnv}`),a.requirements.bins.length>0||a.requirements.anyBins.length>0||a.requirements.env.length>0||a.requirements.config.length>0||a.requirements.os.length>0){if(o.push(``),o.push(e.heading(`Requirements:`)),a.requirements.bins.length>0){let t=a.requirements.bins.map(t=>a.missing.bins.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` Binaries:`)} ${t.join(`, `)}`)}if(a.requirements.anyBins.length>0){let t=a.missing.anyBins.length>0,n=a.requirements.anyBins.map(n=>t?e.error(`✗ ${n}`):e.success(`✓ ${n}`));o.push(`${e.muted(` Any binaries:`)} ${n.join(`, `)}`)}if(a.requirements.env.length>0){let t=a.requirements.env.map(t=>a.missing.env.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` Environment:`)} ${t.join(`, `)}`)}if(a.requirements.config.length>0){let t=a.requirements.config.map(t=>a.missing.config.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` Config:`)} ${t.join(`, `)}`)}if(a.requirements.os.length>0){let t=a.requirements.os.map(t=>a.missing.os.includes(t)?e.error(`✗ ${t}`):e.success(`✓ ${t}`));o.push(`${e.muted(` OS:`)} ${t.join(`, `)}`)}}if(a.install.length>0&&!a.eligible){o.push(``),o.push(e.heading(`Install options:`));for(let t of a.install)o.push(` ${e.warn(`→`)} ${t.label}`)}return d(o.join(`
|
|
3
3
|
`),r.json)}function S(t,n){let r=t.skills.filter(e=>e.eligible),i=t.skills.filter(e=>e.disabled),a=t.skills.filter(e=>e.blockedByAllowlist&&!e.disabled),o=t.skills.filter(e=>!e.eligible&&!e.disabled&&!e.blockedByAllowlist);if(n.json)return JSON.stringify(_({summary:{total:t.skills.length,eligible:r.length,disabled:i.length,blocked:a.length,missingRequirements:o.length},eligible:r.map(e=>e.name),disabled:i.map(e=>e.name),blocked:a.map(e=>e.name),missingRequirements:o.map(e=>({name:e.name,missing:e.missing,install:e.install}))}),null,2);let s=[];if(s.push(e.heading(`Skills Status Check`)),s.push(``),s.push(`${e.muted(`Total:`)} ${t.skills.length}`),s.push(`${e.success(`✓`)} ${e.muted(`Eligible:`)} ${r.length}`),s.push(`${e.warn(`⏸`)} ${e.muted(`Disabled:`)} ${i.length}`),s.push(`${e.warn(`🚫`)} ${e.muted(`Blocked by allowlist:`)} ${a.length}`),s.push(`${e.error(`✗`)} ${e.muted(`Missing requirements:`)} ${o.length}`),r.length>0){s.push(``),s.push(e.heading(`Ready to use:`));for(let e of r){let t=p(e.emoji);s.push(` ${t} ${e.name}`)}}if(o.length>0){s.push(``),s.push(e.heading(`Missing requirements:`));for(let t of o){let n=p(t.emoji),r=y(t);s.push(` ${n} ${t.name} ${e.muted(`(${r})`)}`)}}return d(s.join(`
|
|
4
4
|
`),n.json)}async function C(){let e=r(),t=a(e,o(e)),{buildWorkspaceSkillStatus:n}=await import(`./skills-status-DswSl5aD.js`).then(e=>e.n);return n(t,{config:e})}async function w(e){try{let n=await C();t.log(e(n))}catch(e){t.error(String(e)),t.exit(1)}}function T(t){let n=t.command(`skills`).description(`List and inspect available skills`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${c(`/cli/skills`,`docs.openclaw.ai/cli/skills`)}\n`);n.command(`list`).description(`List all available skills`).option(`--json`,`Output as JSON`,!1).option(`--eligible`,`Show only eligible (ready to use) skills`,!1).option(`-v, --verbose`,`Show more details including missing requirements`,!1).action(async e=>{await w(t=>b(t,e))}),n.command(`info`).description(`Show detailed information about a skill`).argument(`<name>`,`Skill name`).option(`--json`,`Output as JSON`,!1).action(async(e,t)=>{await w(n=>x(n,e,t))}),n.command(`check`).description(`Check which skills are ready vs missing requirements`).option(`--json`,`Output as JSON`,!1).action(async e=>{await w(t=>S(t,e))}),n.action(async()=>{await w(e=>b(e,{}))})}export{T as registerSkillsCli};
|
|
5
|
+
//# sourceMappingURL=skills-cli-BY7OhJzj.js.map
|