Skip to content
AI Service Desk Guide — The working reference on AI agents for internal IT

Conversation surface profile

AI IT Support Agent for Slack and Microsoft Teams

Where a request starts in Slack or Microsoft Teams, where it becomes a ticket, what an agent has to be granted, and what each platform's retention can delete.

9 min read

Updated on

An AI IT support agent for Slack and Microsoft Teams takes the request in the chat where the employee already asked, and keeps the record in the service desk. The documentation published by Harmony, Serval, Ravenna and Freshworks describes broadly the same sequence: an app is installed in the Slack workspace or the Microsoft 365 tenant, employees reach it in a channel, a direct message or a message action, the agent answers what it can, and the request becomes a ticket followed in the conversation. An IT helpdesk in Slack or Teams therefore depends on two settings the service desk does not own. The platform decides what the agent can read: Microsoft documents that, by default, an agent in Teams receives only the messages in which it is @mentioned. The platform also decides how long the conversation lasts: Slack’s retention settings and Microsoft’s retention policies for Teams can delete messages on a schedule. The chat is the intake surface, not the system of record.

Where does the employee raise the request?

The pages read for this guide do not cover the two platforms evenly, and the examples below follow them. On Slack, the detailed examples come from Siit, Harmony and Ravenna. On Teams, they come from Harmony, Serval, Atlassian and Freshworks. Among these examples, Harmony’s cover both platforms. The Siit example comes from its Slack page alone, so its Teams integration is neither described nor compared.

In Slack, three patterns recur. A request channel that the agent watches: Ravenna’s setup guide has the admin send /invite @Ravenna in a public channel and link it to a Ravenna workspace. A mention or a direct message: Siit’s Slack page lists a mention of the app in a public channel for a request the team can see, and a direct message for a confidential one. A message action on an existing message: the same page’s third entry point is the Create a ticket action on a message in a private channel or DM. Harmony adds a /harmony slash command and native forms for Service Catalog requests. Its page is ambiguous on channels: the troubleshooting section says to @mention Harmony, while the setup test step shows a plain message with no mention.

In Teams, the same patterns appear with platform-specific wording. Serval documents Help Desk channels where it responds to every new thread, Silent Mode channels where @Serval is needed, and direct messages. Harmony lists /Harmony, which opens a request form in any channel, message actions, adaptive cards and an embedded app with single sign-on. Atlassian’s virtual service agent for Jira Service Management works through direct messages: employees go to the Assist app and send a message. Freshservice deploys an agent built in its AI Agent Studio to direct messages, where it answers every message, and to channels, where it answers only when it has been added and mentioned.

Where does a chat request become a ticket?

The pages differ on when the ticket is created.

Some create it from the message itself. Ravenna’s channel settings include Auto-create tickets, so every new message in the request channel becomes a ticket, with a ticket mirror threaded underneath and replies synced both ways between Slack and the ticket. Siit’s Slack page lets admins turn a message from a public channel or a DM into a ticket, with the original thread still connected to it; the same page says requesters receive status changes, assignments and resolutions in their request thread. Others try to answer first: Atlassian’s virtual service agent matches the question to an intent or answers with AI answers, and if the employee still needs help it offers to create a work item for a human agent.

Direct messages are the harder case. Serval’s Teams page states that Microsoft Teams does not support threads in direct messages, so Serval routes each message to a new or an existing ticket from its content, a process it describes as less precise than channel threads, where each thread maps to one ticket. It offers a /create-ticket command to create the ticket explicitly, and quoting a Serval message to point a reply at the right ticket.

How a ticket created in chat then reaches an installed ITSM is covered in the Jira Service Management profile, and where a chat surface fits in a rollout is in adding an agent without replacing your ITSM.

What does the agent have to be granted?

Installation is where access is decided, and vendors document it at different depths. Harmony lists nine Slack scopes, including channels:history, im:history and files:read, and eight Microsoft permissions, including ChannelMessage.Read.All, Chat.ReadWrite and Files.Read.All. Its Teams setup requires Microsoft Entra ID to be connected first and the app package to be uploaded by a Teams administrator. Freshservice asks for permission to install Teams apps, and notes that one Teams app, Servicebot, carries the AI agent, ticket collaboration, surveys and on-call notifications. Serval states that its Home and Tickets tabs request no additional Microsoft Graph permissions. Siit’s Slack integration page lists no scopes or permissions.

What an agent can read in channels is also stated by vendors: Harmony’s Slack page says it only accesses channels where it is explicitly invited, and Atomicwork’s Teams page says it cannot read conversations in channels its assistant is not part of.

Microsoft’s documentation draws the distinctions an admin needs to read such a list. In the Teams admin center, each app’s permissions appear on its details page with privilege levels and can be exported as a CSV file. Delegated access reaches only what the signed-in user can reach; application access lets an app act on its own, and only admins can consent to it. Microsoft advises using a lower privilege role where possible and the Global Administrator role only when necessary.

Microsoft also states a default that bears on any agent: it receives, or can access through Graph, only the chat messages in which it is @mentioned. To read every message in a channel or group chat, the app manifest has to request the resource-specific consent permissions ChannelMessage.Read.Group or ChatMessage.Read.Chat. Harmony’s ChannelMessage.Read.All and Microsoft’s ChannelMessage.Read.Group are different permissions on different pages, and neither page says how one maps onto the other. An admin comparing agents should ask each vendor which mechanism it uses.

