Project mgmt × Communication
JiraSlackAGNT

Automate Jira + Slack

The ticket system of record for engineering work. 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 First-Pass Reviewer → Get AGNT free

First-Pass Reviewer already works across Jira 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 Jira into Slack.

When an issue is created or transitions in Jira…

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

When a sprint starts in Jira…

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

When a priority changes in Jira…

…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 create and update issues in Jira — with the reasoning recorded in the run’s receipt.

When a keyword or mention fires in Slack…

…an agent can transition tickets with comments in Jira — with the reasoning recorded in the run’s receipt.

When a reaction is added in Slack…

…an agent can summarise sprint state in Jira — with the reasoning recorded in the run’s receipt.

Copy this Jira → Slack workflow

Start with a custom-api call to {yoursite}.atlassian.net and the slack-api node. Configure the Jira source payload, the agent input, and the Slack operation. The sequential template does not implement conditional writes or approval by itself.

Jira to Slack: run on a schedule → review source and draft → configure destination in slack TRIGGER trigger-timer Run on a schedule Configure activation ACTION agnt-agent Review source and draft Configure inputs ACTION slack-api Configure destination in Slack Configure inputs
Setup template for Jira and Slack; verify data mapping and authorization using test accounts.
Jira → 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": "04434b6d-1d2a-4eaa-a0fd-99d7a310d294",
  "name": "Jira → Slack",
  "nodes": [
    {
      "id": "ac238cdf-7f4d-439f-adb8-bf28a63c0446",
      "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": "3274f7d4-1de3-4578-a2fe-9d1c934f5bb8",
      "text": "Review source and draft",
      "x": 512,
      "y": 336,
      "isEditing": false,
      "type": "agnt-agent",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "agentId": "CONFIGURE_AGENTID",
        "message": "Read the Jira 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": "822d8cf0-1847-43cb-a554-59e7eb3ac47a",
      "text": "Configure destination in Slack",
      "x": 512,
      "y": 528,
      "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": "3a9abe74-c894-4d4c-a0b6-347e48168b08",
      "start": {
        "id": "ac238cdf-7f4d-439f-adb8-bf28a63c0446",
        "type": "output"
      },
      "end": {
        "id": "3274f7d4-1de3-4578-a2fe-9d1c934f5bb8",
        "type": "input"
      },
      "startX": 800,
      "startY": 168,
      "endX": 512,
      "endY": 360
    },
    {
      "id": "ab97f7ce-d6d7-4761-aa02-ae93814a0e72",
      "start": {
        "id": "3274f7d4-1de3-4578-a2fe-9d1c934f5bb8",
        "type": "output"
      },
      "end": {
        "id": "822d8cf0-1847-43cb-a554-59e7eb3ac47a",
        "type": "input"
      },
      "startX": 800,
      "startY": 360,
      "endX": 512,
      "endY": 552
    }
  ],
  "zoomLevel": 1,
  "canvasOffsetX": 0,
  "canvasOffsetY": 0,
  "isTinyNodeMode": false
}

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 First-Pass Reviewer

First-Pass Reviewer already uses both Jira 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

Build it in AGNT

  1. Install AGNT — it runs on your own machine and needs no account to start.
  2. Authorise Slack (one OAuth sign-in) and Jira (one OAuth sign-in). Nothing is stored anywhere but your disk.
  3. Describe the job in plain language, or paste the definition above; custom-api does the reading and slack-api the writing.
  4. Gate anything you would not want done unattended, then let it run and read the first receipt end to end.

Jira and Slack — common questions

Can I connect Jira to Slack without writing code?

You can build it entirely from the canvas. Authorise Jira with one OAuth sign-in, Slack with one OAuth sign-in, then tell the agent what meeting actions become tickets automatically 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 Jira to Slack automation?

The difference shows up on the messy inputs. A rule chain needs every case enumerated in advance; an agent handles meeting actions become tickets automatically the way a colleague would — reading the Jira context, judging it, then writing to Slack with the reasoning recorded.

Does my Jira 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 Jira, Slack and whichever model you chose — and pointing that at Ollama or LM Studio keeps everything on your hardware.

What does a Jira and Slack run leave behind?

A receipt: what was read in Jira, which tools ran with which arguments, what the agent concluded, and what it wrote to Slack. Anything consequential can sit behind an approval gate so a person signs off before it happens.

Give AI a job. Get the proof.