Claude-skill-registry fetch-issue

Fetch Linear issue and create branch

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/fetch-issue" ~/.claude/skills/majiayu000-claude-skill-registry-fetch-issue && rm -rf "$T"
manifest: skills/data/fetch-issue/SKILL.md
source content

Fetch Linear Issue and Create Branch

Input

Linear issue identifier: $ARGUMENTS Examples:

ALG-27
,
27
,
alg-27

Steps

  1. Parse issue identifier from

    $ARGUMENTS
    :

    • Accept formats:
      ALG-27
      ,
      27
      ,
      alg-27
    • Normalize to
      ALG-{NUM}
      for Linear API call
    • Extract number for folder naming
  2. Fetch issue details using Linear MCP:

    mcp__linear-server__get_issue with:
    - id: ALG-{NUM}
    - includeRelations: true
    
  3. Extract from issue response:

    • identifier
      : e.g., "ALG-27"
    • title
      : Issue title
    • description
      : Full description
    • labels
      : Array of label names
    • status
      : Current status
    • relations.blocks
      : Issues this blocks
    • relations.blockedBy
      : Issues blocking this
    • relations.relatedTo
      : Related issues
  4. Parse description for mentioned issues:

    • Search for patterns:
      ALG-\d+
      (case-insensitive)
    • Extract unique issue identifiers mentioned in description
    • These are treated as "linked" issues alongside formal relations
    • Example:
      [ALG-13](https://linear.app/...)
      -> extract
      ALG-13
  5. For each linked issue (from relations AND description mentions):

    • Use Glob to find
      specs/alg-{related-num}-*/spec.md
      (Glob matches files, not directories)
    • If spec.md exists, read the summary section
    • Collect related specs for context
  6. Derive kebab-slug from title:

    • Lowercase the title
    • Replace spaces and special chars with hyphens
    • Remove consecutive hyphens
    • Truncate to reasonable length (40 chars max)
  7. Create branch and spec directory:

    NUM={extracted number}
    SLUG={kebab-slug}
    git checkout -b alg-${NUM}-${SLUG}
    mkdir -p specs/alg-${NUM}-${SLUG}
    
  8. Output context summary:

    • Issue identifier and title
    • Description preview
    • Labels and status
    • Related specs found (with summaries)
    • Created branch name
    • Created spec directory path
    • Prompt: "Run /plan-spec to create the specification"

Notes

  • Do NOT create spec.md yet - that's handled by /plan-spec
  • Do NOT commit anything - branch creation is uncommitted
  • If branch already exists, ask user whether to switch to it or create fresh
  • If spec directory already exists, warn user and ask to proceed