@openclaw/slack 2026.5.12 → 2026.5.14-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{account-inspect-D7AZNs8C.js → account-inspect-BJyQLSkN.js} +1 -1
- package/dist/account-inspect-api.js +1 -1
- package/dist/{accounts-ClAPP5ry.js → accounts-yk5K3wQU.js} +2 -1
- package/dist/accounts.runtime-CkfFIisb.js +2 -0
- package/dist/{action-runtime-e2UhRsNx.js → action-runtime-gtC-RM3r.js} +4 -4
- package/dist/action-runtime.runtime-DbVd7_Na.js +2 -0
- package/dist/{actions-CYLFK-Zy.js → actions-Cqyj7oRr.js} +26 -9
- package/dist/{actions.runtime-CO3OaTLb.js → actions.runtime-DD6hfFCA.js} +1 -1
- package/dist/api.js +18 -18
- package/dist/approval-auth-D3xf0sS6.js +28 -0
- package/dist/{approval-handler.runtime-CmeRr9qA.js → approval-handler.runtime-DeYBuIaU.js} +4 -4
- package/dist/{blocks-render-BIDw-Pom.js → blocks-render-BdLueE_v.js} +1 -1
- package/dist/{channel-DRjHBTDB.js → channel-CC04F-xs.js} +28 -52
- package/dist/channel-config-api.js +1 -1
- package/dist/channel-plugin-api.js +1 -1
- package/dist/{channel.setup-Cayn7afd.js → channel.setup-jzYjY634.js} +4 -4
- package/dist/{config-schema-D9B5LB_L.js → config-schema-Bueih4yH.js} +21 -1
- package/dist/contract-api.js +4 -4
- package/dist/{directory-config-B3JiHeB7.js → directory-config-BKKNBkCq.js} +1 -1
- package/dist/directory-contract-api.js +1 -1
- package/dist/{directory-live-Bf16GwDh.js → directory-live-CuaWaGnM.js} +2 -2
- package/dist/{doctor-contract-KUjHnkQm.js → doctor-contract-DCkS8eNN.js} +1 -1
- package/dist/doctor-contract-api.js +1 -1
- package/dist/{exec-approvals-7xUNgLi9.js → exec-approvals-BLn4Zx7V.js} +3 -3
- package/dist/{group-policy-CyLUK6My.js → group-policy-utF2iWnE.js} +1 -1
- package/dist/http-routes-api.js +1 -1
- package/dist/inbound-contract-test-api.js +2 -2
- package/dist/{interactive-replies-qAIfuBor.js → interactive-replies-CawNPL-h.js} +1 -1
- package/dist/interactive-replies-api.js +1 -1
- package/dist/{media-D1XCd1uP.js → media-B-nNpS2G.js} +32 -21
- package/dist/{message-tool-api-6lowf9zE.js → message-tool-api-B_bKUmP0.js} +2 -2
- package/dist/message-tool-api.js +1 -1
- package/dist/{monitor-a97o17G6.js → monitor-B3QB1ysK.js} +3 -3
- package/dist/{outbound-adapter-B_5sEhCg.js → outbound-adapter-DsAvCwpZ.js} +5 -5
- package/dist/outbound-payload-test-api.js +1 -1
- package/dist/{outbound-payload.test-harness-CVCamg1x.js → outbound-payload.test-harness-DM9ZdY2f.js} +2 -2
- package/dist/{pipeline.runtime-DT0hLnq2.js → pipeline.runtime-D-YJZZaI.js} +49 -22
- package/dist/{plugin-routes-DtTPmga1.js → plugin-routes-Dt_jh9W8.js} +2 -2
- package/dist/{prepare-D3YqV8jB.js → prepare-CXI8nHbJ.js} +10 -10
- package/dist/{prepare.test-helpers-DVcjRhfG.js → prepare.test-helpers-BhFHtbz3.js} +1 -1
- package/dist/{probe-3eZf1FjI.js → probe-D1wYA05H.js} +2 -2
- package/dist/{provider-D7uAN3Fq.js → provider-Ut7IF0Mn.js} +66 -29
- package/dist/{replies-Xe_jMR6o.js → replies-CzfjCaLG.js} +4 -4
- package/dist/{reply-blocks-Z5l6_R6H.js → reply-blocks-DWoZrUll.js} +2 -2
- package/dist/{resolve-channels-BRYqyNVJ.js → resolve-channels-BiVxSLVm.js} +2 -2
- package/dist/{resolve-users-Bd_SdP8j.js → resolve-users-CcpSlYw-.js} +2 -2
- package/dist/{room-context-0vovmZPU.js → room-context-D0hGOp8m.js} +4 -2
- package/dist/{runtime-api-Dd1xIV5v.js → runtime-api-D8wiG9BS.js} +2 -2
- package/dist/runtime-api.js +13 -13
- package/dist/runtime-setter-api.js +1 -1
- package/dist/{scopes-CDevO8jg.js → scopes-BTkB8PPE.js} +2 -2
- package/dist/secret-contract-api.js +1 -1
- package/dist/security-contract-api.js +1 -1
- package/dist/{send-D_A9kL-C.js → send-ioky2Xpy.js} +6 -6
- package/dist/send.runtime-5Kl3Wzbf.js +2 -0
- package/dist/send.runtime-DoifekaA.js +2 -0
- package/dist/{setup-core-B9NetDkM.js → setup-core-DgLJ7dQY.js} +2 -2
- package/dist/setup-plugin-api.js +1 -1
- package/dist/{setup-surface-D88QBVOW.js → setup-surface-B6w9gtds.js} +5 -5
- package/dist/{shared-D8U42xFL.js → shared-CSiHkaVO.js} +9 -9
- package/dist/{slash-dispatch.runtime-BJgT0jwV.js → slash-dispatch.runtime-DNr1EDON.js} +1 -1
- package/dist/test-api.js +7 -7
- package/openclaw.plugin.json +116 -0
- package/package.json +8 -6
- package/dist/accounts.runtime-DDVcLJUI.js +0 -2
- package/dist/action-runtime.runtime-BFcqMbOm.js +0 -2
- package/dist/send.runtime-BRE_ncCU.js +0 -2
- package/dist/send.runtime-_l76lUuL.js +0 -2
- /package/dist/{allow-list-BPnnlRPL.js → allow-list-T7ZDpUsF.js} +0 -0
- /package/dist/{blocks-input-CwTFVImV.js → blocks-input-BJZ8vv03.js} +0 -0
- /package/dist/{channel-api-B_nZwosg.js → channel-api-BfBK89IN.js} +0 -0
- /package/dist/{client-CPe4GmDR.js → client-8r7r7aZ3.js} +0 -0
- /package/dist/{config-api-B_jq4NJW.js → config-api-B48Z4H47.js} +0 -0
- /package/dist/{errors-BYFHR24f.js → errors-BrtayXHa.js} +0 -0
- /package/dist/{magic-string.es-BMaGRRZ1.js → magic-string.es-BLAi6qQC.js} +0 -0
- /package/dist/{mrkdwn-Cax-eSfK.js → mrkdwn-18IzcEAY.js} +0 -0
- /package/dist/{registry-CeaoNfoP.js → registry-BdfKYina.js} +0 -0
- /package/dist/{resolve-allowlist-common-Bk3clYPK.js → resolve-allowlist-common-rhfyDyWi.js} +0 -0
- /package/dist/{runtime-Bo-KHM-F.js → runtime--VlVtTPu.js} +0 -0
- /package/dist/{secret-contract-Bo6lbSkh.js → secret-contract-BurGIyhv.js} +0 -0
- /package/dist/{security-audit-BtHGnD3d.js → security-audit-DvOpSaZM.js} +0 -0
- /package/dist/{slash-commands.runtime-22kgyst2.js → slash-commands.runtime-DRkNgIQ2.js} +0 -0
- /package/dist/{slash-plugin-commands.runtime-CF-n3MeP.js → slash-plugin-commands.runtime-Dj5h8hmv.js} +0 -0
- /package/dist/{slash-skill-commands.runtime-BMs0VjTe.js → slash-skill-commands.runtime-B-_KAk0C.js} +0 -0
- /package/dist/{streaming-compat-RkZgTmQ2.js → streaming-compat-C6rySwiD.js} +0 -0
- /package/dist/{thread-ts-C2x7c5PP.js → thread-ts-o-QBwB3k.js} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-CiIaOW0V.js";
|
|
2
|
-
import { r as createSlackWebClient } from "./client-
|
|
3
|
-
import { n as resolveSlackAllowlistEntries, t as collectSlackCursorItems } from "./resolve-allowlist-common-
|
|
2
|
+
import { r as createSlackWebClient } from "./client-8r7r7aZ3.js";
|
|
3
|
+
import { n as resolveSlackAllowlistEntries, t as collectSlackCursorItems } from "./resolve-allowlist-common-rhfyDyWi.js";
|
|
4
4
|
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
5
5
|
//#region extensions/slack/src/resolve-channels.ts
|
|
6
6
|
var resolve_channels_exports = /* @__PURE__ */ __exportAll({ resolveSlackChannelAllowlist: () => resolveSlackChannelAllowlist });
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-CiIaOW0V.js";
|
|
2
|
-
import { r as createSlackWebClient } from "./client-
|
|
3
|
-
import { n as resolveSlackAllowlistEntries, t as collectSlackCursorItems } from "./resolve-allowlist-common-
|
|
2
|
+
import { r as createSlackWebClient } from "./client-8r7r7aZ3.js";
|
|
3
|
+
import { n as resolveSlackAllowlistEntries, t as collectSlackCursorItems } from "./resolve-allowlist-common-rhfyDyWi.js";
|
|
4
4
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
5
5
|
//#region extensions/slack/src/resolve-users.ts
|
|
6
6
|
var resolve_users_exports = /* @__PURE__ */ __exportAll({ resolveSlackUserAllowlist: () => resolveSlackUserAllowlist });
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as normalizeSlackSlug, i as normalizeSlackAllowOwnerEntry, n as normalizeAllowList, o as resolveSlackAllowListMatch, r as normalizeAllowListLower, t as allowListMatches } from "./allow-list-
|
|
2
|
-
import { t as formatSlackError } from "./errors-
|
|
1
|
+
import { a as normalizeSlackSlug, i as normalizeSlackAllowOwnerEntry, n as normalizeAllowList, o as resolveSlackAllowListMatch, r as normalizeAllowListLower, t as allowListMatches } from "./allow-list-T7ZDpUsF.js";
|
|
2
|
+
import { t as formatSlackError } from "./errors-BrtayXHa.js";
|
|
3
3
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalLowercaseString, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
4
4
|
import { resolveAgentRoute, resolveThreadSessionKeys } from "openclaw/plugin-sdk/routing";
|
|
5
5
|
import { createChannelPairingChallengeIssuer } from "openclaw/plugin-sdk/channel-pairing";
|
|
@@ -15,6 +15,7 @@ import { resolveChannelContextVisibilityMode } from "openclaw/plugin-sdk/context
|
|
|
15
15
|
import { resolveDefaultGroupPolicy, resolveOpenProviderRuntimeGroupPolicy, warnMissingProviderGroupPolicyFallbackOnce } from "openclaw/plugin-sdk/runtime-group-policy";
|
|
16
16
|
import { resolveDefaultAgentId } from "openclaw/plugin-sdk/agent-runtime";
|
|
17
17
|
import { applyChannelMatchMeta, buildChannelKeyCandidates, resolveChannelEntryMatchWithFallback } from "openclaw/plugin-sdk/channel-targets";
|
|
18
|
+
import { mergePairLoopGuardConfig } from "openclaw/plugin-sdk/pair-loop-guard-runtime";
|
|
18
19
|
import { createChannelIngressResolver, defineStableChannelIngressIdentity, readChannelIngressStoreAllowFromForDmPolicy } from "openclaw/plugin-sdk/channel-ingress-runtime";
|
|
19
20
|
import { buildUntrustedChannelMetadata } from "openclaw/plugin-sdk/security-runtime";
|
|
20
21
|
//#region extensions/slack/src/monitor/commands.ts
|
|
@@ -83,6 +84,7 @@ function resolveSlackChannelConfig(params) {
|
|
|
83
84
|
allowed: firstDefined(resolved.enabled, fallback?.enabled, true) ?? true,
|
|
84
85
|
requireMention: firstDefined(resolved.requireMention, fallback?.requireMention, requireMentionDefault) ?? requireMentionDefault,
|
|
85
86
|
allowBots: firstDefined(resolved.allowBots, fallback?.allowBots),
|
|
87
|
+
botLoopProtection: mergePairLoopGuardConfig(fallback?.botLoopProtection, matched?.botLoopProtection),
|
|
86
88
|
users: firstDefined(resolved.users, fallback?.users),
|
|
87
89
|
skills: firstDefined(resolved.skills, fallback?.skills),
|
|
88
90
|
systemPrompt: firstDefined(resolved.systemPrompt, fallback?.systemPrompt)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "./target-parsing-CQmv-iSm.js";
|
|
2
|
-
import "./channel-api-
|
|
3
|
-
import "./config-api-
|
|
2
|
+
import "./channel-api-BfBK89IN.js";
|
|
3
|
+
import "./config-api-B48Z4H47.js";
|
|
4
4
|
import { createActionGate as createActionGate$1, imageResultFromFile, jsonResult, readNumberParam, readReactionParams, readStringParam, withNormalizedTimestamp } from "openclaw/plugin-sdk/channel-actions";
|
|
5
5
|
import "openclaw/plugin-sdk/account-id";
|
|
6
6
|
import "openclaw/plugin-sdk/channel-status";
|
package/dist/runtime-api.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { a as resolveSlackAccount, d as resolveSlackBotToken, i as resolveDefaultSlackAccountId, n as listSlackAccountIds, t as listEnabledSlackAccounts, u as resolveSlackAppToken } from "./accounts-
|
|
2
|
-
import { n as resolveSlackGroupToolPolicy, t as resolveSlackGroupRequireMention } from "./group-policy-
|
|
3
|
-
import { n as setSlackRuntime } from "./runtime
|
|
4
|
-
import { t as sendMessageSlack } from "./send-
|
|
5
|
-
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as unpinSlackMessage, o as listSlackPins, p as sendSlackMessage, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-
|
|
6
|
-
import { t as probeSlack } from "./probe-
|
|
7
|
-
import { t as resolveSlackChannelAllowlist } from "./resolve-channels-
|
|
8
|
-
import { t as resolveSlackUserAllowlist } from "./resolve-users-
|
|
9
|
-
import { t as monitorSlackProvider } from "./provider-
|
|
10
|
-
import { t as registerSlackPluginHttpRoutes } from "./plugin-routes-
|
|
11
|
-
import { n as slackActionRuntime, t as handleSlackAction } from "./action-runtime-
|
|
12
|
-
import { n as listSlackDirectoryGroupsLive, r as listSlackDirectoryPeersLive } from "./directory-live-
|
|
13
|
-
import "./monitor-
|
|
1
|
+
import { a as resolveSlackAccount, d as resolveSlackBotToken, i as resolveDefaultSlackAccountId, n as listSlackAccountIds, t as listEnabledSlackAccounts, u as resolveSlackAppToken } from "./accounts-yk5K3wQU.js";
|
|
2
|
+
import { n as resolveSlackGroupToolPolicy, t as resolveSlackGroupRequireMention } from "./group-policy-utF2iWnE.js";
|
|
3
|
+
import { n as setSlackRuntime } from "./runtime--VlVtTPu.js";
|
|
4
|
+
import { t as sendMessageSlack } from "./send-ioky2Xpy.js";
|
|
5
|
+
import { a as listSlackEmojis, c as pinSlackMessage, d as removeOwnSlackReactions, f as removeSlackReaction, i as getSlackMemberInfo, l as reactSlackMessage, m as unpinSlackMessage, o as listSlackPins, p as sendSlackMessage, r as editSlackMessage, s as listSlackReactions, t as deleteSlackMessage, u as readSlackMessages } from "./actions-Cqyj7oRr.js";
|
|
6
|
+
import { t as probeSlack } from "./probe-D1wYA05H.js";
|
|
7
|
+
import { t as resolveSlackChannelAllowlist } from "./resolve-channels-BiVxSLVm.js";
|
|
8
|
+
import { t as resolveSlackUserAllowlist } from "./resolve-users-CcpSlYw-.js";
|
|
9
|
+
import { t as monitorSlackProvider } from "./provider-Ut7IF0Mn.js";
|
|
10
|
+
import { t as registerSlackPluginHttpRoutes } from "./plugin-routes-Dt_jh9W8.js";
|
|
11
|
+
import { n as slackActionRuntime, t as handleSlackAction } from "./action-runtime-gtC-RM3r.js";
|
|
12
|
+
import { n as listSlackDirectoryGroupsLive, r as listSlackDirectoryPeersLive } from "./directory-live-CuaWaGnM.js";
|
|
13
|
+
import "./monitor-B3QB1ysK.js";
|
|
14
14
|
export { deleteSlackMessage, editSlackMessage, getSlackMemberInfo, handleSlackAction, listEnabledSlackAccounts, listSlackAccountIds, listSlackDirectoryGroupsLive, listSlackDirectoryPeersLive, listSlackEmojis, listSlackPins, listSlackReactions, monitorSlackProvider, pinSlackMessage, probeSlack, reactSlackMessage, readSlackMessages, registerSlackPluginHttpRoutes, removeOwnSlackReactions, removeSlackReaction, resolveDefaultSlackAccountId, resolveSlackAccount, resolveSlackAppToken, resolveSlackBotToken, resolveSlackChannelAllowlist, resolveSlackGroupRequireMention, resolveSlackGroupToolPolicy, resolveSlackUserAllowlist, sendMessageSlack, sendSlackMessage, setSlackRuntime, slackActionRuntime, unpinSlackMessage };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as setSlackRuntime } from "./runtime
|
|
1
|
+
import { n as setSlackRuntime } from "./runtime--VlVtTPu.js";
|
|
2
2
|
export { setSlackRuntime };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as createSlackWebClient } from "./client-
|
|
2
|
-
import { t as formatSlackError } from "./errors-
|
|
1
|
+
import { r as createSlackWebClient } from "./client-8r7r7aZ3.js";
|
|
2
|
+
import { t as formatSlackError } from "./errors-BrtayXHa.js";
|
|
3
3
|
import { isRecord, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
4
4
|
//#region extensions/slack/src/scopes.ts
|
|
5
5
|
function collectScopes(value, into) {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries, t as channelSecrets } from "./secret-contract-
|
|
1
|
+
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries, t as channelSecrets } from "./secret-contract-BurGIyhv.js";
|
|
2
2
|
export { channelSecrets, collectRuntimeConfigAssignments, secretTargetRegistryEntries };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as collectSlackSecurityAuditFindings } from "./security-audit-
|
|
1
|
+
import { t as collectSlackSecurityAuditFindings } from "./security-audit-DvOpSaZM.js";
|
|
2
2
|
export { collectSlackSecurityAuditFindings };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { a as resolveSlackAccount, d as resolveSlackBotToken } from "./accounts-
|
|
1
|
+
import { a as resolveSlackAccount, d as resolveSlackBotToken } from "./accounts-yk5K3wQU.js";
|
|
2
2
|
import { r as parseSlackTarget } from "./target-parsing-CQmv-iSm.js";
|
|
3
3
|
import "./targets-B1tYCAr6.js";
|
|
4
|
-
import { i as truncateSlackText, r as SLACK_TEXT_LIMIT, t as normalizeSlackThreadTsCandidate } from "./thread-ts-
|
|
5
|
-
import { a as getSlackWriteClient, n as createSlackTokenCacheKey } from "./client-
|
|
6
|
-
import { r as validateSlackBlocksArray } from "./blocks-input-
|
|
7
|
-
import { t as getOptionalSlackRuntime } from "./runtime
|
|
8
|
-
import { i as loadOutboundMediaFromUrl } from "./runtime-api-
|
|
4
|
+
import { i as truncateSlackText, r as SLACK_TEXT_LIMIT, t as normalizeSlackThreadTsCandidate } from "./thread-ts-o-QBwB3k.js";
|
|
5
|
+
import { a as getSlackWriteClient, n as createSlackTokenCacheKey } from "./client-8r7r7aZ3.js";
|
|
6
|
+
import { r as validateSlackBlocksArray } from "./blocks-input-BJZ8vv03.js";
|
|
7
|
+
import { t as getOptionalSlackRuntime } from "./runtime--VlVtTPu.js";
|
|
8
|
+
import { i as loadOutboundMediaFromUrl } from "./runtime-api-D8wiG9BS.js";
|
|
9
9
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
10
10
|
import { createMessageReceiptFromOutboundResults } from "openclaw/plugin-sdk/channel-message";
|
|
11
11
|
import { withTrustedEnvProxyGuardedFetchMode } from "openclaw/plugin-sdk/fetch-runtime";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as resolveSlackAccount } from "./accounts-
|
|
2
|
-
import { t as inspectSlackAccount } from "./account-inspect-
|
|
1
|
+
import { a as resolveSlackAccount } from "./accounts-yk5K3wQU.js";
|
|
2
|
+
import { t as inspectSlackAccount } from "./account-inspect-BJyQLSkN.js";
|
|
3
3
|
import { hasConfiguredSecretInput } from "openclaw/plugin-sdk/secret-input";
|
|
4
4
|
import { normalizeLowercaseStringOrEmpty, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
|
|
5
5
|
import { DEFAULT_ACCOUNT_ID, createAccountScopedAllowFromSection, createAccountScopedGroupAccessSection, createAllowlistSetupWizardProxy, createEnvPatchedAccountSetupAdapter, createLegacyCompatChannelDmPolicy, createStandardChannelSetupStatus, parseMentionOrPrefixedId, patchChannelConfigForAccount, setSetupChannelEnabled } from "openclaw/plugin-sdk/setup-runtime";
|
package/dist/setup-plugin-api.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as slackSetupPlugin } from "./channel.setup-
|
|
1
|
+
import { t as slackSetupPlugin } from "./channel.setup-jzYjY634.js";
|
|
2
2
|
export { slackSetupPlugin };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId, o as resolveSlackAccountAllowFrom } from "./accounts-
|
|
2
|
-
import "./shared-
|
|
3
|
-
import { i as SLACK_CHANNEL, t as createSlackSetupWizardBase } from "./setup-core-
|
|
4
|
-
import { t as resolveSlackChannelAllowlist } from "./resolve-channels-
|
|
5
|
-
import { t as resolveSlackUserAllowlist } from "./resolve-users-
|
|
1
|
+
import { a as resolveSlackAccount, i as resolveDefaultSlackAccountId, o as resolveSlackAccountAllowFrom } from "./accounts-yk5K3wQU.js";
|
|
2
|
+
import "./shared-CSiHkaVO.js";
|
|
3
|
+
import { i as SLACK_CHANNEL, t as createSlackSetupWizardBase } from "./setup-core-DgLJ7dQY.js";
|
|
4
|
+
import { t as resolveSlackChannelAllowlist } from "./resolve-channels-BiVxSLVm.js";
|
|
5
|
+
import { t as resolveSlackUserAllowlist } from "./resolve-users-CcpSlYw-.js";
|
|
6
6
|
import { adaptScopedAccountAccessor } from "openclaw/plugin-sdk/channel-config-helpers";
|
|
7
7
|
import { noteChannelLookupFailure, noteChannelLookupSummary, parseMentionOrPrefixedId, promptLegacyChannelAllowFromForAccount, resolveEntriesWithOptionalToken } from "openclaw/plugin-sdk/setup-runtime";
|
|
8
8
|
import { formatDocsLink } from "openclaw/plugin-sdk/setup-tools";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { a as resolveSlackAccount, c as resolveSlackConfigAccessorAccount, i as resolveDefaultSlackAccountId, n as listSlackAccountIds, o as resolveSlackAccountAllowFrom, s as resolveSlackAccountDmPolicy } from "./accounts-
|
|
2
|
-
import { t as inspectSlackAccount } from "./account-inspect-
|
|
3
|
-
import { n as isSlackInteractiveRepliesEnabled } from "./interactive-replies-
|
|
4
|
-
import { r as getChatChannelMeta } from "./channel-api-
|
|
5
|
-
import { i as SLACK_CHANNEL } from "./setup-core-
|
|
6
|
-
import { t as SlackChannelConfigSchema } from "./config-schema-
|
|
7
|
-
import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./doctor-contract-
|
|
8
|
-
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-
|
|
1
|
+
import { a as resolveSlackAccount, c as resolveSlackConfigAccessorAccount, i as resolveDefaultSlackAccountId, n as listSlackAccountIds, o as resolveSlackAccountAllowFrom, s as resolveSlackAccountDmPolicy } from "./accounts-yk5K3wQU.js";
|
|
2
|
+
import { t as inspectSlackAccount } from "./account-inspect-BJyQLSkN.js";
|
|
3
|
+
import { n as isSlackInteractiveRepliesEnabled } from "./interactive-replies-CawNPL-h.js";
|
|
4
|
+
import { r as getChatChannelMeta } from "./channel-api-BfBK89IN.js";
|
|
5
|
+
import { i as SLACK_CHANNEL } from "./setup-core-DgLJ7dQY.js";
|
|
6
|
+
import { t as SlackChannelConfigSchema } from "./config-schema-Bueih4yH.js";
|
|
7
|
+
import { n as normalizeCompatibilityConfig, t as legacyConfigRules } from "./doctor-contract-DCkS8eNN.js";
|
|
8
|
+
import { n as collectRuntimeConfigAssignments, r as secretTargetRegistryEntries } from "./secret-contract-BurGIyhv.js";
|
|
9
9
|
import { adaptScopedAccountAccessor, createScopedChannelConfigAdapter, createScopedDmSecurityResolver } from "openclaw/plugin-sdk/channel-config-helpers";
|
|
10
10
|
import { createLazyRuntimeModule } from "openclaw/plugin-sdk/lazy-runtime";
|
|
11
11
|
import { formatAllowFromLowercase } from "openclaw/plugin-sdk/allow-from";
|
|
@@ -45,7 +45,7 @@ const collectSlackSecurityWarnings = createOpenProviderConfiguredRouteWarningCol
|
|
|
45
45
|
remediation: "Set channels.slack.groupPolicy=\"allowlist\" and configure channels.slack.channels"
|
|
46
46
|
}
|
|
47
47
|
});
|
|
48
|
-
const loadSlackSecurityAuditModule = createLazyRuntimeModule(() => import("./security-audit-
|
|
48
|
+
const loadSlackSecurityAuditModule = createLazyRuntimeModule(() => import("./security-audit-DvOpSaZM.js").then((n) => n.n));
|
|
49
49
|
const slackSecurityAdapter = {
|
|
50
50
|
resolveDmPolicy: resolveSlackDmPolicy,
|
|
51
51
|
collectWarnings: collectSlackSecurityWarnings,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as deliverSlackSlashReplies$1 } from "./replies-
|
|
1
|
+
import { r as deliverSlackSlashReplies$1 } from "./replies-CzfjCaLG.js";
|
|
2
2
|
import { resolveAgentRoute as resolveAgentRoute$1 } from "openclaw/plugin-sdk/routing";
|
|
3
3
|
import { resolveMarkdownTableMode as resolveMarkdownTableMode$1 } from "openclaw/plugin-sdk/markdown-table-runtime";
|
|
4
4
|
import { recordInboundSessionMetaSafe as recordInboundSessionMetaSafe$1, resolveConversationLabel as resolveConversationLabel$1 } from "openclaw/plugin-sdk/conversation-runtime";
|
package/dist/test-api.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as createSlackActions, t as slackPlugin } from "./channel-
|
|
2
|
-
import { n as setSlackRuntime } from "./runtime
|
|
3
|
-
import { t as sendMessageSlack } from "./send-
|
|
4
|
-
import { t as prepareSlackMessage } from "./prepare-
|
|
5
|
-
import { t as createInboundSlackTestContext } from "./prepare.test-helpers-
|
|
6
|
-
import { t as createSlackOutboundPayloadHarness } from "./outbound-payload.test-harness-
|
|
7
|
-
import { n as slackOutbound } from "./outbound-adapter-
|
|
1
|
+
import { a as createSlackActions, t as slackPlugin } from "./channel-CC04F-xs.js";
|
|
2
|
+
import { n as setSlackRuntime } from "./runtime--VlVtTPu.js";
|
|
3
|
+
import { t as sendMessageSlack } from "./send-ioky2Xpy.js";
|
|
4
|
+
import { t as prepareSlackMessage } from "./prepare-CXI8nHbJ.js";
|
|
5
|
+
import { t as createInboundSlackTestContext } from "./prepare.test-helpers-BhFHtbz3.js";
|
|
6
|
+
import { t as createSlackOutboundPayloadHarness } from "./outbound-payload.test-harness-DM9ZdY2f.js";
|
|
7
|
+
import { n as slackOutbound } from "./outbound-adapter-DsAvCwpZ.js";
|
|
8
8
|
export { createInboundSlackTestContext, createSlackActions, createSlackOutboundPayloadHarness, prepareSlackMessage, sendMessageSlack, setSlackRuntime, slackOutbound, slackPlugin };
|
package/openclaw.plugin.json
CHANGED
|
@@ -495,6 +495,30 @@
|
|
|
495
495
|
}
|
|
496
496
|
]
|
|
497
497
|
},
|
|
498
|
+
"botLoopProtection": {
|
|
499
|
+
"type": "object",
|
|
500
|
+
"properties": {
|
|
501
|
+
"enabled": {
|
|
502
|
+
"type": "boolean"
|
|
503
|
+
},
|
|
504
|
+
"maxEventsPerWindow": {
|
|
505
|
+
"type": "integer",
|
|
506
|
+
"exclusiveMinimum": 0,
|
|
507
|
+
"maximum": 9007199254740991
|
|
508
|
+
},
|
|
509
|
+
"windowSeconds": {
|
|
510
|
+
"type": "integer",
|
|
511
|
+
"exclusiveMinimum": 0,
|
|
512
|
+
"maximum": 9007199254740991
|
|
513
|
+
},
|
|
514
|
+
"cooldownSeconds": {
|
|
515
|
+
"type": "integer",
|
|
516
|
+
"exclusiveMinimum": 0,
|
|
517
|
+
"maximum": 9007199254740991
|
|
518
|
+
}
|
|
519
|
+
},
|
|
520
|
+
"additionalProperties": false
|
|
521
|
+
},
|
|
498
522
|
"dangerouslyAllowNameMatching": {
|
|
499
523
|
"type": "boolean"
|
|
500
524
|
},
|
|
@@ -1059,6 +1083,30 @@
|
|
|
1059
1083
|
}
|
|
1060
1084
|
]
|
|
1061
1085
|
},
|
|
1086
|
+
"botLoopProtection": {
|
|
1087
|
+
"type": "object",
|
|
1088
|
+
"properties": {
|
|
1089
|
+
"enabled": {
|
|
1090
|
+
"type": "boolean"
|
|
1091
|
+
},
|
|
1092
|
+
"maxEventsPerWindow": {
|
|
1093
|
+
"type": "integer",
|
|
1094
|
+
"exclusiveMinimum": 0,
|
|
1095
|
+
"maximum": 9007199254740991
|
|
1096
|
+
},
|
|
1097
|
+
"windowSeconds": {
|
|
1098
|
+
"type": "integer",
|
|
1099
|
+
"exclusiveMinimum": 0,
|
|
1100
|
+
"maximum": 9007199254740991
|
|
1101
|
+
},
|
|
1102
|
+
"cooldownSeconds": {
|
|
1103
|
+
"type": "integer",
|
|
1104
|
+
"exclusiveMinimum": 0,
|
|
1105
|
+
"maximum": 9007199254740991
|
|
1106
|
+
}
|
|
1107
|
+
},
|
|
1108
|
+
"additionalProperties": false
|
|
1109
|
+
},
|
|
1062
1110
|
"users": {
|
|
1063
1111
|
"type": "array",
|
|
1064
1112
|
"items": {
|
|
@@ -1595,6 +1643,30 @@
|
|
|
1595
1643
|
}
|
|
1596
1644
|
]
|
|
1597
1645
|
},
|
|
1646
|
+
"botLoopProtection": {
|
|
1647
|
+
"type": "object",
|
|
1648
|
+
"properties": {
|
|
1649
|
+
"enabled": {
|
|
1650
|
+
"type": "boolean"
|
|
1651
|
+
},
|
|
1652
|
+
"maxEventsPerWindow": {
|
|
1653
|
+
"type": "integer",
|
|
1654
|
+
"exclusiveMinimum": 0,
|
|
1655
|
+
"maximum": 9007199254740991
|
|
1656
|
+
},
|
|
1657
|
+
"windowSeconds": {
|
|
1658
|
+
"type": "integer",
|
|
1659
|
+
"exclusiveMinimum": 0,
|
|
1660
|
+
"maximum": 9007199254740991
|
|
1661
|
+
},
|
|
1662
|
+
"cooldownSeconds": {
|
|
1663
|
+
"type": "integer",
|
|
1664
|
+
"exclusiveMinimum": 0,
|
|
1665
|
+
"maximum": 9007199254740991
|
|
1666
|
+
}
|
|
1667
|
+
},
|
|
1668
|
+
"additionalProperties": false
|
|
1669
|
+
},
|
|
1598
1670
|
"dangerouslyAllowNameMatching": {
|
|
1599
1671
|
"type": "boolean"
|
|
1600
1672
|
},
|
|
@@ -2158,6 +2230,30 @@
|
|
|
2158
2230
|
}
|
|
2159
2231
|
]
|
|
2160
2232
|
},
|
|
2233
|
+
"botLoopProtection": {
|
|
2234
|
+
"type": "object",
|
|
2235
|
+
"properties": {
|
|
2236
|
+
"enabled": {
|
|
2237
|
+
"type": "boolean"
|
|
2238
|
+
},
|
|
2239
|
+
"maxEventsPerWindow": {
|
|
2240
|
+
"type": "integer",
|
|
2241
|
+
"exclusiveMinimum": 0,
|
|
2242
|
+
"maximum": 9007199254740991
|
|
2243
|
+
},
|
|
2244
|
+
"windowSeconds": {
|
|
2245
|
+
"type": "integer",
|
|
2246
|
+
"exclusiveMinimum": 0,
|
|
2247
|
+
"maximum": 9007199254740991
|
|
2248
|
+
},
|
|
2249
|
+
"cooldownSeconds": {
|
|
2250
|
+
"type": "integer",
|
|
2251
|
+
"exclusiveMinimum": 0,
|
|
2252
|
+
"maximum": 9007199254740991
|
|
2253
|
+
}
|
|
2254
|
+
},
|
|
2255
|
+
"additionalProperties": false
|
|
2256
|
+
},
|
|
2161
2257
|
"users": {
|
|
2162
2258
|
"type": "array",
|
|
2163
2259
|
"items": {
|
|
@@ -2267,6 +2363,26 @@
|
|
|
2267
2363
|
"label": "Slack Allow Bot Messages",
|
|
2268
2364
|
"help": "Allow bot-authored messages to trigger Slack replies (default: false)."
|
|
2269
2365
|
},
|
|
2366
|
+
"botLoopProtection": {
|
|
2367
|
+
"label": "Slack Bot Loop Protection",
|
|
2368
|
+
"help": "Sliding-window guard for Slack bot-to-bot loops. Default is enabled whenever allowBots lets bot-authored messages reach dispatch."
|
|
2369
|
+
},
|
|
2370
|
+
"botLoopProtection.enabled": {
|
|
2371
|
+
"label": "Slack Bot Loop Protection Enabled",
|
|
2372
|
+
"help": "Enable the bot-pair loop guard. Defaults to true when allowBots is true or \"mentions\", and false when bot messages are ignored."
|
|
2373
|
+
},
|
|
2374
|
+
"botLoopProtection.maxEventsPerWindow": {
|
|
2375
|
+
"label": "Slack Bot Loop Events per Window",
|
|
2376
|
+
"help": "Maximum accepted bot-pair messages within the sliding window before suppression starts. Default: 20."
|
|
2377
|
+
},
|
|
2378
|
+
"botLoopProtection.windowSeconds": {
|
|
2379
|
+
"label": "Slack Bot Loop Window Seconds",
|
|
2380
|
+
"help": "Sliding window length for counting bot-pair messages. Default: 60."
|
|
2381
|
+
},
|
|
2382
|
+
"botLoopProtection.cooldownSeconds": {
|
|
2383
|
+
"label": "Slack Bot Loop Cooldown Seconds",
|
|
2384
|
+
"help": "How long to suppress the bot pair after it exceeds the budget. Default: 60."
|
|
2385
|
+
},
|
|
2270
2386
|
"socketMode": {
|
|
2271
2387
|
"label": "Slack Socket Mode Transport",
|
|
2272
2388
|
"help": "Slack Socket Mode transport tuning passed to the Slack SDK. Use only when investigating ping/pong timeout or stale websocket behavior."
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/slack",
|
|
3
|
-
"version": "2026.5.
|
|
3
|
+
"version": "2026.5.14-beta.1",
|
|
4
4
|
"description": "OpenClaw Slack channel plugin",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -12,14 +12,15 @@
|
|
|
12
12
|
"@slack/types": "2.21.1",
|
|
13
13
|
"@slack/web-api": "7.15.2",
|
|
14
14
|
"https-proxy-agent": "9.0.0",
|
|
15
|
-
"typebox": "1.1.38"
|
|
15
|
+
"typebox": "1.1.38",
|
|
16
|
+
"zod": "4.4.3"
|
|
16
17
|
},
|
|
17
18
|
"devDependencies": {
|
|
18
19
|
"@openclaw/plugin-sdk": "workspace:*",
|
|
19
20
|
"openclaw": "workspace:*"
|
|
20
21
|
},
|
|
21
22
|
"peerDependencies": {
|
|
22
|
-
"openclaw": ">=2026.5.
|
|
23
|
+
"openclaw": ">=2026.5.14-beta.1"
|
|
23
24
|
},
|
|
24
25
|
"peerDependenciesMeta": {
|
|
25
26
|
"openclaw": {
|
|
@@ -60,13 +61,14 @@
|
|
|
60
61
|
"install": {
|
|
61
62
|
"npmSpec": "@openclaw/slack",
|
|
62
63
|
"defaultChoice": "npm",
|
|
63
|
-
"minHostVersion": ">=2026.5.12-beta.
|
|
64
|
+
"minHostVersion": ">=2026.5.12-beta.1"
|
|
64
65
|
},
|
|
65
66
|
"compat": {
|
|
66
|
-
"pluginApi": ">=2026.5.
|
|
67
|
+
"pluginApi": ">=2026.5.14-beta.1"
|
|
67
68
|
},
|
|
68
69
|
"build": {
|
|
69
|
-
"openclawVersion": "2026.5.
|
|
70
|
+
"openclawVersion": "2026.5.14-beta.1",
|
|
71
|
+
"bundledDist": false
|
|
70
72
|
},
|
|
71
73
|
"release": {
|
|
72
74
|
"publishToClawHub": true,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{slash-skill-commands.runtime-BMs0VjTe.js → slash-skill-commands.runtime-B-_KAk0C.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|