@bussolabs/closeyourit-cli 0.0.12 → 0.0.14

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 (38) hide show
  1. package/README.md +7 -0
  2. package/dist/commands/ideas/comment-delete.d.ts +14 -0
  3. package/dist/commands/ideas/comment-delete.js +30 -0
  4. package/dist/commands/ideas/comment.d.ts +13 -0
  5. package/dist/commands/ideas/comment.js +29 -0
  6. package/dist/commands/ideas/comments.d.ts +12 -0
  7. package/dist/commands/ideas/comments.js +45 -0
  8. package/dist/commands/ideas/convert.d.ts +17 -0
  9. package/dist/commands/ideas/convert.js +48 -0
  10. package/dist/commands/ideas/create.d.ts +11 -0
  11. package/dist/commands/ideas/create.js +27 -0
  12. package/dist/commands/ideas/list.d.ts +12 -0
  13. package/dist/commands/ideas/list.js +40 -0
  14. package/dist/commands/ideas/show.d.ts +12 -0
  15. package/dist/commands/ideas/show.js +28 -0
  16. package/dist/commands/ideas/unvote.d.ts +12 -0
  17. package/dist/commands/ideas/unvote.js +24 -0
  18. package/dist/commands/ideas/vote.d.ts +12 -0
  19. package/dist/commands/ideas/vote.js +24 -0
  20. package/dist/commands/kb/ask.d.ts +10 -0
  21. package/dist/commands/kb/ask.js +45 -0
  22. package/dist/commands/kb/create.d.ts +13 -0
  23. package/dist/commands/kb/create.js +48 -0
  24. package/dist/commands/kb/delete.d.ts +12 -0
  25. package/dist/commands/kb/delete.js +25 -0
  26. package/dist/commands/kb/list.d.ts +12 -0
  27. package/dist/commands/kb/list.js +35 -0
  28. package/dist/commands/kb/search.d.ts +16 -0
  29. package/dist/commands/kb/search.js +48 -0
  30. package/dist/commands/kb/show.d.ts +9 -0
  31. package/dist/commands/kb/show.js +40 -0
  32. package/dist/commands/kb/update.d.ts +15 -0
  33. package/dist/commands/kb/update.js +53 -0
  34. package/dist/lib/knowledge.d.ts +22 -0
  35. package/dist/lib/knowledge.js +54 -0
  36. package/oclif.manifest.json +1333 -431
  37. package/opencli.json +349 -1
  38. package/package.json +7 -1
@@ -880,13 +880,18 @@
880
880
  "update.js"
881
881
  ]
882
882
  },
