@openclaw/slack 2026.7.2-beta.3 → 2026.7.2-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (627) hide show
  1. package/README.md +1 -1
  2. package/dist/account-inspect-api.js +1 -1
  3. package/dist/{account-inspect-Bvbtu3iH.js → account-inspect-jn1xLaVi.js} +2 -2
  4. package/dist/account-reply-mode-DrUXogvO.js +14 -0
  5. package/dist/{accounts-DQEbYKh9.js → accounts-BSr252c_.js} +6 -27
  6. package/dist/{accounts.runtime-BIKmJdtJ.js → accounts.runtime-CjULMLTa.js} +1 -1
  7. package/dist/{action-runtime-DqkRwO3Z.js → action-runtime-BO3HK_50.js} +7 -7
  8. package/dist/action-runtime.runtime-DbEcqEXC.js +2 -0
  9. package/dist/{actions-CF0tUY5q.js → actions-BkOaiDSX.js} +6 -6
  10. package/dist/{actions.runtime-hCbx4RXg.js → actions.runtime-Do-iOL51.js} +1 -1
  11. package/dist/api.js +15 -15
  12. package/dist/{approval-handler.runtime-Em8I1-8-.js → approval-handler.runtime-BAnGN7w0.js} +2 -2
  13. package/dist/{channel-4-TRi1D6.js → channel-Cnrlie9S.js} +26 -36
  14. package/dist/channel-config-api.js +1 -1
  15. package/dist/channel-plugin-api.js +1 -1
  16. package/dist/{channel-type-Cu1yjNg2.js → channel-type-CPDX8EV-.js} +4 -4
  17. package/dist/{channel.setup-CgkADtZg.js → channel.setup-DyZdLwUB.js} +6 -25
  18. package/dist/{setup-core-CeiAVwQ3.js → config-adapter-Bb8hn2tM.js} +141 -72
  19. package/dist/{config-schema-XjJGfwQC.js → config-schema-BajbuJGL.js} +229 -30
  20. package/dist/{directory-config-Bv0lcUlH.js → directory-config-CeixfVuC.js} +2 -2
  21. package/dist/directory-contract-api.js +1 -1
  22. package/dist/{directory-live-CzUIB7th.js → directory-live-CUwGPX2d.js} +3 -3
  23. package/dist/doctor-contract-CsGH1Dfc.js +158 -0
  24. package/dist/doctor-contract-api.js +1 -1
  25. package/dist/{group-policy-Bw-65m3V.js → group-policy-CthIXE2T.js} +48 -7
  26. package/dist/{message-tool-api-C2pcf5du.js → message-tool-api-CvKoWYYQ.js} +1 -6
  27. package/dist/message-tool-api.js +1 -1
  28. package/dist/{monitor-CNFeF30h.js → monitor-Cb5ZsOTY.js} +4 -4
  29. package/dist/{outbound-adapter-CVi2uok0.js → outbound-adapter-sGrozuRg.js} +11 -68
  30. package/dist/{pipeline.runtime-CTvokbty.js → pipeline.runtime-mFCCSllA.js} +2173 -1999
  31. package/dist/{policy-b_dOPDCq.js → policy-DVg6FyMP.js} +1 -1
  32. package/dist/{probe-Borhn9PQ.js → probe-BhQTDVBQ.js} +51 -58
  33. package/dist/{provider-B-HVL5ZE.js → provider-PSppCU_K.js} +435 -252
  34. package/dist/{relay-source-Ea_P9VcO.js → relay-source-D0mb_JBk.js} +1 -1
  35. package/dist/{replies-B4bOdrYb.js → replies-BkPPM2Ri.js} +50 -13
  36. package/dist/{resolve-channels-KTc568SU.js → resolve-channels-B3RlJKyV.js} +2 -2
  37. package/dist/{resolve-users-DeGJf1yp.js → resolve-users-DTm7PEMa.js} +2 -2
  38. package/dist/{rolldown-runtime-D7D4PA-g.js → rolldown-runtime-8H4AJuhK.js} +1 -0
  39. package/dist/{runtime-api-BFfNpzDe.js → runtime-api-jpn3vQ7e.js} +3 -2
  40. package/dist/runtime-api.js +11 -11
  41. package/dist/{scopes-lx08L56K.js → scopes-B2SqZ--4.js} +1 -1
  42. package/dist/{security-audit-CikQhBUY.js → security-audit-DR097212.js} +1 -11
  43. package/dist/security-contract-api.js +1 -1
  44. package/dist/{send-KuTDky7i.js → send-2IoDXPeB.js} +8 -22
  45. package/dist/{send.runtime-CXyxws1D.js → send.runtime-BKd_PAEw.js} +1 -1
  46. package/dist/setup-plugin-api.js +1 -1
  47. package/dist/{setup-surface-DLA0vHXp.js → setup-surface-Dyam58nO.js} +47 -39
  48. package/dist/{shared-C4yVB0Q-.js → shared-g55DV75U.js} +16 -37
  49. package/dist/{slash-dispatch.runtime-BT-mMm-f.js → slash-dispatch.runtime-BRQbvn2e.js} +10 -9
  50. package/node_modules/@slack/bolt/dist/App.d.ts +4 -19
  51. package/node_modules/@slack/bolt/dist/App.d.ts.map +1 -1
  52. package/node_modules/@slack/bolt/dist/App.js +21 -40
  53. package/node_modules/@slack/bolt/dist/App.js.map +1 -1
  54. package/node_modules/@slack/bolt/dist/context/create-respond.d.ts +3 -3
  55. package/node_modules/@slack/bolt/dist/context/create-respond.d.ts.map +1 -1
  56. package/node_modules/@slack/bolt/dist/context/create-respond.js +13 -2
  57. package/node_modules/@slack/bolt/dist/context/create-respond.js.map +1 -1
  58. package/node_modules/@slack/bolt/dist/errors.d.ts +6 -8
  59. package/node_modules/@slack/bolt/dist/errors.d.ts.map +1 -1
  60. package/node_modules/@slack/bolt/dist/errors.js +11 -11
  61. package/node_modules/@slack/bolt/dist/errors.js.map +1 -1
  62. package/node_modules/@slack/bolt/dist/helpers.d.ts.map +1 -1
  63. package/node_modules/@slack/bolt/dist/helpers.js +1 -2
  64. package/node_modules/@slack/bolt/dist/helpers.js.map +1 -1
  65. package/node_modules/@slack/bolt/dist/index.d.ts +0 -1
  66. package/node_modules/@slack/bolt/dist/index.d.ts.map +1 -1
  67. package/node_modules/@slack/bolt/dist/index.js +1 -3
  68. package/node_modules/@slack/bolt/dist/index.js.map +1 -1
  69. package/node_modules/@slack/bolt/dist/receivers/AwsLambdaReceiver.d.ts +10 -1
  70. package/node_modules/@slack/bolt/dist/receivers/AwsLambdaReceiver.d.ts.map +1 -1
  71. package/node_modules/@slack/bolt/dist/receivers/AwsLambdaReceiver.js +5 -1
  72. package/node_modules/@slack/bolt/dist/receivers/AwsLambdaReceiver.js.map +1 -1
  73. package/node_modules/@slack/bolt/dist/receivers/HTTPModuleFunctions.d.ts.map +1 -1
  74. package/node_modules/@slack/bolt/dist/receivers/HTTPModuleFunctions.js +10 -14
  75. package/node_modules/@slack/bolt/dist/receivers/HTTPModuleFunctions.js.map +1 -1
  76. package/node_modules/@slack/bolt/dist/receivers/SocketModeFunctions.d.ts.map +1 -1
  77. package/node_modules/@slack/bolt/dist/receivers/SocketModeFunctions.js +1 -1
  78. package/node_modules/@slack/bolt/dist/receivers/SocketModeFunctions.js.map +1 -1
  79. package/node_modules/@slack/bolt/dist/receivers/SocketModeReceiver.d.ts +3 -1
  80. package/node_modules/@slack/bolt/dist/receivers/SocketModeReceiver.d.ts.map +1 -1
  81. package/node_modules/@slack/bolt/dist/receivers/SocketModeReceiver.js +2 -1
  82. package/node_modules/@slack/bolt/dist/receivers/SocketModeReceiver.js.map +1 -1
  83. package/node_modules/@slack/bolt/dist/types/actions/index.d.ts +2 -4
  84. package/node_modules/@slack/bolt/dist/types/actions/index.d.ts.map +1 -1
  85. package/node_modules/@slack/bolt/dist/types/actions/index.js +0 -2
  86. package/node_modules/@slack/bolt/dist/types/actions/index.js.map +1 -1
  87. package/node_modules/@slack/bolt/dist/types/events/index.d.ts +2 -0
  88. package/node_modules/@slack/bolt/dist/types/events/index.d.ts.map +1 -1
  89. package/node_modules/@slack/bolt/dist/types/utilities.d.ts +2 -2
  90. package/node_modules/@slack/bolt/dist/types/utilities.d.ts.map +1 -1
  91. package/node_modules/@slack/bolt/dist/types/view/index.d.ts +1 -31
  92. package/node_modules/@slack/bolt/dist/types/view/index.d.ts.map +1 -1
  93. package/node_modules/@slack/bolt/package.json +10 -11
  94. package/node_modules/@slack/logger/README.md +1 -1
  95. package/node_modules/@slack/logger/dist/index.js +17 -13
  96. package/node_modules/@slack/logger/dist/index.js.map +1 -1
  97. package/node_modules/@slack/logger/package.json +6 -7
  98. package/node_modules/@slack/oauth/README.md +1 -1
  99. package/node_modules/@slack/oauth/dist/errors.d.ts +25 -14
  100. package/node_modules/@slack/oauth/dist/errors.d.ts.map +1 -1
  101. package/node_modules/@slack/oauth/dist/errors.js +24 -33
  102. package/node_modules/@slack/oauth/dist/errors.js.map +1 -1
  103. package/node_modules/@slack/oauth/dist/install-provider.js +58 -16
  104. package/node_modules/@slack/oauth/dist/install-provider.js.map +1 -1
  105. package/node_modules/@slack/oauth/dist/installation-stores/file-store.js +4 -2
  106. package/node_modules/@slack/oauth/dist/installation-stores/file-store.js.map +1 -1
  107. package/node_modules/@slack/oauth/dist/installation-stores/memory-store.js +3 -16
  108. package/node_modules/@slack/oauth/dist/installation-stores/memory-store.js.map +1 -1
  109. package/node_modules/@slack/oauth/dist/state-stores/clear-state-store.js +2 -0
  110. package/node_modules/@slack/oauth/dist/state-stores/clear-state-store.js.map +1 -1
  111. package/node_modules/@slack/oauth/dist/state-stores/file-state-store.js +3 -0
  112. package/node_modules/@slack/oauth/dist/state-stores/file-state-store.js.map +1 -1
  113. package/node_modules/@slack/oauth/package.json +8 -9
  114. package/node_modules/@slack/socket-mode/README.md +1 -1
  115. package/node_modules/@slack/socket-mode/dist/package.json +21 -13
  116. package/node_modules/@slack/socket-mode/dist/src/SlackWebSocket.d.ts +14 -8
  117. package/node_modules/@slack/socket-mode/dist/src/SlackWebSocket.d.ts.map +1 -1
  118. package/node_modules/@slack/socket-mode/dist/src/SlackWebSocket.js +136 -48
  119. package/node_modules/@slack/socket-mode/dist/src/SlackWebSocket.js.map +1 -1
  120. package/node_modules/@slack/socket-mode/dist/src/SocketModeClient.d.ts +12 -6
  121. package/node_modules/@slack/socket-mode/dist/src/SocketModeClient.d.ts.map +1 -1
  122. package/node_modules/@slack/socket-mode/dist/src/SocketModeClient.js +87 -38
  123. package/node_modules/@slack/socket-mode/dist/src/SocketModeClient.js.map +1 -1
  124. package/node_modules/@slack/socket-mode/dist/src/SocketModeOptions.d.ts +31 -1
  125. package/node_modules/@slack/socket-mode/dist/src/SocketModeOptions.d.ts.map +1 -1
  126. package/node_modules/@slack/socket-mode/dist/src/errors.d.ts +31 -37
  127. package/node_modules/@slack/socket-mode/dist/src/errors.d.ts.map +1 -1
  128. package/node_modules/@slack/socket-mode/dist/src/errors.js +43 -47
  129. package/node_modules/@slack/socket-mode/dist/src/errors.js.map +1 -1
  130. package/node_modules/@slack/socket-mode/dist/src/index.d.ts +2 -2
  131. package/node_modules/@slack/socket-mode/dist/src/index.d.ts.map +1 -1
  132. package/node_modules/@slack/socket-mode/dist/src/index.js +7 -1
  133. package/node_modules/@slack/socket-mode/dist/src/index.js.map +1 -1
  134. package/node_modules/@slack/socket-mode/package.json +21 -13
  135. package/node_modules/@slack/types/README.md +1 -1
  136. package/node_modules/@slack/types/dist/events/app.d.ts +28 -0
  137. package/node_modules/@slack/types/dist/events/app.d.ts.map +1 -1
  138. package/node_modules/@slack/types/dist/events/index.d.ts +2 -2
  139. package/node_modules/@slack/types/dist/events/index.d.ts.map +1 -1
  140. package/node_modules/@slack/types/dist/events/index.js.map +1 -1
  141. package/node_modules/@slack/types/dist/events/message.d.ts +2 -0
  142. package/node_modules/@slack/types/dist/events/message.d.ts.map +1 -1
  143. package/node_modules/@slack/types/package.json +3 -3
  144. package/node_modules/@slack/web-api/README.md +1 -1
  145. package/node_modules/@slack/web-api/dist/WebClient.d.ts +42 -71
  146. package/node_modules/@slack/web-api/dist/WebClient.d.ts.map +1 -1
  147. package/node_modules/@slack/web-api/dist/WebClient.js +180 -248
  148. package/node_modules/@slack/web-api/dist/WebClient.js.map +1 -1
  149. package/node_modules/@slack/web-api/dist/chat-stream.js +37 -22
  150. package/node_modules/@slack/web-api/dist/chat-stream.js.map +1 -1
  151. package/node_modules/@slack/web-api/dist/errors.d.ts +32 -51
  152. package/node_modules/@slack/web-api/dist/errors.d.ts.map +1 -1
  153. package/node_modules/@slack/web-api/dist/errors.js +64 -55
  154. package/node_modules/@slack/web-api/dist/errors.js.map +1 -1
  155. package/node_modules/@slack/web-api/dist/file-upload.d.ts +0 -9
  156. package/node_modules/@slack/web-api/dist/file-upload.d.ts.map +1 -1
  157. package/node_modules/@slack/web-api/dist/file-upload.js +41 -46
  158. package/node_modules/@slack/web-api/dist/file-upload.js.map +1 -1
  159. package/node_modules/@slack/web-api/dist/index.d.ts +2 -2
  160. package/node_modules/@slack/web-api/dist/index.d.ts.map +1 -1
  161. package/node_modules/@slack/web-api/dist/index.js +8 -1
  162. package/node_modules/@slack/web-api/dist/index.js.map +1 -1
  163. package/node_modules/@slack/web-api/dist/methods.d.ts +2 -38
  164. package/node_modules/@slack/web-api/dist/methods.d.ts.map +1 -1
  165. package/node_modules/@slack/web-api/dist/methods.js +1347 -1384
  166. package/node_modules/@slack/web-api/dist/methods.js.map +1 -1
  167. package/node_modules/@slack/web-api/dist/types/request/files.d.ts +0 -1
  168. package/node_modules/@slack/web-api/dist/types/request/files.d.ts.map +1 -1
  169. package/node_modules/@slack/web-api/dist/types/request/index.d.ts +3 -3
  170. package/node_modules/@slack/web-api/dist/types/request/index.d.ts.map +1 -1
  171. package/node_modules/@slack/web-api/dist/types/request/manifest.d.ts +66 -1
  172. package/node_modules/@slack/web-api/dist/types/request/manifest.d.ts.map +1 -1
  173. package/node_modules/@slack/web-api/dist/types/request/rtm.d.ts +1 -14
  174. package/node_modules/@slack/web-api/dist/types/request/rtm.d.ts.map +1 -1
  175. package/node_modules/@slack/web-api/dist/types/request/workflows.d.ts +0 -29
  176. package/node_modules/@slack/web-api/dist/types/request/workflows.d.ts.map +1 -1
  177. package/node_modules/@slack/web-api/package.json +6 -10
  178. package/node_modules/@types/node/README.md +1 -1
  179. package/node_modules/@types/node/fs/promises.d.ts +16 -6
  180. package/node_modules/@types/node/package.json +2 -2
  181. package/node_modules/@types/retry/LICENSE +21 -21
  182. package/node_modules/@types/retry/README.md +5 -4
  183. package/node_modules/@types/retry/index.d.ts +20 -13
  184. package/node_modules/@types/retry/package.json +9 -11
  185. package/node_modules/iconv-lite/encodings/sbcs-data.js +2 -0
  186. package/node_modules/iconv-lite/encodings/utf32.js +10 -3
  187. package/node_modules/iconv-lite/package.json +2 -2
  188. package/node_modules/iconv-lite/types/encodings.d.ts +2 -0
  189. package/node_modules/path-to-regexp/Readme.md +3 -3
  190. package/node_modules/path-to-regexp/dist/index.js +135 -158
  191. package/node_modules/path-to-regexp/dist/index.js.map +1 -1
  192. package/node_modules/path-to-regexp/package.json +2 -2
  193. package/node_modules/qs/CHANGELOG.md +11 -0
  194. package/node_modules/qs/dist/qs.js +17 -17
  195. package/node_modules/qs/lib/parse.js +19 -8
  196. package/node_modules/qs/lib/utils.js +47 -8
  197. package/node_modules/qs/package.json +6 -5
  198. package/node_modules/qs/test/parse.js +230 -0
  199. package/node_modules/qs/test/utils.js +194 -0
  200. package/node_modules/typebox/build/compile/validator.d.mts +1 -4
  201. package/node_modules/typebox/build/guard/guard.d.mts +1 -1
  202. package/node_modules/typebox/build/guard/guard.mjs +5 -2
  203. package/node_modules/typebox/build/guard/string.mjs +16 -4
  204. package/node_modules/typebox/build/schema/engine/_functions.mjs +34 -15
  205. package/node_modules/typebox/build/type/action/readonly_object.d.mts +5 -0
  206. package/node_modules/typebox/build/type/action/readonly_object.mjs +8 -0
  207. package/node_modules/typebox/build/typebox.d.mts +1 -1
  208. package/node_modules/typebox/build/typebox.mjs +1 -1
  209. package/node_modules/typebox/package.json +1 -1
  210. package/node_modules/typebox/readme.md +29 -32
  211. package/node_modules/{es-set-tostringtag → undici}/LICENSE +1 -1
  212. package/node_modules/undici/README.md +741 -0
  213. package/node_modules/undici/docs/docs/api/Agent.md +84 -0
  214. package/node_modules/undici/docs/docs/api/BalancedPool.md +99 -0
  215. package/node_modules/undici/docs/docs/api/CacheStorage.md +30 -0
  216. package/node_modules/undici/docs/docs/api/CacheStore.md +164 -0
  217. package/node_modules/undici/docs/docs/api/Client.md +288 -0
  218. package/node_modules/undici/docs/docs/api/ClientStats.md +27 -0
  219. package/node_modules/undici/docs/docs/api/Connector.md +115 -0
  220. package/node_modules/undici/docs/docs/api/ContentType.md +57 -0
  221. package/node_modules/undici/docs/docs/api/Cookies.md +128 -0
  222. package/node_modules/undici/docs/docs/api/Debug.md +62 -0
  223. package/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +315 -0
  224. package/node_modules/undici/docs/docs/api/Dispatcher.md +1392 -0
  225. package/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +159 -0
  226. package/node_modules/undici/docs/docs/api/Errors.md +49 -0
  227. package/node_modules/undici/docs/docs/api/EventSource.md +45 -0
  228. package/node_modules/undici/docs/docs/api/Fetch.md +60 -0
  229. package/node_modules/undici/docs/docs/api/GlobalInstallation.md +139 -0
  230. package/node_modules/undici/docs/docs/api/H2CClient.md +263 -0
  231. package/node_modules/undici/docs/docs/api/MockAgent.md +603 -0
  232. package/node_modules/undici/docs/docs/api/MockCallHistory.md +197 -0
  233. package/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +43 -0
  234. package/node_modules/undici/docs/docs/api/MockClient.md +81 -0
  235. package/node_modules/undici/docs/docs/api/MockErrors.md +12 -0
  236. package/node_modules/undici/docs/docs/api/MockPool.md +555 -0
  237. package/node_modules/undici/docs/docs/api/Pool.md +84 -0
  238. package/node_modules/undici/docs/docs/api/PoolStats.md +35 -0
  239. package/node_modules/undici/docs/docs/api/ProxyAgent.md +229 -0
  240. package/node_modules/undici/docs/docs/api/RedirectHandler.md +93 -0
  241. package/node_modules/undici/docs/docs/api/RetryAgent.md +50 -0
  242. package/node_modules/undici/docs/docs/api/RetryHandler.md +118 -0
  243. package/node_modules/undici/docs/docs/api/RoundRobinPool.md +145 -0
  244. package/node_modules/undici/docs/docs/api/SnapshotAgent.md +616 -0
  245. package/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +275 -0
  246. package/node_modules/undici/docs/docs/api/Util.md +25 -0
  247. package/node_modules/undici/docs/docs/api/WebSocket.md +141 -0
  248. package/node_modules/undici/docs/docs/api/api-lifecycle.md +91 -0
  249. package/node_modules/undici/docs/docs/best-practices/client-certificate.md +64 -0
  250. package/node_modules/undici/docs/docs/best-practices/crawling.md +58 -0
  251. package/node_modules/undici/docs/docs/best-practices/mocking-request.md +190 -0
  252. package/node_modules/undici/docs/docs/best-practices/proxy.md +127 -0
  253. package/node_modules/undici/docs/docs/best-practices/undici-vs-builtin-fetch.md +224 -0
  254. package/node_modules/undici/docs/docs/best-practices/writing-tests.md +63 -0
  255. package/node_modules/undici/index-fetch.js +65 -0
  256. package/node_modules/undici/index.d.ts +3 -0
  257. package/node_modules/undici/index.js +234 -0
  258. package/node_modules/undici/lib/api/abort-signal.js +59 -0
  259. package/node_modules/undici/lib/api/api-connect.js +110 -0
  260. package/node_modules/undici/lib/api/api-pipeline.js +252 -0
  261. package/node_modules/undici/lib/api/api-request.js +214 -0
  262. package/node_modules/undici/lib/api/api-stream.js +209 -0
  263. package/node_modules/undici/lib/api/api-upgrade.js +111 -0
  264. package/node_modules/undici/lib/api/index.js +7 -0
  265. package/node_modules/undici/lib/api/readable.js +580 -0
  266. package/node_modules/undici/lib/cache/memory-cache-store.js +234 -0
  267. package/node_modules/undici/lib/cache/sqlite-cache-store.js +461 -0
  268. package/node_modules/undici/lib/core/connect.js +153 -0
  269. package/node_modules/undici/lib/core/constants.js +143 -0
  270. package/node_modules/undici/lib/core/diagnostics.js +227 -0
  271. package/node_modules/undici/lib/core/errors.js +477 -0
  272. package/node_modules/undici/lib/core/request.js +453 -0
  273. package/node_modules/undici/lib/core/socks5-client.js +422 -0
  274. package/node_modules/undici/lib/core/socks5-utils.js +212 -0
  275. package/node_modules/undici/lib/core/symbols.js +75 -0
  276. package/node_modules/undici/lib/core/tree.js +160 -0
  277. package/node_modules/undici/lib/core/util.js +992 -0
  278. package/node_modules/undici/lib/dispatcher/agent.js +158 -0
  279. package/node_modules/undici/lib/dispatcher/balanced-pool.js +219 -0
  280. package/node_modules/undici/lib/dispatcher/client-h1.js +1722 -0
  281. package/node_modules/undici/lib/dispatcher/client-h2.js +995 -0
  282. package/node_modules/undici/lib/dispatcher/client.js +664 -0
  283. package/node_modules/undici/lib/dispatcher/dispatcher-base.js +184 -0
  284. package/node_modules/undici/lib/dispatcher/dispatcher.js +48 -0
  285. package/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +146 -0
  286. package/node_modules/undici/lib/dispatcher/fixed-queue.js +135 -0
  287. package/node_modules/undici/lib/dispatcher/h2c-client.js +51 -0
  288. package/node_modules/undici/lib/dispatcher/pool-base.js +214 -0
  289. package/node_modules/undici/lib/dispatcher/pool.js +118 -0
  290. package/node_modules/undici/lib/dispatcher/proxy-agent.js +319 -0
  291. package/node_modules/undici/lib/dispatcher/retry-agent.js +35 -0
  292. package/node_modules/undici/lib/dispatcher/round-robin-pool.js +137 -0
  293. package/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +260 -0
  294. package/node_modules/undici/lib/encoding/index.js +33 -0
  295. package/node_modules/undici/lib/global.js +59 -0
  296. package/node_modules/undici/lib/handler/cache-handler.js +578 -0
  297. package/node_modules/undici/lib/handler/cache-revalidation-handler.js +124 -0
  298. package/node_modules/undici/lib/handler/decorator-handler.js +67 -0
  299. package/node_modules/undici/lib/handler/deduplication-handler.js +460 -0
  300. package/node_modules/undici/lib/handler/redirect-handler.js +238 -0
  301. package/node_modules/undici/lib/handler/retry-handler.js +394 -0
  302. package/node_modules/undici/lib/handler/unwrap-handler.js +106 -0
  303. package/node_modules/undici/lib/handler/wrap-handler.js +105 -0
  304. package/node_modules/undici/lib/interceptor/cache.js +495 -0
  305. package/node_modules/undici/lib/interceptor/decompress.js +259 -0
  306. package/node_modules/undici/lib/interceptor/deduplicate.js +117 -0
  307. package/node_modules/undici/lib/interceptor/dns.js +571 -0
  308. package/node_modules/undici/lib/interceptor/dump.js +112 -0
  309. package/node_modules/undici/lib/interceptor/redirect.js +21 -0
  310. package/node_modules/undici/lib/interceptor/response-error.js +95 -0
  311. package/node_modules/undici/lib/interceptor/retry.js +19 -0
  312. package/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  313. package/node_modules/undici/lib/llhttp/constants.d.ts +195 -0
  314. package/node_modules/undici/lib/llhttp/constants.js +531 -0
  315. package/node_modules/undici/lib/llhttp/llhttp-wasm.js +15 -0
  316. package/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +15 -0
  317. package/node_modules/undici/lib/llhttp/utils.d.ts +2 -0
  318. package/node_modules/undici/lib/llhttp/utils.js +12 -0
  319. package/node_modules/undici/lib/mock/mock-agent.js +232 -0
  320. package/node_modules/undici/lib/mock/mock-call-history.js +248 -0
  321. package/node_modules/undici/lib/mock/mock-client.js +68 -0
  322. package/node_modules/undici/lib/mock/mock-errors.js +29 -0
  323. package/node_modules/undici/lib/mock/mock-interceptor.js +209 -0
  324. package/node_modules/undici/lib/mock/mock-pool.js +68 -0
  325. package/node_modules/undici/lib/mock/mock-symbols.js +32 -0
  326. package/node_modules/undici/lib/mock/mock-utils.js +486 -0
  327. package/node_modules/undici/lib/mock/pending-interceptors-formatter.js +43 -0
  328. package/node_modules/undici/lib/mock/snapshot-agent.js +353 -0
  329. package/node_modules/undici/lib/mock/snapshot-recorder.js +588 -0
  330. package/node_modules/undici/lib/mock/snapshot-utils.js +158 -0
  331. package/node_modules/undici/lib/util/cache.js +414 -0
  332. package/node_modules/undici/lib/util/date.js +653 -0
  333. package/node_modules/undici/lib/util/promise.js +28 -0
  334. package/node_modules/undici/lib/util/runtime-features.js +124 -0
  335. package/node_modules/undici/lib/util/stats.js +32 -0
  336. package/node_modules/undici/lib/util/timers.js +425 -0
  337. package/node_modules/undici/lib/web/cache/cache.js +864 -0
  338. package/node_modules/undici/lib/web/cache/cachestorage.js +152 -0
  339. package/node_modules/undici/lib/web/cache/util.js +45 -0
  340. package/node_modules/undici/lib/web/cookies/constants.js +12 -0
  341. package/node_modules/undici/lib/web/cookies/index.js +199 -0
  342. package/node_modules/undici/lib/web/cookies/parse.js +314 -0
  343. package/node_modules/undici/lib/web/cookies/util.js +282 -0
  344. package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +399 -0
  345. package/node_modules/undici/lib/web/eventsource/eventsource.js +501 -0
  346. package/node_modules/undici/lib/web/eventsource/util.js +29 -0
  347. package/node_modules/{has-tostringtag → undici/lib/web/fetch}/LICENSE +1 -1
  348. package/node_modules/undici/lib/web/fetch/body.js +509 -0
  349. package/node_modules/undici/lib/web/fetch/constants.js +131 -0
  350. package/node_modules/undici/lib/web/fetch/data-url.js +596 -0
  351. package/node_modules/undici/lib/web/fetch/formdata-parser.js +586 -0
  352. package/node_modules/undici/lib/web/fetch/formdata.js +259 -0
  353. package/node_modules/undici/lib/web/fetch/global.js +40 -0
  354. package/node_modules/undici/lib/web/fetch/headers.js +719 -0
  355. package/node_modules/undici/lib/web/fetch/index.js +2413 -0
  356. package/node_modules/undici/lib/web/fetch/request.js +1115 -0
  357. package/node_modules/undici/lib/web/fetch/response.js +641 -0
  358. package/node_modules/undici/lib/web/fetch/util.js +1522 -0
  359. package/node_modules/undici/lib/web/infra/index.js +229 -0
  360. package/node_modules/undici/lib/web/subresource-integrity/Readme.md +9 -0
  361. package/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js +307 -0
  362. package/node_modules/undici/lib/web/webidl/index.js +1006 -0
  363. package/node_modules/undici/lib/web/websocket/connection.js +329 -0
  364. package/node_modules/undici/lib/web/websocket/constants.js +126 -0
  365. package/node_modules/undici/lib/web/websocket/events.js +331 -0
  366. package/node_modules/undici/lib/web/websocket/frame.js +133 -0
  367. package/node_modules/undici/lib/web/websocket/permessage-deflate.js +100 -0
  368. package/node_modules/undici/lib/web/websocket/receiver.js +507 -0
  369. package/node_modules/undici/lib/web/websocket/sender.js +109 -0
  370. package/node_modules/undici/lib/web/websocket/stream/websocketerror.js +104 -0
  371. package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +498 -0
  372. package/node_modules/undici/lib/web/websocket/util.js +347 -0
  373. package/node_modules/undici/lib/web/websocket/websocket.js +758 -0
  374. package/node_modules/undici/package.json +152 -0
  375. package/node_modules/undici/scripts/strip-comments.js +10 -0
  376. package/node_modules/undici/types/README.md +6 -0
  377. package/node_modules/undici/types/agent.d.ts +32 -0
  378. package/node_modules/undici/types/api.d.ts +43 -0
  379. package/node_modules/undici/types/balanced-pool.d.ts +30 -0
  380. package/node_modules/undici/types/cache-interceptor.d.ts +179 -0
  381. package/node_modules/undici/types/cache.d.ts +36 -0
  382. package/node_modules/undici/types/client-stats.d.ts +15 -0
  383. package/node_modules/undici/types/client.d.ts +139 -0
  384. package/node_modules/undici/types/connector.d.ts +36 -0
  385. package/node_modules/undici/types/content-type.d.ts +21 -0
  386. package/node_modules/undici/types/cookies.d.ts +30 -0
  387. package/node_modules/undici/types/diagnostics-channel.d.ts +74 -0
  388. package/node_modules/undici/types/dispatcher.d.ts +275 -0
  389. package/node_modules/undici/types/env-http-proxy-agent.d.ts +22 -0
  390. package/node_modules/undici/types/errors.d.ts +177 -0
  391. package/node_modules/undici/types/eventsource.d.ts +66 -0
  392. package/node_modules/undici/types/fetch.d.ts +231 -0
  393. package/node_modules/undici/types/formdata.d.ts +114 -0
  394. package/node_modules/undici/types/global-dispatcher.d.ts +9 -0
  395. package/node_modules/undici/types/global-origin.d.ts +7 -0
  396. package/node_modules/undici/types/h2c-client.d.ts +73 -0
  397. package/node_modules/undici/types/handlers.d.ts +14 -0
  398. package/node_modules/undici/types/header.d.ts +160 -0
  399. package/node_modules/undici/types/index.d.ts +91 -0
  400. package/node_modules/undici/types/interceptors.d.ts +80 -0
  401. package/node_modules/undici/types/mock-agent.d.ts +68 -0
  402. package/node_modules/undici/types/mock-call-history.d.ts +111 -0
  403. package/node_modules/undici/types/mock-client.d.ts +27 -0
  404. package/node_modules/undici/types/mock-errors.d.ts +12 -0
  405. package/node_modules/undici/types/mock-interceptor.d.ts +94 -0
  406. package/node_modules/undici/types/mock-pool.d.ts +27 -0
  407. package/node_modules/undici/types/patch.d.ts +29 -0
  408. package/node_modules/undici/types/pool-stats.d.ts +19 -0
  409. package/node_modules/undici/types/pool.d.ts +41 -0
  410. package/node_modules/undici/types/proxy-agent.d.ts +29 -0
  411. package/node_modules/undici/types/readable.d.ts +68 -0
  412. package/node_modules/undici/types/retry-agent.d.ts +8 -0
  413. package/node_modules/undici/types/retry-handler.d.ts +125 -0
  414. package/node_modules/undici/types/round-robin-pool.d.ts +41 -0
  415. package/node_modules/undici/types/snapshot-agent.d.ts +109 -0
  416. package/node_modules/undici/types/socks5-proxy-agent.d.ts +25 -0
  417. package/node_modules/undici/types/util.d.ts +18 -0
  418. package/node_modules/undici/types/utility.d.ts +7 -0
  419. package/node_modules/undici/types/webidl.d.ts +347 -0
  420. package/node_modules/undici/types/websocket.d.ts +188 -0
  421. package/node_modules/ws/lib/receiver.js +15 -32
  422. package/node_modules/ws/lib/websocket-server.js +4 -4
  423. package/node_modules/ws/lib/websocket.js +4 -4
  424. package/node_modules/ws/package.json +5 -1
  425. package/openclaw.plugin.json +1064 -1243
  426. package/package.json +99 -18
  427. package/dist/action-runtime.runtime-DEWOcFM4.js +0 -2
  428. package/dist/config-api-Df9a1B8C.js +0 -3
  429. package/dist/doctor-contract-DKpe5VBr.js +0 -202
  430. package/dist/interactive-replies-Dm_t2R9S.js +0 -197
  431. package/dist/interactive-replies-api.js +0 -2
  432. package/node_modules/@slack/bolt/dist/WorkflowStep.d.ts +0 -159
  433. package/node_modules/@slack/bolt/dist/WorkflowStep.d.ts.map +0 -1
  434. package/node_modules/@slack/bolt/dist/WorkflowStep.js +0 -217
  435. package/node_modules/@slack/bolt/dist/WorkflowStep.js.map +0 -1
  436. package/node_modules/@slack/bolt/dist/types/actions/workflow-step-edit.d.ts +0 -49
  437. package/node_modules/@slack/bolt/dist/types/actions/workflow-step-edit.d.ts.map +0 -1
  438. package/node_modules/@slack/bolt/dist/types/actions/workflow-step-edit.js +0 -3
  439. package/node_modules/@slack/bolt/dist/types/actions/workflow-step-edit.js.map +0 -1
  440. package/node_modules/@types/ws/LICENSE +0 -21
  441. package/node_modules/@types/ws/README.md +0 -15
  442. package/node_modules/@types/ws/index.d.mts +0 -451
  443. package/node_modules/@types/ws/index.d.ts +0 -445
  444. package/node_modules/@types/ws/package.json +0 -72
  445. package/node_modules/asynckit/LICENSE +0 -21
  446. package/node_modules/asynckit/README.md +0 -233
  447. package/node_modules/asynckit/bench.js +0 -76
  448. package/node_modules/asynckit/index.js +0 -6
  449. package/node_modules/asynckit/lib/abort.js +0 -29
  450. package/node_modules/asynckit/lib/async.js +0 -34
  451. package/node_modules/asynckit/lib/defer.js +0 -26
  452. package/node_modules/asynckit/lib/iterate.js +0 -75
  453. package/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  454. package/node_modules/asynckit/lib/readable_parallel.js +0 -25
  455. package/node_modules/asynckit/lib/readable_serial.js +0 -25
  456. package/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  457. package/node_modules/asynckit/lib/state.js +0 -37
  458. package/node_modules/asynckit/lib/streamify.js +0 -141
  459. package/node_modules/asynckit/lib/terminator.js +0 -29
  460. package/node_modules/asynckit/package.json +0 -63
  461. package/node_modules/asynckit/parallel.js +0 -43
  462. package/node_modules/asynckit/serial.js +0 -17
  463. package/node_modules/asynckit/serialOrdered.js +0 -75
  464. package/node_modules/asynckit/stream.js +0 -21
  465. package/node_modules/axios/CHANGELOG.md +0 -1676
  466. package/node_modules/axios/LICENSE +0 -7
  467. package/node_modules/axios/MIGRATION_GUIDE.md +0 -877
  468. package/node_modules/axios/README.md +0 -2391
  469. package/node_modules/axios/dist/axios.js +0 -4864
  470. package/node_modules/axios/dist/axios.js.map +0 -1
  471. package/node_modules/axios/dist/axios.min.js +0 -5
  472. package/node_modules/axios/dist/axios.min.js.map +0 -1
  473. package/node_modules/axios/dist/browser/axios.cjs +0 -4701
  474. package/node_modules/axios/dist/browser/axios.cjs.map +0 -1
  475. package/node_modules/axios/dist/esm/axios.js +0 -4722
  476. package/node_modules/axios/dist/esm/axios.js.map +0 -1
  477. package/node_modules/axios/dist/esm/axios.min.js +0 -3
  478. package/node_modules/axios/dist/esm/axios.min.js.map +0 -1
  479. package/node_modules/axios/dist/node/axios.cjs +0 -5348
  480. package/node_modules/axios/dist/node/axios.cjs.map +0 -1
  481. package/node_modules/axios/index.d.cts +0 -715
  482. package/node_modules/axios/index.d.ts +0 -734
  483. package/node_modules/axios/index.js +0 -45
  484. package/node_modules/axios/lib/adapters/README.md +0 -36
  485. package/node_modules/axios/lib/adapters/adapters.js +0 -132
  486. package/node_modules/axios/lib/adapters/fetch.js +0 -469
  487. package/node_modules/axios/lib/adapters/http.js +0 -1202
  488. package/node_modules/axios/lib/adapters/xhr.js +0 -226
  489. package/node_modules/axios/lib/axios.js +0 -89
  490. package/node_modules/axios/lib/cancel/CancelToken.js +0 -135
  491. package/node_modules/axios/lib/cancel/CanceledError.js +0 -22
  492. package/node_modules/axios/lib/cancel/isCancel.js +0 -5
  493. package/node_modules/axios/lib/core/Axios.js +0 -281
  494. package/node_modules/axios/lib/core/AxiosError.js +0 -176
  495. package/node_modules/axios/lib/core/AxiosHeaders.js +0 -380
  496. package/node_modules/axios/lib/core/InterceptorManager.js +0 -72
  497. package/node_modules/axios/lib/core/README.md +0 -8
  498. package/node_modules/axios/lib/core/buildFullPath.js +0 -22
  499. package/node_modules/axios/lib/core/dispatchRequest.js +0 -89
  500. package/node_modules/axios/lib/core/mergeConfig.js +0 -124
  501. package/node_modules/axios/lib/core/settle.js +0 -27
  502. package/node_modules/axios/lib/core/transformData.js +0 -28
  503. package/node_modules/axios/lib/defaults/index.js +0 -177
  504. package/node_modules/axios/lib/defaults/transitional.js +0 -8
  505. package/node_modules/axios/lib/env/README.md +0 -3
  506. package/node_modules/axios/lib/env/classes/FormData.js +0 -2
  507. package/node_modules/axios/lib/env/data.js +0 -1
  508. package/node_modules/axios/lib/helpers/AxiosTransformStream.js +0 -156
  509. package/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +0 -61
  510. package/node_modules/axios/lib/helpers/HttpStatusCode.js +0 -77
  511. package/node_modules/axios/lib/helpers/README.md +0 -7
  512. package/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +0 -29
  513. package/node_modules/axios/lib/helpers/bind.js +0 -14
  514. package/node_modules/axios/lib/helpers/buildURL.js +0 -66
  515. package/node_modules/axios/lib/helpers/callbackify.js +0 -18
  516. package/node_modules/axios/lib/helpers/combineURLs.js +0 -15
  517. package/node_modules/axios/lib/helpers/composeSignals.js +0 -56
  518. package/node_modules/axios/lib/helpers/cookies.js +0 -60
  519. package/node_modules/axios/lib/helpers/deprecatedMethod.js +0 -31
  520. package/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js +0 -100
  521. package/node_modules/axios/lib/helpers/formDataToJSON.js +0 -97
  522. package/node_modules/axios/lib/helpers/formDataToStream.js +0 -119
  523. package/node_modules/axios/lib/helpers/fromDataURI.js +0 -53
  524. package/node_modules/axios/lib/helpers/isAbsoluteURL.js +0 -19
  525. package/node_modules/axios/lib/helpers/isAxiosError.js +0 -14
  526. package/node_modules/axios/lib/helpers/isURLSameOrigin.js +0 -16
  527. package/node_modules/axios/lib/helpers/null.js +0 -2
  528. package/node_modules/axios/lib/helpers/parseHeaders.js +0 -69
  529. package/node_modules/axios/lib/helpers/parseProtocol.js +0 -6
  530. package/node_modules/axios/lib/helpers/progressEventReducer.js +0 -51
  531. package/node_modules/axios/lib/helpers/readBlob.js +0 -15
  532. package/node_modules/axios/lib/helpers/resolveConfig.js +0 -106
  533. package/node_modules/axios/lib/helpers/shouldBypassProxy.js +0 -178
  534. package/node_modules/axios/lib/helpers/speedometer.js +0 -55
  535. package/node_modules/axios/lib/helpers/spread.js +0 -28
  536. package/node_modules/axios/lib/helpers/throttle.js +0 -44
  537. package/node_modules/axios/lib/helpers/toFormData.js +0 -249
  538. package/node_modules/axios/lib/helpers/toURLEncodedForm.js +0 -19
  539. package/node_modules/axios/lib/helpers/trackStream.js +0 -89
  540. package/node_modules/axios/lib/helpers/validator.js +0 -112
  541. package/node_modules/axios/lib/platform/browser/classes/Blob.js +0 -3
  542. package/node_modules/axios/lib/platform/browser/classes/FormData.js +0 -3
  543. package/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js +0 -4
  544. package/node_modules/axios/lib/platform/browser/index.js +0 -13
  545. package/node_modules/axios/lib/platform/common/utils.js +0 -52
  546. package/node_modules/axios/lib/platform/index.js +0 -7
  547. package/node_modules/axios/lib/platform/node/classes/FormData.js +0 -3
  548. package/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +0 -4
  549. package/node_modules/axios/lib/platform/node/index.js +0 -37
  550. package/node_modules/axios/lib/utils.js +0 -931
  551. package/node_modules/axios/package.json +0 -183
  552. package/node_modules/combined-stream/License +0 -19
  553. package/node_modules/combined-stream/Readme.md +0 -138
  554. package/node_modules/combined-stream/lib/combined_stream.js +0 -208
  555. package/node_modules/combined-stream/package.json +0 -25
  556. package/node_modules/delayed-stream/.npmignore +0 -1
  557. package/node_modules/delayed-stream/License +0 -19
  558. package/node_modules/delayed-stream/Makefile +0 -7
  559. package/node_modules/delayed-stream/Readme.md +0 -141
  560. package/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  561. package/node_modules/delayed-stream/package.json +0 -27
  562. package/node_modules/es-set-tostringtag/.eslintrc +0 -13
  563. package/node_modules/es-set-tostringtag/.nycrc +0 -9
  564. package/node_modules/es-set-tostringtag/CHANGELOG.md +0 -67
  565. package/node_modules/es-set-tostringtag/README.md +0 -53
  566. package/node_modules/es-set-tostringtag/index.d.ts +0 -10
  567. package/node_modules/es-set-tostringtag/index.js +0 -35
  568. package/node_modules/es-set-tostringtag/package.json +0 -78
  569. package/node_modules/es-set-tostringtag/test/index.js +0 -85
  570. package/node_modules/es-set-tostringtag/tsconfig.json +0 -9
  571. package/node_modules/follow-redirects/LICENSE +0 -18
  572. package/node_modules/follow-redirects/README.md +0 -157
  573. package/node_modules/follow-redirects/debug.js +0 -15
  574. package/node_modules/follow-redirects/http.js +0 -1
  575. package/node_modules/follow-redirects/https.js +0 -1
  576. package/node_modules/follow-redirects/index.js +0 -709
  577. package/node_modules/follow-redirects/package.json +0 -58
  578. package/node_modules/form-data/CHANGELOG.md +0 -669
  579. package/node_modules/form-data/License +0 -19
  580. package/node_modules/form-data/README.md +0 -350
  581. package/node_modules/form-data/index.d.ts +0 -51
  582. package/node_modules/form-data/lib/browser.js +0 -4
  583. package/node_modules/form-data/lib/form_data.js +0 -514
  584. package/node_modules/form-data/lib/populate.js +0 -10
  585. package/node_modules/form-data/node_modules/mime-db/HISTORY.md +0 -507
  586. package/node_modules/form-data/node_modules/mime-db/LICENSE +0 -23
  587. package/node_modules/form-data/node_modules/mime-db/README.md +0 -100
  588. package/node_modules/form-data/node_modules/mime-db/db.json +0 -8519
  589. package/node_modules/form-data/node_modules/mime-db/index.js +0 -12
  590. package/node_modules/form-data/node_modules/mime-db/package.json +0 -60
  591. package/node_modules/form-data/node_modules/mime-types/HISTORY.md +0 -397
  592. package/node_modules/form-data/node_modules/mime-types/LICENSE +0 -23
  593. package/node_modules/form-data/node_modules/mime-types/README.md +0 -113
  594. package/node_modules/form-data/node_modules/mime-types/index.js +0 -188
  595. package/node_modules/form-data/node_modules/mime-types/package.json +0 -44
  596. package/node_modules/form-data/package.json +0 -83
  597. package/node_modules/has-tostringtag/.eslintrc +0 -5
  598. package/node_modules/has-tostringtag/.github/FUNDING.yml +0 -12
  599. package/node_modules/has-tostringtag/.nycrc +0 -13
  600. package/node_modules/has-tostringtag/CHANGELOG.md +0 -42
  601. package/node_modules/has-tostringtag/README.md +0 -46
  602. package/node_modules/has-tostringtag/index.d.ts +0 -3
  603. package/node_modules/has-tostringtag/index.js +0 -8
  604. package/node_modules/has-tostringtag/package.json +0 -108
  605. package/node_modules/has-tostringtag/shams.d.ts +0 -3
  606. package/node_modules/has-tostringtag/shams.js +0 -8
  607. package/node_modules/has-tostringtag/test/index.js +0 -21
  608. package/node_modules/has-tostringtag/test/shams/core-js.js +0 -31
  609. package/node_modules/has-tostringtag/test/shams/get-own-property-symbols.js +0 -30
  610. package/node_modules/has-tostringtag/test/tests.js +0 -15
  611. package/node_modules/has-tostringtag/tsconfig.json +0 -49
  612. package/node_modules/is-electron/LICENSE +0 -21
  613. package/node_modules/is-electron/README.md +0 -25
  614. package/node_modules/is-electron/index.d.ts +0 -2
  615. package/node_modules/is-electron/index.js +0 -21
  616. package/node_modules/is-electron/package.json +0 -34
  617. package/node_modules/is-stream/index.d.ts +0 -79
  618. package/node_modules/is-stream/index.js +0 -28
  619. package/node_modules/is-stream/license +0 -9
  620. package/node_modules/is-stream/package.json +0 -42
  621. package/node_modules/is-stream/readme.md +0 -60
  622. package/node_modules/proxy-from-env/LICENSE +0 -20
  623. package/node_modules/proxy-from-env/README.md +0 -163
  624. package/node_modules/proxy-from-env/index.cjs +0 -105
  625. package/node_modules/proxy-from-env/index.js +0 -103
  626. package/node_modules/proxy-from-env/package.json +0 -43
  627. package/npm-shrinkwrap.json +0 -1440
