n8n:create-issue
- Repo stars 190,957
- Author updated Live
- Author repo n8n
- Domain
- Engineering
- Compatible agents
-
- Claude Code
- Cursor
- Cline
- Codex
- Windsurf
- Gemini CLI
- +20
- Trust score
- 88 / 100 · community maintained
- Author / version / license
- @n8n-io · no license declared
- Token usage
- Lean
- Setup complexity
- Guided setup
- External API key
- Not required
- Operating systems
- macOS · Linux
- Runtime requirements
- Node.js
- Permissions
-
- Read-only
- Write / modify
- Shell exec
- Network behavior
- External requests
- Install commands
- 26 variants
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
---
name: n8n:create-issue
description: Create Linear tickets or GitHub issues following n8n conventions. Use when the user asks to crea…
category: engineering
runtime: Node.js
---
# n8n:create-issue output preview
## PART A: Task fit
- Use case: Create Linear tickets or GitHub issues following n8n conventions. Use when the user asks to create a ticket, file a bug, open an issue, or says /create-issue. Create a Linear ticket or GitHub issue for: $ARGUMENTS makes outbound network calls; runs on Node.js. Works with Claude Code, Cursor, Cline and 23 more..
- Inputs: target material, constraints, expected output, and acceptance criteria.
- Evidence boundary: follow “Determine Target / Linear Tickets / Prerequisites” and do not present inference as author intent.
## PART B: Execution result
- **01** The card summarizes the use case; runtime output centers on “Create Linear tickets or GitHub issues following n8n conventions. Use when the user asks to create a ticket, file a bug, open an issue, or says /create-issue. Create a Linear ticket or GitHub issue for: $ARGUMENTS makes outbound network calls; runs on Node.js. Works with Claude Code, Cursor, Cline and 23 more.”.
- **02** When the source has headings, the agent prioritizes “Determine Target / Linear Tickets / Prerequisites” so the result follows the author’s structure.
- **03** Typical output includes task judgment, concrete steps, required commands or file edits, validation, and follow-up options.
- **04** Risk context follows the fingerprint: read files, write/modify files, run shell commands; may access external network resources; usually needs no extra API key.
## Running Rules
- read files, write/modify files, run shell commands; may access external network resources; usually needs no extra API key.
- Validate with a small sample before expanding scope.
- Return the result, validation criteria, and next iteration options. The source does not require a stable slash command. After installation, invoke the skill by name and describe the task.
Name target files or source material, expected output, forbidden changes, and whether network or shell access is allowed. Permission fingerprint: read files, write/modify files, run shell commands.
Start with a small task and check whether the result follows “Determine Target / Linear Tickets / Prerequisites”. Inspect diffs, logs, previews, or tests before expanding scope.
Confirm the final output includes a concrete result, evidence, and next action. If it stays generic, tighten inputs, boundaries, and acceptance criteria.
---
name: n8n:create-issue
description: Create Linear tickets or GitHub issues following n8n conventions. Use when the user asks to crea…
category: engineering
source: n8n-io/n8n
---
# n8n:create-issue
## When to use
- Create Linear tickets or GitHub issues following n8n conventions. Use when the user asks to create a ticket, file a bu…
- Use it when the task has clear inputs, repeatable steps, and validation criteria.
## What to provide
- Target material, scope, expected result, and forbidden changes.
- Whether network, commands, file writes, or external services are allowed.
## Execution rules
- Organize steps around “Determine Target / Linear Tickets / Prerequisites” and keep inference separate from source facts.
- read files, write/modify files, run shell commands; may access external network resources; usually needs no extra API key.
- Validate with a small sample before expanding the task.
## Output requirements
- Return the deliverable, key evidence, validation method, and next action.
- Mark missing information as unknown; do not invent commands, platforms, or dependencies. The author source anchors workflow facts; repository files anchor sources and commands; Fluxly only adds fit, limitations, and quality judgment.
skill "n8n:create-issue" {
input -> user goal + target files + boundaries + acceptance criteria
context -> Determine Target / Linear Tickets / Prerequisites
rules -> SKILL.md triggers / order / output contract
runtime -> Node.js | read files, write/modify files, run shell commands | may access external network resources
guardrails -> usually needs no extra API key + small-sample validation + diff/log review
output -> copyable result + checklist + next iteration
} Create Issue
Create a Linear ticket or GitHub issue for: $ARGUMENTS
Determine Target
Decide where the issue should be created based on user input:
- If the user says "Linear", "ticket", or provides a team key (e.g., AI, NODE, N8N) → Linear
- If the user says "GitHub", "GH issue", or "open source" → GitHub
- If ambiguous, ask the user which platform they want
Linear Tickets
Prerequisites
Verify the Linear MCP is connected before proceeding.
Style Guide
Title
- Sentence case — capitalize only the first word (e.g., "Add webhook verification to Trello trigger")
- Descriptive — a reader should understand the scope without opening the ticket
- 5–15 words — long enough to be specific, short enough to scan
- Imperative mood for features/enhancements — "Add ...", "Support ...", "Improve ..."
- Bug titles — prefix with
Bug -followed by a description of the symptom (e.g., "Bug - Pin data not updating after workflow edit") - No ticket IDs in titles — the identifier (AI-1234) is assigned automatically
- No trailing punctuation
Description
Structure the description using markdown headers. Use the appropriate template:
For bugs:
## Description
[Clear explanation of the problem]
## Expected
[What should happen]
## Actual
[What happens instead]
## Attachments
[Screenshots, videos, or screen recordings that illustrate the problem]
## Steps to reproduce
1. [Step-by-step reproduction]
## Additional context
- n8n version: [version]
- Database: [SQLite/PostgreSQL]
- Hosting: [cloud/self-hosted]
For features / enhancements:
## Summary
[One-paragraph overview of what this adds or changes]
## Problem
[What limitation or gap exists today]
## Proposed solution
[How it should work — technical approach if known]
## Out of scope
[Explicitly note what this does NOT cover, if helpful]
For tech debt:
## Summary
[What technical improvement is needed]
## Current state
[What the code/system looks like today and why it's problematic]
## Proposed improvement
[What the improved state should look like]
## Motivation
[Why this matters — maintainability, performance, developer experience, etc.]
## Scope
[What is included / excluded from this work]
For spikes / investigations:
## Goal
[What question are we trying to answer]
## Context
[Why this investigation is needed now]
## Expected output
[What deliverable is expected — RFC, PoC, decision document, etc.]
Attachments (Screenshots / Videos)
If the user provides screenshots, videos, or screen recordings:
- URLs — embed directly in the description using markdown image syntax (
) - File paths — if the user provides a local file path, ask them to upload it to a hosting service (e.g., GitHub, Imgur) or use
mcp__linear-server__create_attachmentto attach it to the Linear ticket after creation - Pasted images in conversation — describe what the image shows in the ticket description and note that a screenshot was provided. You cannot upload binary data directly.
Always mention in the description when visual evidence was provided, even if it cannot be directly embedded.
Priority
| Value | Level | When to use |
|---|---|---|
| 4 | Low | Nice-to-have, no user impact |
| 3 | Normal | Default — standard planned work |
| 2 | High | Blocks other work or affects users significantly |
| 1 | Urgent | Production-breaking, security vulnerability, data loss |
| 0 | None | Not yet assessed |
Guardrails:
- Default to Normal (3) unless the user explicitly states otherwise
- Never set Urgent (1) unless the user explicitly says "urgent", "P0", "production down", or "security vulnerability"
- Never set None (0) — always make a priority assessment. If unsure, use Normal (3)
Status
Guardrails:
- Never create issues in Triage status — Triage is for externally-reported issues that enter through automated pipelines (GitHub sync, support escalation). Agent-created tickets have known context and should skip triage
- Default to Backlog — use this when the issue is acknowledged but not yet planned for a sprint
- Use Todo only when the user indicates the work is planned for the current cycle or should be picked up soon
- Never set In Progress, Review, or Done at creation time
Team
- Try to fetch up-to-date team areas of responsibility from Notion using
mcp__notion__notion-search(search for "areas of responsibility" or similar). Use the fetched data to determine the best team for the issue. - If Notion MCP is unavailable or the lookup fails, fall back to these common teams:
Engineering(N8N),AI,NODES,Identity & Access(IAM),Catalysts(CAT),Lifecycle & Governance(LIGO),Cloud Platform,Docs(DOC) - Always ask the user which team if not obvious from context or the Notion lookup
- If the issue is node-specific, it likely belongs to
NODES - If it involves AI/LangChain nodes, it likely belongs to
AI
Labels
Apply labels from these groups as appropriate:
Type (pick one):
bug— something is brokenfeature— net-new capabilityenhancement— improvement to existing functionalitytech debt— internal quality improvementspike— time-boxed investigationdoc— documentation-only change
Area (pick if applicable):
frontend,backend,performance,testing,infra,DX,Security-Team
Source (pick if applicable):
Internal— created by team membersGitHub— originated from a GitHub issueSentry— originated from error monitoringZammad— originated from support
Bucket (pick if applicable):
- Use the relevant feature-area bucket (e.g.,
Credentials,Canvas/Node,RBAC,LangChain nodes,Form Trigger, etc.)
Guardrails:
- Always apply a type label — every ticket needs at least a type
- Do not apply triage-state labels (
Triage: Pending,Triage: Complete, etc.) — these are managed by triage automation - Do not apply release labels (
n8n@1.36.0, etc.) — these are managed by release automation - Do not apply
docs-automationlabels — these are managed by docs automation
Estimates
Only set an estimate if the user provides one or explicitly asks for one. Use t-shirt sizes:
| Size | Value | Approximate effort |
|---|---|---|
| XS | 1 | ≤ 1 hour |
| S | 2 | ≤ 1 day |
| M | 3 | 2–3 days |
| L | 4 | 3–5 days |
| XL | 5 | ≥ 6 days |
Creating the Ticket
Gather required fields — if any are missing, ask the user:
- Title
- Team
- Description (draft one from the user's input using the templates above)
Present a preview before creating — show the user:
- Title
- Team
- Status
- Priority
- Labels
- Description (abbreviated if long)
Wait for user confirmation — do not create until the user approves
Create the ticket using
mcp__linear-server__save_issue:title: <title> team: <team name> description: <markdown description> priority: <priority number> state: <status name> labels: [<label names>]Report back with the issue identifier and URL
Things to Never Do (Linear)
- Never create issues in Triage status
- Never set Urgent priority without explicit user instruction
- Never apply triage-state, release, or docs-automation labels
- Never set assignee unless the user explicitly asks
- Never set a cycle or milestone unless the user explicitly asks
- Never create duplicate issues — if the user describes something that sounds like it may exist, search first with
mcp__linear-server__list_issues
GitHub Issues
Prerequisites
Verify gh CLI is authenticated: gh auth status
Important Context
The n8n GitHub issue tracker (n8n-io/n8n) is bug-only. Feature requests and questions are redirected to the community forum. Blank issues are disabled — the bug template must be used.
Style Guide
Title
- Sentence case — same as Linear
- Descriptive of the symptom — what is broken, not what you want
- No prefixes required — do not add "Bug:" or "Bug Report:" (the template handles categorization)
- No trailing punctuation
Body
GitHub issues must follow the bug report template structure:
### Bug Description
[Clear explanation of the bug]
### Steps to Reproduce
1. [Step 1]
2. [Step 2]
3. [Step 3]
### Expected Behavior
[What should happen]
### Debug Info
[If available — output from Help > About n8n > Copy debug information]
### Operating System
[e.g., macOS 14.2, Ubuntu 22.04]
### n8n Version
[e.g., 1.72.1]
### Node.js Version
[e.g., 20.11.0]
### Database
SQLite / PostgreSQL
### Execution Mode
main / queue
### Hosting
n8n cloud / self hosted
Guardrails:
- Always include reproduction steps — issues without them get closed as
closed:incomplete-template - Include debug info if available — this is critical for triage
- Never file feature requests as GitHub issues — redirect the user to the community forum or suggest creating a Linear ticket instead
Labels
Do not manually apply labels when creating GitHub issues. The triage automation handles labeling:
triage:pendingis auto-appliedstatus:in-linearis auto-applied when synced
Creating the Issue
Verify it's a bug — if the user describes a feature request, inform them that GitHub issues are bug-only and suggest alternatives (Linear ticket or community forum)
Draft the issue using the template above, filling in fields from the user's input
Present a preview before creating — show the user:
- Title
- Body (abbreviated if long)
- Repository (default:
n8n-io/n8n)
Wait for user confirmation
Create the issue using
gh:gh issue create --repo n8n-io/n8n --title "<title>" --body "$(cat <<'EOF' <body content> EOF )"Report back with the issue number and URL
Things to Never Do (GitHub)
- Never file feature requests as GitHub issues
- Never create issues without reproduction steps
- Never manually apply labels — let automation handle it
- Never create issues in repositories other than n8n-io/n8n unless the user explicitly specifies
Cross-Linking
When both a Linear ticket and GitHub issue exist for the same problem:
- Linear → GitHub: Add the GitHub issue URL as a link attachment on the Linear ticket
- GitHub → Linear: Add
https://linear.app/n8n/issue/<TICKET-ID>in the GitHub issue body
If the user creates one and mentions the other exists, offer to add the cross-link.
Decide Fit First
Design Intent
How To Use It
Boundaries And Review