Email × Communication
GmailSlackAGNT

Automate Gmail + Slack

The inbox most operations still start in. Team chat where operations actually surface. Put an agent between them and the hand-off stops being manual: it reads, decides, acts, and shows its work.

Install Support First Responder → Get AGNT free

Support First Responder already works across Gmail and Slack — free, and it runs on your machine.

Automations teams run

Unlike field-mapping automation, the step in the middle is an agent: it can summarise, classify, judge and draft, not merely copy values from Gmail into Slack.

When a new email arrives in Gmail…

…an agent can post a rich channel message in Slack — after reading the context and deciding it should.

When a label is applied in Gmail…

…an agent can DM a teammate in Slack — after reading the context and deciding it should.

When a thread goes unanswered in Gmail…

…an agent can open a thread with findings in Slack — after reading the context and deciding it should.

When a message hits a channel in Slack…

…an agent can send or draft a reply in Gmail — with the reasoning recorded in the run’s receipt.

When a keyword or mention fires in Slack…

…an agent can apply labels and archive in Gmail — with the reasoning recorded in the run’s receipt.

When a reaction is added in Slack…

…an agent can extract attachments and fields in Gmail — with the reasoning recorded in the run’s receipt.

The Gmail and Slack hand-off, setup template

Start with the gmail-api node and the slack-api node. Configure the Gmail source payload, the agent input, and the Slack operation. The sequential template does not implement conditional writes or approval by itself.

Gmail to Slack: run on a schedule → read gmail → review source and draft → configure destination in slack TRIGGER trigger-timer Run on a schedule Configure activation ACTION gmail-api Read Gmail Configure inputs ACTION agnt-agent Review source and draft Configure inputs ACTION slack-api Configure destination in Slack Configure inputs
Setup template for Gmail and Slack; verify data mapping and authorization using test accounts.
Gmail → SlackSetup template · configure before activation

This is a schema-checked starting point, not an end-to-end tested automation. Replace every CONFIGURE_ value, choose the operations you intend, connect credentials and map source outputs into later inputs. An edge orders steps; it does not supply a condition, an approval gate or a field mapping. Add and test those controls explicitly before any write. Cloud APIs and model providers may receive data. Keep the workflow inactive until tested with fixtures.

{
  "id": "2c4b0d53-f047-4e1e-a22b-e1f9dc8dd2d4",
  "name": "Gmail → Slack",
  "nodes": [
    {
      "id": "d739fc36-1f5d-411a-a9a9-4046cfe7a904",
      "text": "Run on a schedule",
      "x": 512,
      "y": 144,
      "isEditing": false,
      "type": "trigger-timer",
      "icon": "connect",
      "category": "trigger",
      "isSelected": false,
      "parameters": {
        "fireOnStart": "No",
        "scheduleType": "Interval",
        "schedule": "Every 15 Minutes"
      },
      "description": "Setup template for Timer Trigger. This trigger node fires the workflow at specified intervals or at a specific time. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "6c727643-d65f-440c-a6ce-0c7500293ef4",
      "text": "Read Gmail",
      "x": 512,
      "y": 336,
      "isEditing": false,
      "type": "gmail-api",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "operation": "Search and Read Emails",
        "searchQuery": "CONFIGURE_SEARCHQUERY",
        "maxResults": 1
      },
      "description": "Setup template for Gmail API. A powerful tool to send, reply, read, organize, and manage attachments in Gmail. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "f903919d-89c7-4eb1-a202-5ef440609dba",
      "text": "Review source and draft",
      "x": 512,
      "y": 528,
      "isEditing": false,
      "type": "agnt-agent",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "agentId": "CONFIGURE_AGENTID",
        "message": "Read the Gmail item. Decide whether it warrants action in Slack, and explain why.\nSource input: CONFIGURE_SOURCE_INPUT. Produce a reviewable draft only; do not take external actions."
      },
      "description": "Setup template for Agent Chat. Chat with an AI agent from your agent library. Select an agent and send messages to interact with it within your workflow. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "9b1df2a9-85c5-46ac-afa5-4cdd9bd72ed0",
      "text": "Configure destination in Slack",
      "x": 512,
      "y": 720,
      "isEditing": false,
      "type": "slack-api",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "action": "SEND_MESSAGE",
        "channelId": "CONFIGURE_CHANNELID",
        "message": "CONFIGURE_MESSAGE"
      },
      "description": "Setup template for Slack API. Interact with Slack to perform various operations such as sending messages, uploading files, managing reactions, and more. Configure credentials, inputs and output mapping before use.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    }
  ],
  "edges": [
    {
      "id": "8963353c-bf8d-4fe0-adb1-2f6e05f9373c",
      "start": {
        "id": "d739fc36-1f5d-411a-a9a9-4046cfe7a904",
        "type": "output"
      },
      "end": {
        "id": "6c727643-d65f-440c-a6ce-0c7500293ef4",
        "type": "input"
      },
      "startX": 800,
      "startY": 168,
      "endX": 512,
      "endY": 360
    },
    {
      "id": "f6b0290b-e44b-4dfd-a57d-e0a6e1867ad2",
      "start": {
        "id": "6c727643-d65f-440c-a6ce-0c7500293ef4",
        "type": "output"
      },
      "end": {
        "id": "f903919d-89c7-4eb1-a202-5ef440609dba",
        "type": "input"
      },
      "startX": 800,
      "startY": 360,
      "endX": 512,
      "endY": 552
    },
    {
      "id": "b4b7f622-5b67-41c5-a1fc-d303180016a2",
      "start": {
        "id": "f903919d-89c7-4eb1-a202-5ef440609dba",
        "type": "output"
      },
      "end": {
        "id": "9b1df2a9-85c5-46ac-afa5-4cdd9bd72ed0",
        "type": "input"
      },
      "startX": 800,
      "startY": 552,
      "endX": 512,
      "endY": 744
    }
  ],
  "zoomLevel": 1,
  "canvasOffsetX": 0,
  "canvasOffsetY": 0,
  "isTinyNodeMode": false
}

