@openclaw/slack 2026.7.1-beta.1 → 2026.7.1-beta.4

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 (605) hide show
  1. package/dist/{account-inspect-DOtQbKkB.js → account-inspect-Di7ditqZ.js} +1 -1
  2. package/dist/account-inspect-api.js +1 -1
  3. package/dist/{accounts-BPCiCe8y.js → accounts-BOJJiHSr.js} +14 -1
  4. package/dist/accounts.runtime-DWvaCb-X.js +2 -0
  5. package/dist/{action-runtime-BLu039dd.js → action-runtime-DoQGk_8D.js} +37 -40
  6. package/dist/action-runtime.runtime-BABj3aM-.js +2 -0
  7. package/dist/{actions-CqRHPciJ.js → actions-DMpDmKEA.js} +211 -57
  8. package/dist/actions.runtime-C103_BPW.js +2 -0
  9. package/dist/api.js +13 -13
  10. package/dist/{approval-handler.runtime-BqNO_HC_.js → approval-handler.runtime-CIUbOt5T.js} +2 -2
  11. package/dist/{channel-DjNY4ik7.js → channel-CG29WLVd.js} +198 -111
  12. package/dist/channel-plugin-api.js +1 -1
  13. package/dist/{channel.setup-CDOZ8V3p.js → channel.setup-Dq6syTNU.js} +3 -3
  14. package/dist/{client-DG9cyk55.js → client-DGxwSL7f.js} +0 -1
  15. package/dist/{directory-config-DDVHDmrN.js → directory-config-BZuS8141.js} +1 -1
  16. package/dist/directory-contract-api.js +1 -1
  17. package/dist/{directory-live-DC-YA5SQ.js → directory-live-BNsxCgqP.js} +2 -2
  18. package/dist/format-YCNoNkM2.js +107 -0
  19. package/dist/http-routes-api.js +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/{interactive-replies-D-22gTp3.js → interactive-replies-CXpT-vA_.js} +13 -2
  22. package/dist/interactive-replies-api.js +1 -1
  23. package/dist/{message-tool-api--zYyTqrR.js → message-tool-api-BgWKyu2r.js} +11 -4
  24. package/dist/message-tool-api.js +1 -1
  25. package/dist/{monitor-Cf50drfK.js → monitor-D6Km2CFH.js} +3 -3
  26. package/dist/outbound-adapter-DVoBfBW5.js +272 -0
  27. package/dist/{pipeline.runtime-BKICBY52.js → pipeline.runtime-0wEFX2CS.js} +185 -268
  28. package/dist/{plugin-routes-B9PvcDQJ.js → plugin-routes-CLp4obpN.js} +1 -1
  29. package/dist/{policy-DAE6BTN3.js → policy-Dj-puVPb.js} +10 -4
  30. package/dist/{probe-DFKt9Ute.js → probe-CuwRDE5j.js} +10 -4
  31. package/dist/{provider-DOZHzRWi.js → provider-Cot8h818.js} +199 -154
  32. package/dist/{relay-source-BpBIUaF8.js → relay-source-CU1LhyBj.js} +2 -2
  33. package/dist/{replies-CMZq3Lcb.js → replies-Bbx6pG_B.js} +4 -3
  34. package/dist/{reply-blocks-CfJqf7eq.js → reply-blocks-BGQ6zSqM.js} +184 -36
  35. package/dist/{resolve-channels-eniB45fy.js → resolve-channels-CstkChBE.js} +1 -1
  36. package/dist/{resolve-users-DDKzl37a.js → resolve-users-C3NP2c-Q.js} +1 -1
  37. package/dist/{runtime-api-DHJ8ntLr.js → runtime-api-CEmqYxR-.js} +1 -1
  38. package/dist/runtime-api.js +12 -12
  39. package/dist/{scopes-BdVdJxFf.js → scopes-DCWVD5-8.js} +2 -2
  40. package/dist/{send-Dg6U9K7_.js → send-DKDXoeoV.js} +392 -225
  41. package/dist/send.runtime-GPRa63l1.js +2 -0
  42. package/dist/{setup-core-BCGzyZhx.js → setup-core-fGd6Gquy.js} +4 -3
  43. package/dist/setup-entry.js +1 -1
  44. package/dist/setup-plugin-api.js +1 -1
  45. package/dist/{setup-surface-D7xdZLxB.js → setup-surface-Dv2fIJNB.js} +5 -5
  46. package/dist/{shared-iMaNxOIL.js → shared-CosfcFri.js} +5 -5
  47. package/dist/{slash-dispatch.runtime-C-1pDqWi.js → slash-dispatch.runtime-Ccm3quU1.js} +1 -1
  48. package/node_modules/@slack/web-api/dist/chat-stream.d.ts +6 -0
  49. package/node_modules/@slack/web-api/dist/chat-stream.d.ts.map +1 -1
  50. package/node_modules/@slack/web-api/dist/chat-stream.js +8 -0
  51. package/node_modules/@slack/web-api/dist/chat-stream.js.map +1 -1
  52. package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts +1 -1
  53. package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts.map +1 -1
  54. package/node_modules/@slack/web-api/package.json +1 -1
  55. package/node_modules/@types/node/README.md +1 -1
  56. package/node_modules/@types/node/assert/strict.d.ts +10 -1
  57. package/node_modules/@types/node/assert.d.ts +144 -17
  58. package/node_modules/@types/node/async_hooks.d.ts +9 -9
  59. package/node_modules/@types/node/buffer.d.ts +64 -30
  60. package/node_modules/@types/node/child_process.d.ts +17 -21
  61. package/node_modules/@types/node/cluster.d.ts +13 -13
  62. package/node_modules/@types/node/console.d.ts +1 -1
  63. package/node_modules/@types/node/crypto.d.ts +471 -575
  64. package/node_modules/@types/node/diagnostics_channel.d.ts +274 -32
  65. package/node_modules/@types/node/dns.d.ts +15 -15
  66. package/node_modules/@types/node/events.d.ts +3 -3
  67. package/node_modules/@types/node/ffi.d.ts +486 -0
  68. package/node_modules/@types/node/fs/promises.d.ts +7 -4
  69. package/node_modules/@types/node/fs.d.ts +24 -18
  70. package/node_modules/@types/node/globals.d.ts +4 -4
  71. package/node_modules/@types/node/http.d.ts +30 -5
  72. package/node_modules/@types/node/http2.d.ts +2 -1
  73. package/node_modules/@types/node/index.d.ts +1 -3
  74. package/node_modules/@types/node/inspector.d.ts +1 -1
  75. package/node_modules/@types/node/module.d.ts +16 -45
  76. package/node_modules/@types/node/net.d.ts +1 -1
  77. package/node_modules/@types/node/os.d.ts +2 -2
  78. package/node_modules/@types/node/package.json +4 -4
  79. package/node_modules/@types/node/perf_hooks.d.ts +1 -9
  80. package/node_modules/@types/node/process.d.ts +25 -12
  81. package/node_modules/@types/node/quic.d.ts +92 -11
  82. package/node_modules/@types/node/readline.d.ts +12 -11
  83. package/node_modules/@types/node/repl.d.ts +10 -10
  84. package/node_modules/@types/node/sqlite.d.ts +56 -1
  85. package/node_modules/@types/node/stream/iter.d.ts +150 -0
  86. package/node_modules/@types/node/stream/promises.d.ts +2 -2
  87. package/node_modules/@types/node/stream/web.d.ts +1 -1
  88. package/node_modules/@types/node/stream.d.ts +37 -5
  89. package/node_modules/@types/node/test/reporters.d.ts +1 -1
  90. package/node_modules/@types/node/test.d.ts +120 -10
  91. package/node_modules/@types/node/tls.d.ts +1 -1
  92. package/node_modules/@types/node/ts5.6/index.d.ts +2 -4
  93. package/node_modules/@types/node/ts5.7/index.d.ts +1 -3
  94. package/node_modules/@types/node/url.d.ts +3 -3
  95. package/node_modules/@types/node/util/types.d.ts +1 -1
  96. package/node_modules/@types/node/util.d.ts +22 -22
  97. package/node_modules/@types/node/v8.d.ts +85 -3
  98. package/node_modules/@types/node/vm.d.ts +9 -9
  99. package/node_modules/@types/node/web-globals/domexception.d.ts +15 -0
  100. package/node_modules/@types/node/worker_threads.d.ts +10 -12
  101. package/node_modules/@types/node/zlib.d.ts +3 -3
  102. package/node_modules/body-parser/README.md +16 -1
  103. package/node_modules/body-parser/index.js +4 -20
  104. package/node_modules/body-parser/lib/read.js +17 -17
  105. package/node_modules/body-parser/lib/types/json.js +60 -32
  106. package/node_modules/body-parser/lib/types/raw.js +3 -3
  107. package/node_modules/body-parser/lib/types/text.js +3 -3
  108. package/node_modules/body-parser/lib/types/urlencoded.js +16 -20
  109. package/node_modules/body-parser/lib/utils.js +18 -16
  110. package/node_modules/body-parser/node_modules/content-type/LICENSE +22 -0
  111. package/node_modules/body-parser/node_modules/content-type/README.md +69 -0
  112. package/node_modules/body-parser/node_modules/content-type/dist/index.d.ts +26 -0
  113. package/node_modules/body-parser/node_modules/content-type/dist/index.js +170 -0
  114. package/node_modules/body-parser/node_modules/content-type/dist/index.js.map +1 -0
  115. package/node_modules/body-parser/node_modules/content-type/package.json +52 -0
  116. package/node_modules/body-parser/package.json +23 -10
  117. package/node_modules/range-parser/README.md +13 -12
  118. package/node_modules/range-parser/index.js +27 -8
  119. package/node_modules/range-parser/package.json +12 -8
  120. package/node_modules/semver/classes/range.js +6 -2
  121. package/node_modules/semver/package.json +1 -1
  122. package/node_modules/side-channel/CHANGELOG.md +10 -0
  123. package/node_modules/side-channel/README.md +1 -1
  124. package/node_modules/side-channel/index.js +5 -2
  125. package/node_modules/side-channel/package.json +10 -10
  126. package/node_modules/side-channel/test/index.js +16 -0
  127. package/node_modules/typebox/build/compile/validator.d.mts +2 -7
  128. package/node_modules/typebox/build/compile/validator.mjs +6 -36
  129. package/node_modules/typebox/build/error/errors.d.mts +1 -7
  130. package/node_modules/typebox/build/format/_idna.mjs +36 -6
  131. package/node_modules/typebox/build/format/_puny.mjs +4 -1
  132. package/node_modules/typebox/build/format/uuid.d.mts +2 -2
  133. package/node_modules/typebox/build/format/uuid.mjs +3 -3
  134. package/node_modules/typebox/build/guard/emit.d.mts +0 -4
  135. package/node_modules/typebox/build/guard/emit.mjs +0 -8
  136. package/node_modules/typebox/build/guard/guard.d.mts +4 -8
  137. package/node_modules/typebox/build/guard/guard.mjs +5 -13
  138. package/node_modules/typebox/build/schema/engine/boolean.d.mts +3 -3
  139. package/node_modules/typebox/build/schema/engine/boolean.mjs +4 -4
  140. package/node_modules/typebox/build/schema/engine/index.d.mts +0 -1
  141. package/node_modules/typebox/build/schema/engine/index.mjs +0 -1
  142. package/node_modules/typebox/build/schema/engine/schema.mjs +5 -10
  143. package/node_modules/typebox/build/schema/engine/type.mjs +14 -18
  144. package/node_modules/typebox/build/schema/types/dependencies.mjs +1 -1
  145. package/node_modules/typebox/build/schema/types/index.d.mts +0 -1
  146. package/node_modules/typebox/build/schema/types/index.mjs +0 -1
  147. package/node_modules/typebox/build/schema/types/schema.d.mts +1 -1
  148. package/node_modules/typebox/build/schema/types/schema.mjs +2 -2
  149. package/node_modules/typebox/build/system/locale/ar_001.mjs +0 -1
  150. package/node_modules/typebox/build/system/locale/bn_BD.mjs +0 -1
  151. package/node_modules/typebox/build/system/locale/cs_CZ.mjs +0 -1
  152. package/node_modules/typebox/build/system/locale/de_DE.mjs +0 -1
  153. package/node_modules/typebox/build/system/locale/el_GR.mjs +0 -1
  154. package/node_modules/typebox/build/system/locale/en_US.mjs +0 -1
  155. package/node_modules/typebox/build/system/locale/es_419.mjs +0 -1
  156. package/node_modules/typebox/build/system/locale/es_AR.mjs +0 -1
  157. package/node_modules/typebox/build/system/locale/es_ES.mjs +0 -1
  158. package/node_modules/typebox/build/system/locale/es_MX.mjs +0 -1
  159. package/node_modules/typebox/build/system/locale/fa_IR.mjs +0 -1
  160. package/node_modules/typebox/build/system/locale/fil_PH.mjs +0 -1
  161. package/node_modules/typebox/build/system/locale/fr_CA.mjs +0 -1
  162. package/node_modules/typebox/build/system/locale/fr_FR.mjs +0 -1
  163. package/node_modules/typebox/build/system/locale/ha_NG.mjs +0 -1
  164. package/node_modules/typebox/build/system/locale/hi_IN.mjs +0 -1
  165. package/node_modules/typebox/build/system/locale/hu_HU.mjs +0 -1
  166. package/node_modules/typebox/build/system/locale/id_ID.mjs +0 -1
  167. package/node_modules/typebox/build/system/locale/it_IT.mjs +0 -1
  168. package/node_modules/typebox/build/system/locale/ja_JP.mjs +0 -1
  169. package/node_modules/typebox/build/system/locale/ko_KR.mjs +0 -1
  170. package/node_modules/typebox/build/system/locale/ms_MY.mjs +0 -1
  171. package/node_modules/typebox/build/system/locale/nl_NL.mjs +0 -1
  172. package/node_modules/typebox/build/system/locale/pl_PL.mjs +0 -1
  173. package/node_modules/typebox/build/system/locale/pt_BR.mjs +0 -1
  174. package/node_modules/typebox/build/system/locale/pt_PT.mjs +0 -1
  175. package/node_modules/typebox/build/system/locale/ro_RO.mjs +0 -1
  176. package/node_modules/typebox/build/system/locale/ru_RU.mjs +0 -1
  177. package/node_modules/typebox/build/system/locale/sv_SE.mjs +0 -1
  178. package/node_modules/typebox/build/system/locale/sw_TZ.mjs +0 -1
  179. package/node_modules/typebox/build/system/locale/th_TH.mjs +0 -1
  180. package/node_modules/typebox/build/system/locale/tr_TR.mjs +0 -1
  181. package/node_modules/typebox/build/system/locale/uk_UA.mjs +0 -1
  182. package/node_modules/typebox/build/system/locale/ur_PK.mjs +0 -1
  183. package/node_modules/typebox/build/system/locale/vi_VN.mjs +0 -1
  184. package/node_modules/typebox/build/system/locale/yo_NG.mjs +0 -1
  185. package/node_modules/typebox/build/system/locale/zh_Hans.mjs +0 -1
  186. package/node_modules/typebox/build/system/locale/zh_Hant.mjs +0 -1
  187. package/node_modules/typebox/build/system/memory/clone.d.mts +2 -3
  188. package/node_modules/typebox/build/system/memory/clone.mjs +73 -26
  189. package/node_modules/typebox/build/system/settings/settings.d.mts +15 -0
  190. package/node_modules/typebox/build/system/settings/settings.mjs +3 -1
  191. package/node_modules/typebox/build/type/action/_add_immutable.d.mts +11 -0
  192. package/node_modules/typebox/build/type/action/_add_immutable.mjs +11 -0
  193. package/node_modules/typebox/build/type/action/_add_optional.d.mts +11 -0
  194. package/node_modules/typebox/build/type/action/_add_optional.mjs +11 -0
  195. package/node_modules/typebox/build/type/action/_add_readonly.d.mts +11 -0
  196. package/node_modules/typebox/build/type/action/_add_readonly.mjs +11 -0
  197. package/node_modules/typebox/build/type/action/_remove_immutable.d.mts +11 -0
  198. package/node_modules/typebox/build/type/action/_remove_immutable.mjs +11 -0
  199. package/node_modules/typebox/build/type/action/_remove_optional.d.mts +11 -0
  200. package/node_modules/typebox/build/type/action/_remove_optional.mjs +11 -0
  201. package/node_modules/typebox/build/type/action/_remove_readonly.d.mts +11 -0
  202. package/node_modules/typebox/build/type/action/_remove_readonly.mjs +11 -0
  203. package/node_modules/typebox/build/type/action/conditional.d.mts +2 -3
  204. package/node_modules/typebox/build/type/action/conditional.mjs +2 -1
  205. package/node_modules/typebox/build/type/action/index.d.mts +7 -4
  206. package/node_modules/typebox/build/type/action/index.mjs +7 -4
  207. package/node_modules/typebox/build/type/action/mapped.d.mts +2 -3
  208. package/node_modules/typebox/build/type/action/mapped.mjs +2 -1
  209. package/node_modules/typebox/build/type/action/module.d.mts +8 -7
  210. package/node_modules/typebox/build/type/action/module.mjs +7 -6
  211. package/node_modules/typebox/build/type/action/readonly_object.d.mts +0 -5
  212. package/node_modules/typebox/build/type/action/readonly_object.mjs +0 -5
  213. package/node_modules/typebox/build/type/action/with.d.mts +11 -0
  214. package/node_modules/typebox/build/type/action/with.mjs +11 -0
  215. package/node_modules/typebox/build/type/engine/call/distribute_arguments.mjs +1 -1
  216. package/node_modules/typebox/build/type/engine/call/instantiate.d.mts +1 -3
  217. package/node_modules/typebox/build/type/engine/call/instantiate.mjs +3 -2
  218. package/node_modules/typebox/build/type/engine/call/resolve_arguments.mjs +2 -2
  219. package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.d.mts +3 -4
  220. package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.mjs +2 -1
  221. package/node_modules/typebox/build/type/engine/cyclic/candidates.d.mts +2 -3
  222. package/node_modules/typebox/build/type/engine/cyclic/candidates.mjs +3 -6
  223. package/node_modules/typebox/build/type/engine/cyclic/check.d.mts +6 -9
  224. package/node_modules/typebox/build/type/engine/cyclic/check.mjs +10 -16
  225. package/node_modules/typebox/build/type/engine/cyclic/dependencies.d.mts +1 -4
  226. package/node_modules/typebox/build/type/engine/cyclic/dependencies.mjs +9 -15
  227. package/node_modules/typebox/build/type/engine/cyclic/extends.d.mts +1 -4
  228. package/node_modules/typebox/build/type/engine/cyclic/extends.mjs +8 -14
  229. package/node_modules/typebox/build/type/engine/cyclic/instantiate.d.mts +2 -5
  230. package/node_modules/typebox/build/type/engine/cyclic/instantiate.mjs +3 -2
  231. package/node_modules/typebox/build/type/engine/enum/index.d.mts +0 -1
  232. package/node_modules/typebox/build/type/engine/enum/index.mjs +0 -1
  233. package/node_modules/typebox/build/type/engine/evaluate/broaden.d.mts +1 -2
  234. package/node_modules/typebox/build/type/engine/evaluate/broaden.mjs +2 -6
  235. package/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +10 -6
  236. package/node_modules/typebox/build/type/engine/evaluate/composite.mjs +10 -6
  237. package/node_modules/typebox/build/type/engine/evaluate/distribute.d.mts +2 -1
  238. package/node_modules/typebox/build/type/engine/evaluate/distribute.mjs +3 -3
  239. package/node_modules/typebox/build/type/engine/evaluate/evaluate.d.mts +17 -5
  240. package/node_modules/typebox/build/type/engine/evaluate/evaluate.mjs +34 -8
  241. package/node_modules/typebox/build/type/engine/exclude/operation.d.mts +5 -6
  242. package/node_modules/typebox/build/type/engine/exclude/operation.mjs +11 -12
  243. package/node_modules/typebox/build/type/engine/extract/operation.d.mts +5 -6
  244. package/node_modules/typebox/build/type/engine/extract/operation.mjs +11 -12
  245. package/node_modules/typebox/build/type/engine/immutable/instantiate_add.d.mts +10 -0
  246. package/node_modules/typebox/build/type/engine/immutable/instantiate_add.mjs +14 -0
  247. package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
  248. package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.mjs +14 -0
  249. package/node_modules/typebox/build/type/engine/index.d.mts +2 -2
  250. package/node_modules/typebox/build/type/engine/index.mjs +2 -2
  251. package/node_modules/typebox/build/type/engine/indexable/from_dependent.d.mts +5 -0
  252. package/node_modules/typebox/build/type/engine/indexable/from_dependent.mjs +8 -0
  253. package/node_modules/typebox/build/type/engine/indexable/from_enum.d.mts +3 -3
  254. package/node_modules/typebox/build/type/engine/indexable/from_enum.mjs +4 -4
  255. package/node_modules/typebox/build/type/engine/indexable/from_template_literal.d.mts +2 -2
  256. package/node_modules/typebox/build/type/engine/indexable/from_template_literal.mjs +3 -3
  257. package/node_modules/typebox/build/type/engine/indexable/from_type.d.mts +3 -1
  258. package/node_modules/typebox/build/type/engine/indexable/from_type.mjs +9 -6
  259. package/node_modules/typebox/build/type/engine/indexed/instantiate.d.mts +2 -1
  260. package/node_modules/typebox/build/type/engine/indexed/instantiate.mjs +5 -2
  261. package/node_modules/typebox/build/type/engine/instantiate.d.mts +44 -31
  262. package/node_modules/typebox/build/type/engine/instantiate.mjs +82 -83
  263. package/node_modules/typebox/build/type/engine/interface/instantiate.d.mts +3 -6
  264. package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.d.mts +2 -2
  265. package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.mjs +3 -3
  266. package/node_modules/typebox/build/type/engine/keyof/instantiate.d.mts +2 -1
  267. package/node_modules/typebox/build/type/engine/keyof/instantiate.mjs +5 -1
  268. package/node_modules/typebox/build/type/engine/mapped/mapped_operation.d.mts +4 -4
  269. package/node_modules/typebox/build/type/engine/mapped/mapped_operation.mjs +3 -3
  270. package/node_modules/typebox/build/type/engine/mapped/mapped_variants.d.mts +5 -4
  271. package/node_modules/typebox/build/type/engine/mapped/mapped_variants.mjs +10 -5
  272. package/node_modules/typebox/build/type/engine/module/instantiate.d.mts +7 -9
  273. package/node_modules/typebox/build/type/engine/module/instantiate.mjs +17 -15
  274. package/node_modules/typebox/build/type/engine/object/from_dependent.d.mts +5 -0
  275. package/node_modules/typebox/build/type/engine/object/from_dependent.mjs +8 -0
  276. package/node_modules/typebox/build/type/engine/object/from_type.d.mts +3 -1
  277. package/node_modules/typebox/build/type/engine/object/from_type.mjs +8 -5
  278. package/node_modules/typebox/build/type/engine/object/from_union.mjs +2 -2
  279. package/node_modules/typebox/build/type/engine/optional/instantiate_add.d.mts +10 -0
  280. package/node_modules/typebox/build/type/engine/optional/instantiate_add.mjs +14 -0
  281. package/node_modules/typebox/build/type/engine/optional/instantiate_remove.d.mts +10 -0
  282. package/node_modules/typebox/build/type/engine/optional/instantiate_remove.mjs +14 -0
  283. package/node_modules/typebox/build/type/engine/parameters/instantiate.d.mts +3 -4
  284. package/node_modules/typebox/build/type/engine/parameters/instantiate.mjs +2 -1
  285. package/node_modules/typebox/build/type/engine/partial/from_dependent.d.mts +5 -0
  286. package/node_modules/typebox/build/type/engine/partial/from_dependent.mjs +8 -0
  287. package/node_modules/typebox/build/type/engine/partial/from_intersect.d.mts +1 -1
  288. package/node_modules/typebox/build/type/engine/partial/from_intersect.mjs +3 -2
  289. package/node_modules/typebox/build/type/engine/partial/from_object.d.mts +2 -2
  290. package/node_modules/typebox/build/type/engine/partial/from_object.mjs +2 -2
  291. package/node_modules/typebox/build/type/engine/partial/from_type.d.mts +3 -1
  292. package/node_modules/typebox/build/type/engine/partial/from_type.mjs +7 -4
  293. package/node_modules/typebox/build/type/engine/priority/index.d.mts +1 -0
  294. package/node_modules/typebox/build/type/engine/priority/index.mjs +1 -0
  295. package/node_modules/typebox/build/type/engine/priority/priority.d.mts +20 -0
  296. package/node_modules/typebox/build/type/engine/priority/priority.mjs +28 -0
  297. package/node_modules/typebox/build/type/engine/readonly/instantiate_add.d.mts +10 -0
  298. package/node_modules/typebox/build/type/engine/readonly/instantiate_add.mjs +14 -0
  299. package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
  300. package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.mjs +14 -0
  301. package/node_modules/typebox/build/type/engine/readonly_object/from_array.d.mts +2 -2
  302. package/node_modules/typebox/build/type/engine/readonly_object/from_array.mjs +2 -2
  303. package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
  304. package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.mjs +8 -0
  305. package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.d.mts +1 -1
  306. package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.mjs +3 -2
  307. package/node_modules/typebox/build/type/engine/readonly_object/from_object.d.mts +2 -2
  308. package/node_modules/typebox/build/type/engine/readonly_object/from_object.mjs +2 -2
  309. package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.d.mts +2 -2
  310. package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.mjs +2 -2
  311. package/node_modules/typebox/build/type/engine/readonly_object/from_type.d.mts +3 -1
  312. package/node_modules/typebox/build/type/engine/readonly_object/from_type.mjs +8 -5
  313. package/node_modules/typebox/build/type/engine/record/from_key_enum.d.mts +2 -2
  314. package/node_modules/typebox/build/type/engine/record/from_key_enum.mjs +2 -2
  315. package/node_modules/typebox/build/type/engine/record/from_key_template_literal.d.mts +2 -2
  316. package/node_modules/typebox/build/type/engine/record/from_key_template_literal.mjs +2 -2
  317. package/node_modules/typebox/build/type/engine/ref/instantiate.d.mts +3 -3
  318. package/node_modules/typebox/build/type/engine/ref/instantiate.mjs +6 -6
  319. package/node_modules/typebox/build/type/engine/required/from_dependent.d.mts +5 -0
  320. package/node_modules/typebox/build/type/engine/required/from_dependent.mjs +8 -0
  321. package/node_modules/typebox/build/type/engine/required/from_intersect.d.mts +1 -1
  322. package/node_modules/typebox/build/type/engine/required/from_intersect.mjs +3 -2
  323. package/node_modules/typebox/build/type/engine/required/from_object.d.mts +2 -2
  324. package/node_modules/typebox/build/type/engine/required/from_object.mjs +2 -2
  325. package/node_modules/typebox/build/type/engine/required/from_type.d.mts +3 -1
  326. package/node_modules/typebox/build/type/engine/required/from_type.mjs +7 -4
  327. package/node_modules/typebox/build/type/engine/template_literal/decode.mjs +3 -3
  328. package/node_modules/typebox/build/type/engine/template_literal/encode.d.mts +2 -2
  329. package/node_modules/typebox/build/type/engine/template_literal/encode.mjs +6 -6
  330. package/node_modules/typebox/build/type/engine/template_literal/is_finite.mjs +1 -1
  331. package/node_modules/typebox/build/type/engine/template_literal/is_pattern.mjs +1 -0
  332. package/node_modules/typebox/build/type/engine/this/expand_this.d.mts +1 -4
  333. package/node_modules/typebox/build/type/engine/this/expand_this.mjs +7 -13
  334. package/node_modules/typebox/build/type/engine/with/instantiate.d.mts +8 -0
  335. package/node_modules/typebox/build/type/engine/{options → with}/instantiate.mjs +5 -5
  336. package/node_modules/typebox/build/type/extends/dependent.d.mts +6 -0
  337. package/node_modules/typebox/build/type/extends/dependent.mjs +6 -0
  338. package/node_modules/typebox/build/type/extends/enum.d.mts +4 -4
  339. package/node_modules/typebox/build/type/extends/enum.mjs +3 -2
  340. package/node_modules/typebox/build/type/extends/extends_left.d.mts +5 -7
  341. package/node_modules/typebox/build/type/extends/extends_left.mjs +24 -27
  342. package/node_modules/typebox/build/type/extends/extends_right.d.mts +7 -5
  343. package/node_modules/typebox/build/type/extends/extends_right.mjs +20 -15
  344. package/node_modules/typebox/build/type/extends/inference.mjs +1 -1
  345. package/node_modules/typebox/build/type/extends/object.d.mts +8 -1
  346. package/node_modules/typebox/build/type/extends/object.mjs +25 -3
  347. package/node_modules/typebox/build/type/extends/parameters.mjs +2 -2
  348. package/node_modules/typebox/build/type/extends/record.d.mts +13 -0
  349. package/node_modules/typebox/build/type/extends/record.mjs +23 -0
  350. package/node_modules/typebox/build/type/extends/template_literal.d.mts +3 -3
  351. package/node_modules/typebox/build/type/extends/template_literal.mjs +3 -3
  352. package/node_modules/typebox/build/type/extends/tuple.d.mts +3 -6
  353. package/node_modules/typebox/build/type/extends/tuple.mjs +6 -5
  354. package/node_modules/typebox/build/type/extends/union.mjs +2 -2
  355. package/node_modules/typebox/build/type/script/mapping.d.mts +84 -99
  356. package/node_modules/typebox/build/type/script/mapping.mjs +81 -85
  357. package/node_modules/typebox/build/type/script/parser.d.mts +40 -40
  358. package/node_modules/typebox/build/type/script/parser.mjs +22 -22
  359. package/node_modules/typebox/build/type/script/script.d.mts +3 -4
  360. package/node_modules/typebox/build/type/script/script.mjs +3 -2
  361. package/node_modules/typebox/build/type/script/token/internal/guard.d.mts +1 -1
  362. package/node_modules/typebox/build/type/script/token/internal/guard.mjs +1 -1
  363. package/node_modules/typebox/build/type/script/token/internal/take.mjs +1 -1
  364. package/node_modules/typebox/build/type/script/token/until.mjs +2 -2
  365. package/node_modules/typebox/build/type/types/_codec.d.mts +12 -12
  366. package/node_modules/typebox/build/type/types/_codec.mjs +0 -1
  367. package/node_modules/typebox/build/type/types/_immutable.d.mts +2 -9
  368. package/node_modules/typebox/build/type/types/_immutable.mjs +2 -10
  369. package/node_modules/typebox/build/type/types/_optional.d.mts +2 -9
  370. package/node_modules/typebox/build/type/types/_optional.mjs +2 -11
  371. package/node_modules/typebox/build/type/types/_readonly.d.mts +2 -9
  372. package/node_modules/typebox/build/type/types/_readonly.mjs +2 -10
  373. package/node_modules/typebox/build/type/types/_refine.d.mts +8 -10
  374. package/node_modules/typebox/build/type/types/_refine.mjs +1 -2
  375. package/node_modules/typebox/build/type/types/call.d.mts +3 -3
  376. package/node_modules/typebox/build/type/types/call.mjs +3 -2
  377. package/node_modules/typebox/build/type/types/deferred.d.mts +1 -0
  378. package/node_modules/typebox/build/type/types/deferred.mjs +1 -1
  379. package/node_modules/typebox/build/type/types/dependent.d.mts +17 -0
  380. package/node_modules/typebox/build/type/types/dependent.mjs +24 -0
  381. package/node_modules/typebox/build/type/types/enum.d.mts +3 -1
  382. package/node_modules/typebox/build/type/types/enum.mjs +5 -0
  383. package/node_modules/typebox/build/type/types/index.d.mts +1 -4
  384. package/node_modules/typebox/build/type/types/index.mjs +1 -4
  385. package/node_modules/typebox/build/type/types/number.d.mts +1 -1
  386. package/node_modules/typebox/build/type/types/number.mjs +1 -1
  387. package/node_modules/typebox/build/type/types/record.d.mts +13 -7
  388. package/node_modules/typebox/build/type/types/record.mjs +15 -9
  389. package/node_modules/typebox/build/type/types/static.d.mts +2 -5
  390. package/node_modules/typebox/build/typebox.d.mts +4 -8
  391. package/node_modules/typebox/build/typebox.mjs +4 -8
  392. package/node_modules/typebox/build/value/clean/clean.mjs +4 -2
  393. package/node_modules/typebox/build/value/clean/from_intersect.mjs +2 -2
  394. package/node_modules/typebox/build/value/clean/from_type.mjs +8 -10
  395. package/node_modules/typebox/build/value/clean/from_union.d.mts +1 -1
  396. package/node_modules/typebox/build/value/clean/from_union.mjs +1 -2
  397. package/node_modules/typebox/build/value/clone/clone.mjs +2 -73
  398. package/node_modules/typebox/build/value/codec/decode.mjs +4 -2
  399. package/node_modules/typebox/build/value/codec/encode.mjs +4 -2
  400. package/node_modules/typebox/build/value/codec/from_array.mjs +1 -4
  401. package/node_modules/typebox/build/value/codec/from_object.mjs +1 -4
  402. package/node_modules/typebox/build/value/codec/from_record.mjs +2 -7
  403. package/node_modules/typebox/build/value/codec/from_tuple.mjs +1 -4
  404. package/node_modules/typebox/build/value/codec/from_union.mjs +2 -3
  405. package/node_modules/typebox/build/value/convert/from_enum.mjs +3 -4
  406. package/node_modules/typebox/build/value/convert/from_template_literal.d.mts +1 -1
  407. package/node_modules/typebox/build/value/convert/from_template_literal.mjs +2 -3
  408. package/node_modules/typebox/build/value/convert/from_type.mjs +19 -21
  409. package/node_modules/typebox/build/value/create/from_enum.mjs +2 -2
  410. package/node_modules/typebox/build/value/create/from_type.mjs +23 -31
  411. package/node_modules/typebox/build/value/default/from_object.mjs +1 -1
  412. package/node_modules/typebox/build/value/default/from_type.mjs +8 -10
  413. package/node_modules/typebox/build/value/index.d.mts +0 -1
  414. package/node_modules/typebox/build/value/index.mjs +0 -1
  415. package/node_modules/typebox/build/value/repair/from_enum.mjs +2 -3
  416. package/node_modules/typebox/build/value/repair/from_type.mjs +24 -22
  417. package/node_modules/typebox/build/value/shared/union_priority_sort.d.mts +6 -2
  418. package/node_modules/typebox/build/value/shared/union_priority_sort.mjs +62 -26
  419. package/node_modules/typebox/build/value/value.d.mts +0 -1
  420. package/node_modules/typebox/build/value/value.mjs +0 -1
  421. package/node_modules/typebox/package.json +25 -25
  422. package/node_modules/typebox/readme.md +97 -80
  423. package/node_modules/undici-types/agent.d.ts +0 -2
  424. package/node_modules/undici-types/client.d.ts +25 -19
  425. package/node_modules/undici-types/dispatcher.d.ts +7 -33
  426. package/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
  427. package/node_modules/undici-types/fetch.d.ts +24 -4
  428. package/node_modules/undici-types/h2c-client.d.ts +6 -6
  429. package/node_modules/undici-types/handlers.d.ts +1 -2
  430. package/node_modules/undici-types/header.d.ts +5 -0
  431. package/node_modules/undici-types/index.d.ts +3 -1
  432. package/node_modules/undici-types/interceptors.d.ts +1 -1
  433. package/node_modules/undici-types/package.json +1 -1
  434. package/node_modules/undici-types/pool.d.ts +0 -2
  435. package/node_modules/undici-types/proxy-agent.d.ts +2 -2
  436. package/node_modules/undici-types/round-robin-pool.d.ts +0 -2
  437. package/node_modules/undici-types/snapshot-agent.d.ts +4 -0
  438. package/node_modules/undici-types/socks5-proxy-agent.d.ts +2 -2
  439. package/node_modules/undici-types/webidl.d.ts +0 -1
  440. package/npm-shrinkwrap.json +55 -47
  441. package/openclaw.plugin.json +46 -0
  442. package/package.json +6 -6
  443. package/dist/accounts.runtime-CgWgzjLX.js +0 -2
  444. package/dist/action-runtime.runtime-Pwl_ixsr.js +0 -2
  445. package/dist/actions.runtime-Dl6AfO_g.js +0 -2
  446. package/dist/errors-CZtmv-h0.js +0 -107
  447. package/dist/outbound-adapter-WHn1M1t4.js +0 -191
  448. package/dist/send.runtime-a-O4PP2B.js +0 -2
  449. package/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  450. package/node_modules/@types/ws/node_modules/@types/node/LICENSE +0 -21
  451. package/node_modules/@types/ws/node_modules/@types/node/README.md +0 -15
  452. package/node_modules/@types/ws/node_modules/@types/node/assert/strict.d.ts +0 -59
  453. package/node_modules/@types/ws/node_modules/@types/node/assert.d.ts +0 -950
  454. package/node_modules/@types/ws/node_modules/@types/node/async_hooks.d.ts +0 -711
  455. package/node_modules/@types/ws/node_modules/@types/node/buffer.buffer.d.ts +0 -466
  456. package/node_modules/@types/ws/node_modules/@types/node/buffer.d.ts +0 -1765
  457. package/node_modules/@types/ws/node_modules/@types/node/child_process.d.ts +0 -1366
  458. package/node_modules/@types/ws/node_modules/@types/node/cluster.d.ts +0 -432
  459. package/node_modules/@types/ws/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  460. package/node_modules/@types/ws/node_modules/@types/node/console.d.ts +0 -93
  461. package/node_modules/@types/ws/node_modules/@types/node/constants.d.ts +0 -14
  462. package/node_modules/@types/ws/node_modules/@types/node/crypto.d.ts +0 -4058
  463. package/node_modules/@types/ws/node_modules/@types/node/dgram.d.ts +0 -537
  464. package/node_modules/@types/ws/node_modules/@types/node/diagnostics_channel.d.ts +0 -552
  465. package/node_modules/@types/ws/node_modules/@types/node/dns/promises.d.ts +0 -497
  466. package/node_modules/@types/ws/node_modules/@types/node/dns.d.ts +0 -876
  467. package/node_modules/@types/ws/node_modules/@types/node/domain.d.ts +0 -150
  468. package/node_modules/@types/ws/node_modules/@types/node/events.d.ts +0 -1008
  469. package/node_modules/@types/ws/node_modules/@types/node/fs/promises.d.ts +0 -1468
  470. package/node_modules/@types/ws/node_modules/@types/node/fs.d.ts +0 -4780
  471. package/node_modules/@types/ws/node_modules/@types/node/globals.d.ts +0 -150
  472. package/node_modules/@types/ws/node_modules/@types/node/globals.typedarray.d.ts +0 -101
  473. package/node_modules/@types/ws/node_modules/@types/node/http.d.ts +0 -2147
  474. package/node_modules/@types/ws/node_modules/@types/node/http2.d.ts +0 -2485
  475. package/node_modules/@types/ws/node_modules/@types/node/https.d.ts +0 -400
  476. package/node_modules/@types/ws/node_modules/@types/node/index.d.ts +0 -117
  477. package/node_modules/@types/ws/node_modules/@types/node/inspector/promises.d.ts +0 -35
  478. package/node_modules/@types/ws/node_modules/@types/node/inspector.d.ts +0 -264
  479. package/node_modules/@types/ws/node_modules/@types/node/inspector.generated.d.ts +0 -4406
  480. package/node_modules/@types/ws/node_modules/@types/node/module.d.ts +0 -755
  481. package/node_modules/@types/ws/node_modules/@types/node/net.d.ts +0 -970
  482. package/node_modules/@types/ws/node_modules/@types/node/os.d.ts +0 -498
  483. package/node_modules/@types/ws/node_modules/@types/node/package.json +0 -155
  484. package/node_modules/@types/ws/node_modules/@types/node/path/posix.d.ts +0 -8
  485. package/node_modules/@types/ws/node_modules/@types/node/path/win32.d.ts +0 -8
  486. package/node_modules/@types/ws/node_modules/@types/node/path.d.ts +0 -178
  487. package/node_modules/@types/ws/node_modules/@types/node/perf_hooks.d.ts +0 -612
  488. package/node_modules/@types/ws/node_modules/@types/node/process.d.ts +0 -2204
  489. package/node_modules/@types/ws/node_modules/@types/node/punycode.d.ts +0 -89
  490. package/node_modules/@types/ws/node_modules/@types/node/querystring.d.ts +0 -139
  491. package/node_modules/@types/ws/node_modules/@types/node/quic.d.ts +0 -897
  492. package/node_modules/@types/ws/node_modules/@types/node/readline/promises.d.ts +0 -158
  493. package/node_modules/@types/ws/node_modules/@types/node/readline.d.ts +0 -507
  494. package/node_modules/@types/ws/node_modules/@types/node/repl.d.ts +0 -420
  495. package/node_modules/@types/ws/node_modules/@types/node/sea.d.ts +0 -47
  496. package/node_modules/@types/ws/node_modules/@types/node/sqlite.d.ts +0 -1068
  497. package/node_modules/@types/ws/node_modules/@types/node/stream/consumers.d.ts +0 -114
  498. package/node_modules/@types/ws/node_modules/@types/node/stream/iter.d.ts +0 -301
  499. package/node_modules/@types/ws/node_modules/@types/node/stream/promises.d.ts +0 -211
  500. package/node_modules/@types/ws/node_modules/@types/node/stream/web.d.ts +0 -300
  501. package/node_modules/@types/ws/node_modules/@types/node/stream.d.ts +0 -1774
  502. package/node_modules/@types/ws/node_modules/@types/node/string_decoder.d.ts +0 -27
  503. package/node_modules/@types/ws/node_modules/@types/node/test/reporters.d.ts +0 -59
  504. package/node_modules/@types/ws/node_modules/@types/node/test.d.ts +0 -2279
  505. package/node_modules/@types/ws/node_modules/@types/node/timers/promises.d.ts +0 -93
  506. package/node_modules/@types/ws/node_modules/@types/node/timers.d.ts +0 -149
  507. package/node_modules/@types/ws/node_modules/@types/node/tls.d.ts +0 -1193
  508. package/node_modules/@types/ws/node_modules/@types/node/trace_events.d.ts +0 -103
  509. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
  510. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
  511. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
  512. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/index.d.ts +0 -119
  513. package/node_modules/@types/ws/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
  514. package/node_modules/@types/ws/node_modules/@types/node/ts5.7/index.d.ts +0 -119
  515. package/node_modules/@types/ws/node_modules/@types/node/tty.d.ts +0 -225
  516. package/node_modules/@types/ws/node_modules/@types/node/url.d.ts +0 -556
  517. package/node_modules/@types/ws/node_modules/@types/node/util/types.d.ts +0 -558
  518. package/node_modules/@types/ws/node_modules/@types/node/util.d.ts +0 -1677
  519. package/node_modules/@types/ws/node_modules/@types/node/v8.d.ts +0 -980
  520. package/node_modules/@types/ws/node_modules/@types/node/vm.d.ts +0 -1136
  521. package/node_modules/@types/ws/node_modules/@types/node/wasi.d.ts +0 -131
  522. package/node_modules/@types/ws/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
  523. package/node_modules/@types/ws/node_modules/@types/node/web-globals/blob.d.ts +0 -23
  524. package/node_modules/@types/ws/node_modules/@types/node/web-globals/console.d.ts +0 -9
  525. package/node_modules/@types/ws/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
  526. package/node_modules/@types/ws/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  527. package/node_modules/@types/ws/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
  528. package/node_modules/@types/ws/node_modules/@types/node/web-globals/events.d.ts +0 -106
  529. package/node_modules/@types/ws/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
  530. package/node_modules/@types/ws/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
  531. package/node_modules/@types/ws/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
  532. package/node_modules/@types/ws/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
  533. package/node_modules/@types/ws/node_modules/@types/node/web-globals/performance.d.ts +0 -45
  534. package/node_modules/@types/ws/node_modules/@types/node/web-globals/storage.d.ts +0 -24
  535. package/node_modules/@types/ws/node_modules/@types/node/web-globals/streams.d.ts +0 -115
  536. package/node_modules/@types/ws/node_modules/@types/node/web-globals/timers.d.ts +0 -44
  537. package/node_modules/@types/ws/node_modules/@types/node/web-globals/url.d.ts +0 -24
  538. package/node_modules/@types/ws/node_modules/@types/node/worker_threads.d.ts +0 -671
  539. package/node_modules/@types/ws/node_modules/@types/node/zlib/iter.d.ts +0 -131
  540. package/node_modules/@types/ws/node_modules/@types/node/zlib.d.ts +0 -589
  541. package/node_modules/typebox/build/schema/engine/_guard.d.mts +0 -6
  542. package/node_modules/typebox/build/schema/engine/_guard.mjs +0 -26
  543. package/node_modules/typebox/build/schema/types/_guard.d.mts +0 -10
  544. package/node_modules/typebox/build/schema/types/_guard.mjs +0 -16
  545. package/node_modules/typebox/build/type/action/_optional.d.mts +0 -19
  546. package/node_modules/typebox/build/type/action/_optional.mjs +0 -40
  547. package/node_modules/typebox/build/type/action/_readonly.d.mts +0 -19
  548. package/node_modules/typebox/build/type/action/_readonly.mjs +0 -40
  549. package/node_modules/typebox/build/type/action/awaited.d.mts +0 -15
  550. package/node_modules/typebox/build/type/action/awaited.mjs +0 -15
  551. package/node_modules/typebox/build/type/action/options.d.mts +0 -11
  552. package/node_modules/typebox/build/type/action/options.mjs +0 -11
  553. package/node_modules/typebox/build/type/engine/awaited/instantiate.d.mts +0 -11
  554. package/node_modules/typebox/build/type/engine/awaited/instantiate.mjs +0 -20
  555. package/node_modules/typebox/build/type/engine/enum/enum_to_union.d.mts +0 -14
  556. package/node_modules/typebox/build/type/engine/enum/enum_to_union.mjs +0 -24
  557. package/node_modules/typebox/build/type/engine/options/index.d.mts +0 -1
  558. package/node_modules/typebox/build/type/engine/options/index.mjs +0 -1
  559. package/node_modules/typebox/build/type/engine/options/instantiate.d.mts +0 -8
  560. package/node_modules/typebox/build/type/extends/async_iterator.d.mts +0 -7
  561. package/node_modules/typebox/build/type/extends/async_iterator.mjs +0 -9
  562. package/node_modules/typebox/build/type/extends/iterator.d.mts +0 -7
  563. package/node_modules/typebox/build/type/extends/iterator.mjs +0 -9
  564. package/node_modules/typebox/build/type/extends/promise.d.mts +0 -7
  565. package/node_modules/typebox/build/type/extends/promise.mjs +0 -9
  566. package/node_modules/typebox/build/type/types/async_iterator.d.mts +0 -20
  567. package/node_modules/typebox/build/type/types/async_iterator.mjs +0 -28
  568. package/node_modules/typebox/build/type/types/base.d.mts +0 -50
  569. package/node_modules/typebox/build/type/types/base.mjs +0 -84
  570. package/node_modules/typebox/build/type/types/iterator.d.mts +0 -20
  571. package/node_modules/typebox/build/type/types/iterator.mjs +0 -28
  572. package/node_modules/typebox/build/type/types/promise.d.mts +0 -21
  573. package/node_modules/typebox/build/type/types/promise.mjs +0 -29
  574. package/node_modules/typebox/build/value/clean/from_base.d.mts +0 -2
  575. package/node_modules/typebox/build/value/clean/from_base.mjs +0 -4
  576. package/node_modules/typebox/build/value/convert/from_base.d.mts +0 -2
  577. package/node_modules/typebox/build/value/convert/from_base.mjs +0 -4
  578. package/node_modules/typebox/build/value/create/from_async_iterator.d.mts +0 -2
  579. package/node_modules/typebox/build/value/create/from_async_iterator.mjs +0 -5
  580. package/node_modules/typebox/build/value/create/from_base.d.mts +0 -2
  581. package/node_modules/typebox/build/value/create/from_base.mjs +0 -4
  582. package/node_modules/typebox/build/value/create/from_iterator.d.mts +0 -2
  583. package/node_modules/typebox/build/value/create/from_iterator.mjs +0 -5
  584. package/node_modules/typebox/build/value/create/from_promise.d.mts +0 -2
  585. package/node_modules/typebox/build/value/create/from_promise.mjs +0 -5
  586. package/node_modules/typebox/build/value/default/from_base.d.mts +0 -2
  587. package/node_modules/typebox/build/value/default/from_base.mjs +0 -5
  588. package/node_modules/typebox/build/value/mutate/error.d.mts +0 -3
  589. package/node_modules/typebox/build/value/mutate/error.mjs +0 -6
  590. package/node_modules/typebox/build/value/mutate/from_array.d.mts +0 -2
  591. package/node_modules/typebox/build/value/mutate/from_array.mjs +0 -16
  592. package/node_modules/typebox/build/value/mutate/from_object.d.mts +0 -2
  593. package/node_modules/typebox/build/value/mutate/from_object.mjs +0 -40
  594. package/node_modules/typebox/build/value/mutate/from_unknown.d.mts +0 -2
  595. package/node_modules/typebox/build/value/mutate/from_unknown.mjs +0 -7
  596. package/node_modules/typebox/build/value/mutate/from_value.d.mts +0 -2
  597. package/node_modules/typebox/build/value/mutate/from_value.mjs +0 -12
  598. package/node_modules/typebox/build/value/mutate/index.d.mts +0 -1
  599. package/node_modules/typebox/build/value/mutate/index.mjs +0 -1
  600. package/node_modules/typebox/build/value/mutate/mutate.d.mts +0 -11
  601. package/node_modules/typebox/build/value/mutate/mutate.mjs +0 -41
  602. package/node_modules/typebox/build/value/repair/from_base.d.mts +0 -2
  603. package/node_modules/typebox/build/value/repair/from_base.mjs +0 -8
  604. /package/node_modules/typebox/build/type/engine/{awaited → with}/index.d.mts +0 -0
  605. /package/node_modules/typebox/build/type/engine/{awaited → with}/index.mjs +0 -0
