You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit db504bb
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: .claude/skills/detail-bugs/SKILL.md
+16-2Lines changed: 16 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,11 @@
1
1
---
2
2
name: detail-bugs
3
-
description: Interact with Detail bugs for a repository via the CLI — list and filter bugs, inspect reports, close as resolved or dismissed, and reopen previously closed bugs.
3
+
description: Interact with Detail bugs for a repository via the CLI — list and filter bugs, inspect reports, close as resolved or dismissed, reopen previously closed bugs, and override a bug's priority.
4
4
---
5
5
6
6
# Detail Bugs
7
7
8
-
The Detail CLI exposes per-repository bugs through four subcommands: `list`, `show`, `close`, and `reopen`. This skill describes that surface so you can pick the right command for whatever the user is trying to do.
8
+
The Detail CLI exposes per-repository bugs through five subcommands: `list`, `show`, `close`, `reopen`, and `prioritize`. This skill describes that surface so you can pick the right command for whatever the user is trying to do.
9
9
10
10
## Prerequisites
11
11
@@ -28,6 +28,8 @@ Lists bugs for the inferred or specified repository.
28
28
29
29
-`--status pending|resolved|dismissed` — default `pending`; comma-separate or repeat the flag to combine (e.g. `--status resolved,dismissed`).
30
30
-`--vulns` — only security vulnerabilities.
31
+
-`--priority p1|p2|p3|none` — only bugs at these priorities; comma-separate or repeat the flag (e.g. `--priority p1,p2`). `none` selects bugs Detail never scored — most bugs found before priority scoring shipped, so prefer `--priority p1,p2,p3` over `--priority p1` when the user asks for "prioritized" bugs. Default: every priority.
32
+
-`--sort newest|oldest|priority` — default `newest`. `priority` puts the most severe first and unscored last.
31
33
-`--introduced-by <authors>` — filter by authors (comma-separated or repeated).
32
34
-`--scan-id <wr_…>` — limit to a specific scan. Workflow IDs come from `detail scans list`.
33
35
-`--since` / `--until` — accept a duration (`1d`, `24h`), an ISO date (`YYYY-MM-DD`), or an RFC3339 timestamp.
@@ -39,6 +41,8 @@ Lists bugs for the inferred or specified repository.
39
41
40
42
Shows the full report for a single bug. Reports often include a suggested fix.
41
43
44
+
Also shows `Priority` and, when Detail scored the bug, a `Rationale` explaining why. If someone has since overridden that score, an `Override` line reports what Detail originally assigned and why it was changed.
45
+
42
46
-`--format table|json` — use `json` when parsing rather than displaying.
43
47
44
48
### `detail bugs close <BUG_ID>`
@@ -53,3 +57,13 @@ Marks a bug as resolved or dismissed. The CLI prompts for `--state` interactivel
53
57
### `detail bugs reopen <BUG_ID>`
54
58
55
59
Flips a previously resolved or dismissed bug back to `pending`. Takes only the bug ID — useful when a fix is reverted or a dismissal is overturned.
60
+
61
+
### `detail bugs prioritize <BUG_ID>`
62
+
63
+
Overrides Detail's priority for a bug and records the change on its timeline. The CLI prompts for `--priority` interactively in a TTY; pass it explicitly when invoking non-interactively.
64
+
65
+
-`--priority p1|p2|p3`.
66
+
-`--comment "..."` — why the priority is changing. Worth passing: it is what a later `detail bugs show` reports as the override reason.
67
+
-`--format table|json`.
68
+
69
+
Setting the priority a bug already has is a no-op — the CLI reports "no change" rather than recording a second identical entry.
*`reopen` — Reopen a previously resolved or dismissed bug — flips it back to pending. Useful when a "fix" PR is reverted or a "won't fix" decision is overturned
119
+
*`prioritize` — Set a bug's priority, overriding Detail's own assessment
118
120
119
121
120
122
@@ -137,6 +139,16 @@ List bugs for a given repository
137
139
Possible values: `pending`, `resolved`, `dismissed`
138
140
139
141
*`--vulns` — Only show security vulnerabilities
142
+
*`--priority <PRIORITY>` — Only show bugs at these priorities — repeat the flag or comma-separate values (e.g. `--priority p1,p2`). Use `none` for bugs Detail never assigned a priority. Default: all priorities
143
+
144
+
Possible values: `p1`, `p2`, `p3`, `none`
145
+
146
+
*`--sort <SORT>` — Result ordering. `priority` puts the most severe bugs first and unprioritized bugs last
147
+
148
+
Default value: `newest`
149
+
150
+
Possible values: `newest`, `oldest`, `priority`
151
+
140
152
*`--introduced-by <INTRODUCED_BY>` — Only show bugs introduced by these authors (comma-separated or repeat flag)
141
153
*`--scan-id <SCAN_ID>` — Filter bugs to a specific scan by workflow request ID
142
154
*`--since <SINCE>` — Only show bugs created at or after this point. Accepts a duration (e.g. 1d, 24h, 30m) interpreted as "now minus this", an ISO date (YYYY-MM-DD), or an RFC3339 timestamp
@@ -220,6 +232,32 @@ Reopen a previously resolved or dismissed bug — flips it back to pending. Usef
220
232
221
233
222
234
235
+
## `detail bugs prioritize`
236
+
237
+
Set a bug's priority, overriding Detail's own assessment
Copy file name to clipboardExpand all lines: openapi.json
+154Lines changed: 154 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -72,6 +72,12 @@
72
72
},
73
73
"type": "array"
74
74
},
75
+
"priority": {
76
+
"$ref": "#/components/schemas/Priority"
77
+
},
78
+
"priorityReason": {
79
+
"$ref": "#/components/schemas/PriorityReason"
80
+
},
75
81
"repoId": {
76
82
"$ref": "#/components/schemas/RepoId"
77
83
},
@@ -180,6 +186,14 @@
180
186
],
181
187
"type": "string"
182
188
},
189
+
"BugSortOrder": {
190
+
"enum": [
191
+
"newest",
192
+
"oldest",
193
+
"priority"
194
+
],
195
+
"type": "string"
196
+
},
183
197
"BugSource": {
184
198
"enum": [
185
199
"review",
@@ -304,6 +318,37 @@
304
318
"pattern": "^org_.*",
305
319
"type": "string"
306
320
},
321
+
"Priority": {
322
+
"description": "Detail's severity assessment, most severe first: P1 (High), P2 (Medium), P3 (Low).",
323
+
"enum": [
324
+
"P1",
325
+
"P2",
326
+
"P3"
327
+
],
328
+
"type": "string"
329
+
},
330
+
"PriorityReason": {
331
+
"properties": {
332
+
"generatedPriority": {
333
+
"$ref": "#/components/schemas/Priority"
334
+
},
335
+
"isCurrent": {
336
+
"type": "boolean"
337
+
},
338
+
"overrideComment": {
339
+
"type": "string"
340
+
},
341
+
"text": {
342
+
"type": "string"
343
+
}
344
+
},
345
+
"required": [
346
+
"text",
347
+
"generatedPriority",
348
+
"isCurrent"
349
+
],
350
+
"type": "object"
351
+
},
307
352
"Repo": {
308
353
"properties": {
309
354
"fullName": {
@@ -570,6 +615,26 @@
570
615
"$ref": "#/components/schemas/BugReviewState"
571
616
}
572
617
},
618
+
{
619
+
"description": "Comma-separated priorities to include, e.g. \"P1,P2\". Use \"none\" to include bugs that were never assigned a priority. Omit to include every priority.",
620
+
"example": "P1,none",
621
+
"in": "query",
622
+
"name": "priority",
623
+
"required": false,
624
+
"schema": {
625
+
"type": "string"
626
+
}
627
+
},
628
+
{
629
+
"description": "Result ordering. `priority` puts the most severe bugs first and unprioritized bugs last.",
630
+
"in": "query",
631
+
"name": "sort",
632
+
"required": false,
633
+
"schema": {
634
+
"$ref": "#/components/schemas/BugSortOrder",
635
+
"default": "newest"
636
+
}
637
+
},
573
638
{
574
639
"in": "query",
575
640
"name": "limit",
@@ -710,6 +775,95 @@
710
775
"summary": "Get a bug"
711
776
}
712
777
},
778
+
"/public/v1/bugs/{bug_id}/priority": {
779
+
"post": {
780
+
"description": "Overrides Detail's priority for a bug and records the change on the bug's timeline. Setting the priority the bug already has is a no-op and returns no priorityChangeId.",
781
+
"operationId": "updatePublicBugPriority",
782
+
"parameters": [
783
+
{
784
+
"in": "path",
785
+
"name": "bug_id",
786
+
"required": true,
787
+
"schema": {
788
+
"$ref": "#/components/schemas/BugId"
789
+
}
790
+
}
791
+
],
792
+
"requestBody": {
793
+
"content": {
794
+
"application/json": {
795
+
"schema": {
796
+
"properties": {
797
+
"comment": {
798
+
"description": "Why the priority is being changed.",
799
+
"maxLength": 2000,
800
+
"type": "string"
801
+
},
802
+
"priority": {
803
+
"$ref": "#/components/schemas/Priority"
804
+
}
805
+
},
806
+
"required": [
807
+
"priority"
808
+
],
809
+
"type": "object"
810
+
}
811
+
}
812
+
},
813
+
"required": true
814
+
},
815
+
"responses": {
816
+
"200": {
817
+
"content": {
818
+
"application/json": {
819
+
"schema": {
820
+
"properties": {
821
+
"priority": {
822
+
"$ref": "#/components/schemas/Priority"
823
+
},
824
+
"priorityChangeId": {
825
+
"pattern": "^bfrpc_.*",
826
+
"type": "string"
827
+
}
828
+
},
829
+
"required": [
830
+
"priority"
831
+
],
832
+
"type": "object"
833
+
}
834
+
}
835
+
},
836
+
"description": "OK"
837
+
},
838
+
"4XX": {
839
+
"content": {
840
+
"application/json": {
841
+
"schema": {
842
+
"$ref": "#/components/schemas/ApiError"
843
+
}
844
+
}
845
+
},
846
+
"description": "Client error"
847
+
},
848
+
"5XX": {
849
+
"content": {
850
+
"application/json": {
851
+
"schema": {
852
+
"$ref": "#/components/schemas/ApiError"
853
+
}
854
+
}
855
+
},
856
+
"description": "Server error"
857
+
}
858
+
},
859
+
"security": [
860
+
{
861
+
"BearerAuth": []
862
+
}
863
+
],
864
+
"summary": "Set a bug's priority"
865
+
}
866
+
},
713
867
"/public/v1/bugs/{bug_id}/review": {
714
868
"post": {
715
869
"description": "Creates or updates a review on a bug (resolve, dismiss, or reopen).",
0 commit comments