Configure Gmail API

A powerful tool to send, reply, read, organize, and manage attachments in Gmail.

  • operation — The Gmail operation to perform. Current example: Search and Read Emails.
  • searchQuery — Optional. Gmail search query (e.g., 'from:user is:unread'). If blank, fetches latest emails. Current example: CONFIGURE_SEARCHQUERY.
  • maxResults — Maximum number of emails to return. Current example: 1.

Configure Slack API

Interact with Slack to perform various operations such as sending messages, uploading files, managing reactions, and more.

  • action — The action to perform on Slack Current example: SEND_MESSAGE.
  • channelId — The ID of the Slack channel Current example: CONFIGURE_CHANNELID.
  • message — The message to send Current example: CONFIGURE_MESSAGE.

Install Support First Responder

Support First Responder already uses both Gmail and Slack, so installing it gives you this exact hand-off wired up — connected, editable, and running on your own machine.

Runs on your own machine · See what it does

What building this looks like

  1. Get AGNT Community Core. Free, local, no sign-up needed to run a workflow.
  2. Add both connections to the vault — Gmail takes one OAuth sign-in, Slack takes one OAuth sign-in.
  3. Configure the nodes above, or start from a marketplace workflow and edit it. The agent in the middle is the part worth spending time on.
  4. Run it once with an approval gate in place. The receipt tells you what it read, what it concluded, and what it changed in Slack.

Gmail and Slack — common questions

Can I connect Gmail to Slack without writing code?

You can build it entirely from the canvas. Authorise Gmail with one OAuth sign-in, Slack with one OAuth sign-in, then tell the agent what triage and classify incoming mail should look like once Slack is involved. Code is an option for the unusual cases, never a requirement for the common ones.

How is this different from a field-mapping Gmail to Slack automation?

The difference shows up on the messy inputs. A rule chain needs every case enumerated in advance; an agent handles triage and classify incoming mail the way a colleague would — reading the Gmail context, judging it, then writing to Slack with the reasoning recorded.

Does my Gmail and Slack data leave my machine?

Not to us. AGNT runs locally and both sets of credentials are encrypted on your own disk. Outbound traffic goes only to Gmail, Slack and whichever model you chose — and pointing that at Ollama or LM Studio keeps everything on your hardware.

What does a Gmail and Slack run leave behind?

You get an auditable trail rather than a success flag. It shows the Gmail context the agent worked from, the judgment it made about pipe agent findings into the room where decisions happen, and the exact change applied in Slack, with approvals attached where you required them.

Give AI a job. Get the proof.