Back to Skills

linear-extended

verified

Extended Linear operations - manage project milestones and download images from issues. Use for project phases (Alpha, Beta, Launch), milestone management, or extracting images/screenshots from issues. Triggers: "show milestones", "create milestone", "update milestone", "project phases", "download images from issue", "get issue images", "extract screenshots".

View on GitHub

Marketplace

sahar-claude-code-marketplace

SaharCarmel/Sahar-claude-code-marketplace

Plugin

linear-extended

productivity

Repository

SaharCarmel/Sahar-claude-code-marketplace
2stars

plugins/linear-extended/skills/linear-extended/SKILL.md

Last Verified

January 21, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/SaharCarmel/Sahar-claude-code-marketplace/blob/main/plugins/linear-extended/skills/linear-extended/SKILL.md -a claude-code --skill linear-extended

Installation paths:

Claude
.claude/skills/linear-extended/
Powered by add-skill CLI

Instructions

# Linear Extended

Extended operations for Linear: milestones and issue image downloads.

## Setup

Install dependencies once:
```bash
cd <skill-dir>/scripts && npm install
```

## Authentication

Two methods supported: OAuth (recommended) or API key.

### Option A: OAuth Login (Recommended)

First, create an OAuth app in Linear:
1. Go to Linear Settings > API > OAuth Applications
2. Create new app with redirect URI: `urn:ietf:wg:oauth:2.0:oob`
3. Save the `client_id` and `client_secret`

Then authenticate:
```bash
# First time: provide credentials (saved for future use)
node <skill-dir>/scripts/auth-login.js --client-id "YOUR_CLIENT_ID" --client-secret "YOUR_CLIENT_SECRET"

# Subsequent logins (credentials remembered)
node <skill-dir>/scripts/auth-login.js
```

Follow the prompts: open the URL in browser, authorize, paste the code back.

### Option B: API Key

Set `LINEAR_API_KEY` environment variable with a personal API key from Linear Settings > API.

### Check Auth Status
```bash
node <skill-dir>/scripts/auth-status.js
```

### Logout
```bash
node <skill-dir>/scripts/auth-logout.js        # Keep client credentials
node <skill-dir>/scripts/auth-logout.js --all  # Clear everything
```

## List Milestones

```bash
node <skill-dir>/scripts/milestones-list.js <project-name-or-id>
```

Example:
```bash
node <skill-dir>/scripts/milestones-list.js Candlekeep
```

## Create Milestone

```bash
node <skill-dir>/scripts/milestones-create.js <project> --name "Name" [--description "..."] [--target-date "YYYY-MM-DD"]
```

Example:
```bash
node <skill-dir>/scripts/milestones-create.js Candlekeep --name "Alpha" --description "Internal testing" --target-date "2025-01-15"
```

## Update Milestone

```bash
node <skill-dir>/scripts/milestones-update.js <milestone-id> [--name "..."] [--description "..."] [--target-date "..."]
```

Example:
```bash
node <skill-dir>/scripts/milestones-update.js abc123 --name "Beta" --target-date "2025-02-01"
```

## Delete Milestone

```bash
node <skil

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
3000 chars