Agent skill

Linear Issue Fixer

by genlayerlabs in genlayerlabs/genlayer-studio

Fetch the most urgent Linear issue with tag "studio" and size XS, then fix it

MITAuto-check passedTesting & QA

Install Linear Issue Fixer

skills CLI
$ npx skills add genlayerlabs/genlayer-studio --skill linear-issue-fixer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install genlayerlabs/genlayer-studio linear-issue-fixer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/genlayerlabs/genlayer-studio.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/linear-issue-fixer .claude/skills/linear-issue-fixer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
linear-issue-fixer
GitHub stars
180
Token cost
~2.2k tokens
SKILL.md length
649 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
MIT

At a glance

Fetch the most urgent Linear issue with tag "studio" and size XS, then fix it

  • Works in 10 steps: Fetch Candidate XS Studio Issues → User Selection → Analyze the Selected Issue → …
  • Testing & QA work in your project
  • SKILL.md covers Prerequisites, Linear MCP Server Setup, Workflow and Issue Size Reference, plus 3 more sections
  • Calls git, docker and claude; reaches mcp.linear.app and linear.app

What it does

Linear Issue Fixer is an agent skill from genlayerlabs/genlayer-studio. Fetch the most urgent Linear issue with tag "studio" and size XS, then fix it

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA. It works with Linear. The repository describes itself as: An interactive sandbox to explore the GenLayer Protocol. The licence is MIT.

When your agent uses it

  • Testing & QA work in your project

Example prompts

  • “studio”
  • “/linear-issue-fixer”

Requirements

  • Python 3
  • Docker

Workflow steps

10 steps, taken from the step headings in SKILL.md.

  1. Fetch Candidate XS Studio Issues
  2. User Selection
  3. Analyze the Selected Issue
  4. Explore the Codebase
  5. Plan the Fix
  6. Implement the Fix
  7. Run ALL Test Suites
  8. Run Integration Tests (if needed)
  9. Create Pull Request
  10. Update Linear Issue

What it can do on your machine

Read from SKILL.md and the folder at commit c940729. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git
    • docker
    • claude
    • pytest
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • mcp.linear.app
    • linear.app

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Linear Issue Fixer loads about 2.2k tokens when it runs. Until then it costs about 24 tokens; SKILL.md has 649 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~24
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from genlayerlabs/genlayer-studio at commit c940729, republished under its MIT licence (© genlayerlabs). 649 words, ~2,220 tokens.