@@ -1,4 +1,4 @@
1
- import { i as resolveDefaultSlackAccountId, r as mergeSlackAccountConfig } from "./accounts-BPCiCe8y.js";
1
+ import { i as resolveDefaultSlackAccountId, r as mergeSlackAccountConfig } from "./accounts-BOJJiHSr.js";
2
2
  import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "openclaw/plugin-sdk/account-resolution";
3
3
  import { hasConfiguredSecretInput, normalizeSecretInputString } from "openclaw/plugin-sdk/secret-input";
4
4
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
@@ -1,4 +1,4 @@
1
- import { t as inspectSlackAccount } from "./account-inspect-DOtQbKkB.js";
1
+ import { t as inspectSlackAccount } from "./account-inspect-Di7ditqZ.js";
2
2
  //#region extensions/slack/account-inspect-api.ts
3
3
  function inspectSlackReadOnlyAccount(cfg, accountId) {
4
4
  return inspectSlackAccount({
@@ -4,6 +4,13 @@ import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runti
4
4
  import { mapAllowFromEntries, normalizeChannelDmPolicy, resolveChannelDmAllowFrom, resolveChannelDmPolicy } from "openclaw/plugin-sdk/channel-config-helpers";
5
5
  import { resolveAccountEntry } from "openclaw/plugin-sdk/routing";
6
6
  //#region extensions/slack/src/token.ts
7
+ function formatSlackBotTokenIdentityWarning(params) {
8
+ const userId = params.auth.user_id?.trim();
9
+ const botId = params.auth.bot_id?.trim();
10
+ if (!userId || botId) return;
11
+ const accountId = params.accountId?.trim() || "default";
12
+ return `Slack auth.test identified account "${accountId}" as user ${userId} without bot_id. ${accountId === "default" ? "channels.slack.botToken, channels.slack.accounts.default.botToken, or SLACK_BOT_TOKEN" : `channels.slack.accounts.${accountId}.botToken`} appears to contain a user token; replace it with a Bot User OAuth Token. Until replaced, explicit bot-mention detection is disabled and required-mention channels fail closed.`;
13
+ }
7
14
  function resolveSlackBotToken(raw, path = "channels.slack.botToken") {
8
15
  return normalizeResolvedSecretInputString({
9
16
  value: raw,
@@ -38,6 +45,12 @@ function resolveSlackReplyToMode(account, chatType) {
38
45
  }
39
46
  //#endregion
40
47
  //#region extensions/slack/src/accounts.ts
48
+ function resolveSlackOperationToken(account, operation) {
49
+ const userToken = normalizeOptionalString(account.userToken);
50
+ const botToken = normalizeOptionalString(account.botToken);
51
+ if (operation === "read") return userToken ?? botToken;
52
+ return account.config.userTokenReadOnly === false ? botToken ?? userToken : botToken;
53
+ }
41
54
  const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("slack", { hasImplicitDefaultAccount: (cfg) => {
42
55
  const slack = cfg.channels?.slack;
43
56
  if (!(hasConfiguredAccountValue(slack?.botToken) || hasConfiguredAccountValue(process.env.SLACK_BOT_TOKEN))) return false;
@@ -184,4 +197,4 @@ function listEnabledSlackAccounts(cfg) {
184
197
  })).filter((account) => account.enabled);
185
198
  }
186
199
  //#endregion
187
- export { resolveSlackAccount as a, resolveSlackConfigAccessorAccount as c, resolveSlackBotToken as d, resolveDefaultSlackAccountId as i, resolveSlackReplyToMode as l, listSlackAccountIds as n, resolveSlackAccountAllowFrom as o, mergeSlackAccountConfig as r, resolveSlackAccountDmPolicy as s, listEnabledSlackAccounts as t, resolveSlackAppToken as u };
200
+ export { resolveSlackAccount as a, resolveSlackConfigAccessorAccount as c, formatSlackBotTokenIdentityWarning as d, resolveSlackAppToken as f, resolveDefaultSlackAccountId as i, resolveSlackOperationToken as l, listSlackAccountIds as n, resolveSlackAccountAllowFrom as o, resolveSlackBotToken as p, mergeSlackAccountConfig as r, resolveSlackAccountDmPolicy as s, listEnabledSlackAccounts as t, resolveSlackReplyToMode as u };
@@ -0,0 +1,2 @@
1
+ import { a as resolveSlackAccount } from "./accounts-BOJJiHSr.js";
2
+ export { resolveSlackAccount };
@@ -1,13 +1,14 @@
1
1
  import { i as resolveSlackChannelId } from "./target-parsing-3jYH8LfB.js";
2
2
  import { t as slackContextTargetsMatch } from "./targets-Dll4NJgs.js";
3
- import { r as parseSlackBlocksInput } from "./reply-blocks-CfJqf7eq.js";
4
- import { a as readPositiveIntegerParam, c as withNormalizedTimestamp, n as imageResultFromFile, o as readReactionParams, r as jsonResult, s as readStringParam, t as createActionGate } from "./runtime-api-DHJ8ntLr.js";
5
- import { n as resolveSlackChannelConfig, t as isSlackChannelAllowedByPolicy } from "./policy-DAE6BTN3.js";
3
+ import { r as parseSlackBlocksInput } from "./reply-blocks-BGQ6zSqM.js";
4
+ import { a as readPositiveIntegerParam, c as withNormalizedTimestamp, n as imageResultFromFile, o as readReactionParams, r as jsonResult, s as readStringParam, t as createActionGate } from "./runtime-api-CEmqYxR-.js";
5
+ import { n as resolveSlackChannelConfig, t as isSlackChannelAllowedByPolicy } from "./policy-Dj-puVPb.js";
6
+ import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
6
7
  import { isSingleUseReplyToMode } from "openclaw/plugin-sdk/reply-reference";
7
8
  import { readBooleanParam } from "openclaw/plugin-sdk/boolean-param";
8
9
  import { resolveOpenProviderRuntimeGroupPolicy } from "openclaw/plugin-sdk/runtime-group-policy";
9
10
  //#region extensions/slack/src/action-runtime.ts
10
- const messagingActions = new Set([
11
+ const messagingActions = /* @__PURE__ */ new Set([
11
12
  "sendMessage",
12
13
  "uploadFile",
13
14
  "editMessage",
@@ -15,22 +16,14 @@ const messagingActions = new Set([
15
16
  "readMessages",
16
17
  "downloadFile"
17
18
  ]);
18
- const reactionsActions = new Set(["react", "reactions"]);
19
- const pinActions = new Set([
19
+ const reactionsActions = /* @__PURE__ */ new Set(["react", "reactions"]);
20
+ const pinActions = /* @__PURE__ */ new Set([
20
21
  "pinMessage",
21
22
  "unpinMessage",
22
23
  "listPins"
23
24
  ]);
24
- let slackActionsRuntimePromise;
25
- let slackAccountsRuntimePromise;
26
- function loadSlackActionsRuntime() {
27
- slackActionsRuntimePromise ??= import("./actions.runtime-Dl6AfO_g.js");
28
- return slackActionsRuntimePromise;
29
- }
30
- function loadSlackAccountsRuntime() {
31
- slackAccountsRuntimePromise ??= import("./accounts.runtime-CgWgzjLX.js");
32
- return slackAccountsRuntimePromise;
33
- }
25
+ const loadSlackActionsRuntime = createLazyRuntimeModule(() => import("./actions.runtime-C103_BPW.js"));
26
+ const loadSlackAccountsRuntime = createLazyRuntimeModule(() => import("./accounts.runtime-DWvaCb-X.js"));
34
27
  function createLazySlackAction(key) {
35
28
  return (async (...args) => {
36
29
  const action = (await loadSlackActionsRuntime())[key];
@@ -51,6 +44,7 @@ const slackActionRuntime = {
51
44
  readSlackMessages: createLazySlackAction("readSlackMessages"),
52
45
  removeOwnSlackReactions: createLazySlackAction("removeOwnSlackReactions"),
53
46
  removeSlackReaction: createLazySlackAction("removeSlackReaction"),
47
+ resolveSlackConversationName: createLazySlackAction("resolveSlackConversationName"),
54
48
  sendSlackMessage: createLazySlackAction("sendSlackMessage"),
55
49
  unpinSlackMessage: createLazySlackAction("unpinSlackMessage")
56
50
  };
@@ -81,11 +75,12 @@ function readSlackBlocksParam(params) {
81
75
  function isImageContentType(value) {
82
76
  return value?.trim().toLowerCase().startsWith("image/") === true;
83
77
  }
84
- function assertSlackReadTargetAllowed(params) {
78
+ function resolveSlackReadTargetDecision(params) {
85
79
  const channels = params.account.config.channels;
86
80
  const channelKeys = Object.keys(channels ?? {});
87
81
  const channelConfig = resolveSlackChannelConfig({
88
82
  channelId: params.channelId,
83
+ channelName: params.channelName,
89
84
  channels,
90
85
  channelKeys,
91
86
  allowNameMatching: params.account.config.dangerouslyAllowNameMatching,
@@ -97,12 +92,24 @@ function assertSlackReadTargetAllowed(params) {
97
92
  groupPolicy: params.account.config.groupPolicy,
98
93
  defaultGroupPolicy: params.cfg.channels?.defaults?.groupPolicy
99
94
  });
100
- if (groupPolicy === "disabled" || groupPolicy === "allowlist" && !isSlackChannelAllowedByPolicy({
95
+ if (isSlackChannelAllowedByPolicy({
101
96
  groupPolicy,
102
97
  channelAllowlistConfigured: channelKeys.length > 0,
103
98
  channelAllowed
104
- })) throw new Error("Slack read target channel is not allowed.");
105
- if (!channelAllowed && (groupPolicy !== "open" || channelConfig?.matchSource)) throw new Error("Slack read target channel is not allowed.");
99
+ })) return !channelAllowed && (groupPolicy !== "open" || channelConfig?.matchSource) ? "deny" : "allow";
100
+ return groupPolicy === "allowlist" && channelKeys.length > 0 && params.account.config.dangerouslyAllowNameMatching === true && !params.channelName && (channelConfig?.matchSource === void 0 || channelConfig.matchSource === "wildcard") ? "resolve-name" : "deny";
101
+ }
102
+ async function assertSlackReadTargetAllowed(params) {
103
+ const direct = resolveSlackReadTargetDecision(params);
104
+ if (direct === "allow") return;
105
+ if (direct === "resolve-name") {
106
+ const channelName = await params.resolveChannelName();
107
+ if (channelName && resolveSlackReadTargetDecision({
108
+ ...params,
109
+ channelName
110
+ }) === "allow") return;
111
+ }
112
+ throw new Error("Slack read target channel is not allowed.");
106
113
  }
107
114
  async function handleSlackAction(params, cfg, context) {
108
115
  const resolveChannelId = () => resolveSlackChannelId(readStringParam(params, "channelId", { required: true }));
@@ -133,6 +140,12 @@ async function handleSlackAction(params, cfg, context) {
133
140
  };
134
141
  const readOpts = buildActionOpts("read");
135
142
  const writeOpts = buildActionOpts("write");
143
+ const assertReadTargetAllowed = async (channelId) => await assertSlackReadTargetAllowed({
144
+ account,
145
+ cfg,
146
+ channelId,
147
+ resolveChannelName: async () => await slackActionRuntime.resolveSlackConversationName(channelId, readOpts)
148
+ });
136
149
  if (reactionsActions.has(action)) {
137
150
  if (!isActionEnabled("reactions")) throw new Error("Slack reactions are disabled.");
138
151
  const channelId = resolveChannelId();
@@ -158,11 +171,7 @@ async function handleSlackAction(params, cfg, context) {
158
171
  added: emoji
159
172
  });
160
173
  }
161
- assertSlackReadTargetAllowed({
162
- account,
163
- cfg,
164
- channelId
165
- });
174
+ await assertReadTargetAllowed(channelId);
166
175
  return jsonResult({
167
176
  ok: true,
168
177
  reactions: readOpts ? await slackActionRuntime.listSlackReactions(channelId, messageId, readOpts) : await slackActionRuntime.listSlackReactions(channelId, messageId)
@@ -255,11 +264,7 @@ async function handleSlackAction(params, cfg, context) {
255
264
  }
256
265
  case "readMessages": {
257
266
  const channelId = resolveChannelId();
258
- assertSlackReadTargetAllowed({
259
- account,
260
- cfg,
261
- channelId
262
- });
267
+ await assertReadTargetAllowed(channelId);
263
268
  const limit = readPositiveIntegerParam(params, "limit", { message: "limit must be a positive integer." });
264
269
  const before = readStringParam(params, "before");
265
270
  const after = readStringParam(params, "after");
@@ -284,11 +289,7 @@ async function handleSlackAction(params, cfg, context) {
284
289
  const channelTarget = readStringParam(params, "channelId") ?? readStringParam(params, "to") ?? context?.currentChannelId;
285
290
  if (!channelTarget) throw new Error("Slack file download requires channelId or to so the read target can be authorized.");
286
291
  const channelId = resolveSlackChannelId(channelTarget);
287
- assertSlackReadTargetAllowed({
288
- account,
289
- cfg,
290
- channelId
291
- });
292
+ await assertReadTargetAllowed(channelId);
292
293
  const threadId = readStringParam(params, "threadId") ?? readStringParam(params, "replyTo");
293
294
  const maxBytes = account.config?.mediaMaxMb ? account.config.mediaMaxMb * 1024 * 1024 : 20 * 1024 * 1024;
294
295
  const readToken = getTokenForOperation("read");
@@ -345,11 +346,7 @@ async function handleSlackAction(params, cfg, context) {
345
346
  else await slackActionRuntime.unpinSlackMessage(channelId, messageId);
346
347
  return jsonResult({ ok: true });
347
348
  }
348
- assertSlackReadTargetAllowed({
349
- account,
350
- cfg,
351
- channelId
352
- });
349
+ await assertReadTargetAllowed(channelId);
353
350
  return jsonResult({
354
351
  ok: true,
355
352
  pins: (writeOpts ? await slackActionRuntime.listSlackPins(channelId, readOpts) : await slackActionRuntime.listSlackPins(channelId)).map((pin) => {
@@ -0,0 +1,2 @@
1
+ import { t as handleSlackAction } from "./action-runtime-DoQGk_8D.js";
2
+ export { handleSlackAction };
@@ -1,11 +1,12 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
- import { a as resolveSlackAccount, d as resolveSlackBotToken } from "./accounts-BPCiCe8y.js";
3
- import { a as SLACK_TEXT_LIMIT, i as validateSlackBlocksArray, v as truncateSlackText } from "./reply-blocks-CfJqf7eq.js";
4
- import { a as getSlackWriteClient, r as createSlackWebClient } from "./client-DG9cyk55.js";
5
- import { l as buildSlackBlocksFallbackText, t as sendMessageSlack } from "./send-Dg6U9K7_.js";
6
- import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
7
- import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
2
+ import { a as resolveSlackAccount, p as resolveSlackBotToken } from "./accounts-BOJJiHSr.js";
3
+ import { a as SLACK_TEXT_LIMIT, b as truncateSlackText, i as validateSlackBlocksArray } from "./reply-blocks-BGQ6zSqM.js";
4
+ import { a as getSlackWriteClient, r as createSlackWebClient } from "./client-DGxwSL7f.js";
5
+ import { l as buildSlackBlocksFallbackText, r as sendMessageSlack } from "./send-DKDXoeoV.js";
6
+ import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString, readStringValue } from "openclaw/plugin-sdk/string-coerce-runtime";
8
7
  import { logVerbose, logVerbose as logVerbose$1 } from "openclaw/plugin-sdk/runtime-env";
8
+ import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
9
+ import { requireRuntimeConfig } from "openclaw/plugin-sdk/plugin-config-runtime";
9
10
  import { z } from "zod";
10
11
  import fs from "node:fs/promises";
11
12
  import { formatErrorMessage } from "openclaw/plugin-sdk/error-runtime";
@@ -13,7 +14,6 @@ import { normalizeHostname } from "openclaw/plugin-sdk/host-runtime";
13
14
  import { resolveRequestUrl } from "openclaw/plugin-sdk/request-url";
14
15
  import { fetchWithRuntimeDispatcher } from "openclaw/plugin-sdk/runtime-fetch";
15
16
  import { saveRemoteMedia } from "openclaw/plugin-sdk/media-runtime";
16
- import { pruneMapToMaxSize } from "openclaw/plugin-sdk/collection-runtime";
17
17
  import { asDateTimestampMs, resolveExpiresAtMsFromDurationMs } from "openclaw/plugin-sdk/number-runtime";
18
18
  //#region extensions/slack/src/edit-text.ts
19
19
  function buildSlackEditTextPayload(content, blocks) {
@@ -37,6 +37,112 @@ function formatSlackFileReferenceList(files) {
37
37
  //#region extensions/slack/src/monitor/media-types.ts
38
38
  const MAX_SLACK_MEDIA_FILES = 8;
39
39
  //#endregion
40
+ //#region extensions/slack/src/monitor/block-text.ts
41
+ function readTextObject(value) {
42
+ if (!value || typeof value !== "object") return;
43
+ return normalizeOptionalString(readStringValue(value.text));
44
+ }
45
+ function renderSlackRichTextLeaf(element) {
46
+ switch (element.type) {
47
+ case "text": return readStringValue(element.text) ?? "";
48
+ case "link": return readStringValue(element.text) ?? readStringValue(element.url) ?? "";
49
+ case "user": {
50
+ const userId = readStringValue(element.user_id);
51
+ return userId ? `<@${userId}>` : "";
52
+ }
53
+ case "channel": {
54
+ const channelId = readStringValue(element.channel_id);
55
+ return channelId ? `<#${channelId}>` : "";
56
+ }
57
+ case "usergroup": {
58
+ const usergroupId = readStringValue(element.usergroup_id);
59
+ return usergroupId ? `<!subteam^${usergroupId}>` : "";
60
+ }
61
+ case "broadcast": {
62
+ const range = readStringValue(element.range);
63
+ return range ? `<!${range}>` : "";
64
+ }
65
+ case "emoji": {
66
+ const name = readStringValue(element.name);
67
+ return name ? `:${name}:` : "";
68
+ }
69
+ default: return "";
70
+ }
71
+ }
72
+ function renderSlackRichTextElements(elements) {
73
+ if (!Array.isArray(elements)) return "";
74
+ const parts = [];
75
+ for (const rawElement of elements) {
76
+ if (!rawElement || typeof rawElement !== "object") continue;
77
+ const element = rawElement;
78
+ switch (element.type) {
79
+ case "rich_text_section":
80
+ case "rich_text_preformatted":
81
+ case "rich_text_quote":
82
+ parts.push(renderSlackRichTextElements(element.elements));
83
+ break;
84
+ case "rich_text_list": {
85
+ const listParts = [];
86
+ if (Array.isArray(element.elements)) for (const child of element.elements) {
87
+ if (!child || typeof child !== "object") continue;
88
+ const rendered = renderSlackRichTextElements(child.elements);
89
+ if (rendered) listParts.push(rendered);
90
+ }
91
+ parts.push(listParts.join("\n"));
92
+ break;
93
+ }
94
+ default:
95
+ parts.push(renderSlackRichTextLeaf(element));
96
+ break;
97
+ }
98
+ }
99
+ return parts.join("");
100
+ }
101
+ function readSlackBlockText(block) {
102
+ if (!block || typeof block !== "object") return;
103
+ const blockLike = block;
104
+ switch (blockLike.type) {
105
+ case "rich_text": return normalizeOptionalString(renderSlackRichTextElements(blockLike.elements));
106
+ case "section": {
107
+ const text = readTextObject(blockLike.text);
108
+ if (text) return text;
109
+ if (!Array.isArray(blockLike.fields)) return;
110
+ const fields = blockLike.fields.flatMap((field) => readTextObject(field) ?? []);
111
+ return fields.length > 0 ? fields.join("\n") : void 0;
112
+ }
113
+ case "header": return readTextObject(blockLike.text);
114
+ case "context": {
115
+ if (!Array.isArray(blockLike.elements)) return;
116
+ const parts = blockLike.elements.flatMap((element) => readTextObject(element) ?? []);
117
+ return parts.length > 0 ? parts.join(" ") : void 0;
118
+ }
119
+ case "image": return normalizeOptionalString(readStringValue(blockLike.alt_text)) ?? readTextObject(blockLike.title);
120
+ case "video": return readTextObject(blockLike.title) ?? normalizeOptionalString(readStringValue(blockLike.alt_text));
121
+ default: return;
122
+ }
123
+ }
124
+ function resolveSlackBlocksText(blocks) {
125
+ if (!blocks?.length) return;
126
+ const parts = [];
127
+ let hasRichText = false;
128
+ for (const block of blocks) {
129
+ if (block && typeof block === "object" && block.type === "rich_text") hasRichText = true;
130
+ const text = readSlackBlockText(block);
131
+ if (text) parts.push(text);
132
+ }
133
+ return parts.length > 0 ? {
134
+ text: parts.join("\n"),
135
+ hasRichText
136
+ } : void 0;
137
+ }
138
+ function chooseSlackPrimaryText(params) {
139
+ const { messageText, blocksText } = params;
140
+ if (!blocksText) return messageText;
141
+ if (!messageText) return blocksText.text;
142
+ if (blocksText.hasRichText && blocksText.text.length > messageText.length) return blocksText.text;
143
+ return blocksText.text.length > messageText.length && blocksText.text.startsWith(messageText) ? blocksText.text : messageText;
144
+ }
145
+ //#endregion
40
146
  //#region extensions/slack/src/monitor/thread.ts
41
147
  const THREAD_STARTER_CACHE = /* @__PURE__ */ new Map();
42
148
  const THREAD_STARTER_CACHE_TTL_MS = 360 * 6e4;
@@ -53,6 +159,33 @@ function evictThreadStarterCache() {
53
159
  function formatSlackFilePlaceholder(files) {
54
160
  return `[attached: ${formatSlackFileReferenceList(files)}]`;
55
161
  }
162
+ function pushUniqueText(parts, value) {
163
+ const text = normalizeOptionalString(value);
164
+ if (text && !parts.includes(text)) parts.push(text);
165
+ }
166
+ function resolveSlackBlocksFallbackText(blocks) {
167
+ return resolveSlackBlocksText(blocks)?.text;
168
+ }
169
+ function resolveSlackAttachmentFallbackText(attachments) {
170
+ if (!Array.isArray(attachments) || attachments.length === 0) return;
171
+ const parts = [];
172
+ for (const attachment of attachments) {
173
+ pushUniqueText(parts, attachment.pretext);
174
+ pushUniqueText(parts, attachment.title);
175
+ pushUniqueText(parts, attachment.text);
176
+ pushUniqueText(parts, attachment.fallback);
177
+ for (const field of attachment.fields ?? []) {
178
+ pushUniqueText(parts, field.title);
179
+ pushUniqueText(parts, field.value);
180
+ }
181
+ pushUniqueText(parts, resolveSlackBlocksFallbackText(attachment.blocks));
182
+ pushUniqueText(parts, resolveSlackBlocksFallbackText(attachment.message_blocks));
183
+ }
184
+ return parts.length > 0 ? parts.join("\n") : void 0;
185
+ }
186
+ function resolveSlackMessageText(message) {
187
+ return normalizeOptionalString(message.text) ?? resolveSlackAttachmentFallbackText(message.attachments) ?? resolveSlackBlocksFallbackText(message.blocks);
188
+ }
56
189
  async function resolveSlackThreadStarter(params) {
57
190
  evictThreadStarterCache();
58
191
  const cacheKey = `${params.channelId}:${params.threadTs}`;
@@ -69,7 +202,7 @@ async function resolveSlackThreadStarter(params) {
69
202
  limit: 1,
70
203
  inclusive: true
71
204
  }))?.messages?.[0];
72
- const text = (message?.text ?? "").trim();
205
+ const text = message ? resolveSlackMessageText(message) : void 0;
73
206
  const files = message?.files?.length ? message.files : void 0;
74
207
  if (!message || !text && !files) return null;
75
208
  const starter = {
@@ -97,12 +230,13 @@ async function resolveSlackThreadStarter(params) {
97
230
  function resetSlackThreadStarterCacheForTest() {
98
231
  THREAD_STARTER_CACHE.clear();
99
232
  }
233
+ const SLACK_THREAD_HISTORY_MAX_PAGES = 3;
100
234
  /**
101
235
  * Fetches the most recent messages in a Slack thread (excluding the current message).
102
236
  * Used to populate thread context when a new thread session starts.
103
237
  *
104
- * Uses cursor pagination and keeps only the latest N retained messages so long threads
105
- * still produce up-to-date context without unbounded memory growth.
238
+ * Uses cursor pagination and keeps only the latest N retained messages when the full
239
+ * thread fits in the bounded fetch window.
106
240
  */
107
241
  async function resolveSlackThreadHistory(params) {
108
242
  const maxMessages = params.limit ?? 20;
@@ -110,8 +244,10 @@ async function resolveSlackThreadHistory(params) {
110
244
  const fetchLimit = 200;
111
245
  const retained = [];
112
246
  let cursor;
247
+ let pagesFetched = 0;
113
248
  try {
114
249
  do {
250
+ pagesFetched += 1;
115
251
  const response = await params.client.conversations.replies({
116
252
  channel: params.channelId,
117
253
  ts: params.threadTs,
@@ -120,16 +256,20 @@ async function resolveSlackThreadHistory(params) {
120
256
  ...cursor ? { cursor } : {}
121
257
  });
122
258
  for (const msg of response.messages ?? []) {
123
- if (!msg.text?.trim() && !msg.files?.length) continue;
259
+ if (!resolveSlackMessageText(msg) && !msg.files?.length) continue;
124
260
  if (params.currentMessageTs && msg.ts === params.currentMessageTs) continue;
125
261
  retained.push(msg);
126
262
  }
127
263
  if (retained.length > maxMessages) retained.splice(0, retained.length - maxMessages);
128
264
  const next = response.response_metadata?.next_cursor;
129
265
  cursor = typeof next === "string" && next.trim().length > 0 ? next.trim() : void 0;
130
- } while (cursor);
266
+ } while (cursor && pagesFetched < SLACK_THREAD_HISTORY_MAX_PAGES);
267
+ if (cursor) {
268
+ logVerbose$1(`slack thread history capped channel=${params.channelId} ts=${params.threadTs} pages=${SLACK_THREAD_HISTORY_MAX_PAGES}`);
269
+ return [];
270
+ }
131
271
  return retained.map((msg) => ({
132
- text: msg.text?.trim() ? msg.text : formatSlackFilePlaceholder(msg.files),
272
+ text: resolveSlackMessageText(msg) ?? formatSlackFilePlaceholder(msg.files),
133
273
  userId: msg.user,
134
274
  botId: msg.bot_id,
135
275
  ts: msg.ts,
@@ -145,8 +285,6 @@ async function resolveSlackThreadHistory(params) {
145
285
  var media_exports = /* @__PURE__ */ __exportAll({
146
286
  MAX_SLACK_MEDIA_FILES: () => 8,
147
287
  SLACK_MEDIA_READ_IDLE_TIMEOUT_MS: () => SLACK_MEDIA_READ_IDLE_TIMEOUT_MS,
148
- SLACK_MEDIA_TOTAL_TIMEOUT_MS: () => SLACK_MEDIA_TOTAL_TIMEOUT_MS,
149
- fetchWithSlackAuth: () => fetchWithSlackAuth,
150
288
  resetSlackThreadStarterCacheForTest: () => resetSlackThreadStarterCacheForTest,
151
289
  resolveSlackAttachmentContent: () => resolveSlackAttachmentContent,
152
290
  resolveSlackMedia: () => resolveSlackMedia,
@@ -198,41 +336,6 @@ function createSlackMediaFetch() {
198
336
  });
199
337
  };
200
338
  }
201
- function resolveSlackFetchForRuntime() {
202
- return isMockedFetch(globalThis.fetch) ? globalThis.fetch : fetchWithRuntimeDispatcher;
203
- }
204
- async function cancelUnreadResponseBody(response) {
205
- if (!response.bodyUsed) await response.body?.cancel().catch(() => void 0);
206
- }
207
- /**
208
- * Fetches a URL with Authorization header while keeping same-origin redirects
209
- * authenticated and dropping auth once the redirect crosses origins.
210
- */
211
- async function fetchWithSlackAuth(url, token) {
212
- const parsed = assertSlackFileUrl(url);
213
- const authHeaders = createSlackAuthHeaders(token);
214
- const fetchImpl = resolveSlackFetchForRuntime();
215
- const initialRes = await fetchImpl(parsed.href, {
216
- headers: authHeaders,
217
- redirect: "manual"
218
- });
219
- if (initialRes.status < 300 || initialRes.status >= 400) return initialRes;
220
- const redirectUrl = initialRes.headers.get("location");
221
- if (!redirectUrl) return initialRes;
222
- let resolvedUrl;
223
- try {
224
- resolvedUrl = new URL(redirectUrl, parsed.href);
225
- } catch {
226
- return initialRes;
227
- }
228
- if (resolvedUrl.protocol !== "https:") return initialRes;
229
- await cancelUnreadResponseBody(initialRes);
230
- if (resolvedUrl.origin === parsed.origin) return fetchImpl(resolvedUrl.toString(), {
231
- headers: authHeaders,
232
- redirect: "follow"
233
- });
234
- return fetchImpl(resolvedUrl.toString(), { redirect: "follow" });
235
- }
236
339
  const SLACK_MEDIA_SSRF_POLICY = {
237
340
  allowedHostnames: [
238
341
  "*.slack.com",
@@ -357,7 +460,7 @@ async function downloadSlackMediaFile(params) {
357
460
  ssrfPolicy: SLACK_MEDIA_SSRF_POLICY
358
461
  },
359
462
  readIdleTimeoutMs: params.readIdleTimeoutMs,
360
- totalTimeoutMs: params.totalTimeoutMs ?? 12e4,
463
+ totalTimeoutMs: params.totalTimeoutMs ?? SLACK_MEDIA_TOTAL_TIMEOUT_MS,
361
464
  abortSignal: params.abortSignal
362
465
  });
363
466
  const fileMime = normalizeOptionalLowercaseString(params.file.mimetype);
@@ -476,7 +579,7 @@ async function resolveSlackAttachmentContent(params) {
476
579
  ssrfPolicy: SLACK_MEDIA_SSRF_POLICY
477
580
  },
478
581
  readIdleTimeoutMs: params.readIdleTimeoutMs,
479
- totalTimeoutMs: params.totalTimeoutMs ?? 12e4,
582
+ totalTimeoutMs: params.totalTimeoutMs ?? SLACK_MEDIA_TOTAL_TIMEOUT_MS,
480
583
  abortSignal: params.abortSignal
481
584
  });
482
585
  const label = saved.fileName ?? "forwarded image";
@@ -525,10 +628,58 @@ function resolveToken(explicit, accountId, cfg) {
525
628
  }
526
629
  return token;
527
630
  }
528
- function normalizeEmoji(raw) {
631
+ const SLACK_EMOJI_SKIN_TONE_MODIFIER_RE = /[\u{1F3FB}-\u{1F3FF}]/u;
632
+ const SLACK_EMOJI_VARIATION_SELECTOR_RE = /[\uFE0E\uFE0F]/g;
633
+ const SLACK_EMOJI_SKIN_TONE_BY_MODIFIER = /* @__PURE__ */ new Map([
634
+ ["🏻", 2],
635
+ ["🏼", 3],
636
+ ["🏽", 4],
637
+ ["🏾", 5],
638
+ ["🏿", 6]
639
+ ]);
640
+ const SLACK_EMOJI_SHORTNAME_BY_GLYPH = {
641
+ "✅": "white_check_mark",
642
+ "❌": "x",
643
+ "👍": "thumbsup",
644
+ "👎": "thumbsdown",
645
+ "🎉": "tada",
646
+ "❤": "heart",
647
+ "😄": "smile",
648
+ "😂": "joy",
649
+ "🚀": "rocket",
650
+ "👀": "eyes",
651
+ "🙏": "pray",
652
+ "🔥": "fire",
653
+ "💯": "100",
654
+ "⚠": "warning",
655
+ "➕": "heavy_plus_sign",
656
+ "➖": "heavy_minus_sign",
657
+ "🤔": "thinking_face",
658
+ "👨‍💻": "male-technologist",
659
+ "👨💻": "male-technologist",
660
+ "👩‍💻": "female-technologist",
661
+ "⚡": "zap",
662
+ "🌐": "globe_with_meridians",
663
+ "😱": "scream",
664
+ "🥱": "yawning_face",
665
+ "😨": "fearful",
666
+ "⏳": "hourglass_flowing_sand",
667
+ "✍": "writing_hand",
668
+ "🗜": "compression",
669
+ "🧠": "brain",
670
+ "🛠": "hammer_and_wrench",
671
+ "💻": "computer"
672
+ };
673
+ function normalizeSlackEmojiName(raw) {
529
674
  const trimmed = raw.trim();
530
675
  if (!trimmed) throw new Error("Emoji is required for Slack reactions");
531
- return trimmed.replace(/^:+|:+$/g, "");
676
+ const withoutColons = trimmed.replace(/^:+|:+$/g, "");
677
+ const modifier = withoutColons.match(SLACK_EMOJI_SKIN_TONE_MODIFIER_RE)?.[0];
678
+ const glyphKey = withoutColons.replace(SLACK_EMOJI_SKIN_TONE_MODIFIER_RE, "").replace(SLACK_EMOJI_VARIATION_SELECTOR_RE, "");
679
+ const shortname = SLACK_EMOJI_SHORTNAME_BY_GLYPH[glyphKey];
680
+ const skinTone = modifier ? SLACK_EMOJI_SKIN_TONE_BY_MODIFIER.get(modifier) : void 0;
681
+ if (!shortname || !skinTone) return shortname ?? withoutColons;
682
+ return `${shortname}::skin-tone-${skinTone}`;
532
683
  }
533
684
  const SLACK_TIMESTAMP_RE = /^\d+(?:\.\d+)?$/;
534
685
  const ISO_8601_TIMESTAMP_SCHEMA = z.iso.datetime({ offset: true });
@@ -568,7 +719,7 @@ async function reactSlackMessage(channelId, messageId, emoji, opts = {}) {
568
719
  await client.reactions.add({
569
720
  channel: channelId,
570
721
  timestamp: messageId,
571
- name: normalizeEmoji(emoji)
722
+ name: normalizeSlackEmojiName(emoji)
572
723
  });
573
724
  } catch (err) {
574
725
  if (hasSlackPlatformError(err, "already_reacted")) return;
@@ -581,7 +732,7 @@ async function removeSlackReaction(channelId, messageId, emoji, opts = {}) {
581
732
  await client.reactions.remove({
582
733
  channel: channelId,
583
734
  timestamp: messageId,
584
- name: normalizeEmoji(emoji)
735
+ name: normalizeSlackEmojiName(emoji)
585
736
  });
586
737
  } catch (err) {
587
738
  if (hasSlackPlatformError(err, "no_reaction")) return;
@@ -645,6 +796,9 @@ async function deleteSlackMessage(channelId, messageId, opts = {}) {
645
796
  ts: messageId
646
797
  });
647
798
  }
799
+ async function resolveSlackConversationName(channelId, opts = {}) {
800
+ return (await (await getClient(opts, "read")).conversations.info({ channel: channelId })).channel?.name?.trim() || void 0;
801
+ }
648
802
  async function readSlackMessages(channelId, opts = {}) {
649
803
  const exactMessageId = opts.messageId?.trim();
650
804
  const readLimit = exactMessageId ? 1 : opts.limit;
@@ -798,4 +952,4 @@ async function downloadSlackFile(fileId, opts) {
798
952
  }))?.[0] ?? null;
799
953
  }
800
954
  //#endregion
801
- export { resolveSlackThreadStarter as _, listSlackEmojis as a, buildSlackEditTextPayload as b, pinSlackMessage as c, removeOwnSlackReactions as d, removeSlackReaction as f, resolveSlackThreadHistory as g, media_exports as h, getSlackMemberInfo as i, reactSlackMessage as l, unpinSlackMessage as m, downloadSlackFile as n, listSlackPins as o, sendSlackMessage as p, editSlackMessage as r, listSlackReactions as s, deleteSlackMessage as t, readSlackMessages as u, MAX_SLACK_MEDIA_FILES as v, formatSlackFileReference as y };
955
+ export { buildSlackEditTextPayload as C, formatSlackFileReference as S, resolveSlackThreadHistory as _, listSlackEmojis as a, resolveSlackBlocksText as b, pinSlackMessage as c, removeOwnSlackReactions as d, removeSlackReaction as f, media_exports as g, unpinSlackMessage as h, getSlackMemberInfo as i, reactSlackMessage as l, sendSlackMessage as m, downloadSlackFile as n, listSlackPins as o, resolveSlackConversationName as p, editSlackMessage as r, listSlackReactions as s, deleteSlackMessage as t, readSlackMessages as u, resolveSlackThreadStarter as v, MAX_SLACK_MEDIA_FILES as x, chooseSlackPrimaryText as y };
@@ -0,0 +1,2 @@
1
+ import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, h as unpinSlackMessage, i as getSlackMemberInfo, l as reactSlackMessage, m as sendSlackMessage, n as downloadSlackFile, o as listSlackPins, p as resolveSlackConversationName, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-DMpDmKEA.js";
2
+ export { deleteSlackMessage, downloadSlackFile, editSlackMessage, getSlackMemberInfo, listSlackEmojis, listSlackPins, listSlackReactions, pinSlackMessage, reactSlackMessage, readSlackMessages, removeOwnSlackReactions, removeSlackReaction, resolveSlackConversationName, sendSlackMessage, unpinSlackMessage };
package/dist/api.js CHANGED
@@ -1,18 +1,18 @@
1
1
  import { n as registerSlackHttpHandler, r as normalizeSlackWebhookPath, t as handleSlackHttpRequest } from "./registry-bbjH7IHX.js";
2
- import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId, l as resolveSlackReplyToMode, n as listSlackAccountIds, r as mergeSlackAccountConfig, t as listEnabledSlackAccounts } from "./accounts-BPCiCe8y.js";
3
- import { t as inspectSlackAccount } from "./account-inspect-DOtQbKkB.js";
2
+ import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId, n as listSlackAccountIds, r as mergeSlackAccountConfig, t as listEnabledSlackAccounts, u as resolveSlackReplyToMode } from "./accounts-BOJJiHSr.js";
3
+ import { t as inspectSlackAccount } from "./account-inspect-Di7ditqZ.js";
4
4
  import { i as resolveSlackChannelId, n as normalizeSlackMessagingTarget, r as parseSlackTarget, t as looksLikeSlackTargetId } from "./target-parsing-3jYH8LfB.js";
5
5
  import "./targets-Dll4NJgs.js";
6
- import { a as resolveSlackAutoThreadId, i as resolveSlackChannelType, n as buildSlackThreadingToolContext, r as resetSlackChannelTypeCacheForTest, t as slackPlugin } from "./channel-DjNY4ik7.js";
7
- import { c as allowListMatches, d as normalizeSlackAllowOwnerEntry, f as normalizeSlackSlug, g as buildSlackPresentationBlocks, h as buildSlackInteractiveBlocks, i as validateSlackBlocksArray, l as normalizeAllowList, m as resolveSlackUserAllowed, n as SLACK_MAX_BLOCKS, o as resolveSlackGroupRequireMention, p as resolveSlackAllowListMatch, r as parseSlackBlocksInput, s as resolveSlackGroupToolPolicy, u as normalizeAllowListLower } from "./reply-blocks-CfJqf7eq.js";
8
- import { n as extractSlackToolSend, r as listSlackMessageActions } from "./message-tool-api--zYyTqrR.js";
9
- import { n as isSlackInteractiveRepliesEnabled, r as parseSlackOptionsLine, t as compileSlackInteractiveReplies } from "./interactive-replies-D-22gTp3.js";
10
- import { a as getSlackWriteClient, c as resolveSlackWebClientOptions, i as createSlackWriteClient, l as resolveSlackWriteClientOptions, n as createSlackTokenCacheKey, o as SLACK_DEFAULT_RETRY_OPTIONS, r as createSlackWebClient, s as SLACK_WRITE_RETRY_OPTIONS, t as clearSlackWriteClientCacheForTest } from "./client-DG9cyk55.js";
11
- import { t as slackSetupPlugin } from "./channel.setup-CDOZ8V3p.js";
12
- import { i as hasSlackThreadParticipation, o as recordSlackThreadParticipation, r as clearSlackThreadParticipationCache } from "./send-Dg6U9K7_.js";
13
- import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as unpinSlackMessage, n as downloadSlackFile, o as listSlackPins, p as sendSlackMessage, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-CqRHPciJ.js";
14
- import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./directory-config-DDVHDmrN.js";
15
- import { t as probeSlack } from "./probe-DFKt9Ute.js";
6
+ import { a as resolveSlackAutoThreadId, i as resolveSlackChannelType, n as buildSlackThreadingToolContext, r as resetSlackChannelTypeCacheForTest, t as slackPlugin } from "./channel-CG29WLVd.js";
7
+ import { _ as buildSlackPresentationBlocks, d as normalizeAllowListLower, f as normalizeSlackAllowOwnerEntry, g as buildSlackInteractiveBlocks, h as resolveSlackUserAllowed, i as validateSlackBlocksArray, l as allowListMatches, m as resolveSlackAllowListMatch, n as SLACK_MAX_BLOCKS, o as resolveSlackGroupRequireMention, p as normalizeSlackSlug, r as parseSlackBlocksInput, s as resolveSlackGroupToolPolicy, u as normalizeAllowList } from "./reply-blocks-BGQ6zSqM.js";
8
+ import { n as extractSlackToolSend, r as listSlackMessageActions } from "./message-tool-api-BgWKyu2r.js";
9
+ import { n as isSlackInteractiveRepliesEnabled, r as parseSlackOptionsLine, t as compileSlackInteractiveReplies } from "./interactive-replies-CXpT-vA_.js";
10
+ import { a as getSlackWriteClient, c as resolveSlackWebClientOptions, i as createSlackWriteClient, l as resolveSlackWriteClientOptions, n as createSlackTokenCacheKey, o as SLACK_DEFAULT_RETRY_OPTIONS, r as createSlackWebClient, s as SLACK_WRITE_RETRY_OPTIONS, t as clearSlackWriteClientCacheForTest } from "./client-DGxwSL7f.js";
11
+ import { t as slackSetupPlugin } from "./channel.setup-Dq6syTNU.js";
12
+ import { a as clearSlackThreadParticipationCache, c as recordSlackThreadParticipation, o as hasSlackThreadParticipation } from "./send-DKDXoeoV.js";
13
+ import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, h as unpinSlackMessage, i as getSlackMemberInfo, l as reactSlackMessage, m as sendSlackMessage, n as downloadSlackFile, o as listSlackPins, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-DMpDmKEA.js";
14
+ import { n as listSlackDirectoryGroupsFromConfig, r as listSlackDirectoryPeersFromConfig } from "./directory-config-BZuS8141.js";
15
+ import { t as probeSlack } from "./probe-CuwRDE5j.js";
16
16
  import { t as collectSlackSecurityAuditFindings } from "./security-audit-CikQhBUY.js";
17
- import { n as resolveSlackRuntimeGroupPolicy } from "./provider-DOZHzRWi.js";
17
+ import { n as resolveSlackRuntimeGroupPolicy } from "./provider-Cot8h818.js";
18
18
  export { SLACK_DEFAULT_RETRY_OPTIONS, SLACK_MAX_BLOCKS, SLACK_WRITE_RETRY_OPTIONS, resetSlackChannelTypeCacheForTest as __resetSlackChannelTypeCacheForTest, resetSlackChannelTypeCacheForTest, allowListMatches, buildSlackInteractiveBlocks, buildSlackPresentationBlocks, buildSlackThreadingToolContext, clearSlackThreadParticipationCache, clearSlackWriteClientCacheForTest, collectSlackSecurityAuditFindings, compileSlackInteractiveReplies, createSlackTokenCacheKey, createSlackWebClient, createSlackWriteClient, deleteSlackMessage, downloadSlackFile, editSlackMessage, extractSlackToolSend, getSlackMemberInfo, getSlackWriteClient, handleSlackHttpRequest, hasSlackThreadParticipation, inspectSlackAccount, isSlackInteractiveRepliesEnabled, listEnabledSlackAccounts, listSlackAccountIds, listSlackDirectoryGroupsFromConfig, listSlackDirectoryPeersFromConfig, listSlackEmojis, listSlackMessageActions, listSlackPins, listSlackReactions, looksLikeSlackTargetId, mergeSlackAccountConfig, normalizeAllowList, normalizeAllowListLower, normalizeSlackAllowOwnerEntry, normalizeSlackMessagingTarget, normalizeSlackSlug, normalizeSlackWebhookPath, parseSlackBlocksInput, parseSlackOptionsLine, parseSlackTarget, pinSlackMessage, probeSlack, reactSlackMessage, readSlackMessages, recordSlackThreadParticipation, registerSlackHttpHandler, removeOwnSlackReactions, removeSlackReaction, resolveDefaultSlackAccountId, resolveSlackAccount, resolveSlackAllowListMatch, resolveSlackAutoThreadId, resolveSlackChannelId, resolveSlackChannelType, resolveSlackGroupRequireMention, resolveSlackGroupToolPolicy, resolveSlackReplyToMode, resolveSlackRuntimeGroupPolicy, resolveSlackUserAllowed, resolveSlackWebClientOptions, resolveSlackWriteClientOptions, sendSlackMessage, slackPlugin, slackSetupPlugin, unpinSlackMessage, validateSlackBlocksArray };