@hanai/ccusage 18.0.5

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