| name | linear-cli |
| description | This skill should be used when the user asks to "create a Linear issue", "list Linear tickets", "start working on a ticket", "update Linear issue", "link PR to Linear", "view issue details", mentions "linear issue", "DEV-xxx", or needs to manage Linear issues from the command line. |
Linear CLI
Command-line interface for managing Linear issues directly from the terminal.
Installation & Auth
npm install -g @anthropic/linear
linear auth
Core Commands
Issue Management
List Issues:
LINEAR_ISSUE_SORT=priority linear issue list --team DEV -s unstarted
LINEAR_ISSUE_SORT=priority linear issue list --team DEV -s started
LINEAR_ISSUE_SORT=priority linear issue list --team DEV --all-states
LINEAR_ISSUE_SORT=priority linear issue list --team DEV -A
LINEAR_ISSUE_SORT=priority linear issue list --team DEV -U
LINEAR_ISSUE_SORT=priority linear issue list --team DEV --limit 100
View Issue:
linear issue view DEV-123
linear issue view DEV-123 -j
linear issue view DEV-123 -w
linear issue view DEV-123 -a
linear issue view --no-comments
Create Issue:
linear issue create --team DEV -t "Title" -d "Description"
linear issue create --team DEV -t "Title" -p DEV-100
linear issue create --team DEV -t "Title" -a self
linear issue create --team DEV -t "Title" -s "Todo"
linear issue create --team DEV -t "Title" -l "Bug" -l "Urgent"
linear issue create --team DEV -t "Title" --priority 1
linear issue create --team DEV -t "Title" --project "Network Agent"
linear issue create --team DEV --start
Update Issue:
linear issue update DEV-123 --state "In Progress"
linear issue update DEV-123 --state "Done"
linear issue update DEV-123 -a self
linear issue update DEV-123 -a "username"
linear issue update DEV-123 -p DEV-100
linear issue update DEV-123 --priority 2
linear issue update DEV-123 -l "Label"
linear issue update DEV-123 -t "New Title"
IMPORTANT: The flag is --state (or -s), NOT --status. --status does not exist and will error.
Start Working:
linear issue start DEV-123
linear issue start DEV-123 -b custom-branch-name
linear issue start DEV-123 -f main
Delete Issue:
linear issue delete DEV-123
echo "y" | linear issue delete DEV-123
Git Integration
Get Issue from Branch:
linear issue id
linear issue title
linear issue url
linear issue describe
Create PR with Issue:
linear issue pr DEV-123
Comments
linear issue comment add DEV-123 -b "Comment text"
linear issue comment list DEV-123
linear issue comment update <commentId> -b "Updated text"
Projects & Teams
linear project list
linear project view <projectId>
linear team list
linear team id
linear team members
State Values
For issue list - only these enum values work:
| State | Description |
|---|
triage | New, needs triage |
backlog | In backlog |
unstarted | Ready to start (default filter) — includes "Todo" |
started | In progress |
completed | Done |
canceled | Canceled |
For issue create and issue update - use your workspace's workflow state names:
| State Name | Description |
|---|
"Todo" | Ready to work on |
"In Progress" | Being worked on |
"In Review" | Under review |
"Done" | Completed |
"Canceled" | Canceled |
Priority Values
Use with --priority flag:
| Value | Meaning |
|---|
| 1 | Urgent |
| 2 | High |
| 3 | Medium |
| 4 | Low |
Common Workflows
Start New Work
LINEAR_ISSUE_SORT=priority linear issue list --team DEV -U
linear issue start DEV-123
linear issue pr
Create and Start Feature
linear issue create --team DEV -t "Add feature X" --start -a self
Bulk Update
for id in DEV-60 DEV-61 DEV-62; do
linear issue update $id -s "In Progress" -a self
done
Configuration
Config file is unreliable. Use explicit flags and env vars instead:
LINEAR_ISSUE_SORT=priority linear issue list --team DEV -s unstarted
Get team key with linear team list (DEV, SAL, etc.).
Tips
- Issue IDs follow pattern:
TEAM-123 (e.g., DEV-123)
- Use
-a self to assign to yourself
--no-interactive skips prompts for scripting
- Pipe to
jq for JSON: linear issue view DEV-123 -j | jq .title
Additional Resources
See references/api-patterns.md for advanced GraphQL API usage patterns.