claude-scope 0.8.20 → 0.8.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/claude-scope.cjs +349 -46
- package/package.json +3 -2
package/dist/claude-scope.cjs
CHANGED
|
@@ -141,6 +141,13 @@ function createThemeColors(params) {
|
|
|
141
141
|
count: params.dockerCount ?? params.model,
|
|
142
142
|
running: params.dockerRunning ?? params.contextLow,
|
|
143
143
|
stopped: params.dockerStopped ?? params.contextHigh
|
|
144
|
+
},
|
|
145
|
+
sysmon: {
|
|
146
|
+
cpu: params.sysmonCpu,
|
|
147
|
+
ram: params.sysmonRam,
|
|
148
|
+
disk: params.sysmonDisk,
|
|
149
|
+
network: params.sysmonNetwork,
|
|
150
|
+
separator: params.sysmonSeparator
|
|
144
151
|
}
|
|
145
152
|
};
|
|
146
153
|
}
|
|
@@ -189,7 +196,12 @@ var init_gray_theme = __esm({
|
|
|
189
196
|
dockerLabel: gray,
|
|
190
197
|
dockerCount: gray,
|
|
191
198
|
dockerRunning: gray,
|
|
192
|
-
dockerStopped: gray
|
|
199
|
+
dockerStopped: gray,
|
|
200
|
+
sysmonCpu: gray,
|
|
201
|
+
sysmonRam: gray,
|
|
202
|
+
sysmonDisk: gray,
|
|
203
|
+
sysmonNetwork: gray,
|
|
204
|
+
sysmonSeparator: gray
|
|
193
205
|
})
|
|
194
206
|
};
|
|
195
207
|
}
|
|
@@ -261,8 +273,18 @@ var init_catppuccin_mocha_theme = __esm({
|
|
|
261
273
|
// Mauve
|
|
262
274
|
dockerRunning: rgb(166, 227, 161),
|
|
263
275
|
// Green
|
|
264
|
-
dockerStopped: rgb(243, 139, 168)
|
|
276
|
+
dockerStopped: rgb(243, 139, 168),
|
|
265
277
|
// Red
|
|
278
|
+
sysmonCpu: rgb(243, 139, 168),
|
|
279
|
+
// Red (alert)
|
|
280
|
+
sysmonRam: rgb(137, 180, 250),
|
|
281
|
+
// Blue (info)
|
|
282
|
+
sysmonDisk: rgb(238, 212, 159),
|
|
283
|
+
// Yellow (warning)
|
|
284
|
+
sysmonNetwork: rgb(166, 227, 161),
|
|
285
|
+
// Green (success)
|
|
286
|
+
sysmonSeparator: rgb(88, 91, 112)
|
|
287
|
+
// Dark gray
|
|
266
288
|
})
|
|
267
289
|
};
|
|
268
290
|
}
|
|
@@ -334,8 +356,18 @@ var init_cyberpunk_neon_theme = __esm({
|
|
|
334
356
|
// Purple neon
|
|
335
357
|
dockerRunning: rgb(0, 255, 122),
|
|
336
358
|
// Green neon
|
|
337
|
-
dockerStopped: rgb(255, 0, 122)
|
|
359
|
+
dockerStopped: rgb(255, 0, 122),
|
|
338
360
|
// Magenta neon
|
|
361
|
+
sysmonCpu: rgb(255, 0, 122),
|
|
362
|
+
// Magenta neon (alert)
|
|
363
|
+
sysmonRam: rgb(0, 191, 255),
|
|
364
|
+
// Cyan neon (info)
|
|
365
|
+
sysmonDisk: rgb(255, 214, 0),
|
|
366
|
+
// Yellow neon (warning)
|
|
367
|
+
sysmonNetwork: rgb(0, 255, 122),
|
|
368
|
+
// Green neon (success)
|
|
369
|
+
sysmonSeparator: rgb(68, 0, 102)
|
|
370
|
+
// Dark purple
|
|
339
371
|
})
|
|
340
372
|
};
|
|
341
373
|
}
|
|
@@ -407,8 +439,18 @@ var init_dracula_theme = __esm({
|
|
|
407
439
|
// Purple
|
|
408
440
|
dockerRunning: rgb(80, 250, 123),
|
|
409
441
|
// Green
|
|
410
|
-
dockerStopped: rgb(255, 85, 85)
|
|
442
|
+
dockerStopped: rgb(255, 85, 85),
|
|
411
443
|
// Red
|
|
444
|
+
sysmonCpu: rgb(255, 85, 85),
|
|
445
|
+
// Red (alert)
|
|
446
|
+
sysmonRam: rgb(139, 233, 253),
|
|
447
|
+
// Cyan (info)
|
|
448
|
+
sysmonDisk: rgb(255, 184, 108),
|
|
449
|
+
// Orange (warning)
|
|
450
|
+
sysmonNetwork: rgb(80, 250, 123),
|
|
451
|
+
// Green (success)
|
|
452
|
+
sysmonSeparator: rgb(68, 71, 90)
|
|
453
|
+
// Dark gray
|
|
412
454
|
})
|
|
413
455
|
};
|
|
414
456
|
}
|
|
@@ -469,8 +511,18 @@ var init_dusty_sage_theme = __esm({
|
|
|
469
511
|
// Gray
|
|
470
512
|
dockerRunning: rgb(135, 145, 140),
|
|
471
513
|
// Subtle sage
|
|
472
|
-
dockerStopped: rgb(165, 175, 160)
|
|
514
|
+
dockerStopped: rgb(165, 175, 160),
|
|
473
515
|
// Light sage
|
|
516
|
+
sysmonCpu: rgb(165, 175, 160),
|
|
517
|
+
// Light sage (alert)
|
|
518
|
+
sysmonRam: rgb(120, 140, 130),
|
|
519
|
+
// Dusty green (info)
|
|
520
|
+
sysmonDisk: rgb(150, 160, 145),
|
|
521
|
+
// Medium sage (warning)
|
|
522
|
+
sysmonNetwork: rgb(135, 145, 140),
|
|
523
|
+
// Subtle sage (success)
|
|
524
|
+
sysmonSeparator: rgb(90, 100, 110)
|
|
525
|
+
// Dark gray
|
|
474
526
|
})
|
|
475
527
|
};
|
|
476
528
|
}
|
|
@@ -542,8 +594,18 @@ var init_github_dark_dimmed_theme = __esm({
|
|
|
542
594
|
// Purple
|
|
543
595
|
dockerRunning: rgb(35, 134, 54),
|
|
544
596
|
// GitHub green
|
|
545
|
-
dockerStopped: rgb(248, 81, 73)
|
|
597
|
+
dockerStopped: rgb(248, 81, 73),
|
|
546
598
|
// GitHub red
|
|
599
|
+
sysmonCpu: rgb(248, 81, 73),
|
|
600
|
+
// GitHub red (alert)
|
|
601
|
+
sysmonRam: rgb(88, 166, 255),
|
|
602
|
+
// GitHub blue (info)
|
|
603
|
+
sysmonDisk: rgb(210, 153, 34),
|
|
604
|
+
// GitHub orange (warning)
|
|
605
|
+
sysmonNetwork: rgb(35, 134, 54),
|
|
606
|
+
// GitHub green (success)
|
|
607
|
+
sysmonSeparator: rgb(73, 79, 91)
|
|
608
|
+
// Dark gray
|
|
547
609
|
})
|
|
548
610
|
};
|
|
549
611
|
}
|
|
@@ -615,8 +677,18 @@ var init_monokai_theme = __esm({
|
|
|
615
677
|
// Purple
|
|
616
678
|
dockerRunning: rgb(166, 226, 46),
|
|
617
679
|
// Green
|
|
618
|
-
dockerStopped: rgb(174, 129, 255)
|
|
680
|
+
dockerStopped: rgb(174, 129, 255),
|
|
619
681
|
// Purple
|
|
682
|
+
sysmonCpu: rgb(249, 26, 114),
|
|
683
|
+
// Pink (alert)
|
|
684
|
+
sysmonRam: rgb(102, 217, 239),
|
|
685
|
+
// Cyan (info)
|
|
686
|
+
sysmonDisk: rgb(253, 151, 31),
|
|
687
|
+
// Orange (warning)
|
|
688
|
+
sysmonNetwork: rgb(166, 226, 46),
|
|
689
|
+
// Green (success)
|
|
690
|
+
sysmonSeparator: rgb(98, 114, 164)
|
|
691
|
+
// Dark gray
|
|
620
692
|
})
|
|
621
693
|
};
|
|
622
694
|
}
|
|
@@ -677,8 +749,18 @@ var init_muted_gray_theme = __esm({
|
|
|
677
749
|
// Lighter slate
|
|
678
750
|
dockerRunning: rgb(148, 163, 184),
|
|
679
751
|
// Subtle gray
|
|
680
|
-
dockerStopped: rgb(175, 188, 201)
|
|
752
|
+
dockerStopped: rgb(175, 188, 201),
|
|
681
753
|
// Light gray
|
|
754
|
+
sysmonCpu: rgb(175, 188, 201),
|
|
755
|
+
// Light gray (alert)
|
|
756
|
+
sysmonRam: rgb(156, 163, 175),
|
|
757
|
+
// Slate gray (info)
|
|
758
|
+
sysmonDisk: rgb(160, 174, 192),
|
|
759
|
+
// Medium gray (warning)
|
|
760
|
+
sysmonNetwork: rgb(148, 163, 184),
|
|
761
|
+
// Subtle gray (success)
|
|
762
|
+
sysmonSeparator: rgb(75, 85, 99)
|
|
763
|
+
// Dark gray
|
|
682
764
|
})
|
|
683
765
|
};
|
|
684
766
|
}
|
|
@@ -750,8 +832,18 @@ var init_nord_theme = __esm({
|
|
|
750
832
|
// Nordic white
|
|
751
833
|
dockerRunning: rgb(163, 190, 140),
|
|
752
834
|
// Nordic green
|
|
753
|
-
dockerStopped: rgb(191, 97, 106)
|
|
835
|
+
dockerStopped: rgb(191, 97, 106),
|
|
754
836
|
// Nordic red
|
|
837
|
+
sysmonCpu: rgb(191, 97, 106),
|
|
838
|
+
// Nordic red (alert)
|
|
839
|
+
sysmonRam: rgb(136, 192, 208),
|
|
840
|
+
// Nordic cyan (info)
|
|
841
|
+
sysmonDisk: rgb(235, 203, 139),
|
|
842
|
+
// Nordic yellow (warning)
|
|
843
|
+
sysmonNetwork: rgb(163, 190, 140),
|
|
844
|
+
// Nordic green (success)
|
|
845
|
+
sysmonSeparator: rgb(76, 86, 106)
|
|
846
|
+
// Nordic dark gray
|
|
755
847
|
})
|
|
756
848
|
};
|
|
757
849
|
}
|
|
@@ -823,8 +915,18 @@ var init_one_dark_pro_theme = __esm({
|
|
|
823
915
|
// Orange
|
|
824
916
|
dockerRunning: rgb(152, 195, 121),
|
|
825
917
|
// Green
|
|
826
|
-
dockerStopped: rgb(224, 108, 117)
|
|
918
|
+
dockerStopped: rgb(224, 108, 117),
|
|
827
919
|
// Red
|
|
920
|
+
sysmonCpu: rgb(224, 108, 117),
|
|
921
|
+
// Red (alert)
|
|
922
|
+
sysmonRam: rgb(97, 175, 239),
|
|
923
|
+
// Blue (info)
|
|
924
|
+
sysmonDisk: rgb(229, 192, 123),
|
|
925
|
+
// Yellow (warning)
|
|
926
|
+
sysmonNetwork: rgb(152, 195, 121),
|
|
927
|
+
// Green (success)
|
|
928
|
+
sysmonSeparator: rgb(91, 98, 113)
|
|
929
|
+
// Dark gray
|
|
828
930
|
})
|
|
829
931
|
};
|
|
830
932
|
}
|
|
@@ -896,8 +998,18 @@ var init_professional_blue_theme = __esm({
|
|
|
896
998
|
// Purple
|
|
897
999
|
dockerRunning: rgb(74, 222, 128),
|
|
898
1000
|
// Green
|
|
899
|
-
dockerStopped: rgb(248, 113, 113)
|
|
1001
|
+
dockerStopped: rgb(248, 113, 113),
|
|
900
1002
|
// Red
|
|
1003
|
+
sysmonCpu: rgb(248, 113, 113),
|
|
1004
|
+
// Red (alert)
|
|
1005
|
+
sysmonRam: rgb(96, 165, 250),
|
|
1006
|
+
// Light blue (info)
|
|
1007
|
+
sysmonDisk: rgb(251, 191, 36),
|
|
1008
|
+
// Amber (warning)
|
|
1009
|
+
sysmonNetwork: rgb(74, 222, 128),
|
|
1010
|
+
// Green (success)
|
|
1011
|
+
sysmonSeparator: rgb(100, 116, 139)
|
|
1012
|
+
// Dark slate
|
|
901
1013
|
})
|
|
902
1014
|
};
|
|
903
1015
|
}
|
|
@@ -969,8 +1081,18 @@ var init_rose_pine_theme = __esm({
|
|
|
969
1081
|
// Pine pink
|
|
970
1082
|
dockerRunning: rgb(156, 207, 216),
|
|
971
1083
|
// Pine cyan
|
|
972
|
-
dockerStopped: rgb(235, 111, 146)
|
|
1084
|
+
dockerStopped: rgb(235, 111, 146),
|
|
973
1085
|
// Pine red
|
|
1086
|
+
sysmonCpu: rgb(235, 111, 146),
|
|
1087
|
+
// Pine red (alert)
|
|
1088
|
+
sysmonRam: rgb(156, 207, 216),
|
|
1089
|
+
// Pine cyan (info)
|
|
1090
|
+
sysmonDisk: rgb(233, 201, 176),
|
|
1091
|
+
// Pine beige (warning)
|
|
1092
|
+
sysmonNetwork: rgb(156, 207, 216),
|
|
1093
|
+
// Pine cyan (success)
|
|
1094
|
+
sysmonSeparator: rgb(112, 88, 105)
|
|
1095
|
+
// Pine dark
|
|
974
1096
|
})
|
|
975
1097
|
};
|
|
976
1098
|
}
|
|
@@ -1042,8 +1164,18 @@ var init_semantic_classic_theme = __esm({
|
|
|
1042
1164
|
// Indigo
|
|
1043
1165
|
dockerRunning: rgb(34, 197, 94),
|
|
1044
1166
|
// Green
|
|
1045
|
-
dockerStopped: rgb(239, 68, 68)
|
|
1167
|
+
dockerStopped: rgb(239, 68, 68),
|
|
1046
1168
|
// Red
|
|
1169
|
+
sysmonCpu: rgb(239, 68, 68),
|
|
1170
|
+
// Red (alert)
|
|
1171
|
+
sysmonRam: rgb(59, 130, 246),
|
|
1172
|
+
// Blue (info)
|
|
1173
|
+
sysmonDisk: rgb(234, 179, 8),
|
|
1174
|
+
// Yellow (warning)
|
|
1175
|
+
sysmonNetwork: rgb(34, 197, 94),
|
|
1176
|
+
// Green (success)
|
|
1177
|
+
sysmonSeparator: rgb(75, 85, 99)
|
|
1178
|
+
// Dark gray
|
|
1047
1179
|
})
|
|
1048
1180
|
};
|
|
1049
1181
|
}
|
|
@@ -1104,8 +1236,18 @@ var init_slate_blue_theme = __esm({
|
|
|
1104
1236
|
// Neutral slate
|
|
1105
1237
|
dockerRunning: rgb(148, 163, 184),
|
|
1106
1238
|
// Subtle slate-blue
|
|
1107
|
-
dockerStopped: rgb(175, 188, 201)
|
|
1239
|
+
dockerStopped: rgb(175, 188, 201),
|
|
1108
1240
|
// Light slate
|
|
1241
|
+
sysmonCpu: rgb(175, 188, 201),
|
|
1242
|
+
// Light slate (alert)
|
|
1243
|
+
sysmonRam: rgb(100, 116, 139),
|
|
1244
|
+
// Cool slate (info)
|
|
1245
|
+
sysmonDisk: rgb(160, 174, 192),
|
|
1246
|
+
// Medium slate (warning)
|
|
1247
|
+
sysmonNetwork: rgb(148, 163, 184),
|
|
1248
|
+
// Subtle slate-blue (success)
|
|
1249
|
+
sysmonSeparator: rgb(71, 85, 105)
|
|
1250
|
+
// Dark slate
|
|
1109
1251
|
})
|
|
1110
1252
|
};
|
|
1111
1253
|
}
|
|
@@ -1177,8 +1319,18 @@ var init_solarized_dark_theme = __esm({
|
|
|
1177
1319
|
// Orange
|
|
1178
1320
|
dockerRunning: rgb(133, 153, 0),
|
|
1179
1321
|
// Olive
|
|
1180
|
-
dockerStopped: rgb(220, 50, 47)
|
|
1322
|
+
dockerStopped: rgb(220, 50, 47),
|
|
1181
1323
|
// Red
|
|
1324
|
+
sysmonCpu: rgb(220, 50, 47),
|
|
1325
|
+
// Red (alert)
|
|
1326
|
+
sysmonRam: rgb(38, 139, 210),
|
|
1327
|
+
// Blue (info)
|
|
1328
|
+
sysmonDisk: rgb(181, 137, 0),
|
|
1329
|
+
// Yellow (warning)
|
|
1330
|
+
sysmonNetwork: rgb(133, 153, 0),
|
|
1331
|
+
// Olive (success)
|
|
1332
|
+
sysmonSeparator: rgb(7, 54, 66)
|
|
1333
|
+
// Base02
|
|
1182
1334
|
})
|
|
1183
1335
|
};
|
|
1184
1336
|
}
|
|
@@ -1250,8 +1402,18 @@ var init_tokyo_night_theme = __esm({
|
|
|
1250
1402
|
// Teal
|
|
1251
1403
|
dockerRunning: rgb(146, 180, 203),
|
|
1252
1404
|
// Cyan
|
|
1253
|
-
dockerStopped: rgb(249, 86, 119)
|
|
1405
|
+
dockerStopped: rgb(249, 86, 119),
|
|
1254
1406
|
// Red
|
|
1407
|
+
sysmonCpu: rgb(249, 86, 119),
|
|
1408
|
+
// Red (alert)
|
|
1409
|
+
sysmonRam: rgb(122, 132, 173),
|
|
1410
|
+
// Blue (info)
|
|
1411
|
+
sysmonDisk: rgb(232, 166, 162),
|
|
1412
|
+
// Pink-red (warning)
|
|
1413
|
+
sysmonNetwork: rgb(146, 180, 203),
|
|
1414
|
+
// Cyan (success)
|
|
1415
|
+
sysmonSeparator: rgb(77, 82, 120)
|
|
1416
|
+
// Dark blue-gray
|
|
1255
1417
|
})
|
|
1256
1418
|
};
|
|
1257
1419
|
}
|
|
@@ -1323,8 +1485,18 @@ var init_vscode_dark_plus_theme = __esm({
|
|
|
1323
1485
|
// Blue
|
|
1324
1486
|
dockerRunning: rgb(74, 222, 128),
|
|
1325
1487
|
// Green
|
|
1326
|
-
dockerStopped: rgb(171, 178, 191)
|
|
1488
|
+
dockerStopped: rgb(171, 178, 191),
|
|
1327
1489
|
// Gray
|
|
1490
|
+
sysmonCpu: rgb(248, 113, 113),
|
|
1491
|
+
// Red (alert)
|
|
1492
|
+
sysmonRam: rgb(96, 165, 250),
|
|
1493
|
+
// Blue (info)
|
|
1494
|
+
sysmonDisk: rgb(251, 191, 36),
|
|
1495
|
+
// Yellow (warning)
|
|
1496
|
+
sysmonNetwork: rgb(74, 222, 128),
|
|
1497
|
+
// Green (success)
|
|
1498
|
+
sysmonSeparator: rgb(86, 92, 104)
|
|
1499
|
+
// Dark gray
|
|
1328
1500
|
})
|
|
1329
1501
|
};
|
|
1330
1502
|
}
|
|
@@ -1798,13 +1970,13 @@ function truncatePath(path2) {
|
|
|
1798
1970
|
return path2;
|
|
1799
1971
|
}
|
|
1800
1972
|
const parts = path2.split("/");
|
|
1801
|
-
return
|
|
1973
|
+
return ".../" + parts[parts.length - 1];
|
|
1802
1974
|
}
|
|
1803
1975
|
function formatTool(name, target, colors2) {
|
|
1804
1976
|
const nameStr = colorize(name, colors2.tools.name);
|
|
1805
1977
|
if (target) {
|
|
1806
|
-
const targetStr = colorize(
|
|
1807
|
-
return
|
|
1978
|
+
const targetStr = colorize(": " + truncatePath(target), colors2.tools.target);
|
|
1979
|
+
return nameStr + targetStr;
|
|
1808
1980
|
}
|
|
1809
1981
|
return nameStr;
|
|
1810
1982
|
}
|
|
@@ -1818,7 +1990,7 @@ function pluralizeTool(name) {
|
|
|
1818
1990
|
Grep: "Greps",
|
|
1819
1991
|
Glob: "Globs"
|
|
1820
1992
|
};
|
|
1821
|
-
return irregular[name] ||
|
|
1993
|
+
return irregular[name] || name + "s";
|
|
1822
1994
|
}
|
|
1823
1995
|
function getDefaultColors() {
|
|
1824
1996
|
return {
|
|
@@ -1890,6 +2062,13 @@ function getDefaultColors() {
|
|
|
1890
2062
|
count: "\x1B[37m",
|
|
1891
2063
|
running: "\x1B[32m",
|
|
1892
2064
|
stopped: "\x1B[31m"
|
|
2065
|
+
},
|
|
2066
|
+
sysmon: {
|
|
2067
|
+
cpu: "\x1B[31m",
|
|
2068
|
+
ram: "\x1B[36m",
|
|
2069
|
+
disk: "\x1B[33m",
|
|
2070
|
+
network: "\x1B[32m",
|
|
2071
|
+
separator: "\x1B[90m"
|
|
1893
2072
|
}
|
|
1894
2073
|
};
|
|
1895
2074
|
}
|
|
@@ -1925,19 +2104,19 @@ var init_styles = __esm({
|
|
|
1925
2104
|
const completedCount = completedMap.get(name) ?? 0;
|
|
1926
2105
|
if (runningCount > 0 && completedCount > 0) {
|
|
1927
2106
|
const nameStr = colorize(name, c.tools.name);
|
|
1928
|
-
const runningStr = colorize(
|
|
1929
|
-
const doneStr = colorize(
|
|
1930
|
-
parts.push(
|
|
2107
|
+
const runningStr = colorize(runningCount + " running", c.tools.running);
|
|
2108
|
+
const doneStr = colorize(completedCount + " done", c.tools.completed);
|
|
2109
|
+
parts.push(nameStr + " (" + runningStr + ", " + doneStr + ")");
|
|
1931
2110
|
} else if (completedCount > 0) {
|
|
1932
2111
|
const pluralName = pluralizeTool(name);
|
|
1933
2112
|
const nameStr = colorize(pluralName, c.tools.name);
|
|
1934
|
-
const countStr = colorize(
|
|
1935
|
-
parts.push(
|
|
2113
|
+
const countStr = colorize(String(completedCount), c.tools.count);
|
|
2114
|
+
parts.push(nameStr + ": " + countStr);
|
|
1936
2115
|
} else if (runningCount > 0) {
|
|
1937
2116
|
const nameStr = colorize(name, c.tools.name);
|
|
1938
|
-
const runningStr = colorize(
|
|
2117
|
+
const runningStr = colorize(runningCount + " running", c.tools.running);
|
|
1939
2118
|
const doneStr = colorize("0 done", c.tools.completed);
|
|
1940
|
-
parts.push(
|
|
2119
|
+
parts.push(nameStr + " (" + runningStr + ", " + doneStr + ")");
|
|
1941
2120
|
}
|
|
1942
2121
|
}
|
|
1943
2122
|
if (parts.length === 0) {
|
|
@@ -1952,10 +2131,10 @@ var init_styles = __esm({
|
|
|
1952
2131
|
const parts = [];
|
|
1953
2132
|
const c = colors2 ?? getDefaultColors();
|
|
1954
2133
|
for (const tool of data.running) {
|
|
1955
|
-
parts.push(
|
|
2134
|
+
parts.push("[" + colorize(tool.name, c.tools.name) + "]");
|
|
1956
2135
|
}
|
|
1957
2136
|
for (const [name] of data.completed.slice(0, 3)) {
|
|
1958
|
-
parts.push(
|
|
2137
|
+
parts.push("[" + colorize(name, c.tools.completed) + "]");
|
|
1959
2138
|
}
|
|
1960
2139
|
if (parts.length === 0) {
|
|
1961
2140
|
return "";
|
|
@@ -2005,18 +2184,18 @@ var init_styles = __esm({
|
|
|
2005
2184
|
const emoji = emojis[name] ?? "\u{1F527}";
|
|
2006
2185
|
if (runningCount > 0 && completedCount > 0) {
|
|
2007
2186
|
const nameStr = colorize(name, c.tools.name);
|
|
2008
|
-
const runningStr = colorize(
|
|
2009
|
-
const doneStr = colorize(
|
|
2010
|
-
parts.push(
|
|
2187
|
+
const runningStr = colorize("\u25B6" + runningCount, c.tools.running);
|
|
2188
|
+
const doneStr = colorize("\u2713" + completedCount, c.tools.completed);
|
|
2189
|
+
parts.push(emoji + " " + nameStr + " (" + runningStr + ", " + doneStr + ")");
|
|
2011
2190
|
} else if (completedCount > 0) {
|
|
2012
2191
|
const pluralName = pluralizeTool(name);
|
|
2013
2192
|
const nameStr = colorize(pluralName, c.tools.name);
|
|
2014
|
-
const countStr = colorize(
|
|
2015
|
-
parts.push(
|
|
2193
|
+
const countStr = colorize(String(completedCount), c.tools.count);
|
|
2194
|
+
parts.push(emoji + " " + nameStr + ": " + countStr);
|
|
2016
2195
|
} else if (runningCount > 0) {
|
|
2017
2196
|
const nameStr = colorize(name, c.tools.name);
|
|
2018
|
-
const runningStr = colorize(
|
|
2019
|
-
parts.push(
|
|
2197
|
+
const runningStr = colorize("\u25B6" + runningCount, c.tools.running);
|
|
2198
|
+
parts.push(emoji + " " + nameStr + " (" + runningStr + ")");
|
|
2020
2199
|
}
|
|
2021
2200
|
}
|
|
2022
2201
|
if (parts.length === 0) {
|
|
@@ -2032,13 +2211,13 @@ var init_styles = __esm({
|
|
|
2032
2211
|
const c = colors2 ?? getDefaultColors();
|
|
2033
2212
|
for (const tool of data.running) {
|
|
2034
2213
|
const label = colorize("Running:", c.tools.running);
|
|
2035
|
-
parts.push(
|
|
2214
|
+
parts.push(label + " " + formatTool(tool.name, tool.target, c));
|
|
2036
2215
|
}
|
|
2037
2216
|
const sorted = data.completed.slice(0, 3);
|
|
2038
2217
|
for (const [name, count] of sorted) {
|
|
2039
2218
|
const label = colorize("Completed:", c.tools.completed);
|
|
2040
|
-
const countStr = colorize(
|
|
2041
|
-
parts.push(
|
|
2219
|
+
const countStr = colorize("(" + count + "x)", c.tools.count);
|
|
2220
|
+
parts.push(label + " " + name + " " + countStr);
|
|
2042
2221
|
}
|
|
2043
2222
|
if (parts.length === 0) {
|
|
2044
2223
|
return "";
|
|
@@ -2053,19 +2232,19 @@ var init_styles = __esm({
|
|
|
2053
2232
|
const allTools = [
|
|
2054
2233
|
...data.running.map((t) => {
|
|
2055
2234
|
const indicator = colorize("\u25D0", c.tools.running);
|
|
2056
|
-
return
|
|
2235
|
+
return indicator + " " + formatTool(t.name, t.target, c);
|
|
2057
2236
|
}),
|
|
2058
2237
|
...data.completed.slice(0, 3).map(([name, count]) => {
|
|
2059
2238
|
const indicator = colorize("\u2713", c.tools.completed);
|
|
2060
|
-
const countStr = colorize(
|
|
2061
|
-
return
|
|
2239
|
+
const countStr = colorize("\xD7" + count, c.tools.count);
|
|
2240
|
+
return indicator + " " + name + " " + countStr;
|
|
2062
2241
|
})
|
|
2063
2242
|
];
|
|
2064
2243
|
if (allTools.length === 0) {
|
|
2065
2244
|
return "";
|
|
2066
2245
|
}
|
|
2067
2246
|
const prefix = colors2 ? colorize("Tools:", c.semantic.info) : "Tools:";
|
|
2068
|
-
return
|
|
2247
|
+
return prefix + ": " + allTools.join(" | ");
|
|
2069
2248
|
},
|
|
2070
2249
|
/**
|
|
2071
2250
|
* indicator: ● bullet indicators
|
|
@@ -2075,11 +2254,11 @@ var init_styles = __esm({
|
|
|
2075
2254
|
const c = colors2 ?? getDefaultColors();
|
|
2076
2255
|
for (const tool of data.running) {
|
|
2077
2256
|
const bullet = colorize("\u25CF", c.semantic.info);
|
|
2078
|
-
parts.push(
|
|
2257
|
+
parts.push(bullet + " " + formatTool(tool.name, tool.target, c));
|
|
2079
2258
|
}
|
|
2080
2259
|
for (const [name] of data.completed.slice(0, 3)) {
|
|
2081
2260
|
const bullet = colorize("\u25CF", c.tools.completed);
|
|
2082
|
-
parts.push(
|
|
2261
|
+
parts.push(bullet + " " + name);
|
|
2083
2262
|
}
|
|
2084
2263
|
if (parts.length === 0) {
|
|
2085
2264
|
return "";
|
|
@@ -8030,6 +8209,127 @@ init_git_tag_widget();
|
|
|
8030
8209
|
init_git_widget();
|
|
8031
8210
|
init_lines_widget();
|
|
8032
8211
|
init_model_widget();
|
|
8212
|
+
|
|
8213
|
+
// src/widgets/sysmon-widget.ts
|
|
8214
|
+
init_widget_types();
|
|
8215
|
+
init_theme();
|
|
8216
|
+
|
|
8217
|
+
// src/widgets/sysmon/styles.ts
|
|
8218
|
+
init_colors();
|
|
8219
|
+
function formatGB(gb) {
|
|
8220
|
+
if (gb < 1) {
|
|
8221
|
+
return `${Math.round(gb * 1024)}MB`;
|
|
8222
|
+
}
|
|
8223
|
+
const formatted = gb.toFixed(1);
|
|
8224
|
+
return formatted.endsWith(".0") ? `${formatted.slice(0, -2)}GB` : `${formatted}GB`;
|
|
8225
|
+
}
|
|
8226
|
+
function formatMB(mb) {
|
|
8227
|
+
if (mb < 0.1) {
|
|
8228
|
+
const kb = mb * 1024;
|
|
8229
|
+
const formatted2 = kb.toFixed(1);
|
|
8230
|
+
return formatted2.endsWith(".0") ? `${formatted2.slice(0, -2)}KB` : `${formatted2}KB`;
|
|
8231
|
+
}
|
|
8232
|
+
const formatted = mb.toFixed(1);
|
|
8233
|
+
return formatted.endsWith(".0") ? `${formatted.slice(0, -2)}MB` : `${formatted}MB`;
|
|
8234
|
+
}
|
|
8235
|
+
var sysmonStyles = {
|
|
8236
|
+
balanced: (data, colors2) => {
|
|
8237
|
+
const cpu = colors2 ? colorize(`CPU ${data.cpu.percent}%`, colors2.cpu) : `CPU ${data.cpu.percent}%`;
|
|
8238
|
+
const ram = colors2 ? colorize(`RAM ${formatGB(data.memory.used)}`, colors2.ram) : `RAM ${formatGB(data.memory.used)}`;
|
|
8239
|
+
const disk = colors2 ? colorize(`Disk ${data.disk.percent}%`, colors2.disk) : `Disk ${data.disk.percent}%`;
|
|
8240
|
+
const net = colors2 ? colorize(`Net \u2193${formatMB(data.network.rxSec)}/s`, colors2.network) : `Net \u2193${formatMB(data.network.rxSec)}/s`;
|
|
8241
|
+
const sep = colors2 ? colorize("|", colors2.separator) : "|";
|
|
8242
|
+
return `${cpu} ${sep} ${ram} ${sep} ${disk} ${sep} ${net}`;
|
|
8243
|
+
},
|
|
8244
|
+
compact: (data, colors2) => {
|
|
8245
|
+
const cpu = colors2 ? colorize(`CPU${data.cpu.percent}%`, colors2.cpu) : `CPU${data.cpu.percent}%`;
|
|
8246
|
+
const ram = colors2 ? colorize(`RAM${formatGB(data.memory.used)}`, colors2.ram) : `RAM${formatGB(data.memory.used)}`;
|
|
8247
|
+
const disk = colors2 ? colorize(`D${data.disk.percent}%`, colors2.disk) : `D${data.disk.percent}%`;
|
|
8248
|
+
const net = colors2 ? colorize(`\u2193${formatMB(data.network.rxSec)}/s`, colors2.network) : `\u2193${formatMB(data.network.rxSec)}/s`;
|
|
8249
|
+
return `${cpu} ${ram} ${disk} ${net}`;
|
|
8250
|
+
},
|
|
8251
|
+
playful: (data, colors2) => {
|
|
8252
|
+
const cpu = colors2 ? colorize(`${data.cpu.percent}%`, colors2.cpu) : `${data.cpu.percent}%`;
|
|
8253
|
+
const ram = colors2 ? colorize(formatGB(data.memory.used), colors2.ram) : formatGB(data.memory.used);
|
|
8254
|
+
const disk = colors2 ? colorize(`${data.disk.percent}%`, colors2.disk) : `${data.disk.percent}%`;
|
|
8255
|
+
const net = colors2 ? colorize(`\u2193${formatMB(data.network.rxSec)}/s`, colors2.network) : `\u2193${formatMB(data.network.rxSec)}/s`;
|
|
8256
|
+
const sep = colors2 ? colorize("|", colors2.separator) : "|";
|
|
8257
|
+
return `\u{1F5A5}\uFE0F ${cpu} ${sep} \u{1F4BE} ${ram} ${sep} \u{1F4BF} ${disk} ${sep} \u{1F310} ${net}`;
|
|
8258
|
+
},
|
|
8259
|
+
verbose: (data, colors2) => {
|
|
8260
|
+
const cpu = colors2 ? colorize(`CPU: ${data.cpu.percent}%`, colors2.cpu) : `CPU: ${data.cpu.percent}%`;
|
|
8261
|
+
const ram = colors2 ? colorize(`RAM: ${formatGB(data.memory.used)}/${formatGB(data.memory.total)}`, colors2.ram) : `RAM: ${formatGB(data.memory.used)}/${formatGB(data.memory.total)}`;
|
|
8262
|
+
const disk = colors2 ? colorize(`Disk: ${formatGB(data.disk.used)}/${formatGB(data.disk.total)}`, colors2.disk) : `Disk: ${formatGB(data.disk.used)}/${formatGB(data.disk.total)}`;
|
|
8263
|
+
const net = colors2 ? colorize(
|
|
8264
|
+
`Net: \u2193${formatMB(data.network.rxSec)}/s \u2191${formatMB(data.network.txSec)}/s`,
|
|
8265
|
+
colors2.network
|
|
8266
|
+
) : `Net: \u2193${formatMB(data.network.rxSec)}/s \u2191${formatMB(data.network.txSec)}/s`;
|
|
8267
|
+
return `${cpu} | ${ram} | ${disk} | ${net}`;
|
|
8268
|
+
}
|
|
8269
|
+
};
|
|
8270
|
+
|
|
8271
|
+
// src/widgets/sysmon-widget.ts
|
|
8272
|
+
var SysmonWidget = class {
|
|
8273
|
+
id = "sysmon";
|
|
8274
|
+
metadata = createWidgetMetadata(
|
|
8275
|
+
"Sysmon",
|
|
8276
|
+
"System monitoring: CPU, RAM, Disk, Network metrics",
|
|
8277
|
+
"1.0.0",
|
|
8278
|
+
"claude-scope",
|
|
8279
|
+
2
|
|
8280
|
+
// Default to line 2
|
|
8281
|
+
);
|
|
8282
|
+
colors;
|
|
8283
|
+
provider;
|
|
8284
|
+
_lineOverride;
|
|
8285
|
+
styleFn = sysmonStyles.balanced;
|
|
8286
|
+
currentMetrics = null;
|
|
8287
|
+
updateIntervalMs = 2500;
|
|
8288
|
+
// 2.5 seconds
|
|
8289
|
+
enabled = true;
|
|
8290
|
+
constructor(colors2, provider) {
|
|
8291
|
+
this.colors = colors2 ?? DEFAULT_THEME;
|
|
8292
|
+
this.provider = provider ?? null;
|
|
8293
|
+
}
|
|
8294
|
+
async initialize(context) {
|
|
8295
|
+
this.enabled = context.config?.enabled !== false;
|
|
8296
|
+
if (!this.provider || !this.enabled) {
|
|
8297
|
+
return;
|
|
8298
|
+
}
|
|
8299
|
+
this.currentMetrics = await this.provider.getMetrics();
|
|
8300
|
+
this.provider.startUpdate(this.updateIntervalMs, (metrics) => {
|
|
8301
|
+
this.currentMetrics = metrics;
|
|
8302
|
+
});
|
|
8303
|
+
}
|
|
8304
|
+
async render(_context) {
|
|
8305
|
+
if (!this.currentMetrics || !this.isEnabled()) {
|
|
8306
|
+
return null;
|
|
8307
|
+
}
|
|
8308
|
+
return this.styleFn(this.currentMetrics, this.colors.sysmon);
|
|
8309
|
+
}
|
|
8310
|
+
async update(_data) {
|
|
8311
|
+
}
|
|
8312
|
+
isEnabled() {
|
|
8313
|
+
return this.enabled && this.provider !== null;
|
|
8314
|
+
}
|
|
8315
|
+
async cleanup() {
|
|
8316
|
+
this.provider?.stopUpdate();
|
|
8317
|
+
}
|
|
8318
|
+
setStyle(style = "balanced") {
|
|
8319
|
+
const fn = sysmonStyles[style];
|
|
8320
|
+
if (fn) {
|
|
8321
|
+
this.styleFn = fn;
|
|
8322
|
+
}
|
|
8323
|
+
}
|
|
8324
|
+
setLine(line) {
|
|
8325
|
+
this._lineOverride = line;
|
|
8326
|
+
}
|
|
8327
|
+
getLine() {
|
|
8328
|
+
return this._lineOverride ?? this.metadata.line ?? 2;
|
|
8329
|
+
}
|
|
8330
|
+
};
|
|
8331
|
+
|
|
8332
|
+
// src/cli/commands/quick-config/preview.ts
|
|
8033
8333
|
init_demo_data();
|
|
8034
8334
|
|
|
8035
8335
|
// src/cli/commands/quick-config/index.ts
|
|
@@ -8873,6 +9173,8 @@ var WidgetFactory = class {
|
|
|
8873
9173
|
return new DockerWidget(DEFAULT_THEME);
|
|
8874
9174
|
case "poker":
|
|
8875
9175
|
return new PokerWidget(DEFAULT_THEME);
|
|
9176
|
+
case "sysmon":
|
|
9177
|
+
return new SysmonWidget(DEFAULT_THEME);
|
|
8876
9178
|
case "empty-line":
|
|
8877
9179
|
return new EmptyLineWidget();
|
|
8878
9180
|
default:
|
|
@@ -8897,6 +9199,7 @@ var WidgetFactory = class {
|
|
|
8897
9199
|
"dev-server",
|
|
8898
9200
|
"docker",
|
|
8899
9201
|
"poker",
|
|
9202
|
+
"sysmon",
|
|
8900
9203
|
"empty-line"
|
|
8901
9204
|
];
|
|
8902
9205
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-scope",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.21",
|
|
4
4
|
"description": "Claude Code plugin for session status and analytics",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -51,6 +51,7 @@
|
|
|
51
51
|
]
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@inquirer/prompts": "^7.10.1"
|
|
54
|
+
"@inquirer/prompts": "^7.10.1",
|
|
55
|
+
"systeminformation": "^5.30.3"
|
|
55
56
|
}
|
|
56
57
|
}
|