mirror of
https://github.com/schpet/linear-cli.git
synced 2026-09-14 14:26:50 +08:00
ca3b04bd19
### Summary - Add `linear cycle list` and `linear cycle view` commands for browsing team cycles - Add `--cycle` filter to `linear issue list` for filtering issues by cycle - Regenerate skill docs to include new commands ### Problem PR #150 added cycle support to issue create/update/view, but there was no way to browse cycles themselves or filter issue lists by cycle. Users had to know cycle names/numbers without being able to look them up from the CLI. See #64. ### Fix Adds a `cycle` command group (aliased `cy`) with two subcommands, following the same patterns as the existing `milestone` commands: **`cycle list`** shows all cycles for a team with number, name, dates, and status. Active cycle is highlighted in green, upcoming cycles use default color, and completed/past cycles are muted. ``` $ linear cycle list --team XXX # NAME START END STATUS 3 Sprint 3 2026-03-10 2026-03-24 Upcoming 2 Sprint 2 2026-02-24 2026-03-10 Active 1 Sprint 1 2026-02-10 2026-02-24 Completed ``` **`cycle view`** shows full cycle details including a progress indicator, description, issue breakdown by state, and first 10 issues. Accepts cycle name, number, or "active". ``` $ linear cycle view active --team XXX # Sprint 2 **Number:** 2 **Start:** 2026-02-24 **End:** 2026-03-10 **Status:** Active **Team:** MyTeam (XXX) ## Issues **Progress:** 17/50 (34%) **Total Issues:** 50 **Completed:** 17 **In Progress:** 12 **To Do:** 21 **Issues:** - XXX-412: Fix auth token refresh (In Progress) - XXX-398: Add dark mode toggle (Todo) ... ``` **`issue list --cycle`** filters the issue list to a specific cycle, reusing the existing `getCycleIdByNameOrNumber()` utility and the GraphQL `IssueFilter.cycle` field. ``` $ linear issue list --cycle active --team XXX --sort priority ◌ ID TITLE LABELS E STATE UPDATED --- XXX-101 Some task Backend, Feature - Todo 1 day ago --- XXX-102 Another task Feature - Todo 1 day ago ``` ### Why Cycles are a core part of the Linear workflow and the CLI should support browsing them. `cycle list` lets you see what's available, `cycle view` gives you sprint progress at a glance, and `--cycle` on issue list lets you scope your view to a specific sprint. ### Test Plan - Tested all three commands against a real Linear workspace with 11 cycles and 50+ issues - `cycle view` tested with active, by number, and by exact name lookup - All 220 unit/snapshot tests pass