Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.neo.projectdiscovery.io/llms.txt

Use this file to discover all available pages before exploring further.

This page is for workspace admins, Neo team admins, and anyone reviewing the Slack app from a security or governance perspective.

Admin Responsibilities

Slack in Neo has two layers of administration:
  • Slack workspace administration for approving the app installation in Slack
  • Neo team administration for managing the workspace inside Neo (reconnect, disconnect, channel-level controls)
Any authenticated Neo user can start the connection. If they don’t yet have a Neo team, Neo auto-creates one named after the Slack workspace and makes them admin. Once a workspace is tied to a Neo team, only that team’s admins can reconnect or disconnect it. Non-admin team members can use Neo in Slack but cannot manage the workspace connection.

Why Neo Requests These Permissions

Neo needs enough Slack access to read the conversation it is responding to, post back into the same thread, handle attachments, and support app-native assistant behavior.

Core Interaction Scopes

  • app_mentions:read
  • assistant:write
  • chat:write
  • im:write
These let Neo:
  • detect when users bring Neo into a conversation
  • participate in assistant-style Slack experiences
  • post replies and status back into Slack
  • open a direct-message channel with a user when Neo needs to deliver a completion summary or follow-up question

Channel And Conversation Reading Scopes

  • channels:history
  • channels:read
  • groups:history
  • groups:read
  • im:history
  • im:read
  • mpim:history
These let Neo:
  • read the thread or conversation it is working in
  • understand channel context
  • respond correctly in public channels, private channels, DMs, and group DMs

File Handling Scopes

  • files:read
  • files:write
These let Neo:
  • read attached files when users include them in a request
  • return generated artifacts or supporting files back into Slack

User Context Scopes

  • users:read
  • users:read.email
These let Neo:
  • map Slack users to the right Neo user or team context
  • enforce the right access model for the requesting user

Task Control Scopes

  • reactions:write
  • reactions:read
These let Neo:
  • add or manage reaction-based workflow controls where needed
  • detect supported abort reactions on running tasks

Event Subscriptions

Neo uses Slack events to drive the integration behavior. Current event subscriptions include:
  • app_home_opened
  • app_mention
  • app_uninstalled
  • assistant_thread_context_changed
  • assistant_thread_started
  • message.channels
  • message.groups
  • message.im
  • message.mpim
  • tokens_revoked
  • reaction_added
These events let Neo:
  • initialize the app home and assistant experience
  • detect mentions and new user requests
  • process DMs, group DM messages, and react to mentions in public and private channels
  • react safely when tokens are revoked or the app is uninstalled
  • support reaction-based task aborts in running threads
In public and private channels, Neo only acts when explicitly mentioned. Plain messages in those channels are subscribed to but ignored unless they include @Neo. In DMs and group DMs Neo responds to direct messages without an explicit mention. For reaction-based task cancellation, Neo needs:
  • reaction_added event subscription
  • reactions:write bot scope (to add status reactions on the trigger message)
If your workspace installed Neo before those were added, reinstall or reconnect the app so Slack sends the new events.

Channel Behavior

Neo does not behave identically everywhere.

DMs

DMs are always the cleanest way to work with Neo:
  • the conversation is already scoped
  • there is no channel-level ambiguity
  • users can interact without worrying about channel policy

Channels

In channels, Neo behavior depends on channel configuration and how the conversation is started. Admins should expect:
  • channel use to be controlled from Neo settings where applicable
  • disabled channels to reject requests with a clear message
  • thread continuity to be preserved for active work

User Access Expectations

A connected Slack workspace does not automatically mean every user can use Neo equally. Neo still evaluates:
  • user-to-Neo identity mapping
  • team context
  • feature access such as Neo AI entitlement
Slack-created tasks are also associated with the connected Neo team, so visibility and follow-up in Neo remain team-specific rather than private to the individual Slack sender. If a user lacks the necessary access, the integration can reject the request even when the workspace itself is connected correctly.

Reconnect And Reinstall Guidance

Admins should reconnect or reinstall when:
  • Slack access was revoked externally
  • the workspace previously disconnected in Neo
  • new scopes or events were added to the app
  • reaction-based abort or other newly shipped behavior is not working in an older install

Reviewer Summary

Neo uses Slack permissions to do a focused set of things:
  • read the conversation it is asked to work on
  • reply in the correct thread
  • handle user-provided files
  • map users to the correct Neo context
  • support assistant-native Slack behavior
  • stop active tasks via supported reactions
For operational recovery and common admin issues, see Slack Troubleshooting.