Skip to main content

Concepts overview

linear-cli is a thin shell interface over selected Linear GraphQL operations. The public concepts are:

ConceptMeaning in the CLI
CredentialAn API key resolved from the global flag, environment, or config file.
TeamA Linear workspace team identified by a key such as ENG. Several commands resolve that key to a UUID before querying.
IssueA work item. Reads accept TEAM-NUMBER identifiers; mutations resolve the identifier before updating.
Workflow stateA status such as Backlog, In Progress, or Done. A name can be resolved to a state UUID for issue updates.
LabelAn issue label. Create and issue mutations resolve labels by name within a team.
Project and cyclePlanning containers queried by UUID or team-scoped listing. A cycle is the sprint-like object exposed by Linear.
DocumentA workspace document that can be listed, read, or searched.
EnvelopeThe stable outer JSON object containing success, data or error, and optional pagination.

The CLI is stateless per invocation. Configuration is persisted locally, but API requests do not rely on a daemon or a persistent connection. The GraphQL query shapes and returned fields are implementation details; the envelope, command names, flags, exit codes, and documented identifier forms are the supported interface.