Resource commands
Teams and users
linear-cli team list [--limit N] [--cursor CURSOR]
linear-cli team get ENG
linear-cli user list [--limit N] [--cursor CURSOR]
linear-cli user get USER-ID
linear-cli user me
Team and user list limits default to 50 and accept the previous response's pagination.endCursor. team get takes a team key. user get takes a Linear user ID. user me is an alias for auth whoami.
Workflow states and labels
linear-cli status list --team ENG
linear-cli status get STATE-ID
linear-cli label list [--team ENG] [--limit N]
linear-cli label create --name "Bug" [--team ENG] [--color "#ff0000"]
status list requires --team and returns state IDs, names, types, positions, colors, descriptions, and team data. label create requires --name; --color is a hex color and --team scopes the label. label list defaults to 50 but exposes no cursor flag even though its response includes page information.
Projects and cycles
linear-cli project list [--team ENG] [--limit N] [--cursor CURSOR]
linear-cli project get PROJECT-ID
linear-cli project create --name "Q2 Roadmap" [--team ENG] [--description TEXT|--description-file PATH]
linear-cli project update PROJECT-ID [--name TEXT] [--description TEXT] [--state planned|started|paused|completed|cancelled]
linear-cli cycle list --team ENG [--limit N] [--cursor CURSOR]
linear-cli cycle get CYCLE-ID
Project list defaults to 50; cycle list defaults to 20. Project creation requires --name and a team, either from --team or default_team. Project update requires at least one field. Cycle list requires --team and returns cycle progress, dates, scope, history, and team data; cycle get also includes issues.
Documents
linear-cli doc list [--limit N] [--cursor CURSOR]
linear-cli doc get DOC-ID
linear-cli doc search "onboarding" [--limit N]
Both document list and search default to 20. doc list accepts a cursor; doc search does not. Document get and list expose content, project, creator, color/icon, slug, and timestamps according to the command.