ccusage 15.10.0 → 16.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,788 @@
1
+ {
2
+ "$ref": "#/definitions/ccusage-config",
3
+ "definitions": {
4
+ "ccusage-config": {
5
+ "type": "object",
6
+ "properties": {
7
+ "$schema": {
8
+ "type": "string",
9
+ "description": "JSON Schema URL for validation and autocomplete",
10
+ "markdownDescription": "JSON Schema URL for validation and autocomplete"
11
+ },
12
+ "defaults": {
13
+ "type": "object",
14
+ "properties": {
15
+ "since": {
16
+ "type": "string",
17
+ "description": "Filter from date (YYYYMMDD format)",
18
+ "markdownDescription": "Filter from date (YYYYMMDD format)"
19
+ },
20
+ "until": {
21
+ "type": "string",
22
+ "description": "Filter until date (YYYYMMDD format)",
23
+ "markdownDescription": "Filter until date (YYYYMMDD format)"
24
+ },
25
+ "json": {
26
+ "type": "boolean",
27
+ "description": "Output in JSON format",
28
+ "markdownDescription": "Output in JSON format",
29
+ "default": false
30
+ },
31
+ "mode": {
32
+ "type": "string",
33
+ "enum": [
34
+ "auto",
35
+ "calculate",
36
+ "display"
37
+ ],
38
+ "description": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
39
+ "markdownDescription": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
40
+ "default": "auto"
41
+ },
42
+ "debug": {
43
+ "type": "boolean",
44
+ "description": "Show pricing mismatch information for debugging",
45
+ "markdownDescription": "Show pricing mismatch information for debugging",
46
+ "default": false
47
+ },
48
+ "debugSamples": {
49
+ "type": "number",
50
+ "description": "Number of sample discrepancies to show in debug output (default: 5)",
51
+ "markdownDescription": "Number of sample discrepancies to show in debug output (default: 5)",
52
+ "default": 5
53
+ },
54
+ "order": {
55
+ "type": "string",
56
+ "enum": [
57
+ "desc",
58
+ "asc"
59
+ ],
60
+ "description": "Sort order: desc (newest first) or asc (oldest first)",
61
+ "markdownDescription": "Sort order: desc (newest first) or asc (oldest first)",
62
+ "default": "asc"
63
+ },
64
+ "breakdown": {
65
+ "type": "boolean",
66
+ "description": "Show per-model cost breakdown",
67
+ "markdownDescription": "Show per-model cost breakdown",
68
+ "default": false
69
+ },
70
+ "offline": {
71
+ "type": "boolean",
72
+ "description": "Use cached pricing data for Claude models instead of fetching from API",
73
+ "markdownDescription": "Use cached pricing data for Claude models instead of fetching from API",
74
+ "default": false
75
+ },
76
+ "color": {
77
+ "type": "boolean",
78
+ "description": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect.",
79
+ "markdownDescription": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect."
80
+ },
81
+ "noColor": {
82
+ "type": "boolean",
83
+ "description": "Disable colored output (default: auto). NO_COLOR=1 has the same effect.",
84
+ "markdownDescription": "Disable colored output (default: auto). NO_COLOR=1 has the same effect."
85
+ },
86
+ "timezone": {
87
+ "type": "string",
88
+ "description": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone",
89
+ "markdownDescription": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone"
90
+ },
91
+ "locale": {
92
+ "type": "string",
93
+ "description": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
94
+ "markdownDescription": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
95
+ "default": "en-CA"
96
+ },
97
+ "jq": {
98
+ "type": "string",
99
+ "description": "Process JSON output with jq command (requires jq binary, implies --json)",
100
+ "markdownDescription": "Process JSON output with jq command (requires jq binary, implies --json)"
101
+ },
102
+ "compact": {
103
+ "type": "boolean",
104
+ "description": "Force compact mode for narrow displays (better for screenshots)",
105
+ "markdownDescription": "Force compact mode for narrow displays (better for screenshots)",
106
+ "default": false
107
+ }
108
+ },
109
+ "additionalProperties": false,
110
+ "description": "Default values for all commands",
111
+ "markdownDescription": "Default values for all commands"
112
+ },
113
+ "commands": {
114
+ "type": "object",
115
+ "properties": {
116
+ "daily": {
117
+ "type": "object",
118
+ "properties": {
119
+ "since": {
120
+ "type": "string",
121
+ "description": "Filter from date (YYYYMMDD format)",
122
+ "markdownDescription": "Filter from date (YYYYMMDD format)"
123
+ },
124
+ "until": {
125
+ "type": "string",
126
+ "description": "Filter until date (YYYYMMDD format)",
127
+ "markdownDescription": "Filter until date (YYYYMMDD format)"
128
+ },
129
+ "json": {
130
+ "type": "boolean",
131
+ "description": "Output in JSON format",
132
+ "markdownDescription": "Output in JSON format",
133
+ "default": false
134
+ },
135
+ "mode": {
136
+ "type": "string",
137
+ "enum": [
138
+ "auto",
139
+ "calculate",
140
+ "display"
141
+ ],
142
+ "description": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
143
+ "markdownDescription": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
144
+ "default": "auto"
145
+ },
146
+ "debug": {
147
+ "type": "boolean",
148
+ "description": "Show pricing mismatch information for debugging",
149
+ "markdownDescription": "Show pricing mismatch information for debugging",
150
+ "default": false
151
+ },
152
+ "debugSamples": {
153
+ "type": "number",
154
+ "description": "Number of sample discrepancies to show in debug output (default: 5)",
155
+ "markdownDescription": "Number of sample discrepancies to show in debug output (default: 5)",
156
+ "default": 5
157
+ },
158
+ "order": {
159
+ "type": "string",
160
+ "enum": [
161
+ "desc",
162
+ "asc"
163
+ ],
164
+ "description": "Sort order: desc (newest first) or asc (oldest first)",
165
+ "markdownDescription": "Sort order: desc (newest first) or asc (oldest first)",
166
+ "default": "asc"
167
+ },
168
+ "breakdown": {
169
+ "type": "boolean",
170
+ "description": "Show per-model cost breakdown",
171
+ "markdownDescription": "Show per-model cost breakdown",
172
+ "default": false
173
+ },
174
+ "offline": {
175
+ "type": "boolean",
176
+ "description": "Use cached pricing data for Claude models instead of fetching from API",
177
+ "markdownDescription": "Use cached pricing data for Claude models instead of fetching from API",
178
+ "default": false
179
+ },
180
+ "color": {
181
+ "type": "boolean",
182
+ "description": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect.",
183
+ "markdownDescription": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect."
184
+ },
185
+ "noColor": {
186
+ "type": "boolean",
187
+ "description": "Disable colored output (default: auto). NO_COLOR=1 has the same effect.",
188
+ "markdownDescription": "Disable colored output (default: auto). NO_COLOR=1 has the same effect."
189
+ },
190
+ "timezone": {
191
+ "type": "string",
192
+ "description": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone",
193
+ "markdownDescription": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone"
194
+ },
195
+ "locale": {
196
+ "type": "string",
197
+ "description": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
198
+ "markdownDescription": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
199
+ "default": "en-CA"
200
+ },
201
+ "jq": {
202
+ "type": "string",
203
+ "description": "Process JSON output with jq command (requires jq binary, implies --json)",
204
+ "markdownDescription": "Process JSON output with jq command (requires jq binary, implies --json)"
205
+ },
206
+ "compact": {
207
+ "type": "boolean",
208
+ "description": "Force compact mode for narrow displays (better for screenshots)",
209
+ "markdownDescription": "Force compact mode for narrow displays (better for screenshots)",
210
+ "default": false
211
+ },
212
+ "instances": {
213
+ "type": "boolean",
214
+ "description": "Show usage breakdown by project/instance",
215
+ "markdownDescription": "Show usage breakdown by project/instance",
216
+ "default": false
217
+ },
218
+ "project": {
219
+ "type": "string",
220
+ "description": "Filter to specific project name",
221
+ "markdownDescription": "Filter to specific project name"
222
+ },
223
+ "projectAliases": {
224
+ "type": "string",
225
+ "description": "Comma-separated project aliases (e.g., 'ccusage=Usage Tracker,myproject=My Project')",
226
+ "markdownDescription": "Comma-separated project aliases (e.g., 'ccusage=Usage Tracker,myproject=My Project')"
227
+ }
228
+ },
229
+ "additionalProperties": false
230
+ },
231
+ "monthly": {
232
+ "type": "object",
233
+ "properties": {
234
+ "since": {
235
+ "type": "string",
236
+ "description": "Filter from date (YYYYMMDD format)",
237
+ "markdownDescription": "Filter from date (YYYYMMDD format)"
238
+ },
239
+ "until": {
240
+ "type": "string",
241
+ "description": "Filter until date (YYYYMMDD format)",
242
+ "markdownDescription": "Filter until date (YYYYMMDD format)"
243
+ },
244
+ "json": {
245
+ "type": "boolean",
246
+ "description": "Output in JSON format",
247
+ "markdownDescription": "Output in JSON format",
248
+ "default": false
249
+ },
250
+ "mode": {
251
+ "type": "string",
252
+ "enum": [
253
+ "auto",
254
+ "calculate",
255
+ "display"
256
+ ],
257
+ "description": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
258
+ "markdownDescription": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
259
+ "default": "auto"
260
+ },
261
+ "debug": {
262
+ "type": "boolean",
263
+ "description": "Show pricing mismatch information for debugging",
264
+ "markdownDescription": "Show pricing mismatch information for debugging",
265
+ "default": false
266
+ },
267
+ "debugSamples": {
268
+ "type": "number",
269
+ "description": "Number of sample discrepancies to show in debug output (default: 5)",
270
+ "markdownDescription": "Number of sample discrepancies to show in debug output (default: 5)",
271
+ "default": 5
272
+ },
273
+ "order": {
274
+ "type": "string",
275
+ "enum": [
276
+ "desc",
277
+ "asc"
278
+ ],
279
+ "description": "Sort order: desc (newest first) or asc (oldest first)",
280
+ "markdownDescription": "Sort order: desc (newest first) or asc (oldest first)",
281
+ "default": "asc"
282
+ },
283
+ "breakdown": {
284
+ "type": "boolean",
285
+ "description": "Show per-model cost breakdown",
286
+ "markdownDescription": "Show per-model cost breakdown",
287
+ "default": false
288
+ },
289
+ "offline": {
290
+ "type": "boolean",
291
+ "description": "Use cached pricing data for Claude models instead of fetching from API",
292
+ "markdownDescription": "Use cached pricing data for Claude models instead of fetching from API",
293
+ "default": false
294
+ },
295
+ "color": {
296
+ "type": "boolean",
297
+ "description": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect.",
298
+ "markdownDescription": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect."
299
+ },
300
+ "noColor": {
301
+ "type": "boolean",
302
+ "description": "Disable colored output (default: auto). NO_COLOR=1 has the same effect.",
303
+ "markdownDescription": "Disable colored output (default: auto). NO_COLOR=1 has the same effect."
304
+ },
305
+ "timezone": {
306
+ "type": "string",
307
+ "description": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone",
308
+ "markdownDescription": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone"
309
+ },
310
+ "locale": {
311
+ "type": "string",
312
+ "description": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
313
+ "markdownDescription": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
314
+ "default": "en-CA"
315
+ },
316
+ "jq": {
317
+ "type": "string",
318
+ "description": "Process JSON output with jq command (requires jq binary, implies --json)",
319
+ "markdownDescription": "Process JSON output with jq command (requires jq binary, implies --json)"
320
+ },
321
+ "compact": {
322
+ "type": "boolean",
323
+ "description": "Force compact mode for narrow displays (better for screenshots)",
324
+ "markdownDescription": "Force compact mode for narrow displays (better for screenshots)",
325
+ "default": false
326
+ }
327
+ },
328
+ "additionalProperties": false
329
+ },
330
+ "weekly": {
331
+ "type": "object",
332
+ "properties": {
333
+ "since": {
334
+ "type": "string",
335
+ "description": "Filter from date (YYYYMMDD format)",
336
+ "markdownDescription": "Filter from date (YYYYMMDD format)"
337
+ },
338
+ "until": {
339
+ "type": "string",
340
+ "description": "Filter until date (YYYYMMDD format)",
341
+ "markdownDescription": "Filter until date (YYYYMMDD format)"
342
+ },
343
+ "json": {
344
+ "type": "boolean",
345
+ "description": "Output in JSON format",
346
+ "markdownDescription": "Output in JSON format",
347
+ "default": false
348
+ },
349
+ "mode": {
350
+ "type": "string",
351
+ "enum": [
352
+ "auto",
353
+ "calculate",
354
+ "display"
355
+ ],
356
+ "description": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
357
+ "markdownDescription": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
358
+ "default": "auto"
359
+ },
360
+ "debug": {
361
+ "type": "boolean",
362
+ "description": "Show pricing mismatch information for debugging",
363
+ "markdownDescription": "Show pricing mismatch information for debugging",
364
+ "default": false
365
+ },
366
+ "debugSamples": {
367
+ "type": "number",
368
+ "description": "Number of sample discrepancies to show in debug output (default: 5)",
369
+ "markdownDescription": "Number of sample discrepancies to show in debug output (default: 5)",
370
+ "default": 5
371
+ },
372
+ "order": {
373
+ "type": "string",
374
+ "enum": [
375
+ "desc",
376
+ "asc"
377
+ ],
378
+ "description": "Sort order: desc (newest first) or asc (oldest first)",
379
+ "markdownDescription": "Sort order: desc (newest first) or asc (oldest first)",
380
+ "default": "asc"
381
+ },
382
+ "breakdown": {
383
+ "type": "boolean",
384
+ "description": "Show per-model cost breakdown",
385
+ "markdownDescription": "Show per-model cost breakdown",
386
+ "default": false
387
+ },
388
+ "offline": {
389
+ "type": "boolean",
390
+ "description": "Use cached pricing data for Claude models instead of fetching from API",
391
+ "markdownDescription": "Use cached pricing data for Claude models instead of fetching from API",
392
+ "default": false
393
+ },
394
+ "color": {
395
+ "type": "boolean",
396
+ "description": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect.",
397
+ "markdownDescription": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect."
398
+ },
399
+ "noColor": {
400
+ "type": "boolean",
401
+ "description": "Disable colored output (default: auto). NO_COLOR=1 has the same effect.",
402
+ "markdownDescription": "Disable colored output (default: auto). NO_COLOR=1 has the same effect."
403
+ },
404
+ "timezone": {
405
+ "type": "string",
406
+ "description": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone",
407
+ "markdownDescription": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone"
408
+ },
409
+ "locale": {
410
+ "type": "string",
411
+ "description": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
412
+ "markdownDescription": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
413
+ "default": "en-CA"
414
+ },
415
+ "jq": {
416
+ "type": "string",
417
+ "description": "Process JSON output with jq command (requires jq binary, implies --json)",
418
+ "markdownDescription": "Process JSON output with jq command (requires jq binary, implies --json)"
419
+ },
420
+ "compact": {
421
+ "type": "boolean",
422
+ "description": "Force compact mode for narrow displays (better for screenshots)",
423
+ "markdownDescription": "Force compact mode for narrow displays (better for screenshots)",
424
+ "default": false
425
+ },
426
+ "startOfWeek": {
427
+ "type": "string",
428
+ "enum": [
429
+ "sunday",
430
+ "monday",
431
+ "tuesday",
432
+ "wednesday",
433
+ "thursday",
434
+ "friday",
435
+ "saturday"
436
+ ],
437
+ "description": "Day to start the week on",
438
+ "markdownDescription": "Day to start the week on",
439
+ "default": "sunday"
440
+ }
441
+ },
442
+ "additionalProperties": false
443
+ },
444
+ "session": {
445
+ "type": "object",
446
+ "properties": {
447
+ "since": {
448
+ "type": "string",
449
+ "description": "Filter from date (YYYYMMDD format)",
450
+ "markdownDescription": "Filter from date (YYYYMMDD format)"
451
+ },
452
+ "until": {
453
+ "type": "string",
454
+ "description": "Filter until date (YYYYMMDD format)",
455
+ "markdownDescription": "Filter until date (YYYYMMDD format)"
456
+ },
457
+ "json": {
458
+ "type": "boolean",
459
+ "description": "Output in JSON format",
460
+ "markdownDescription": "Output in JSON format",
461
+ "default": false
462
+ },
463
+ "mode": {
464
+ "type": "string",
465
+ "enum": [
466
+ "auto",
467
+ "calculate",
468
+ "display"
469
+ ],
470
+ "description": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
471
+ "markdownDescription": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
472
+ "default": "auto"
473
+ },
474
+ "debug": {
475
+ "type": "boolean",
476
+ "description": "Show pricing mismatch information for debugging",
477
+ "markdownDescription": "Show pricing mismatch information for debugging",
478
+ "default": false
479
+ },
480
+ "debugSamples": {
481
+ "type": "number",
482
+ "description": "Number of sample discrepancies to show in debug output (default: 5)",
483
+ "markdownDescription": "Number of sample discrepancies to show in debug output (default: 5)",
484
+ "default": 5
485
+ },
486
+ "order": {
487
+ "type": "string",
488
+ "enum": [
489
+ "desc",
490
+ "asc"
491
+ ],
492
+ "description": "Sort order: desc (newest first) or asc (oldest first)",
493
+ "markdownDescription": "Sort order: desc (newest first) or asc (oldest first)",
494
+ "default": "asc"
495
+ },
496
+ "breakdown": {
497
+ "type": "boolean",
498
+ "description": "Show per-model cost breakdown",
499
+ "markdownDescription": "Show per-model cost breakdown",
500
+ "default": false
501
+ },
502
+ "offline": {
503
+ "type": "boolean",
504
+ "description": "Use cached pricing data for Claude models instead of fetching from API",
505
+ "markdownDescription": "Use cached pricing data for Claude models instead of fetching from API",
506
+ "default": false
507
+ },
508
+ "color": {
509
+ "type": "boolean",
510
+ "description": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect.",
511
+ "markdownDescription": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect."
512
+ },
513
+ "noColor": {
514
+ "type": "boolean",
515
+ "description": "Disable colored output (default: auto). NO_COLOR=1 has the same effect.",
516
+ "markdownDescription": "Disable colored output (default: auto). NO_COLOR=1 has the same effect."
517
+ },
518
+ "timezone": {
519
+ "type": "string",
520
+ "description": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone",
521
+ "markdownDescription": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone"
522
+ },
523
+ "locale": {
524
+ "type": "string",
525
+ "description": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
526
+ "markdownDescription": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
527
+ "default": "en-CA"
528
+ },
529
+ "jq": {
530
+ "type": "string",
531
+ "description": "Process JSON output with jq command (requires jq binary, implies --json)",
532
+ "markdownDescription": "Process JSON output with jq command (requires jq binary, implies --json)"
533
+ },
534
+ "compact": {
535
+ "type": "boolean",
536
+ "description": "Force compact mode for narrow displays (better for screenshots)",
537
+ "markdownDescription": "Force compact mode for narrow displays (better for screenshots)",
538
+ "default": false
539
+ },
540
+ "id": {
541
+ "type": "string",
542
+ "description": "Load usage data for a specific session ID",
543
+ "markdownDescription": "Load usage data for a specific session ID"
544
+ }
545
+ },
546
+ "additionalProperties": false
547
+ },
548
+ "blocks": {
549
+ "type": "object",
550
+ "properties": {
551
+ "since": {
552
+ "type": "string",
553
+ "description": "Filter from date (YYYYMMDD format)",
554
+ "markdownDescription": "Filter from date (YYYYMMDD format)"
555
+ },
556
+ "until": {
557
+ "type": "string",
558
+ "description": "Filter until date (YYYYMMDD format)",
559
+ "markdownDescription": "Filter until date (YYYYMMDD format)"
560
+ },
561
+ "json": {
562
+ "type": "boolean",
563
+ "description": "Output in JSON format",
564
+ "markdownDescription": "Output in JSON format",
565
+ "default": false
566
+ },
567
+ "mode": {
568
+ "type": "string",
569
+ "enum": [
570
+ "auto",
571
+ "calculate",
572
+ "display"
573
+ ],
574
+ "description": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
575
+ "markdownDescription": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
576
+ "default": "auto"
577
+ },
578
+ "debug": {
579
+ "type": "boolean",
580
+ "description": "Show pricing mismatch information for debugging",
581
+ "markdownDescription": "Show pricing mismatch information for debugging",
582
+ "default": false
583
+ },
584
+ "debugSamples": {
585
+ "type": "number",
586
+ "description": "Number of sample discrepancies to show in debug output (default: 5)",
587
+ "markdownDescription": "Number of sample discrepancies to show in debug output (default: 5)",
588
+ "default": 5
589
+ },
590
+ "order": {
591
+ "type": "string",
592
+ "enum": [
593
+ "desc",
594
+ "asc"
595
+ ],
596
+ "description": "Sort order: desc (newest first) or asc (oldest first)",
597
+ "markdownDescription": "Sort order: desc (newest first) or asc (oldest first)",
598
+ "default": "asc"
599
+ },
600
+ "breakdown": {
601
+ "type": "boolean",
602
+ "description": "Show per-model cost breakdown",
603
+ "markdownDescription": "Show per-model cost breakdown",
604
+ "default": false
605
+ },
606
+ "offline": {
607
+ "type": "boolean",
608
+ "description": "Use cached pricing data for Claude models instead of fetching from API",
609
+ "markdownDescription": "Use cached pricing data for Claude models instead of fetching from API",
610
+ "default": false
611
+ },
612
+ "color": {
613
+ "type": "boolean",
614
+ "description": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect.",
615
+ "markdownDescription": "Enable colored output (default: auto). FORCE_COLOR=1 has the same effect."
616
+ },
617
+ "noColor": {
618
+ "type": "boolean",
619
+ "description": "Disable colored output (default: auto). NO_COLOR=1 has the same effect.",
620
+ "markdownDescription": "Disable colored output (default: auto). NO_COLOR=1 has the same effect."
621
+ },
622
+ "timezone": {
623
+ "type": "string",
624
+ "description": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone",
625
+ "markdownDescription": "Timezone for date grouping (e.g., UTC, America/New_York, Asia/Tokyo). Default: system timezone"
626
+ },
627
+ "locale": {
628
+ "type": "string",
629
+ "description": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
630
+ "markdownDescription": "Locale for date/time formatting (e.g., en-US, ja-JP, de-DE)",
631
+ "default": "en-CA"
632
+ },
633
+ "jq": {
634
+ "type": "string",
635
+ "description": "Process JSON output with jq command (requires jq binary, implies --json)",
636
+ "markdownDescription": "Process JSON output with jq command (requires jq binary, implies --json)"
637
+ },
638
+ "compact": {
639
+ "type": "boolean",
640
+ "description": "Force compact mode for narrow displays (better for screenshots)",
641
+ "markdownDescription": "Force compact mode for narrow displays (better for screenshots)",
642
+ "default": false
643
+ },
644
+ "active": {
645
+ "type": "boolean",
646
+ "description": "Show only active block with projections",
647
+ "markdownDescription": "Show only active block with projections",
648
+ "default": false
649
+ },
650
+ "recent": {
651
+ "type": "boolean",
652
+ "description": "Show blocks from last 3 days (including active)",
653
+ "markdownDescription": "Show blocks from last 3 days (including active)",
654
+ "default": false
655
+ },
656
+ "tokenLimit": {
657
+ "type": "string",
658
+ "description": "Token limit for quota warnings (e.g., 500000 or \"max\")",
659
+ "markdownDescription": "Token limit for quota warnings (e.g., 500000 or \"max\")"
660
+ },
661
+ "sessionLength": {
662
+ "type": "number",
663
+ "description": "Session block duration in hours (default: 5)",
664
+ "markdownDescription": "Session block duration in hours (default: 5)",
665
+ "default": 5
666
+ },
667
+ "live": {
668
+ "type": "boolean",
669
+ "description": "Live monitoring mode with real-time updates",
670
+ "markdownDescription": "Live monitoring mode with real-time updates",
671
+ "default": false
672
+ },
673
+ "refreshInterval": {
674
+ "type": "number",
675
+ "description": "Refresh interval in seconds for live mode (default: 1)",
676
+ "markdownDescription": "Refresh interval in seconds for live mode (default: 1)",
677
+ "default": 1
678
+ }
679
+ },
680
+ "additionalProperties": false
681
+ },
682
+ "mcp": {
683
+ "type": "object",
684
+ "properties": {
685
+ "mode": {
686
+ "type": "string",
687
+ "enum": [
688
+ "auto",
689
+ "calculate",
690
+ "display"
691
+ ],
692
+ "description": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
693
+ "markdownDescription": "Cost calculation mode: auto (use costUSD if exists, otherwise calculate), calculate (always calculate), display (always use costUSD)",
694
+ "default": "auto"
695
+ },
696
+ "type": {
697
+ "type": "string",
698
+ "enum": [
699
+ "stdio",
700
+ "http"
701
+ ],
702
+ "description": "Transport type for MCP server",
703
+ "markdownDescription": "Transport type for MCP server",
704
+ "default": "stdio"
705
+ },
706
+ "port": {
707
+ "type": "number",
708
+ "description": "Port for HTTP transport (default: 8080)",
709
+ "markdownDescription": "Port for HTTP transport (default: 8080)",
710
+ "default": 8080
711
+ }
712
+ },
713
+ "additionalProperties": false
714
+ },
715
+ "statusline": {
716
+ "type": "object",
717
+ "properties": {
718
+ "offline": {
719
+ "type": "boolean",
720
+ "description": "Use cached pricing data for Claude models instead of fetching from API",
721
+ "markdownDescription": "Use cached pricing data for Claude models instead of fetching from API",
722
+ "default": true
723
+ },
724
+ "visualBurnRate": {
725
+ "type": "string",
726
+ "enum": [
727
+ "off",
728
+ "emoji",
729
+ "text",
730
+ "emoji-text"
731
+ ],
732
+ "description": "Controls the visualization of the burn rate status",
733
+ "markdownDescription": "Controls the visualization of the burn rate status",
734
+ "default": "off"
735
+ },
736
+ "cache": {
737
+ "type": "boolean",
738
+ "description": "Enable cache for status line output (default: true)",
739
+ "markdownDescription": "Enable cache for status line output (default: true)",
740
+ "default": true
741
+ },
742
+ "refreshInterval": {
743
+ "type": "number",
744
+ "description": "Refresh interval in seconds for cache expiry (default: 1)",
745
+ "markdownDescription": "Refresh interval in seconds for cache expiry (default: 1)",
746
+ "default": 1
747
+ },
748
+ "debug": {
749
+ "type": "boolean",
750
+ "description": "Show pricing mismatch information for debugging",
751
+ "markdownDescription": "Show pricing mismatch information for debugging",
752
+ "default": false
753
+ }
754
+ },
755
+ "additionalProperties": false
756
+ }
757
+ },
758
+ "additionalProperties": false,
759
+ "description": "Command-specific configuration overrides",
760
+ "markdownDescription": "Command-specific configuration overrides"
761
+ }
762
+ },
763
+ "additionalProperties": false
764
+ }
765
+ },
766
+ "$schema": "https://json-schema.org/draft-07/schema#",
767
+ "title": "ccusage Configuration",
768
+ "description": "Configuration file for ccusage - Claude Code usage analysis tool",
769
+ "examples": [
770
+ {
771
+ "$schema": "https://ccusage.com/config-schema.json",
772
+ "defaults": {
773
+ "json": false,
774
+ "mode": "auto",
775
+ "timezone": "Asia/Tokyo",
776
+ "locale": "ja-JP"
777
+ },
778
+ "commands": {
779
+ "daily": {
780
+ "instances": true
781
+ },
782
+ "blocks": {
783
+ "tokenLimit": "500000"
784
+ }
785
+ }
786
+ }
787
+ ]
788
+ }