lin

Linear CLI for humans and LLMs

Language
Go
Version
0.13.0
License
MIT
Category
CLI Tool

A modern CLI for Linear issue tracking that prioritizes structured JSON output and LLM-optimized interaction. It provides comprehensive access to Linear's project management features as a zero-dependency single binary.

Features

01

Structured JSON output — all output to stdout, errors to stderr

02

LLM-optimized docs via lin usage (under 1,000 tokens)

03

Zero runtime dependencies — single compiled binary

04

Smart ID handling — accepts issue keys, UUIDs, URL fragments, team names

05

Full Linear API coverage: issues, projects, documents, cycles, teams, users

06

Threaded comments with file attachments

07

Multi-workspace support with named aliases

08

macOS Keychain integration for API key storage

Install

Homebrew

>_
$ brew install shhac/tap/lin

AI Agent Skill

>_
$ npx skills add shhac/lin

GitHub Release (macOS)

>_
$ curl -L https://github.com/shhac/lin/releases/latest/download/lin-darwin-arm64.tar.gz | tar xz

Build from Source

>_
$ git clone https://github.com/shhac/lin.git && cd lin && go build -o lin .

Getting Started

lin requires a Linear API key to authenticate. Generate a personal key from your Linear workspace settings.

01 · Generate an API key

Go to Linear Settings > Account > Security > Personal API Keys and create a new key.

02 · Authenticate

>_
$ lin auth login lin_api_...

The key is stored in macOS Keychain when available. For CI or agent use, set LINEAR_API_KEY as an environment variable instead.

03 · Verify access

>_
$ lin auth status

Usage

>_ Search issues
$ lin issue search "auth bug"
>_ List filtered issues
$ lin issue list --team ENG --status "In Progress"
>_ Create an issue
$ lin issue new "Fix login redirect" --team ENG --priority high
>_ Add a comment with file
$ lin issue comment new ENG-123 "See attached" --file ./screenshot.png