What happens to the conversation when retention deletes it?

Both platforms let an administrator delete conversations on a schedule, and the owner of that setting is not the service desk.

In Slack, paid plans keep data for the lifetime of the workspace by default; the free plan offers 90 days or one year. Workspace Owners can set automatic deletion, and Org Owners can set a policy for every workspace in the org. The setting covers messages, files, canvases and lists, including pinned and saved items, and deletions run once a day. Slack’s note: data deleted according to a retention setting is permanent.

In Teams, Microsoft’s retention page for administrators describes retention policies that can retain, or delete after a set period, chats and channel messages. Emails and files used with Teams fall outside those policies and follow their own retention policies, set on other locations such as Microsoft 365 Group mailboxes and sites. Deletion is not immediate: Microsoft’s example of a delete-after-one-day policy can take 16 days before a message is permanently deleted. When a policy deletes a message, it disappears from the Teams app for everyone in the conversation, including users in other organizations.

The practical question is whether the ticket keeps what the thread contained. Serval’s Teams page says that when Serval creates a team request, only the files selected for that request are copied into its ticket. Siit’s Slack page says the original thread stays connected to the ticket, without saying whether the ticket keeps its own copy of attachments once Slack deletes them. That is a test to run before choosing a short retention window: delete a thread in a test workspace or tenant, then open the ticket.

Which limits do the vendors publish?

Each limit below applies to the vendor whose page states it.

Harmony states that in Slack ticket threads, asking it to tag or notify someone produces an explanation that mentions are not supported there, and the request is added as a ticket comment. Its Teams page says Harmony is supported only in public channels. Serval lists two limitations of its Teams integration: no Team Inbox mode and no Team Only mode. Atlassian states that its virtual service agent can be used in Microsoft Teams or Slack, not both, and that it is not available in the Atlassian Government environment. Freshservice notes that channel changes to a deployed agent apply to new conversations only.

What the agent is allowed to do once it is reached is a separate question, covered in the page defining an AI service desk agent.

Which vendors document IT requests in Slack and Microsoft Teams?

Criterion: the vendor publishes a page showing how a request raised in Slack or Microsoft Teams becomes a tracked ticket or request, with its status shown to the requester in the chat; each line names the platform that page covers and what else it documents, such as installation or permissions.

  • Freshworks: its Freshservice Teams pages cover deploying an agent from AI Agent Studio to a test group or to everyone, and Servicebot, through which requesters create tickets or requests from Teams, are notified of ticket updates and check ticket status with commands.
  • Harmony: separate Slack and Teams pages cover installation, slash commands, ticket creation, the Slack scopes and Microsoft permissions each page lists, and ticket status shown with reactions in Slack and adaptive cards in Teams.
  • Ravenna: the Slack setup guide covers inviting the app to a request channel, creating a ticket from every new message with a ticket mirror in the thread, and status changes signalled with reactions.
  • Risotto: the chat-based ticketing page says employees ask in Slack or Teams, tickets are created automatically from Slack, email and Teams and synced with the ITSM, and ticket status updates appear in the chat.
  • Serval: the Teams page covers adding the app, channel modes, how direct messages are routed to new or existing tickets, and ticket status shown in Teams messages.
  • Siit: the Slack integration page covers three entry points, admin conversion of a message into a ticket with the thread kept connected, and status updates in the request thread.

The tools involved

Slack

US

Messaging platform where IT agents publish help-desk surfaces in channels, direct messages and message actions. Its retention settings let Workspace Owners and Org Owners decide how long messages and files are kept.

  • chat
  • intake-surface
  • retention-policy
  • message-actions

Microsoft Teams

US

Messaging platform where IT agents run as bots and apps with admin-reviewed permissions. Permissions are reviewed in the Teams admin center, and the consent model separates delegated from application access.

  • chat
  • intake-surface
  • app-permissions
  • adaptive-cards

Frequently asked questions

How does an IT helpdesk in Slack work with an AI agent?

An app is installed in the Slack workspace and added to request channels. Employees post in a channel, mention the app, message it directly or run a message action; the agent answers from connected knowledge or creates a ticket, and updates come back in the thread. Who can install it, which channels it reads and which scopes it holds are set at installation.

Is there an ITSM that works inside Microsoft Teams?

Atlassian and Freshworks both document an AI agent in Teams. Atlassian's virtual service agent for Jira Service Management answers direct messages sent to its Assist app and offers to create a work item; Freshservice deploys agents built in its AI Agent Studio to Teams direct messages and channels. AI-native service desks such as Harmony and Serval publish Teams pages too.

What does internal support without a portal look like?

The request starts in a channel or a direct message and is followed in the same thread. Some vendors also bring the status view into Teams: Serval adds Home and Tickets tabs, and Harmony embeds its interface, whose bell notifications deep-link to the Harmony portal.

Which vendors offer an AI IT support agent for Slack and Microsoft Teams?

Vendors that publish a page showing how a request raised in Slack or Teams becomes a tracked ticket or request, with its status shown to the requester in the chat, include Freshworks (Freshservice), Harmony, Ravenna, Risotto, Serval and Siit. The pages cited cover different platforms: Slack for Siit and Ravenna, both for Harmony and Risotto, and Teams for Freshworks and Serval; Freshservice's Teams page adds that its agents can also be deployed on Slack.

Sources