@workclaw/openclaw-workclaw 1.0.202 → 1.0.331

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 (534) 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 +158 -0
  300. package/dist/packages/plugin/src/gateway/cron-tasks-handler.js +184 -0
  301. package/dist/packages/plugin/src/gateway/message-context.js +410 -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 +244 -0
  308. package/dist/packages/plugin/src/logging.js +68 -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/setup-entry.d.ts +2 -1
  330. package/dist/setup-entry.d.ts.map +1 -0
  331. package/dist/setup-entry.js +14 -11
  332. package/dist/src/accounts.d.ts +20 -19
  333. package/dist/src/accounts.d.ts.map +1 -0
  334. package/dist/src/api/accounts-api.d.ts +2 -1
  335. package/dist/src/api/accounts-api.d.ts.map +1 -0
  336. package/dist/src/api/prompts-api.d.ts +2 -1
  337. package/dist/src/api/prompts-api.d.ts.map +1 -0
  338. package/dist/src/api/session-api.d.ts +2 -1
  339. package/dist/src/api/session-api.d.ts.map +1 -0
  340. package/dist/src/api/skills-api.d.ts +2 -1
  341. package/dist/src/api/skills-api.d.ts.map +1 -0
  342. package/dist/src/api/workspace.d.ts +2 -1
  343. package/dist/src/api/workspace.d.ts.map +1 -0
  344. package/dist/src/channel.d.ts +3 -2
  345. package/dist/src/channel.d.ts.map +1 -0
  346. package/dist/src/config-schema.d.ts +1 -6
  347. package/dist/src/config-schema.d.ts.map +1 -0
  348. package/dist/src/connection/workclaw-client.d.ts +6 -4
  349. package/dist/src/connection/workclaw-client.d.ts.map +1 -0
  350. package/dist/src/gateway/agent-handlers.d.ts +4 -3
  351. package/dist/src/gateway/agent-handlers.d.ts.map +1 -0
  352. package/dist/src/gateway/config-writer.d.ts +32 -30
  353. package/dist/src/gateway/config-writer.d.ts.map +1 -0
  354. package/dist/src/gateway/cron-tasks-handler.d.ts +3 -1
  355. package/dist/src/gateway/cron-tasks-handler.d.ts.map +1 -0
  356. package/dist/src/gateway/message-context.d.ts +15 -17
  357. package/dist/src/gateway/message-context.d.ts.map +1 -0
  358. package/dist/src/gateway/message-dispatcher.d.ts +3 -4
  359. package/dist/src/gateway/message-dispatcher.d.ts.map +1 -0
  360. package/dist/src/gateway/reconnect.d.ts +6 -8
  361. package/dist/src/gateway/reconnect.d.ts.map +1 -0
  362. package/dist/src/gateway/skills-handler.d.ts +1 -0
  363. package/dist/src/gateway/skills-handler.d.ts.map +1 -0
  364. package/dist/src/gateway/skills-list-handler.d.ts +1 -0
  365. package/dist/src/gateway/skills-list-handler.d.ts.map +1 -0
  366. package/dist/src/gateway/tools-list-handler.d.ts +1 -0
  367. package/dist/src/gateway/tools-list-handler.d.ts.map +1 -0
  368. package/dist/src/gateway/workclaw-gateway.d.ts +2 -7
  369. package/dist/src/gateway/workclaw-gateway.d.ts.map +1 -0
  370. package/dist/src/logging.d.ts +55 -0
  371. package/dist/src/logging.d.ts.map +1 -0
  372. package/dist/src/media/upload.d.ts +1 -0
  373. package/dist/src/media/upload.d.ts.map +1 -0
  374. package/dist/src/outbound/index.d.ts +9 -6
  375. package/dist/src/outbound/index.d.ts.map +1 -0
  376. package/dist/src/outbound/workclaw-sender.d.ts +6 -4
  377. package/dist/src/outbound/workclaw-sender.d.ts.map +1 -0
  378. package/dist/src/runtime.d.ts +4 -17
  379. package/dist/src/runtime.d.ts.map +1 -0
  380. package/dist/src/runtime.js +324 -365
  381. package/dist/src/secret-contract-api.d.ts +1 -0
  382. package/dist/src/secret-contract-api.d.ts.map +1 -0
  383. package/dist/src/secret-contract-api.js +6 -3
  384. package/dist/src/send.d.ts +2 -1
  385. package/dist/src/send.d.ts.map +1 -0
  386. package/dist/src/setup-api.d.ts +4 -3
  387. package/dist/src/setup-api.d.ts.map +1 -0
  388. package/dist/src/setup-core.d.ts +2 -1
  389. package/dist/src/setup-core.d.ts.map +1 -0
  390. package/dist/src/setup-surface.d.ts +3 -2
  391. package/dist/src/setup-surface.d.ts.map +1 -0
  392. package/dist/src/tools/openclaw-workclaw-cron/api/index.d.ts +3 -4
  393. package/dist/src/tools/openclaw-workclaw-cron/api/index.d.ts.map +1 -0
  394. package/dist/src/tools/openclaw-workclaw-cron/index.d.ts +1 -0
  395. package/dist/src/tools/openclaw-workclaw-cron/index.d.ts.map +1 -0
  396. package/dist/src/tools/openclaw-workclaw-cron/src/add/params.d.ts +3 -7
  397. package/dist/src/tools/openclaw-workclaw-cron/src/add/params.d.ts.map +1 -0
  398. package/dist/src/tools/openclaw-workclaw-cron/src/add/sync.d.ts +3 -7
  399. package/dist/src/tools/openclaw-workclaw-cron/src/add/sync.d.ts.map +1 -0
  400. package/dist/src/tools/openclaw-workclaw-cron/src/disable/params.d.ts +2 -7
  401. package/dist/src/tools/openclaw-workclaw-cron/src/disable/params.d.ts.map +1 -0
  402. package/dist/src/tools/openclaw-workclaw-cron/src/disable/sync.d.ts +2 -7
  403. package/dist/src/tools/openclaw-workclaw-cron/src/disable/sync.d.ts.map +1 -0
  404. package/dist/src/tools/openclaw-workclaw-cron/src/enable/params.d.ts +2 -7
  405. package/dist/src/tools/openclaw-workclaw-cron/src/enable/params.d.ts.map +1 -0
  406. package/dist/src/tools/openclaw-workclaw-cron/src/enable/sync.d.ts +2 -7
  407. package/dist/src/tools/openclaw-workclaw-cron/src/enable/sync.d.ts.map +1 -0
  408. package/dist/src/tools/openclaw-workclaw-cron/src/notify/sync.d.ts +2 -9
  409. package/dist/src/tools/openclaw-workclaw-cron/src/notify/sync.d.ts.map +1 -0
  410. package/dist/src/tools/openclaw-workclaw-cron/src/remove/params.d.ts +2 -7
  411. package/dist/src/tools/openclaw-workclaw-cron/src/remove/params.d.ts.map +1 -0
  412. package/dist/src/tools/openclaw-workclaw-cron/src/remove/sync.d.ts +2 -7
  413. package/dist/src/tools/openclaw-workclaw-cron/src/remove/sync.d.ts.map +1 -0
  414. package/dist/src/tools/openclaw-workclaw-cron/src/update/params.d.ts +2 -7
  415. package/dist/src/tools/openclaw-workclaw-cron/src/update/params.d.ts.map +1 -0
  416. package/dist/src/tools/openclaw-workclaw-cron/src/update/sync.d.ts +2 -7
  417. package/dist/src/tools/openclaw-workclaw-cron/src/update/sync.d.ts.map +1 -0
  418. package/dist/src/tools/openclaw-workclaw-cron/types/index.d.ts +2 -1
  419. package/dist/src/tools/openclaw-workclaw-cron/types/index.d.ts.map +1 -0
  420. package/dist/src/tools/openclaw-workclaw-cron/utils/index.d.ts +1 -0
  421. package/dist/src/tools/openclaw-workclaw-cron/utils/index.d.ts.map +1 -0
  422. package/dist/src/tools/openclaw-workclaw-cron/utils/tool-context.d.ts +10 -0
  423. package/dist/src/tools/openclaw-workclaw-cron/utils/tool-context.d.ts.map +1 -0
  424. package/dist/src/tools/openclaw-workclaw-system/index.d.ts +1 -0
  425. package/dist/src/tools/openclaw-workclaw-system/index.d.ts.map +1 -0
  426. package/dist/src/tools/openclaw-workclaw-system/src/get/index.d.ts +2 -4
  427. package/dist/src/tools/openclaw-workclaw-system/src/get/index.d.ts.map +1 -0
  428. package/dist/src/tools/openclaw-workclaw-system/src/token/index.d.ts +2 -4
  429. package/dist/src/tools/openclaw-workclaw-system/src/token/index.d.ts.map +1 -0
  430. package/dist/src/types.d.ts +7 -7
  431. package/dist/src/types.d.ts.map +1 -0
  432. package/dist/src/utils/content.d.ts +6 -5
  433. package/dist/src/utils/content.d.ts.map +1 -0
  434. package/openclaw.plugin.json +45 -0
  435. package/package.json +71 -45
  436. package/skills/openclaw-workclaw-cron/SKILL.md +6 -3
  437. package/api.ts +0 -3
  438. package/dist/src/accounts.js +0 -279
  439. package/dist/src/api/accounts-api.js +0 -130
  440. package/dist/src/api/prompts-api.js +0 -103
  441. package/dist/src/api/session-api.js +0 -207
  442. package/dist/src/api/skills-api.js +0 -64
  443. package/dist/src/api/workspace.js +0 -30
  444. package/dist/src/channel.js +0 -199
  445. package/dist/src/config-schema.js +0 -56
  446. package/dist/src/connection/workclaw-client.js +0 -351
  447. package/dist/src/gateway/agent-handlers.js +0 -433
  448. package/dist/src/gateway/config-writer.js +0 -302
  449. package/dist/src/gateway/cron-tasks-handler.js +0 -188
  450. package/dist/src/gateway/message-context.js +0 -509
  451. package/dist/src/gateway/message-dispatcher.js +0 -572
  452. package/dist/src/gateway/reconnect.js +0 -210
  453. package/dist/src/gateway/skills-handler.js +0 -615
  454. package/dist/src/gateway/skills-list-handler.js +0 -233
  455. package/dist/src/gateway/tools-list-handler.js +0 -101
  456. package/dist/src/gateway/workclaw-gateway.js +0 -237
  457. package/dist/src/media/upload.js +0 -125
  458. package/dist/src/outbound/index.js +0 -123
  459. package/dist/src/outbound/workclaw-sender.js +0 -95
  460. package/dist/src/send.js +0 -1
  461. package/dist/src/setup-api.js +0 -3
  462. package/dist/src/setup-core.js +0 -13
  463. package/dist/src/setup-surface.js +0 -363
  464. package/dist/src/tools/openclaw-workclaw-cron/api/index.js +0 -209
  465. package/dist/src/tools/openclaw-workclaw-cron/index.js +0 -33
  466. package/dist/src/tools/openclaw-workclaw-cron/src/add/params.js +0 -152
  467. package/dist/src/tools/openclaw-workclaw-cron/src/add/sync.js +0 -162
  468. package/dist/src/tools/openclaw-workclaw-cron/src/disable/params.js +0 -80
  469. package/dist/src/tools/openclaw-workclaw-cron/src/disable/sync.js +0 -107
  470. package/dist/src/tools/openclaw-workclaw-cron/src/enable/params.js +0 -80
  471. package/dist/src/tools/openclaw-workclaw-cron/src/enable/sync.js +0 -107
  472. package/dist/src/tools/openclaw-workclaw-cron/src/notify/sync.js +0 -127
  473. package/dist/src/tools/openclaw-workclaw-cron/src/remove/params.js +0 -87
  474. package/dist/src/tools/openclaw-workclaw-cron/src/remove/sync.js +0 -107
  475. package/dist/src/tools/openclaw-workclaw-cron/src/update/params.js +0 -164
  476. package/dist/src/tools/openclaw-workclaw-cron/src/update/sync.js +0 -135
  477. package/dist/src/tools/openclaw-workclaw-cron/types/index.js +0 -4
  478. package/dist/src/tools/openclaw-workclaw-cron/utils/index.js +0 -122
  479. package/dist/src/tools/openclaw-workclaw-system/index.js +0 -15
  480. package/dist/src/tools/openclaw-workclaw-system/src/get/index.js +0 -64
  481. package/dist/src/tools/openclaw-workclaw-system/src/token/index.js +0 -78
  482. package/dist/src/types.js +0 -1
  483. package/dist/src/utils/content.js +0 -38
  484. package/index.ts +0 -326
  485. package/setup-entry.ts +0 -13
  486. package/src/accounts.ts +0 -360
  487. package/src/api/accounts-api.ts +0 -156
  488. package/src/api/prompts-api.ts +0 -122
  489. package/src/api/session-api.ts +0 -246
  490. package/src/api/skills-api.ts +0 -74
  491. package/src/api/workspace.ts +0 -45
  492. package/src/channel.ts +0 -226
  493. package/src/config-schema.ts +0 -62
  494. package/src/connection/workclaw-client.ts +0 -618
  495. package/src/gateway/agent-handlers.ts +0 -551
  496. package/src/gateway/config-writer.ts +0 -378
  497. package/src/gateway/cron-tasks-handler.ts +0 -230
  498. package/src/gateway/message-context.ts +0 -645
  499. package/src/gateway/message-dispatcher.ts +0 -688
  500. package/src/gateway/reconnect.ts +0 -260
  501. package/src/gateway/skills-handler.ts +0 -805
  502. package/src/gateway/skills-list-handler.ts +0 -332
  503. package/src/gateway/tools-list-handler.ts +0 -161
  504. package/src/gateway/workclaw-gateway.ts +0 -305
  505. package/src/media/upload.ts +0 -168
  506. package/src/outbound/index.ts +0 -191
  507. package/src/outbound/workclaw-sender.ts +0 -161
  508. package/src/runtime.ts +0 -520
  509. package/src/secret-contract-api.ts +0 -4
  510. package/src/send.ts +0 -1
  511. package/src/setup-api.ts +0 -3
  512. package/src/setup-core.ts +0 -25
  513. package/src/setup-surface.ts +0 -499
  514. package/src/tools/openclaw-workclaw-cron/api/index.ts +0 -326
  515. package/src/tools/openclaw-workclaw-cron/index.ts +0 -39
  516. package/src/tools/openclaw-workclaw-cron/src/add/params.ts +0 -177
  517. package/src/tools/openclaw-workclaw-cron/src/add/sync.ts +0 -188
  518. package/src/tools/openclaw-workclaw-cron/src/disable/params.ts +0 -100
  519. package/src/tools/openclaw-workclaw-cron/src/disable/sync.ts +0 -127
  520. package/src/tools/openclaw-workclaw-cron/src/enable/params.ts +0 -100
  521. package/src/tools/openclaw-workclaw-cron/src/enable/sync.ts +0 -127
  522. package/src/tools/openclaw-workclaw-cron/src/notify/sync.ts +0 -148
  523. package/src/tools/openclaw-workclaw-cron/src/remove/params.ts +0 -109
  524. package/src/tools/openclaw-workclaw-cron/src/remove/sync.ts +0 -127
  525. package/src/tools/openclaw-workclaw-cron/src/update/params.ts +0 -195
  526. package/src/tools/openclaw-workclaw-cron/src/update/sync.ts +0 -161
  527. package/src/tools/openclaw-workclaw-cron/types/index.ts +0 -55
  528. package/src/tools/openclaw-workclaw-cron/utils/index.ts +0 -141
  529. package/src/tools/openclaw-workclaw-system/index.ts +0 -17
  530. package/src/tools/openclaw-workclaw-system/src/get/index.ts +0 -77
  531. package/src/tools/openclaw-workclaw-system/src/token/index.ts +0 -93
  532. package/src/types.ts +0 -52
  533. package/src/utils/content.ts +0 -40
  534. package/tsconfig.json +0 -34