@@ -1,8 +1,13 @@
1
- import { t as inspectSlackAccount } from "./account-inspect-Bvbtu3iH.js";
1
+ import { a as resolveSlackAccount, c as resolveSlackConfigAccessorAccount, i as resolveDefaultSlackAccountId, n as listSlackAccountIds } from "./accounts-BSr252c_.js";
2
+ import { t as inspectSlackAccount } from "./account-inspect-jn1xLaVi.js";
2
3
  import { t as isSlackPluginAccountConfigured } from "./account-configured-BwfXBo_F.js";
3
4
  import { hasConfiguredSecretInput, normalizeSecretInputString } from "openclaw/plugin-sdk/secret-input";
4
- import { normalizeLowercaseStringOrEmpty, normalizeOptionalString, uniqueStrings } from "openclaw/plugin-sdk/string-coerce-runtime";
5
- import { DEFAULT_ACCOUNT_ID, createAccountScopedAllowFromSection, createAccountScopedGroupAccessSection, createAllowlistSetupWizardProxy, createLegacyCompatChannelDmPolicy, createPatchedAccountSetupAdapter, createSetupTranslator, createStandardChannelSetupStatus, defineTokenCredential, parseMentionOrPrefixedId, patchChannelConfigForAccount, setSetupChannelEnabled } from "openclaw/plugin-sdk/setup-runtime";
5
+ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
6
+ import { adaptScopedAccountAccessor, createScopedChannelConfigAdapter } from "openclaw/plugin-sdk/channel-config-helpers";
7
+ import { formatAllowFromLowercase } from "openclaw/plugin-sdk/allow-from";
8
+ import { createChannelDmPolicy } from "openclaw/plugin-sdk/channel-dm-policy";
9
+ import { defineChannelSetupContract } from "openclaw/plugin-sdk/channel-setup";
10
+ import { DEFAULT_ACCOUNT_ID, createAccountScopedAllowFromSection, createAccountScopedGroupAccessSection, createAllowlistSetupWizardProxy, createPatchedAccountSetupAdapter, createSetupTranslator, createStandardChannelSetupStatus, defineTokenCredential, parseMentionOrPrefixedId, patchChannelConfigForAccount, setSetupChannelEnabled } from "openclaw/plugin-sdk/setup-runtime";
6
11
  import { formatDocsLink } from "openclaw/plugin-sdk/setup-tools";
