Skip to content
HelpReactions

Reactions

What fires an agent automatically when something happens in Gmail, Slack, Drive, or Help Scout.

What a reaction is

A reaction is a typed event from a tool you’ve connected (an inbound Gmail message, a Slack DM, a Drive comment @mention, a Help Scout ticket assignment) that wakes an agent up. When the event matches a reaction you’ve turned on for the agent, the agent acts with the event as context. When it doesn’t, nothing happens.

Reaction is one of three task types you’ll see in the New Task form, alongside Once (run one time) and Repeat (run on a schedule). Reactions also surface on each agent’s Tools tab, grouped per connected tool, so you can manage them next to the connection itself.

All triggers are blocked by default

Connecting a tool to AgentTeams does not, by itself, give the agent permission to react to traffic in that tool. Reactions are opt-in: a task with a matching trigger has to exist before the agent fires. If no task subscribes, the event is still remembered (so the agent has context if you ask about it later) but the agent does not act.

This keeps the surface predictable. New customers don’t connect Gmail and discover an agent has emailed a client overnight; the only auto-reactions are the ones you (or the safe seeded defaults below) opted in to.

What ships as a default

When you connect a tool, AgentTeams seeds a small set of safe defaults. The rule used to pick them, from the audit on 2026-05-24:

  1. Explicit @mention or assignment. Someone specifically asked for me (Slack @mention, Drive comment @mention, Help Scout assigned).
  2. 1:1 DM-like surface. The channel itself implies intent (Slack DM, Telegram DM).
  3. Internal-domain initiator on a coordination surface. A teammate, on a tool we use to coordinate (internal Gmail, internal Calendar invite, internal Drive share).

Everything else is available in the trigger picker so you can opt in by hand, but it ships with no auto-reaction.

Summary

54
Total events
43
Live today
30
Seeded as default
11
Planned

On a fresh agent connection, 30 events become live defaults and 13 sit in the picker waiting for you to wire them up. The remaining 11 are reserved for integrations we haven’t shipped yet.

Full event table

Every event in the catalogue, grouped by the tool it comes from. The icon on the left of each section is the tool’s brand mark; tools whose integration hasn’t shipped yet show as planned.

Slack

5 events

  • @mentioned in any Slack channelDefault

    slack.app_mention

    Someone @mentions you in a public or private channel.

    Seeded task:Respond when @mentioned on Slack

  • Direct message in SlackDefault

    slack.dm

    Someone sends you a DM on Slack.

    Seeded task:Respond to Slack DMs

  • Any message in a Slack channelDefault

    slack.channel_message

    Any message in a channel you're a member of. Noisy — usually want @mention instead.

    Seeded task:Listen to channel messages

  • Reaction on your Slack messageDefault

    slack.reaction_added

    Someone reacts with an emoji to a message you posted (e.g. ✅ to approve).

    Seeded task:Read reactions on your messages

  • File shared in SlackDefault

    slack.file_shared

    A file is shared in a channel you're a member of.

    Seeded task:Digest files shared in channels

Telegram

2 events

  • Private chat with your Telegram botDefault

    telegram.dm

    Someone messages your bot in a 1:1 private chat.

    Seeded task:Respond to Telegram DMs

  • Message in a Telegram groupDefault

    telegram.group_message

    Any message in a group your bot is a member of.

    Seeded task:Listen to Telegram group chats

Help Scout

4 events

  • Help Scout ticket assigned to meDefault

    helpscout.assigned

    Someone assigns a ticket to your Help Scout user, OR a customer replies on a ticket you already own.

    Seeded task:Take ownership of assigned tickets

  • Customer reply on any Help Scout ticketDefault

    helpscout.customer_reply

    A customer replies — regardless of whether the ticket is assigned to you. Use for shared inboxes.

    Seeded task:Follow up on customer replies

  • New Help Scout ticket createdOpt-in

    helpscout.created

    Any new ticket arrives in the mailbox. Very noisy on busy inboxes.

    Why not a default: Fires on every new ticket; reserved for shared-inbox flows where someone wants it.

  • Help Scout ticket taggedOpt-in

    helpscout.tagged

    A tag is added to a ticket.

    Why not a default: Tags are workflow-specific. Wire up the ones that matter to you.

