원클릭으로
n8n-linear-issue
Fetch and analyze Linear issue with all related context. Use when starting work on a Linear ticket, analyzing issues, or gathering context about a Linear issue.
메뉴
Fetch and analyze Linear issue with all related context. Use when starting work on a Linear ticket, analyzing issues, or gathering context about a Linear issue.
SOC 직업 분류 기준
Default path for all single-workflow work: new one-off workflows, existing- workflow edits, verification repairs, and workflow-local data tables. Use build-workflow directly — do not load planning or create-tasks first. Load planning only when multiple coordinated workflows or shared cross-task data tables require a dependency-aware task graph.
Handles workflow verification and setup after build-workflow succeeds, or when the message contains workflow-verification-follow-up or workflow-setup-required. Load after direct builds, when verificationReadiness requires action, or on orchestrator verify/setup follow-up turns.
Guides users through creating effective Agent Skills. Use when you want to create, write, or author a new skill, or asks about skill structure, best practices, or SKILL.md format.
Checks if a community pull request is ready for human review. Verifies CLA signature, PR title format, description completeness, test coverage, and cubic-dev-ai issues, then triages to the right Linear team or recommends a close. Use when given a PR number or branch name to review, or when the user says /community-pr-readiness-check, or asks to check if a PR is ready for review.
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.
Creates GitHub pull requests with properly formatted titles that pass the check-pr-title CI validation. Use when creating PRs, submitting changes for review, or when the user says /pr or asks to create a pull request.
| name | n8n:linear-issue |
| description | Fetch and analyze Linear issue with all related context. Use when starting work on a Linear ticket, analyzing issues, or gathering context about a Linear issue. |
| argument-hint | [issue-id] |
| compatibility | {"requires":[{"mcp":"linear","description":"Core dependency — used to fetch issue details, relations, and comments"},{"cli":"gh","description":"GitHub CLI — used to fetch linked PRs and issues. Must be authenticated (gh auth login)"}],"optional":[{"mcp":"notion","description":"Used to fetch linked Notion documents. Skip Notion steps if unavailable."},{"skill":"loom-transcript","description":"Used to fetch Loom video transcripts. Skip Loom steps if unavailable."},{"cli":"curl","description":"Used to download images/attachments. Typically pre-installed."}]} |
Start work on Linear issue $ARGUMENTS
This skill depends on external tools. Before proceeding, verify availability:
Required:
gh): Must be installed and authenticated. Run gh auth status to verify. Used to fetch linked PRs and issues.Optional (graceful degradation):
If a required tool is missing, stop and tell the user what needs to be set up before continuing.
Follow these steps to gather comprehensive context about the issue:
Use the Linear MCP tools available in the active harness to fetch the issue details and comments together:
Both calls should be made together in the same step to gather the complete context upfront.
After fetching the issue, immediately check its labels:
Look at the labels returned with the issue.
If any label is n8n-private:
a. Run git remote -v (via Bash) to list all configured remotes.
b. If any remote URL contains n8n-io/n8n without the -private suffix (i.e. matches the public repo), stop immediately and tell the user:
This issue is marked
n8n-privateand must be developed in a clean clone of the private repository.One or more of your remotes point to the public
n8n-io/n8nrepo. Mixed remotes are not allowed — you must work in a separate local clone ofn8n-io/n8n-privatewith no references to the public repo. For the full process, see: https://www.notion.so/n8n/Processing-critical-high-security-bugs-vulnerabilities-in-private-2f45b6e0c94f803da806f472111fb1a5
Do not continue with any further steps — return after showing this message.
If the label is not present, or all remotes point exclusively to n8n-io/n8n-private, continue normally.
IMPORTANT: This step is NOT optional. You MUST scan and fetch all visual content from BOTH the issue description AND all comments.
Screenshots/Images (ALWAYS fetch):
<img> tagscurl -sL "url" -o /path/to/image.png (GitHub URLs require following redirects) OR the linear mcpRead tool on the downloaded file to view itLoom Videos (ALWAYS fetch transcript):
Related Linear Issues:
GitHub PRs and Issues:
gh CLI to fetch PR/issue details:
gh pr view <number> for pull requestsgh issue view <number> for issuescurl -H "Authorization: token $(gh auth token)" -L <image-url> -o image.pngNotion Documents:
Comments were already fetched in Step 1. Review them for:
Determine whether this issue is specific to a particular n8n node (e.g. a trigger, action, or tool node). Look for clues in:
node:linear, node:slack)If the issue is node-specific:
Find the node type ID. Use Grep to search for the node's display name (or keywords from it) in packages/frontend/editor-ui/data/node-popularity.json to find the exact node type ID. For reference, common ID patterns are:
n8n-nodes-base.<camelCaseName> (e.g. "HTTP Request" → n8n-nodes-base.httpRequest)n8n-nodes-base.<name>Trigger (e.g. "Gmail Trigger" → n8n-nodes-base.gmailTrigger)n8n-nodes-base.<name>Tool (e.g. "Google Sheets Tool" → n8n-nodes-base.googleSheetsTool)@n8n/n8n-nodes-langchain.<camelCaseName> (e.g. "OpenAI Chat Model" → @n8n/n8n-nodes-langchain.lmChatOpenAi)Look up the node's popularity score — first check for a Flaky assessment (see below), otherwise use the popularity file:
Primary: Check for Flaky's assessment in Linear comments. Flaky is an auto-triage agent that posts issue analysis as a comment. Search the comments already fetched in Step 1 for a comment from a user named "Flaky" (or containing "Flaky" in the author name) — do not re-fetch comments. If found, extract the popularity score and level directly from Flaky's analysis and use those values.
Fallback (if no Flaky comment exists): Look up the node's popularity score from packages/frontend/editor-ui/data/node-popularity.json. Use Grep to search for the node ID in that file. The popularity score is a log-scale value between 0 and 1. Use these thresholds to classify:
| Score | Level | Description | Examples |
|---|---|---|---|
| ≥ 0.8 | High | Core/widely-used nodes, top ~5% | HTTP Request (0.98), Google Sheets (0.95), Postgres (0.83), Gmail Trigger (0.80) |
| 0.4–0.8 | Medium | Regularly used integrations | Slack (0.78), GitHub (0.64), Jira (0.65), MongoDB (0.63) |
| < 0.4 | Low | Niche or rarely used nodes | Amqp (0.34), Wise (0.36), CraftMyPdf (0.33) |
Include the raw score and the level (high/medium/low) in the summary, and note whether it came from Flaky or the popularity file.
If the node is not found in the popularity file (and no Flaky comment exists), note that it may be a community node or a very new/niche node.
Primary: Check for Flaky's effort estimate in Linear comments. Search the comments already fetched in Step 1 for a Flaky comment — do not re-fetch. If found, extract the effort/complexity estimate directly from it and use that as your assessment.
Fallback (if no Flaky comment exists): After gathering all context, assess the effort required to fix/implement the issue. Use the following T-shirt sizes:
| Size | Approximate effort |
|---|---|
| XS | ≤ 1 hour |
| S | ≤ 1 day |
| M | 2-3 days |
| L | 3-5 days |
| XL | ≥ 6 days |
To make this assessment, consider:
Provide the T-shirt size along with a brief justification explaining the key factors that drove the estimate. Note whether it came from Flaky or your own assessment.
Before presenting, verify you have completed:
gh CLIAfter gathering all context, present a comprehensive summary including:
n8n-nodes-base.xxx), popularity score with level (e.g. 0.64 — medium popularity)AI-1975, node-1975, or just 1975 (will search)