linear

Linear Issue Management

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "linear" with this command: npx skills add lobehub/lobehub/lobehub-lobehub-linear

Linear Issue Management

Before using Linear workflows, search for linear MCP tools. If not found, treat as not installed.

⚠️ CRITICAL: PR Creation with Linear Issues

When creating a PR that references Linear issues (LOBE-xxx), you MUST:

  • Create the PR with magic keywords (Fixes LOBE-xxx )

  • IMMEDIATELY after PR creation, add completion comments to ALL referenced Linear issues

  • Do NOT consider the task complete until Linear comments are added

This is NON-NEGOTIABLE. Skipping Linear comments is a workflow violation.

Workflow

  • Retrieve issue details before starting: mcp__linear-server__get_issue

  • Read images: If the issue description contains images, MUST use mcp__linear-server__extract_images to read image content for full context

  • Check for sub-issues: Use mcp__linear-server__list_issues with parentId filter

  • Mark as In Progress: When starting to plan or implement an issue, immediately update status to "In Progress" via mcp__linear-server__update_issue

  • Update issue status when completing: mcp__linear-server__update_issue

  • Add completion comment (REQUIRED): mcp__linear-server__create_comment

Creating Issues

When creating issues with mcp__linear-server__create_issue , MUST add the claude code label.

Language

Issue titles, descriptions, and comments MUST follow the language of the current conversation, not default to English.

  • Conversation in 中文 → issue body in 中文;technical terms (file paths, identifiers, library names, commands, error messages) stay in English.

  • Conversation in English → issue body in English.

  • Code blocks, file paths, and quoted strings always stay in their original form regardless of surrounding language.

  • This applies equally to updates — when editing an existing issue (description and titles), preserve the language of the conversation that triggered the edit; do not switch the issue language during a refactor (Chinese → English or vice versa).

Rationale: the issue is a continuation of the conversation. Forcing English when the discussion is in Chinese creates translation friction for the collaborator who came from that thread.

Creating Sub-issue Trees

When breaking a parent issue into a tree of sub-issues (e.g., task decomposition for LOBE-xxx), follow these rules — they work around real limitations of the Linear MCP tools.

  1. ALWAYS prefix titles with an ordering index

The Linear Sub-issues panel displays children by sortOrder , which defaults to newest-first (most recently created appears on top). Neither parallel nor serial creation will produce the intended top-to-bottom reading order, and the MCP save_issue tool does not expose a sortOrder parameter — you cannot set order at create time.

Workaround: encode execution order in the title itself:

[1] [db] add schema fields [2] [db] new table + repository [3] [service] business logic layer [4] [api] REST endpoints [4.1] [sdk] client SDK wrapper [4.1.1] [app] consumer integration [4.1.2] [app] UI surface [4.2] [ui] dashboard page

Even when the panel shuffles, the reader can mentally reconstruct the dependency graph at a glance. Dotted numbering [n.m.k] should mirror the parent-child nesting so the index and the tree agree.

  1. Nest sub-issues by logical parent-child, not flat under the root

Linear supports unlimited sub-issue depth. A flat list of 8+ siblings under one root is hard to scan. Group by main-subordinate logic:

  • Core service → its SDK → SDK consumers

  • Don't create a sibling when a child is more accurate

Use parentId: "LOBE-xxxx" at creation (or save_issue to move). Moving an issue's parent does not disturb its blockedBy relations.

  1. Sub-issue creation order is dictated by blockedBy

blockedBy requires the blocker to exist first (you need its LOBE-id). So:

  • Topologically sort the DAG — leaves (no deps) first, roots last

  • Create issues with zero deps in the first wave

  • Create dependent issues only after collecting the blocker IDs from prior responses

  • blockedBy is append-only; passing it again does not overwrite — safe to re-run

  1. Don't waste rounds trying to parallelize

MCP tool calls in a single message look parallel but execute sequentially on the server, and you still need blocker IDs from earlier responses. Just issue calls in dependency order; optimizing for parallelism gains nothing here.

  1. Keep each sub-issue description self-contained

Each sub-issue should state:

  • Goal (1–2 lines)

  • Key files to touch

  • Concrete changes / acceptance criteria

  • Dependencies (link to blocker issues by LOBE-xxxx )

  • Validation steps

The implementer may open only the sub-issue, not the parent — don't rely on context that lives only in the parent description.

Completion Comment Format

Every completed issue MUST have a comment summarizing work done:

Changes Summary

  • Feature: Brief description of what was implemented
  • Files Changed: List key files modified
  • PR: #xxx or PR URL

Key Changes

  • Change 1
  • Change 2
  • ...

This is critical for:

  • Team visibility

  • Code review context

  • Future reference

PR Association (REQUIRED)

When creating PRs for Linear issues, include magic keywords in PR body:

  • Fixes LOBE-123

  • Closes LOBE-123

  • Resolves LOBE-123

Per-Issue Completion Rule

When working on multiple issues, update EACH issue IMMEDIATELY after completing it:

  • Complete implementation

  • Run bun run type-check

  • Run related tests

  • Create PR if needed

  • Update status to "In Review" (NOT "Done")

  • Add completion comment immediately

  • Move to next issue

Note: Status → "In Review" when PR created. "Done" only after PR merged.

❌ Wrong: Complete all → Create PR → Forget Linear comments

✅ Correct: Complete → Create PR → Add Linear comments → Task done

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

react

No summary provided by upstream source.

Repository SourceNeeds Review
1.9K-lobehub
General

zustand

No summary provided by upstream source.

Repository SourceNeeds Review
1.3K-lobehub
General

i18n

No summary provided by upstream source.

Repository SourceNeeds Review
General

project-overview

No summary provided by upstream source.

Repository SourceNeeds Review