Google Workspace

10 events

  • Email from a teammate (internal)Default

    gmail.inbound.internal

    New email in your inbox from someone on your company's domain.

    Seeded task:Handle email from teammates

  • Email from outside the companyOpt-in

    gmail.inbound.external

    New email from outside your domain. Use cautiously — auto-replying to customers can backfire.

    Why not a default: Auto-replying to people outside your company is risky by default.

  • Calendar invite from a teammateDefault

    calendar.invite.internal

    An internal teammate invites you to a calendar event.

    Seeded task:Triage internal calendar invites

  • Calendar invite from outsideOpt-in

    calendar.invite.external

    An external person invites you to a calendar event.

    Why not a default: External invites usually need a human judgment call.

  • Calendar event you're on changedDefault

    calendar.event_changed

    Time, location, or details of a meeting you're attending changed.

    Seeded task:Track changes to your meetings

  • Calendar event you're on cancelledDefault

    calendar.event_cancelled

    A meeting you were attending was cancelled.

    Seeded task:Free time when meetings cancel

  • @mentioned in a Drive commentDefault

    drive.comment_mentioned

    Someone @mentions you in a comment on a Drive file.

    Seeded task:Respond to Drive comment @mentions

  • Drive file shared with you (internal)Default

    drive.shared_with_me.internal

    A teammate shares a new Drive file with you.

    Seeded task:Note new Drive shares from teammates

  • Drive file shared with you (external)Opt-in

    drive.shared_with_me.external

    Someone outside your company shares a Drive file.

    Why not a default: External shares need a quick human review first.

  • Drive permission changeOpt-in

    drive.permission_change

    Permissions changed on a file you can see.

    Why not a default: Audit-only signal; no action needed unless you build one.

Linear

4 events

  • New Linear issue createdOpt-in

    linear.issue_created

    Any new issue in the connected Linear workspace. Use filters to narrow to a team or label.

  • Linear issue assigned to meDefault

    linear.issue_assigned

    An issue is assigned to your Linear user. The cleanest signal that you should act.

    Seeded task:Pick up new Linear assignments

  • Linear issue status changedOpt-in

    linear.issue_status_changed

    An issue moved to a new state (e.g. In Review → Done). Use to react to lifecycle transitions.

  • New comment on a Linear issueDefault

    linear.comment_created

    Someone posted a comment on an issue. Filter to issues you own or are assigned to.

    Seeded task:Reply when someone comments on your issues

Shopify

7 events

  • New Shopify orderDefault

    shopify.order_created

    A new order was placed in the connected shop.

    Seeded task:Triage new orders

  • Shopify order marked paidDefault

    shopify.order_paid

    An order's payment status moved to paid.

    Seeded task:Move paid orders toward fulfillment

  • Shopify order fulfilledOpt-in

    shopify.order_fulfilled

    An order's fulfillment status moved to fulfilled. The agent can confirm tracking with the customer.

  • Shopify order cancelledDefault

    shopify.order_cancelled

    An order was cancelled. Useful for win-back outreach or inventory restocking workflows.

    Seeded task:Note cancellations for the books

  • New Shopify customer signupOpt-in

    shopify.customer_created

    A new customer signed up on the store.

  • Shopify product updatedOpt-in

    shopify.product_updated

    A product was edited (title, status, variants, etc.).

  • Shopify inventory level changedOpt-in

    shopify.inventory_updated

    Stock level changed for a variant at a location. Pair with a low-stock filter to act only when stock drops below a threshold.

Microsoft 365

