
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.
- Installs
- 305
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/n8n-io/n8n --skill linear-issue- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads linear-issue automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Linear Issue Analysis
Start work on Linear issue $ARGUMENTS
Prerequisites
This skill depends on external tools. Before proceeding, verify availability:
Required:
- Linear MCP (
mcp__linear): Must be connected. Without it the skill cannot function at all. - GitHub CLI (
gh): Must be installed and authenticated. Rungh auth statusto verify. Used to fetch linked PRs and issues.
Optional (graceful degradation):
- Notion MCP (
mcp__notion): Needed only if the issue links to Notion docs. If unavailable, note the Notion links in the summary and tell the user to check them manually. - Loom transcript skill (
/loom-transcript): Needed only if the issue contains Loom videos. If unavailable, note the Loom links in the summary for the user to watch. - curl: Used to download images. Almost always available; if missing, skip image downloads and note it.
If a required tool is missing, stop and tell the user what needs to be set up before continuing.
Instructions
Follow these steps to gather comprehensive context about the issue:
1. Fetch the Issue and Comments from Linear
Use the Linear MCP tools to fetch the issue details and comments together:
- Use
mcp__linear__get_issuewith the issue ID to get full details including attachments - Include relations to see blocking/related/duplicate issues
- Immediately after, use
mcp__linear__list_commentswith the issue ID to fetch all comments
Both calls should be made together in the same step to gather the complete context upfront.
2. Analyze Attachments and Media (MANDATORY)
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):
- Scan the issue description AND all comments for ALL image URLs:
<img>tags- Markdown images
 - Raw URLs (github.com/user-attachments, imgur.com, etc.)
- For EACH image found (in description or comments):
- Download using
curl -sL "url" -o /path/to/image.png(GitHub URLs require following redirects) OR the linear mcp - Use the
Readtool on the downloaded file to view it - Describe what you see in detail
- Download using
- Do NOT skip images - they often contain critical context like error messages, UI states, or configuration
Loom Videos (ALWAYS fetch transcript):
- Scan the issue description AND all comments for Loom URLs (loom.com/share/...)
- For EACH Loom video found (in description or comments):
- Use the
/loom-transcriptskill to fetch the FULL transcript - Summarize key points, timestamps, and any demonstrated issues
- Use the
- Loom videos often contain crucial reproduction steps and context that text alone cannot convey
3. Fetch Related Context
Related Linear Issues:
- Use
mcp__linear__get_issuefor any issues mentioned in relations (blocking, blocked by, related, duplicates) - Summarize how they relate to the main issue
GitHub PRs and Issues:
- If GitHub links are mentioned, use
ghCLI to fetch PR/issue details:gh pr view <number>for pull requestsgh issue view <number>for issues
- Download images attached to issues:
curl -H "Authorization: token $(gh auth token)" -L <image-url> -o image.png
Notion Documents:
- If Notion links are present, use
mcp__notion__notion-fetchwith the Notion URL or page ID to retrieve document content - Summarize relevant documentation
4. Review Comments
Comments were already fetched in Step 1. Review them for:
- Additional context and discussion history
- Any attachments or media linked in comments (process in Step 2)
- Clarifications or updates to the original issue description
5. Identify Affected Node (if applicable)
Determine whether this issue is specific to a particular n8n node (e.g. a trigger, action, or tool node). Look for clues in:
- The issue title (e.g. "Linear trigger", "Slack node", "HTTP Request")
- The issue description and comments mentioning node names
- Labels or tags on the issue (e.g.
node:linear,node:slack) - Screenshots showing a specific node's configuration or error
If the issue is node-specific:
-
Find the node type ID. Use
Grepto search for the node's display name (or keywords from it) inpackages/frontend/editor-ui/data/node-popularity.jsonto find the exact node type ID. For reference, common ID patterns are:- Core nodes:
n8n-nodes-base.<camelCaseName>(e.g. "HTTP Request" →n8n-nodes-base.httpRequest) - Trigger variants:
n8n-nodes-base.<name>Trigger(e.g. "Gmail Trigger" →n8n-nodes-base.gmailTrigger) - Tool variants:
n8n-nodes-base.<name>Tool(e.g. "Google Sheets Tool" →n8n-nodes-base.googleSheetsTool) - LangChain/AI nodes:
@n8n/n8n-nodes-langchain.<camelCaseName>(e.g. "OpenAI Chat Model" →@n8n/n8n-nodes-langchain.lmChatOpenAi)
- Core nodes:
-
Look up the node's popularity score from
packages/frontend/editor-ui/data/node-popularity.json. UseGrepto 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.
-
If the node is not found in the popularity file, note that it may be a community node or a very new/niche node.
6. Assess Effort/Complexity
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:
- Scope of changes: How many files/packages need to be modified? Is it a single node fix or a cross-cutting change?
- Complexity: Is it a straightforward parameter change, a new API integration, a new credential type, or an architectural change?
- Testing: How much test coverage is needed? Are E2E tests required?
- Risk: Could this break existing functionality? Does it need backward compatibility?
- Dependencies: Are there external API changes, new packages, or cross-team coordination needed?
- Documentation: Does this require docs updates, migration guides, or changelog entries?
Provide the T-shirt size along with a brief justification explaining the key factors that drove the estimate.
7. Present Summary
Before presenting, verify you have completed:
- Downloaded and viewed ALL images in the description AND comments
- Fetched transcripts for ALL Loom videos in the description AND comments
- Fetched ALL linked GitHub issues/PRs via
ghCLI - Listed all comments on the issue
- Checked whether the issue is node-specific and looked up popularity if so
- Assessed effort/complexity with T-shirt size
After gathering all context, present a comprehensive summary including:
- Issue Overview: Title, status, priority, assignee, labels
- Description: Full issue description with any clarifications from comments
- Visual Context: Summary of screenshots/videos (what you observed in each)
- Affected Node (if applicable): Node name, node type ID (
n8n-nodes-base.xxx), popularity score with level (e.g.0.64 — medium popularity) - Related Issues: How this connects to other work
- Technical Context: Any PRs, code references, or documentation
- Effort Estimate: T-shirt size (XS/S/M/L/XL) with justification
- Next Steps: Suggested approach based on all gathered context
Notes
- The issue ID can be provided in formats like:
AI-1975,node-1975, or just1975(will search) - If no issue ID is provided, ask the user for one
FAQ
What does the linear-issue skill do?
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.
How do I install linear-issue?
Run npx skills add https://github.com/n8n-io/n8n --skill linear-issue in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/linear-issue/ (personal) or .claude/skills/linear-issue/ (project).
Which AI agents can use linear-issue?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is linear-issue safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains linear-issue?
It is published by n8n-io in n8n-io/n8n, and it is an official skill from the maker of the technology it covers. It has 305 recorded installs.
More from n8n-io/n8n
create-pr
n8n-io/n8n
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.
reproduce-bug
n8n-io/n8n
Open the skill to read its SKILL.md instructions.
Popular productivity & automation skills
agent-browser
vercel-labs/agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
lark-doc
open.feishu.cn
飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。
lark-base
open.feishu.cn
飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。
lark-drive
open.feishu.cn
飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。
lark-shared
open.feishu.cn
Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.
lark-im
open.feishu.cn
飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。