883
- "errors:list": {
883
+ "ideas:comment-delete": {
884
884
  "aliases": [],
885
- "args": {},
886
- "description": "List error groups for a project",
885
+ "args": {
886
+ "id": {
887
+ "description": "Idea id",
888
+ "name": "id",
889
+ "required": true
890
+ }
891
+ },
892
+ "description": "Delete a comment from an open idea (author, or with ideas.comment.delete_any)",
887
893
  "examples": [
888
- "<%= config.bin %> errors list --project acme-api",
889
- "<%= config.bin %> errors list -p acme-api --status unresolved --json"
894
+ "<%= config.bin %> ideas comment-delete <idea-id> --project acme-api --comment-id <id> --confirm"
890
895
  ],
891
896
  "flags": {
892
897
  "json": {
@@ -905,25 +910,24 @@
905
910
  "multiple": false,
906
911
  "type": "option"
907
912
  },
908
- "page": {
909
- "description": "Page number",
910
- "name": "page",
911
- "default": 1,
913
+ "comment-id": {
914
+ "description": "Comment id to delete",
915
+ "name": "comment-id",
916
+ "required": true,
912
917
  "hasDynamicHelp": false,
913
918
  "multiple": false,
914
919
  "type": "option"
915
920
  },
916
- "status": {
917
- "description": "Filter by status (e.g. unresolved, resolved, muted)",
918
- "name": "status",
919
- "hasDynamicHelp": false,
920
- "multiple": false,
921
- "type": "option"
921
+ "confirm": {
922
+ "description": "Required: confirm the irreversible deletion",
923
+ "name": "confirm",
924
+ "allowNo": false,
925
+ "type": "boolean"
922
926
  }
923
927
  },
924
928
  "hasDynamicHelp": false,
925
929
  "hiddenAliases": [],
926
- "id": "errors:list",
930
+ "id": "ideas:comment-delete",
927
931
  "pluginAlias": "@bussolabs/closeyourit-cli",
928
932
  "pluginName": "@bussolabs/closeyourit-cli",
929
933
  "pluginType": "core",
@@ -933,22 +937,22 @@
933
937
  "relativePath": [
934
938
  "dist",
935
939
  "commands",
936
- "errors",
937
- "list.js"
940
+ "ideas",
941
+ "comment-delete.js"
938
942
  ]
939
943
  },
940
- "errors:mute": {
944
+ "ideas:comment": {
941
945
  "aliases": [],
942
946
  "args": {
943
947
  "id": {
944
- "description": "Error group id",
948
+ "description": "Idea id",
945
949
  "name": "id",
946
950
  "required": true
947
951
  }
948
952
  },
949
- "description": "Mute an error group",
953
+ "description": "Add a comment to an idea (only open ideas accept comments)",
950
954
  "examples": [
951
- "<%= config.bin %> errors mute <group-id> --project acme-api"
955
+ "<%= config.bin %> ideas comment <idea-id> --project acme-api --body \"Also needed on mobile\""
952
956
  ],
953
957
  "flags": {
954
958
  "json": {
@@ -966,11 +970,19 @@
966
970
  "hasDynamicHelp": false,
967
971
  "multiple": false,
968
972
  "type": "option"
973
+ },
974
+ "body": {
975
+ "description": "Comment body",
976
+ "name": "body",
977
+ "required": true,
978
+ "hasDynamicHelp": false,
979
+ "multiple": false,
980
+ "type": "option"
969
981
  }
970
982
  },
971
983
  "hasDynamicHelp": false,
972
984
  "hiddenAliases": [],
973
- "id": "errors:mute",
985
+ "id": "ideas:comment",
974
986
  "pluginAlias": "@bussolabs/closeyourit-cli",
975
987
  "pluginName": "@bussolabs/closeyourit-cli",
976
988
  "pluginType": "core",
@@ -980,22 +992,23 @@
980
992
  "relativePath": [
981
993
  "dist",
982
994
  "commands",
983
- "errors",
984
- "mute.js"
995
+ "ideas",
996
+ "comment.js"
985
997
  ]
986
998
  },
987
- "errors:promote": {
999
+ "ideas:comments": {
988
1000
  "aliases": [],
989
1001
  "args": {
990
1002
  "id": {
991
- "description": "Error group id",
1003
+ "description": "Idea id",
992
1004
  "name": "id",
993
1005
  "required": true
994
1006
  }
995
1007
  },
996
- "description": "Promote an error group to a ticket",
1008
+ "description": "List all comments of an idea (oldest first)",
997
1009
  "examples": [
998
- "<%= config.bin %> errors promote <group-id> --project acme-api"
1010
+ "<%= config.bin %> ideas comments <idea-id> --project acme-api",
1011
+ "<%= config.bin %> ideas comments <idea-id> -p acme-api --json"
999
1012
  ],
1000
1013
  "flags": {
1001
1014
  "json": {
@@ -1017,7 +1030,7 @@
1017
1030
  },
1018
1031
  "hasDynamicHelp": false,
1019
1032
  "hiddenAliases": [],
1020
- "id": "errors:promote",
1033
+ "id": "ideas:comments",
1021
1034
  "pluginAlias": "@bussolabs/closeyourit-cli",
1022
1035
  "pluginName": "@bussolabs/closeyourit-cli",
1023
1036
  "pluginType": "core",
@@ -1027,22 +1040,23 @@
1027
1040
  "relativePath": [
1028
1041
  "dist",
1029
1042
  "commands",
1030
- "errors",
1031
- "promote.js"
1043
+ "ideas",
1044
+ "comments.js"
1032
1045
  ]
1033
1046
  },
1034
- "errors:reopen": {
1047
+ "ideas:convert": {
1035
1048
  "aliases": [],
1036
1049
  "args": {
1037
1050
  "id": {
1038
- "description": "Error group id",
1051
+ "description": "Idea id",
1039
1052
  "name": "id",
1040
1053
  "required": true
1041
1054
  }
1042
1055
  },
1043
- "description": "Reopen a resolved error group",
1056
+ "description": "Convert an idea into a ticket. Without --title/--description the server AI synthesizes the draft from the idea and its comments (may take ~30s). Author always allowed; others need ideas.convert.",
1044
1057
  "examples": [
1045
- "<%= config.bin %> errors reopen <group-id> --project acme-api"
1058
+ "<%= config.bin %> ideas convert <idea-id> --project acme-api",
1059
+ "<%= config.bin %> ideas convert <idea-id> -p acme-api --title \"Dark mode\" --description \"Full spec…\" --kind feature"
1046
1060
  ],
1047
1061
  "flags": {
1048
1062
  "json": {
@@ -1060,11 +1074,46 @@
1060
1074
  "hasDynamicHelp": false,
1061
1075
  "multiple": false,
1062
1076
  "type": "option"
1077
+ },
1078
+ "title": {
1079
+ "description": "Ticket title (skips AI when set together with --description)",
1080
+ "name": "title",
1081
+ "hasDynamicHelp": false,
1082
+ "multiple": false,
1083
+ "type": "option"
1084
+ },
1085
+ "description": {
1086
+ "description": "Ticket description (skips AI when set together with --title)",
1087
+ "name": "description",
1088
+ "hasDynamicHelp": false,
1089
+ "multiple": false,
1090
+ "type": "option"
1091
+ },
1092
+ "kind": {
1093
+ "description": "Ticket kind (default: feature if the project has a roadmap, else bug)",
1094
+ "name": "kind",
1095
+ "hasDynamicHelp": false,
1096
+ "multiple": false,
1097
+ "type": "option"
1098
+ },
1099
+ "status-id": {
1100
+ "description": "Status lookup id (default: open)",
1101
+ "name": "status-id",
1102
+ "hasDynamicHelp": false,
1103
+ "multiple": false,
1104
+ "type": "option"
1105
+ },
1106
+ "priority-id": {
1107
+ "description": "Priority lookup id (default: medium)",
1108
+ "name": "priority-id",
1109
+ "hasDynamicHelp": false,
1110
+ "multiple": false,
1111
+ "type": "option"
1063
1112
  }
1064
1113
  },
1065
1114
  "hasDynamicHelp": false,
1066
1115
  "hiddenAliases": [],
1067
- "id": "errors:reopen",
1116
+ "id": "ideas:convert",
1068
1117
  "pluginAlias": "@bussolabs/closeyourit-cli",
1069
1118
  "pluginName": "@bussolabs/closeyourit-cli",
1070
1119
  "pluginType": "core",
@@ -1074,22 +1123,143 @@
1074
1123
  "relativePath": [
1075
1124
  "dist",
1076
1125
  "commands",
1077
- "errors",
1078
- "reopen.js"
1126
+ "ideas",
1127
+ "convert.js"
1079
1128
  ]
1080
1129
  },
1081
- "errors:resolve": {
1130
+ "ideas:create": {
1131
+ "aliases": [],
1132
+ "args": {},
1133
+ "description": "Propose an idea for a project",
1134
+ "examples": [
1135
+ "<%= config.bin %> ideas create --project acme-api --title \"Dark mode\" --body \"Dark theme for the dashboard\""
1136
+ ],
1137
+ "flags": {
1138
+ "json": {
1139
+ "description": "Format output as json.",
1140
+ "helpGroup": "GLOBAL",
1141
+ "name": "json",
1142
+ "allowNo": false,
1143
+ "type": "boolean"
1144
+ },
1145
+ "project": {
1146
+ "char": "p",
1147
+ "description": "Project id (UUID) or key",
1148
+ "name": "project",
1149
+ "required": true,
1150
+ "hasDynamicHelp": false,
1151
+ "multiple": false,
1152
+ "type": "option"
1153
+ },
1154
+ "title": {
1155
+ "description": "Idea title",
1156
+ "name": "title",
1157
+ "required": true,
1158
+ "hasDynamicHelp": false,
1159
+ "multiple": false,
1160
+ "type": "option"
1161
+ },
1162
+ "body": {
1163
+ "description": "Idea proposal body",
1164
+ "name": "body",
1165
+ "required": true,
1166
+ "hasDynamicHelp": false,
1167
+ "multiple": false,
1168
+ "type": "option"
1169
+ }
1170
+ },
1171
+ "hasDynamicHelp": false,
1172
+ "hiddenAliases": [],
1173
+ "id": "ideas:create",
1174
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1175
+ "pluginName": "@bussolabs/closeyourit-cli",
1176
+ "pluginType": "core",
1177
+ "strict": true,
1178
+ "enableJsonFlag": true,
1179
+ "isESM": false,
1180
+ "relativePath": [
1181
+ "dist",
1182
+ "commands",
1183
+ "ideas",
1184
+ "create.js"
1185
+ ]
1186
+ },
1187
+ "ideas:list": {
1188
+ "aliases": [],
1189
+ "args": {},
1190
+ "description": "List ideas for a project (sorted by votes)",
1191
+ "examples": [
1192
+ "<%= config.bin %> ideas list --project acme-api",
1193
+ "<%= config.bin %> ideas list -p acme-api --status open --sort recent --json"
1194
+ ],
1195
+ "flags": {
1196
+ "json": {
1197
+ "description": "Format output as json.",
1198
+ "helpGroup": "GLOBAL",
1199
+ "name": "json",
1200
+ "allowNo": false,
1201
+ "type": "boolean"
1202
+ },
1203
+ "project": {
1204
+ "char": "p",
1205
+ "description": "Project id (UUID) or key",
1206
+ "name": "project",
1207
+ "required": true,
1208
+ "hasDynamicHelp": false,
1209
+ "multiple": false,
1210
+ "type": "option"
1211
+ },
1212
+ "page": {
1213
+ "description": "Page number",
1214
+ "name": "page",
1215
+ "default": 1,
1216
+ "hasDynamicHelp": false,
1217
+ "multiple": false,
1218
+ "type": "option"
1219
+ },
1220
+ "status": {
1221
+ "description": "Filter by status (open|converted|archived)",
1222
+ "name": "status",
1223
+ "hasDynamicHelp": false,
1224
+ "multiple": false,
1225
+ "type": "option"
1226
+ },
1227
+ "sort": {
1228
+ "description": "Sort order (votes|recent, default votes)",
1229
+ "name": "sort",
1230
+ "hasDynamicHelp": false,
1231
+ "multiple": false,
1232
+ "type": "option"
1233
+ }
1234
+ },
1235
+ "hasDynamicHelp": false,
1236
+ "hiddenAliases": [],
1237
+ "id": "ideas:list",
1238
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1239
+ "pluginName": "@bussolabs/closeyourit-cli",
1240
+ "pluginType": "core",
1241
+ "strict": true,
1242
+ "enableJsonFlag": true,
1243
+ "isESM": false,
1244
+ "relativePath": [
1245
+ "dist",
1246
+ "commands",
1247
+ "ideas",
1248
+ "list.js"
1249
+ ]
1250
+ },
1251
+ "ideas:show": {
1082
1252
  "aliases": [],
1083
1253
  "args": {
1084
1254
  "id": {
1085
- "description": "Error group id",
1255
+ "description": "Idea id",
1086
1256
  "name": "id",
1087
1257
  "required": true
1088
1258
  }
1089
1259
  },
1090
- "description": "Mark an error group as resolved",
1260
+ "description": "Show an idea (fields + full proposal body)",
1091
1261
  "examples": [
1092
- "<%= config.bin %> errors resolve <group-id> --project acme-api"
1262
+ "<%= config.bin %> ideas show <idea-id> --project acme-api"
1093
1263
  ],
1094
1264
  "flags": {
1095
1265
  "json": {
@@ -1111,7 +1281,7 @@
1111
1281
  },
1112
1282
  "hasDynamicHelp": false,
1113
1283
  "hiddenAliases": [],
1114
- "id": "errors:resolve",
1284
+ "id": "ideas:show",
1115
1285
  "pluginAlias": "@bussolabs/closeyourit-cli",
1116
1286
  "pluginName": "@bussolabs/closeyourit-cli",
1117
1287
  "pluginType": "core",
@@ -1121,22 +1291,22 @@
1121
1291
  "relativePath": [
1122
1292
  "dist",
1123
1293
  "commands",
1124
- "errors",
1125
- "resolve.js"
1294
+ "ideas",
1295
+ "show.js"
1126
1296
  ]
1127
1297
  },
1128
- "errors:show": {
1298
+ "ideas:unvote": {
1129
1299
  "aliases": [],
1130
1300
  "args": {
1131
1301
  "id": {
1132
- "description": "Error group id",
1302
+ "description": "Idea id",
1133
1303
  "name": "id",
1134
1304
  "required": true
1135
1305
  }
1136
1306
  },
1137
- "description": "Show a single error group",
1307
+ "description": "Remove your upvote from an idea (idempotent)",
1138
1308
  "examples": [
1139
- "<%= config.bin %> errors show <group-id> --project acme-api"
1309
+ "<%= config.bin %> ideas unvote <idea-id> --project acme-api"
1140
1310
  ],
1141
1311
  "flags": {
1142
1312
  "json": {
@@ -1158,7 +1328,7 @@
1158
1328
  },
1159
1329
  "hasDynamicHelp": false,
1160
1330
  "hiddenAliases": [],
1161
- "id": "errors:show",
1331
+ "id": "ideas:unvote",
1162
1332
  "pluginAlias": "@bussolabs/closeyourit-cli",
1163
1333
  "pluginName": "@bussolabs/closeyourit-cli",
1164
1334
  "pluginType": "core",
@@ -1168,22 +1338,22 @@
1168
1338
  "relativePath": [
1169
1339
  "dist",
1170
1340
  "commands",
1171
- "errors",
1172
- "show.js"
1341
+ "ideas",
1342
+ "unvote.js"
1173
1343
  ]
1174
1344
  },
1175
- "errors:unmute": {
1345
+ "ideas:vote": {
1176
1346
  "aliases": [],
1177
1347
  "args": {
1178
1348
  "id": {
1179
- "description": "Error group id",
1349
+ "description": "Idea id",
1180
1350
  "name": "id",
1181
1351
  "required": true
1182
1352
  }
1183
1353
  },
1184
- "description": "Unmute an error group",
1354
+ "description": "Upvote an idea (idempotent; only open ideas accept votes)",
1185
1355
  "examples": [
1186
- "<%= config.bin %> errors unmute <group-id> --project acme-api"
1356
+ "<%= config.bin %> ideas vote <idea-id> --project acme-api"
1187
1357
  ],
1188
1358
  "flags": {
1189
1359
  "json": {
@@ -1205,7 +1375,7 @@
1205
1375
  },
1206
1376
  "hasDynamicHelp": false,
1207
1377
  "hiddenAliases": [],
1208
- "id": "errors:unmute",
1378
+ "id": "ideas:vote",
1209
1379
  "pluginAlias": "@bussolabs/closeyourit-cli",
1210
1380
  "pluginName": "@bussolabs/closeyourit-cli",
1211
1381
  "pluginType": "core",
@@ -1215,8 +1385,8 @@
1215
1385
  "relativePath": [
1216
1386
  "dist",
1217
1387
  "commands",
1218
- "errors",
1219
- "unmute.js"
1388
+ "ideas",
1389
+ "vote.js"
1220
1390
  ]
1221
1391
  },
1222
1392
  "invitations:create": {
@@ -1388,14 +1558,13 @@
1388
1558
  "revoke.js"
1389
1559
  ]
1390
1560
  },
1391
- "logs:list": {
1561
+ "errors:list": {
1392
1562
  "aliases": [],
1393
1563
  "args": {},
1394
- "description": "List structured log entries (cross-app stream)",
1564
+ "description": "List error groups for a project",
1395
1565
  "examples": [
1396
- "<%= config.bin %> logs list",
1397
- "<%= config.bin %> logs list --project acme-api --level error",
1398
- "<%= config.bin %> logs list --trace-id 7f3c… --json"
1566
+ "<%= config.bin %> errors list --project acme-api",
1567
+ "<%= config.bin %> errors list -p acme-api --status unresolved --json"
1399
1568
  ],
1400
1569
  "flags": {
1401
1570
  "json": {
@@ -1407,29 +1576,9 @@
1407
1576
  },
1408
1577
  "project": {
1409
1578
  "char": "p",
1410
- "description": "Filter by project id (UUID) or key",
1579
+ "description": "Project id (UUID) or key",
1411
1580
  "name": "project",
1412
- "hasDynamicHelp": false,
1413
- "multiple": false,
1414
- "type": "option"
1415
- },
1416
- "level": {
1417
- "description": "Filter by level (debug, info, warning, error, fatal)",
1418
- "name": "level",
1419
- "hasDynamicHelp": false,
1420
- "multiple": false,
1421
- "type": "option"
1422
- },
1423
- "trace-id": {
1424
- "description": "Filter by trace id (correlate one request)",
1425
- "name": "trace-id",
1426
- "hasDynamicHelp": false,
1427
- "multiple": false,
1428
- "type": "option"
1429
- },
1430
- "environment": {
1431
- "description": "Filter by environment (e.g. production)",
1432
- "name": "environment",
1581
+ "required": true,
1433
1582
  "hasDynamicHelp": false,
1434
1583
  "multiple": false,
1435
1584
  "type": "option"
@@ -1441,11 +1590,410 @@
1441
1590
  "hasDynamicHelp": false,
1442
1591
  "multiple": false,
1443
1592
  "type": "option"
1593
+ },
1594
+ "status": {
1595
+ "description": "Filter by status (e.g. unresolved, resolved, muted)",
1596
+ "name": "status",
1597
+ "hasDynamicHelp": false,
1598
+ "multiple": false,
1599
+ "type": "option"
1600
+ }
1601
+ },
1602
+ "hasDynamicHelp": false,
1603
+ "hiddenAliases": [],
1604
+ "id": "errors:list",
1605
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1606
+ "pluginName": "@bussolabs/closeyourit-cli",
1607
+ "pluginType": "core",
1608
+ "strict": true,
1609
+ "enableJsonFlag": true,
1610
+ "isESM": false,
1611
+ "relativePath": [
1612
+ "dist",
1613
+ "commands",
1614
+ "errors",
1615
+ "list.js"
1616
+ ]
1617
+ },
1618
+ "errors:mute": {
1619
+ "aliases": [],
1620
+ "args": {
1621
+ "id": {
1622
+ "description": "Error group id",
1623
+ "name": "id",
1624
+ "required": true
1625
+ }
1626
+ },
1627
+ "description": "Mute an error group",
1628
+ "examples": [
1629
+ "<%= config.bin %> errors mute <group-id> --project acme-api"
1630
+ ],
1631
+ "flags": {
1632
+ "json": {
1633
+ "description": "Format output as json.",
1634
+ "helpGroup": "GLOBAL",
1635
+ "name": "json",
1636
+ "allowNo": false,
1637
+ "type": "boolean"
1638
+ },
1639
+ "project": {
1640
+ "char": "p",
1641
+ "description": "Project id (UUID) or key",
1642
+ "name": "project",
1643
+ "required": true,
1644
+ "hasDynamicHelp": false,
1645
+ "multiple": false,
1646
+ "type": "option"
1647
+ }
1648
+ },
1649
+ "hasDynamicHelp": false,
1650
+ "hiddenAliases": [],
1651
+ "id": "errors:mute",
1652
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1653
+ "pluginName": "@bussolabs/closeyourit-cli",
1654
+ "pluginType": "core",
1655
+ "strict": true,
1656
+ "enableJsonFlag": true,
1657
+ "isESM": false,
1658
+ "relativePath": [
1659
+ "dist",
1660
+ "commands",
1661
+ "errors",
1662
+ "mute.js"
1663
+ ]
1664
+ },
1665
+ "errors:promote": {
1666
+ "aliases": [],
1667
+ "args": {
1668
+ "id": {
1669
+ "description": "Error group id",
1670
+ "name": "id",
1671
+ "required": true
1672
+ }
1673
+ },
1674
+ "description": "Promote an error group to a ticket",
1675
+ "examples": [
1676
+ "<%= config.bin %> errors promote <group-id> --project acme-api"
1677
+ ],
1678
+ "flags": {
1679
+ "json": {
1680
+ "description": "Format output as json.",
1681
+ "helpGroup": "GLOBAL",
1682
+ "name": "json",
1683
+ "allowNo": false,
1684
+ "type": "boolean"
1685
+ },
1686
+ "project": {
1687
+ "char": "p",
1688
+ "description": "Project id (UUID) or key",
1689
+ "name": "project",
1690
+ "required": true,
1691
+ "hasDynamicHelp": false,
1692
+ "multiple": false,
1693
+ "type": "option"
1694
+ }
1695
+ },
1696
+ "hasDynamicHelp": false,
1697
+ "hiddenAliases": [],
1698
+ "id": "errors:promote",
1699
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1700
+ "pluginName": "@bussolabs/closeyourit-cli",
1701
+ "pluginType": "core",
1702
+ "strict": true,
1703
+ "enableJsonFlag": true,
1704
+ "isESM": false,
1705
+ "relativePath": [
1706
+ "dist",
1707
+ "commands",
1708
+ "errors",
1709
+ "promote.js"
1710
+ ]
1711
+ },
1712
+ "errors:reopen": {
1713
+ "aliases": [],
1714
+ "args": {
1715
+ "id": {
1716
+ "description": "Error group id",
1717
+ "name": "id",
1718
+ "required": true
1719
+ }
1720
+ },
1721
+ "description": "Reopen a resolved error group",
1722
+ "examples": [
1723
+ "<%= config.bin %> errors reopen <group-id> --project acme-api"
1724
+ ],
1725
+ "flags": {
1726
+ "json": {
1727
+ "description": "Format output as json.",
1728
+ "helpGroup": "GLOBAL",
1729
+ "name": "json",
1730
+ "allowNo": false,
1731
+ "type": "boolean"
1732
+ },
1733
+ "project": {
1734
+ "char": "p",
1735
+ "description": "Project id (UUID) or key",
1736
+ "name": "project",
1737
+ "required": true,
1738
+ "hasDynamicHelp": false,
1739
+ "multiple": false,
1740
+ "type": "option"
1741
+ }
1742
+ },
1743
+ "hasDynamicHelp": false,
1744
+ "hiddenAliases": [],
1745
+ "id": "errors:reopen",
1746
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1747
+ "pluginName": "@bussolabs/closeyourit-cli",
1748
+ "pluginType": "core",
1749
+ "strict": true,
1750
+ "enableJsonFlag": true,
1751
+ "isESM": false,
1752
+ "relativePath": [
1753
+ "dist",
1754
+ "commands",
1755
+ "errors",
1756
+ "reopen.js"
1757
+ ]
1758
+ },
1759
+ "errors:resolve": {
1760
+ "aliases": [],
1761
+ "args": {
1762
+ "id": {
1763
+ "description": "Error group id",
1764
+ "name": "id",
1765
+ "required": true
1766
+ }
1767
+ },
1768
+ "description": "Mark an error group as resolved",
1769
+ "examples": [
1770
+ "<%= config.bin %> errors resolve <group-id> --project acme-api"
1771
+ ],
1772
+ "flags": {
1773
+ "json": {
1774
+ "description": "Format output as json.",
1775
+ "helpGroup": "GLOBAL",
1776
+ "name": "json",
1777
+ "allowNo": false,
1778
+ "type": "boolean"
1779
+ },
1780
+ "project": {
1781
+ "char": "p",
1782
+ "description": "Project id (UUID) or key",
1783
+ "name": "project",
1784
+ "required": true,
1785
+ "hasDynamicHelp": false,
1786
+ "multiple": false,
1787
+ "type": "option"
1788
+ }
1789
+ },
1790
+ "hasDynamicHelp": false,
1791
+ "hiddenAliases": [],
1792
+ "id": "errors:resolve",
1793
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1794
+ "pluginName": "@bussolabs/closeyourit-cli",
1795
+ "pluginType": "core",
1796
+ "strict": true,
1797
+ "enableJsonFlag": true,
1798
+ "isESM": false,
1799
+ "relativePath": [
1800
+ "dist",
1801
+ "commands",
1802
+ "errors",
1803
+ "resolve.js"
1804
+ ]
1805
+ },
1806
+ "errors:show": {
1807
+ "aliases": [],
1808
+ "args": {
1809
+ "id": {
1810
+ "description": "Error group id",
1811
+ "name": "id",
1812
+ "required": true
1813
+ }
1814
+ },
1815
+ "description": "Show a single error group",
1816
+ "examples": [
1817
+ "<%= config.bin %> errors show <group-id> --project acme-api"
1818
+ ],
1819
+ "flags": {
1820
+ "json": {
1821
+ "description": "Format output as json.",
1822
+ "helpGroup": "GLOBAL",
1823
+ "name": "json",
1824
+ "allowNo": false,
1825
+ "type": "boolean"
1826
+ },
1827
+ "project": {
1828
+ "char": "p",
1829
+ "description": "Project id (UUID) or key",
1830
+ "name": "project",
1831
+ "required": true,
1832
+ "hasDynamicHelp": false,
1833
+ "multiple": false,
1834
+ "type": "option"
1835
+ }
1836
+ },
1837
+ "hasDynamicHelp": false,
1838
+ "hiddenAliases": [],
1839
+ "id": "errors:show",
1840
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1841
+ "pluginName": "@bussolabs/closeyourit-cli",
1842
+ "pluginType": "core",
1843
+ "strict": true,
1844
+ "enableJsonFlag": true,
1845
+ "isESM": false,
1846
+ "relativePath": [
1847
+ "dist",
1848
+ "commands",
1849
+ "errors",
1850
+ "show.js"
1851
+ ]
1852
+ },
1853
+ "errors:unmute": {
1854
+ "aliases": [],
1855
+ "args": {
1856
+ "id": {
1857
+ "description": "Error group id",
1858
+ "name": "id",
1859
+ "required": true
1860
+ }
1861
+ },
1862
+ "description": "Unmute an error group",
1863
+ "examples": [
1864
+ "<%= config.bin %> errors unmute <group-id> --project acme-api"
1865
+ ],
1866
+ "flags": {
1867
+ "json": {
1868
+ "description": "Format output as json.",
1869
+ "helpGroup": "GLOBAL",
1870
+ "name": "json",
1871
+ "allowNo": false,
1872
+ "type": "boolean"
1873
+ },
1874
+ "project": {
1875
+ "char": "p",
1876
+ "description": "Project id (UUID) or key",
1877
+ "name": "project",
1878
+ "required": true,
1879
+ "hasDynamicHelp": false,
1880
+ "multiple": false,
1881
+ "type": "option"
1882
+ }
1883
+ },
1884
+ "hasDynamicHelp": false,
1885
+ "hiddenAliases": [],
1886
+ "id": "errors:unmute",
1887
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1888
+ "pluginName": "@bussolabs/closeyourit-cli",
1889
+ "pluginType": "core",
1890
+ "strict": true,
1891
+ "enableJsonFlag": true,
1892
+ "isESM": false,
1893
+ "relativePath": [
1894
+ "dist",
1895
+ "commands",
1896
+ "errors",
1897
+ "unmute.js"
1898
+ ]
1899
+ },
1900
+ "kb:ask": {
1901
+ "aliases": [],
1902
+ "args": {
1903
+ "question": {
1904
+ "description": "The question (all positional words are joined)",
1905
+ "name": "question"
1906
+ }
1907
+ },
1908
+ "description": "Ask a natural-language question; the server AI answers from the knowledge base and cites the pages it used (may take a few seconds)",
1909
+ "examples": [
1910
+ "<%= config.bin %> kb ask how do we roll back a kamal deploy",
1911
+ "<%= config.bin %> kb ask \"what is our retry/backoff policy?\" --json"
1912
+ ],
1913
+ "flags": {
1914
+ "json": {
1915
+ "description": "Format output as json.",
1916
+ "helpGroup": "GLOBAL",
1917
+ "name": "json",
1918
+ "allowNo": false,
1919
+ "type": "boolean"
1920
+ }
1921
+ },
1922
+ "hasDynamicHelp": false,
1923
+ "hiddenAliases": [],
1924
+ "id": "kb:ask",
1925
+ "pluginAlias": "@bussolabs/closeyourit-cli",
1926
+ "pluginName": "@bussolabs/closeyourit-cli",
1927
+ "pluginType": "core",
1928
+ "strict": false,
1929
+ "enableJsonFlag": true,
1930
+ "isESM": false,
1931
+ "relativePath": [
1932
+ "dist",
1933
+ "commands",
1934
+ "kb",
1935
+ "ask.js"
1936
+ ]
1937
+ },
1938
+ "kb:create": {
1939
+ "aliases": [],
1940
+ "args": {},
1941
+ "description": "Create a knowledge page in a project",
1942
+ "examples": [
1943
+ "<%= config.bin %> kb create --project acme-api --title \"Kamal rollback\" --body \"Steps…\"",
1944
+ "<%= config.bin %> kb create -p acme-api --title \"ADR: queue backend\" --kind decision --body-file ./adr.md"
1945
+ ],
1946
+ "flags": {
1947
+ "json": {
1948
+ "description": "Format output as json.",
1949
+ "helpGroup": "GLOBAL",
1950
+ "name": "json",
1951
+ "allowNo": false,
1952
+ "type": "boolean"
1953
+ },
1954
+ "project": {
1955
+ "char": "p",
1956
+ "description": "Project id (UUID) or key",
1957
+ "name": "project",
1958
+ "required": true,
1959
+ "hasDynamicHelp": false,
1960
+ "multiple": false,
1961
+ "type": "option"
1962
+ },
1963
+ "title": {
1964
+ "description": "Page title",
1965
+ "name": "title",
1966
+ "required": true,
1967
+ "hasDynamicHelp": false,
1968
+ "multiple": false,
1969
+ "type": "option"
1970
+ },
1971
+ "kind": {
1972
+ "description": "Page kind: note|decision|guide",
1973
+ "name": "kind",
1974
+ "default": "note",
1975
+ "hasDynamicHelp": false,
1976
+ "multiple": false,
1977
+ "type": "option"
1978
+ },
1979
+ "body": {
1980
+ "description": "Page body (markdown)",
1981
+ "name": "body",
1982
+ "hasDynamicHelp": false,
1983
+ "multiple": false,
1984
+ "type": "option"
1985
+ },
1986
+ "body-file": {
1987
+ "description": "Read the body (markdown) from a local file",
1988
+ "name": "body-file",
1989
+ "hasDynamicHelp": false,
1990
+ "multiple": false,
1991
+ "type": "option"
1444
1992
  }
1445
1993
  },
1446
1994
  "hasDynamicHelp": false,
1447
1995
  "hiddenAliases": [],
1448
- "id": "logs:list",
1996
+ "id": "kb:create",
1449
1997
  "pluginAlias": "@bussolabs/closeyourit-cli",
1450
1998
  "pluginName": "@bussolabs/closeyourit-cli",
1451
1999
  "pluginType": "core",
@@ -1455,17 +2003,62 @@
1455
2003
  "relativePath": [
1456
2004
  "dist",
1457
2005
  "commands",
1458
- "logs",
1459
- "list.js"
2006
+ "kb",
2007
+ "create.js"
1460
2008
  ]
1461
2009
  },
1462
- "members:list": {
2010
+ "kb:delete": {
2011
+ "aliases": [],
2012
+ "args": {
2013
+ "id": {
2014
+ "description": "Knowledge page id",
2015
+ "name": "id",
2016
+ "required": true
2017
+ }
2018
+ },
2019
+ "description": "Delete a knowledge page (irreversible)",
2020
+ "examples": [
2021
+ "<%= config.bin %> kb delete <page-id> --confirm"
2022
+ ],
2023
+ "flags": {
2024
+ "json": {
2025
+ "description": "Format output as json.",
2026
+ "helpGroup": "GLOBAL",
2027
+ "name": "json",
2028
+ "allowNo": false,
2029
+ "type": "boolean"
2030
+ },
2031
+ "confirm": {
2032
+ "description": "Required: confirm the irreversible deletion",
2033
+ "name": "confirm",
2034
+ "allowNo": false,
2035
+ "type": "boolean"
2036
+ }
2037
+ },
2038
+ "hasDynamicHelp": false,
2039
+ "hiddenAliases": [],
2040
+ "id": "kb:delete",
2041
+ "pluginAlias": "@bussolabs/closeyourit-cli",
2042
+ "pluginName": "@bussolabs/closeyourit-cli",
2043
+ "pluginType": "core",
2044
+ "strict": true,
2045
+ "enableJsonFlag": true,
2046
+ "isESM": false,
2047
+ "relativePath": [
2048
+ "dist",
2049
+ "commands",
2050
+ "kb",
2051
+ "delete.js"
2052
+ ]
2053
+ },
2054
+ "kb:list": {
1463
2055
  "aliases": [],
1464
2056
  "args": {},
1465
- "description": "List the members of your organization (to resolve emails to account ids)",
2057
+ "description": "List knowledge pages across the projects you can see",
1466
2058
  "examples": [
1467
- "<%= config.bin %> members list",
1468
- "<%= config.bin %> members list --json"
2059
+ "<%= config.bin %> kb list",
2060
+ "<%= config.bin %> kb list --project acme-api --kind decision",
2061
+ "<%= config.bin %> kb list --kind note,guide --per 50 --json"
1469
2062
  ],
1470
2063
  "flags": {
1471
2064
  "json": {
@@ -1475,6 +2068,28 @@
1475
2068
  "allowNo": false,
1476
2069
  "type": "boolean"
1477
2070
  },
2071
+ "project": {
2072
+ "char": "p",
2073
+ "description": "Filter by project (key or UUID)",
2074
+ "name": "project",
2075
+ "hasDynamicHelp": false,
2076
+ "multiple": false,
2077
+ "type": "option"
2078
+ },
2079
+ "kind": {
2080
+ "description": "Filter by kind: note|decision|guide (repeatable or comma-separated)",
2081
+ "name": "kind",
2082
+ "hasDynamicHelp": false,
2083
+ "multiple": true,
2084
+ "type": "option"
2085
+ },
2086
+ "per": {
2087
+ "description": "Page size",
2088
+ "name": "per",
2089
+ "hasDynamicHelp": false,
2090
+ "multiple": false,
2091
+ "type": "option"
2092
+ },
1478
2093
  "page": {
1479
2094
  "description": "Page number",
1480
2095
  "name": "page",
@@ -1486,7 +2101,7 @@
1486
2101
  },
1487
2102
  "hasDynamicHelp": false,
1488
2103
  "hiddenAliases": [],
1489
- "id": "members:list",
2104
+ "id": "kb:list",
1490
2105
  "pluginAlias": "@bussolabs/closeyourit-cli",
1491
2106
  "pluginName": "@bussolabs/closeyourit-cli",
1492
2107
  "pluginType": "core",
@@ -1496,24 +2111,23 @@
1496
2111
  "relativePath": [
1497
2112
  "dist",
1498
2113
  "commands",
1499
- "members",
2114
+ "kb",
1500
2115
  "list.js"
1501
2116
  ]
1502
2117
  },
1503
- "members:set-access": {
2118
+ "kb:search": {
1504
2119
  "aliases": [],
1505
2120
  "args": {
1506
- "id": {
1507
- "description": "Membership id",
1508
- "name": "id",
1509
- "required": true
2121
+ "query": {
2122
+ "description": "Search query (all positional words are joined)",
2123
+ "name": "query"
1510
2124
  }
1511
2125
  },
1512
- "description": "Set a member's group and project access (replaces the current set; omit a flag to clear it)",
2126
+ "description": "Search knowledge pages (semantic when available, ILIKE fallback on the title otherwise)",
1513
2127
  "examples": [
1514
- "<%= config.bin %> members set-access <membership-id> --project acme-api --project acme-web",
1515
- "<%= config.bin %> members set-access <membership-id> --group DriverOne",
1516
- "<%= config.bin %> members set-access <membership-id>"
2128
+ "<%= config.bin %> kb search kamal deploy rollback",
2129
+ "<%= config.bin %> kb search \"connection pool timeout\" --project acme-api",
2130
+ "<%= config.bin %> kb search retry backoff --kind decision --json"
1517
2131
  ],
1518
2132
  "flags": {
1519
2133
  "json": {
@@ -1523,26 +2137,79 @@
1523
2137
  "allowNo": false,
1524
2138
  "type": "boolean"
1525
2139
  },
1526
- "group": {
1527
- "description": "Group id or name to grant access to (repeatable; omit to clear group access)",
1528
- "name": "group",
1529
- "default": [],
2140
+ "project": {
2141
+ "char": "p",
2142
+ "description": "Filter by project (key or UUID)",
2143
+ "name": "project",
1530
2144
  "hasDynamicHelp": false,
1531
- "multiple": true,
2145
+ "multiple": false,
1532
2146
  "type": "option"
1533
2147
  },
1534
- "project": {
1535
- "description": "Project id or key to grant access to (repeatable; omit to clear project access)",
1536
- "name": "project",
1537
- "default": [],
2148
+ "kind": {
2149
+ "description": "Filter by kind: note|decision|guide (repeatable or comma-separated)",
2150
+ "name": "kind",
1538
2151
  "hasDynamicHelp": false,
1539
2152
  "multiple": true,
1540
2153
  "type": "option"
2154
+ },
2155
+ "per": {
2156
+ "description": "Page size",
2157
+ "name": "per",
2158
+ "hasDynamicHelp": false,
2159
+ "multiple": false,
2160
+ "type": "option"
2161
+ },
2162
+ "page": {
2163
+ "description": "Page number",
2164
+ "name": "page",
2165
+ "default": 1,
2166
+ "hasDynamicHelp": false,
2167
+ "multiple": false,
2168
+ "type": "option"
1541
2169
  }
1542
2170
  },
1543
2171
  "hasDynamicHelp": false,
1544
2172
  "hiddenAliases": [],
1545
- "id": "members:set-access",
2173
+ "id": "kb:search",
2174
+ "pluginAlias": "@bussolabs/closeyourit-cli",
2175
+ "pluginName": "@bussolabs/closeyourit-cli",
2176
+ "pluginType": "core",
2177
+ "strict": false,
2178
+ "enableJsonFlag": true,
2179
+ "isESM": false,
2180
+ "relativePath": [
2181
+ "dist",
2182
+ "commands",
2183
+ "kb",
2184
+ "search.js"
2185
+ ]
2186
+ },
2187
+ "kb:show": {
2188
+ "aliases": [],
2189
+ "args": {
2190
+ "id": {
2191
+ "description": "Knowledge page id",
2192
+ "name": "id",
2193
+ "required": true
2194
+ }
2195
+ },
2196
+ "description": "Show a single knowledge page: metadata header then the raw markdown body",
2197
+ "examples": [
2198
+ "<%= config.bin %> kb show <page-id>",
2199
+ "<%= config.bin %> kb show <page-id> --json"
2200
+ ],
2201
+ "flags": {
2202
+ "json": {
2203
+ "description": "Format output as json.",
2204
+ "helpGroup": "GLOBAL",
2205
+ "name": "json",
2206
+ "allowNo": false,
2207
+ "type": "boolean"
2208
+ }
2209
+ },
2210
+ "hasDynamicHelp": false,
2211
+ "hiddenAliases": [],
2212
+ "id": "kb:show",
1546
2213
  "pluginAlias": "@bussolabs/closeyourit-cli",
1547
2214
  "pluginName": "@bussolabs/closeyourit-cli",
1548
2215
  "pluginType": "core",
@@ -1552,23 +2219,85 @@
1552
2219
  "relativePath": [
1553
2220
  "dist",
1554
2221
  "commands",
1555
- "members",
1556
- "set-access.js"
2222
+ "kb",
2223
+ "show.js"
1557
2224
  ]
1558
2225
  },
1559
- "members:set-role": {
2226
+ "kb:update": {
1560
2227
  "aliases": [],
1561
2228
  "args": {
1562
2229
  "id": {
1563
- "description": "Membership id",
2230
+ "description": "Knowledge page id",
1564
2231
  "name": "id",
1565
2232
  "required": true
1566
2233
  }
1567
2234
  },
1568
- "description": "Change a member's organization role",
2235
+ "description": "Update a knowledge page (only the fields you pass; the others keep their current value)",
1569
2236
  "examples": [
1570
- "<%= config.bin %> members set-role <membership-id> --role admin",
1571
- "<%= config.bin %> members set-role <membership-id> --role customer"
2237
+ "<%= config.bin %> kb update <page-id> --title \"New title\"",
2238
+ "<%= config.bin %> kb update <page-id> --kind decision --body-file ./adr.md"
2239
+ ],
2240
+ "flags": {
2241
+ "json": {
2242
+ "description": "Format output as json.",
2243
+ "helpGroup": "GLOBAL",
2244
+ "name": "json",
2245
+ "allowNo": false,
2246
+ "type": "boolean"
2247
+ },
2248
+ "title": {
2249
+ "description": "New title",
2250
+ "name": "title",
2251
+ "hasDynamicHelp": false,
2252
+ "multiple": false,
2253
+ "type": "option"
2254
+ },
2255
+ "kind": {
2256
+ "description": "New kind: note|decision|guide",
2257
+ "name": "kind",
2258
+ "hasDynamicHelp": false,
2259
+ "multiple": false,
2260
+ "type": "option"
2261
+ },
2262
+ "body": {
2263
+ "description": "New body (markdown)",
2264
+ "name": "body",
2265
+ "hasDynamicHelp": false,
2266
+ "multiple": false,
2267
+ "type": "option"
2268
+ },
2269
+ "body-file": {
2270
+ "description": "Read the new body (markdown) from a local file",
2271
+ "name": "body-file",
2272
+ "hasDynamicHelp": false,
2273
+ "multiple": false,
2274
+ "type": "option"
2275
+ }
2276
+ },
2277
+ "hasDynamicHelp": false,
2278
+ "hiddenAliases": [],
2279
+ "id": "kb:update",
2280
+ "pluginAlias": "@bussolabs/closeyourit-cli",
2281
+ "pluginName": "@bussolabs/closeyourit-cli",
2282
+ "pluginType": "core",
2283
+ "strict": true,
2284
+ "enableJsonFlag": true,
2285
+ "isESM": false,
2286
+ "relativePath": [
2287
+ "dist",
2288
+ "commands",
2289
+ "kb",
2290
+ "update.js"
2291
+ ]
2292
+ },
2293
+ "logs:list": {
2294
+ "aliases": [],
2295
+ "args": {},
2296
+ "description": "List structured log entries (cross-app stream)",
2297
+ "examples": [
2298
+ "<%= config.bin %> logs list",
2299
+ "<%= config.bin %> logs list --project acme-api --level error",
2300
+ "<%= config.bin %> logs list --trace-id 7f3c… --json"
1572
2301
  ],
1573
2302
  "flags": {
1574
2303
  "json": {
@@ -1578,24 +2307,47 @@
1578
2307
  "allowNo": false,
1579
2308
  "type": "boolean"
1580
2309
  },
1581
- "role": {
1582
- "description": "Organization role",
1583
- "name": "role",
1584
- "required": true,
2310
+ "project": {
2311
+ "char": "p",
2312
+ "description": "Filter by project id (UUID) or key",
2313
+ "name": "project",
2314
+ "hasDynamicHelp": false,
2315
+ "multiple": false,
2316
+ "type": "option"
2317
+ },
2318
+ "level": {
2319
+ "description": "Filter by level (debug, info, warning, error, fatal)",
2320
+ "name": "level",
2321
+ "hasDynamicHelp": false,
2322
+ "multiple": false,
2323
+ "type": "option"
2324
+ },
2325
+ "trace-id": {
2326
+ "description": "Filter by trace id (correlate one request)",
2327
+ "name": "trace-id",
2328
+ "hasDynamicHelp": false,
2329
+ "multiple": false,
2330
+ "type": "option"
2331
+ },
2332
+ "environment": {
2333
+ "description": "Filter by environment (e.g. production)",
2334
+ "name": "environment",
2335
+ "hasDynamicHelp": false,
2336
+ "multiple": false,
2337
+ "type": "option"
2338
+ },
2339
+ "page": {
2340
+ "description": "Page number",
2341
+ "name": "page",
2342
+ "default": 1,
1585
2343
  "hasDynamicHelp": false,
1586
2344
  "multiple": false,
1587
- "options": [
1588
- "member",
1589
- "admin",
1590
- "owner",
1591
- "customer"
1592
- ],
1593
2345
  "type": "option"
1594
2346
  }
1595
2347
  },
1596
2348
  "hasDynamicHelp": false,
1597
2349
  "hiddenAliases": [],
1598
- "id": "members:set-role",
2350
+ "id": "logs:list",
1599
2351
  "pluginAlias": "@bussolabs/closeyourit-cli",
1600
2352
  "pluginName": "@bussolabs/closeyourit-cli",
1601
2353
  "pluginType": "core",
@@ -1605,17 +2357,17 @@
1605
2357
  "relativePath": [
1606
2358
  "dist",
1607
2359
  "commands",
1608
- "members",
1609
- "set-role.js"
2360
+ "logs",
2361
+ "list.js"
1610
2362
  ]
1611
2363
  },
1612
- "metrics:list": {
2364
+ "members:list": {
1613
2365
  "aliases": [],
1614
2366
  "args": {},
1615
- "description": "List performance metric groups (slow queries/methods) for a project",
2367
+ "description": "List the members of your organization (to resolve emails to account ids)",
1616
2368
  "examples": [
1617
- "<%= config.bin %> metrics list --project acme-api",
1618
- "<%= config.bin %> metrics list -p acme-api --kind sql --json"
2369
+ "<%= config.bin %> members list",
2370
+ "<%= config.bin %> members list --json"
1619
2371
  ],
1620
2372
  "flags": {
1621
2373
  "json": {
@@ -1625,15 +2377,6 @@
1625
2377
  "allowNo": false,
1626
2378
  "type": "boolean"
1627
2379
  },
1628
- "project": {
1629
- "char": "p",
1630
- "description": "Project id (UUID) or key",
1631
- "name": "project",
1632
- "required": true,
1633
- "hasDynamicHelp": false,
1634
- "multiple": false,
1635
- "type": "option"
1636
- },
1637
2380
  "page": {
1638
2381
  "description": "Page number",
1639
2382
  "name": "page",
@@ -1641,18 +2384,11 @@
1641
2384
  "hasDynamicHelp": false,
1642
2385
  "multiple": false,
1643
2386
  "type": "option"
1644
- },
1645
- "kind": {
1646
- "description": "Filter by metric kind (e.g. sql, method)",
1647
- "name": "kind",
1648
- "hasDynamicHelp": false,
1649
- "multiple": false,
1650
- "type": "option"
1651
2387
  }
1652
2388
  },
1653
2389
  "hasDynamicHelp": false,
1654
2390
  "hiddenAliases": [],
1655
- "id": "metrics:list",
2391
+ "id": "members:list",
1656
2392
  "pluginAlias": "@bussolabs/closeyourit-cli",
1657
2393
  "pluginName": "@bussolabs/closeyourit-cli",
1658
2394
  "pluginType": "core",
@@ -1662,22 +2398,24 @@
1662
2398
  "relativePath": [
1663
2399
  "dist",
1664
2400
  "commands",
1665
- "metrics",
2401
+ "members",
1666
2402
  "list.js"
1667
2403
  ]
1668
2404
  },
1669
- "metrics:promote": {
2405
+ "members:set-access": {
1670
2406
  "aliases": [],
1671
2407
  "args": {
1672
2408
  "id": {
1673
- "description": "Metric group id",
2409
+ "description": "Membership id",
1674
2410
  "name": "id",
1675
2411
  "required": true
1676
2412
  }
1677
2413
  },
1678
- "description": "Promote a metric group (slow query/method) to a ticket",
2414
+ "description": "Set a member's group and project access (replaces the current set; omit a flag to clear it)",
1679
2415
  "examples": [
1680
- "<%= config.bin %> metrics promote <group-id> --project acme-api"
2416
+ "<%= config.bin %> members set-access <membership-id> --project acme-api --project acme-web",
2417
+ "<%= config.bin %> members set-access <membership-id> --group DriverOne",
2418
+ "<%= config.bin %> members set-access <membership-id>"
1681
2419
  ],
1682
2420
  "flags": {
1683
2421
  "json": {
@@ -1687,19 +2425,26 @@
1687
2425
  "allowNo": false,
1688
2426
  "type": "boolean"
1689
2427
  },
2428
+ "group": {
2429
+ "description": "Group id or name to grant access to (repeatable; omit to clear group access)",
2430
+ "name": "group",
2431
+ "default": [],
2432
+ "hasDynamicHelp": false,
2433
+ "multiple": true,
2434
+ "type": "option"
2435
+ },
1690
2436
  "project": {
1691
- "char": "p",
1692
- "description": "Project id (UUID) or key",
2437
+ "description": "Project id or key to grant access to (repeatable; omit to clear project access)",
1693
2438
  "name": "project",
1694
- "required": true,
2439
+ "default": [],
1695
2440
  "hasDynamicHelp": false,
1696
- "multiple": false,
2441
+ "multiple": true,
1697
2442
  "type": "option"
1698
2443
  }
1699
2444
  },
1700
2445
  "hasDynamicHelp": false,
1701
2446
  "hiddenAliases": [],
1702
- "id": "metrics:promote",
2447
+ "id": "members:set-access",
1703
2448
  "pluginAlias": "@bussolabs/closeyourit-cli",
1704
2449
  "pluginName": "@bussolabs/closeyourit-cli",
1705
2450
  "pluginType": "core",
@@ -1709,22 +2454,23 @@
1709
2454
  "relativePath": [
1710
2455
  "dist",
1711
2456
  "commands",
1712
- "metrics",
1713
- "promote.js"
2457
+ "members",
2458
+ "set-access.js"
1714
2459
  ]
1715
2460
  },
1716
- "metrics:show": {
2461
+ "members:set-role": {
1717
2462
  "aliases": [],
1718
2463
  "args": {
1719
2464
  "id": {
1720
- "description": "Metric group id",
2465
+ "description": "Membership id",
1721
2466
  "name": "id",
1722
2467
  "required": true
1723
2468
  }
1724
2469
  },
1725
- "description": "Show a single metric group",
2470
+ "description": "Change a member's organization role",
1726
2471
  "examples": [
1727
- "<%= config.bin %> metrics show <group-id> --project acme-api"
2472
+ "<%= config.bin %> members set-role <membership-id> --role admin",
2473
+ "<%= config.bin %> members set-role <membership-id> --role customer"
1728
2474
  ],
1729
2475
  "flags": {
1730
2476
  "json": {
@@ -1734,19 +2480,24 @@
1734
2480
  "allowNo": false,
1735
2481
  "type": "boolean"
1736
2482
  },
1737
- "project": {
1738
- "char": "p",
1739
- "description": "Project id (UUID) or key",
1740
- "name": "project",
2483
+ "role": {
2484
+ "description": "Organization role",
2485
+ "name": "role",
1741
2486
  "required": true,
1742
2487
  "hasDynamicHelp": false,
1743
2488
  "multiple": false,
2489
+ "options": [
2490
+ "member",
2491
+ "admin",
2492
+ "owner",
2493
+ "customer"
2494
+ ],
1744
2495
  "type": "option"
1745
2496
  }
1746
2497
  },
1747
2498
  "hasDynamicHelp": false,
1748
2499
  "hiddenAliases": [],
1749
- "id": "metrics:show",
2500
+ "id": "members:set-role",
1750
2501
  "pluginAlias": "@bussolabs/closeyourit-cli",
1751
2502
  "pluginName": "@bussolabs/closeyourit-cli",
1752
2503
  "pluginType": "core",
@@ -1756,8 +2507,8 @@
1756
2507
  "relativePath": [
1757
2508
  "dist",
1758
2509
  "commands",
1759
- "metrics",
1760
- "show.js"
2510
+ "members",
2511
+ "set-role.js"
1761
2512
  ]
1762
2513
  },
1763
2514
  "milestones:create": {
@@ -2040,23 +2791,174 @@
2040
2791
  "multiple": false,
2041
2792
  "type": "option"
2042
2793
  },
2043
- "due-on": {
2044
- "description": "Due date (YYYY-MM-DD)",
2045
- "name": "due-on",
2794
+ "due-on": {
2795
+ "description": "Due date (YYYY-MM-DD)",
2796
+ "name": "due-on",
2797
+ "hasDynamicHelp": false,
2798
+ "multiple": false,
2799
+ "type": "option"
2800
+ },
2801
+ "active": {
2802
+ "description": "Whether the milestone is active",
2803
+ "name": "active",
2804
+ "allowNo": true,
2805
+ "type": "boolean"
2806
+ }
2807
+ },
2808
+ "hasDynamicHelp": false,
2809
+ "hiddenAliases": [],
2810
+ "id": "milestones:update",
2811
+ "pluginAlias": "@bussolabs/closeyourit-cli",
2812
+ "pluginName": "@bussolabs/closeyourit-cli",
2813
+ "pluginType": "core",
2814
+ "strict": true,
2815
+ "enableJsonFlag": true,
2816
+ "isESM": false,
2817
+ "relativePath": [
2818
+ "dist",
2819
+ "commands",
2820
+ "milestones",
2821
+ "update.js"
2822
+ ]
2823
+ },
2824
+ "metrics:list": {
2825
+ "aliases": [],
2826
+ "args": {},
2827
+ "description": "List performance metric groups (slow queries/methods) for a project",
2828
+ "examples": [
2829
+ "<%= config.bin %> metrics list --project acme-api",
2830
+ "<%= config.bin %> metrics list -p acme-api --kind sql --json"
2831
+ ],
2832
+ "flags": {
2833
+ "json": {
2834
+ "description": "Format output as json.",
2835
+ "helpGroup": "GLOBAL",
2836
+ "name": "json",
2837
+ "allowNo": false,
2838
+ "type": "boolean"
2839
+ },
2840
+ "project": {
2841
+ "char": "p",
2842
+ "description": "Project id (UUID) or key",
2843
+ "name": "project",
2844
+ "required": true,
2845
+ "hasDynamicHelp": false,
2846
+ "multiple": false,
2847
+ "type": "option"
2848
+ },
2849
+ "page": {
2850
+ "description": "Page number",
2851
+ "name": "page",
2852
+ "default": 1,
2853
+ "hasDynamicHelp": false,
2854
+ "multiple": false,
2855
+ "type": "option"
2856
+ },
2857
+ "kind": {
2858
+ "description": "Filter by metric kind (e.g. sql, method)",
2859
+ "name": "kind",
2860
+ "hasDynamicHelp": false,
2861
+ "multiple": false,
2862
+ "type": "option"
2863
+ }
2864
+ },
2865
+ "hasDynamicHelp": false,
2866
+ "hiddenAliases": [],
2867
+ "id": "metrics:list",
2868
+ "pluginAlias": "@bussolabs/closeyourit-cli",
2869
+ "pluginName": "@bussolabs/closeyourit-cli",
2870
+ "pluginType": "core",
2871
+ "strict": true,
2872
+ "enableJsonFlag": true,
2873
+ "isESM": false,
2874
+ "relativePath": [
2875
+ "dist",
2876
+ "commands",
2877
+ "metrics",
2878
+ "list.js"
2879
+ ]
2880
+ },
2881
+ "metrics:promote": {
2882
+ "aliases": [],
2883
+ "args": {
2884
+ "id": {
2885
+ "description": "Metric group id",
2886
+ "name": "id",
2887
+ "required": true
2888
+ }
2889
+ },
2890
+ "description": "Promote a metric group (slow query/method) to a ticket",
2891
+ "examples": [
2892
+ "<%= config.bin %> metrics promote <group-id> --project acme-api"
2893
+ ],
2894
+ "flags": {
2895
+ "json": {
2896
+ "description": "Format output as json.",
2897
+ "helpGroup": "GLOBAL",
2898
+ "name": "json",
2899
+ "allowNo": false,
2900
+ "type": "boolean"
2901
+ },
2902
+ "project": {
2903
+ "char": "p",
2904
+ "description": "Project id (UUID) or key",
2905
+ "name": "project",
2906
+ "required": true,
2907
+ "hasDynamicHelp": false,
2908
+ "multiple": false,
2909
+ "type": "option"
2910
+ }
2911
+ },
2912
+ "hasDynamicHelp": false,
2913
+ "hiddenAliases": [],
2914
+ "id": "metrics:promote",
2915
+ "pluginAlias": "@bussolabs/closeyourit-cli",
2916
+ "pluginName": "@bussolabs/closeyourit-cli",
2917
+ "pluginType": "core",
2918
+ "strict": true,
2919
+ "enableJsonFlag": true,
2920
+ "isESM": false,
2921
+ "relativePath": [
2922
+ "dist",
2923
+ "commands",
2924
+ "metrics",
2925
+ "promote.js"
2926
+ ]
2927
+ },
2928
+ "metrics:show": {
2929
+ "aliases": [],
2930
+ "args": {
2931
+ "id": {
2932
+ "description": "Metric group id",
2933
+ "name": "id",
2934
+ "required": true
2935
+ }
2936
+ },
2937
+ "description": "Show a single metric group",
2938
+ "examples": [
2939
+ "<%= config.bin %> metrics show <group-id> --project acme-api"
2940
+ ],
2941
+ "flags": {
2942
+ "json": {
2943
+ "description": "Format output as json.",
2944
+ "helpGroup": "GLOBAL",
2945
+ "name": "json",
2946
+ "allowNo": false,
2947
+ "type": "boolean"
2948
+ },
2949
+ "project": {
2950
+ "char": "p",
2951
+ "description": "Project id (UUID) or key",
2952
+ "name": "project",
2953
+ "required": true,
2046
2954
  "hasDynamicHelp": false,
2047
2955
  "multiple": false,
2048
2956
  "type": "option"
2049
- },
2050
- "active": {
2051
- "description": "Whether the milestone is active",
2052
- "name": "active",
2053
- "allowNo": true,
2054
- "type": "boolean"
2055
2957
  }
2056
2958
  },
2057
2959
  "hasDynamicHelp": false,
2058
2960
  "hiddenAliases": [],
2059
- "id": "milestones:update",
2961
+ "id": "metrics:show",
2060
2962
  "pluginAlias": "@bussolabs/closeyourit-cli",
2061
2963
  "pluginName": "@bussolabs/closeyourit-cli",
2062
2964
  "pluginType": "core",
@@ -2066,8 +2968,8 @@
2066
2968
  "relativePath": [
2067
2969
  "dist",
2068
2970
  "commands",
2069
- "milestones",
2070
- "update.js"
2971
+ "metrics",
2972
+ "show.js"
2071
2973
  ]
2072
2974
  },
2073
2975
  "monitors:create": {
@@ -2567,28 +3469,255 @@
2567
3469
  "multiple": false,
2568
3470
  "type": "option"
2569
3471
  },
2570
- "slug": {
2571
- "description": "New organization slug (lowercase, a-z 0-9 and hyphens)",
2572
- "name": "slug",
3472
+ "slug": {
3473
+ "description": "New organization slug (lowercase, a-z 0-9 and hyphens)",
3474
+ "name": "slug",
3475
+ "hasDynamicHelp": false,
3476
+ "multiple": false,
3477
+ "type": "option"
3478
+ },
3479
+ "projects-view": {
3480
+ "description": "Default projects list view",
3481
+ "name": "projects-view",
3482
+ "hasDynamicHelp": false,
3483
+ "multiple": false,
3484
+ "options": [
3485
+ "cards",
3486
+ "table"
3487
+ ],
3488
+ "type": "option"
3489
+ }
3490
+ },
3491
+ "hasDynamicHelp": false,
3492
+ "hiddenAliases": [],
3493
+ "id": "org:update",
3494
+ "pluginAlias": "@bussolabs/closeyourit-cli",
3495
+ "pluginName": "@bussolabs/closeyourit-cli",
3496
+ "pluginType": "core",
3497
+ "strict": true,
3498
+ "enableJsonFlag": true,
3499
+ "isESM": false,
3500
+ "relativePath": [
3501
+ "dist",
3502
+ "commands",
3503
+ "org",
3504
+ "update.js"
3505
+ ]
3506
+ },
3507
+ "platforms:create": {
3508
+ "aliases": [],
3509
+ "args": {
3510
+ "code": {
3511
+ "description": "Platform code (e.g. \"ios\", \"android\", \"web\")",
3512
+ "name": "code",
3513
+ "required": true
3514
+ }
3515
+ },
3516
+ "description": "Create a platform (a device/system your projects run on)",
3517
+ "examples": [
3518
+ "<%= config.bin %> platforms create ios --label iOS",
3519
+ "<%= config.bin %> platforms create android --label Android --color emerald --position 2"
3520
+ ],
3521
+ "flags": {
3522
+ "json": {
3523
+ "description": "Format output as json.",
3524
+ "helpGroup": "GLOBAL",
3525
+ "name": "json",
3526
+ "allowNo": false,
3527
+ "type": "boolean"
3528
+ },
3529
+ "label": {
3530
+ "description": "Human-readable label",
3531
+ "name": "label",
3532
+ "required": true,
3533
+ "hasDynamicHelp": false,
3534
+ "multiple": false,
3535
+ "type": "option"
3536
+ },
3537
+ "color": {
3538
+ "description": "Color label",
3539
+ "name": "color",
3540
+ "default": "sky",
3541
+ "hasDynamicHelp": false,
3542
+ "multiple": false,
3543
+ "type": "option"
3544
+ },
3545
+ "position": {
3546
+ "description": "Sort position",
3547
+ "name": "position",
3548
+ "hasDynamicHelp": false,
3549
+ "multiple": false,
3550
+ "type": "option"
3551
+ },
3552
+ "active": {
3553
+ "description": "Whether the platform is active",
3554
+ "name": "active",
3555
+ "allowNo": true,
3556
+ "type": "boolean"
3557
+ }
3558
+ },
3559
+ "hasDynamicHelp": false,
3560
+ "hiddenAliases": [],
3561
+ "id": "platforms:create",
3562
+ "pluginAlias": "@bussolabs/closeyourit-cli",
3563
+ "pluginName": "@bussolabs/closeyourit-cli",
3564
+ "pluginType": "core",
3565
+ "strict": true,
3566
+ "enableJsonFlag": true,
3567
+ "isESM": false,
3568
+ "relativePath": [
3569
+ "dist",
3570
+ "commands",
3571
+ "platforms",
3572
+ "create.js"
3573
+ ]
3574
+ },
3575
+ "platforms:delete": {
3576
+ "aliases": [],
3577
+ "args": {
3578
+ "platform": {
3579
+ "description": "Platform id (UUID) or code",
3580
+ "name": "platform",
3581
+ "required": true
3582
+ }
3583
+ },
3584
+ "description": "Delete a platform (blocked if any project or ticket still references it)",
3585
+ "examples": [
3586
+ "<%= config.bin %> platforms delete legacy --confirm"
3587
+ ],
3588
+ "flags": {
3589
+ "json": {
3590
+ "description": "Format output as json.",
3591
+ "helpGroup": "GLOBAL",
3592
+ "name": "json",
3593
+ "allowNo": false,
3594
+ "type": "boolean"
3595
+ },
3596
+ "confirm": {
3597
+ "description": "Required: confirm the deletion",
3598
+ "name": "confirm",
3599
+ "allowNo": false,
3600
+ "type": "boolean"
3601
+ }
3602
+ },
3603
+ "hasDynamicHelp": false,
3604
+ "hiddenAliases": [],
3605
+ "id": "platforms:delete",
3606
+ "pluginAlias": "@bussolabs/closeyourit-cli",
3607
+ "pluginName": "@bussolabs/closeyourit-cli",
3608
+ "pluginType": "core",
3609
+ "strict": true,
3610
+ "enableJsonFlag": true,
3611
+ "isESM": false,
3612
+ "relativePath": [
3613
+ "dist",
3614
+ "commands",
3615
+ "platforms",
3616
+ "delete.js"
3617
+ ]
3618
+ },
3619
+ "platforms:list": {
3620
+ "aliases": [],
3621
+ "args": {},
3622
+ "description": "List the platforms (devices/systems) in your organization",
3623
+ "examples": [
3624
+ "<%= config.bin %> platforms list",
3625
+ "<%= config.bin %> platforms list --page 2 --json"
3626
+ ],
3627
+ "flags": {
3628
+ "json": {
3629
+ "description": "Format output as json.",
3630
+ "helpGroup": "GLOBAL",
3631
+ "name": "json",
3632
+ "allowNo": false,
3633
+ "type": "boolean"
3634
+ },
3635
+ "page": {
3636
+ "description": "Page number",
3637
+ "name": "page",
3638
+ "default": 1,
3639
+ "hasDynamicHelp": false,
3640
+ "multiple": false,
3641
+ "type": "option"
3642
+ }
3643
+ },
3644
+ "hasDynamicHelp": false,
3645
+ "hiddenAliases": [],
3646
+ "id": "platforms:list",
3647
+ "pluginAlias": "@bussolabs/closeyourit-cli",
3648
+ "pluginName": "@bussolabs/closeyourit-cli",
3649
+ "pluginType": "core",
3650
+ "strict": true,
3651
+ "enableJsonFlag": true,
3652
+ "isESM": false,
3653
+ "relativePath": [
3654
+ "dist",
3655
+ "commands",
3656
+ "platforms",
3657
+ "list.js"
3658
+ ]
3659
+ },
3660
+ "platforms:update": {
3661
+ "aliases": [],
3662
+ "args": {
3663
+ "platform": {
3664
+ "description": "Platform id (UUID) or code",
3665
+ "name": "platform",
3666
+ "required": true
3667
+ }
3668
+ },
3669
+ "description": "Update a platform (relabel, recolor, reorder, activate/deactivate)",
3670
+ "examples": [
3671
+ "<%= config.bin %> platforms update ios --label \"iOS / iPadOS\"",
3672
+ "<%= config.bin %> platforms update web --color indigo --position 1",
3673
+ "<%= config.bin %> platforms update legacy --no-active"
3674
+ ],
3675
+ "flags": {
3676
+ "json": {
3677
+ "description": "Format output as json.",
3678
+ "helpGroup": "GLOBAL",
3679
+ "name": "json",
3680
+ "allowNo": false,
3681
+ "type": "boolean"
3682
+ },
3683
+ "code": {
3684
+ "description": "New code",
3685
+ "name": "code",
3686
+ "hasDynamicHelp": false,
3687
+ "multiple": false,
3688
+ "type": "option"
3689
+ },
3690
+ "label": {
3691
+ "description": "New label",
3692
+ "name": "label",
3693
+ "hasDynamicHelp": false,
3694
+ "multiple": false,
3695
+ "type": "option"
3696
+ },
3697
+ "color": {
3698
+ "description": "Color label",
3699
+ "name": "color",
2573
3700
  "hasDynamicHelp": false,
2574
3701
  "multiple": false,
2575
3702
  "type": "option"
2576
3703
  },
2577
- "projects-view": {
2578
- "description": "Default projects list view",
2579
- "name": "projects-view",
3704
+ "position": {
3705
+ "description": "Sort position",
3706
+ "name": "position",
2580
3707
  "hasDynamicHelp": false,
2581
3708
  "multiple": false,
2582
- "options": [
2583
- "cards",
2584
- "table"
2585
- ],
2586
3709
  "type": "option"
3710
+ },
3711
+ "active": {
3712
+ "description": "Whether the platform is active",
3713
+ "name": "active",
3714
+ "allowNo": true,
3715
+ "type": "boolean"
2587
3716
  }
2588
3717
  },
2589
3718
  "hasDynamicHelp": false,
2590
3719
  "hiddenAliases": [],
2591
- "id": "org:update",
3720
+ "id": "platforms:update",
2592
3721
  "pluginAlias": "@bussolabs/closeyourit-cli",
2593
3722
  "pluginName": "@bussolabs/closeyourit-cli",
2594
3723
  "pluginType": "core",
@@ -2598,7 +3727,7 @@
2598
3727
  "relativePath": [
2599
3728
  "dist",
2600
3729
  "commands",
2601
- "org",
3730
+ "platforms",
2602
3731
  "update.js"
2603
3732
  ]
2604
3733
  },
@@ -2993,233 +4122,6 @@
2993
4122
  "update.js"
2994
4123
  ]
2995
4124
  },
2996
- "platforms:create": {
2997
- "aliases": [],
2998
- "args": {
2999
- "code": {
3000
- "description": "Platform code (e.g. \"ios\", \"android\", \"web\")",
3001
- "name": "code",
3002
- "required": true
3003
- }
3004
- },
3005
- "description": "Create a platform (a device/system your projects run on)",
3006
- "examples": [
3007
- "<%= config.bin %> platforms create ios --label iOS",
3008
- "<%= config.bin %> platforms create android --label Android --color emerald --position 2"
3009
- ],
3010
- "flags": {
3011
- "json": {
3012
- "description": "Format output as json.",
3013
- "helpGroup": "GLOBAL",
3014
- "name": "json",
3015
- "allowNo": false,
3016
- "type": "boolean"
3017
- },
3018
- "label": {
3019
- "description": "Human-readable label",
3020
- "name": "label",
3021
- "required": true,
3022
- "hasDynamicHelp": false,
3023
- "multiple": false,
3024
- "type": "option"
3025
- },
3026
- "color": {
3027
- "description": "Color label",
3028
- "name": "color",
3029
- "default": "sky",
3030
- "hasDynamicHelp": false,
3031
- "multiple": false,
3032
- "type": "option"
3033
- },
3034
- "position": {
3035
- "description": "Sort position",
3036
- "name": "position",
3037
- "hasDynamicHelp": false,
3038
- "multiple": false,
3039
- "type": "option"
3040
- },
3041
- "active": {
3042
- "description": "Whether the platform is active",
3043
- "name": "active",
3044
- "allowNo": true,
3045
- "type": "boolean"
3046
- }
3047
- },
3048
- "hasDynamicHelp": false,
3049
- "hiddenAliases": [],
3050
- "id": "platforms:create",
3051
- "pluginAlias": "@bussolabs/closeyourit-cli",
3052
- "pluginName": "@bussolabs/closeyourit-cli",
3053
- "pluginType": "core",
3054
- "strict": true,
3055
- "enableJsonFlag": true,
3056
- "isESM": false,
3057
- "relativePath": [
3058
- "dist",
3059
- "commands",
3060
- "platforms",
3061
- "create.js"
3062
- ]
3063
- },
3064
- "platforms:delete": {
3065
- "aliases": [],
3066
- "args": {
3067
- "platform": {
3068
- "description": "Platform id (UUID) or code",
3069
- "name": "platform",
3070
- "required": true
3071
- }
3072
- },
3073
- "description": "Delete a platform (blocked if any project or ticket still references it)",
3074
- "examples": [
3075
- "<%= config.bin %> platforms delete legacy --confirm"
3076
- ],
3077
- "flags": {
3078
- "json": {
3079
- "description": "Format output as json.",
3080
- "helpGroup": "GLOBAL",
3081
- "name": "json",
3082
- "allowNo": false,
3083
- "type": "boolean"
3084
- },
3085
- "confirm": {
3086
- "description": "Required: confirm the deletion",
3087
- "name": "confirm",
3088
- "allowNo": false,
3089
- "type": "boolean"
3090
- }
3091
- },
3092
- "hasDynamicHelp": false,
3093
- "hiddenAliases": [],
3094
- "id": "platforms:delete",
3095
- "pluginAlias": "@bussolabs/closeyourit-cli",
3096
- "pluginName": "@bussolabs/closeyourit-cli",
3097
- "pluginType": "core",
3098
- "strict": true,
3099
- "enableJsonFlag": true,
3100
- "isESM": false,
3101
- "relativePath": [
3102
- "dist",
3103
- "commands",
3104
- "platforms",
3105
- "delete.js"
3106
- ]
3107
- },
3108
- "platforms:list": {
3109
- "aliases": [],
3110
- "args": {},
3111
- "description": "List the platforms (devices/systems) in your organization",
3112
- "examples": [
3113
- "<%= config.bin %> platforms list",
3114
- "<%= config.bin %> platforms list --page 2 --json"
3115
- ],
3116
- "flags": {
3117
- "json": {
3118
- "description": "Format output as json.",
3119
- "helpGroup": "GLOBAL",
3120
- "name": "json",
3121
- "allowNo": false,
3122
- "type": "boolean"
3123
- },
3124
- "page": {
3125
- "description": "Page number",
3126
- "name": "page",
3127
- "default": 1,
3128
- "hasDynamicHelp": false,
3129
- "multiple": false,
3130
- "type": "option"
3131
- }
3132
- },
3133
- "hasDynamicHelp": false,
3134
- "hiddenAliases": [],
3135
- "id": "platforms:list",
3136
- "pluginAlias": "@bussolabs/closeyourit-cli",
3137
- "pluginName": "@bussolabs/closeyourit-cli",
3138
- "pluginType": "core",
3139
- "strict": true,
3140
- "enableJsonFlag": true,
3141
- "isESM": false,
3142
- "relativePath": [
3143
- "dist",
3144
- "commands",
3145
- "platforms",
3146
- "list.js"
3147
- ]
3148
- },
3149
- "platforms:update": {
3150
- "aliases": [],
3151
- "args": {
3152
- "platform": {
3153
- "description": "Platform id (UUID) or code",
3154
- "name": "platform",
3155
- "required": true
3156
- }
3157
- },
3158
- "description": "Update a platform (relabel, recolor, reorder, activate/deactivate)",
3159
- "examples": [
3160
- "<%= config.bin %> platforms update ios --label \"iOS / iPadOS\"",
3161
- "<%= config.bin %> platforms update web --color indigo --position 1",
3162
- "<%= config.bin %> platforms update legacy --no-active"
3163
- ],
3164
- "flags": {
3165
- "json": {
3166
- "description": "Format output as json.",
3167
- "helpGroup": "GLOBAL",
3168
- "name": "json",
3169
- "allowNo": false,
3170
- "type": "boolean"
3171
- },
3172
- "code": {
3173
- "description": "New code",
3174
- "name": "code",
3175
- "hasDynamicHelp": false,
3176
- "multiple": false,
3177
- "type": "option"
3178
- },
3179
- "label": {
3180
- "description": "New label",
3181
- "name": "label",
3182
- "hasDynamicHelp": false,
3183
- "multiple": false,
3184
- "type": "option"
3185
- },
3186
- "color": {
3187
- "description": "Color label",
3188
- "name": "color",
3189
- "hasDynamicHelp": false,
3190
- "multiple": false,
3191
- "type": "option"
3192
- },
3193
- "position": {
3194
- "description": "Sort position",
3195
- "name": "position",
3196
- "hasDynamicHelp": false,
3197
- "multiple": false,
3198
- "type": "option"
3199
- },
3200
- "active": {
3201
- "description": "Whether the platform is active",
3202
- "name": "active",
3203
- "allowNo": true,
3204
- "type": "boolean"
3205
- }
3206
- },
3207
- "hasDynamicHelp": false,
3208
- "hiddenAliases": [],
3209
- "id": "platforms:update",
3210
- "pluginAlias": "@bussolabs/closeyourit-cli",
3211
- "pluginName": "@bussolabs/closeyourit-cli",
3212
- "pluginType": "core",
3213
- "strict": true,
3214
- "enableJsonFlag": true,
3215
- "isESM": false,
3216
- "relativePath": [
3217
- "dist",
3218
- "commands",
3219
- "platforms",
3220
- "update.js"
3221
- ]
3222
- },
3223
4125
  "roles:create": {
3224
4126
  "aliases": [],
3225
4127
  "args": {
@@ -5812,5 +6714,5 @@
5812
6714
  ]
5813
6715
  }
5814
6716
  },
5815
- "version": "0.0.12"
6717
+ "version": "0.0.14"
5816
6718
  }