linear

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

Updated May 13, 2026
One-click install
npx skills add https://github.com/superfhp/lumi-agent-body --skill linear-superfhp
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: linear
Source: https://github.com/superfhp/lumi-agent-body/tree/main/skills/productivity/linear
Command: npx skills add https://github.com/superfhp/lumi-agent-body --skill linear-superfhp

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Managing Linear issues typically requires switching to the web UI or setting up an MCP server and OAuth flow. This Skill lets you create, update, search, and triage Linear issues, projects, and teams directly from the terminal using plain curl requests against the Linear GraphQL API. ## Core Features & Use Cases - Full Issue Lifecycle: Create issues, update workflow states, assign users, set priorities and due dates, add labels, and post comments via GraphQL mutations. - Query & Search: List teams, workflow states, projects, labels, and members; search issues by text or filter by state type, team, and assignee with Relay-style cursor pagination. - Use Case: During a bug triage session, ask the agent to list all unstarted issues in the ENG team, raise priority on the login bug to Urgent, assign it to a teammate, and add a comment documenting the root cause — all without leaving the conversation. ## Quick Start Set the LINEAR_API_KEY environment variable, then ask the agent to list my assigned Linear issues and show their current status.

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, passing teamId, title, description, and priority in the input variables. Authenticate with the Authorization header set to your personal API key, with no Bearer prefix.

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

First query workflowStates filtered by team key to get the target state's UUID, then call the issueUpdate mutation with the issue identifier and stateId. Linear state names like In Progress map to typed states such as started or completed.

Does the Linear API need OAuth or an MCP server?▼

No. A personal API key from Linear Settings under API is sufficient. Pass it directly in the Authorization header of every POST request to the GraphQL endpoint, with no Bearer prefix and no OAuth flow required.

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 JSON response to catch invalid queries, bad UUIDs, or permission issues before assuming the request succeeded.

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 to avoid throttling.