Slack
Status: produktionsklar för DM + kanaler via Slack-appintegrationer. Standardläget är Socket Mode; HTTP Events API-läge stöds också.Pairing
Slack-DM använder parkopplingsläge som standard.
Slash commands
Inbyggt kommandobeteende och kommandokatalog.
Channel troubleshooting
Diagnostik över flera kanaler och reparationsguider.
Snabbstart
- Socket Mode (default)
- HTTP Events API mode
Prenumerera på apphändelser
Prenumerera på bothändelser för:
app_mentionmessage.channels,message.groups,message.im,message.mpimreaction_added,reaction_removedmember_joined_channel,member_left_channelchannel_renamepin_added,pin_removed
Tokenmodell
botToken+appTokenkrävs för Socket Mode.- HTTP-läge kräver
botToken+signingSecret. - Konfigurationstokens åsidosätter miljövariabler som reserv.
- Miljövariablerna
SLACK_BOT_TOKEN/SLACK_APP_TOKENgäller endast för standardkontot. userToken(xoxp-...) är endast konfigurationsbaserad (ingen reserv via miljövariabel) och använder som standard skrivskyddat läge (userTokenReadOnly: true).- Valfritt: lägg till
chat:write.customizeom du vill att utgående meddelanden ska använda den aktiva agentidentiteten (anpassatusernameoch ikon).icon_emojianvänder syntaxen:emoji_name:.
Åtkomstkontroll och routing
- DM policy
- Channel policy
- Mentions and channel users
channels.slack.dmPolicy styr DM-åtkomst (äldre: channels.slack.dm.policy):OpenClaw-konfig (minimal)
- Inbyggt kommando auto-läge är av för Slack (
commands.native: "auto"aktiverar inte Slack-inbyggda kommandon). - Aktivera inbyggda Slack-kommandohanterare med
channels.slack.commands.native: true(eller globaltcommands.native: true). - När inbyggda kommandon är aktiverade, registrera motsvarande slash-kommandon i Slack (
/<command>-namn). - Om inbyggda kommandon inte är aktiverade kan du köra ett enskilt konfigurerat slash-kommando via
channels.slack.slashCommand.
enabled: falsename: "openclaw"sessionPrefix: "slack:slash"ephemeral: true
agent:<agentId>:slack:slash:<userId>
CommandTargetSessionKey).
Scopes (aktuella vs valfria)
- DMs dirigeras som
direct; kanaler somchannel; MPIMs somgroup. - Med standardinställningen
session.dmScope=mainslås Slack-DMs ihop till agentens huvudsession. - Kanalsessioner:
agent:<agentId>:slack:channel:<channelId>. - Trådsvar kan skapa trådsessionssuffix (
:thread:<threadTs>) när det är tillämpligt. channels.slack.thread.historyScopeär som standardthread;thread.inheritParentär som standardfalse.channels.slack.thread.initialHistoryLimitstyr hur många befintliga trådmeddelanden som hämtas när en ny trådsession startar (standard20; sätt0för att inaktivera).
chat:write(skicka/uppdatera/ta bort meddelanden viachat.postMessage) https://docs.slack.dev/reference/methods/chat.postMessageim:write(öppna DM viaconversations.openför användar-DM) https://docs.slack.dev/reference/methods/conversations.openchannels:history,groups:history,im:history,mpim:historyhttps://docs.slack.dev/reference/methods/conversations.history
[[reply_to_current]][[reply_to:<id>]]
replyToMode="off" inaktiverar implicit svarstrådning. Explicita [[reply_to_*]]-taggar respekteras fortfarande.
Inte behövda idag (men sannolikt i framtiden)
Inbound attachments
Inbound attachments
Slack-filbilagor laddas ner från Slack-hostade privata URL:er (tokenautentiserat begärdeflöde) och skrivs till medielagret när hämtningen lyckas och storleksgränser tillåter.
Outbound text and files
Outbound text and files
- textblock använder
channels.slack.textChunkLimit(standard 4000) channels.slack.chunkMode="newline"aktiverar styckevis uppdelning först- filsändningar använder Slack upload APIs och kan inkludera trådsvar (
thread_ts) - utgående mediagräns följer
channels.slack.mediaMaxMbnär den är konfigurerad; annars använder kanalsändningar MIME-typsstandarder från mediapipelinen
Delivery targets
Delivery targets
Föredragna explicita mål:
Begränsningar
Slack-åtgärder styrs avchannels.slack.actions.*.
Tillgängliga åtgärdsgrupper i nuvarande Slack-verktyg:
| Grupp | Standard |
|---|---|
| messages | enabled |
| reactions | enabled |
| pins | enabled |
| memberInfo | enabled |
| emojiList | enabled |
Händelser och operativt beteende
- Redigeringar/raderingar av meddelanden och trådsändningar mappas till systemhändelser.
- Händelser för att lägga till/ta bort reaktioner mappas till systemhändelser.
- Händelser för medlem som går med/lämnar, kanal som skapas/byter namn samt nålning som läggs till/tas bort mappas till systemhändelser.
channel_id_changedkan migrera kanalens konfigurationsnycklar närconfigWritesär aktiverat.- Kanalens ämnes-/syftesmetadata behandlas som opålitlig kontext och kan injiceras i routningskontexten.
Trådning per chatttyp
Du kan konfigurera olika trådningsbeteenden per chatttyp genom att sättachannels.slack.replyToModeByChatType:
Upplösningsordning:
channels.slack.accounts.<accountId>.ackReactionchannels.slack.ackReactionmessages.ackReaction- reserv-emoji för agentidentitet (
agents.list[].identity.emoji, annars ”👀”)
- Slack förväntar sig shortcodes (till exempel
"eyes"). - Använd
""för att inaktivera reaktionen för en kanal eller ett konto.
Manifest och omfattningschecklista
Slack app manifest example
Slack app manifest example
Optional user-token scopes (read operations)
Optional user-token scopes (read operations)
Om du konfigurerar
channels.slack.userToken är typiska läsbehörigheter:Felsökning
No replies in channels
No replies in channels
Kontrollera, i ordning:
DM messages ignored
DM messages ignored
Kontrollera:
Socket mode not connecting
Socket mode not connecting
Verifiera bot- och app-token samt att Socket Mode är aktiverat i Slack-appens inställningar.
HTTP mode not receiving events
HTTP mode not receiving events
Verifiera:
Native/slash commands not firing
Native/slash commands not firing
Verifiera om du avsåg:
Verktygsåtgärder
Slack-verktygsåtgärder kan spärras medchannels.slack.actions.*:
-
Configuration reference - Slack
Viktiga Slack-fält:
- läge/autentisering:
mode,botToken,appToken,signingSecret,webhookPath,accounts.* - DM-åtkomst:
dm.enabled,dmPolicy,allowFrom(äldre:dm.policy,dm.allowFrom),dm.groupEnabled,dm.groupChannels - kanalåtkomst:
groupPolicy,channels.*,channels.*.users,channels.*.requireMention - trådar/historik:
replyToMode,replyToModeByChatType,thread.*,historyLimit,dmHistoryLimit,dms.*.historyLimit - leverans:
textChunkLimit,chunkMode,mediaMaxMb - drift/funktioner:
configWrites,commands.native,slashCommand.*,actions.*,userToken,userTokenReadOnly
- läge/autentisering:
Säkerhetsnoteringar
- Skrivningar använder som standard bot-token så att tillståndsändrande åtgärder hålls inom appens botbehörigheter och identitet.
- Channel routing
- Om du aktiverar skrivningar med användartoken, säkerställ att användartoken inkluderar de skriv-
scopes du förväntar dig (
chat:write,reactions:write,pins:write,files:write) annars kommer dessa operationer att misslyckas. - Configuration
- Slash commands