Development × Project mgmt
GitHubJiraAGNT

Automate GitHub + Jira

Where the code — and half the process — lives. The ticket system of record for engineering work. 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 GitHub and Jira — free, and it runs on your machine.

Automations teams run

These are not field mappings. An agent reads the GitHub side, works out what it means, and only then decides what — if anything — should happen in Jira.

When a PR opens or merges in GitHub…

…an agent can create and update issues in Jira — after reading the context and deciding it should.

When an issue is filed in GitHub…

…an agent can transition tickets with comments in Jira — after reading the context and deciding it should.

When a release is cut in GitHub…

…an agent can summarise sprint state in Jira — after reading the context and deciding it should.

When an issue is created or transitions in Jira…

…an agent can comment on PRs and issues in GitHub — with the reasoning recorded in the run’s receipt.

When a sprint starts in Jira…

…an agent can open issues with structured detail in GitHub — with the reasoning recorded in the run’s receipt.

When a priority changes in Jira…

…an agent can draft release notes in GitHub — with the reasoning recorded in the run’s receipt.

The GitHub and Jira hand-off, in full

GitHub is reached through the github-api node and Jira through a custom-api call to {yoursite}.atlassian.net. Between them sits the agent, which is the part a field-mapping tool cannot do: it reads the item and decides whether the hand-off is warranted at all.

GitHub to Jira: watch github → read it and decide → call jira TRIGGER github-api Watch GitHub Fires the moment it happens. ACTION agnt-agent Read it and decide Judged against your own rules. ACTION custom-api Call Jira POST · basic
Local end to end. The receipt records what was read in GitHub and what was written in Jira.
GitHub → Jirapaste into a new workflow
{
  "id": "8f88ca72-e57e-4b1d-a85d-f32b324bdcce",
  "name": "GitHub → Jira",
  "nodes": [
    {
      "id": "38b0c38f-167d-48c0-a82a-9711ca29a21c",
      "text": "Watch GitHub",
      "x": 512,
      "y": 144,
      "isEditing": false,
      "type": "github-api",
      "icon": "connect",
      "category": "trigger",
      "isSelected": false,
      "parameters": {},
      "description": "Interact with GitHub: repos, branches, files, issues, comments, pull requests, reviews, releases, Actions/CI, and search.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "a39db20f-84b5-42f2-ab4b-6e7d740928c0",
      "text": "Read it and decide",
      "x": 512,
      "y": 336,
      "isEditing": false,
      "type": "agnt-agent",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "instructions": "Read the GitHub item. Decide whether it warrants action in Jira, and explain why."
      },
      "description": "Decides whether this GitHub item warrants anything in Jira.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    },
    {
      "id": "5903cf64-2135-42c8-af9b-1dd6fb89949c",
      "text": "Call Jira",
      "x": 512,
      "y": 528,
      "isEditing": false,
      "type": "custom-api",
      "icon": "connect",
      "category": "action",
      "isSelected": false,
      "parameters": {
        "url": "https://{yoursite}.atlassian.net/rest/api/3/issue",
        "method": "POST"
      },
      "description": "Writes into Jira over its API.",
      "error": null,
      "isActive": false,
      "output": null,
      "outputs": {}
    }
  ],
  "edges": [
    {
      "id": "1b31872f-5440-4845-ae3a-e684ff2577ea",
      "start": {
        "id": "38b0c38f-167d-48c0-a82a-9711ca29a21c",
        "type": "output"
      },
      "end": {
        "id": "a39db20f-84b5-42f2-ab4b-6e7d740928c0",
        "type": "input"
      },
      "startX": 800,
      "startY": 168,
      "endX": 512,
      "endY": 360
    },
    {
      "id": "a173ebd7-f751-4f18-a963-d5a1438185a0",
      "start": {
        "id": "a39db20f-84b5-42f2-ab4b-6e7d740928c0",
        "type": "output"
      },
      "end": {
        "id": "5903cf64-2135-42c8-af9b-1dd6fb89949c",
        "type": "input"
      },
      "startX": 800,
      "startY": 360,
      "endX": 512,
      "endY": 552
    }
  ],
  "zoomLevel": 1,
  "canvasOffsetX": 0,
  "canvasOffsetY": 0,
  "isTinyNodeMode": false
}

Install First-Pass Reviewer

First-Pass Reviewer already uses both GitHub and Jira, 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. Get AGNT Community Core. Free, local, no sign-up needed to run a workflow.
  2. Add both connections to the vault — GitHub takes one OAuth sign-in, Jira takes one OAuth sign-in.
  3. Build the three 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 Jira.

GitHub and Jira — common questions

Can I connect GitHub to Jira without writing code?

No code is required. Add both connections in the vault (GitHub uses one OAuth sign-in, Jira uses one OAuth sign-in), then either install a marketplace workflow for this pair or drag the two nodes onto the canvas and put an agent between them.

How is this different from a field-mapping GitHub to Jira automation?

Mapping tools move data; this reasons about it. Rather than copying a field into Jira, the agent can weigh what arrived from GitHub, classify it against criteria you wrote in prose, draft something new, and act only when it is warranted.

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

What does a GitHub and Jira run leave behind?

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

Give AI a job. Get the proof.