7
12
  import { describeAccountSnapshot } from "openclaw/plugin-sdk/account-helpers";
8
13
  //#region extensions/slack/src/setup-shared.ts
@@ -24,8 +29,8 @@ function buildSlackManifest(botName = "OpenClaw") {
24
29
  messages_tab_enabled: true,
25
30
  messages_tab_read_only_enabled: false
26
31
  },
27
- assistant_view: {
28
- assistant_description: `${safeName} connects Slack assistant threads to OpenClaw agents.`,
32
+ agent_view: {
33
+ agent_description: `${safeName} connects Slack Agent View conversations to OpenClaw agents.`,
29
34
  suggested_prompts: [
30
35
  {
31
36
  title: "What can you do?",
@@ -77,8 +82,7 @@ function buildSlackManifest(botName = "OpenClaw") {
77
82
  event_subscriptions: { bot_events: [
78
83
  "app_home_opened",
79
84
  "app_mention",
80
- "assistant_thread_context_changed",
81
- "assistant_thread_started",
85
+ "app_context_changed",
82
86
  "channel_rename",
83
87
  "member_joined_channel",
84
88
  "member_left_channel",
@@ -100,8 +104,8 @@ function buildSlackSetupLines() {
100
104
  "1) Slack API -> Create App -> From scratch or From manifest (with the JSON below)",
101
105
  "2) Add Socket Mode + enable it to get the app-level token (xapp-...)",
102
106
  "3) Install App to workspace to get the xoxb- bot token",
103
- "4) Enable Event Subscriptions (socket) for message, App Home, and assistant events",
104
- "5) App Home -> enable the Home tab, Messages tab for DMs, and AI assistant view",
107
+ "4) Enable Event Subscriptions (socket) for message, App Home, and Agent View events",
108
+ "5) App Home -> enable the Home tab, Messages tab for DMs, and Agent View",
105
109
  "Manifest JSON follows as plain text for copy/paste.",
106
110
  "Tip: set SLACK_BOT_TOKEN + SLACK_APP_TOKEN in your env.",
107
111
  `Docs: ${formatDocsLink("/slack", "slack")}`
@@ -157,14 +161,14 @@ function setSlackSetupIdentity(params) {
157
161
  cfg: params.cfg,
158
162
  channel: SLACK_CHANNEL,
159
163
  accountId: params.accountId,
160
- patch: params.identity === "user" ? { identity: "user" } : {}
164
+ patch: params.identity === "user" ? { postAs: "user" } : {}
161
165
  });
162
166
  if (params.identity === "user") return next;
163
167
  const slack = next.channels?.slack;
164
168
  if (!slack) return next;
165
169
  if (params.accountId === DEFAULT_ACCOUNT_ID) {
166
170
  const nextSlack = { ...slack };
167
- delete nextSlack.identity;
171
+ delete nextSlack.postAs;
168
172
  return {
169
173
  ...next,
170
174
  channels: {
@@ -176,8 +180,8 @@ function setSlackSetupIdentity(params) {
176
180
  const account = slack.accounts?.[params.accountId];
177
181
  if (!account) return next;
178
182
  const nextAccount = { ...account };
179
- if (slack.identity === "user") nextAccount.identity = "bot";
180
- else delete nextAccount.identity;
183
+ if (slack.postAs === "user") nextAccount.postAs = "bot";
184
+ else delete nextAccount.postAs;
181
185
  return {
182
186
  ...next,
183
187
  channels: {
@@ -192,30 +196,6 @@ function setSlackSetupIdentity(params) {
192
196
  }
193
197
  };
194
198
  }
195
- function hasSlackInteractiveRepliesConfig(cfg, accountId) {
196
- const capabilities = inspectSlackAccount({
197
- cfg,
198
- accountId
199
- }).config.capabilities;
200
- if (Array.isArray(capabilities)) return capabilities.some((entry) => normalizeLowercaseStringOrEmpty(entry) === "interactivereplies");
201
- if (!capabilities || typeof capabilities !== "object") return false;
202
- return "interactiveReplies" in capabilities;
203
- }
204
- function setSlackInteractiveReplies(cfg, accountId, interactiveReplies) {
205
- const capabilities = inspectSlackAccount({
206
- cfg,
207
- accountId
208
- }).config.capabilities;
209
- return patchChannelConfigForAccount({
210
- cfg,
211
- channel: SLACK_CHANNEL,
212
- accountId,
213
- patch: { capabilities: Array.isArray(capabilities) ? interactiveReplies ? uniqueStrings([...capabilities, "interactiveReplies"]) : capabilities.filter((entry) => normalizeLowercaseStringOrEmpty(entry) !== "interactivereplies") : {
214
- ...capabilities && typeof capabilities === "object" ? capabilities : {},
215
- interactiveReplies
216
- } }
217
- });
218
- }
219
199
  function createSlackTokenCredential(params) {
220
200
  return defineTokenCredential({
221
201
  inputKey: params.inputKey,
@@ -263,53 +243,131 @@ function hasSlackSetupCredentials(params) {
263
243
  const slackSetupAdapterBase = createPatchedAccountSetupAdapter({
264
244
  channelKey: SLACK_CHANNEL,
265
245
  validateInput: ({ cfg, accountId, input }) => {
266
- if (input.useEnv && accountId !== DEFAULT_ACCOUNT_ID) return "Slack env tokens can only be used for the default account.";
246
+ const setupInput = input;
247
+ if (setupInput.useEnv && accountId !== DEFAULT_ACCOUNT_ID) return "Slack env tokens can only be used for the default account.";
267
248
  const account = inspectSlackAccount({
268
249
  cfg,
269
250
  accountId
270
251
  });
271
- const identity = input.identity ?? account.config.identity ?? "bot";
272
- const mode = input.mode ?? account.config.mode ?? "socket";
252
+ const identity = setupInput.identity ?? account.config.postAs ?? "bot";
253
+ const mode = setupInput.mode ?? account.config.mode ?? "socket";
273
254
  if (identity === "user" && mode === "relay") return "Slack user identity setup supports mode \"socket\" or \"http\", not \"relay\".";
274
- if (input.useEnv) return identity === "user" ? "Slack user identity setup does not support --use-env; configure userToken and the transport credential explicitly." : null;
255
+ if (setupInput.useEnv) return identity === "user" ? "Slack user identity setup does not support --use-env; configure userToken and the transport credential explicitly." : null;
275
256
  if (hasSlackSetupCredentials({
276
- input,
257
+ input: setupInput,
277
258
  identity,
278
259
  mode
279
260
  })) return null;
280
261
  if (identity === "user") return mode === "http" ? "Slack user identity requires --user-token and --signing-secret." : "Slack user identity requires --user-token and --app-token.";
281
262
  return "Slack requires --bot-token and --app-token (or --use-env).";
282
263
  },
283
- buildPatch: (input) => ({
284
- ...input.identity ? { identity: input.identity } : {},
285
- ...input.identity === "user" && input.mode ? { mode: input.mode } : {},
286
- ...input.botToken ? { botToken: input.botToken } : {},
287
- ...input.appToken ? { appToken: input.appToken } : {},
288
- ...input.userToken ? { userToken: input.userToken } : {},
289
- ...input.signingSecret ? { signingSecret: input.signingSecret } : {}
290
- })
264
+ buildPatch: (input) => {
265
+ const setupInput = input;
266
+ return {
267
+ ...setupInput.identity ? { postAs: setupInput.identity } : {},
268
+ ...setupInput.identity === "user" && setupInput.mode ? { mode: setupInput.mode } : {},
269
+ ...setupInput.botToken ? { botToken: setupInput.botToken } : {},
270
+ ...setupInput.appToken ? { appToken: setupInput.appToken } : {},
271
+ ...setupInput.userToken ? { userToken: setupInput.userToken } : {},
272
+ ...setupInput.signingSecret ? { signingSecret: setupInput.signingSecret } : {}
273
+ };
274
+ }
291
275
  });
292
276
  const slackSetupAdapter = {
293
277
  ...slackSetupAdapterBase,
278
+ singleAccountKeysToMove: ["appToken"],
294
279
  applyAccountConfig: ({ cfg, accountId, input }) => {
295
- const identity = input.identity ?? inspectSlackAccount({
280
+ const setupInput = input;
281
+ const identity = setupInput.identity ?? inspectSlackAccount({
296
282
  cfg,
297
283
  accountId
298
- }).config.identity;
284
+ }).config.postAs;
299
285
  return slackSetupAdapterBase.applyAccountConfig({
300
286
  cfg,
301
287
  accountId,
302
288
  input: identity === "user" ? {
303
- ...input,
289
+ ...setupInput,
304
290
  identity
305
- } : input
291
+ } : setupInput
306
292
  });
307
293
  }
308
294
  };
295
+ const slackSetupContract = defineChannelSetupContract({
296
+ fields: {
297
+ botToken: {
298
+ kind: "string",
299
+ sensitive: true,
300
+ cli: {
301
+ flags: "--bot-token <token>",
302
+ description: "Slack bot token"
303
+ }
304
+ },
305
+ appToken: {
306
+ kind: "string",
307
+ sensitive: true,
308
+ cli: {
309
+ flags: "--app-token <token>",
310
+ description: "Slack app token"
311
+ }
312
+ },
313
+ userToken: {
314
+ kind: "string",
315
+ sensitive: true,
316
+ cli: {
317
+ flags: "--user-token <token>",
318
+ description: "Slack user token"
319
+ }
320
+ },
321
+ signingSecret: {
322
+ kind: "string",
323
+ sensitive: true,
324
+ cli: {
325
+ flags: "--signing-secret <secret>",
326
+ description: "Slack signing secret"
327
+ }
328
+ },
329
+ identity: {
330
+ kind: "choice",
331
+ choices: ["bot", "user"],
332
+ cli: {
333
+ flags: "--identity <kind>",
334
+ description: "Slack identity"
335
+ }
336
+ },
337
+ mode: {
338
+ kind: "choice",
339
+ choices: ["socket", "http"],
340
+ cli: {
341
+ flags: "--mode <mode>",
342
+ description: "Slack connection mode"
343
+ }
344
+ },
345
+ useEnv: {
346
+ kind: "boolean",
347
+ cli: {
348
+ flags: "--use-env",
349
+ description: "Use Slack environment credentials"
350
+ }
351
+ }
352
+ },
353
+ legacyAdapter: slackSetupAdapter
354
+ });
309
355
  function createSlackSetupWizardBase(handlers) {
310
- const slackDmPolicy = createLegacyCompatChannelDmPolicy({
356
+ const slackDmPolicy = createChannelDmPolicy({
311
357
  label: "Slack",
312
358
  channel: SLACK_CHANNEL,
359
+ resolveAccount: (cfg, accountId) => inspectSlackAccount({
360
+ cfg,
361
+ accountId
362
+ }),
363
+ buildPatch: ({ account, policy, allowFrom }) => ({
364
+ dmPolicy: policy,
365
+ ...allowFrom === void 0 ? {} : { allowFrom },
366
+ dm: {
367
+ ...account.config.dm,
368
+ enabled: typeof account.config.dm?.enabled === "boolean" ? account.config.dm.enabled : true
369
+ }
370
+ }),
313
371
  promptAllowFrom: handlers.promptAllowFrom
314
372
  });
315
373
  return {
@@ -332,7 +390,7 @@ function createSlackSetupWizardBase(handlers) {
332
390
  cfg,
333
391
  accountId
334
392
  });
335
- if (currentAccount.configured && currentAccount.config.identity !== "user") return { cfg };
393
+ if (currentAccount.configured && currentAccount.config.postAs !== "user") return { cfg };
336
394
  const identity = await prompter.select({
337
395
  message: "How should OpenClaw appear in Slack?",
338
396
  options: [{
@@ -344,14 +402,14 @@ function createSlackSetupWizardBase(handlers) {
344
402
  label: "Slack user",
345
403
  hint: "Post as the authorizing human"
346
404
  }],
347
- initialValue: currentAccount.config.identity ?? "bot"
405
+ initialValue: currentAccount.config.postAs ?? "bot"
348
406
  });
349
407
  const next = setSlackSetupIdentity({
350
408
  cfg,
351
409
  accountId,
352
410
  identity
353
411
  });
354
- if (currentAccount.configured && identity === currentAccount.config.identity) return { cfg: next };
412
+ if (currentAccount.configured && identity === currentAccount.config.postAs) return { cfg: next };
355
413
  if (identity === "user") {
356
414
  if (currentAccount.config.mode === "relay") throw new Error("Slack user identity setup supports mode \"socket\" or \"http\", not \"relay\".");
357
415
  await prompter.note([
@@ -375,7 +433,7 @@ function createSlackSetupWizardBase(handlers) {
375
433
  isAvailable: ({ cfg, accountId }) => accountId === DEFAULT_ACCOUNT_ID && (inspectSlackAccount({
376
434
  cfg,
377
435
  accountId
378
- }).config.identity ?? "bot") === "bot" && Boolean(process.env.SLACK_BOT_TOKEN?.trim()) && Boolean(process.env.SLACK_APP_TOKEN?.trim()) && !inspectSlackAccount({
436
+ }).config.postAs ?? "bot") === "bot" && Boolean(process.env.SLACK_BOT_TOKEN?.trim()) && Boolean(process.env.SLACK_APP_TOKEN?.trim()) && !inspectSlackAccount({
379
437
  cfg,
380
438
  accountId
381
439
  }).configured,
@@ -392,7 +450,7 @@ function createSlackSetupWizardBase(handlers) {
392
450
  shouldPrompt: ({ cfg, accountId }) => (inspectSlackAccount({
393
451
  cfg,
394
452
  accountId
395
- }).config.identity ?? "bot") === "bot"
453
+ }).config.postAs ?? "bot") === "bot"
396
454
  }),
397
455
  createSlackTokenCredential({
398
456
  inputKey: "userToken",
@@ -404,7 +462,7 @@ function createSlackSetupWizardBase(handlers) {
404
462
  shouldPrompt: ({ cfg, accountId }) => inspectSlackAccount({
405
463
  cfg,
406
464
  accountId
407
- }).config.identity === "user"
465
+ }).config.postAs === "user"
408
466
  }),
409
467
  createSlackTokenCredential({
410
468
  inputKey: "appToken",
@@ -418,7 +476,7 @@ function createSlackSetupWizardBase(handlers) {
418
476
  cfg,
419
477
  accountId
420
478
  });
421
- return (account.config.identity ?? "bot") === "bot" || (account.config.mode ?? "socket") === "socket";
479
+ return (account.config.postAs ?? "bot") === "bot" || (account.config.mode ?? "socket") === "socket";
422
480
  }
423
481
  }),
424
482
  createSlackTokenCredential({
@@ -432,7 +490,7 @@ function createSlackSetupWizardBase(handlers) {
432
490
  cfg,
433
491
  accountId
434
492
  });
435
- return account.config.identity === "user" && account.config.mode === "http";
493
+ return account.config.postAs === "user" && account.config.mode === "http";
436
494
  }
437
495
  })
438
496
  ],
@@ -480,14 +538,6 @@ function createSlackSetupWizardBase(handlers) {
480
538
  fallbackResolved: (entries) => entries,
481
539
  applyAllowlist: ({ cfg, accountId, resolved }) => setSlackChannelAllowlist(cfg, accountId, resolved)
482
540
  }),
483
- finalize: async ({ cfg, accountId, options, prompter }) => {
484
- if (hasSlackInteractiveRepliesConfig(cfg, accountId)) return;
485
- if (options?.quickstartDefaults) return { cfg: setSlackInteractiveReplies(cfg, accountId, true) };
486
- return { cfg: setSlackInteractiveReplies(cfg, accountId, await prompter.confirm({
487
- message: t("wizard.slack.interactiveRepliesPrompt"),
488
- initialValue: true
489
- })) };
490
- },
491
541
  disable: (cfg) => setSetupChannelEnabled(cfg, SLACK_CHANNEL, false)
492
542
  };
493
543
  }
@@ -499,4 +549,23 @@ function createSlackSetupWizardProxy(loadWizard) {
499
549
  });
500
550
  }
501
551
  //#endregion
502
- export { describeSlackSetupAccount as a, SLACK_CHANNEL as i, createSlackSetupWizardProxy as n, isSlackSetupAccountConfigured as o, slackSetupAdapter as r, createSlackSetupWizardBase as t };
552
+ //#region extensions/slack/src/config-adapter.ts
553
+ const slackBaseConfigAdapter = createScopedChannelConfigAdapter({
554
+ sectionKey: SLACK_CHANNEL,
555
+ listAccountIds: listSlackAccountIds,
556
+ resolveAccount: adaptScopedAccountAccessor(resolveSlackAccount),
557
+ resolveAccessorAccount: resolveSlackConfigAccessorAccount,
558
+ defaultAccountId: resolveDefaultSlackAccountId,
559
+ clearBaseFields: [
560
+ "botToken",
561
+ "appToken",
562
+ "userToken",
563
+ "signingSecret",
564
+ "name"
565
+ ],
566
+ resolveAllowFrom: (account) => account.allowFrom,
567
+ formatAllowFrom: (allowFrom) => formatAllowFromLowercase({ allowFrom }),
568
+ resolveDefaultTo: (account) => account.defaultTo
569
+ });
570
+ //#endregion
571
+ export { slackSetupContract as a, isSlackSetupAccountConfigured as c, slackSetupAdapter as i, createSlackSetupWizardBase as n, SLACK_CHANNEL as o, createSlackSetupWizardProxy as r, describeSlackSetupAccount as s, slackBaseConfigAdapter as t };
@@ -1,8 +1,9 @@
1
- import { n as buildChannelConfigSchema, t as SlackConfigSchema } from "./config-api-Df9a1B8C.js";
1
+ import { buildSecretInputSchema, hasConfiguredSecretInput } from "openclaw/plugin-sdk/secret-input";
2
2
  import { createChannelConfigUiHints } from "openclaw/plugin-sdk/channel-core";
3
- //#endregion
4
- //#region extensions/slack/src/config-schema.ts
5
- const SlackChannelConfigSchema = buildChannelConfigSchema(SlackConfigSchema, { uiHints: {
3
+ import { ChannelBotLoopProtectionSchema, ChannelDangerouslyAllowNameMatchingSchema, ChannelImplicitMentionsSchema, ChannelPreviewStreamingConfigSchema, ChannelStreamingProgressSchema, GroupPolicySchema, ProviderCommandsSchema, ReplyToModeSchema, buildChannelAllowBotsSchema, buildChannelConfigSchema, buildChannelExecApprovalsSchema, buildChannelReactionShape, buildCommonChannelAccountShape, buildGroupEntrySchema, requireAllowlistAllowFrom, requireOpenAllowFrom } from "openclaw/plugin-sdk/channel-config-schema";
4
+ import { z } from "zod";
5
+ //#region extensions/slack/src/config-ui-hints.ts
6
+ const slackChannelConfigUiHints = {
6
7
  "": {
7
8
  label: "Slack",
8
9
  help: "Slack channel provider configuration for bot/app tokens, streaming behavior, and DM policy controls. Keep token handling and thread behavior explicit to avoid noisy workspace interactions."
@@ -11,16 +12,13 @@ const SlackChannelConfigSchema = buildChannelConfigSchema(SlackConfigSchema, { u
11
12
  label: "Slack Enterprise Grid Org Install",
12
13
  help: "Enable only for an Enterprise Grid org-wide bot installation. OpenClaw verifies the token with Slack auth.test at startup; DMs must be disabled or use dmPolicy=\"open\" with allowFrom=[\"*\"]."
13
14
  },
14
- identity: {
15
+ postAs: {
15
16
  label: "Slack Identity",
16
17
  help: "Select \"bot\" (default) for the classic Slack app/bot identity or \"user\" to post as the authorizing human through a user token while the app carries event transport."
17
18
  },
18
19
  ...createChannelConfigUiHints({
19
20
  channelLabel: "Slack",
20
- dmPolicy: {
21
- channelKey: "slack",
22
- includeLegacyNestedPolicy: true
23
- },
21
+ dmPolicy: { channelKey: "slack" },
24
22
  configWrites: true,
25
23
  mentionPatterns: {
26
24
  targetDescription: "Slack channel IDs",
@@ -54,22 +52,6 @@ const SlackChannelConfigSchema = buildChannelConfigSchema(SlackConfigSchema, { u
54
52
  label: "Slack Bot Loop Cooldown Seconds",
55
53
  help: "How long to suppress the bot pair after it exceeds the budget. Default: 60."
56
54
  },
57
- socketMode: {
58
- label: "Slack Socket Mode Transport",
59
- help: "Slack Socket Mode transport tuning passed to the Slack SDK. Use only when investigating ping/pong timeout or stale websocket behavior."
60
- },
61
- "socketMode.clientPingTimeout": {
62
- label: "Slack Socket Mode Pong Timeout",
63
- help: "Milliseconds the Slack SDK waits for a pong after its client ping before treating the websocket as stale (OpenClaw default: 15000). Increase on hosts with event-loop starvation or slow network scheduling."
64
- },
65
- "socketMode.serverPingTimeout": {
66
- label: "Slack Socket Mode Server Ping Timeout",
67
- help: "Milliseconds the Slack SDK waits for Slack server pings before treating the websocket as stale."
68
- },
69
- "socketMode.pingPongLoggingEnabled": {
70
- label: "Slack Socket Mode Ping/Pong Logging",
71
- help: "Enable Slack SDK ping/pong transport logs while debugging Socket Mode websocket health."
72
- },
73
55
  relay: {
74
56
  label: "Slack Relay Mode",
75
57
  help: "Relay-delivered Slack events. Use with mode=\"relay\" when openclaw-slack-router owns the Slack Socket Mode connection."
@@ -102,10 +84,6 @@ const SlackChannelConfigSchema = buildChannelConfigSchema(SlackConfigSchema, { u
102
84
  label: "Slack User Token Read Only",
103
85
  help: "When true, treat configured Slack user token usage as read-only helper behavior where possible. Keep enabled if you only need supplemental reads without user-context writes."
104
86
  },
105
- "capabilities.interactiveReplies": {
106
- label: "Slack Interactive Replies",
107
- help: "Enable agent-authored Slack interactive reply directives (`[[slack_buttons: ...]]`, `[[slack_select: ...]]`). Default: false."
108
- },
109
87
  execApprovals: {
110
88
  label: "Slack Exec Approvals",
111
89
  help: "Slack-native exec approval routing and approver authorization. When unset, OpenClaw auto-enables DM-first native approvals if approvers can be resolved for this workspace account."
@@ -218,6 +196,227 @@ const SlackChannelConfigSchema = buildChannelConfigSchema(SlackConfigSchema, { u
218
196
  label: "Slack Thread Initial History Limit",
219
197
  help: "Maximum number of existing Slack thread messages to fetch when starting a new thread session (default: 20, set to 0 to disable)."
220
198
  }
221
- } });
199
+ };
200
+ //#endregion
201
+ //#region extensions/slack/src/config-schema.ts
202
+ const SecretInputSchema = buildSecretInputSchema();
203
+ const SlackStreamingProgressSchema = ChannelStreamingProgressSchema.extend({ nativeTaskCards: z.boolean().optional() }).strict();
204
+ const SlackStreamingConfigSchema = ChannelPreviewStreamingConfigSchema.extend({
205
+ nativeTransport: z.boolean().optional(),
206
+ progress: SlackStreamingProgressSchema.optional()
207
+ }).strict();
208
+ const SlackDmSchema = z.object({
209
+ enabled: z.boolean().optional(),
210
+ groupEnabled: z.boolean().optional(),
211
+ groupChannels: z.array(z.union([z.string(), z.number()])).optional()
212
+ }).strict();
213
+ const SlackPresenceEventsSchema = z.object({ mode: z.enum([
214
+ "off",
215
+ "auto",
216
+ "on"
217
+ ]).optional() }).strict();
218
+ const SlackChannelSchema = buildGroupEntrySchema({
219
+ ignoreOtherMentions: z.boolean().optional(),
220
+ replyToMode: ReplyToModeSchema.optional(),
221
+ allowBots: buildChannelAllowBotsSchema({ allowMentions: true }),
222
+ botLoopProtection: ChannelBotLoopProtectionSchema.optional(),
223
+ users: z.array(z.union([z.string(), z.number()])).optional(),
224
+ presenceEvents: SlackPresenceEventsSchema.optional()
225
+ }, { omit: ["allowFrom"] });
226
+ const SlackThreadSchema = z.object({
227
+ historyScope: z.enum(["thread", "channel"]).optional(),
228
+ inheritParent: z.boolean().optional(),
229
+ initialHistoryLimit: z.number().int().min(0).optional()
230
+ }).strict();
231
+ const ReplyToModeByChatTypeSchema = z.object({
232
+ direct: ReplyToModeSchema.optional(),
233
+ group: ReplyToModeSchema.optional(),
234
+ channel: ReplyToModeSchema.optional()
235
+ }).strict();
236
+ const SlackRelaySchema = z.object({
237
+ url: z.string().optional(),
238
+ authToken: SecretInputSchema.optional(),
239
+ gatewayId: z.string().optional()
240
+ }).strict();
241
+ const SlackIdentitySchema = z.enum(["bot", "user"]);
242
+ const SlackAccountSchema = z.object({
243
+ ...buildCommonChannelAccountShape({
244
+ omit: ["groupAllowFrom"],
245
+ streaming: SlackStreamingConfigSchema.optional()
246
+ }),
247
+ postAs: SlackIdentitySchema.default("bot"),
248
+ mode: z.enum([
249
+ "socket",
250
+ "http",
251
+ "relay"
252
+ ]).optional(),
253
+ enterpriseOrgInstall: z.boolean().optional(),
254
+ relay: SlackRelaySchema.optional(),
255
+ signingSecret: SecretInputSchema.optional(),
256
+ webhookPath: z.string().optional(),
257
+ execApprovals: buildChannelExecApprovalsSchema(z.union([z.string(), z.number()])),
258
+ commands: ProviderCommandsSchema,
259
+ botToken: SecretInputSchema.optional(),
260
+ appToken: SecretInputSchema.optional(),
261
+ userToken: SecretInputSchema.optional(),
262
+ userTokenReadOnly: z.boolean().optional().default(true),
263
+ allowBots: buildChannelAllowBotsSchema({ allowMentions: true }),
264
+ botLoopProtection: ChannelBotLoopProtectionSchema.optional(),
265
+ dangerouslyAllowNameMatching: ChannelDangerouslyAllowNameMatchingSchema,
266
+ requireMention: z.boolean().optional(),
267
+ implicitMentions: ChannelImplicitMentionsSchema.optional(),
268
+ unfurlLinks: z.boolean().optional(),
269
+ unfurlMedia: z.boolean().optional(),
270
+ ...buildChannelReactionShape({
271
+ notificationModes: [
272
+ "off",
273
+ "own",
274
+ "all",
275
+ "allowlist"
276
+ ],
277
+ reactionAllowlist: true,
278
+ ackReaction: z.string().optional()
279
+ }),
280
+ replyToModeByChatType: ReplyToModeByChatTypeSchema.optional(),
281
+ thread: SlackThreadSchema.optional(),
282
+ presenceEvents: SlackPresenceEventsSchema.optional(),
283
+ actions: z.object({
284
+ reactions: z.boolean().optional(),
285
+ messages: z.boolean().optional(),
286
+ pins: z.boolean().optional(),
287
+ search: z.boolean().optional(),
288
+ permissions: z.boolean().optional(),
289
+ memberInfo: z.boolean().optional(),
290
+ channelInfo: z.boolean().optional(),
291
+ emojiList: z.boolean().optional()
292
+ }).strict().optional(),
293
+ slashCommand: z.object({
294
+ enabled: z.boolean().optional(),
295
+ name: z.string().optional(),
296
+ sessionPrefix: z.string().optional(),
297
+ ephemeral: z.boolean().optional()
298
+ }).strict().optional(),
299
+ dm: SlackDmSchema.optional(),
300
+ channels: z.record(z.string(), SlackChannelSchema.optional()).optional(),
301
+ typingReaction: z.string().optional()
302
+ }).strict();
303
+ const SlackAccountEntrySchema = SlackAccountSchema.extend({ postAs: SlackIdentitySchema.optional() });
304
+ function validateSlackSigningSecretRequirements(value, ctx) {
305
+ const resolveMode = (mode) => mode === "http" || mode === "socket" || mode === "relay" ? mode : void 0;
306
+ const baseMode = resolveMode(value.mode) ?? "socket";
307
+ if (baseMode === "http" && !hasConfiguredSecretInput(value.signingSecret)) ctx.addIssue({
308
+ code: z.ZodIssueCode.custom,
309
+ message: "channels.slack.mode=\"http\" requires channels.slack.signingSecret",
310
+ path: ["signingSecret"]
311
+ });
312
+ for (const [accountId, account] of Object.entries(value.accounts ?? {})) {
313
+ if (!account || account.enabled === false) continue;
314
+ if ((resolveMode(account.mode) ?? baseMode) !== "http") continue;
315
+ if (!hasConfiguredSecretInput(account.signingSecret ?? value.signingSecret)) ctx.addIssue({
316
+ code: z.ZodIssueCode.custom,
317
+ message: "channels.slack.accounts.*.mode=\"http\" requires channels.slack.signingSecret or channels.slack.accounts.*.signingSecret",
318
+ path: [
319
+ "accounts",
320
+ accountId,
321
+ "signingSecret"
322
+ ]
323
+ });
324
+ }
325
+ }
326
+ const SlackChannelConfigSchema = buildChannelConfigSchema(SlackAccountSchema.safeExtend({
327
+ mode: z.enum([
328
+ "socket",
329
+ "http",
330
+ "relay"
331
+ ]).optional().default("socket"),
332
+ signingSecret: SecretInputSchema.optional(),
333
+ webhookPath: z.string().optional().default("/slack/events"),
334
+ groupPolicy: GroupPolicySchema.optional().default("allowlist"),
335
+ accounts: z.record(z.string(), SlackAccountEntrySchema.optional()).optional(),
336
+ defaultAccount: z.string().optional()
337
+ }).superRefine((value, ctx) => {
338
+ const dmPolicy = value.dmPolicy ?? "pairing";
339
+ const allowFrom = value.allowFrom;
340
+ requireOpenAllowFrom({
341
+ policy: dmPolicy,
342
+ allowFrom,
343
+ ctx,
344
+ path: ["allowFrom"],
345
+ message: "channels.slack.dmPolicy=\"open\" requires channels.slack.allowFrom to include \"*\""
346
+ });
347
+ requireAllowlistAllowFrom({
348
+ policy: dmPolicy,
349
+ allowFrom,
350
+ ctx,
351
+ path: ["allowFrom"],
352
+ message: "channels.slack.dmPolicy=\"allowlist\" requires channels.slack.allowFrom to contain at least one sender ID"
353
+ });
354
+ const requireRelayConfig = (relay, path) => {
355
+ if (typeof relay?.url !== "string" || !relay.url.trim()) ctx.addIssue({
356
+ code: z.ZodIssueCode.custom,
357
+ message: "channels.slack.mode=\"relay\" requires relay.url",
358
+ path: [...path, "url"]
359
+ });
360
+ if (!hasConfiguredSecretInput(relay?.authToken)) ctx.addIssue({
361
+ code: z.ZodIssueCode.custom,
362
+ message: "channels.slack.mode=\"relay\" requires relay.authToken",
363
+ path: [...path, "authToken"]
364
+ });
365
+ if (typeof relay?.gatewayId !== "string" || !relay.gatewayId.trim()) ctx.addIssue({
366
+ code: z.ZodIssueCode.custom,
367
+ message: "channels.slack.mode=\"relay\" requires relay.gatewayId",
368
+ path: [...path, "gatewayId"]
369
+ });
370
+ };
371
+ const baseMode = value.mode ?? "socket";
372
+ const accountIds = value.accounts ? Object.keys(value.accounts) : [];
373
+ if (!value.accounts) {
374
+ if (baseMode === "relay") requireRelayConfig(value.relay, ["relay"]);
375
+ validateSlackSigningSecretRequirements(value, ctx);
376
+ return;
377
+ }
378
+ for (const accountId of accountIds) {
379
+ const account = value.accounts[accountId];
380
+ if (!account || account.enabled === false) continue;
381
+ const accountMode = account.mode ?? baseMode;
382
+ const effectiveRelay = {
383
+ ...value.relay,
384
+ ...account.relay
385
+ };
386
+ const effectivePolicy = account.dmPolicy ?? value.dmPolicy ?? "pairing";
387
+ const effectiveAllowFrom = account.allowFrom ?? value.allowFrom;
388
+ requireOpenAllowFrom({
389
+ policy: effectivePolicy,
390
+ allowFrom: effectiveAllowFrom,
391
+ ctx,
392
+ path: [
393
+ "accounts",
394
+ accountId,
395
+ "allowFrom"
396
+ ],
397
+ message: "channels.slack.accounts.*.dmPolicy=\"open\" requires channels.slack.accounts.*.allowFrom (or channels.slack.allowFrom) to include \"*\""
398
+ });
399
+ requireAllowlistAllowFrom({
400
+ policy: effectivePolicy,
401
+ allowFrom: effectiveAllowFrom,
402
+ ctx,
403
+ path: [
404
+ "accounts",
405
+ accountId,
406
+ "allowFrom"
407
+ ],
408
+ message: "channels.slack.accounts.*.dmPolicy=\"allowlist\" requires channels.slack.accounts.*.allowFrom (or channels.slack.allowFrom) to contain at least one sender ID"
409
+ });
410
+ if (accountMode !== "http") {
411
+ if (accountMode === "relay") requireRelayConfig(effectiveRelay, [
412
+ "accounts",
413
+ accountId,
414
+ "relay"
415
+ ]);
416
+ continue;
417
+ }
418
+ }
419
+ validateSlackSigningSecretRequirements(value, ctx);
420
+ }), { uiHints: slackChannelConfigUiHints });
222
421
  //#endregion
223
422
  export { SlackChannelConfigSchema as t };
@@ -1,5 +1,5 @@
1
- import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
- import { i as resolveDefaultSlackAccountId, o as resolveSlackAccountAllowFrom, r as mergeSlackAccountConfig } from "./accounts-DQEbYKh9.js";
1
+ import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
+ import { i as resolveDefaultSlackAccountId, o as resolveSlackAccountAllowFrom, r as mergeSlackAccountConfig } from "./accounts-BSr252c_.js";
3
3
  import { i as parseSlackTarget } from "./target-parsing-N6lHogYZ.js";
4
4
  import "./targets-KmjP2E8s.js";
5
5
  import { normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
@@ -1,2 +1,2 @@
1
- import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./directory-config-Bv0lcUlH.js";
1
+ import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./directory-config-CeixfVuC.js";
2
2
  export { listSlackDirectoryGroupsFromConfig, listSlackDirectoryPeersFromConfig };