Factories > Integrations
Connect Microsoft Teams to your factory
# Connect Microsoft Teams to your factory Connect a factory to Microsoft Teams so your team can send work from channel conversations. Mention the Warp app in a configured standard or shared channel; the factory replies in the same thread with progress and results. ## Prerequisites * **Microsoft Teams enabled for your workspace** - The Microsoft Teams option appears in factory setup and **Settings** only when Teams is enabled for your Warp workspace. If you don't see it, ask a workspace admin or <a href=https://www.warp.dev/contact-sales>contact sales</a>. * **Permission to upload and approve custom Teams apps** - A Microsoft Teams admin must upload and approve the Warp app package in the [Teams admin center](https://admin.teams.microsoft.com). * **Permission to update the factory** - Connecting Microsoft Teams changes the factory's configuration. * **A linked Warp account for interactive requests** - Anyone who starts work with a mention must link their Microsoft account to an active member of the factory's Warp workspace. ## Connect the factory Connect Microsoft Teams while creating a factory or later from **Settings**. Steps are grouped by where you perform them. ### In the Warp Factories web app 1. In the <a href=https://platform.warp.dev>Warp Factories web app</a>, open factory setup or the factory's **Settings**, then choose **Microsoft Teams**. 2. **Sign in with Microsoft** if Warp asks you to link your Microsoft identity. This is only needed once per person. 3. **Download the production app package** (`warp-microsoft-teams-app.zip`) when Warp shows the setup instructions. The ZIP contains the Teams app manifest and icons only. ### In Microsoft Teams 4. Ask a Microsoft Teams admin to open the [Teams admin center](https://admin.teams.microsoft.com), go to **Teams apps** > **Manage apps**, and choose **Upload new app**. 5. Select the downloaded ZIP and complete the upload. 6. Have a Microsoft Teams admin approve the app so it is available to your organization. 7. In Microsoft Teams, go to **Apps** > **Built for your org**, open **Warp**, and **Add** it to each Microsoft Teams team the factory should use. That add is what makes the team selectable in Warp. ### Back in the Warp Factories web app 8. Select the Microsoft Teams teams, then select at least one channel in each selected team. The channel picker lists standard channels from a ready installation. 9. Click **Enable** (or finish factory setup) to attach Microsoft Teams to the factory. Until a workspace admin binds a newly installed team to your Warp workspace, channel selection stays blocked for that team. Warp seeds a default **teams-app-mentions** automation for your selection. Confirm by mentioning the Warp app in one of those channels and checking the factory [dashboard](/factories/factory-dashboard/). ## Configure factory automations for Microsoft Teams Add a **Microsoft Teams** trigger to an automation and pick one of these events. To edit filters, see [Automations](/factories/automations/#edit-filters-on-an-automation). - **App mentioned** (`app_mention`) - Filter by team, channels, authors, and keywords. - **Message posted in channel** (`message_posted`) - Filter by team, channels, authors, and keywords. A mention also emits `message_posted`. Don't point both triggers at the same channels, or one mention starts two runs. Every Teams trigger requires **exactly one Microsoft Teams team** and **at least one channel**. Team and channel filters are inclusion lists only. **Keywords** and **Authors** are optional (`user_ids` in a definition file). The channel picker lists standard channels only. Private channels and DMs are unsupported. Shared channels follow [Shared channel behavior](#shared-channel-behavior); if one is missing from the picker, add its channel ID in a definition file (see [Definitions as code](#definitions-as-code)). For exact `event` and filter keys in definition files, see [triggers](/factories/factory-as-code/#triggers). ## Shared channel behavior A Microsoft Teams **shared channel** is owned by one team in one Microsoft 365 organization. Install the Warp app in that **owning team**. Only people whose Microsoft account is in the **same organization** as the install and who have linked that account to Warp can start or continue shared-channel work. Guests and other organizations cannot; Warp posts a private notice pointing them back to Warp. * **Start with a mention** - In a shared channel, mention the Warp app explicitly to start new work. A root message without a bot mention does not start work there. * **Continue in-thread** - After a shared-channel thread is linked to a factory work item, eligible plain replies can continue that work item when auto-respond to thread replies is on (the default). * **History tools** - For runs that start in a shared channel, agent thread-history tools are limited to that run's originating thread and still require a sender who is in the install's organization and linked to Warp. * **Organization boundary** - The shared channel must belong to the same Microsoft 365 organization as the installed Warp app. Private channels and direct messages remain unsupported. ## Use integration-provided tools When Microsoft Teams is connected, Warp gives factory agents Teams tools automatically: read a thread, reply in a thread, post a top-level channel message, and resolve a member. These are Warp-managed, separate from [configured MCP servers](/platform/mcp/). Agents cannot list channels, read private channels, send DMs, add reactions, or upload files. Shared-channel history stays limited to the originating thread. ## Start and continue work from Microsoft Teams Mention the Warp app in a configured channel or thread to start work. The factory replies in the same thread. A plain reply continues work only if that thread already has a factory work item. When auto-respond to thread replies is on, eligible plain replies can continue without another mention. In shared channels, new root work still requires an explicit mention. Supported attachments are included; unsupported files don't block the request text. ## Follow work and review outputs Follow progress in the Teams thread where work started. Work still ends at a pull request for a person to review. See [how Warp Factories work](/factories/how-factories-work/). ## Who can start work To start work with a mention, link your Microsoft account to an active Warp workspace member (`sign in` / `help` / `sign out` on the bot). In a shared channel, that account must also be in the install's organization (see [Shared channel behavior](#shared-channel-behavior)). Automation-started work runs as the chosen factory agent. ## Definitions as code ```yaml title="factory.yaml" integrations: - type: microsoft-teams ``` ```markdown title="automations/teams-app-mentions/automation.md" --- enabled: true agent: foreman triggers: - provider: teams event: app_mention filter: team_ids: [MICROSOFT_GRAPH_TEAM_UUID] channel_ids: [19:example@thread.tacv2] --- Triage the Teams request and continue in the same thread. ``` `team_ids` must include exactly one Microsoft Graph team UUID. After you connect Teams in the factory UI, copy it from the seeded **teams-app-mentions** automation in the factory definition, or from the factory API list-teams response field `id`. `channel_ids` lists Bot Framework channel conversation IDs (the `19:…@thread.tacv2` form). For standard channels you selected in the UI, copy them from that same seeded automation or from the factory API list-channels response field `id`. For a shared channel missing from the picker, copy the channel conversation ID from the channel's Microsoft Teams link or from Microsoft Graph, then add it to `channel_ids`. Optional `keywords` and `user_ids` further narrow matching. On `microsoft-teams`, optional `autoRespondToThreadReplies` controls whether plain replies in an existing factory thread continue the work without another mention; omit it to keep the default-on behavior. See [factory definition syntax](/factories/factory-as-code/#integrations). ## Troubleshooting and reconnection - **The app doesn't acknowledge a request** - Confirm Teams is connected for that factory, you mentioned the Warp app in a configured channel, and your Microsoft account is linked. In a shared channel, confirm you are in the install's organization (see [Shared channel behavior](#shared-channel-behavior)). - **A team is missing from setup** - In Microsoft Teams, open **Apps** > **Built for your org**, open **Warp**, and **Add** it to that team. Refresh team selection in Warp. A workspace admin may still need to bind a pending installation. - **A channel is missing from an automation** - The picker lists standard channels only. For a shared channel, add its channel ID in a [factory definition](/factories/factory-as-code/#triggers) filter. - **Microsoft Teams is missing from setup or Settings** - Teams appears only when enabled for your Warp workspace. Ask a workspace admin or <a href=https://www.warp.dev/contact-sales>contact sales</a>. - **Installation or upload is pending** - Ask a Teams admin to approve the custom app, **Add** Warp to the team in Teams, then finish selection in Warp. - **Two runs start for one mention** - Narrow or remove overlapping app-mention and channel-message triggers for the same channels. - **An agent can't post back to Teams** - Confirm the factory still declares Microsoft Teams and the installation for that team is ready. To disconnect Microsoft Teams, remove the integration in factory **Settings** or the factory definition. Uninstalling the Warp app from a Microsoft Teams team stops new activity from that team. ## Privacy The factory's app uses message content and supported attachments from the channels you configure, and from threads it continues there, to run factory work. Linking your Microsoft account maps you to your Warp account. See the [Warp Privacy Policy](https://www.warp.dev/privacy). ## Related pages * [**Connect your factory**](/factories/connect-your-factory/) - Choose the sources that route work into the factory. * [**Factory automations**](/factories/automations/) - Edit trigger filters and avoid overlapping Teams triggers. * [**Factory definition**](/factories/factory-as-code/) - Declare `microsoft-teams` and `teams` triggers as code. * [**Slack**](/factories/integrations/slack/) - The other chat intake path for factories.Tell me about this feature: https://docs.warp.dev/factories/integrations/teams/Connect Microsoft Teams to your factory so mentions in standard and shared channels start work and results post back in the same thread.
Connect a factory to Microsoft Teams so your team can send work from channel conversations. Mention the Warp app in a configured standard or shared channel; the factory replies in the same thread with progress and results.
Prerequisites
Section titled “Prerequisites”- Microsoft Teams enabled for your workspace - The Microsoft Teams option appears in factory setup and Settings only when Teams is enabled for your Warp workspace. If you don’t see it, ask a workspace admin or contact sales.
- Permission to upload and approve custom Teams apps - A Microsoft Teams admin must upload and approve the Warp app package in the Teams admin center.
- Permission to update the factory - Connecting Microsoft Teams changes the factory’s configuration.
- A linked Warp account for interactive requests - Anyone who starts work with a mention must link their Microsoft account to an active member of the factory’s Warp workspace.
Connect the factory
Section titled “Connect the factory”Connect Microsoft Teams while creating a factory or later from Settings. Steps are grouped by where you perform them.
In the Warp Factories web app
Section titled “In the Warp Factories web app”- In the Warp Factories web app, open factory setup or the factory’s Settings, then choose Microsoft Teams.
- Sign in with Microsoft if Warp asks you to link your Microsoft identity. This is only needed once per person.
- Download the production app package (
warp-microsoft-teams-app.zip) when Warp shows the setup instructions. The ZIP contains the Teams app manifest and icons only.
In Microsoft Teams
Section titled “In Microsoft Teams”- Ask a Microsoft Teams admin to open the Teams admin center, go to Teams apps > Manage apps, and choose Upload new app.
- Select the downloaded ZIP and complete the upload.
- Have a Microsoft Teams admin approve the app so it is available to your organization.
- In Microsoft Teams, go to Apps > Built for your org, open Warp, and Add it to each Microsoft Teams team the factory should use. That add is what makes the team selectable in Warp.
Back in the Warp Factories web app
Section titled “Back in the Warp Factories web app”- Select the Microsoft Teams teams, then select at least one channel in each selected team. The channel picker lists standard channels from a ready installation.
- Click Enable (or finish factory setup) to attach Microsoft Teams to the factory.
Until a workspace admin binds a newly installed team to your Warp workspace, channel selection stays blocked for that team.
Warp seeds a default teams-app-mentions automation for your selection. Confirm by mentioning the Warp app in one of those channels and checking the factory dashboard.
Configure factory automations for Microsoft Teams
Section titled “Configure factory automations for Microsoft Teams”Add a Microsoft Teams trigger to an automation and pick one of these events. To edit filters, see Automations.
- App mentioned (
app_mention) - Filter by team, channels, authors, and keywords. - Message posted in channel (
message_posted) - Filter by team, channels, authors, and keywords.
A mention also emits message_posted. Don’t point both triggers at the same channels, or one mention starts two runs.
Every Teams trigger requires exactly one Microsoft Teams team and at least one channel. Team and channel filters are inclusion lists only. Keywords and Authors are optional (user_ids in a definition file).
The channel picker lists standard channels only. Private channels and DMs are unsupported. Shared channels follow Shared channel behavior; if one is missing from the picker, add its channel ID in a definition file (see Definitions as code).
For exact event and filter keys in definition files, see triggers.
Shared channel behavior
Section titled “Shared channel behavior”A Microsoft Teams shared channel is owned by one team in one Microsoft 365 organization. Install the Warp app in that owning team. Only people whose Microsoft account is in the same organization as the install and who have linked that account to Warp can start or continue shared-channel work. Guests and other organizations cannot; Warp posts a private notice pointing them back to Warp.
- Start with a mention - In a shared channel, mention the Warp app explicitly to start new work. A root message without a bot mention does not start work there.
- Continue in-thread - After a shared-channel thread is linked to a factory work item, eligible plain replies can continue that work item when auto-respond to thread replies is on (the default).
- History tools - For runs that start in a shared channel, agent thread-history tools are limited to that run’s originating thread and still require a sender who is in the install’s organization and linked to Warp.
- Organization boundary - The shared channel must belong to the same Microsoft 365 organization as the installed Warp app.
Private channels and direct messages remain unsupported.
Use integration-provided tools
Section titled “Use integration-provided tools”When Microsoft Teams is connected, Warp gives factory agents Teams tools automatically: read a thread, reply in a thread, post a top-level channel message, and resolve a member. These are Warp-managed, separate from configured MCP servers. Agents cannot list channels, read private channels, send DMs, add reactions, or upload files. Shared-channel history stays limited to the originating thread.
Start and continue work from Microsoft Teams
Section titled “Start and continue work from Microsoft Teams”Mention the Warp app in a configured channel or thread to start work. The factory replies in the same thread. A plain reply continues work only if that thread already has a factory work item. When auto-respond to thread replies is on, eligible plain replies can continue without another mention. In shared channels, new root work still requires an explicit mention. Supported attachments are included; unsupported files don’t block the request text.
Follow work and review outputs
Section titled “Follow work and review outputs”Follow progress in the Teams thread where work started. Work still ends at a pull request for a person to review. See how Warp Factories work.
Who can start work
Section titled “Who can start work”To start work with a mention, link your Microsoft account to an active Warp workspace member (sign in / help / sign out on the bot). In a shared channel, that account must also be in the install’s organization (see Shared channel behavior). Automation-started work runs as the chosen factory agent.
Definitions as code
Section titled “Definitions as code”integrations: - type: microsoft-teams---enabled: trueagent: foremantriggers: - provider: teams event: app_mention filter: team_ids: [MICROSOFT_GRAPH_TEAM_UUID] channel_ids: [19:example@thread.tacv2]---
Triage the Teams request and continue in the same thread.team_ids must include exactly one Microsoft Graph team UUID. After you connect Teams in the factory UI, copy it from the seeded teams-app-mentions automation in the factory definition, or from the factory API list-teams response field id.
channel_ids lists Bot Framework channel conversation IDs (the 19:…@thread.tacv2 form). For standard channels you selected in the UI, copy them from that same seeded automation or from the factory API list-channels response field id. For a shared channel missing from the picker, copy the channel conversation ID from the channel’s Microsoft Teams link or from Microsoft Graph, then add it to channel_ids.
Optional keywords and user_ids further narrow matching. On microsoft-teams, optional autoRespondToThreadReplies controls whether plain replies in an existing factory thread continue the work without another mention; omit it to keep the default-on behavior. See factory definition syntax.
Troubleshooting and reconnection
Section titled “Troubleshooting and reconnection”- The app doesn’t acknowledge a request - Confirm Teams is connected for that factory, you mentioned the Warp app in a configured channel, and your Microsoft account is linked. In a shared channel, confirm you are in the install’s organization (see Shared channel behavior).
- A team is missing from setup - In Microsoft Teams, open Apps > Built for your org, open Warp, and Add it to that team. Refresh team selection in Warp. A workspace admin may still need to bind a pending installation.
- A channel is missing from an automation - The picker lists standard channels only. For a shared channel, add its channel ID in a factory definition filter.
- Microsoft Teams is missing from setup or Settings - Teams appears only when enabled for your Warp workspace. Ask a workspace admin or contact sales.
- Installation or upload is pending - Ask a Teams admin to approve the custom app, Add Warp to the team in Teams, then finish selection in Warp.
- Two runs start for one mention - Narrow or remove overlapping app-mention and channel-message triggers for the same channels.
- An agent can’t post back to Teams - Confirm the factory still declares Microsoft Teams and the installation for that team is ready.
To disconnect Microsoft Teams, remove the integration in factory Settings or the factory definition. Uninstalling the Warp app from a Microsoft Teams team stops new activity from that team.
Privacy
Section titled “Privacy”The factory’s app uses message content and supported attachments from the channels you configure, and from threads it continues there, to run factory work. Linking your Microsoft account maps you to your Warp account. See the Warp Privacy Policy.
Related pages
Section titled “Related pages”- Connect your factory - Choose the sources that route work into the factory.
- Factory automations - Edit trigger filters and avoid overlapping Teams triggers.
- Factory definition - Declare
microsoft-teamsandteamstriggers as code. - Slack - The other chat intake path for factories.