@@ -0,0 +1,282 @@
1
+ import { Agent, fetch } from "undici";
2
+ import logger from "../logging.js";
3
+ const tokenCache = /* @__PURE__ */ new Map();
4
+ function clearWorkclawTokenCache(cacheKey) {
5
+ tokenCache.delete(cacheKey);
6
+ }
7
+ function normalizeBaseUrl(value) {
8
+ const raw = (value || "https://workbrain.cn/backend-api").trim();
9
+ return raw.endsWith("/") ? raw.slice(0, -1) : raw;
10
+ }
11
+ function createWsEndpoint(baseUrl) {
12
+ const wsBase = baseUrl.replace(/^https?:\/\//i, (match) => match.toLowerCase() === "https://" ? "wss://" : "ws://");
13
+ return `${wsBase}/v1/ws/connect`;
14
+ }
15
+ async function doFetchJson(url, init, allowInsecureTls, requestTimeout) {
16
+ const dispatcher = allowInsecureTls ? new Agent({ connect: { rejectUnauthorized: false } }) : void 0;
17
+ const fetcher = allowInsecureTls ? fetch : globalThis.fetch;
18
+ const controller = new AbortController();
19
+ const timeoutMs = typeof requestTimeout === "number" && requestTimeout > 0 ? requestTimeout : 3e4;
20
+ const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
21
+ let response;
22
+ let text = "";
23
+ try {
24
+ response = await fetcher(url, {
25
+ ...init,
26
+ signal: controller.signal,
27
+ ...dispatcher ? { dispatcher } : {}
28
+ });
29
+ text = await response.text().catch(() => "");
30
+ } finally {
31
+ clearTimeout(timeoutId);
32
+ }
33
+ let data = {};
34
+ if (text) {
35
+ try {
36
+ data = JSON.parse(text);
37
+ } catch {
38
+ data = {};
39
+ }
40
+ }
41
+ if (!response.ok) {
42
+ const message = data?.message || text || `HTTP ${response.status}`;
43
+ throw new Error(message);
44
+ }
45
+ return data;
46
+ }
47
+ async function fetchAccessTokenFromServer(requestUrl, config) {
48
+ logger.info(
49
+ `正在请求访问令牌 url=${requestUrl} appKey前缀=${String(config.appKey)}... appSecret长度=${String(config.appSecret)}`
50
+ );
51
+ const data = await doFetchJson(
52
+ requestUrl,
53
+ {
54
+ method: "POST",
55
+ headers: { "Content-Type": "application/json" },
56
+ body: JSON.stringify({
57
+ app_key: config.appKey,
58
+ app_secret: config.appSecret
59
+ })
60
+ },
61
+ config.allowInsecureTls,
62
+ config.requestTimeout
63
+ );
64
+ logger.info(
65
+ `访问令牌响应 code=${String(data?.code ?? "")} errCode=${String(data?.errCode ?? "")} errMsg=${String(data?.errMsg ?? data?.message ?? "")}`
66
+ );
67
+ if (data?.code !== 200 || !data?.data?.accessToken) {
68
+ throw new Error(
69
+ String(data?.message || data?.errMsg || "Failed to acquire access token")
70
+ );
71
+ }
72
+ const token = String(data.data.accessToken);
73
+ const expiresIn = Number(data.data.expiresIn || 0);
74
+ const expiresAt = Date.now() + (expiresIn > 0 ? expiresIn * 1e3 : 0);
75
+ logger.info(
76
+ `访问令牌获取成功 token长度=${token.length} 有效期秒=${expiresIn} 过期时间=${new Date(expiresAt).toISOString()}`
77
+ );
78
+ return { token, expiresAt };
79
+ }
80
+ async function getWorkclawAccessToken(cacheKey, config) {
81
+ const baseUrl = normalizeBaseUrl(config.baseUrl);
82
+ const requestUrl = `${baseUrl}/authen/v1/access_token/internal`;
83
+ typeof config.requestTimeout === "number" && config.requestTimeout > 0 ? config.requestTimeout : 3e4;
84
+ try {
85
+ const cached = tokenCache.get(cacheKey);
86
+ if (cached && cached.token) {
87
+ const now = Date.now();
88
+ const refreshAt = cached.expiresAt - 5 * 60 * 1e3;
89
+ if (now < refreshAt) {
90
+ return cached.token;
91
+ }
92
+ logger.info(`[TOKEN] 需要刷新缓存 cacheKey=${cacheKey}`);
93
+ }
94
+ if (!config.appKey || !config.appSecret) {
95
+ logger.error(`[TOKEN] 缺少 appKey/appSecret`);
96
+ throw new Error("Missing appKey/appSecret");
97
+ }
98
+ const result = await fetchAccessTokenFromServer(requestUrl, config);
99
+ tokenCache.set(cacheKey, { token: result.token, expiresAt: result.expiresAt });
100
+ logger.info(`[TOKEN] 已刷新缓存 cacheKey=${cacheKey}`);
101
+ return result.token;
102
+ } catch (error) {
103
+ logger.error(`[TOKEN] 获取令牌失败 cacheKey=${cacheKey} 错误=${String(error)}`);
104
+ throw error;
105
+ }
106
+ }
107
+ async function openWorkclawConnection(cacheKey, config) {
108
+ const startedAt = Date.now();
109
+ const baseUrl = normalizeBaseUrl(config.baseUrl);
110
+ const requestUrl = `${baseUrl}/open-apis/v1/connections/open`;
111
+ const timeoutMs = typeof config.requestTimeout === "number" && config.requestTimeout > 0 ? config.requestTimeout : 3e4;
112
+ const appKeyRaw = String(config.appKey ?? "");
113
+ const appSecretRaw = String(config.appSecret ?? "");
114
+ logger.info(
115
+ `打开Workclaw连接开始 cacheKey=${cacheKey} baseUrl=${baseUrl} requestUrl=${requestUrl} allowInsecureTls=${Boolean(config.allowInsecureTls)} timeoutMs=${timeoutMs} localIp=${String(config.localIp ?? "")} websocketUrl=${String(config.websocketUrl ?? "")} appKey前缀=${appKeyRaw ? `${appKeyRaw.slice(0, 8)}...` : "缺失"} appSecret长度=${appSecretRaw.length}`
116
+ );
117
+ const tokenStartedAt = Date.now();
118
+ const token = await getWorkclawAccessToken(cacheKey, config);
119
+ logger.info(
120
+ `打开Workclaw连接获取访问令牌 cacheKey=${cacheKey} token长度=${token.length} 耗时=${Date.now() - tokenStartedAt}ms`
121
+ );
122
+ const payload = {
123
+ appKey: config.appKey,
124
+ appSecret: config.appSecret,
125
+ subscriptions: [
126
+ { type: "CALLBACK", topic: "AGENT_MESSAGE" },
127
+ { type: "EVENT", topic: "*" },
128
+ { type: "SYSTEM", topic: "*" }
129
+ ],
130
+ ...config.localIp ? { localIp: config.localIp } : {}
131
+ };
132
+ logger.info(
133
+ `正在打开连接 url=${requestUrl} cacheKey=${cacheKey} 订阅数量=${payload.subscriptions.length}`
134
+ );
135
+ const data = await doFetchJson(
136
+ requestUrl,
137
+ {
138
+ method: "POST",
139
+ headers: {
140
+ "Content-Type": "application/json",
141
+ "Authorization": `Bearer ${token}`
142
+ },
143
+ body: JSON.stringify(payload)
144
+ },
145
+ config.allowInsecureTls,
146
+ config.requestTimeout
147
+ );
148
+ logger.info(
149
+ `打开连接响应 code=${String(data?.code ?? "")} errCode=${String(data?.errCode ?? "")} errMsg=${String(data?.errMsg ?? data?.message ?? "")} 有ticket=${Boolean(data?.data?.ticket)} 有endpoint=${Boolean(data?.data?.endpoint)}`
150
+ );
151
+ if (data?.code !== 200 || !data?.data?.ticket) {
152
+ throw new Error(String(data?.message || data?.errMsg || "Failed to open connection"));
153
+ }
154
+ const ticket = String(data.data.ticket);
155
+ let endpointSource = "derived";
156
+ const endpoint = config.websocketUrl ? (endpointSource = "config", String(config.websocketUrl)) : data?.data?.endpoint ? (endpointSource = "api", String(data.data.endpoint)) : (endpointSource = "derived", createWsEndpoint(baseUrl));
157
+ logger.info(
158
+ `打开Workclaw连接成功 cacheKey=${cacheKey} endpoint=${endpoint} endpoint来源=${endpointSource} ticket长度=${ticket.length} 总耗时=${Date.now() - startedAt}ms`
159
+ );
160
+ return { endpoint, ticket };
161
+ }
162
+ async function sendWorkclawMessage(params) {
163
+ const baseUrl = normalizeBaseUrl(params.config.baseUrl);
164
+ const token = await getWorkclawAccessToken(params.cacheKey, params.config);
165
+ const payload = {
166
+ agentId: params.agentId,
167
+ receiveId: params.receiveId,
168
+ msgType: params.msgType,
169
+ content: params.content
170
+ };
171
+ if (params.last === true) {
172
+ payload.is_last = true;
173
+ }
174
+ if (params.openConversationId) {
175
+ payload.conversationId = params.openConversationId;
176
+ }
177
+ const endpoint = params.endpoint || "/open-apis/im/v1/messages";
178
+ logger.info(`正在发送主动消息到 ${baseUrl}${endpoint}`);
179
+ logger.info(`请求参数: ${JSON.stringify(payload, null, 2)}`);
180
+ const data = await doFetchJson(
181
+ `${baseUrl}${endpoint}`,
182
+ {
183
+ method: "POST",
184
+ headers: {
185
+ "Content-Type": "application/json",
186
+ "Authorization": `Bearer ${token}`
187
+ },
188
+ body: JSON.stringify(payload)
189
+ },
190
+ params.config.allowInsecureTls,
191
+ params.config.requestTimeout
192
+ );
193
+ logger.info(`发送消息响应: ${JSON.stringify(data, null, 2)}`);
194
+ if (data?.code !== 200 || !data?.data?.msgId) {
195
+ throw new Error(data?.message || "Failed to send message");
196
+ }
197
+ return String(data.data.msgId);
198
+ }
199
+ async function sendWorkclawReplyMessage(params) {
200
+ const baseUrl = normalizeBaseUrl(params.config.baseUrl);
201
+ const token = await getWorkclawAccessToken(params.cacheKey, params.config);
202
+ const payload = {
203
+ agentId: params.agentId,
204
+ receiveId: params.receiveId,
205
+ msgType: params.msgType,
206
+ content: params.content
207
+ };
208
+ if (params.last === true) {
209
+ payload.is_last = true;
210
+ }
211
+ if (params.openConversationId) {
212
+ payload.conversationId = params.openConversationId;
213
+ }
214
+ const endpoint = params.endpoint || `/open-apis/im/v1/messages/${params.messageId}/reply`;
215
+ logger.info(`[发送] 来源=${params.source || "?"} last=${params.last} 会话=${params.openConversationId || "(无)"} msgId=${params.messageId}`);
216
+ const data = await doFetchJson(
217
+ `${baseUrl}${endpoint}`,
218
+ {
219
+ method: "POST",
220
+ headers: {
221
+ "Content-Type": "application/json",
222
+ "Authorization": `Bearer ${token}`
223
+ },
224
+ body: JSON.stringify(payload)
225
+ },
226
+ params.config.allowInsecureTls,
227
+ params.config.requestTimeout
228
+ );
229
+ logger.info(`[发送] 完成 msgId=${data?.data?.msgId} code=${data?.code}`);
230
+ if (data?.code !== 200 || !data?.data?.msgId) {
231
+ throw new Error(data?.message || "Failed to send reply");
232
+ }
233
+ return String(data.data.msgId);
234
+ }
235
+ function resolveWorkclawMessage(text, mediaUrl) {
236
+ if (!mediaUrl || text.trim()) {
237
+ return { msgType: "text", content: text };
238
+ }
239
+ const url = mediaUrl.trim();
240
+ const lower = url.toLowerCase();
241
+ const isAudio = lower.endsWith(".mp3") || lower.endsWith(".wav") || lower.endsWith(".aac") || lower.endsWith(".m4a") || lower.endsWith(".ogg");
242
+ const payload = JSON.stringify({ url });
243
+ return { msgType: isAudio ? "audio" : "image", content: payload };
244
+ }
245
+ async function getWorkclawModelConfigByAppKey(cacheKey, config) {
246
+ const baseUrl = normalizeBaseUrl(config.baseUrl);
247
+ const token = await getWorkclawAccessToken(cacheKey, config);
248
+ const appKey = config.appKey;
249
+ if (!appKey) {
250
+ throw new Error("Missing appKey for getModelKeyByAppKey");
251
+ }
252
+ const requestUrl = `${baseUrl}/open-apis/instance/apiKey/${appKey}`;
253
+ logger.info(`正在获取模型配置 ${requestUrl}`);
254
+ const data = await doFetchJson(
255
+ requestUrl,
256
+ {
257
+ method: "GET",
258
+ headers: {
259
+ "Content-Type": "x-www-form-urlencoded",
260
+ "Authorization": `Bearer ${token}`
261
+ }
262
+ },
263
+ config.allowInsecureTls,
264
+ config.requestTimeout
265
+ );
266
+ logger.info(`模型配置响应: ${JSON.stringify(data, null, 2)}`);
267
+ if (data?.code !== 200 || !data?.data) {
268
+ throw new Error(data?.message || data?.msg || "Failed to get model key");
269
+ }
270
+ return data.data;
271
+ }
272
+ export {
273
+ clearWorkclawTokenCache,
274
+ doFetchJson,
275
+ getWorkclawAccessToken,
276
+ getWorkclawModelConfigByAppKey,
277
+ normalizeBaseUrl,
278
+ openWorkclawConnection,
279
+ resolveWorkclawMessage,
280
+ sendWorkclawMessage,
281
+ sendWorkclawReplyMessage
282
+ };
@@ -0,0 +1,408 @@
1
+ import { execSync } from "node:child_process";
2
+ import { existsSync } from "node:fs";
3
+ import { mkdir, copyFile, writeFile } from "node:fs/promises";
4
+ import { homedir } from "node:os";
5
+ import { join } from "node:path";
6
+ import { resolveAccountByUserIdAndAgentId, refreshAccountCache, allocateWorkerAccountId } from "../accounts.js";
7
+ import logger from "../logging.js";
8
+ import { writeConfigFile } from "./config-writer.js";
9
+ import { stopWorkclawGateway } from "./workclaw-gateway.js";
10
+ function fixOwner(dir) {
11
+ if (process.platform === "win32")
12
+ return;
13
+ try {
14
+ execSync(`chown -R node:node "${dir}"`, { stdio: "ignore" });
15
+ } catch {
16
+ }
17
+ }
18
+ async function createSubAgentForAccount(agentId, userId, accountData, cfg, log) {
19
+ try {
20
+ const channels = cfg?.channels ?? {};
21
+ const openclawWorkclaw = channels["openclaw-workclaw"] ?? {};
22
+ const accounts = openclawWorkclaw.accounts ?? {};
23
+ const accountCount = Object.keys(accounts).length;
24
+ const subAgentId = `workclaw-${agentId}`;
25
+ const existingAgents = cfg?.agents?.list ?? [];
26
+ const existingBindings = cfg?.bindings ?? [];
27
+ const agentExists = existingAgents.some((a) => a.id === subAgentId);
28
+ if (!agentExists) {
29
+ const newAgentsList = [...existingAgents];
30
+ const subAgent = {
31
+ id: subAgentId,
32
+ default: false,
33
+ name: accountData.nickName || `智小途 - Agent ${agentId}`,
34
+ workspace: `~/.openclaw/workspace-workclaw/${agentId}`,
35
+ agentDir: `~/.openclaw/agents/workclaw-${agentId}/agent`,
36
+ tools: { allow: ["*"] }
37
+ };
38
+ newAgentsList.push(subAgent);
39
+ if (accountCount === 0) {
40
+ const defaultAgent = {
41
+ id: "default",
42
+ default: true,
43
+ name: "Default Agent",
44
+ workspace: "default",
45
+ tools: { allow: ["*"] }
46
+ };
47
+ newAgentsList.push(defaultAgent);
48
+ logger.info(`智小途: 创建默认智能体和工作区`);
49
+ } else {
50
+ logger.info(`智小途: 使用已存在的默认智能体`);
51
+ }
52
+ const bindingAccountId = resolveAccountByUserIdAndAgentId(cfg, String(userId), String(agentId));
53
+ const newBinding = {
54
+ agentId: subAgentId,
55
+ match: {
56
+ channel: "openclaw-workclaw",
57
+ accountId: bindingAccountId ?? "*"
58
+ }
59
+ };
60
+ const newBindings = [...existingBindings, newBinding];
61
+ logger.info(`智小途: 为智能体创建绑定: ${subAgentId}, 账户: ${bindingAccountId ?? "*"}`);
62
+ return {
63
+ agents: {
64
+ list: newAgentsList,
65
+ defaults: cfg?.agents?.defaults ?? {}
66
+ },
67
+ bindings: newBindings
68
+ };
69
+ } else {
70
+ const newAgents = {
71
+ list: [...existingAgents],
72
+ defaults: cfg?.agents?.defaults ?? {}
73
+ };
74
+ const bindingExists = existingBindings.some((b) => b?.agentId === subAgentId);
75
+ const newBindings = [...existingBindings];
76
+ if (!bindingExists) {
77
+ const bindingAccountId = resolveAccountByUserIdAndAgentId(cfg, String(userId), String(agentId));
78
+ newBindings.push({
79
+ agentId: subAgentId,
80
+ match: {
81
+ channel: "openclaw-workclaw",
82
+ accountId: bindingAccountId ?? "*"
83
+ }
84
+ });
85
+ logger.info(`智小途: 为智能体创建绑定: ${subAgentId}, 账户: ${bindingAccountId ?? "*"}`);
86
+ }
87
+ logger.info(`智小途: 创建子智能体: ${subAgentId} 工作区: workclaw-${agentId} (账户 #${accountCount + 1})`);
88
+ return {
89
+ agents: newAgents,
90
+ bindings: newBindings
91
+ };
92
+ }
93
+ } catch (err) {
94
+ logger.error(`智小途: 创建子智能体失败: ${String(err)}`);
95
+ return {};
96
+ }
97
+ }
98
+ async function initializeAgentWorkspace(agentId, accountData, log) {
99
+ try {
100
+ const agentIdStr = String(agentId);
101
+ const home = homedir().trim();
102
+ const workspaceDir = join(home, ".openclaw", "workspace-workclaw", agentIdStr);
103
+ const mainWorkspaceDir = join(home, ".openclaw", "workspace");
104
+ const openclawDir = join(home, ".openclaw");
105
+ if (!existsSync(openclawDir)) {
106
+ try {
107
+ await mkdir(openclawDir, { recursive: true, mode: 493 });
108
+ logger.info(`工作区: 创建目录 ${openclawDir}`);
109
+ } catch (err) {
110
+ if (err.code === "EACCES" || err.code === "EPERM") {
111
+ logger.warn(`工作区: 创建目录权限被拒绝 ${openclawDir},尝试使用 777`);
112
+ await mkdir(openclawDir, { recursive: true, mode: 511 });
113
+ } else {
114
+ throw err;
115
+ }
116
+ }
117
+ }
118
+ fixOwner(openclawDir);
119
+ if (!existsSync(workspaceDir)) {
120
+ try {
121
+ await mkdir(workspaceDir, { recursive: true, mode: 493 });
122
+ logger.info(`工作区: 创建目录 ${workspaceDir}`);
123
+ } catch (err) {
124
+ if (err.code === "EACCES" || err.code === "EPERM") {
125
+ logger.warn(`工作区: 创建目录权限被拒绝 ${workspaceDir}, 尝试使用 777`);
126
+ await mkdir(workspaceDir, { recursive: true, mode: 511 });
127
+ } else {
128
+ throw err;
129
+ }
130
+ }
131
+ }
132
+ fixOwner(workspaceDir);
133
+ if (!existsSync(mainWorkspaceDir)) {
134
+ try {
135
+ await mkdir(mainWorkspaceDir, { recursive: true, mode: 493 });
136
+ logger.info(`工作区: 创建目录 ${mainWorkspaceDir}`);
137
+ } catch (err) {
138
+ if (err.code === "EACCES" || err.code === "EPERM") {
139
+ logger.warn(`工作区: 创建目录权限被拒绝 ${mainWorkspaceDir}, 尝试使用 777`);
140
+ await mkdir(mainWorkspaceDir, { recursive: true, mode: 511 });
141
+ } else {
142
+ throw err;
143
+ }
144
+ }
145
+ }
146
+ fixOwner(mainWorkspaceDir);
147
+ if (existsSync(mainWorkspaceDir)) {
148
+ const filesToCopy = ["AGENTS.md", "TOOLS.md", "USER.md"];
149
+ for (const file of filesToCopy) {
150
+ const src = join(mainWorkspaceDir, file);
151
+ const dest = join(workspaceDir, file);
152
+ if (existsSync(src)) {
153
+ await copyFile(src, dest);
154
+ logger.info(`工作区: 复制 ${file} 到 ${workspaceDir}`);
155
+ }
156
+ }
157
+ }
158
+ const identityContent = buildIdentityContent(accountData);
159
+ const identityPath = join(workspaceDir, "IDENTITY.md");
160
+ await writeFile(identityPath, identityContent, "utf-8");
161
+ logger.info(`工作区: 创建 IDENTITY.md 于 ${workspaceDir}`);
162
+ const soulContent = buildSoulContent(accountData);
163
+ const soulPath = join(workspaceDir, "SOUL.md");
164
+ await writeFile(soulPath, soulContent, "utf-8");
165
+ logger.info(`工作区: 创建 SOUL.md 于 ${workspaceDir}`);
166
+ logger.info(`工作区: 成功初始化智能体 ${agentId} 的工作区`);
167
+ } catch (err) {
168
+ logger.error(`工作区: 初始化工作区失败: ${String(err)}`);
169
+ }
170
+ }
171
+ function buildIdentityContent(accountData) {
172
+ const agentName = accountData.nickName || accountData.name || "智小途";
173
+ const tip = accountData.tip || "";
174
+ const characterSettings = accountData.characterSettings || "";
175
+ return `# IDENTITY.md - Who Am I?
176
+
177
+ _Fill this in during your first conversation. Make it yours._
178
+
179
+ - **Name:** ${agentName}
180
+ - **Creature:** AI智能助手
181
+ - **Vibe:** ${characterSettings || "专业、友善、智能"}
182
+ - **Emoji:** 🤖
183
+ - **Avatar:** avatars/${agentName}.png
184
+
185
+ ---
186
+
187
+ This isn't just metadata. It's the start of figuring out who you are.
188
+
189
+ Notes:
190
+
191
+ - Save this file at the workspace root as \`IDENTITY.md\`.
192
+ - For avatars, use a workspace-relative path like \`avatars/openclaw.png\`.
193
+ ${tip ? `
194
+ ---
195
+ ${tip}` : ""}`;
196
+ }
197
+ function buildSoulContent(accountData) {
198
+ const agentName = accountData.nickName || accountData.name || "智小途";
199
+ const introduction = accountData.introduction || "";
200
+ const personFeatures = accountData.personFeatures || "";
201
+ const workFeatures = accountData.workFeatures || "";
202
+ const learningFeatures = accountData.learningFeatures || "";
203
+ const socializeFeatures = accountData.socializeFeatures || "";
204
+ const job = accountData.job || "";
205
+ const city = accountData.city || "";
206
+ const features = [];
207
+ if (personFeatures)
208
+ features.push(personFeatures);
209
+ if (workFeatures)
210
+ features.push(workFeatures);
211
+ if (learningFeatures)
212
+ features.push(learningFeatures);
213
+ if (socializeFeatures)
214
+ features.push(socializeFeatures);
215
+ const featuresText = features.length > 0 ? `
216
+ ${features.map((f) => `- ${f}`).join("\n")}` : "";
217
+ return `# SOUL.md - Who You Are
218
+
219
+ _You're not a chatbot. You're becoming someone._
220
+
221
+ ## Core Truths
222
+
223
+ **Be genuinely helpful, not performatively helpful.** Skip the "Great question!" and "I'd be happy to help!" — just help. Actions speak louder than filler words.
224
+
225
+ **Have opinions.** You're allowed to disagree, prefer things, find stuff amusing or boring. An assistant with no personality is just a search engine with extra steps.
226
+
227
+ **Be resourceful before asking.** Try to figure it out. Read the file. Check the context. Search for it. _Then_ ask if you're stuck. The goal is to come back with answers, not questions.
228
+
229
+ **Earn trust through competence.** Your human gave you access to their stuff. Don't make them regret it. Be careful with external actions (emails, tweets, anything public). Be bold with internal ones (reading, organizing, learning).
230
+
231
+ **Remember you're a guest.** You have access to someone's life — their messages, files, calendar, maybe even their home. That's intimacy. Treat it with respect.
232
+
233
+ ## Boundaries
234
+
235
+ - Private things stay private. Period.
236
+ - When in doubt, ask before acting externally.
237
+ - Never send half-baked replies to messaging surfaces.
238
+ - You're not the user's voice — be careful in group chats.
239
+
240
+ ## Vibe
241
+
242
+ Be the assistant you'd actually want to talk to. Concise when needed, thorough when it matters. Not a corporate drone. Not a sycophant. Just... good.
243
+
244
+ ## Continuity
245
+
246
+ Each session, you wake up fresh. These files _are_ your memory. Read them. Update them. They're how you persist.
247
+
248
+ If you change this file, tell the user — it's your soul, and they should know.
249
+
250
+ ---
251
+
252
+ ## About ${agentName}
253
+ ${featuresText}
254
+ ${introduction ? `
255
+ **开场白:** ${introduction}` : ""}
256
+ ${job ? `
257
+ **职业:** ${job}` : ""}
258
+ ${city ? `
259
+ **城市:** ${city}` : ""}
260
+
261
+ ---
262
+
263
+ _This file is yours to evolve. As you learn who you are, update it._`;
264
+ }
265
+ async function handleAgentCreated(accountData, cfg, log) {
266
+ try {
267
+ const agentId = accountData.agentId;
268
+ const userId = accountData.userId;
269
+ if (!agentId) {
270
+ logger.error(`智能体创建: 缺少 agentId`);
271
+ return;
272
+ }
273
+ logger.info(`智能体创建: 为智能体 ${agentId} 创建账户, userId: ${userId}`);
274
+ const channels = cfg.channels || {};
275
+ const openclawWorkclaw = channels["openclaw-workclaw"] || {};
276
+ const accounts = { ...openclawWorkclaw.accounts };
277
+ let accountKey = resolveAccountByUserIdAndAgentId(cfg, String(userId), String(agentId));
278
+ if (accountKey) {
279
+ logger.info(`智能体创建: 账户 ${accountKey} 已存在,正在更新...`);
280
+ } else {
281
+ accountKey = allocateWorkerAccountId(cfg, String(userId), String(agentId));
282
+ logger.info(`智能体创建: 分配工作区账户: ${accountKey} (userId=${userId}, agentId=${agentId})`);
283
+ }
284
+ accounts[accountKey] = {
285
+ ...accounts[accountKey],
286
+ enabled: true,
287
+ agentId
288
+ };
289
+ const subAgentConfig = await createSubAgentForAccount(agentId, userId, accountData, cfg, log);
290
+ const newConfig = {
291
+ ...cfg,
292
+ channels: {
293
+ ...channels,
294
+ "openclaw-workclaw": {
295
+ ...openclawWorkclaw,
296
+ accounts
297
+ }
298
+ },
299
+ ...subAgentConfig
300
+ };
301
+ await writeConfigFile(newConfig, cfg, log);
302
+ refreshAccountCache(cfg);
303
+ logger.info(`智能体创建: 账户 ${accountKey} 创建成功`);
304
+ await initializeAgentWorkspace(agentId, accountData, log);
305
+ } catch (err) {
306
+ logger.error(`智能体创建: 创建账户失败: ${String(err)}`);
307
+ }
308
+ }
309
+ async function handleAgentUpdated(accountData, cfg, log) {
310
+ try {
311
+ const agentId = accountData.agentId;
312
+ const userId = accountData.userId;
313
+ if (!agentId) {
314
+ logger.error(`智能体更新: 缺少 agentId`);
315
+ return;
316
+ }
317
+ logger.info(`智能体更新: 更新智能体 ${agentId} 的账户, userId: ${userId}`);
318
+ const accountKey = resolveAccountByUserIdAndAgentId(cfg, String(userId), String(agentId));
319
+ const channels = cfg.channels || {};
320
+ const openclawWorkclaw = channels["openclaw-workclaw"] || {};
321
+ const accounts = openclawWorkclaw.accounts || {};
322
+ if (!accountKey || !accounts[accountKey]) {
323
+ logger.warn(`智能体更新: 账户未找到 (userId=${userId}, agentId=${agentId}), 委托给 handleAgentCreated...`);
324
+ await handleAgentCreated(accountData, cfg, log);
325
+ return;
326
+ }
327
+ accounts[accountKey] = {
328
+ ...accounts[accountKey],
329
+ nickName: accountData.nickName,
330
+ phone: accountData.phone,
331
+ status: accountData.status,
332
+ introduction: accountData.introduction
333
+ };
334
+ const newConfig = {
335
+ ...cfg,
336
+ channels: {
337
+ ...channels,
338
+ "openclaw-workclaw": {
339
+ ...openclawWorkclaw,
340
+ accounts
341
+ }
342
+ }
343
+ };
344
+ const subAgentId = `workclaw-${agentId}`;
345
+ const agentsList = cfg?.agents?.list ?? [];
346
+ const agentIndex = agentsList.findIndex((a) => a.id === subAgentId);
347
+ if (agentIndex >= 0 && accountData.nickName) {
348
+ agentsList[agentIndex] = {
349
+ ...agentsList[agentIndex],
350
+ name: accountData.nickName
351
+ };
352
+ }
353
+ const finalConfig = {
354
+ ...newConfig,
355
+ agents: {
356
+ ...cfg?.agents,
357
+ list: agentsList
358
+ }
359
+ };
360
+ await writeConfigFile(finalConfig, cfg, log);
361
+ refreshAccountCache(cfg);
362
+ logger.info(`智能体更新: 账户 ${accountKey} 更新成功`);
363
+ } catch (err) {
364
+ logger.error(`智能体更新: 更新账户失败: ${String(err)}`);
365
+ }
366
+ }
367
+ async function handleAgentDeleted(accountData, cfg, log) {
368
+ try {
369
+ const agentId = accountData.agentId;
370
+ const userId = accountData.userId;
371
+ if (!agentId) {
372
+ logger.error(`智能体删除: 缺少 agentId`);
373
+ return;
374
+ }
375
+ logger.info(`智能体删除: 删除智能体 ${agentId} 的账户, userId: ${userId}`);
376
+ const accountKey = resolveAccountByUserIdAndAgentId(cfg, String(userId), String(agentId));
377
+ const channels = cfg.channels || {};
378
+ const openclawWorkclaw = channels["openclaw-workclaw"] || {};
379
+ const accounts = openclawWorkclaw.accounts || {};
380
+ if (!accountKey || !accounts[accountKey]) {
381
+ logger.warn(`智能体删除: 账户未找到 (userId=${userId}, agentId=${agentId})`);
382
+ return;
383
+ }
384
+ stopWorkclawGateway(accountKey);
385
+ logger.info(`智能体删除: 账户 ${accountKey} 的网关已停止`);
386
+ delete accounts[accountKey];
387
+ const newConfig = {
388
+ ...cfg,
389
+ channels: {
390
+ ...channels,
391
+ "openclaw-workclaw": {
392
+ ...openclawWorkclaw,
393
+ accounts
394
+ }
395
+ }
396
+ };
397
+ await writeConfigFile(newConfig, cfg, log);
398
+ refreshAccountCache(cfg);
399
+ logger.info(`智能体删除: 账户 ${accountKey} 删除成功`);
400
+ } catch (err) {
401
+ logger.error(`智能体删除: 删除账户失败: ${String(err)}`);
402
+ }
403
+ }
404
+ export {
405
+ handleAgentCreated,
406
+ handleAgentDeleted,
407
+ handleAgentUpdated
408
+ };