linear

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

Updated May 4, 2026
One-click install
npx skills add https://github.com/Junkfooooood/hermes-governance --skill linear-junkfooooood
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: linear
Source: https://github.com/Junkfooooood/hermes-governance/tree/main/skills/productivity/linear
Command: npx skills add https://github.com/Junkfooooood/hermes-governance --skill linear-junkfooooood

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 sprint triage, 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 move it to In Progress — all without opening a browser. ## Quick Start Set the LINEAR_API_KEY environment variable, then ask the agent to list my assigned Linear issues and show their status and priority.

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 GraphQL issueCreate mutation via curl to https://api.linear.app/graphql with your team ID, title, description, and priority. Authenticate with the Authorization header set to your LINEAR_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 that stateId. Linear states have six types: triage, backlog, unstarted, started, completed, and canceled.

Does the Linear API need an MCP server or OAuth?

No. This approach uses a personal API key from Linear Settings > API, passed directly in the Authorization header. All requests are simple POST calls with curl, requiring no MCP server, OAuth flow, or extra dependencies.

Can I search and filter Linear issues with GraphQL?

Yes. Use issueSearch for text queries or the issues query with filter objects supporting comparators like eq, in, contains, and startsWith. You can filter by state type, team key, or assignee email, and combine conditions with or clauses.

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.