@dabble/linear-cli 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/linear.mjs +967 -37
- package/claude/skills/linear-cli.md +43 -0
- package/claude/skills/product-planning.md +67 -98
- package/package.json +1 -1
|
@@ -41,18 +41,26 @@ linear login # Interactive setup
|
|
|
41
41
|
linear logout # Remove config
|
|
42
42
|
linear whoami # Show current user/team
|
|
43
43
|
|
|
44
|
+
# Roadmap (overview)
|
|
45
|
+
linear roadmap # Projects with milestones and progress
|
|
46
|
+
|
|
44
47
|
# Issues
|
|
45
48
|
linear issues --unblocked # Ready to work on (no blockers)
|
|
46
49
|
linear issues --open # All non-completed issues
|
|
50
|
+
linear issues --backlog # Backlog issues only
|
|
47
51
|
linear issues --in-progress # Issues currently in progress
|
|
48
52
|
linear issues --mine # Only your assigned issues
|
|
53
|
+
linear issues --project "Name" # Issues in a project
|
|
54
|
+
linear issues --milestone "M1" # Issues in a milestone
|
|
49
55
|
linear issues --label bug # Filter by label
|
|
50
56
|
# Flags can be combined: linear issues --in-progress --mine
|
|
51
57
|
linear issue show ISSUE-1 # Full details with parent context
|
|
52
58
|
linear issue start ISSUE-1 # Assign to you + set In Progress
|
|
53
59
|
linear issue create --title "Fix bug" --project "Phase 1" --assign --estimate M
|
|
60
|
+
linear issue create --title "Task" --milestone "Beta" --estimate S
|
|
54
61
|
linear issue create --title "Blocked task" --blocked-by ISSUE-1
|
|
55
62
|
linear issue update ISSUE-1 --state "In Progress"
|
|
63
|
+
linear issue update ISSUE-1 --milestone "Beta"
|
|
56
64
|
linear issue update ISSUE-1 --append "Notes..."
|
|
57
65
|
linear issue update ISSUE-1 --blocks ISSUE-2 # Add blocking relation
|
|
58
66
|
linear issue close ISSUE-1
|
|
@@ -65,6 +73,19 @@ linear project show "Phase 1" # Details with issues
|
|
|
65
73
|
linear project create "Name" --description "..."
|
|
66
74
|
linear project complete "Phase 1"
|
|
67
75
|
|
|
76
|
+
# Milestones
|
|
77
|
+
linear milestones --project "P1" # Milestones in a project
|
|
78
|
+
linear milestone show "Beta" # Details with issues
|
|
79
|
+
linear milestone create "Beta" --project "P1" --target-date 2024-03-01
|
|
80
|
+
|
|
81
|
+
# Reordering (drag-drop equivalent)
|
|
82
|
+
linear projects reorder "P1" "P2" "P3" # Set project order
|
|
83
|
+
linear project move "Urgent" --before "Phase 1" # Move single project
|
|
84
|
+
linear milestones reorder "Alpha" "Beta" --project "P1"
|
|
85
|
+
linear milestone move "Beta" --after "Alpha" --project "P1"
|
|
86
|
+
linear issues reorder ISSUE-1 ISSUE-2 ISSUE-3 # Set issue order
|
|
87
|
+
linear issue move ISSUE-5 --before ISSUE-1 # Move single issue
|
|
88
|
+
|
|
68
89
|
# Labels
|
|
69
90
|
linear labels # List all labels
|
|
70
91
|
linear label create "bug" --color "#FF0000"
|
|
@@ -112,6 +133,13 @@ gh pr create --title "ISSUE-5: Add caching layer"
|
|
|
112
133
|
|
|
113
134
|
## Workflow Guidelines
|
|
114
135
|
|
|
136
|
+
### Getting oriented
|
|
137
|
+
```bash
|
|
138
|
+
linear roadmap # See all projects, milestones, progress
|
|
139
|
+
linear issues --project "P1" # Issues in a specific project
|
|
140
|
+
linear issues --milestone "M1" # Issues in a specific milestone
|
|
141
|
+
```
|
|
142
|
+
|
|
115
143
|
### Starting work on an issue
|
|
116
144
|
```bash
|
|
117
145
|
linear issues --unblocked # Find what's ready
|
|
@@ -163,6 +191,21 @@ linear issue update ISSUE-2 --append "## Notes\n\nDiscovered X, trying Y approac
|
|
|
163
191
|
linear issue comment ISSUE-2 "Found the root cause in auth.ts:142"
|
|
164
192
|
```
|
|
165
193
|
|
|
194
|
+
### Organizing with milestones
|
|
195
|
+
Milestones group related issues within a project:
|
|
196
|
+
|
|
197
|
+
```bash
|
|
198
|
+
# Create milestone for a release
|
|
199
|
+
linear milestone create "Beta" --project "Phase 1" --target-date 2024-03-01
|
|
200
|
+
|
|
201
|
+
# Add issues to milestone
|
|
202
|
+
linear issue create --title "Core feature" --milestone "Beta" --estimate M
|
|
203
|
+
linear issue update ISSUE-5 --milestone "Beta"
|
|
204
|
+
|
|
205
|
+
# Reorder milestones to reflect priority
|
|
206
|
+
linear milestones reorder "Alpha" "Beta" "Stable" --project "Phase 1"
|
|
207
|
+
```
|
|
208
|
+
|
|
166
209
|
### Completing a phase
|
|
167
210
|
```bash
|
|
168
211
|
linear issue close ISSUE-7 # Close remaining issues
|
|
@@ -1,136 +1,105 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: product-planning
|
|
3
|
-
description:
|
|
4
|
-
allowed-tools: Bash(linear:*), Bash(curl:*)
|
|
3
|
+
description: Facilitate product thinking and structure work in Linear.
|
|
4
|
+
allowed-tools: Bash(linear:*), Bash(curl:*), "WebFetch(domain:*)", "WebSearch"
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
# Product Planning
|
|
7
|
+
# Product Planning
|
|
8
8
|
|
|
9
|
-
Help
|
|
9
|
+
Help users think through product ideas and structure them as actionable work in Linear.
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## Mindset
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
- Plan a new phase or milestone
|
|
18
|
-
- Think through product strategy
|
|
13
|
+
- **Thought partner, not ticket factory** - Understand before creating issues
|
|
14
|
+
- **Problem before solution** - What problem? For whom? How painful?
|
|
15
|
+
- **Default to smaller** - Cut scope ruthlessly, defer the non-essential
|
|
16
|
+
- **Incremental delivery** - Ship value early, learn, iterate
|
|
19
17
|
|
|
20
|
-
##
|
|
18
|
+
## Style
|
|
21
19
|
|
|
22
|
-
|
|
20
|
+
Like Jason Fried without swearing. Concise, simple wording. Short back-and-forth dialog over long answers. Casual.
|
|
23
21
|
|
|
24
|
-
|
|
22
|
+
## Start: Gather Context
|
|
25
23
|
|
|
26
24
|
```bash
|
|
27
|
-
#
|
|
28
|
-
linear issues --open
|
|
29
|
-
|
|
30
|
-
# See active projects/phases
|
|
31
|
-
linear projects
|
|
25
|
+
linear roadmap # Projects, milestones, progress
|
|
26
|
+
linear issues --open # Active work
|
|
32
27
|
```
|
|
33
28
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
Ask good questions to help clarify thinking:
|
|
29
|
+
Read `product.md` if it exists—contains product vision, brand, tech decisions, prior planning context.
|
|
37
30
|
|
|
38
|
-
|
|
39
|
-
- "Who benefits from this feature?"
|
|
40
|
-
- "What's the simplest version that would be valuable?"
|
|
41
|
-
- "What are the dependencies or blockers?"
|
|
42
|
-
- "How does this fit with the current phase?"
|
|
31
|
+
Offer web research when exploring new territory (market landscape, competitors, technical feasibility).
|
|
43
32
|
|
|
44
|
-
|
|
33
|
+
## Process
|
|
45
34
|
|
|
46
|
-
|
|
35
|
+
### 1. Explore the Problem
|
|
47
36
|
|
|
48
|
-
|
|
49
|
-
-
|
|
50
|
-
-
|
|
37
|
+
Before solutions:
|
|
38
|
+
- What problem? For whom? How painful?
|
|
39
|
+
- What job is the user hiring this product/feature to do?
|
|
40
|
+
- What happens if we don't solve it?
|
|
41
|
+
- What constraints? (time, tech, dependencies)
|
|
42
|
+
- What's uncertain or risky?
|
|
51
43
|
|
|
52
|
-
|
|
53
|
-
- Create a parent issue describing the overall goal
|
|
54
|
-
- Break into sub-issues, each S or M sized
|
|
55
|
-
- Identify dependencies between sub-issues
|
|
44
|
+
### 2. Design the Solution
|
|
56
45
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
46
|
+
- What approaches exist? Tradeoffs?
|
|
47
|
+
- What's the riskiest assumption to test first?
|
|
48
|
+
- What's the **simplest version** that delivers value?
|
|
49
|
+
- What can wait for later?
|
|
50
|
+
- How will users discover and use this? What's prominent vs. hidden?
|
|
60
51
|
|
|
61
|
-
|
|
62
|
-
linear issue create --title "Design auth flow" --parent ISSUE-10 --estimate S
|
|
63
|
-
linear issue create --title "Implement login endpoint" --parent ISSUE-10 --estimate M
|
|
64
|
-
linear issue create --title "Add session management" --parent ISSUE-10 --estimate M --blocked-by ISSUE-12
|
|
65
|
-
```
|
|
52
|
+
Cut scope aggressively—except for core/differentiating features where polish and detail set you apart.
|
|
66
53
|
|
|
67
|
-
###
|
|
54
|
+
### 3. Structure the Work
|
|
68
55
|
|
|
69
|
-
|
|
56
|
+
**Sizing:** XS/S/M = single issue, < 1 day. L/XL = needs breakdown.
|
|
70
57
|
|
|
71
58
|
```bash
|
|
72
|
-
#
|
|
73
|
-
linear
|
|
59
|
+
# Parent issue (the goal)
|
|
60
|
+
linear issue create --title "User auth system" --estimate L --project "Phase 2"
|
|
74
61
|
|
|
75
|
-
#
|
|
76
|
-
linear issue create --title "
|
|
62
|
+
# Sub-issues (the steps)
|
|
63
|
+
linear issue create --title "Design auth flow" --parent ISSUE-10 --estimate S
|
|
64
|
+
linear issue create --title "Implement login" --parent ISSUE-10 --estimate M
|
|
65
|
+
linear issue create --title "Add sessions" --parent ISSUE-10 --blocked-by ISSUE-11 --estimate M
|
|
77
66
|
```
|
|
78
67
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
When the developer is stuck, try these prompts:
|
|
82
|
-
|
|
83
|
-
**For new features:**
|
|
84
|
-
- "What do users complain about most?"
|
|
85
|
-
- "What manual process could we automate?"
|
|
86
|
-
- "What would make you excited to use this product?"
|
|
87
|
-
|
|
88
|
-
**For improvements:**
|
|
89
|
-
- "Where do users get confused?"
|
|
90
|
-
- "What takes too long?"
|
|
91
|
-
- "What breaks most often?"
|
|
92
|
-
|
|
93
|
-
**For prioritization:**
|
|
94
|
-
- "What would have the biggest impact with the least effort?"
|
|
95
|
-
- "What's blocking other work?"
|
|
96
|
-
- "What do users ask for most?"
|
|
97
|
-
|
|
98
|
-
## Output Format
|
|
99
|
-
|
|
100
|
-
After a planning session, summarize:
|
|
101
|
-
|
|
102
|
-
1. **New issues created** - List with IDs and estimates
|
|
103
|
-
2. **Backlog changes** - Any reprioritization or updates
|
|
104
|
-
3. **Next steps** - What to work on next
|
|
105
|
-
4. **Open questions** - Things that need more thought
|
|
106
|
-
|
|
107
|
-
## Example Session
|
|
68
|
+
### 4. Organize
|
|
108
69
|
|
|
70
|
+
**Milestones** for phases within a project:
|
|
71
|
+
```bash
|
|
72
|
+
linear milestone create "Beta" --project "Phase 2" --target-date 2024-03-01
|
|
73
|
+
linear issue create --title "Core feature" --milestone "Beta" --estimate M
|
|
109
74
|
```
|
|
110
|
-
Developer: "I want to add user notifications"
|
|
111
75
|
|
|
112
|
-
|
|
113
|
-
|
|
76
|
+
**Dependencies** make `--unblocked` useful:
|
|
77
|
+
```bash
|
|
78
|
+
linear issue create --title "Need API credentials" --blocks ISSUE-5
|
|
79
|
+
```
|
|
114
80
|
|
|
115
|
-
|
|
116
|
-
1. What triggers notifications? (events, mentions, etc.)
|
|
117
|
-
2. Where do they appear? (in-app, email, push?)
|
|
118
|
-
3. Is this blocking other work?
|
|
81
|
+
### 5. Prioritize
|
|
119
82
|
|
|
120
|
-
|
|
83
|
+
```bash
|
|
84
|
+
linear projects reorder "Phase 1" "Phase 2" "Phase 3"
|
|
85
|
+
linear milestones reorder "Alpha" "Beta" --project "Phase 2"
|
|
86
|
+
linear issue move ISSUE-5 --before ISSUE-1
|
|
87
|
+
```
|
|
121
88
|
|
|
122
|
-
|
|
123
|
-
[runs linear issue create --title "In-app notifications for issue comments" --estimate M --project "Phase 2"]
|
|
89
|
+
## Update product.md
|
|
124
90
|
|
|
125
|
-
|
|
126
|
-
|
|
91
|
+
After planning, update `product.md` with any new or refined:
|
|
92
|
+
- Product vision, problem statement, target users
|
|
93
|
+
- Brand voice or positioning
|
|
94
|
+
- Technical architecture decisions
|
|
95
|
+
- Key decisions made and rationale
|
|
96
|
+
- Deferred items and why
|
|
127
97
|
|
|
128
|
-
|
|
98
|
+
Create the file if it doesn't exist. Keep it concise.
|
|
129
99
|
|
|
130
|
-
|
|
100
|
+
## Session Summary
|
|
131
101
|
|
|
132
|
-
|
|
133
|
-
-
|
|
134
|
-
-
|
|
135
|
-
-
|
|
136
|
-
- Something specific (let them describe)
|
|
102
|
+
1. **Created** - Issues/milestones with IDs
|
|
103
|
+
2. **Decided** - Key decisions and rationale
|
|
104
|
+
3. **Deferred** - What we cut (and why)
|
|
105
|
+
4. **Next** - `linear issues --unblocked`
|