Merge pull request #1387 from NousResearch/hermes/hermes-eca4a640

fix: improve Slack setup guidance
This commit is contained in:
Teknium 2026-03-14 21:50:28 -07:00 committed by GitHub
commit c54db79edc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2142,20 +2142,22 @@ def setup_gateway(config: dict):
print_info(" • Create an App-Level Token with 'connections:write' scope") print_info(" • Create an App-Level Token with 'connections:write' scope")
print_info(" 3. Add Bot Token Scopes: Features → OAuth & Permissions") print_info(" 3. Add Bot Token Scopes: Features → OAuth & Permissions")
print_info(" Required scopes: chat:write, app_mentions:read,") print_info(" Required scopes: chat:write, app_mentions:read,")
print_info(" channels:history, channels:read, groups:history,") print_info(" channels:history, channels:read, im:history,")
print_info(" im:history, im:read, im:write, users:read, files:write") print_info(" im:read, im:write, users:read, files:write")
print_info(" Optional for private channels: groups:history")
print_info(" 4. Subscribe to Events: Features → Event Subscriptions → Enable") print_info(" 4. Subscribe to Events: Features → Event Subscriptions → Enable")
print_info(" Required events: message.im, message.channels,") print_info(" Required events: message.im, message.channels, app_mention")
print_info(" message.groups, app_mention") print_info(" Optional for private channels: message.groups")
print_warning(" ⚠ Without message.channels/message.groups events,") print_warning(" ⚠ Without message.channels the bot will ONLY work in DMs,")
print_warning(" the bot will ONLY work in DMs, not channels!") print_warning(" not public channels.")
print_info(" 5. Install to Workspace: Settings → Install App") print_info(" 5. Install to Workspace: Settings → Install App")
print_info(" 6. Reinstall the app after any scope or event changes")
print_info( print_info(
" 6. After installing, invite the bot to channels: /invite @YourBot" " 7. After installing, invite the bot to channels: /invite @YourBot"
) )
print() print()
print_info( print_info(
" Full guide: https://hermes-agent.ai/docs/user-guide/messaging/slack" " Full guide: https://hermes-agent.nousresearch.com/docs/user-guide/messaging/slack/"
) )
print() print()
bot_token = prompt("Slack Bot Token (xoxb-...)", password=True) bot_token = prompt("Slack Bot Token (xoxb-...)", password=True)
@ -2173,14 +2175,17 @@ def setup_gateway(config: dict):
) )
print() print()
allowed_users = prompt( allowed_users = prompt(
"Allowed user IDs (comma-separated, leave empty for open access)" "Allowed user IDs (comma-separated, leave empty to deny everyone except paired users)"
) )
if allowed_users: if allowed_users:
save_env_value("SLACK_ALLOWED_USERS", allowed_users.replace(" ", "")) save_env_value("SLACK_ALLOWED_USERS", allowed_users.replace(" ", ""))
print_success("Slack allowlist configured") print_success("Slack allowlist configured")
else: else:
print_warning(
"⚠️ No Slack allowlist set - unpaired users will be denied by default."
)
print_info( print_info(
"⚠️ No allowlist set - anyone in your workspace can use the bot!" " Set SLACK_ALLOW_ALL_USERS=true or GATEWAY_ALLOW_ALL_USERS=true only if you intentionally want open workspace access."
) )
# ── WhatsApp ── # ── WhatsApp ──