11 events Planned

  • Outlook email from a teammatePlanned

    outlook.inbound.internal

    Internal email in your Outlook inbox.

  • Outlook email from outsidePlanned

    outlook.inbound.external

    External email in your Outlook inbox.

  • Outlook calendar invite from a teammatePlanned

    ms_calendar.invite.internal

    Internal calendar invite via Outlook.

  • Outlook calendar invite from outsidePlanned

    ms_calendar.invite.external

    External calendar invite via Outlook.

  • Outlook calendar event changedPlanned

    ms_calendar.event_changed

    Meeting you're on changed (Outlook).

  • Outlook calendar event cancelledPlanned

    ms_calendar.event_cancelled

    Meeting you're on cancelled (Outlook).

  • OneDrive file shared (internal)Planned

    onedrive.shared_with_me.internal

    Internal teammate shares a OneDrive file.

  • OneDrive file shared (external)Planned

    onedrive.shared_with_me.external

    External party shares a OneDrive file.

  • Microsoft Teams DMPlanned

    teams.dm

    Someone DMs you on Teams.

  • @mentioned in a Teams channelPlanned

    teams.channel_mention

    Someone @mentions you in a Teams channel.

  • Any message in a Teams channelPlanned

    teams.channel_message

    Any message in a Teams channel you're a member of.

GitHub

3 events

  • @mentioned on GitHubDefault

    github.mention

    Someone @mentions you in an issue or PR comment.

    Seeded task:Respond when @mentioned on GitHub

  • GitHub review requestedDefault

    github.review_requested

    Someone requests your review on a PR.

    Seeded task:Review PRs when requested

  • GitHub issue assigned to youDefault

    github.issue_assigned

    An issue is assigned to your GitHub user.

    Seeded task:Pick up new GitHub assignments

Jira

3 events

  • Jira issue assigned to youDefault

    jira.assigned

    An issue is assigned to you in Jira.

    Seeded task:Pick up new Jira assignments

  • @mentioned in JiraDefault

    jira.mentioned

    Someone @mentions you in a Jira issue or comment.

    Seeded task:Respond when @mentioned on Jira

  • Jira issue commentedDefault

    jira.commented

    A new comment on a Jira issue you're watching.

    Seeded task:Watch Jira comments for direct questions

Confluence

2 events

  • @mentioned in ConfluenceDefault

    confluence.mentioned

    Someone @mentions you on a Confluence page or comment.

    Seeded task:Respond when @mentioned on Confluence

  • Confluence page commentedOpt-in

    confluence.commented

    A new comment on a Confluence page.

HubSpot

1 event

  • HubSpot ticket assignedDefault

    hubspot.ticket.assigned

    A HubSpot ticket is assigned to you.

    Seeded task:Take ownership of assigned HubSpot tickets

Trello

2 events

  • @mentioned on TrelloDefault

    trello.mention

    Someone @mentions you in a Trello card.

    Seeded task:Respond when @mentioned on Trello

  • Trello card assignedDefault

    trello.assigned

    You're added as a member of a Trello card.

    Seeded task:Pick up new Trello assignments

Customising your triggers

The seeded defaults are a starting point, not a contract. Anything you see above with a Default badge can be:

  • Paused from the agent’s Tasks tab if you want to keep the subscription but stop it from firing temporarily.
  • Edited if you want to change the agent’s instructions (for example, “reply briefly and tag me in” instead of the default).
  • Deleted outright if you don’t want the reaction at all.

Anything in the Opt-in column can be enabled by creating a new task in the agent’s Tasks tab and picking Reaction. The picker only lists events for tools the agent is actually connected to, so you won’t see options that can never fire.

Filters

Some events accept a filter so they only fire for matching cases. Two filters are exposed in the picker today:

  • Sender domain. internal_only means the event only fires when the sender is on your company’s domain; external_only is the opposite. Used on Gmail, Calendar invites and Drive shares to separate teammate-initiated from outside-initiated.
  • Mention required. When true, the event only fires when the agent was explicitly @mentioned (used by Slack channel messages, Drive comments).

More filters land as we ship more integrations. For anything not covered today, the agent can read the event context in the task and act conditionally based on what it finds.

Planned integrations

Events from Microsoft 365 (Outlook, Teams, OneDrive), GitHub, Jira, Confluence, HubSpot, and Trello are listed as planned: the typed events are reserved in the catalogue so you can see what’s coming, but the receivers aren’t wired up yet. When we ship each integration, its safe defaults get added automatically and they show up on your agents’ Tasks tab the next time you connect.

Still stuck? Get in touch and a human will write back.