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.
Files changed (111) hide show
  1. package/.claude-plugin/marketplace.json +20 -0
  2. package/.claude-plugin/plugin.json +9 -0
  3. package/CHANGELOG.md +807 -0
  4. package/COVERAGE.md +495 -0
  5. package/LICENSE +21 -0
  6. package/MIGRATING.md +220 -0
  7. package/README.md +524 -0
  8. package/package.json +87 -0
  9. package/skills/linear-sdk-cli/SKILL.md +534 -0
  10. package/skills/linear-sdk-cli/references/api.md +27 -0
  11. package/skills/linear-sdk-cli/references/attachment.md +82 -0
  12. package/skills/linear-sdk-cli/references/auth.md +174 -0
  13. package/skills/linear-sdk-cli/references/commands.md +37 -0
  14. package/skills/linear-sdk-cli/references/comment.md +154 -0
  15. package/skills/linear-sdk-cli/references/completion.md +17 -0
  16. package/skills/linear-sdk-cli/references/config.md +99 -0
  17. package/skills/linear-sdk-cli/references/cycle.md +131 -0
  18. package/skills/linear-sdk-cli/references/document.md +180 -0
  19. package/skills/linear-sdk-cli/references/favorite.md +78 -0
  20. package/skills/linear-sdk-cli/references/initiative-update.md +67 -0
  21. package/skills/linear-sdk-cli/references/initiative.md +256 -0
  22. package/skills/linear-sdk-cli/references/issue.md +928 -0
  23. package/skills/linear-sdk-cli/references/label.md +112 -0
  24. package/skills/linear-sdk-cli/references/milestone.md +139 -0
  25. package/skills/linear-sdk-cli/references/notification.md +123 -0
  26. package/skills/linear-sdk-cli/references/open.md +29 -0
  27. package/skills/linear-sdk-cli/references/organization.md +99 -0
  28. package/skills/linear-sdk-cli/references/project-update.md +67 -0
  29. package/skills/linear-sdk-cli/references/project.md +234 -0
  30. package/skills/linear-sdk-cli/references/roadmap.md +150 -0
  31. package/skills/linear-sdk-cli/references/schema.md +21 -0
  32. package/skills/linear-sdk-cli/references/state.md +61 -0
  33. package/skills/linear-sdk-cli/references/team.md +227 -0
  34. package/skills/linear-sdk-cli/references/user.md +103 -0
  35. package/skills/linear-sdk-cli/references/webhook.md +151 -0
  36. package/skills/linear-sdk-cli/references/whoami.md +26 -0
  37. package/skills/linear-sdk-cli/scripts/generate-docs.ts +339 -0
  38. package/src/bin/linear.ts +97 -0
  39. package/src/cli.ts +232 -0
  40. package/src/client.ts +172 -0
  41. package/src/commands/agent-session.ts +121 -0
  42. package/src/commands/api.ts +317 -0
  43. package/src/commands/attach.ts +90 -0
  44. package/src/commands/attachment.ts +74 -0
  45. package/src/commands/comment.ts +225 -0
  46. package/src/commands/completion.ts +69 -0
  47. package/src/commands/cycle.ts +125 -0
  48. package/src/commands/discover.ts +170 -0
  49. package/src/commands/document.ts +211 -0
  50. package/src/commands/favorite.ts +72 -0
  51. package/src/commands/initiative-update.ts +47 -0
  52. package/src/commands/initiative.ts +261 -0
  53. package/src/commands/issue.ts +1263 -0
  54. package/src/commands/label.ts +119 -0
  55. package/src/commands/meta.ts +534 -0
  56. package/src/commands/milestone.ts +163 -0
  57. package/src/commands/notification.ts +110 -0
  58. package/src/commands/open.ts +84 -0
  59. package/src/commands/organization.ts +79 -0
  60. package/src/commands/project-update.ts +47 -0
  61. package/src/commands/project.ts +339 -0
  62. package/src/commands/roadmap.ts +131 -0
  63. package/src/commands/state.ts +58 -0
  64. package/src/commands/team.ts +243 -0
  65. package/src/commands/user.ts +107 -0
  66. package/src/commands/webhook.ts +156 -0
  67. package/src/config.ts +1236 -0
  68. package/src/context.ts +117 -0
  69. package/src/git.ts +174 -0
  70. package/src/index.ts +10 -0
  71. package/src/lib/action.ts +26 -0
  72. package/src/lib/body.ts +172 -0
  73. package/src/lib/errors.ts +195 -0
  74. package/src/lib/introspect.ts +150 -0
  75. package/src/lib/keyring.ts +270 -0
  76. package/src/lib/mutation.ts +53 -0
  77. package/src/lib/open.ts +32 -0
  78. package/src/lib/options.ts +640 -0
  79. package/src/lib/output-shapes.ts +562 -0
  80. package/src/lib/pagination.ts +145 -0
  81. package/src/lib/prompt.ts +91 -0
  82. package/src/lib/resolve.ts +596 -0
  83. package/src/lib/shape.ts +273 -0
  84. package/src/lib/status-update.ts +91 -0
  85. package/src/lib/upload.ts +329 -0
  86. package/src/output/color.ts +52 -0
  87. package/src/output/format.ts +238 -0
  88. package/src/output/markdown.ts +133 -0
  89. package/src/output/pager.ts +131 -0
  90. package/src/output/sanitize.ts +76 -0
  91. package/src/output/table.ts +198 -0
  92. package/src/services/agent-session.ts +289 -0
  93. package/src/services/attachment.ts +198 -0
  94. package/src/services/comment.ts +262 -0
  95. package/src/services/cycle.ts +224 -0
  96. package/src/services/document.ts +357 -0
  97. package/src/services/favorite.ts +147 -0
  98. package/src/services/initiative-update.ts +59 -0
  99. package/src/services/initiative.ts +449 -0
  100. package/src/services/issue.ts +1153 -0
  101. package/src/services/label.ts +193 -0
  102. package/src/services/milestone.ts +262 -0
  103. package/src/services/notification.ts +190 -0
  104. package/src/services/organization.ts +144 -0
  105. package/src/services/project-update.ts +36 -0
  106. package/src/services/project.ts +494 -0
  107. package/src/services/roadmap.ts +177 -0
  108. package/src/services/state.ts +127 -0
  109. package/src/services/team.ts +386 -0
  110. package/src/services/user.ts +137 -0
  111. package/src/services/webhook.ts +203 -0
