linear-sdk-cli 0.1.0
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/.claude-plugin/marketplace.json +20 -0
- package/.claude-plugin/plugin.json +9 -0
- package/CHANGELOG.md +807 -0
- package/COVERAGE.md +495 -0
- package/LICENSE +21 -0
- package/MIGRATING.md +220 -0
- package/README.md +524 -0
- package/package.json +87 -0
- package/skills/linear-sdk-cli/SKILL.md +534 -0
- package/skills/linear-sdk-cli/references/api.md +27 -0
- package/skills/linear-sdk-cli/references/attachment.md +82 -0
- package/skills/linear-sdk-cli/references/auth.md +174 -0
- package/skills/linear-sdk-cli/references/commands.md +37 -0
- package/skills/linear-sdk-cli/references/comment.md +154 -0
- package/skills/linear-sdk-cli/references/completion.md +17 -0
- package/skills/linear-sdk-cli/references/config.md +99 -0
- package/skills/linear-sdk-cli/references/cycle.md +131 -0
- package/skills/linear-sdk-cli/references/document.md +180 -0
- package/skills/linear-sdk-cli/references/favorite.md +78 -0
- package/skills/linear-sdk-cli/references/initiative-update.md +67 -0
- package/skills/linear-sdk-cli/references/initiative.md +256 -0
- package/skills/linear-sdk-cli/references/issue.md +928 -0
- package/skills/linear-sdk-cli/references/label.md +112 -0
- package/skills/linear-sdk-cli/references/milestone.md +139 -0
- package/skills/linear-sdk-cli/references/notification.md +123 -0
- package/skills/linear-sdk-cli/references/open.md +29 -0
- package/skills/linear-sdk-cli/references/organization.md +99 -0
- package/skills/linear-sdk-cli/references/project-update.md +67 -0
- package/skills/linear-sdk-cli/references/project.md +234 -0
- package/skills/linear-sdk-cli/references/roadmap.md +150 -0
- package/skills/linear-sdk-cli/references/schema.md +21 -0
- package/skills/linear-sdk-cli/references/state.md +61 -0
- package/skills/linear-sdk-cli/references/team.md +227 -0
- package/skills/linear-sdk-cli/references/user.md +103 -0
- package/skills/linear-sdk-cli/references/webhook.md +151 -0
- package/skills/linear-sdk-cli/references/whoami.md +26 -0
- package/skills/linear-sdk-cli/scripts/generate-docs.ts +339 -0
- package/src/bin/linear.ts +97 -0
- package/src/cli.ts +232 -0
- package/src/client.ts +172 -0
- package/src/commands/agent-session.ts +121 -0
- package/src/commands/api.ts +317 -0
- package/src/commands/attach.ts +90 -0
- package/src/commands/attachment.ts +74 -0
- package/src/commands/comment.ts +225 -0
- package/src/commands/completion.ts +69 -0
- package/src/commands/cycle.ts +125 -0
- package/src/commands/discover.ts +170 -0
- package/src/commands/document.ts +211 -0
- package/src/commands/favorite.ts +72 -0
- package/src/commands/initiative-update.ts +47 -0
- package/src/commands/initiative.ts +261 -0
- package/src/commands/issue.ts +1263 -0
- package/src/commands/label.ts +119 -0
- package/src/commands/meta.ts +534 -0
- package/src/commands/milestone.ts +163 -0
- package/src/commands/notification.ts +110 -0
- package/src/commands/open.ts +84 -0
- package/src/commands/organization.ts +79 -0
- package/src/commands/project-update.ts +47 -0
- package/src/commands/project.ts +339 -0
- package/src/commands/roadmap.ts +131 -0
- package/src/commands/state.ts +58 -0
- package/src/commands/team.ts +243 -0
- package/src/commands/user.ts +107 -0
- package/src/commands/webhook.ts +156 -0
- package/src/config.ts +1236 -0
- package/src/context.ts +117 -0
- package/src/git.ts +174 -0
- package/src/index.ts +10 -0
- package/src/lib/action.ts +26 -0
- package/src/lib/body.ts +172 -0
- package/src/lib/errors.ts +195 -0
- package/src/lib/introspect.ts +150 -0
- package/src/lib/keyring.ts +270 -0
- package/src/lib/mutation.ts +53 -0
- package/src/lib/open.ts +32 -0
- package/src/lib/options.ts +640 -0
- package/src/lib/output-shapes.ts +562 -0
- package/src/lib/pagination.ts +145 -0
- package/src/lib/prompt.ts +91 -0
- package/src/lib/resolve.ts +596 -0
- package/src/lib/shape.ts +273 -0
- package/src/lib/status-update.ts +91 -0
- package/src/lib/upload.ts +329 -0
- package/src/output/color.ts +52 -0
- package/src/output/format.ts +238 -0
- package/src/output/markdown.ts +133 -0
- package/src/output/pager.ts +131 -0
- package/src/output/sanitize.ts +76 -0
- package/src/output/table.ts +198 -0
- package/src/services/agent-session.ts +289 -0
- package/src/services/attachment.ts +198 -0
- package/src/services/comment.ts +262 -0
- package/src/services/cycle.ts +224 -0
- package/src/services/document.ts +357 -0
- package/src/services/favorite.ts +147 -0
- package/src/services/initiative-update.ts +59 -0
- package/src/services/initiative.ts +449 -0
- package/src/services/issue.ts +1153 -0
- package/src/services/label.ts +193 -0
- package/src/services/milestone.ts +262 -0
- package/src/services/notification.ts +190 -0
- package/src/services/organization.ts +144 -0
- package/src/services/project-update.ts +36 -0
- package/src/services/project.ts +494 -0
- package/src/services/roadmap.ts +177 -0
- package/src/services/state.ts +127 -0
- package/src/services/team.ts +386 -0
- package/src/services/user.ts +137 -0
- package/src/services/webhook.ts +203 -0
|
@@ -0,0 +1,928 @@
|
|
|
1
|
+
# linear issue
|
|
2
|
+
|
|
3
|
+
> Work with issues
|
|
4
|
+
|
|
5
|
+
Group alias: `i`
|
|
6
|
+
|
|
7
|
+
_Generated from `linear commands --json`. `linear issue --help` (or `<subcommand> --help`) is authoritative._
|
|
8
|
+
|
|
9
|
+
Every command also accepts the global flags `-j/--json`, `--no-input`, `-y/--yes`, `-q/--quiet`, `--workspace <slug>`, `--api-key <key>`, `-t/--team <key>`, `-n/--limit <n>`, `--all`, `-f/--fields <a,b,c>`, `--no-ansi` (alias `--no-color`), and `--debug`. Only command-specific options are listed below.
|
|
10
|
+
|
|
11
|
+
### `linear issue`
|
|
12
|
+
|
|
13
|
+
Work with issues
|
|
14
|
+
|
|
15
|
+
Aliases: `i`
|
|
16
|
+
|
|
17
|
+
```
|
|
18
|
+
linear issue [options]
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
**Output (`--json`)**: a bare object — runs `issue view` by default
|
|
22
|
+
|
|
23
|
+
```text
|
|
24
|
+
id: string
|
|
25
|
+
identifier: string
|
|
26
|
+
title: string
|
|
27
|
+
description: string | null
|
|
28
|
+
priority: number
|
|
29
|
+
priorityLabel: string
|
|
30
|
+
estimate: number | null
|
|
31
|
+
url: string
|
|
32
|
+
branchName: string
|
|
33
|
+
dueDate: string | null
|
|
34
|
+
createdAt: string
|
|
35
|
+
updatedAt: string
|
|
36
|
+
archivedAt: string | null
|
|
37
|
+
trashed: boolean
|
|
38
|
+
startedAt: string | null
|
|
39
|
+
completedAt: string | null
|
|
40
|
+
canceledAt: string | null
|
|
41
|
+
state: {id: string, name: string, type: string} | null
|
|
42
|
+
assignee: {id: string, displayName: string, email: string} | null
|
|
43
|
+
team: {id: string, key: string, name: string} | null
|
|
44
|
+
project: {id: string, name: string} | null
|
|
45
|
+
milestone: {id: string, name: string} | null
|
|
46
|
+
cycle: {id: string, number: number, name: string | null} | null
|
|
47
|
+
parent: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null} | null
|
|
48
|
+
children: Array<{id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}>
|
|
49
|
+
labels: Array<{id: string, name: string}>
|
|
50
|
+
subscribers: Array<{id: string, displayName: string}>
|
|
51
|
+
attachments: Array<{id: string, title: string, url: string, subtitle: string | null, sourceType: string | null, createdAt: string}>
|
|
52
|
+
documents: Array<{id: string, title: string, slugId: string, url: string, createdAt: string, updatedAt: string}>
|
|
53
|
+
relations: Array<{id: string, type: string, issue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}, relatedIssue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}}>
|
|
54
|
+
inverseRelations: Array<{id: string, type: string, issue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}, relatedIssue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}}>
|
|
55
|
+
comments: Array<{id: string, body: string, url: string, createdAt: string, editedAt: string | null, resolvedAt: string | null, parent: {id: string} | null, user: {id: string, displayName: string} | null, externalUser: {id: string, displayName: string} | null, resolvingCommentId: string | null, resolvingUser: {id: string, displayName: string} | null}>
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
With `--web`: a receipt object
|
|
59
|
+
|
|
60
|
+
```text
|
|
61
|
+
id: string
|
|
62
|
+
identifier: string
|
|
63
|
+
url: string
|
|
64
|
+
opened: boolean
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
With `--app`: a receipt object
|
|
68
|
+
|
|
69
|
+
```text
|
|
70
|
+
id: string
|
|
71
|
+
identifier: string
|
|
72
|
+
url: string
|
|
73
|
+
opened: boolean
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### `linear issue agent-session`
|
|
77
|
+
|
|
78
|
+
Inspect the agent sessions on an issue
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
linear issue agent-session [options]
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### `linear issue agent-session list`
|
|
85
|
+
|
|
86
|
+
List an issue's agent sessions (newest first)
|
|
87
|
+
|
|
88
|
+
Aliases: `ls`
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
linear issue agent-session list [options] [issue]
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
| Option | Description |
|
|
95
|
+
| ------------------- | -------------------------------------------------- |
|
|
96
|
+
| `--status <status>` | only sessions in this status |
|
|
97
|
+
| `--all-issues` | every session in the workspace, ignoring the issue |
|
|
98
|
+
|
|
99
|
+
**Output (`--json`)**: a bare array of objects
|
|
100
|
+
|
|
101
|
+
```text
|
|
102
|
+
id: string
|
|
103
|
+
status: string
|
|
104
|
+
type: string | null
|
|
105
|
+
summary: string | null
|
|
106
|
+
createdAt: string
|
|
107
|
+
startedAt: string | null
|
|
108
|
+
endedAt: string | null
|
|
109
|
+
url: string | null
|
|
110
|
+
issue: {id: string, identifier: string, title: string} | null
|
|
111
|
+
agent: {id: string, name: string, displayName: string} | null
|
|
112
|
+
creator: {id: string, name: string, displayName: string} | null
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### `linear issue agent-session view`
|
|
116
|
+
|
|
117
|
+
Show an agent session and its activity
|
|
118
|
+
|
|
119
|
+
Aliases: `show`
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
linear issue agent-session view [options] <id>
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
**Output (`--json`)**: a bare object
|
|
126
|
+
|
|
127
|
+
```text
|
|
128
|
+
id: string
|
|
129
|
+
status: string
|
|
130
|
+
type: string | null
|
|
131
|
+
summary: string | null
|
|
132
|
+
createdAt: string
|
|
133
|
+
startedAt: string | null
|
|
134
|
+
endedAt: string | null
|
|
135
|
+
url: string | null
|
|
136
|
+
issue: {id: string, identifier: string, title: string} | null
|
|
137
|
+
agent: {id: string, name: string, displayName: string} | null
|
|
138
|
+
creator: {id: string, name: string, displayName: string} | null
|
|
139
|
+
updatedAt: string
|
|
140
|
+
dismissedAt: string | null
|
|
141
|
+
dismissedBy: {id: string, name: string, displayName: string} | null
|
|
142
|
+
externalLink: string | null
|
|
143
|
+
activities: Array<{id: string, createdAt: string, type: string, body: string | null, action: string | null, parameter: string | null, result: string | null}>
|
|
144
|
+
activitiesTruncated: boolean
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### `linear issue archive`
|
|
148
|
+
|
|
149
|
+
Archive an issue
|
|
150
|
+
|
|
151
|
+
```
|
|
152
|
+
linear issue archive [options] [id]
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
| Option | Description |
|
|
156
|
+
| -------------------- | ------------------------------------------------ |
|
|
157
|
+
| `--bulk <ids>` | archive comma-separated issue ids (repeatable) |
|
|
158
|
+
| `--bulk-file <path>` | archive issue ids from a file (one per line) |
|
|
159
|
+
| `--bulk-stdin` | archive issue ids read from stdin (one per line) |
|
|
160
|
+
|
|
161
|
+
**Output (`--json`)**: a receipt object
|
|
162
|
+
|
|
163
|
+
```text
|
|
164
|
+
id: string
|
|
165
|
+
identifier: string
|
|
166
|
+
archived: boolean
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
With `--bulk`: a receipt object
|
|
170
|
+
|
|
171
|
+
```text
|
|
172
|
+
action: string
|
|
173
|
+
results: Array<{input: string, id?: string, identifier?: string, archived?: boolean, deleted?: boolean, error?: {message: string, code: string}}>
|
|
174
|
+
succeeded: number
|
|
175
|
+
failed: number
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
### `linear issue assign`
|
|
179
|
+
|
|
180
|
+
Assign an issue (use 'me', email, name, or id). Issue defaults to the branch.
|
|
181
|
+
|
|
182
|
+
```
|
|
183
|
+
linear issue assign [options] [idOrAssignee] [assignee]
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
**Output (`--json`)**: a receipt object
|
|
187
|
+
|
|
188
|
+
```text
|
|
189
|
+
id: string
|
|
190
|
+
identifier: string
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
### `linear issue attach`
|
|
194
|
+
|
|
195
|
+
Upload files and attach them to an issue (private by default)
|
|
196
|
+
|
|
197
|
+
```
|
|
198
|
+
linear issue attach [options] <issue> <file...>
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
| Option | Description |
|
|
202
|
+
| ------------------ | ----------------------------------------------------------------------------- |
|
|
203
|
+
| `--title <title>` | attachment title (single file only; default: the file name) |
|
|
204
|
+
| `--comment <body>` | also post a comment with this body embedding the files as markdown |
|
|
205
|
+
| `--public` | upload to a public, world-readable URL (raster images only; default: private) |
|
|
206
|
+
|
|
207
|
+
**Output (`--json`)**: a bare array of objects — one row per uploaded file; `comment` is on every row when --comment posted one
|
|
208
|
+
|
|
209
|
+
```text
|
|
210
|
+
id: string
|
|
211
|
+
title: string
|
|
212
|
+
url: string
|
|
213
|
+
assetUrl: string
|
|
214
|
+
contentType: string
|
|
215
|
+
size: number
|
|
216
|
+
comment?: {id: string, url: string}
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### `linear issue branch`
|
|
220
|
+
|
|
221
|
+
Print the suggested git branch name
|
|
222
|
+
|
|
223
|
+
```
|
|
224
|
+
linear issue branch [options] [id]
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**Output (`--json`)**: a receipt object
|
|
228
|
+
|
|
229
|
+
```text
|
|
230
|
+
branch: string
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### `linear issue comment`
|
|
234
|
+
|
|
235
|
+
Add a comment to an issue; on a matching branch, `issue comment "<body>"` is enough (or use the add/list/update/delete subcommands)
|
|
236
|
+
|
|
237
|
+
```
|
|
238
|
+
linear issue comment [options] [id] [body]
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
| Option | Description |
|
|
242
|
+
| -------------------- | ------------------------------------------- |
|
|
243
|
+
| `--body-file <path>` | read comment body from a file ('-' = stdin) |
|
|
244
|
+
|
|
245
|
+
**Output (`--json`)**: a receipt object — the bare form adds a comment; add/list/update/delete are subcommands
|
|
246
|
+
|
|
247
|
+
```text
|
|
248
|
+
id: string
|
|
249
|
+
issue: string
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
### `linear issue comment add`
|
|
253
|
+
|
|
254
|
+
Add a comment to an issue (images uploaded with --attach render inline)
|
|
255
|
+
|
|
256
|
+
```
|
|
257
|
+
linear issue comment add [options] <issue> [body]
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
| Option | Description |
|
|
261
|
+
| -------------------- | ----------------------------------------------------------------------------------------- |
|
|
262
|
+
| `--body-file <path>` | read comment body from a file ('-' = stdin) |
|
|
263
|
+
| `--attach <file>` | upload a file and embed it in the comment (images inline; repeatable; private by default) |
|
|
264
|
+
| `--public` | upload the attachments to public, world-readable URLs (raster images only) |
|
|
265
|
+
|
|
266
|
+
**Output (`--json`)**: a receipt object — `attachments` only with --attach
|
|
267
|
+
|
|
268
|
+
```text
|
|
269
|
+
id: string
|
|
270
|
+
issue: string
|
|
271
|
+
url: string
|
|
272
|
+
attachments?: Array<{filename: string, assetUrl: string, contentType: string, size: number}>
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
### `linear issue comment delete`
|
|
276
|
+
|
|
277
|
+
Delete a comment
|
|
278
|
+
|
|
279
|
+
```
|
|
280
|
+
linear issue comment delete [options] <commentId>
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
**Output (`--json`)**: a receipt object
|
|
284
|
+
|
|
285
|
+
```text
|
|
286
|
+
id: string
|
|
287
|
+
deleted: boolean
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
### `linear issue comment list`
|
|
291
|
+
|
|
292
|
+
List comments on an issue
|
|
293
|
+
|
|
294
|
+
```
|
|
295
|
+
linear issue comment list [options] <issue>
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
**Output (`--json`)**: a bare array of objects
|
|
299
|
+
|
|
300
|
+
```text
|
|
301
|
+
id: string
|
|
302
|
+
body: string
|
|
303
|
+
user: {id: string, displayName: string} | null
|
|
304
|
+
createdAt: string
|
|
305
|
+
editedAt: string | null
|
|
306
|
+
resolvedAt: string | null
|
|
307
|
+
parent: {id: string} | null
|
|
308
|
+
url: string
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
### `linear issue comment update`
|
|
312
|
+
|
|
313
|
+
Update a comment's body
|
|
314
|
+
|
|
315
|
+
```
|
|
316
|
+
linear issue comment update [options] <commentId> [body]
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
| Option | Description |
|
|
320
|
+
| -------------------- | --------------------------------------- |
|
|
321
|
+
| `--body-file <path>` | read new body from a file ('-' = stdin) |
|
|
322
|
+
|
|
323
|
+
**Output (`--json`)**: a receipt object
|
|
324
|
+
|
|
325
|
+
```text
|
|
326
|
+
id: string
|
|
327
|
+
url: string
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
### `linear issue comments`
|
|
331
|
+
|
|
332
|
+
List comments on an issue
|
|
333
|
+
|
|
334
|
+
```
|
|
335
|
+
linear issue comments [options] [id]
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
**Output (`--json`)**: a bare array of objects
|
|
339
|
+
|
|
340
|
+
```text
|
|
341
|
+
id: string
|
|
342
|
+
body: string
|
|
343
|
+
user: {id: string, displayName: string} | null
|
|
344
|
+
createdAt: string
|
|
345
|
+
editedAt: string | null
|
|
346
|
+
resolvedAt: string | null
|
|
347
|
+
parent: {id: string} | null
|
|
348
|
+
url: string
|
|
349
|
+
```
|
|
350
|
+
|
|
351
|
+
### `linear issue create`
|
|
352
|
+
|
|
353
|
+
Create a new issue
|
|
354
|
+
|
|
355
|
+
Aliases: `new`
|
|
356
|
+
|
|
357
|
+
```
|
|
358
|
+
linear issue create [options]
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
| Option | Description |
|
|
362
|
+
| --------------------------- | ---------------------------------------------------------------------------------------------------- |
|
|
363
|
+
| `--title <title>` | issue title |
|
|
364
|
+
| `-d, --description <text>` | issue description (body) |
|
|
365
|
+
| `--description-file <path>` | read description from a file ('-' = stdin) |
|
|
366
|
+
| `--editor` | compose the description in $EDITOR |
|
|
367
|
+
| `-a, --assignee <who>` | assignee (me\|email\|name\|id) |
|
|
368
|
+
| `-s, --state <name>` | workflow state name or type |
|
|
369
|
+
| `-P, --priority <0-4>` | priority |
|
|
370
|
+
| `-l, --label <name>` | label (repeatable / comma-separated) |
|
|
371
|
+
| `-p, --project <name>` | project name or id |
|
|
372
|
+
| `--milestone <name>` | project milestone (requires --project) |
|
|
373
|
+
| `--cycle <n>` | cycle number, name, id, or 'current' |
|
|
374
|
+
| `--estimate <n>` | estimate points |
|
|
375
|
+
| `--parent <id>` | parent issue id (the sub-issue joins the parent's project unless --project says otherwise) |
|
|
376
|
+
| `--due <date>` | due date (YYYY-MM-DD) |
|
|
377
|
+
| `--template <name\|id>` | create from an issue template (the team's or a shared one) |
|
|
378
|
+
| `--no-default-template` | do not apply the team's default issue template |
|
|
379
|
+
| `--start` | then start work: check out the branch, move to the first 'started' state (or --state), assign to you |
|
|
380
|
+
|
|
381
|
+
**Output (`--json`)**: a receipt object
|
|
382
|
+
|
|
383
|
+
```text
|
|
384
|
+
id: string
|
|
385
|
+
identifier: string
|
|
386
|
+
url: string
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
With `--start`: the same, plus:
|
|
390
|
+
|
|
391
|
+
```text
|
|
392
|
+
branch: string
|
|
393
|
+
checkedOut: boolean
|
|
394
|
+
stateChanged: boolean
|
|
395
|
+
```
|
|
396
|
+
|
|
397
|
+
### `linear issue delete`
|
|
398
|
+
|
|
399
|
+
Delete (trash) an issue
|
|
400
|
+
|
|
401
|
+
Aliases: `rm`
|
|
402
|
+
|
|
403
|
+
```
|
|
404
|
+
linear issue delete [options] [id]
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
| Option | Description |
|
|
408
|
+
| -------------------- | ----------------------------------------------- |
|
|
409
|
+
| `--bulk <ids>` | delete comma-separated issue ids (repeatable) |
|
|
410
|
+
| `--bulk-file <path>` | delete issue ids from a file (one per line) |
|
|
411
|
+
| `--bulk-stdin` | delete issue ids read from stdin (one per line) |
|
|
412
|
+
|
|
413
|
+
**Output (`--json`)**: a receipt object
|
|
414
|
+
|
|
415
|
+
```text
|
|
416
|
+
id: string
|
|
417
|
+
identifier: string
|
|
418
|
+
deleted: boolean
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
With `--bulk`: a receipt object
|
|
422
|
+
|
|
423
|
+
```text
|
|
424
|
+
action: string
|
|
425
|
+
results: Array<{input: string, id?: string, identifier?: string, archived?: boolean, deleted?: boolean, error?: {message: string, code: string}}>
|
|
426
|
+
succeeded: number
|
|
427
|
+
failed: number
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
### `linear issue describe`
|
|
431
|
+
|
|
432
|
+
Print a commit message for the issue: 'ID Title' plus Linear-issue trailers
|
|
433
|
+
|
|
434
|
+
```
|
|
435
|
+
linear issue describe [options] [id]
|
|
436
|
+
```
|
|
437
|
+
|
|
438
|
+
| Option | Description |
|
|
439
|
+
| ------------------ | --------------------------------------------------------------- |
|
|
440
|
+
| `-r, --references` | link without closing: 'References <ID>' instead of 'Fixes <ID>' |
|
|
441
|
+
|
|
442
|
+
**Output (`--json`)**: a receipt object — `trailer` is the magic-word phrase (Fixes TES-1); `message` the full commit text as printed
|
|
443
|
+
|
|
444
|
+
```text
|
|
445
|
+
identifier: string
|
|
446
|
+
title: string
|
|
447
|
+
url: string
|
|
448
|
+
trailer: string
|
|
449
|
+
message: string
|
|
450
|
+
```
|
|
451
|
+
|
|
452
|
+
### `linear issue id`
|
|
453
|
+
|
|
454
|
+
Print the current issue's identifier
|
|
455
|
+
|
|
456
|
+
```
|
|
457
|
+
linear issue id [options] [id]
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
**Output (`--json`)**: a receipt object — `id` is the identifier (TES-123), not the UUID
|
|
461
|
+
|
|
462
|
+
```text
|
|
463
|
+
id: string
|
|
464
|
+
```
|
|
465
|
+
|
|
466
|
+
### `linear issue label`
|
|
467
|
+
|
|
468
|
+
Add/remove labels on an issue
|
|
469
|
+
|
|
470
|
+
```
|
|
471
|
+
linear issue label [options] [id]
|
|
472
|
+
```
|
|
473
|
+
|
|
474
|
+
| Option | Description |
|
|
475
|
+
| ----------------- | --------------------------- |
|
|
476
|
+
| `--add <name>` | add a label (repeatable) |
|
|
477
|
+
| `--remove <name>` | remove a label (repeatable) |
|
|
478
|
+
|
|
479
|
+
**Output (`--json`)**: a receipt object
|
|
480
|
+
|
|
481
|
+
```text
|
|
482
|
+
id: string
|
|
483
|
+
identifier: string
|
|
484
|
+
```
|
|
485
|
+
|
|
486
|
+
### `linear issue list`
|
|
487
|
+
|
|
488
|
+
List issues with filters
|
|
489
|
+
|
|
490
|
+
Aliases: `ls`, `query`
|
|
491
|
+
|
|
492
|
+
```
|
|
493
|
+
linear issue list [options]
|
|
494
|
+
```
|
|
495
|
+
|
|
496
|
+
| Option | Description |
|
|
497
|
+
| ------------------------ | --------------------------------------------------------- |
|
|
498
|
+
| `-t, --team <key>` | filter by team key (repeatable; default: configured team) |
|
|
499
|
+
| `-s, --state <name>` | filter by workflow state name/type (repeatable) |
|
|
500
|
+
| `-a, --assignee <who>` | filter by assignee (me\|email\|name) |
|
|
501
|
+
| `-U, --unassigned` | only issues with no assignee |
|
|
502
|
+
| `-p, --project <name>` | filter by project |
|
|
503
|
+
| `--project-label <name>` | filter by the project's label (excludes --project) |
|
|
504
|
+
| `--milestone <name>` | filter by project milestone |
|
|
505
|
+
| `-l, --label <name>` | filter by label (repeat to narrow) |
|
|
506
|
+
| `-P, --priority <0-4>` | filter by priority |
|
|
507
|
+
| `--cycle <n>` | cycle number, name, id, or 'current' |
|
|
508
|
+
| `--created-after <date>` | only issues created at/after a date (YYYY-MM-DD) |
|
|
509
|
+
| `--updated-after <date>` | only issues updated at/after a date (YYYY-MM-DD) |
|
|
510
|
+
| `--all-teams` | search every team, ignoring the default team |
|
|
511
|
+
| `--include-archived` | include archived issues |
|
|
512
|
+
| `--query <text>` | full-text search |
|
|
513
|
+
| `--sort <field>` | sort order |
|
|
514
|
+
|
|
515
|
+
**Output (`--json`)**: a bare array of objects
|
|
516
|
+
|
|
517
|
+
```text
|
|
518
|
+
id: string
|
|
519
|
+
identifier: string
|
|
520
|
+
title: string
|
|
521
|
+
priority: number
|
|
522
|
+
priorityLabel: string
|
|
523
|
+
estimate: number | null
|
|
524
|
+
url: string
|
|
525
|
+
updatedAt: string
|
|
526
|
+
state: {name: string, type: string} | null
|
|
527
|
+
assignee: {displayName: string} | null
|
|
528
|
+
project: {name: string} | null
|
|
529
|
+
milestone: {id: string, name: string} | null
|
|
530
|
+
cycle: {id: string, number: number, name: string | null} | null
|
|
531
|
+
labels: string[]
|
|
532
|
+
archivedAt: string | null
|
|
533
|
+
trashed: boolean
|
|
534
|
+
startedAt: string | null
|
|
535
|
+
completedAt: string | null
|
|
536
|
+
canceledAt: string | null
|
|
537
|
+
```
|
|
538
|
+
|
|
539
|
+
### `linear issue mine`
|
|
540
|
+
|
|
541
|
+
List your unstarted issues (--all-states for every state)
|
|
542
|
+
|
|
543
|
+
```
|
|
544
|
+
linear issue mine [options]
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
| Option | Description |
|
|
548
|
+
| ------------------------ | --------------------------------------------------------- |
|
|
549
|
+
| `-t, --team <key>` | filter by team key (repeatable; default: configured team) |
|
|
550
|
+
| `-s, --state <name>` | filter by workflow state name/type (repeatable) |
|
|
551
|
+
| `-p, --project <name>` | filter by project |
|
|
552
|
+
| `--project-label <name>` | filter by the project's label (excludes --project) |
|
|
553
|
+
| `--milestone <name>` | filter by project milestone |
|
|
554
|
+
| `-l, --label <name>` | filter by label (repeat to narrow) |
|
|
555
|
+
| `-P, --priority <0-4>` | filter by priority |
|
|
556
|
+
| `--cycle <n>` | cycle number, name, id, or 'current' |
|
|
557
|
+
| `--created-after <date>` | only issues created at/after a date (YYYY-MM-DD) |
|
|
558
|
+
| `--updated-after <date>` | only issues updated at/after a date (YYYY-MM-DD) |
|
|
559
|
+
| `--all-teams` | search every team, ignoring the default team |
|
|
560
|
+
| `--include-archived` | include archived issues |
|
|
561
|
+
| `--query <text>` | full-text search |
|
|
562
|
+
| `--sort <field>` | sort order |
|
|
563
|
+
| `--all-states` | include every workflow state, not just unstarted |
|
|
564
|
+
|
|
565
|
+
**Output (`--json`)**: a bare array of objects
|
|
566
|
+
|
|
567
|
+
```text
|
|
568
|
+
id: string
|
|
569
|
+
identifier: string
|
|
570
|
+
title: string
|
|
571
|
+
priority: number
|
|
572
|
+
priorityLabel: string
|
|
573
|
+
estimate: number | null
|
|
574
|
+
url: string
|
|
575
|
+
updatedAt: string
|
|
576
|
+
state: {name: string, type: string} | null
|
|
577
|
+
assignee: {displayName: string} | null
|
|
578
|
+
project: {name: string} | null
|
|
579
|
+
milestone: {id: string, name: string} | null
|
|
580
|
+
cycle: {id: string, number: number, name: string | null} | null
|
|
581
|
+
labels: string[]
|
|
582
|
+
archivedAt: string | null
|
|
583
|
+
trashed: boolean
|
|
584
|
+
startedAt: string | null
|
|
585
|
+
completedAt: string | null
|
|
586
|
+
canceledAt: string | null
|
|
587
|
+
```
|
|
588
|
+
|
|
589
|
+
### `linear issue pull-request`
|
|
590
|
+
|
|
591
|
+
Create a GitHub PR for the issue via the gh CLI
|
|
592
|
+
|
|
593
|
+
Aliases: `pr`
|
|
594
|
+
|
|
595
|
+
```
|
|
596
|
+
linear issue pull-request [options] [id]
|
|
597
|
+
```
|
|
598
|
+
|
|
599
|
+
| Option | Description |
|
|
600
|
+
| ----------------- | ------------------------------------------------------ |
|
|
601
|
+
| `--base <branch>` | base branch for the PR |
|
|
602
|
+
| `--head <branch>` | head branch for the PR |
|
|
603
|
+
| `--draft` | create the PR as a draft |
|
|
604
|
+
| `--title <title>` | PR title after the issue id (default: the issue title) |
|
|
605
|
+
| `-w, --web` | open the PR creation page in the browser |
|
|
606
|
+
|
|
607
|
+
**Output (`--json`)**: a receipt object
|
|
608
|
+
|
|
609
|
+
```text
|
|
610
|
+
url: string
|
|
611
|
+
identifier: string
|
|
612
|
+
title: string
|
|
613
|
+
```
|
|
614
|
+
|
|
615
|
+
With `--web`: a receipt object
|
|
616
|
+
|
|
617
|
+
```text
|
|
618
|
+
web: boolean
|
|
619
|
+
identifier: string
|
|
620
|
+
```
|
|
621
|
+
|
|
622
|
+
### `linear issue relation`
|
|
623
|
+
|
|
624
|
+
Manage issue relations: op = add|remove|list
|
|
625
|
+
|
|
626
|
+
```
|
|
627
|
+
linear issue relation [options] <id> <op> [other]
|
|
628
|
+
```
|
|
629
|
+
|
|
630
|
+
| Option | Description |
|
|
631
|
+
| -------------- | -------------------------------- |
|
|
632
|
+
| `--blocks` | relation type: blocks |
|
|
633
|
+
| `--blocked-by` | relation type: blocked by |
|
|
634
|
+
| `--related` | relation type: related (default) |
|
|
635
|
+
| `--duplicate` | relation type: duplicate |
|
|
636
|
+
|
|
637
|
+
**Output (`--json`)**: a receipt object — for op=add|remove
|
|
638
|
+
|
|
639
|
+
```text
|
|
640
|
+
issueId: string
|
|
641
|
+
issueIdentifier: string
|
|
642
|
+
otherId: string
|
|
643
|
+
otherIdentifier: string
|
|
644
|
+
type: string
|
|
645
|
+
op: string
|
|
646
|
+
```
|
|
647
|
+
|
|
648
|
+
With `op=list`: a bare array of objects
|
|
649
|
+
|
|
650
|
+
```text
|
|
651
|
+
type: string
|
|
652
|
+
issue: string
|
|
653
|
+
title: string
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
### `linear issue search`
|
|
657
|
+
|
|
658
|
+
Full-text search across issues (scoped to the default team; --all-teams widens)
|
|
659
|
+
|
|
660
|
+
```
|
|
661
|
+
linear issue search [options] <text>
|
|
662
|
+
```
|
|
663
|
+
|
|
664
|
+
| Option | Description |
|
|
665
|
+
| ------------------------ | --------------------------------------------------------- |
|
|
666
|
+
| `-t, --team <key>` | filter by team key (repeatable; default: configured team) |
|
|
667
|
+
| `-s, --state <name>` | filter by workflow state name/type (repeatable) |
|
|
668
|
+
| `-a, --assignee <who>` | filter by assignee (me\|email\|name) |
|
|
669
|
+
| `-U, --unassigned` | only issues with no assignee |
|
|
670
|
+
| `-p, --project <name>` | filter by project |
|
|
671
|
+
| `--project-label <name>` | filter by the project's label (excludes --project) |
|
|
672
|
+
| `--milestone <name>` | filter by project milestone |
|
|
673
|
+
| `-l, --label <name>` | filter by label (repeat to narrow) |
|
|
674
|
+
| `-P, --priority <0-4>` | filter by priority |
|
|
675
|
+
| `--cycle <n>` | cycle number, name, id, or 'current' |
|
|
676
|
+
| `--created-after <date>` | only issues created at/after a date (YYYY-MM-DD) |
|
|
677
|
+
| `--updated-after <date>` | only issues updated at/after a date (YYYY-MM-DD) |
|
|
678
|
+
| `--all-teams` | search every team, ignoring the default team |
|
|
679
|
+
| `--include-archived` | include archived issues |
|
|
680
|
+
| `--search-comments` | match comment bodies as well as titles and descriptions |
|
|
681
|
+
|
|
682
|
+
**Output (`--json`)**: a bare array of objects
|
|
683
|
+
|
|
684
|
+
```text
|
|
685
|
+
id: string
|
|
686
|
+
identifier: string
|
|
687
|
+
title: string
|
|
688
|
+
priority: number
|
|
689
|
+
priorityLabel: string
|
|
690
|
+
estimate: number | null
|
|
691
|
+
url: string
|
|
692
|
+
updatedAt: string
|
|
693
|
+
state: {name: string, type: string} | null
|
|
694
|
+
assignee: {displayName: string} | null
|
|
695
|
+
project: {name: string} | null
|
|
696
|
+
milestone: {id: string, name: string} | null
|
|
697
|
+
cycle: {id: string, number: number, name: string | null} | null
|
|
698
|
+
labels: string[]
|
|
699
|
+
archivedAt: string | null
|
|
700
|
+
trashed: boolean
|
|
701
|
+
startedAt: string | null
|
|
702
|
+
completedAt: string | null
|
|
703
|
+
canceledAt: string | null
|
|
704
|
+
```
|
|
705
|
+
|
|
706
|
+
### `linear issue start`
|
|
707
|
+
|
|
708
|
+
Start work on an issue: check out its branch and move it to the first 'started' state
|
|
709
|
+
|
|
710
|
+
```
|
|
711
|
+
linear issue start [options] [id]
|
|
712
|
+
```
|
|
713
|
+
|
|
714
|
+
| Option | Description |
|
|
715
|
+
| ---------------- | ----------------------------------------------------- |
|
|
716
|
+
| `--state <name>` | move to this state instead of the first 'started' one |
|
|
717
|
+
| `--no-move` | do not change the state; only check out the branch |
|
|
718
|
+
| `--no-checkout` | do not touch git; only update state |
|
|
719
|
+
|
|
720
|
+
**Output (`--json`)**: a receipt object
|
|
721
|
+
|
|
722
|
+
```text
|
|
723
|
+
id: string
|
|
724
|
+
identifier: string
|
|
725
|
+
branch: string
|
|
726
|
+
checkedOut: boolean
|
|
727
|
+
stateChanged: boolean
|
|
728
|
+
```
|
|
729
|
+
|
|
730
|
+
### `linear issue state`
|
|
731
|
+
|
|
732
|
+
Move an issue to a workflow state. Issue defaults to the branch.
|
|
733
|
+
|
|
734
|
+
```
|
|
735
|
+
linear issue state [options] [idOrState] [state]
|
|
736
|
+
```
|
|
737
|
+
|
|
738
|
+
**Output (`--json`)**: a receipt object
|
|
739
|
+
|
|
740
|
+
```text
|
|
741
|
+
id: string
|
|
742
|
+
identifier: string
|
|
743
|
+
```
|
|
744
|
+
|
|
745
|
+
### `linear issue subscribe`
|
|
746
|
+
|
|
747
|
+
Subscribe to an issue
|
|
748
|
+
|
|
749
|
+
```
|
|
750
|
+
linear issue subscribe [options] [id]
|
|
751
|
+
```
|
|
752
|
+
|
|
753
|
+
**Output (`--json`)**: a receipt object
|
|
754
|
+
|
|
755
|
+
```text
|
|
756
|
+
id: string
|
|
757
|
+
identifier: string
|
|
758
|
+
subscribed: boolean
|
|
759
|
+
```
|
|
760
|
+
|
|
761
|
+
### `linear issue title`
|
|
762
|
+
|
|
763
|
+
Print the issue title
|
|
764
|
+
|
|
765
|
+
```
|
|
766
|
+
linear issue title [options] [id]
|
|
767
|
+
```
|
|
768
|
+
|
|
769
|
+
**Output (`--json`)**: a receipt object
|
|
770
|
+
|
|
771
|
+
```text
|
|
772
|
+
title: string
|
|
773
|
+
```
|
|
774
|
+
|
|
775
|
+
### `linear issue unarchive`
|
|
776
|
+
|
|
777
|
+
Unarchive an issue
|
|
778
|
+
|
|
779
|
+
```
|
|
780
|
+
linear issue unarchive [options] [id]
|
|
781
|
+
```
|
|
782
|
+
|
|
783
|
+
**Output (`--json`)**: a receipt object
|
|
784
|
+
|
|
785
|
+
```text
|
|
786
|
+
id: string
|
|
787
|
+
identifier: string
|
|
788
|
+
archived: boolean
|
|
789
|
+
```
|
|
790
|
+
|
|
791
|
+
### `linear issue unsubscribe`
|
|
792
|
+
|
|
793
|
+
Unsubscribe from an issue
|
|
794
|
+
|
|
795
|
+
```
|
|
796
|
+
linear issue unsubscribe [options] [id]
|
|
797
|
+
```
|
|
798
|
+
|
|
799
|
+
**Output (`--json`)**: a receipt object
|
|
800
|
+
|
|
801
|
+
```text
|
|
802
|
+
id: string
|
|
803
|
+
identifier: string
|
|
804
|
+
subscribed: boolean
|
|
805
|
+
```
|
|
806
|
+
|
|
807
|
+
### `linear issue update`
|
|
808
|
+
|
|
809
|
+
Update an issue
|
|
810
|
+
|
|
811
|
+
Aliases: `edit`
|
|
812
|
+
|
|
813
|
+
```
|
|
814
|
+
linear issue update [options] [id]
|
|
815
|
+
```
|
|
816
|
+
|
|
817
|
+
| Option | Description |
|
|
818
|
+
| --------------------------- | ------------------------------------------------------- |
|
|
819
|
+
| `--title <title>` | new title |
|
|
820
|
+
| `-d, --description <text>` | new description |
|
|
821
|
+
| `--description-file <path>` | read description from a file ('-' = stdin) |
|
|
822
|
+
| `-t, --team <key>` | move the issue to another team (changes its identifier) |
|
|
823
|
+
| `-a, --assignee <who>` | assignee (me\|email\|name\|id) |
|
|
824
|
+
| `-s, --state <name>` | workflow state name or type |
|
|
825
|
+
| `-P, --priority <0-4>` | priority |
|
|
826
|
+
| `-p, --project <name>` | project name or id |
|
|
827
|
+
| `--milestone <name>` | project milestone |
|
|
828
|
+
| `--cycle <n>` | cycle number, name, id, or 'current' |
|
|
829
|
+
| `--estimate <n>` | estimate points |
|
|
830
|
+
| `--parent <id>` | parent issue id |
|
|
831
|
+
| `--due <date>` | due date (YYYY-MM-DD) |
|
|
832
|
+
| `-l, --label <name>` | replace all labels (repeatable / comma-separated) |
|
|
833
|
+
| `--add-label <name>` | add a label (repeatable) |
|
|
834
|
+
| `--remove-label <name>` | remove a label (repeatable) |
|
|
835
|
+
| `--unassign` | clear the assignee |
|
|
836
|
+
| `--clear-cycle` | remove the issue from its cycle |
|
|
837
|
+
|
|
838
|
+
**Output (`--json`)**: a receipt object
|
|
839
|
+
|
|
840
|
+
```text
|
|
841
|
+
id: string
|
|
842
|
+
identifier: string
|
|
843
|
+
url: string
|
|
844
|
+
```
|
|
845
|
+
|
|
846
|
+
### `linear issue url`
|
|
847
|
+
|
|
848
|
+
Print the issue URL
|
|
849
|
+
|
|
850
|
+
```
|
|
851
|
+
linear issue url [options] [id]
|
|
852
|
+
```
|
|
853
|
+
|
|
854
|
+
**Output (`--json`)**: a receipt object
|
|
855
|
+
|
|
856
|
+
```text
|
|
857
|
+
url: string
|
|
858
|
+
```
|
|
859
|
+
|
|
860
|
+
### `linear issue view`
|
|
861
|
+
|
|
862
|
+
Show an issue (defaults to the current branch's issue)
|
|
863
|
+
|
|
864
|
+
```
|
|
865
|
+
linear issue view [options] [id]
|
|
866
|
+
```
|
|
867
|
+
|
|
868
|
+
| Option | Description |
|
|
869
|
+
| ------------------------- | ------------------------------------------------- |
|
|
870
|
+
| `-w, --web` | open the issue in the browser instead of printing |
|
|
871
|
+
| `--app` | open the issue in Linear.app instead of printing |
|
|
872
|
+
| `--no-comments` | exclude comments from the output |
|
|
873
|
+
| `--show-resolved-threads` | include resolved comment threads |
|
|
874
|
+
|
|
875
|
+
**Output (`--json`)**: a bare object
|
|
876
|
+
|
|
877
|
+
```text
|
|
878
|
+
id: string
|
|
879
|
+
identifier: string
|
|
880
|
+
title: string
|
|
881
|
+
description: string | null
|
|
882
|
+
priority: number
|
|
883
|
+
priorityLabel: string
|
|
884
|
+
estimate: number | null
|
|
885
|
+
url: string
|
|
886
|
+
branchName: string
|
|
887
|
+
dueDate: string | null
|
|
888
|
+
createdAt: string
|
|
889
|
+
updatedAt: string
|
|
890
|
+
archivedAt: string | null
|
|
891
|
+
trashed: boolean
|
|
892
|
+
startedAt: string | null
|
|
893
|
+
completedAt: string | null
|
|
894
|
+
canceledAt: string | null
|
|
895
|
+
state: {id: string, name: string, type: string} | null
|
|
896
|
+
assignee: {id: string, displayName: string, email: string} | null
|
|
897
|
+
team: {id: string, key: string, name: string} | null
|
|
898
|
+
project: {id: string, name: string} | null
|
|
899
|
+
milestone: {id: string, name: string} | null
|
|
900
|
+
cycle: {id: string, number: number, name: string | null} | null
|
|
901
|
+
parent: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null} | null
|
|
902
|
+
children: Array<{id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}>
|
|
903
|
+
labels: Array<{id: string, name: string}>
|
|
904
|
+
subscribers: Array<{id: string, displayName: string}>
|
|
905
|
+
attachments: Array<{id: string, title: string, url: string, subtitle: string | null, sourceType: string | null, createdAt: string}>
|
|
906
|
+
documents: Array<{id: string, title: string, slugId: string, url: string, createdAt: string, updatedAt: string}>
|
|
907
|
+
relations: Array<{id: string, type: string, issue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}, relatedIssue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}}>
|
|
908
|
+
inverseRelations: Array<{id: string, type: string, issue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}, relatedIssue: {id: string, identifier: string, title: string, state: {id: string, name: string, type: string} | null}}>
|
|
909
|
+
comments: Array<{id: string, body: string, url: string, createdAt: string, editedAt: string | null, resolvedAt: string | null, parent: {id: string} | null, user: {id: string, displayName: string} | null, externalUser: {id: string, displayName: string} | null, resolvingCommentId: string | null, resolvingUser: {id: string, displayName: string} | null}>
|
|
910
|
+
```
|
|
911
|
+
|
|
912
|
+
With `--web`: a receipt object
|
|
913
|
+
|
|
914
|
+
```text
|
|
915
|
+
id: string
|
|
916
|
+
identifier: string
|
|
917
|
+
url: string
|
|
918
|
+
opened: boolean
|
|
919
|
+
```
|
|
920
|
+
|
|
921
|
+
With `--app`: a receipt object
|
|
922
|
+
|
|
923
|
+
```text
|
|
924
|
+
id: string
|
|
925
|
+
identifier: string
|
|
926
|
+
url: string
|
|
927
|
+
opened: boolean
|
|
928
|
+
```
|