Download SKILL.mdSave it as .claude/skills/linear-issue-fixer/SKILL.md (or your agent's skills folder).
name
linear-issue-fixer
description
Fetch the most urgent Linear issue with tag "studio" and size XS, then fix it
invocation
user
argument-hint
Optional issue ID to work on a specific issue

Linear Issue Fixer

Automatically fetch the most urgent Linear issue with the "studio" label and "XS" size estimate, analyze it, implement a fix, verify with tests, and create a pull request.

Prerequisites

  • Linear MCP server connected
  • GitHub CLI (gh) authenticated
  • Docker running (for integration tests)
  • Python 3.12 with virtualenv
  • Checkout main branch and pull the latest changes

Linear MCP Server Setup

If Linear MCP is not configured, set it up first:

bash
claude mcp add --transport sse linear https://mcp.linear.app/sse

Then restart Claude Code and run /mcp to authenticate with Linear via OAuth.

Alternatively, add via JSON:

bash
claude mcp add-json linear '{"command": "npx", "args": ["-y","mcp-remote","https://mcp.linear.app/sse"]}'

To troubleshoot auth issues:

bash
rm -rf ~/.mcp-auth

Workflow

Step 1: Fetch Candidate XS Studio Issues

Use Linear MCP tools to find candidate issues:

1. First, check Linear MCP is connected:
   Run /mcp to verify "linear" server is connected

2. Search for issues with "studio" label and XS size:
   Use list_issues with:
   - label: "studio"
   - Sort by priority (highest first)
   - limit: 10

3. Filter results to find XS-sized issues:
   - Look for issues with estimate/size "XS" or 1 point
   - Prioritize by urgency: Urgent > High > Medium > Low

4. If a specific issue ID was provided as argument, fetch that instead:
   $ARGUMENTS

Priority Levels in Linear:

  • 1 = Urgent
  • 2 = High
  • 3 = Medium
  • 4 = Low
  • 0 = No priority
Step 2: User Selection

IMPORTANT: Always ask the user to select which issue to work on.

Present the candidate issues to the user with:

  • Issue identifier (e.g., DXP-123)
  • Title
  • Priority level
  • Size estimate
  • Brief description summary

Use the AskUserQuestion tool to let the user choose which issue to work on. Do NOT proceed with an issue automatically - always wait for user confirmation.

Example prompt:

I found the following XS studio issues:

1. DXP-456 [High] "Fix address validation" - XS
2. DXP-789 [Medium] "Update error message" - XS
3. DXP-012 [Low] "Typo in config" - XS

Which issue would you like me to work on?
Step 3: Analyze the Selected Issue

Once the user has selected an issue:

1. Get full issue details including:
   - Title and description
   - Current status
   - Any linked issues or dependencies
   - Comments with context
   - Acceptance criteria

2. Understand the scope:
   - What files are likely affected?
   - Is this a bug fix, feature, or improvement?
   - Are there any blocking dependencies?

Gather from analysis:

  • Issue type (bug, feature, task, improvement)
  • Affected area (backend, frontend, infrastructure)
  • Expected behavior vs current behavior
  • Acceptance criteria
  • Related files mentioned in description
Step 4: Explore the Codebase

Before implementing, understand the relevant code:

1. Launch an Explore agent to find relevant code:
   - Search for files/functions mentioned in the issue
   - Understand the existing implementation
   - Identify patterns and conventions used

2. Read key files that will need modification

3. Check for existing tests covering the affected area
Step 5: Plan the Fix

Create a clear implementation plan:

  1. Root Cause / Current State

    • What is the current behavior?
    • Why does it need to change?
  2. Proposed Solution

    • What changes are needed?
    • Which files need modification?
    • Are there related areas to consider?
  3. Risk Assessment

    • Could this fix break other functionality?
    • Does it need backward compatibility?
  4. Testing Strategy

    • What unit tests should be added/modified?
    • What integration tests are relevant?

Present the plan to the user and get approval before implementing.

Step 6: Implement the Fix
  1. Create a Feature Branch

    bash
    git checkout main
    git pull origin main
    git checkout -b <issue-identifier>-<short-description>

    Use the Linear issue identifier (e.g., DXP-123) as branch prefix.

  2. Make Code Changes

    • Implement the planned fix
    • Follow codebase conventions
    • Add appropriate error handling
    • Add or update tests
  3. Commit Changes

    bash
    git add <files>
    git commit -m "<type>: <description>
    
    Resolves <LINEAR-ISSUE-ID>
    
    Co-Authored-By: Claude <noreply@anthropic.com>"
Step 7: Run ALL Test Suites

IMPORTANT: You MUST run ALL of the following test suites before creating a PR. Do NOT skip any.

Show full SKILL.md (264 more words)Show less
7.1 DB/SQLAlchemy Tests (Primary Backend Tests - Dockerized)
bash
docker compose -f tests/db-sqlalchemy/docker-compose.yml --project-directory . run --build --rm tests
7.2 Backend Unit Tests
bash
.venv/bin/pytest tests/unit/ -v --tb=short --ignore=tests/unit/test_rpc_endpoint_manager.py
7.3 Frontend Unit Tests
bash
cd frontend && npm run test

If any tests fail:

  • Analyze the failure
  • Fix the issue
  • Re-run ALL test suites until they pass
Step 8: Run Integration Tests (if needed)

For changes that affect runtime behavior:

bash
# Ensure Docker is running with the studio
docker compose up -d

source .venv/bin/activate
export PYTHONPATH="$(pwd)"

# Run integration tests
gltest --contracts-dir . tests/integration -n 4 --ignore=tests/integration/test_validators.py
Step 9: Create Pull Request

Use the /create-pr skill to create the pull request.

This skill will:

  1. Push the branch to origin
  2. Analyze the diff against main
  3. Create a PR with the proper template format

Make sure to include the Linear issue URL in the PR body with Fixes <LINEAR-ISSUE-URL> so the issue gets linked automatically.

Step 10: Update Linear Issue

After PR is created:

1. Add a comment to the Linear issue with:
   - Link to the PR
   - Brief summary of the implementation

2. Update issue status to "In Review" or appropriate status

Use linear_add_comment and linear_update_issue tools

Issue Size Reference

SizePointsTypical Scope
XS1Trivial fix, typo, config change
S2Simple bug fix, small feature
M3Moderate feature, multiple files
L5Large feature, significant changes
XL8+Epic-level work

Linear MCP Tools Reference

ToolPurpose
linear_search_issuesFind issues with filters (labels, priority, status)
linear_update_issueUpdate issue status, assignee, etc.
linear_add_commentAdd comment to an issue
linear_create_issueCreate new issues
linear_get_user_issuesGet issues assigned to a user
Common Search Patterns
# Find urgent studio issues
linear_search_issues(labels=["studio"], priority=1)

# Find all studio issues sorted by priority
linear_search_issues(labels=["studio"], limit=20)

# Find in-progress issues
linear_search_issues(status="In Progress", teamId="...")

Troubleshooting

Linear MCP Not Connected
  • Run claude mcp list to check status
  • Run /mcp to trigger authentication
  • Clear auth with rm -rf ~/.mcp-auth and retry
Cannot Find Issues
  • Verify the "studio" label exists in your Linear workspace
  • Check you have access to the relevant team
  • Try searching without filters first
Tests Failing
  • Check Docker is running: docker compose ps
  • View logs: docker compose logs -f
  • Run specific test file to isolate issue

Example Session

1. Check Linear MCP connection:
   > /mcp
   > linear: Connected

2. Search for XS studio issues:
   > list_issues(label="studio")
   > Found 3 XS issues

3. Ask user to select:
   > "Which issue would you like to work on?"
   > 1. DXP-456 [High] "Fix address validation" - XS
   > 2. DXP-789 [Medium] "Update error message" - XS
   > User selects: DXP-456

4. Analyze selected issue:
   - Bug: addresses without 0x prefix cause validation errors
   - Affected: backend validation logic
   - Acceptance: addresses like "abc123..." should be accepted

5. Explore codebase:
   - Find address validation code
   - Understand current validation logic

6. Plan fix:
   - Add normalization to accept addresses without prefix
   - Add unit test for edge case

7. Implement:
   - Edit validation.py
   - Add test_address_without_prefix.py

8. Test:
   - docker compose -f tests/db-sqlalchemy/docker-compose.yml run tests
   - All pass

9. Create PR:
   - Use /create-pr skill
   - Include "Fixes https://linear.app/genlayer/issue/DXP-456"

10. Update Linear:
    - Add PR link as comment
    - Move to "In Review"

© genlayerlabs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/linear-issue-fixer of genlayerlabs/genlayer-studio.

Open the folder on GitHubat commit c940729

Compare with similar skills

Linear Issue Fixer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Linear Issue Fixer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Linear Issue Fixer this skillgenlayerlabs/genlayer-studio180—~2.2kAutomated safety check: PassMIT
File Issuesuperset-sh/superset15k—~920Automated safety check: PassCustom licence
Add Icon Mappinglobehub/lobe-icons2.6k—~1.5kAutomated safety check: WarnMIT
Mobile QAtloncorp/tlon-apps107—~2.4kAutomated safety check: PassMIT
Web Application Testinganthropics/skills180k51 repos~966Automated safety check: PassApache-2.0
Diagnosing Bugsfossasia/eventyay-interpretation1.6k31 repos~2.1kAutomated safety check: PassApache-2.0

Similar skills

  • File Issue

    superset-sh/superset

    Turn a rough report into a Linear issue someone can pick up — reproduce the claim, check for duplicates, and fill in team, priority, and labels.

    15k GitHub stars~920 tokensUpdated today
    Testing & QAAuto-check passed
  • Add Icon Mapping

    lobehub/lobe-icons

    Add or modify icon keyword mappings for providers, models, or agents in lobe-icons.

    2.6k GitHub stars~1.5k tokensUpdated yesterday
    MobileAuto-check: warnings
  • Mobile QA

    tloncorp/tlon-apps

    Run a mobile QA checklist on a physical Android device over adb for tlon-apps, then triage what fails into fixes.

    107 GitHub stars~2.4k tokensUpdated today
    MobileAuto-check passed
  • Web Application Testing

    anthropics/skills

    Official

    Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.

    180k GitHub starsUsed in 51 repos~966 tokens
    Testing & QAAuto-check passed
  • Diagnosing Bugs

    fossasia/eventyay-interpretation

    Diagnosis loop for hard bugs and performance regressions. An agent skill from fossasia/eventyay-interpretation.

    1.6k GitHub starsUsed in 31 repos~2.1k tokens
    Testing & QAAuto-check passed
  • Linear ticket work through Orca's CLI. Use when working from a linked Linear issue, finishing work with a PR/MR link and a completion comment, moving a ticket…

    87k GitHub starsUsed in 1 repo~522 tokens
    Productivity & AutomationAuto-check passed

More from genlayerlabs/genlayer-studio

All 10 skills in this repo
  • Cloudflare CLI

    genlayerlabs/genlayer-studio

    Debug and manage Cloudflare DNS, cache, and proxy settings using flarectl

    180 GitHub stars~692 tokensUpdated 7 days ago
    Auto-check passed
  • Create PR

    genlayerlabs/genlayer-studio

    Create GitHub pull requests by analyzing branch diff and following the project template

    180 GitHub stars~635 tokensUpdated 7 days ago
    Auto-check passed
  • Discord Community Feedback

    genlayerlabs/genlayer-studio

    Monitor Discord community channel for user-reported bugs and issues

    180 GitHub stars~786 tokensUpdated 7 days ago
    Auto-check passed
  • Hosted Studio Debug

    genlayerlabs/genlayer-studio

    Debug GenLayer Studio deployments via ArgoCD CLI. An agent skill from genlayerlabs/genlayer-studio.

    180 GitHub stars~1.3k tokensUpdated 7 days ago
    Auto-check passed
  • Integration Tests

    genlayerlabs/genlayer-studio

    Setup Python virtual environment and run integration tests with gltest

    180 GitHub stars~1.1k tokensUpdated 7 days ago
    Auto-check passed
  • Sentry Issue Fixer

    genlayerlabs/genlayer-studio

    Fetch, analyze, fix Sentry issues, run tests, and create PRs

    180 GitHub stars~2k tokensUpdated 7 days ago
    Auto-check passed

Works with

Categories

Questions about Linear Issue Fixer

What does Linear Issue Fixer do?

Fetch the most urgent Linear issue with tag "studio" and size XS, then fix it. Linear Issue Fixer is an agent skill from genlayerlabs/genlayer-studio.

When should I use Linear Issue Fixer?

Linear Issue Fixer fits situations like: testing & QA work in your project.

How do I install Linear Issue Fixer in Claude Code?

Run `npx skills add genlayerlabs/genlayer-studio --skill linear-issue-fixer -a claude-code`. Or copy the skill folder (.claude/skills/linear-issue-fixer in genlayerlabs/genlayer-studio) into .claude/skills/linear-issue-fixer in your project. Claude Code loads it when a task matches its description.

How do I install Linear Issue Fixer in Codex?

Run `npx skills add genlayerlabs/genlayer-studio --skill linear-issue-fixer -a codex`. Or copy the skill folder (.claude/skills/linear-issue-fixer in genlayerlabs/genlayer-studio) into .agents/skills/linear-issue-fixer in your project. Codex loads it when a task matches its description.

Can I use Linear Issue Fixer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add genlayerlabs/genlayer-studio --skill linear-issue-fixer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/linear-issue-fixer, .gemini/skills/linear-issue-fixer, .github/skills/linear-issue-fixer and .opencode/skills/linear-issue-fixer in your project.

What does Linear Issue Fixer need to run?

Going by SKILL.md and its folder, Linear Issue Fixer needs the command-line tools its instructions call (git, docker, claude, pytest and npm). Our summary lists: Python 3; Docker.

Does Linear Issue Fixer access the network?

SKILL.md names 2 domains. In commands or code: mcp.linear.app and linear.app; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Linear Issue Fixer safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Linear Issue Fixer use?

Linear Issue Fixer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Linear Issue Fixer use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Linear Issue Fixer?

Skills that share tags, products or a category with Linear Issue Fixer: File Issue (superset-sh/superset, 15k stars), Add Icon Mapping (lobehub/lobe-icons, 2.6k stars), Mobile QA (tloncorp/tlon-apps, 107 stars) and Web Application Testing (anthropics/skills, 180k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Linear Issue Fixer?

genlayerlabs (a GitHub organization) maintains it in genlayerlabs/genlayer-studio, which has 180 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on September 30, 2026.

Source: genlayerlabs/genlayer-studio on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.