@@ -0,0 +1,180 @@
1
+ # linear document
2
+
3
+ > Work with documents
4
+
5
+ Group alias: `doc`
6
+
7
+ _Generated from `linear commands --json`. `linear document --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 document`
12
+
13
+ Work with documents
14
+
15
+ Aliases: `doc`
16
+
17
+ ```
18
+ linear document [options]
19
+ ```
20
+
21
+ **Output (`--json`)**: a bare object — runs `document view` by default
22
+
23
+ ```text
24
+ project: {id: string, name: string} | null
25
+ issue: {id: string, identifier: string} | null
26
+ initiative: {id: string, name: string} | null
27
+ team: {id: string, key: string, name: string} | null
28
+ cycle: {id: string, number: number, name: string | null} | null
29
+ release: {id: string, name: string, version: string | null} | null
30
+ id: string
31
+ title: string
32
+ content: string | null
33
+ url: string
34
+ slugId: string
35
+ icon: string | null
36
+ color: string | null
37
+ createdAt: string
38
+ updatedAt: string
39
+ creator: {id: string, displayName: string} | null
40
+ ```
41
+
42
+ ### `linear document create`
43
+
44
+ Create a new document, attached to one target (--project, --issue, --initiative, --team, --cycle, or --release; default: the configured team)
45
+
46
+ Aliases: `new`
47
+
48
+ ```
49
+ linear document create [options]
50
+ ```
51
+
52
+ | Option | Description |
53
+ | ----------------------- | ------------------------------------------------------------------------------ |
54
+ | `--title <title>` | document title |
55
+ | `--content <text>` | document content (markdown body) |
56
+ | `--content-file <path>` | read content from a file ('-' = stdin) |
57
+ | `-p, --project <name>` | attach to a project (name or id) |
58
+ | `--issue <id>` | attach to an issue (identifier or id) |
59
+ | `--initiative <name>` | attach to an initiative (name or id) |
60
+ | `--cycle <n>` | attach to a cycle (number, name, id, or 'current'; team from --team or config) |
61
+ | `--release <name>` | attach to a release (name, version, or id) |
62
+
63
+ **Output (`--json`)**: a receipt object
64
+
65
+ ```text
66
+ id: string
67
+ title: string
68
+ url: string
69
+ ```
70
+
71
+ ### `linear document delete`
72
+
73
+ Delete (trash) a document
74
+
75
+ Aliases: `rm`
76
+
77
+ ```
78
+ linear document delete [options] <id>
79
+ ```
80
+
81
+ **Output (`--json`)**: a receipt object
82
+
83
+ ```text
84
+ id: string
85
+ title: string
86
+ deleted: boolean
87
+ ```
88
+
89
+ ### `linear document list`
90
+
91
+ List workspace documents (optionally only those attached to one target)
92
+
93
+ Aliases: `ls`
94
+
95
+ ```
96
+ linear document list [options]
97
+ ```
98
+
99
+ | Option | Description |
100
+ | ---------------------- | ----------------------------------------------------------------------------------------------- |
101
+ | `-p, --project <name>` | only documents attached to a project (name or id) |
102
+ | `--issue <id>` | only documents attached to an issue (identifier or id) |
103
+ | `--initiative <name>` | only documents attached to an initiative (name or id) |
104
+ | `--cycle <n>` | only documents attached to a cycle (number, name, id, or 'current'; team from --team or config) |
105
+ | `--release <name>` | only documents attached to a release (name, version, or id) |
106
+
107
+ **Output (`--json`)**: a bare array of objects
108
+
109
+ ```text
110
+ project: {id: string, name: string} | null
111
+ issue: {id: string, identifier: string} | null
112
+ initiative: {id: string, name: string} | null
113
+ team: {id: string, key: string, name: string} | null
114
+ cycle: {id: string, number: number, name: string | null} | null
115
+ release: {id: string, name: string, version: string | null} | null
116
+ id: string
117
+ title: string
118
+ url: string
119
+ updatedAt: string
120
+ ```
121
+
122
+ ### `linear document update`
123
+
124
+ Update a document's title or content, or re-point it to another target
125
+
126
+ Aliases: `edit`
127
+
128
+ ```
129
+ linear document update [options] <id>
130
+ ```
131
+
132
+ | Option | Description |
133
+ | ----------------------- | -------------------------------------------------------------------------------- |
134
+ | `--title <title>` | new title |
135
+ | `--content <text>` | new content (markdown body) |
136
+ | `--content-file <path>` | read content from a file ('-' = stdin) |
137
+ | `-p, --project <name>` | re-point to a project (name or id) |
138
+ | `--issue <id>` | re-point to an issue (identifier or id) |
139
+ | `--initiative <name>` | re-point to an initiative (name or id) |
140
+ | `--cycle <n>` | re-point to a cycle (number, name, id, or 'current'; team from --team or config) |
141
+ | `--release <name>` | re-point to a release (name, version, or id) |
142
+
143
+ **Output (`--json`)**: a receipt object
144
+
145
+ ```text
146
+ id: string
147
+ title: string
148
+ url: string
149
+ ```
150
+
151
+ ### `linear document view`
152
+
153
+ Show a document, including its markdown content
154
+
155
+ Aliases: `show`
156
+
157
+ ```
158
+ linear document view [options] <id>
159
+ ```
160
+
161
+ **Output (`--json`)**: a bare object
162
+
163
+ ```text
164
+ project: {id: string, name: string} | null
165
+ issue: {id: string, identifier: string} | null
166
+ initiative: {id: string, name: string} | null
167
+ team: {id: string, key: string, name: string} | null
168
+ cycle: {id: string, number: number, name: string | null} | null
169
+ release: {id: string, name: string, version: string | null} | null
170
+ id: string
171
+ title: string
172
+ content: string | null
173
+ url: string
174
+ slugId: string
175
+ icon: string | null
176
+ color: string | null
177
+ createdAt: string
178
+ updatedAt: string
179
+ creator: {id: string, displayName: string} | null
180
+ ```
@@ -0,0 +1,78 @@
1
+ # linear favorite
2
+
3
+ > Manage your favorites
4
+
5
+ Group alias: `fav`
6
+
7
+ _Generated from `linear commands --json`. `linear favorite --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 favorite`
12
+
13
+ Manage your favorites
14
+
15
+ Aliases: `fav`
16
+
17
+ ```
18
+ linear favorite [options]
19
+ ```
20
+
21
+ ### `linear favorite add`
22
+
23
+ Favorite an issue, project, or document (exactly one)
24
+
25
+ Aliases: `new`
26
+
27
+ ```
28
+ linear favorite add [options]
29
+ ```
30
+
31
+ | Option | Description |
32
+ | ---------------------- | ------------------------------------- |
33
+ | `--issue <id>` | issue id or identifier (e.g. TES-123) |
34
+ | `--project <id\|name>` | project name or id |
35
+ | `--document <id>` | document id (UUID) |
36
+
37
+ **Output (`--json`)**: a receipt object
38
+
39
+ ```text
40
+ id: string
41
+ type: string
42
+ ```
43
+
44
+ ### `linear favorite list`
45
+
46
+ List your favorites
47
+
48
+ Aliases: `ls`
49
+
50
+ ```
51
+ linear favorite list [options]
52
+ ```
53
+
54
+ **Output (`--json`)**: a bare array of objects
55
+
56
+ ```text
57
+ id: string
58
+ type: string
59
+ name: string
60
+ url: string | null
61
+ ```
62
+
63
+ ### `linear favorite remove`
64
+
65
+ Remove a favorite by id
66
+
67
+ Aliases: `rm`
68
+
69
+ ```
70
+ linear favorite remove [options] <favoriteId>
71
+ ```
72
+
73
+ **Output (`--json`)**: a receipt object
74
+
75
+ ```text
76
+ id: string
77
+ removed: boolean
78
+ ```
@@ -0,0 +1,67 @@
1
+ # linear initiative-update
2
+
3
+ > Post and list initiative status updates
4
+
5
+ Group alias: `iu`
6
+
7
+ _Generated from `linear commands --json`. `linear initiative-update --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 initiative-update`
12
+
13
+ Post and list initiative status updates
14
+
15
+ Aliases: `iu`
16
+
17
+ ```
18
+ linear initiative-update [options]
19
+ ```
20
+
21
+ ### `linear initiative-update create`
22
+
23
+ Post a status update on an initiative (by name or id)
24
+
25
+ Aliases: `new`
26
+
27
+ ```
28
+ linear initiative-update create [options] <initiative>
29
+ ```
30
+
31
+ | Option | Description |
32
+ | -------------------- | ----------------------------------- |
33
+ | `--body <text>` | update body (markdown) |
34
+ | `--body-file <path>` | read body from a file ('-' = stdin) |
35
+ | `--editor` | compose the body in $EDITOR |
36
+ | `--health <state>` | status health |
37
+
38
+ **Output (`--json`)**: a receipt object
39
+
40
+ ```text
41
+ id: string
42
+ createdAt: string
43
+ user: string
44
+ body: string
45
+ health: string | null
46
+ url: string
47
+ ```
48
+
49
+ ### `linear initiative-update list`
50
+
51
+ List an initiative's status updates
52
+
53
+ Aliases: `ls`
54
+
55
+ ```
56
+ linear initiative-update list [options] <initiative>
57
+ ```
58
+
59
+ **Output (`--json`)**: a bare array of objects
60
+
61
+ ```text
62
+ id: string
63
+ createdAt: string
64
+ user: string
65
+ body: string
66
+ health: string | null
67
+ ```
@@ -0,0 +1,256 @@
1
+ # linear initiative
2
+
3
+ > Work with initiatives
4
+
5
+ Group alias: `init`
6
+
7
+ _Generated from `linear commands --json`. `linear initiative --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 initiative`
12
+
13
+ Work with initiatives
14
+
15
+ Aliases: `init`
16
+
17
+ ```
18
+ linear initiative [options]
19
+ ```
20
+
21
+ **Output (`--json`)**: a bare object — runs `initiative view` by default
22
+
23
+ ```text
24
+ id: string
25
+ name: string
26
+ description: string | null
27
+ status: string | null
28
+ priority: number
29
+ priorityLabel: string
30
+ labels: string[]
31
+ health: string | null
32
+ targetDate: string | null
33
+ color: string | null
34
+ icon: string | null
35
+ url: string
36
+ createdAt: string
37
+ updatedAt: string
38
+ startedAt: string | null
39
+ completedAt: string | null
40
+ archivedAt: string | null
41
+ owner: string | null
42
+ creator: string | null
43
+ projects: Array<{id: string, name: string, status: {name: string, type: string} | null}>
44
+ ```
45
+
46
+ ### `linear initiative add-project`
47
+
48
+ Link a project to an initiative
49
+
50
+ ```
51
+ linear initiative add-project [options] <initiative> <project>
52
+ ```
53
+
54
+ | Option | Description |
55
+ | ------------------ | ---------------------------------------- |
56
+ | `--sort-order <n>` | position among the initiative's projects |
57
+
58
+ **Output (`--json`)**: a receipt object
59
+
60
+ ```text
61
+ id: string
62
+ initiative: {id: string, name: string}
63
+ project: {id: string, name: string}
64
+ ```
65
+
66
+ ### `linear initiative archive`
67
+
68
+ Archive an initiative
69
+
70
+ ```
71
+ linear initiative archive [options] <id>
72
+ ```
73
+
74
+ **Output (`--json`)**: a receipt object
75
+
76
+ ```text
77
+ id: string
78
+ name: string
79
+ archived: boolean
80
+ ```
81
+
82
+ ### `linear initiative create`
83
+
84
+ Create a new initiative
85
+
86
+ Aliases: `new`
87
+
88
+ ```
89
+ linear initiative create [options]
90
+ ```
91
+
92
+ | Option | Description |
93
+ | --------------------------- | ------------------------------------------------------- |
94
+ | `--name <name>` | initiative name |
95
+ | `-d, --description <text>` | initiative description |
96
+ | `--description-file <path>` | read description from a file ('-' = stdin) |
97
+ | `--target <date>` | estimated completion date (YYYY-MM-DD) |
98
+ | `--owner <who>` | initiative owner (me\|email\|name\|id) |
99
+ | `--status <name>` | status (Planned, Active, Completed, Canceled, Proposed) |
100
+ | `-P, --priority <0-4>` | priority (0 none, 1 urgent … 4 low) |
101
+ | `-l, --label <name>` | initiative label (repeatable / comma-separated) |
102
+ | `--icon <name>` | Linear icon name, capitalized (e.g. Rocket) |
103
+ | `--color <hex>` | initiative color (e.g. #5E6AD2) |
104
+
105
+ **Output (`--json`)**: a receipt object
106
+
107
+ ```text
108
+ id: string
109
+ name: string
110
+ url: string
111
+ ```
112
+
113
+ ### `linear initiative delete`
114
+
115
+ Delete (trash) an initiative
116
+
117
+ Aliases: `rm`
118
+
119
+ ```
120
+ linear initiative delete [options] <id>
121
+ ```
122
+
123
+ **Output (`--json`)**: a receipt object
124
+
125
+ ```text
126
+ id: string
127
+ name: string
128
+ deleted: boolean
129
+ ```
130
+
131
+ ### `linear initiative list`
132
+
133
+ List workspace initiatives (every status unless --status narrows)
134
+
135
+ Aliases: `ls`
136
+
137
+ ```
138
+ linear initiative list [options]
139
+ ```
140
+
141
+ | Option | Description |
142
+ | ----------------- | ----------------------------------------------------------------- |
143
+ | `--status <name>` | filter by status (Planned, Active, Completed, Canceled, Proposed) |
144
+ | `--owner <who>` | filter by owner (me\|email\|name\|id) |
145
+ | `--archived` | include archived initiatives |
146
+
147
+ **Output (`--json`)**: a bare array of objects
148
+
149
+ ```text
150
+ id: string
151
+ name: string
152
+ status: string | null
153
+ priority: number
154
+ targetDate: string | null
155
+ health: string | null
156
+ url: string
157
+ ```
158
+
159
+ ### `linear initiative remove-project`
160
+
161
+ Unlink a project from an initiative
162
+
163
+ ```
164
+ linear initiative remove-project [options] <initiative> <project>
165
+ ```
166
+
167
+ **Output (`--json`)**: a receipt object
168
+
169
+ ```text
170
+ id: string
171
+ initiative: {id: string, name: string}
172
+ project: {id: string, name: string}
173
+ removed: boolean
174
+ ```
175
+
176
+ ### `linear initiative unarchive`
177
+
178
+ Unarchive an initiative
179
+
180
+ ```
181
+ linear initiative unarchive [options] <id>
182
+ ```
183
+
184
+ **Output (`--json`)**: a receipt object
185
+
186
+ ```text
187
+ id: string
188
+ name: string
189
+ archived: boolean
190
+ ```
191
+
192
+ ### `linear initiative update`
193
+
194
+ Update an initiative
195
+
196
+ Aliases: `edit`
197
+
198
+ ```
199
+ linear initiative update [options] <id>
200
+ ```
201
+
202
+ | Option | Description |
203
+ | --------------------------- | ------------------------------------------------------- |
204
+ | `--name <name>` | new name |
205
+ | `-d, --description <text>` | new description |
206
+ | `--description-file <path>` | read description from a file ('-' = stdin) |
207
+ | `--target <date>` | estimated completion date (YYYY-MM-DD) |
208
+ | `--owner <who>` | initiative owner (me\|email\|name\|id) |
209
+ | `--status <name>` | status (Planned, Active, Completed, Canceled, Proposed) |
210
+ | `-P, --priority <0-4>` | priority (0 none, 1 urgent … 4 low) |
211
+ | `-l, --label <name>` | replace the labels (repeatable / comma-separated) |
212
+ | `--icon <name>` | Linear icon name, capitalized (e.g. Rocket) |
213
+ | `--color <hex>` | initiative color (e.g. #5E6AD2) |
214
+
215
+ **Output (`--json`)**: a receipt object
216
+
217
+ ```text
218
+ id: string
219
+ name: string
220
+ url: string
221
+ ```
222
+
223
+ ### `linear initiative view`
224
+
225
+ Show an initiative (by name or id)
226
+
227
+ Aliases: `show`
228
+
229
+ ```
230
+ linear initiative view [options] <id>
231
+ ```
232
+
233
+ **Output (`--json`)**: a bare object
234
+
235
+ ```text
236
+ id: string
237
+ name: string
238
+ description: string | null
239
+ status: string | null
240
+ priority: number
241
+ priorityLabel: string
242
+ labels: string[]
243
+ health: string | null
244
+ targetDate: string | null
245
+ color: string | null
246
+ icon: string | null
247
+ url: string
248
+ createdAt: string
249
+ updatedAt: string
250
+ startedAt: string | null
251
+ completedAt: string | null
252
+ archivedAt: string | null
253
+ owner: string | null
254
+ creator: string | null
255
+ projects: Array<{id: string, name: string, status: {name: string, type: string} | null}>
256
+ ```