linear

Manage Linear issues, projects, and teams via GraphQL API calls with curl.

Updated Jul 7, 2026
One-click install
npx skills add https://github.com/jamsdoescode/Erik-s-Portfolio --skill linear-jamsdoescode
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: linear
Source: https://github.com/jamsdoescode/Erik-s-Portfolio/tree/main/openclicky/AppResources/OpenClicky/OpenClickyBundledSkills/linear
Command: npx skills add https://github.com/jamsdoescode/Erik-s-Portfolio --skill linear-jamsdoescode

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Managing Linear issues, projects, and teams normally requires switching to the Linear web app or setting up an MCP server or OAuth flow. This Skill lets you perform all common Linear operations directly from the terminal using the GraphQL API with nothing more than curl and a personal API key. ## Core Features & Use Cases - Issue Management: Query, search, filter, create, and update issues, including status changes, assignments, priorities, due dates, labels, and comments. - Project & Team Operations: List teams, workflow states, projects, members, and labels, and create new projects linked to teams. - Document Access: Fetch and search Linear Documents by slugId, UUID, or title, including Markdown content retrieval. - Use Case: You need to triage a bug report. Search for the issue by text, assign it to a teammate, set priority to Urgent, move it to the "In Progress" state, and add a comment with your findings — all without leaving your terminal. ## Quick Start Set the LINEAR_API_KEY environment variable with a personal API key from Linear settings, then ask the assistant to list your assigned Linear issues or create a new issue in a specific team.

Frequently Asked Questions about linear

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a Linear issue from the command line?

Send a POST request to https://api.linear.app/graphql with the issueCreate mutation, providing teamId, title, description, and priority in the input variables. Authenticate with your LINEAR_API_KEY in the Authorization header without a Bearer prefix.

How do I change a Linear issue status via the API?

First query the team's workflowStates to get the target state's UUID, then call the issueUpdate mutation with the issue identifier and stateId. Linear states have six types: triage, backlog, unstarted, started, completed, and canceled.

Where do I get a Linear personal API key?

Generate a personal API key in Linear under Settings > Account > Security & access > Personal API keys. The org-level Settings > API page only shows OAuth apps and workspace-member keys, not personal keys.

Can I fetch a Linear document by its URL slug?

Yes, extract the trailing hex slugId from the document URL and filter the documents query with slugId equals that value. The document(id:) query only accepts UUIDs, so the collection filter is required for slug-based lookups.

Why does my Linear GraphQL request return HTTP 200 but no data?

GraphQL responses can contain an errors array even with HTTP 200 status. Always inspect the errors field in the response body to diagnose invalid queries, wrong field names, or permission issues.

What are the Linear API rate limits?

Linear allows 5,000 requests per hour and 3,000,000 complexity points per hour per API key. Use the first parameter to limit result sizes and monitor the X-RateLimit-Requests-Remaining response header.