@kyaukyuai/linear-cli 2.7.1 → 2.8.1
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/CHANGELOG.md +20 -0
- package/README.md +41 -3
- package/npm-shrinkwrap.json +2 -2
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,26 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [2.8.1] - 2026-03-24
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- added `--dry-run` support to `issue start` so agents and scripts can preview branch naming and target state transitions before mutating Linear or local VCS state
|
|
10
|
+
|
|
11
|
+
## [2.8.0] - 2026-03-24
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- added a shared `--dry-run` contract and preview output for automation-safe write workflows
|
|
16
|
+
- added `--dry-run` support to issue, project, milestone, document, and webhook write commands
|
|
17
|
+
- added Automation Contract v2 coverage for `project list/view --json`
|
|
18
|
+
- added Automation Contract v2 coverage for `cycle list/view/current/next --json`
|
|
19
|
+
- added Automation Contract v2 coverage for `milestone list/view --json`
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
|
|
23
|
+
- structured `issue create-batch --json` partial-failure responses with created identifiers, retry hints, and failure-step metadata for safer retries
|
|
24
|
+
|
|
5
25
|
## [2.7.1] - 2026-03-23
|
|
6
26
|
|
|
7
27
|
### Added
|
package/README.md
CHANGED
|
@@ -100,15 +100,18 @@ compared to upstream, this fork adds and maintains several capabilities aimed at
|
|
|
100
100
|
- workspace-aware auth management with keyring migration and default workspace support
|
|
101
101
|
- generated AI-agent skill docs, Claude plugin metadata, npm publishing, and Homebrew tap release plumbing
|
|
102
102
|
|
|
103
|
-
## automation contract
|
|
103
|
+
## automation contract
|
|
104
104
|
|
|
105
105
|
for bot and org-wide automation use cases, `linear-cli` defines a stable JSON contract for a focused automation tier.
|
|
106
106
|
|
|
107
|
-
- in scope: `issue list/view/create/update --json`, `issue relation add/delete/list --json`, `issue comment add --json`, `team members --json`, `issue parent/children/create-batch --json`
|
|
107
|
+
- v1 in scope: `issue list/view/create/update --json`, `issue relation add/delete/list --json`, `issue comment add --json`, `team members --json`, `issue parent/children/create-batch --json`
|
|
108
|
+
- v2 additions: `project list/view --json`, `cycle list/view/current/next --json`, `milestone list/view --json`
|
|
108
109
|
- out of scope: non-JSON terminal output, `linear api`, and other `--json` commands that are not listed above
|
|
109
110
|
|
|
110
111
|
the contract fixes top-level success payload shapes and requires machine-readable failure payloads for the automation tier. see [docs/json-contracts.md](docs/json-contracts.md) for the full contract, compatibility rules, and example payloads. that guarantee also covers parser and argument validation failures when `--json` is present.
|
|
111
112
|
|
|
113
|
+
the same document also defines the shared preview contract for future `--dry-run` write commands. those commands are not all implemented yet, but the contract now fixes the expected `stdout`, `exit code`, and `--json --dry-run` envelope shape ahead of rollout.
|
|
114
|
+
|
|
112
115
|
## differences from upstream
|
|
113
116
|
|
|
114
117
|
this fork is intentionally diverging from upstream in a few ways:
|
|
@@ -176,16 +179,20 @@ linear issue list --parent ENG-100 --json # filter sub-issues of a parent issue
|
|
|
176
179
|
linear issue list -w # open issue list in web browser
|
|
177
180
|
linear issue list -a # open issue list in Linear.app
|
|
178
181
|
linear issue start # create/switch to issue branch and mark as started
|
|
182
|
+
linear issue start ENG-123 --dry-run # preview the branch and target state
|
|
179
183
|
linear issue create # create a new issue (interactive prompts)
|
|
180
184
|
linear issue create -t "title" -d "description" # create with flags
|
|
181
185
|
linear issue create -t "title" --team ENG --json # emit machine-readable created issue data
|
|
186
|
+
linear issue create -t "title" --team ENG --dry-run --json # preview the created issue payload
|
|
182
187
|
linear issue create-batch --file ./issue-batch.json --json # create a parent issue and child issues from JSON
|
|
188
|
+
linear issue create-batch --file ./issue-batch.json --dry-run --json # preview a batch without creating issues
|
|
183
189
|
linear issue create --project "My Project" --milestone "Phase 1" # create with milestone
|
|
184
190
|
linear issue update # update an issue (interactive prompts)
|
|
185
191
|
linear issue update ENG-123 --due-date 2026-03-31 # set an issue due date
|
|
186
192
|
linear issue update ENG-123 --clear-due-date # clear an issue due date
|
|
187
193
|
linear issue update ENG-123 --assignee self --json # emit machine-readable updated issue data
|
|
188
194
|
linear issue update ENG-123 --state started --comment "Work has started" # update and comment in one command
|
|
195
|
+
linear issue update ENG-123 --state started --comment "Work has started" --dry-run # preview issue updates
|
|
189
196
|
linear issue update ENG-123 --milestone "Phase 2" # set milestone on existing issue
|
|
190
197
|
linear issue delete # delete an issue
|
|
191
198
|
linear issue comment list # list comments on current issue
|
|
@@ -193,8 +200,11 @@ linear issue comment add # add a comment to current issue
|
|
|
193
200
|
linear issue comment add ENG-123 "follow-up" # add a comment with positional body
|
|
194
201
|
linear issue comment add -p <id> # reply to a specific comment
|
|
195
202
|
linear issue comment add ENG-123 --body "follow-up" --json # emit created comment data
|
|
203
|
+
linear issue comment add ENG-123 --body "follow-up" --dry-run --json # preview comment creation
|
|
196
204
|
linear issue relation add ENG-123 blocked-by ENG-100 --json # emit machine-readable relation creation data
|
|
205
|
+
linear issue relation add ENG-123 blocked-by ENG-100 --dry-run --json # preview relation creation
|
|
197
206
|
linear issue relation delete ENG-123 blocked-by ENG-100 --json # emit machine-readable relation deletion data
|
|
207
|
+
linear issue relation delete ENG-123 blocked-by ENG-100 --dry-run --json # preview relation deletion
|
|
198
208
|
linear issue relation list ENG-123 --json # emit dependency graph for an issue
|
|
199
209
|
linear issue comment update <id> # update a comment
|
|
200
210
|
linear issue commits # show all commits for an issue (jj only)
|
|
@@ -220,6 +230,8 @@ linear issue children ENG-123 --json # emit child issues for decomposition work
|
|
|
220
230
|
}
|
|
221
231
|
```
|
|
222
232
|
|
|
233
|
+
`issue create-batch` creates the parent first and then creates each child in order. If a later child fails, already created issues are not rolled back. Use `--dry-run --json` to preview the plan first. In `--json` mode, partial failures include `error.details.createdIdentifiers` and `error.details.failedStep` so automation can resume from the remaining work instead of rerunning the same batch unchanged.
|
|
234
|
+
|
|
223
235
|
### team commands
|
|
224
236
|
|
|
225
237
|
```bash
|
|
@@ -231,11 +243,26 @@ linear team create # create a new team
|
|
|
231
243
|
linear team autolinks # configure GitHub repository autolinks for Linear issues
|
|
232
244
|
```
|
|
233
245
|
|
|
246
|
+
### cycle commands
|
|
247
|
+
|
|
248
|
+
```bash
|
|
249
|
+
linear cycle list --team ENG
|
|
250
|
+
linear cycle list --team ENG --json # emit cycle summaries for automation
|
|
251
|
+
linear cycle view "Sprint 42" --team ENG --json # emit detailed cycle payload
|
|
252
|
+
linear cycle current --team ENG --json # emit active cycle or null
|
|
253
|
+
linear cycle next --team ENG --json # emit next cycle or null
|
|
254
|
+
```
|
|
255
|
+
|
|
234
256
|
### project commands
|
|
235
257
|
|
|
236
258
|
```bash
|
|
237
259
|
linear project list # list projects
|
|
238
|
-
linear project
|
|
260
|
+
linear project list --json # emit contract-stable project summaries
|
|
261
|
+
linear project view <projectIdOrSlug> # view project details
|
|
262
|
+
linear project view <projectIdOrSlug> --json # emit contract-stable project details
|
|
263
|
+
linear project create --name "Platform Refresh" --team ENG --dry-run --json # preview a project create
|
|
264
|
+
linear project update <projectIdOrSlug> --name "Platform Refresh" --dry-run # preview a project update
|
|
265
|
+
linear project delete <projectIdOrSlug> --dry-run # preview a project deletion
|
|
239
266
|
linear project label add <projectIdOrSlug> <labelNameOrId> # attach a project label
|
|
240
267
|
linear project label remove <projectIdOrSlug> <labelNameOrId> # detach a project label
|
|
241
268
|
```
|
|
@@ -244,14 +271,19 @@ linear project label remove <projectIdOrSlug> <labelNameOrId> # detach a projec
|
|
|
244
271
|
|
|
245
272
|
```bash
|
|
246
273
|
linear milestone list --project <projectId> # list milestones for a project
|
|
274
|
+
linear milestone list --project <projectId> --json # emit contract-stable milestone summaries
|
|
247
275
|
linear m list --project <projectId> # list milestones (alias)
|
|
248
276
|
linear milestone view <milestoneId> # view milestone details
|
|
277
|
+
linear milestone view <milestoneId> --json # emit contract-stable milestone details
|
|
249
278
|
linear m view <milestoneId> # view milestone (alias)
|
|
250
279
|
linear milestone create --project <projectId> --name "Q1 Goals" --target-date "2026-03-31" # create a milestone
|
|
280
|
+
linear milestone create --project <projectId> --name "Q1 Goals" --dry-run # preview a milestone create
|
|
251
281
|
linear m create --project <projectId> # create a milestone (interactive)
|
|
252
282
|
linear milestone update <milestoneId> --name "New Name" # update milestone name
|
|
283
|
+
linear milestone update <milestoneId> --name "New Name" --dry-run # preview a milestone update
|
|
253
284
|
linear m update <milestoneId> --target-date "2026-04-15" # update target date
|
|
254
285
|
linear milestone delete <milestoneId> # delete a milestone
|
|
286
|
+
linear milestone delete <milestoneId> --dry-run # preview a milestone delete
|
|
255
287
|
linear m delete <milestoneId> --force # delete without confirmation
|
|
256
288
|
```
|
|
257
289
|
|
|
@@ -278,17 +310,20 @@ linear document create --title "My Doc" --content "# Hello" # inline c
|
|
|
278
310
|
linear document create --title "Spec" --content-file ./spec.md # from file
|
|
279
311
|
linear document create --title "Doc" --project <projectId> # attach to project
|
|
280
312
|
linear document create --title "Notes" --issue TC-123 # attach to issue
|
|
313
|
+
linear document create --title "Spec" --content "# Draft" --dry-run # preview a document create
|
|
281
314
|
cat spec.md | linear document create --title "Spec" # from stdin
|
|
282
315
|
|
|
283
316
|
# update a document
|
|
284
317
|
linear document update <slug> --title "New Title" # update title
|
|
285
318
|
linear document update <slug> --content-file ./updated.md # update content
|
|
286
319
|
linear document update <slug> --edit # open in $EDITOR
|
|
320
|
+
linear document update <slug> --title "New Title" --dry-run # preview a document update
|
|
287
321
|
|
|
288
322
|
# delete a document
|
|
289
323
|
linear document delete <slug> # soft delete (move to trash)
|
|
290
324
|
linear document delete <slug> --permanent # permanent delete
|
|
291
325
|
linear document delete --bulk <slug1> <slug2> # bulk delete
|
|
326
|
+
linear document delete <slug> --dry-run # preview a document delete
|
|
292
327
|
```
|
|
293
328
|
|
|
294
329
|
### notification commands
|
|
@@ -313,8 +348,11 @@ linear webhook list
|
|
|
313
348
|
linear webhook list --team ENG
|
|
314
349
|
linear webhook view <webhookId>
|
|
315
350
|
linear webhook create --url https://example.com/linear --resource-types Issue,Comment
|
|
351
|
+
linear webhook create --url https://example.com/linear --resource-types Issue,Comment --dry-run --json
|
|
316
352
|
linear webhook update <webhookId> --disabled
|
|
353
|
+
linear webhook update <webhookId> --disabled --dry-run --json
|
|
317
354
|
linear webhook delete <webhookId> --yes
|
|
355
|
+
linear webhook delete <webhookId> --dry-run --json
|
|
318
356
|
linear webhook list --json
|
|
319
357
|
```
|
|
320
358
|
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"hasInstallScript": true,
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"name": "@kyaukyuai/linear-cli",
|
|
26
|
-
"version": "2.
|
|
26
|
+
"version": "2.8.1"
|
|
27
27
|
},
|
|
28
28
|
"node_modules/@isaacs/cliui": {
|
|
29
29
|
"engines": {
|
|
@@ -542,5 +542,5 @@
|
|
|
542
542
|
}
|
|
543
543
|
},
|
|
544
544
|
"requires": true,
|
|
545
|
-
"version": "2.
|
|
545
|
+
"version": "2.8.1"
|
|
546
546
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"artifactDownloadUrls": [
|
|
3
|
-
"https://github.com/kyaukyuai/linear-cli/releases/download/v2.
|
|
3
|
+
"https://github.com/kyaukyuai/linear-cli/releases/download/v2.8.1"
|
|
4
4
|
],
|
|
5
5
|
"bin": {
|
|
6
6
|
"linear": "run-linear.js"
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"zipExt": ".tar.xz"
|
|
86
86
|
}
|
|
87
87
|
},
|
|
88
|
-
"version": "2.
|
|
88
|
+
"version": "2.8.1",
|
|
89
89
|
"volta": {
|
|
90
90
|
"node": "18.14.1",
|
|
91
91
|
"npm": "9.5.0"
|