Skip to main content

Generate GitLab release notes from Linear issues with Claude Opus

Workflow preview

Workflow preview
100%
Generate GitLab release notes from Linear issues with Claude Opus preview
Open on n8n.io

1. Workflow Overview

Release Note Helper Triggered by a GitLab MR webhook, this workflow automatically assists your team in writing customer facing release notes by combining Linear issue data with Claude AI. Apply ...

Best for

  • Content Creation automation workflows
  • AI Summarization automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.stickynote, n8n-nodes-base.set, n8n-nodes-base.code, n8n-nodes-base.httprequest, n8n-nodes-base.if, n8n-nodes-base.rssfeedread, n8n-nodes-base.gitlabtrigger, @n8n/n8n-nodes-langchain.anthropic

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Romain Jouhannet.

Original n8n.io source

1.1 Workflow description

Title
Generate GitLab release notes from Linear issues with Claude Opus
Workflow name
Generate GitLab release notes from Linear issues with Claude Opus

πŸ“ Release Note Helper

Triggered by a GitLab MR webhook, this workflow automatically assists your team in writing customer-facing release notes by combining Linear issue data with Claude AI.

Apply the rn-release-n8n label to any release note MR in your docs repository to trigger it.

How it works

  1. Version detection β€” reads your release RSS feed to find the last published version, then fetches all matching Linear version labels created since then to determine the version range automatically
  2. Issue collection β€” queries Linear for all completed issues in that version range that have Zendesk tickets, Slack links, or custom labels (Customer request, Release note public) attached
  3. Ticket summary β€” posts a structured list of all relevant issues to the MR as a comment
  4. AI draft β€” sends issue details to Claude, which generates customer-facing changelog entries grouped into ### Enhancements and ### Fixes, posted as a second MR comment
  5. Done label β€” adds rn-done to the MR when complete to prevent re-runs

Setup

  1. Configure a GitLab webhook on your docs repo pointing to this workflow's URL (Merge Request events)
  2. Create two labels on your GitLab repo: rn-release-n8n (to trigger) and rn-done (auto-applied on completion)
  3. Update the RSS Read node URL to your release RSS feed
  4. Replace YOUR_PROJECT_ID in all GitLab API nodes with your docs project ID
  5. Replace YOUR_WORKSPACE in the Code nodes with your Linear workspace slug
  6. Connect Linear API, GitLab API, and Anthropic API credentials

Notes

  • Versioning assumes a vX.Y Linear label convention β€” adapt the Format labels node for your own scheme
  • The AI prompt in Message a model is ready to use but can be customised to match your tone and changelog format
  • Issues are filtered to those with Zendesk, Slack attachments, or your custom labels β€” adjust in Set Params

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 2 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 4 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 5 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 6 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 7 - Sticky Note6

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 8 - Set Various Fields

Type / Role
n8n-nodes-base.set - set
Config choices
Version 2

Block 9 - Generate Summary with Links

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 10 - Post Summary to GitLab MR

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 11 - Check Release Label

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 12 - Post Linear Issues to GraphQL

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 13 - Read RSS Feed

Type / Role
n8n-nodes-base.rssFeedRead - rssFeedRead
Config choices
Version 1.1

Block 14 - Filter Labels Starting With v2

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 15 - Update GitLab MR Label

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 16 - Check MR for RN Inputs

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 17 - Check Linear Issues Exist

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 18 - Post No Issues Note to GitLab

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 19 - Generate Summary with Linear Details

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 20 - Post AI Suggestions to GitLab

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 21 - When GitLab MR Event Occurs

Type / Role
n8n-nodes-base.gitlabTrigger - gitlabTrigger
Config choices
Version 1

Block 22 - Claude AI Message

Type / Role
@n8n/n8n-nodes-langchain.anthropic - anthropic
Config choices
Version 1

Block 23 - Fetch GitLab MR Labels

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 24 - Post Linear Labels to GraphQL

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Showing the first 24 of 25 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Generate GitLab release notes from Linear issues with Claude Opus
Complexity advanced
Nodes 25
Categories Content Creation, AI Summarization
Author Romain Jouhannet
Published 31 Mar 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/14520/14520.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Generate GitLab release notes from Linear issues with Claude Opus do?

Release Note Helper Triggered by a GitLab MR webhook, this workflow automatically assists your team in writing customer facing release notes by combining Linear issue data with Claude AI. Apply ...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Content Creation, AI Summarization use case.