Linear CLI
for cmdhub.
Linear resources through the cmdhub CLI.
cmdhub get linear
data_object Agent Contract
Agents should start with auth/status and discovery commands, inspect schemas before composition, and treat commands marked as mutating as state-changing operations.
Output
Use human output for reading, `--json` for one object, and `--jsonl` for pipes.
Auth
Linear OAuth or API key. Used for Linear workspaces, teams, users, states, cycles, labels, projects, issues, and comments.
Refs
Prefer list/search, then short refs or piped JSONL. Use `resolve` to inspect cached refs.
Schemas
Use `linear schema` and `catalog.json` to inspect fields, flags, examples, and side effects.
Auth scopes
Linear workspace API accessterminal Command Reference
Generated from source. Global flags apply to all commands.
Global Flags
--json
bool
Emit JSON machine output--jsonl
bool
Emit JSONL records for piping--output, -o
string
Compatibility output mode: json|jsonl. Prefer --json or --jsonl--view
string = summary
View mode: summary|full--profile
string = default
Config/auth profile--config
string
Config path override--quiet, -q
bool
Suppress non-essential diagnostics--debug
bool
Enable debug diagnostics--limit
int = 50
Maximum items to emit--page-size
int = 50
Requested upstream page size--cursor
string
Continuation cursor--no-paginate
bool
Fetch only one page--version, -v
bool
Print version informationlinear attachment
Manage Linear attachment recordslinear attachment create
Create a Linear external URL attachment--issue
string
Issue ref, identifier, URL, or ID--metadata-json
string
Attachment metadata JSON object--subtitle
string
Attachment subtitle--title
string
Attachment title--url
string
External URL to attachlinear attachment delete
Delete a Linear external URL attachment--dry-run
bool
Preview without changing Linear state--yes
bool
Confirm attachment deletionlinear attachment get
Get a Linear attachmentlinear attachment list
List Linear attachment records--include-archived
bool
Include archived Linear records--issue
string
Issue ref, identifier, URL, or IDlinear attachment update
Update a Linear external URL attachment--metadata-json
string
Attachment metadata JSON object--subtitle
string
Attachment subtitle--title
string
Attachment titlelinear auth
Manage Linear authenticationlinear auth login
Authenticate with Linear--api-key
bool
authenticate with a Linear personal API key instead of OAuth--api-key-stdin
bool
read the Linear API key from stdinlinear auth logout
Remove stored Linear credentialslinear auth refresh
Refresh stored Linear credentialslinear auth status
Show Linear auth statuslinear auth whoami
Show the current Linear user and workspacelinear capabilities
Describe capabilitieslinear comment
Manage Linear comment recordslinear comment create
Create a Linear issue comment--body
string
Comment markdown body--body-file
string
Read comment body from a file--issue
string
Issue ref, identifier, URL, or IDlinear comment delete
Delete a Linear issue comment--dry-run
bool
Preview without changing Linear state--yes
bool
Confirm comment deletionlinear comment get
Get a Linear commentlinear comment update
Update a Linear issue comment--body
string
Comment markdown body--body-file
string
Read comment body from a filelinear config
Inspect local configurationlinear config explain
Explain resolved configurationlinear cycle
Manage Linear cycle recordslinear cycle get
Get a Linear cyclelinear cycle list
List Linear cycle records--include-archived
bool
Include archived Linear records--team
string
Team ref, key, name, or IDlinear doctor
Run diagnosticslinear issue
Manage Linear issue recordslinear issue archive
Archive a Linear issue--dry-run
bool
Preview without changing Linear state--yes
bool
Confirm the issue archive operationlinear issue create
Create a Linear issue--assignee
string
Assignee user ref, email, name, ID, or me--cycle
string
Cycle ref, number, name, or ID--description
string
Issue markdown description--description-file
string
Read issue markdown description from a file--due-date
string
Due date in YYYY-MM-DD form--label
stringArray = []
Issue label ref, name, or ID; repeatable--priority
string
Priority: none, urgent, high, medium, low, or 0-4--project
string
Project ref, slug, name, or ID--state
string
Workflow state ref, name, or ID--team
string
Team ref, key, name, or ID--title
string
Issue titlelinear issue get
Get a Linear issuelinear issue label
Manage labels on Linear issueslinear issue label add
Add a label on a Linear issue--label
string
Label ref, name, or IDlinear issue label remove
Remove a label on a Linear issue--label
string
Label ref, name, or IDlinear issue list
List Linear issue records--assignee
string
Assignee user ref, email, name, ID, or me--created-after
string
Only include issues created after this date or RFC3339 timestamp--creator
string
Creator user ref, email, name, ID, or me--cycle
string
Cycle ref, number, name, or ID--due-after
string
Only include issues due on or after this YYYY-MM-DD date--due-before
string
Only include issues due on or before this YYYY-MM-DD date--include-archived
bool
Include archived Linear records--label
string
Issue label ref, name, or ID--priority
string
Priority: none, urgent, high, medium, low, or 0-4--project
string
Project ref, slug, name, or ID--state
string
Workflow state ref, name, or ID--state-type
string
Workflow state type such as backlog, unstarted, started, completed, or canceled--team
string
Team ref, key, name, or ID--updated-after
string
Only include issues updated after this date or RFC3339 timestamplinear issue search
Search Linear issue records--assignee
string
Assignee user ref, email, name, ID, or me--created-after
string
Only include issues created after this date or RFC3339 timestamp--creator
string
Creator user ref, email, name, ID, or me--cycle
string
Cycle ref, number, name, or ID--due-after
string
Only include issues due on or after this YYYY-MM-DD date--due-before
string
Only include issues due on or before this YYYY-MM-DD date--include-archived
bool
Include archived Linear records--label
string
Issue label ref, name, or ID--priority
string
Priority: none, urgent, high, medium, low, or 0-4--project
string
Project ref, slug, name, or ID--query
string
Search text--state
string
Workflow state ref, name, or ID--state-type
string
Workflow state type such as backlog, unstarted, started, completed, or canceled--team
string
Team ref, key, name, or ID--updated-after
string
Only include issues updated after this date or RFC3339 timestamplinear issue unarchive
Unarchive a Linear issue--dry-run
bool
Preview without changing Linear state--yes
bool
Confirm the issue unarchive operationlinear issue update
Update a Linear issue--assignee
string
Assignee user ref, email, name, ID, or me--clear-assignee
bool
Remove issue assignee--clear-cycle
bool
Remove issue cycle--clear-due-date
bool
Remove issue due date--clear-project
bool
Remove issue project--cycle
string
Cycle ref, number, name, or ID--description
string
Issue markdown description--description-file
string
Read issue markdown description from a file--due-date
string
Due date in YYYY-MM-DD form--priority
string
Priority: none, urgent, high, medium, low, or 0-4--project
string
Project ref, slug, name, or ID--state
string
Workflow state ref, name, or ID--title
string
Issue titlelinear label
Manage Linear label recordslinear label get
Get a Linear labellinear label list
List Linear label records--include-archived
bool
Include archived Linear records--team
string
Team ref, key, name, or IDlinear login
Authenticate with Linear--api-key
bool
authenticate with a Linear personal API key instead of OAuth--api-key-stdin
bool
read the Linear API key from stdinlinear logout
Remove stored Linear credentialslinear profile
Manage provider profileslinear profile create
Create an unauthenticated provider profilelinear profile delete
Delete a local provider profilelinear profile list
List provider profileslinear profile rename
Rename a local provider profilelinear profile use
Set the default provider profilelinear project
Manage Linear project recordslinear project get
Get a Linear projectlinear project list
List Linear project records--include-archived
bool
Include archived Linear recordslinear project search
Search Linear project records--include-archived
bool
Include archived Linear records--query
string
Search textlinear resolve
Resolve a local ref, short id, or URL aliaslinear schema
Emit schema hints--in
bool
Show input schema--input
bool
Show input schema--out
bool
Show output schemalinear state
Manage Linear state recordslinear state get
Get a Linear statelinear state list
List Linear state records--include-archived
bool
Include archived Linear records--team
string
Team ref, key, name, or IDlinear team
Manage Linear team recordslinear team get
Get a Linear teamlinear team list
List Linear team records--include-archived
bool
Include archived Linear recordslinear team search
Search Linear team records--include-archived
bool
Include archived Linear records--query
string
Search textlinear user
Manage Linear user recordslinear user get
Get a Linear userlinear user list
List Linear user records--include-archived
bool
Include archived Linear recordslinear user search
Search Linear user records--include-archived
bool
Include archived Linear records--query
string
Search textlinear version
Show version informationplay_circle Live Examples
Output captured from a real workspace. Regenerate with
scripts/gen-docs.sh --update.
auth
Authenticated as kestrelphilip@gmail.com Next steps: - Issues: linear issue list --limit 10 - Teams: linear team list --limit 10 - Doctor: linear doctor - Capabilities: linear capabilities
lifecycle
linear capabilities Resources: attachment, auth, capabilities, comment, config, cycle, doctor, issue, issue_label, label, profile, project, resolve, schema, state, team, user, version Machine output: --json, --jsonl Required scopes: comments:create, issues:create, read, write Next steps: - Scopes: linear capabilities --section scopes - Schema: linear schema - Contract: linear capabilities --json - Help: linear --help
schemas
linear schemas COMMAND DIR user.list output user.search input issue.list output issue.archive output comment.create output issue.archive input issue.unarchive input comment.update input state.get output label.get input comment.get output comment.delete output cycle.get output project.list input project.search output issue_label.remove output attachment.delete output label.list input project.get input attachment.update output comment.create input auth.login output issue.update input attachment.delete input label.list output issue.list input issue.search output issue.create input auth.refresh output resolve.get output user.list input state.list output issue.get input attachment.list output capabilities.describe output issue.create output issue_label.add output comment.list input comment.list output comment.update output attachment.update input auth.status output user.get output issue.update output attachment.list input attachment.get input user.search output cycle.list output project.list output attachment.create output cycle.list input issue.search input auth.logout output team.get input label.get output cycle.get input issue.get output team.list output state.get input project.search input comment.get input issue_label.add input team.list input project.get output issue.unarchive output attachment.create input auth.whoami output team.search input state.list input attachment.get output comment.delete input doctor.run output version.get output team.search output team.get output user.get input issue_label.remove input Next steps: - Issues: linear issue list --limit 10 - Teams: linear team list --limit 10 - Doctor: linear doctor - Capabilities: linear capabilities
alt_route Composition Patterns
Bridge your ecosystem with zero middleware.
# Inspect auth state and available command schemas
linear auth status --json
linear schema
linear comment listList Linear comment records--include-archivedbool Include archived Linear records--issuestring Issue ref, identifier, URL, or ID