@workclaw/openclaw-workclaw 1.0.202 → 1.0.332

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.
Files changed (541) hide show
  1. package/README.md +3 -4
  2. package/dist/_virtual/_commonjsHelpers.js +8 -0
  3. package/dist/_virtual/ipaddr.js +4 -0
  4. package/dist/_virtual/jiti.js +4 -0
  5. package/dist/_virtual/main.js +4 -0
  6. package/dist/api.d.ts +4 -3
  7. package/dist/api.d.ts.map +1 -0
  8. package/dist/api.js +10 -3
  9. package/dist/index.d.ts +6 -5
  10. package/dist/index.d.ts.map +1 -0
  11. package/dist/index.js +250 -243
  12. package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/index.js +163 -0
  13. package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/utilities.js +32 -0
  14. package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/ansi-styles/index.js +188 -0
  15. package/dist/node_modules/.pnpm/chalk@5.6.2/node_modules/chalk/source/vendor/supports-color/browser.js +25 -0
  16. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/account-id-C6v13Xic.js +4 -0
  17. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/auth-profiles-Db4Eg6ht.js +24 -0
  18. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/bash-tools.exec-runtime--1hhz8C_.js +46 -0
  19. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/bash-tools.schemas-BqpDemKo.js +32 -0
  20. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/boolean-DbfRNnYl.js +14 -0
  21. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/boundary-file-read-BymsBHso.js +172 -0
  22. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/bundled-Cuj8sKt6.js +18 -0
  23. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/bundled-dir-Cq5y_NKM.js +109 -0
  24. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/bundled-plugin-metadata-BJMD48hn.js +260 -0
  25. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/channel-entry-contract-BoTfqLnn.js +176 -0
  26. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/cli-name-DPC4W7Fo.js +22 -0
  27. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/command-format-LqDv8ows.js +24 -0
  28. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/command-registration-Dxq1bCXM.js +16 -0
  29. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/commands-registry-normalize-Bk0WYUI0.js +94 -0
  30. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/commands-registry.data-D99VdOlX.js +940 -0
  31. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/config--3Msyf4f.js +20 -0
  32. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/config-schema-C6kUPI7B.js +33 -0
  33. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/config-schema-DB8FqQH8.js +82 -0
  34. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/conversation-binding-C3EIaK9Z.js +19 -0
  35. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/core-DpZtjMWz.js +51 -0
  36. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/dedupe-DM7iBj7C.js +60 -0
  37. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/discovery-Cgp95o2R.js +649 -0
  38. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/dispatch-2DAqwFVE.js +33 -0
  39. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/errors-Dyla6m1G.js +13 -0
  40. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/exec-approvals-CLXc_BYU.js +212 -0
  41. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/exec-defaults-DBnaZeLQ.js +13 -0
  42. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/exec-jRxy02_4.js +9 -0
  43. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/exec-safe-bin-trust-DOmID2EO.js +638 -0
  44. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/exec-safety-C8v0dsfc.js +24 -0
  45. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/facade-loader-B83leEeb.js +10 -0
  46. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/facade-runtime-B04URCVZ.js +14 -0
  47. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/file-identity-sp9axE-E.js +411 -0
  48. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/file-lock-D016H3tC.js +5 -0
  49. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/gateway-control-ui-origins-B-lkqr3D.js +23 -0
  50. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/gateway-request-scope-BEWoJTx4.js +3 -0
  51. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/global-singleton-DhGoboiG.js +14 -0
  52. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/helpers-CI2CkXhU.js +7 -0
  53. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/home-dir-BEqRdfoa.js +67 -0
  54. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/host-env-security-B-Ebh6At.js +334 -0
  55. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/ids-By7Nkc8R.js +76 -0
  56. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/inbound-path-policy-CQkSSeSi.js +26 -0
  57. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/internal-hooks-D52pUqod.js +5 -0
  58. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/io-DDkf_FUu.js +14328 -0
  59. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/ip-CdfoCORt.js +2 -0
  60. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/json-files-DACY7Zw5.js +22 -0
  61. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/legacy-names-C7VUgVdg.js +5 -0
  62. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/links-BlUEqVE8.js +15 -0
  63. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/loader-DYJR63Q1.js +27 -0
  64. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/logger-BMuqDP66.js +26 -0
  65. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/manager-szyCqvou.js +22 -0
  66. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/manifest-CjPIwluH.js +409 -0
  67. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/manifest-registry-CK0zNybm.js +394 -0
  68. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/map-size-DhG4ditB.js +15 -0
  69. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/message-channel-DXsjCySM.js +32 -0
  70. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/mime-BjR-Aw-Q.js +42 -0
  71. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/min-host-version-CmguvhGB.js +49 -0
  72. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/model-auth-markers-YVQDqG1J.js +8 -0
  73. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/model-selection-cli-U7l5Ifek.js +14 -0
  74. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/models-config-B-YHRI3g.js +40 -0
  75. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/native-command-session-targets-BW3SPx-T.js +11 -0
  76. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/network-mode-D3yzFBsD.js +15 -0
  77. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/node-require-DvwmVoHm.js +14 -0
  78. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/node-sqlite-FGjwOqiS.js +3 -0
  79. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/openclaw-root-BNWw3cXT.js +69 -0
  80. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/order-6WHL2fZu.js +26 -0
  81. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/parse-duration-amE_QFsj.js +42 -0
  82. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/path-safety-CKqzLERR.js +308 -0
  83. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/paths-LCYGfrV7.js +95 -0
  84. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/process-scoped-map-Cv-PkzaO.js +11 -0
  85. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/profile-utils-Dh8DVvPv.js +17 -0
  86. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/prototype-keys-BKGE_uzN.js +11 -0
  87. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/provider-env-vars-DDfJbkrO.js +150 -0
  88. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/provider-id-B3nZBDJJ.js +15 -0
  89. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/provider-runtime-O-n0cjZo.js +22 -0
  90. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/public-surface-loader-CSDxBey4.js +14 -0
  91. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/redact-D4nea1HF.js +2 -0
  92. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/ref-contract-B1q5N0Lz.js +35 -0
  93. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/registry-DE4nHTjg.js +54 -0
  94. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/registry-loaded-B8D6rQiJ.js +62 -0
  95. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/registry-nEl7QZ30.js +3 -0
  96. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/runtime-Clo2XF6T.js +27 -0
  97. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/runtime-channel-state-Ck2VkX9T.js +20 -0
  98. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/runtime-guard-DqVOvWAZ.js +23 -0
  99. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/runtime-state-Cd3jnHgw.js +4 -0
  100. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/schema-validator-Bo7NeV8w.js +3 -0
  101. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/scp-host-CiFVRWHy.js +38 -0
  102. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/sdk-alias-Bo1huP7M.js +315 -0
  103. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/session-binding-service-D6sb-LrK.js +9 -0
  104. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/session-write-lock-Dk7FbMr_.js +6 -0
  105. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/setup-helpers-ChrkNnYE.js +5 -0
  106. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/setup-registry-BPL6c_Zk.js +16 -0
  107. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/setup-wizard-helpers-DnMkYslk.js +19 -0
  108. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/skills-Djbt9HGh.js +21 -0
  109. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/slots-PynIdqZ_.js +10 -0
  110. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/string-coerce-BUSzWgUA.js +25 -0
  111. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/string-normalization-DIJRAo0o.js +20 -0
  112. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/strip-inbound-meta-WCHWW8is.js +12 -0
  113. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/subsystem-BHv2zSx6.js +15 -0
  114. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/system-events-CfifhXT7.js +3 -0
  115. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/tailscale-status-Ch1LdrMM.js +5 -0
  116. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/task-registry-2LJDZL29.js +15 -0
  117. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/telegram-command-config-TdpOuZ__.js +66 -0
  118. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/terminal-link-B3nCYQJi.js +10 -0
  119. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/theme-CVJvORNs.js +27 -0
  120. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/thinking-_rqwdGD8.js +44 -0
  121. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/thinking.shared-Dginn1He.js +14 -0
  122. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/tmp-openclaw-dir-DrKSsX71.js +103 -0
  123. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/tool-policy-CwZyJfFc.js +300 -0
  124. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/types-BfKfz-lz.js +38 -0
  125. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/types.secrets-C9RpLzA0.js +53 -0
  126. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/utils-DGFSjtQF.js +36 -0
  127. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/version-b06Uhxnq.js +82 -0
  128. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/workspace-oVBetctb.js +20 -0
  129. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/zod-schema-Cpw1qu03.js +1299 -0
  130. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/zod-schema.agent-runtime-D48J52r_.js +620 -0
  131. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/zod-schema.core-BrzjtZhM.js +597 -0
  132. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/zod-schema.providers-core-CX8AFeyJ.js +1354 -0
  133. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/zod-schema.providers-whatsapp-7E9bf9oA.js +130 -0
  134. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/dist/zod-schema.sensitive-BFZ4qze6.js +5 -0
  135. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/models.generated.js +14275 -0
  136. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/models.js +16 -0
  137. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/anthropic.js +314 -0
  138. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/github-copilot.js +256 -0
  139. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/google-antigravity.js +315 -0
  140. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/google-gemini-cli.js +402 -0
  141. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/index.js +41 -0
  142. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/oauth-page.js +103 -0
  143. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/openai-codex.js +335 -0
  144. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@mariozechner/pi-ai/dist/utils/oauth/pkce.js +20 -0
  145. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/system/policy.js +34 -0
  146. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/any/any.js +8 -0
  147. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/argument/argument.js +8 -0
  148. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/array/array.js +8 -0
  149. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/async-iterator/async-iterator.js +8 -0
  150. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/awaited/awaited.js +30 -0
  151. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/bigint/bigint.js +8 -0
  152. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/boolean/boolean.js +8 -0
  153. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/clone/type.js +7 -0
  154. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/clone/value.js +32 -0
  155. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/composite/composite.js +37 -0
  156. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/computed/computed.js +8 -0
  157. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/const/const.js +36 -0
  158. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/constructor/constructor.js +8 -0
  159. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/constructor-parameters/constructor-parameters.js +9 -0
  160. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/create/immutable.js +29 -0
  161. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/create/type.js +17 -0
  162. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/date/date.js +8 -0
  163. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/discard/discard.js +10 -0
  164. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/enum/enum.js +15 -0
  165. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/error/error.js +8 -0
  166. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-mapped-result.js +18 -0
  167. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude-from-template-literal.js +8 -0
  168. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/exclude/exclude.js +21 -0
  169. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/extends/extends-check.js +265 -0
  170. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-key.js +24 -0
  171. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/extends/extends-from-mapped-result.js +19 -0
  172. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/extends/extends.js +16 -0
  173. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-mapped-result.js +18 -0
  174. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/extract/extract-from-template-literal.js +8 -0
  175. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/extract/extract.js +21 -0
  176. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/function/function.js +8 -0
  177. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/guard/kind.js +176 -0
  178. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/guard/type.js +272 -0
  179. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/guard/value.js +62 -0
  180. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-key.js +21 -0
  181. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-from-mapped-result.js +20 -0
  182. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed-property-keys.js +21 -0
  183. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/indexed/indexed.js +61 -0
  184. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/instance-type/instance-type.js +9 -0
  185. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/instantiate/instantiate.js +86 -0
  186. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/integer/integer.js +8 -0
  187. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-create.js +11 -0
  188. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect-evaluated.js +31 -0
  189. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intersect/intersect.js +16 -0
  190. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intrinsic/capitalize.js +7 -0
  191. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic-from-mapped-key.js +25 -0
  192. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intrinsic/intrinsic.js +55 -0
  193. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intrinsic/lowercase.js +7 -0
  194. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uncapitalize.js +7 -0
  195. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/intrinsic/uppercase.js +7 -0
  196. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/iterator/iterator.js +8 -0
  197. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-from-mapped-result.js +19 -0
  198. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof-property-keys.js +36 -0
  199. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/keyof/keyof.js +31 -0
  200. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/literal/literal.js +12 -0
  201. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped-result.js +11 -0
  202. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/mapped/mapped.js +76 -0
  203. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/module/compute.js +122 -0
  204. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/module/module.js +28 -0
  205. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/never/never.js +8 -0
  206. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/not/not.js +8 -0
  207. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/null/null.js +8 -0
  208. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/number/number.js +8 -0
  209. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/object/object.js +15 -0
  210. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-key.js +21 -0
  211. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/omit/omit-from-mapped-result.js +19 -0
  212. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/omit/omit.js +48 -0
  213. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/optional/optional-from-mapped-result.js +18 -0
  214. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/optional/optional.js +21 -0
  215. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/parameters/parameters.js +9 -0
  216. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/partial/partial-from-mapped-result.js +19 -0
  217. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/partial/partial.js +53 -0
  218. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/patterns/patterns.js +16 -0
  219. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-key.js +23 -0
  220. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/pick/pick-from-mapped-result.js +19 -0
  221. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/pick/pick.js +48 -0
  222. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/promise/promise.js +8 -0
  223. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly-from-mapped-result.js +18 -0
  224. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/readonly/readonly.js +21 -0
  225. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/readonly-optional/readonly-optional.js +8 -0
  226. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/record/record.js +71 -0
  227. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/recursive/recursive.js +15 -0
  228. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/ref/ref.js +12 -0
  229. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/regexp/regexp.js +10 -0
  230. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/required/required-from-mapped-result.js +18 -0
  231. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/required/required.js +52 -0
  232. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/rest/rest.js +10 -0
  233. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/return-type/return-type.js +9 -0
  234. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/sets/set.js +30 -0
  235. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/string/string.js +8 -0
  236. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/symbol/symbol.js +8 -0
  237. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/symbols/symbols.js +12 -0
  238. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/template-literal/finite.js +27 -0
  239. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/template-literal/generate.js +38 -0
  240. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/template-literal/parse.js +128 -0
  241. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/template-literal/pattern.js +21 -0
  242. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/template-literal/syntax.js +45 -0
  243. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/template-literal/template-literal.js +12 -0
  244. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/template-literal/union.js +11 -0
  245. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/transform/transform.js +37 -0
  246. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/tuple/tuple.js +8 -0
  247. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/type/index.js +5 -0
  248. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/type/type.js +126 -0
  249. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/uint8array/uint8array.js +8 -0
  250. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/undefined/undefined.js +8 -0
  251. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/union/union-create.js +8 -0
  252. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/union/union-evaluated.js +26 -0
  253. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/union/union.js +9 -0
  254. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/unknown/unknown.js +8 -0
  255. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/unsafe/unsafe.js +8 -0
  256. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/type/void/void.js +8 -0
  257. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/@sinclair/typebox/build/esm/value/guard/guard.js +18 -0
  258. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/dotenv/lib/main.js +318 -0
  259. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/ipaddr.js/lib/ipaddr.js +805 -0
  260. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/jiti/dist/jiti.js +3869 -0
  261. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/jiti/lib/jiti.js +26 -0
  262. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/json5/dist/index.js +1085 -0
  263. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/doc/anchors.js +12 -0
  264. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/doc/applyReviver.js +45 -0
  265. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/doc/createNode.js +58 -0
  266. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/log.js +8 -0
  267. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/Alias.js +111 -0
  268. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/Collection.js +138 -0
  269. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/Node.js +36 -0
  270. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/Pair.js +35 -0
  271. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/Scalar.js +25 -0
  272. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/YAMLMap.js +139 -0
  273. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +111 -0
  274. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +59 -0
  275. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/identity.js +52 -0
  276. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/nodes/toJS.js +25 -0
  277. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/parse/lexer.js +6 -0
  278. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +55 -0
  279. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +50 -0
  280. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +37 -0
  281. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +65 -0
  282. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +131 -0
  283. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/stringify/stringify.js +119 -0
  284. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +146 -0
  285. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/stringify/stringifyComment.js +12 -0
  286. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/stringify/stringifyPair.js +128 -0
  287. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/stringify/stringifyString.js +278 -0
  288. package/dist/node_modules/.pnpm/openclaw@2026.4.14_@emnapi__48b26e3018d2f6ac73290fb8288ef325/node_modules/openclaw/node_modules/yaml/browser/dist/visit.js +104 -0
  289. package/dist/packages/plugin/src/accounts.js +200 -0
  290. package/dist/packages/plugin/src/api/accounts-api.js +133 -0
  291. package/dist/packages/plugin/src/api/prompts-api.js +105 -0
  292. package/dist/packages/plugin/src/api/session-api.js +172 -0
  293. package/dist/packages/plugin/src/api/skills-api.js +61 -0
  294. package/dist/packages/plugin/src/api/workspace.js +30 -0
  295. package/dist/packages/plugin/src/channel.js +209 -0
  296. package/dist/packages/plugin/src/config-schema.js +51 -0
  297. package/dist/packages/plugin/src/connection/workclaw-client.js +282 -0
  298. package/dist/packages/plugin/src/gateway/agent-handlers.js +408 -0
  299. package/dist/packages/plugin/src/gateway/config-writer.js +157 -0
  300. package/dist/packages/plugin/src/gateway/cron-tasks-handler.js +184 -0
  301. package/dist/packages/plugin/src/gateway/message-context.js +411 -0
  302. package/dist/packages/plugin/src/gateway/message-dispatcher.js +519 -0
  303. package/dist/packages/plugin/src/gateway/reconnect.js +178 -0
  304. package/dist/packages/plugin/src/gateway/skills-handler.js +511 -0
  305. package/dist/packages/plugin/src/gateway/skills-list-handler.js +173 -0
  306. package/dist/packages/plugin/src/gateway/tools-list-handler.js +89 -0
  307. package/dist/packages/plugin/src/gateway/workclaw-gateway.js +245 -0
  308. package/dist/packages/plugin/src/logging.js +62 -0
  309. package/dist/packages/plugin/src/media/upload.js +126 -0
  310. package/dist/packages/plugin/src/outbound/index.js +89 -0
  311. package/dist/packages/plugin/src/outbound/workclaw-sender.js +79 -0
  312. package/dist/packages/plugin/src/setup-core.js +22 -0
  313. package/dist/packages/plugin/src/setup-surface.js +338 -0
  314. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/api/index.js +186 -0
  315. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/index.js +30 -0
  316. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/add/params.js +147 -0
  317. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/add/sync.js +154 -0
  318. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/disable/params.js +62 -0
  319. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/disable/sync.js +86 -0
  320. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/enable/params.js +62 -0
  321. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/enable/sync.js +86 -0
  322. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/notify/sync.js +103 -0
  323. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/remove/params.js +68 -0
  324. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/remove/sync.js +86 -0
  325. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/update/params.js +141 -0
  326. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/src/update/sync.js +114 -0
  327. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/utils/index.js +99 -0
  328. package/dist/packages/plugin/src/tools/openclaw-workclaw-cron/utils/tool-context.js +29 -0
  329. package/dist/packages/plugin/src/types/system.js +8 -0
  330. package/dist/setup-entry.d.ts +2 -1
  331. package/dist/setup-entry.d.ts.map +1 -0
  332. package/dist/setup-entry.js +14 -11
  333. package/dist/src/accounts.d.ts +20 -19
  334. package/dist/src/accounts.d.ts.map +1 -0
  335. package/dist/src/api/accounts-api.d.ts +2 -1
  336. package/dist/src/api/accounts-api.d.ts.map +1 -0
  337. package/dist/src/api/prompts-api.d.ts +2 -1
  338. package/dist/src/api/prompts-api.d.ts.map +1 -0
  339. package/dist/src/api/session-api.d.ts +2 -1
  340. package/dist/src/api/session-api.d.ts.map +1 -0
  341. package/dist/src/api/skills-api.d.ts +2 -1
  342. package/dist/src/api/skills-api.d.ts.map +1 -0
  343. package/dist/src/api/workspace.d.ts +2 -1
  344. package/dist/src/api/workspace.d.ts.map +1 -0
  345. package/dist/src/channel.d.ts +3 -2
  346. package/dist/src/channel.d.ts.map +1 -0
  347. package/dist/src/config-schema.d.ts +1 -6
  348. package/dist/src/config-schema.d.ts.map +1 -0
  349. package/dist/src/connection/workclaw-client.d.ts +6 -4
  350. package/dist/src/connection/workclaw-client.d.ts.map +1 -0
  351. package/dist/src/gateway/agent-handlers.d.ts +4 -3
  352. package/dist/src/gateway/agent-handlers.d.ts.map +1 -0
  353. package/dist/src/gateway/config-writer.d.ts +32 -30
  354. package/dist/src/gateway/config-writer.d.ts.map +1 -0
  355. package/dist/src/gateway/cron-tasks-handler.d.ts +3 -1
  356. package/dist/src/gateway/cron-tasks-handler.d.ts.map +1 -0
  357. package/dist/src/gateway/message-context.d.ts +15 -17
  358. package/dist/src/gateway/message-context.d.ts.map +1 -0
  359. package/dist/src/gateway/message-dispatcher.d.ts +3 -4
  360. package/dist/src/gateway/message-dispatcher.d.ts.map +1 -0
  361. package/dist/src/gateway/reconnect.d.ts +6 -8
  362. package/dist/src/gateway/reconnect.d.ts.map +1 -0
  363. package/dist/src/gateway/skills-handler.d.ts +1 -0
  364. package/dist/src/gateway/skills-handler.d.ts.map +1 -0
  365. package/dist/src/gateway/skills-list-handler.d.ts +1 -0
  366. package/dist/src/gateway/skills-list-handler.d.ts.map +1 -0
  367. package/dist/src/gateway/tools-list-handler.d.ts +1 -0
  368. package/dist/src/gateway/tools-list-handler.d.ts.map +1 -0
  369. package/dist/src/gateway/workclaw-gateway.d.ts +2 -7
  370. package/dist/src/gateway/workclaw-gateway.d.ts.map +1 -0
  371. package/dist/src/logging.d.ts +55 -0
  372. package/dist/src/logging.d.ts.map +1 -0
  373. package/dist/src/media/upload.d.ts +1 -0
  374. package/dist/src/media/upload.d.ts.map +1 -0
  375. package/dist/src/outbound/index.d.ts +9 -6
  376. package/dist/src/outbound/index.d.ts.map +1 -0
  377. package/dist/src/outbound/workclaw-sender.d.ts +6 -4
  378. package/dist/src/outbound/workclaw-sender.d.ts.map +1 -0
  379. package/dist/src/runtime.d.ts +4 -17
  380. package/dist/src/runtime.d.ts.map +1 -0
  381. package/dist/src/runtime.js +324 -365
  382. package/dist/src/secret-contract-api.d.ts +1 -0
  383. package/dist/src/secret-contract-api.d.ts.map +1 -0
  384. package/dist/src/secret-contract-api.js +6 -3
  385. package/dist/src/send.d.ts +2 -1
  386. package/dist/src/send.d.ts.map +1 -0
  387. package/dist/src/setup-api.d.ts +4 -3
  388. package/dist/src/setup-api.d.ts.map +1 -0
  389. package/dist/src/setup-core.d.ts +2 -1
  390. package/dist/src/setup-core.d.ts.map +1 -0
  391. package/dist/src/setup-surface.d.ts +3 -2
  392. package/dist/src/setup-surface.d.ts.map +1 -0
  393. package/dist/src/tools/openclaw-workclaw-cron/api/index.d.ts +3 -4
  394. package/dist/src/tools/openclaw-workclaw-cron/api/index.d.ts.map +1 -0
  395. package/dist/src/tools/openclaw-workclaw-cron/index.d.ts +1 -0
  396. package/dist/src/tools/openclaw-workclaw-cron/index.d.ts.map +1 -0
  397. package/dist/src/tools/openclaw-workclaw-cron/src/add/params.d.ts +3 -7
  398. package/dist/src/tools/openclaw-workclaw-cron/src/add/params.d.ts.map +1 -0
  399. package/dist/src/tools/openclaw-workclaw-cron/src/add/sync.d.ts +3 -7
  400. package/dist/src/tools/openclaw-workclaw-cron/src/add/sync.d.ts.map +1 -0
  401. package/dist/src/tools/openclaw-workclaw-cron/src/disable/params.d.ts +2 -7
  402. package/dist/src/tools/openclaw-workclaw-cron/src/disable/params.d.ts.map +1 -0
  403. package/dist/src/tools/openclaw-workclaw-cron/src/disable/sync.d.ts +2 -7
  404. package/dist/src/tools/openclaw-workclaw-cron/src/disable/sync.d.ts.map +1 -0
  405. package/dist/src/tools/openclaw-workclaw-cron/src/enable/params.d.ts +2 -7
  406. package/dist/src/tools/openclaw-workclaw-cron/src/enable/params.d.ts.map +1 -0
  407. package/dist/src/tools/openclaw-workclaw-cron/src/enable/sync.d.ts +2 -7
  408. package/dist/src/tools/openclaw-workclaw-cron/src/enable/sync.d.ts.map +1 -0
  409. package/dist/src/tools/openclaw-workclaw-cron/src/notify/sync.d.ts +2 -9
  410. package/dist/src/tools/openclaw-workclaw-cron/src/notify/sync.d.ts.map +1 -0
  411. package/dist/src/tools/openclaw-workclaw-cron/src/remove/params.d.ts +2 -7
  412. package/dist/src/tools/openclaw-workclaw-cron/src/remove/params.d.ts.map +1 -0
  413. package/dist/src/tools/openclaw-workclaw-cron/src/remove/sync.d.ts +2 -7
  414. package/dist/src/tools/openclaw-workclaw-cron/src/remove/sync.d.ts.map +1 -0
  415. package/dist/src/tools/openclaw-workclaw-cron/src/update/params.d.ts +2 -7
  416. package/dist/src/tools/openclaw-workclaw-cron/src/update/params.d.ts.map +1 -0
  417. package/dist/src/tools/openclaw-workclaw-cron/src/update/sync.d.ts +2 -7
  418. package/dist/src/tools/openclaw-workclaw-cron/src/update/sync.d.ts.map +1 -0
  419. package/dist/src/tools/openclaw-workclaw-cron/types/index.d.ts +2 -1
  420. package/dist/src/tools/openclaw-workclaw-cron/types/index.d.ts.map +1 -0
  421. package/dist/src/tools/openclaw-workclaw-cron/utils/index.d.ts +1 -0
  422. package/dist/src/tools/openclaw-workclaw-cron/utils/index.d.ts.map +1 -0
  423. package/dist/src/tools/openclaw-workclaw-cron/utils/tool-context.d.ts +10 -0
  424. package/dist/src/tools/openclaw-workclaw-cron/utils/tool-context.d.ts.map +1 -0
  425. package/dist/src/tools/openclaw-workclaw-system/index.d.ts +1 -0
  426. package/dist/src/tools/openclaw-workclaw-system/index.d.ts.map +1 -0
  427. package/dist/src/tools/openclaw-workclaw-system/src/get/index.d.ts +2 -4
  428. package/dist/src/tools/openclaw-workclaw-system/src/get/index.d.ts.map +1 -0
  429. package/dist/src/tools/openclaw-workclaw-system/src/token/index.d.ts +2 -4
  430. package/dist/src/tools/openclaw-workclaw-system/src/token/index.d.ts.map +1 -0
  431. package/dist/src/types/account.d.ts +15 -0
  432. package/dist/src/types/account.d.ts.map +1 -0
  433. package/dist/src/{types.d.ts → types/config.d.ts} +4 -16
  434. package/dist/src/types/config.d.ts.map +1 -0
  435. package/dist/src/types/index.d.ts +4 -0
  436. package/dist/src/types/index.d.ts.map +1 -0
  437. package/dist/src/types/system.d.ts +17 -0
  438. package/dist/src/types/system.d.ts.map +1 -0
  439. package/dist/src/utils/content.d.ts +6 -5
  440. package/dist/src/utils/content.d.ts.map +1 -0
  441. package/openclaw.plugin.json +45 -0
  442. package/package.json +71 -45
  443. package/skills/openclaw-workclaw-cron/SKILL.md +6 -3
  444. package/api.ts +0 -3
  445. package/dist/src/accounts.js +0 -279
  446. package/dist/src/api/accounts-api.js +0 -130
  447. package/dist/src/api/prompts-api.js +0 -103
  448. package/dist/src/api/session-api.js +0 -207
  449. package/dist/src/api/skills-api.js +0 -64
  450. package/dist/src/api/workspace.js +0 -30
  451. package/dist/src/channel.js +0 -199
  452. package/dist/src/config-schema.js +0 -56
  453. package/dist/src/connection/workclaw-client.js +0 -351
  454. package/dist/src/gateway/agent-handlers.js +0 -433
  455. package/dist/src/gateway/config-writer.js +0 -302
  456. package/dist/src/gateway/cron-tasks-handler.js +0 -188
  457. package/dist/src/gateway/message-context.js +0 -509
  458. package/dist/src/gateway/message-dispatcher.js +0 -572
  459. package/dist/src/gateway/reconnect.js +0 -210
  460. package/dist/src/gateway/skills-handler.js +0 -615
  461. package/dist/src/gateway/skills-list-handler.js +0 -233
  462. package/dist/src/gateway/tools-list-handler.js +0 -101
  463. package/dist/src/gateway/workclaw-gateway.js +0 -237
  464. package/dist/src/media/upload.js +0 -125
  465. package/dist/src/outbound/index.js +0 -123
  466. package/dist/src/outbound/workclaw-sender.js +0 -95
  467. package/dist/src/send.js +0 -1
  468. package/dist/src/setup-api.js +0 -3
  469. package/dist/src/setup-core.js +0 -13
  470. package/dist/src/setup-surface.js +0 -363
  471. package/dist/src/tools/openclaw-workclaw-cron/api/index.js +0 -209
  472. package/dist/src/tools/openclaw-workclaw-cron/index.js +0 -33
  473. package/dist/src/tools/openclaw-workclaw-cron/src/add/params.js +0 -152
  474. package/dist/src/tools/openclaw-workclaw-cron/src/add/sync.js +0 -162
  475. package/dist/src/tools/openclaw-workclaw-cron/src/disable/params.js +0 -80
  476. package/dist/src/tools/openclaw-workclaw-cron/src/disable/sync.js +0 -107
  477. package/dist/src/tools/openclaw-workclaw-cron/src/enable/params.js +0 -80
  478. package/dist/src/tools/openclaw-workclaw-cron/src/enable/sync.js +0 -107
  479. package/dist/src/tools/openclaw-workclaw-cron/src/notify/sync.js +0 -127
  480. package/dist/src/tools/openclaw-workclaw-cron/src/remove/params.js +0 -87
  481. package/dist/src/tools/openclaw-workclaw-cron/src/remove/sync.js +0 -107
  482. package/dist/src/tools/openclaw-workclaw-cron/src/update/params.js +0 -164
  483. package/dist/src/tools/openclaw-workclaw-cron/src/update/sync.js +0 -135
  484. package/dist/src/tools/openclaw-workclaw-cron/types/index.js +0 -4
  485. package/dist/src/tools/openclaw-workclaw-cron/utils/index.js +0 -122
  486. package/dist/src/tools/openclaw-workclaw-system/index.js +0 -15
  487. package/dist/src/tools/openclaw-workclaw-system/src/get/index.js +0 -64
  488. package/dist/src/tools/openclaw-workclaw-system/src/token/index.js +0 -78
  489. package/dist/src/types.js +0 -1
  490. package/dist/src/utils/content.js +0 -38
  491. package/index.ts +0 -326
  492. package/setup-entry.ts +0 -13
  493. package/src/accounts.ts +0 -360
  494. package/src/api/accounts-api.ts +0 -156
  495. package/src/api/prompts-api.ts +0 -122
  496. package/src/api/session-api.ts +0 -246
  497. package/src/api/skills-api.ts +0 -74
  498. package/src/api/workspace.ts +0 -45
  499. package/src/channel.ts +0 -226
  500. package/src/config-schema.ts +0 -62
  501. package/src/connection/workclaw-client.ts +0 -618
  502. package/src/gateway/agent-handlers.ts +0 -551
  503. package/src/gateway/config-writer.ts +0 -378
  504. package/src/gateway/cron-tasks-handler.ts +0 -230
  505. package/src/gateway/message-context.ts +0 -645
  506. package/src/gateway/message-dispatcher.ts +0 -688
  507. package/src/gateway/reconnect.ts +0 -260
  508. package/src/gateway/skills-handler.ts +0 -805
  509. package/src/gateway/skills-list-handler.ts +0 -332
  510. package/src/gateway/tools-list-handler.ts +0 -161
  511. package/src/gateway/workclaw-gateway.ts +0 -305
  512. package/src/media/upload.ts +0 -168
  513. package/src/outbound/index.ts +0 -191
  514. package/src/outbound/workclaw-sender.ts +0 -161
  515. package/src/runtime.ts +0 -520
  516. package/src/secret-contract-api.ts +0 -4
  517. package/src/send.ts +0 -1
  518. package/src/setup-api.ts +0 -3
  519. package/src/setup-core.ts +0 -25
  520. package/src/setup-surface.ts +0 -499
  521. package/src/tools/openclaw-workclaw-cron/api/index.ts +0 -326
  522. package/src/tools/openclaw-workclaw-cron/index.ts +0 -39
  523. package/src/tools/openclaw-workclaw-cron/src/add/params.ts +0 -177
  524. package/src/tools/openclaw-workclaw-cron/src/add/sync.ts +0 -188
  525. package/src/tools/openclaw-workclaw-cron/src/disable/params.ts +0 -100
  526. package/src/tools/openclaw-workclaw-cron/src/disable/sync.ts +0 -127
  527. package/src/tools/openclaw-workclaw-cron/src/enable/params.ts +0 -100
  528. package/src/tools/openclaw-workclaw-cron/src/enable/sync.ts +0 -127
  529. package/src/tools/openclaw-workclaw-cron/src/notify/sync.ts +0 -148
  530. package/src/tools/openclaw-workclaw-cron/src/remove/params.ts +0 -109
  531. package/src/tools/openclaw-workclaw-cron/src/remove/sync.ts +0 -127
  532. package/src/tools/openclaw-workclaw-cron/src/update/params.ts +0 -195
  533. package/src/tools/openclaw-workclaw-cron/src/update/sync.ts +0 -161
  534. package/src/tools/openclaw-workclaw-cron/types/index.ts +0 -55
  535. package/src/tools/openclaw-workclaw-cron/utils/index.ts +0 -141
  536. package/src/tools/openclaw-workclaw-system/index.ts +0 -17
  537. package/src/tools/openclaw-workclaw-system/src/get/index.ts +0 -77
  538. package/src/tools/openclaw-workclaw-system/src/token/index.ts +0 -93
  539. package/src/types.ts +0 -52
  540. package/src/utils/content.ts +0 -40
  541. package/tsconfig.json +0 -34
@@ -1,305 +0,0 @@
1
- import type { ResolvedWorkclawAccount, WorkclawAccountConfig, WorkClawBaseConfig, WorkclawConfig } from '../types.js'
2
- import type { MessageDispatcherContext } from './message-dispatcher.js'
3
- import { buildAccountMap, resolveAccountByUserIdAndAgentId } from '../accounts.js'
4
- import {
5
- clearReconnectScheduler,
6
- clearWorkclawConnectionConfig,
7
- clearWorkclawWsConnection,
8
- createLogger,
9
- finishConnecting,
10
- getAllDispatchersByAppKey,
11
- getAppKeyByAccountId,
12
- getDispatcherByAppKeyAndAccountId,
13
- getReconnectScheduler,
14
- getWorkclawWsConnection,
15
- registerAccountContext,
16
- setReconnectScheduler,
17
- setWorkclawConnectionConfig,
18
- setWorkclawLoggerFromContext,
19
- tryStartConnecting,
20
- unregisterAccountContext,
21
-
22
- } from '../runtime.js'
23
- import { parseWorkClawMessage } from './message-context.js'
24
- import { dispatchWorkclawMessage } from './message-dispatcher.js'
25
- import { createReconnectScheduler } from './reconnect.js'
26
-
27
- export interface WorkclawGatewayOptions {
28
- accountId: string
29
- account: ResolvedWorkclawAccount
30
- cfg: any
31
- log?: {
32
- info?: (msg: string) => void
33
- warn?: (msg: string) => void
34
- error?: (msg: string) => void
35
- debug?: (msg: string) => void
36
- }
37
- }
38
-
39
- export async function startWorkclawGateway(options: WorkclawGatewayOptions): Promise<void> {
40
- const { accountId, account, cfg, log } = options
41
-
42
- const logger = createLogger('', log)
43
- setWorkclawLoggerFromContext(logger)
44
-
45
- const rawConfig = account.config as unknown as WorkclawConfig & WorkclawAccountConfig
46
- const connectionMode = rawConfig.connectionMode || 'websocket'
47
-
48
- if (connectionMode !== 'websocket') {
49
- throw new Error(`Unsupported connectionMode: ${connectionMode}`)
50
- }
51
-
52
- await startSharedWebSocket(options)
53
- }
54
-
55
- /**
56
- * 多个账号共享一个 WebSocket 连接
57
- */
58
- async function startSharedWebSocket(options: WorkclawGatewayOptions): Promise<void> {
59
- const { accountId, account, cfg, log } = options
60
-
61
- const logger = createLogger('', log)
62
- const rawConfig = account.config as unknown as WorkclawConfig & WorkclawAccountConfig
63
-
64
- const baseConfig: WorkClawBaseConfig = {
65
- baseUrl: rawConfig.baseUrl,
66
- websocketUrl: rawConfig.websocketUrl,
67
- appKey: rawConfig.appKey,
68
- appSecret: rawConfig.appSecret,
69
- localIp: rawConfig.localIp,
70
- allowInsecureTls: rawConfig.allowInsecureTls,
71
- requestTimeout: rawConfig.requestTimeout,
72
- }
73
-
74
- const accountConfig: WorkclawAccountConfig = {
75
- agentId: rawConfig.agentId,
76
- userId: rawConfig.userId,
77
- openConversationId: rawConfig.openConversationId,
78
- }
79
-
80
- const appKey = baseConfig.appKey || accountId
81
- const appKeyRaw = baseConfig.appKey ?? ''
82
-
83
- buildAccountMap(cfg)
84
-
85
- logger.info(
86
- `Gateway start accountId=${accountId} appKey=${appKeyRaw ? `${appKeyRaw.slice(0, 8)}...` : 'missing'} baseUrl=${baseConfig.baseUrl ?? ''} websocketUrl=${baseConfig.websocketUrl ?? ''}`,
87
- )
88
-
89
- // 注册账号上下文
90
- const ctx: MessageDispatcherContext = {
91
- accountId,
92
- account,
93
- cfg,
94
- baseConfig,
95
- accountConfig,
96
- log: logger,
97
- scheduleReconnect: () => {
98
- const scheduler = getReconnectScheduler(appKey)
99
- scheduler?.scheduleReconnect()
100
- },
101
- }
102
-
103
- registerAccountContext(appKey, accountId, ctx)
104
-
105
- // 检查是否已存在该 appKey 的 WebSocket
106
- const existingWs = getWorkclawWsConnection(appKey)
107
- if (existingWs) {
108
- logger.info(`Gateway using existing WebSocket for appKey=${appKey}`)
109
- return
110
- }
111
-
112
- // 尝试获取连接锁,防止竞态条件
113
- const startResult = tryStartConnecting(appKey)
114
-
115
- if (!startResult.isConnector) {
116
- // 另一个账号正在连接(成功或失败中),等待共享的 connectingPromise
117
- logger.info(`Gateway another account is connecting, waiting... appKey=${appKey}`)
118
- const resultWs = await startResult.connectingPromise
119
- if (resultWs) {
120
- logger.info(`Gateway connection established by another account, using it appKey=${appKey}`)
121
- return
122
- }
123
- // 连接失败(resultWs === null),当前账号作为新 connector 重试
124
- logger.warn(`Gateway connection attempt failed, will create own connection appKey=${appKey}`)
125
- }
126
- else {
127
- // 是 connector,创建连接
128
- logger.info(`Gateway acquired connector lock, creating connection appKey=${appKey}`)
129
- }
130
-
131
- // 需要创建新的 WebSocket(只有获取到锁的账号才执行到这里)
132
- const scheduler = createReconnectScheduler({
133
- key: appKey,
134
- config: baseConfig,
135
- log: logger,
136
- onMessage: (data: string) => {
137
- handleSharedMessage(appKey, data, cfg, logger)
138
- },
139
- onClose: () => {
140
- scheduler.scheduleReconnect()
141
- },
142
- // 旧代码在 setWorkclawWsConnection 后、ws.onopen 前就调用 finishConnecting,
143
- // 这个回调模拟同样的时机:ws 已存入 runtime,通知所有等待者
144
- onConnectingStarted: (ws: any) => {
145
- finishConnecting(appKey, ws)
146
- },
147
- })
148
- setReconnectScheduler(appKey, scheduler)
149
-
150
- try {
151
- await scheduler.connect()
152
- }
153
- catch (err) {
154
- // 连接失败,通知所有等待者重试(不传 ws 表示失败)
155
- finishConnecting(appKey)
156
- throw err
157
- }
158
-
159
- // Cache the connection config to prevent cfg mutation issues during message sends
160
- // 每个账户都有自己的配置缓存
161
- setWorkclawConnectionConfig(accountId, {
162
- appKey: baseConfig.appKey ?? '',
163
- appSecret: baseConfig.appSecret ?? '',
164
- baseUrl: baseConfig.baseUrl,
165
- websocketUrl: baseConfig.websocketUrl,
166
- localIp: baseConfig.localIp,
167
- allowInsecureTls: baseConfig.allowInsecureTls,
168
- requestTimeout: baseConfig.requestTimeout,
169
- })
170
- }
171
-
172
- /**
173
- * 处理共享 WebSocket 消息
174
- */
175
- function handleSharedMessage(appKey: string, data: string, cfg: any, logger: any): void {
176
- const parsed = parseWorkClawMessage(data, logger)
177
-
178
- if (!parsed) {
179
- logger.warn?.(`Gateway failed to parse message`)
180
- return
181
- }
182
-
183
- // ping/pong/disconnect 无需路由
184
- if (parsed.type === 'ping') {
185
- const ws = getWorkclawWsConnection(appKey)
186
- if (ws && ws.readyState === 1) { // OPEN
187
- const pongResponse = {
188
- code: 200,
189
- message: 'pong',
190
- metadata: { contentType: 'application/json' },
191
- data: JSON.stringify(parsed.pongData),
192
- }
193
- ws.send(JSON.stringify(pongResponse))
194
- }
195
- return
196
- }
197
-
198
- if (parsed.type === 'disconnect') {
199
- const ws = getWorkclawWsConnection(appKey)
200
- ws?.close()
201
- return
202
- }
203
-
204
- // logger.info?.(`Gateway received message: ${data}`);
205
-
206
- // 根据消息类型确定 userId 和 agentId
207
- let userId: string = ''
208
- let agentId: string = ''
209
-
210
- if (parsed.type === 'agent_message' && parsed.message) {
211
- userId = String(parsed.message.userId || '')
212
- agentId = String(parsed.message.agentId || '')
213
- }
214
- else if (parsed.type === 'agent_created') {
215
- // agent_created 触发新账号创建
216
- const allDispatchers = getAllDispatchersByAppKey(appKey)
217
- if (allDispatchers && allDispatchers.size > 0) {
218
- const firstDispatcher = allDispatchers.values().next().value
219
- dispatchWorkclawMessage(data, firstDispatcher.ctx).catch((err) => {
220
- logger.error?.(`Dispatch error: ${String(err)}`)
221
- })
222
- }
223
- return
224
- }
225
- else if (parsed.type === 'agent_updated' || parsed.type === 'agent_deleted') {
226
- userId = String(parsed.eventData?.futureId || parsed.eventData?.userId || '')
227
- agentId = String(parsed.eventData?.id || parsed.eventData?.agentId || '')
228
- }
229
- else if (parsed.type === 'tools_list' || parsed.type === 'skills_list' || parsed.type === 'skills_event') {
230
- userId = String(parsed.eventData?.userId || '')
231
- agentId = String(parsed.eventData?.agentId || '')
232
- }
233
- else if (parsed.type === 'init_agent') {
234
- userId = String(parsed.eventData?.futureId || parsed.eventData?.userId || '')
235
- agentId = String(parsed.eventData?.id || parsed.eventData?.agentId || '')
236
- /**
237
- * 在 init_agent 中,配置文件的agentId 为空,所有无法通过 resolveAccountByUserIdAndAgentId 查找账户
238
- */
239
-
240
- const accountId = 'default'
241
- const dispatcher = getDispatcherByAppKeyAndAccountId(appKey, accountId)
242
- if (dispatcher) {
243
- dispatchWorkclawMessage(data, dispatcher.ctx).catch((err) => {
244
- logger.error?.(`Dispatch error: ${String(err)}`)
245
- })
246
- }
247
- else {
248
- logger.warn?.(`Gateway no dispatcher for accountId=${accountId}`)
249
- }
250
- return
251
- }
252
- else if (parsed.type === 'cron_task_event') {
253
- // 任务事件处理,使用默认账户
254
- const accountId = 'default'
255
- const dispatcher = getDispatcherByAppKeyAndAccountId(appKey, accountId)
256
- if (dispatcher) {
257
- dispatchWorkclawMessage(data, dispatcher.ctx).catch((err) => {
258
- logger.error?.(`Dispatch error: ${String(err)}`)
259
- })
260
- }
261
- else {
262
- logger.warn?.(`Gateway (per-appKey) no dispatcher for accountId=${accountId}`)
263
- }
264
- return
265
- }
266
- else {
267
- // 未知消息类型,忽略
268
- return
269
- }
270
-
271
- const accountId = resolveAccountByUserIdAndAgentId(cfg, userId, agentId)
272
- if (!accountId) {
273
- logger.warn?.(`Gateway no account found for userId=${userId} agentId=${agentId}`)
274
- return
275
- }
276
-
277
- const dispatcher = getDispatcherByAppKeyAndAccountId(appKey, accountId)
278
- if (dispatcher) {
279
- dispatchWorkclawMessage(data, dispatcher.ctx).catch((err) => {
280
- logger.error?.(`Dispatch error: ${String(err)}`)
281
- })
282
- }
283
- else {
284
- logger.warn?.(`Gateway no dispatcher for accountId=${accountId}`)
285
- }
286
- }
287
-
288
- export function stopWorkclawGateway(accountId: string): void {
289
- const appKey = getAppKeyByAccountId(accountId)
290
- if (!appKey)
291
- return
292
-
293
- unregisterAccountContext(appKey, accountId)
294
-
295
- if (getAllDispatchersByAppKey(appKey)?.size === 0) {
296
- const ws = getWorkclawWsConnection(appKey)
297
- ws?.close()
298
- clearWorkclawWsConnection(appKey)
299
-
300
- const scheduler = getReconnectScheduler(appKey)
301
- scheduler?.stopReconnect()
302
- clearReconnectScheduler(appKey)
303
- }
304
- clearWorkclawConnectionConfig(accountId)
305
- }
@@ -1,168 +0,0 @@
1
- import { readFile, stat } from 'node:fs/promises'
2
- import os from 'node:os'
3
- import path from 'node:path'
4
- import { fileURLToPath } from 'node:url'
5
- import { Agent, fetch as undiciFetch } from 'undici'
6
-
7
- export function isLocalMediaSource(value: string): boolean {
8
- const trimmed = value.trim()
9
- return (
10
- trimmed.startsWith('/')
11
- || trimmed.startsWith('./')
12
- || trimmed.startsWith('../')
13
- || trimmed.startsWith('~')
14
- || trimmed.startsWith('file://')
15
- )
16
- }
17
-
18
- export function resolveLocalPath(input: string): string {
19
- if (input.startsWith('file://')) {
20
- return fileURLToPath(input)
21
- }
22
- if (input.startsWith('~')) {
23
- return path.join(os.homedir(), input.slice(1))
24
- }
25
- return path.resolve(input)
26
- }
27
-
28
- function readResponseUrlPath(
29
- data: Record<string, unknown>,
30
- pathValue?: string,
31
- ): string | undefined {
32
- if (!pathValue)
33
- return undefined
34
- const parts = pathValue.split('.').filter(Boolean)
35
- let current: unknown = data
36
- for (const part of parts) {
37
- if (!current || typeof current !== 'object')
38
- return undefined
39
- current = (current as Record<string, unknown>)[part]
40
- }
41
- return typeof current === 'string' ? current : undefined
42
- }
43
-
44
- function extractUploadedUrl(
45
- responseText: string,
46
- responseData: Record<string, unknown>,
47
- pathValue?: string,
48
- ): string | undefined {
49
- const fromPath = readResponseUrlPath(responseData, pathValue)
50
- if (fromPath)
51
- return fromPath
52
-
53
- const direct
54
- = (responseData.url as string | undefined)
55
- ?? (responseData.mediaUrl as string | undefined)
56
- if (typeof direct === 'string' && direct.trim())
57
- return direct
58
-
59
- const dataObj = responseData.data
60
- if (dataObj && typeof dataObj === 'object') {
61
- const dataUrl = (dataObj as Record<string, unknown>).url
62
- const dataMedia = (dataObj as Record<string, unknown>).mediaUrl
63
- if (typeof dataUrl === 'string' && dataUrl.trim())
64
- return dataUrl
65
- if (typeof dataMedia === 'string' && dataMedia.trim())
66
- return dataMedia
67
- }
68
-
69
- const resultObj = responseData.result
70
- if (resultObj && typeof resultObj === 'object') {
71
- const resultUrl = (resultObj as Record<string, unknown>).url
72
- const resultMedia = (resultObj as Record<string, unknown>).mediaUrl
73
- if (typeof resultUrl === 'string' && resultUrl.trim())
74
- return resultUrl
75
- if (typeof resultMedia === 'string' && resultMedia.trim())
76
- return resultMedia
77
- }
78
-
79
- if (responseText.trim() && /^https?:\/\//i.test(responseText.trim())) {
80
- return responseText.trim()
81
- }
82
- return undefined
83
- }
84
-
85
- export interface UploadLocalMediaParams {
86
- uploadUrl: string
87
- filePath: string
88
- uploadFieldName?: string
89
- uploadHeaders?: Record<string, string>
90
- uploadFormFields?: Record<string, string | number | boolean>
91
- uploadResponseUrlPath?: string
92
- requestTimeout: number
93
- allowInsecureTls?: boolean
94
- }
95
-
96
- export async function uploadLocalMedia(params: UploadLocalMediaParams): Promise<string> {
97
- const stats = await stat(params.filePath)
98
- if (!stats.isFile()) {
99
- throw new Error(`mediaUrl is not a file: ${params.filePath}`)
100
- }
101
-
102
- const content = await readFile(params.filePath)
103
- const form = new FormData()
104
- const fieldName = params.uploadFieldName?.trim() || 'file'
105
- const fileName = path.basename(params.filePath)
106
- form.set(fieldName, new Blob([content], { type: 'application/octet-stream' }), fileName)
107
-
108
- if (params.uploadFormFields) {
109
- for (const [key, value] of Object.entries(params.uploadFormFields)) {
110
- form.set(key, String(value))
111
- }
112
- }
113
-
114
- const controller = new AbortController()
115
- const timeoutId = setTimeout(() => controller.abort(), params.requestTimeout)
116
-
117
- let dispatcher: unknown
118
- let doFetch: any = globalThis.fetch.bind(globalThis)
119
-
120
- if (params.allowInsecureTls) {
121
- try {
122
- dispatcher = new Agent({ connect: { rejectUnauthorized: false } })
123
- doFetch = undiciFetch as any
124
- }
125
- catch (error) {
126
- const message = error instanceof Error ? error.message : String(error)
127
- throw new Error(`allowInsecureTls requires undici. ${message}`)
128
- }
129
- }
130
-
131
- try {
132
- const response = await doFetch(params.uploadUrl, {
133
- method: 'POST',
134
- headers: params.uploadHeaders ?? {},
135
- body: form,
136
- signal: controller.signal,
137
- ...(dispatcher ? { dispatcher } : {}),
138
- })
139
-
140
- const responseText = await response.text().catch(() => '')
141
- if (!response.ok) {
142
- throw new Error(`Upload failed: ${response.status} ${responseText}`)
143
- }
144
-
145
- let data: Record<string, unknown> = {}
146
- if (responseText) {
147
- try {
148
- data = JSON.parse(responseText) as Record<string, unknown>
149
- }
150
- catch {
151
- data = {}
152
- }
153
- }
154
-
155
- const uploadedUrl = extractUploadedUrl(
156
- responseText,
157
- data,
158
- params.uploadResponseUrlPath,
159
- )
160
- if (!uploadedUrl) {
161
- throw new Error('Upload response missing file URL')
162
- }
163
- return uploadedUrl
164
- }
165
- finally {
166
- clearTimeout(timeoutId)
167
- }
168
- }
@@ -1,191 +0,0 @@
1
- import type { OpenClawConfig } from 'openclaw/plugin-sdk'
2
- import type { WorkclawConfig, WorkclawSendResult } from '../types.js'
3
- import { stat } from 'node:fs/promises'
4
- import { resolveAccountByUserIdAndAgentId, resolveWorkclawAccountWithCache } from '../accounts.js'
5
-
6
- import { loadOpenConversationId } from '../gateway/config-writer.js'
7
- import { isLocalMediaSource, resolveLocalPath, uploadLocalMedia } from '../media/upload.js'
8
- import { getWorkclawLogger, setLastOutboundAt } from '../runtime.js'
9
- import {
10
- sendWorkclawOutboundMessage,
11
- } from './workclaw-sender.js'
12
-
13
- /**
14
- * 根据 target (userId) 和可选的 agentId 查找匹配的账户
15
- * 如果同时提供 userId 和 agentId,走 O(1) 查找
16
- * 否则遍历所有账户,查找 userId 等于 target 的账户
17
- */
18
- function findAccountIdByTarget(
19
- cfg: OpenClawConfig,
20
- target: string,
21
- agentId?: string | number,
22
- ): string | undefined {
23
- // O(1) 查找:userId + agentId 唯一确定一个账户
24
- if (agentId !== undefined && agentId !== null) {
25
- return resolveAccountByUserIdAndAgentId(cfg, target, String(agentId)) ?? undefined
26
- }
27
-
28
- // 遍历:只有 userId 时,无法唯一确定账户(一个 userId 对应多个 agentId)
29
- // 需要通过 bindings 或其他方式 resolve,这里暂不支持
30
- return undefined
31
- }
32
-
33
- export interface SendWorkclawMessageParams {
34
- cfg: OpenClawConfig
35
- to: string
36
- text: string
37
- mediaUrl?: string
38
- replyToMessageId?: string
39
- accountId?: string
40
- openConversationId?: string
41
- agentId?: string | number
42
- /**
43
- * 消息类型:
44
- * - "reply": 回复消息(用户触发)
45
- * - "push": 主动推送(定时任务触发)
46
- */
47
- messageType?: 'reply' | 'push'
48
- msgType?: string
49
- last?: boolean
50
- /** 来源:deliver=流式响应回调,sendText=框架直接发送,after_tool_call=工具执行结果推送 */
51
- source?: 'deliver' | 'sendText' | 'after_tool_call'
52
- }
53
-
54
- async function resolveMediaUrl(
55
- mediaUrl: string | undefined,
56
- config: WorkclawConfig,
57
- ): Promise<string | undefined> {
58
- if (!mediaUrl)
59
- return undefined
60
- if (!isLocalMediaSource(mediaUrl))
61
- return mediaUrl
62
-
63
- const uploadUrl = config.uploadUrl
64
- if (!uploadUrl) {
65
- throw new Error('uploadUrl not configured for local mediaUrl')
66
- }
67
-
68
- const filePath = resolveLocalPath(mediaUrl)
69
-
70
- if (typeof config.mediaMaxMb === 'number' && config.mediaMaxMb > 0) {
71
- const stats = await stat(filePath)
72
- const maxBytes = config.mediaMaxMb * 1024 * 1024
73
- if (stats.size > maxBytes) {
74
- throw new Error(`mediaUrl exceeds limit (${config.mediaMaxMb} MB)`)
75
- }
76
- }
77
-
78
- return uploadLocalMedia({
79
- uploadUrl,
80
- filePath,
81
- uploadFieldName: config.uploadFieldName,
82
- uploadHeaders: config.uploadHeaders as Record<string, string> | undefined,
83
- uploadFormFields: config.uploadFormFields as
84
- | Record<string, string | number | boolean>
85
- | undefined,
86
- uploadResponseUrlPath: config.uploadResponseUrlPath,
87
- requestTimeout: config.requestTimeout ?? 30000,
88
- allowInsecureTls: config.allowInsecureTls,
89
- })
90
- }
91
-
92
- export async function sendMessageWorkclaw(
93
- params: SendWorkclawMessageParams,
94
- ): Promise<WorkclawSendResult> {
95
- const { cfg, to, text, mediaUrl, replyToMessageId, accountId, openConversationId, agentId, messageType, msgType, last }
96
- = params
97
-
98
- // 如果没有指定 messageType,根据是否有 replyToMessageId 来判断
99
- // - 有 replyToMessageId: 回复消息
100
- // - 没有 replyToMessageId: 主动推送
101
- const resolvedMessageType = messageType ?? (replyToMessageId ? 'reply' : 'push')
102
-
103
- // 如果没有指定 accountId,尝试根据 target (to) 和 agentId 查找匹配的账户
104
- let resolvedAccountId = accountId
105
- if (!resolvedAccountId) {
106
- const foundAccountId = findAccountIdByTarget(cfg, to, agentId)
107
- if (foundAccountId) {
108
- resolvedAccountId = foundAccountId
109
- }
110
- }
111
-
112
- const account = resolveWorkclawAccountWithCache({ cfg, accountId: resolvedAccountId })
113
- if (!account.configured) {
114
- throw new Error(`Workclaw account "${account.accountId}" not configured`)
115
- }
116
-
117
- const resolvedMediaUrl = await resolveMediaUrl(mediaUrl, account.config)
118
-
119
- // 优先使用传入的 openConversationId,其次从 cfg 中直接读取(绕过 account.config 快照问题)
120
- // 这样可以获取到运行时动态保存的 openConversationId
121
- interface ChannelWithAccounts { accounts?: Record<string, any>, openConversationId?: string }
122
- const cfgChannel = (cfg.channels?.['openclaw-workclaw'] as unknown as ChannelWithAccounts) ?? {}
123
- const cfgAccounts = cfgChannel.accounts ?? {}
124
- const cfgAccount = cfgAccounts[resolvedAccountId] ?? {}
125
- const cfgOpenConversationId = cfgAccount?.openConversationId ?? cfgChannel?.openConversationId
126
- // 最后尝试从 state 文件恢复(进程重启后 cfg 没有持久化的 openConversationId)
127
- const stateOpenConversationId = loadOpenConversationId(resolvedAccountId, to)
128
- const effectiveOpenConversationId = openConversationId ?? cfgOpenConversationId ?? stateOpenConversationId
129
- getWorkclawLogger().info(`[SEND] source=${params.source || '?'} type=${resolvedMessageType} conv=${effectiveOpenConversationId || '(none)'} replyTo=${replyToMessageId}`)
130
-
131
- // 使用 appKey 作为缓存键,让所有账户共享同一个 token
132
- const tokenCacheKey = account.config.appKey || account.accountId
133
- const result = await sendWorkclawOutboundMessage({
134
- cacheKey: tokenCacheKey,
135
- to,
136
- text,
137
- msgType,
138
- mediaUrl: resolvedMediaUrl,
139
- replyToMessageId,
140
- openConversationId: effectiveOpenConversationId,
141
- agentId,
142
- config: account.config,
143
- messageType: resolvedMessageType,
144
- last,
145
- source: params.source,
146
- })
147
-
148
- // 更新上次出站时间
149
- if (resolvedAccountId) {
150
- setLastOutboundAt(resolvedAccountId, Date.now())
151
- }
152
-
153
- return {
154
- messageId: result.messageId,
155
- chatId: to,
156
- }
157
- }
158
-
159
- export async function getMessageWorkclaw(_params: {
160
- cfg: OpenClawConfig
161
- messageId: string
162
- accountId?: string
163
- }): Promise<null> {
164
- return null
165
- }
166
-
167
- /**
168
- * 发送主动推送消息(定时任务使用)
169
- * 使用 pushEndpoint 配置的端口
170
- */
171
- export async function sendPushMessageWorkclaw(
172
- params: Omit<SendWorkclawMessageParams, 'messageType'>,
173
- ): Promise<WorkclawSendResult> {
174
- return sendMessageWorkclaw({
175
- ...params,
176
- messageType: 'push',
177
- })
178
- }
179
-
180
- /**
181
- * 发送回复消息(用户触发)
182
- * 使用 replyEndpoint 配置的端口
183
- */
184
- export async function sendReplyMessageWorkclaw(
185
- params: Omit<SendWorkclawMessageParams, 'messageType'>,
186
- ): Promise<WorkclawSendResult> {
187
- return sendMessageWorkclaw({
188
- ...params,
189
- messageType: 'reply',
190
- })
191
- }