@cyanautomation/kaseki-agent 1.64.2 → 1.65.2
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/kaseki-api-routes.d.ts.map +1 -1
- package/dist/kaseki-api-routes.js +35 -2
- package/dist/kaseki-api-routes.js.map +1 -1
- package/dist/kaseki-api-types.d.ts +10 -0
- package/dist/kaseki-api-types.d.ts.map +1 -1
- package/dist/openapi-spec-generators/paths.d.ts.map +1 -1
- package/dist/openapi-spec-generators/paths.js +26 -0
- package/dist/openapi-spec-generators/paths.js.map +1 -1
- package/dist/pi-event-filter.js +36 -0
- package/dist/pi-event-filter.js.map +1 -1
- package/dist/startup/container-preflight.d.ts +13 -2
- package/dist/startup/container-preflight.d.ts.map +1 -1
- package/dist/startup/container-preflight.js +61 -7
- package/dist/startup/container-preflight.js.map +1 -1
- package/dist/token-usage-aggregator.d.ts +85 -0
- package/dist/token-usage-aggregator.d.ts.map +1 -0
- package/dist/token-usage-aggregator.js +135 -0
- package/dist/token-usage-aggregator.js.map +1 -0
- package/kaseki-agent.sh +385 -383
- package/package.json +2 -2
- package/scripts/docker-entrypoint.sh +54 -5
- package/scripts/kaseki-setup-host.sh +51 -16
- package/scripts/startup-checks.sh +40 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pi-event-filter.js","sourceRoot":"","sources":["../src/pi-event-filter.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAqC,MAAM,kCAAkC,CAAC;AAChH,OAAO,EAAE,uBAAuB,EAAwC,MAAM,gCAAgC,CAAC;AAC/G,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAW,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"pi-event-filter.js","sourceRoot":"","sources":["../src/pi-event-filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
*
|
|
8
8
|
* All checks can run as UID 10000 (the container user) without requiring root privileges.
|
|
9
9
|
* This module runs once at container startup and stores results in memory.
|
|
10
|
+
* Later /api/preflight calls expose this cache as boot history only; they do
|
|
11
|
+
* not treat it as current readiness.
|
|
10
12
|
*/
|
|
11
13
|
import { KasekiApiConfig } from '../kaseki-api-config';
|
|
12
14
|
import { PreflightCheck } from '../kaseki-api-types';
|
|
@@ -45,8 +47,12 @@ export declare class ContainerPreflightDiagnostics {
|
|
|
45
47
|
private checkGitFreshness;
|
|
46
48
|
/**
|
|
47
49
|
* Check 5: Git Safe.directory Configuration
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
+
* Verify git config has safe.directory set. If not configured and auto-remediation
|
|
51
|
+
* is enabled (default), attempts to configure it automatically.
|
|
52
|
+
*
|
|
53
|
+
* Environment Variables:
|
|
54
|
+
* - KASEKI_STARTUP_CHECK_AUTO_REMEDIATE: '0' to disable auto-remediation (default: enabled)
|
|
55
|
+
* - KASEKI_SAFE_DIRECTORY_SCOPE: 'system' to use --system scope, 'global' for --global (default: global)
|
|
50
56
|
*/
|
|
51
57
|
private checkGitSafeDirectory;
|
|
52
58
|
/**
|
|
@@ -73,4 +79,9 @@ export declare function getContainerPreflightResults(): {
|
|
|
73
79
|
timestamp: string;
|
|
74
80
|
checks: PreflightCheck[];
|
|
75
81
|
} | null;
|
|
82
|
+
/**
|
|
83
|
+
* Clear cached container preflight results. Intended for tests and controlled
|
|
84
|
+
* service lifecycle resets.
|
|
85
|
+
*/
|
|
86
|
+
export declare function clearContainerPreflightResults(): void;
|
|
76
87
|
//# sourceMappingURL=container-preflight.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-preflight.d.ts","sourceRoot":"","sources":["../../src/startup/container-preflight.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"container-preflight.d.ts","sourceRoot":"","sources":["../../src/startup/container-preflight.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAerD,qBAAa,6BAA6B;gBAC5B,OAAO,EAAE,eAAe;IAKpC;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;;;OAIG;IACH,GAAG,IAAI,cAAc,EAAE;IA4CvB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IA+C9B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAmE5B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA6B3B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAmDzB;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;IAuF7B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAmD9B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;CA0B/B;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAyB3E;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,cAAc,EAAE,CAAA;CAAE,GAAG,IAAI,CAErG;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CAErD"}
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
*
|
|
8
8
|
* All checks can run as UID 10000 (the container user) without requiring root privileges.
|
|
9
9
|
* This module runs once at container startup and stores results in memory.
|
|
10
|
+
* Later /api/preflight calls expose this cache as boot history only; they do
|
|
11
|
+
* not treat it as current readiness.
|
|
10
12
|
*/
|
|
11
13
|
import * as fs from 'fs';
|
|
12
14
|
import * as path from 'path';
|
|
@@ -15,7 +17,9 @@ import { createEventLogger } from '../logger.js';
|
|
|
15
17
|
const logger = createEventLogger('container-preflight');
|
|
16
18
|
/**
|
|
17
19
|
* In-memory cache for container preflight results.
|
|
18
|
-
* These are populated once at startup and
|
|
20
|
+
* These are populated once at startup and exposed by /api/preflight as
|
|
21
|
+
* cached startup history. They are not rerun per request and must not be
|
|
22
|
+
* interpreted as current readiness.
|
|
19
23
|
*/
|
|
20
24
|
let cachedContainerPreflightResults = null;
|
|
21
25
|
export class ContainerPreflightDiagnostics {
|
|
@@ -267,11 +271,17 @@ export class ContainerPreflightDiagnostics {
|
|
|
267
271
|
}
|
|
268
272
|
/**
|
|
269
273
|
* Check 5: Git Safe.directory Configuration
|
|
270
|
-
*
|
|
271
|
-
*
|
|
274
|
+
* Verify git config has safe.directory set. If not configured and auto-remediation
|
|
275
|
+
* is enabled (default), attempts to configure it automatically.
|
|
276
|
+
*
|
|
277
|
+
* Environment Variables:
|
|
278
|
+
* - KASEKI_STARTUP_CHECK_AUTO_REMEDIATE: '0' to disable auto-remediation (default: enabled)
|
|
279
|
+
* - KASEKI_SAFE_DIRECTORY_SCOPE: 'system' to use --system scope, 'global' for --global (default: global)
|
|
272
280
|
*/
|
|
273
281
|
checkGitSafeDirectory() {
|
|
274
282
|
const checkoutDir = process.env.KASEKI_CHECKOUT_DIR || '/agents/kaseki-agent';
|
|
283
|
+
const autoRemediateEnabled = process.env.KASEKI_STARTUP_CHECK_AUTO_REMEDIATE !== '0';
|
|
284
|
+
const scope = process.env.KASEKI_SAFE_DIRECTORY_SCOPE || 'global';
|
|
275
285
|
if (!fs.existsSync(path.join(checkoutDir, '.git'))) {
|
|
276
286
|
return {
|
|
277
287
|
name: 'git-safe-directory',
|
|
@@ -281,12 +291,12 @@ export class ContainerPreflightDiagnostics {
|
|
|
281
291
|
};
|
|
282
292
|
}
|
|
283
293
|
// Read current git config to check if safe.directory is set
|
|
284
|
-
const
|
|
294
|
+
const checkResult = spawnSync('git', ['config', `--${scope}`, '--get-all', 'safe.directory'], {
|
|
285
295
|
encoding: 'utf-8',
|
|
286
296
|
timeout: 5000,
|
|
287
297
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
288
298
|
});
|
|
289
|
-
const configuredDirs = (
|
|
299
|
+
const configuredDirs = (checkResult.stdout || '').trim().split('\n').filter(Boolean);
|
|
290
300
|
const isConfigured = configuredDirs.includes(checkoutDir);
|
|
291
301
|
if (isConfigured) {
|
|
292
302
|
return {
|
|
@@ -295,7 +305,44 @@ export class ContainerPreflightDiagnostics {
|
|
|
295
305
|
detail: `Git safe.directory is configured for ${checkoutDir}`,
|
|
296
306
|
};
|
|
297
307
|
}
|
|
298
|
-
//
|
|
308
|
+
// Not configured — attempt auto-remediation if enabled
|
|
309
|
+
if (autoRemediateEnabled) {
|
|
310
|
+
const remediationResult = spawnSync('git', ['config', `--${scope}`, '--add', 'safe.directory', checkoutDir], {
|
|
311
|
+
encoding: 'utf-8',
|
|
312
|
+
timeout: 5000,
|
|
313
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
314
|
+
});
|
|
315
|
+
if (remediationResult.status === 0) {
|
|
316
|
+
logger.debug('Auto-remediated git safe.directory configuration', {
|
|
317
|
+
checkoutDir,
|
|
318
|
+
scope,
|
|
319
|
+
});
|
|
320
|
+
return {
|
|
321
|
+
name: 'git-safe-directory',
|
|
322
|
+
ok: true,
|
|
323
|
+
detail: `Git safe.directory auto-configured for ${checkoutDir} (scope: ${scope})`,
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
// Remediation failed — log the error and return failure
|
|
327
|
+
const errorMsg = (remediationResult.stderr || '').substring(0, 200);
|
|
328
|
+
logger.warn('Failed to auto-remediate git safe.directory', {
|
|
329
|
+
checkoutDir,
|
|
330
|
+
scope,
|
|
331
|
+
error: errorMsg,
|
|
332
|
+
});
|
|
333
|
+
// Enhanced diagnostics for not-configured state
|
|
334
|
+
const currentDirs = configuredDirs.length > 0
|
|
335
|
+
? `${configuredDirs.join(', ')}`
|
|
336
|
+
: 'none configured';
|
|
337
|
+
return {
|
|
338
|
+
name: 'git-safe-directory',
|
|
339
|
+
ok: false,
|
|
340
|
+
detail: `Git safe.directory not configured for ${checkoutDir}. Currently: ${currentDirs}`,
|
|
341
|
+
remediation: `Configure: git config --${scope} --add safe.directory ${checkoutDir}`,
|
|
342
|
+
remediationAttemptError: errorMsg,
|
|
343
|
+
};
|
|
344
|
+
}
|
|
345
|
+
// Auto-remediation disabled — just report the issue
|
|
299
346
|
const currentDirs = configuredDirs.length > 0
|
|
300
347
|
? `${configuredDirs.join(', ')}`
|
|
301
348
|
: 'none configured';
|
|
@@ -303,7 +350,7 @@ export class ContainerPreflightDiagnostics {
|
|
|
303
350
|
name: 'git-safe-directory',
|
|
304
351
|
ok: false,
|
|
305
352
|
detail: `Git safe.directory not configured for ${checkoutDir}. Currently: ${currentDirs}`,
|
|
306
|
-
remediation: `Configure: git config
|
|
353
|
+
remediation: `Configure: git config --${scope} --add safe.directory ${checkoutDir}`,
|
|
307
354
|
};
|
|
308
355
|
}
|
|
309
356
|
/**
|
|
@@ -420,4 +467,11 @@ export function logContainerPreflightResults(checks) {
|
|
|
420
467
|
export function getContainerPreflightResults() {
|
|
421
468
|
return cachedContainerPreflightResults;
|
|
422
469
|
}
|
|
470
|
+
/**
|
|
471
|
+
* Clear cached container preflight results. Intended for tests and controlled
|
|
472
|
+
* service lifecycle resets.
|
|
473
|
+
*/
|
|
474
|
+
export function clearContainerPreflightResults() {
|
|
475
|
+
cachedContainerPreflightResults = null;
|
|
476
|
+
}
|
|
423
477
|
//# sourceMappingURL=container-preflight.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-preflight.js","sourceRoot":"","sources":["../../src/startup/container-preflight.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"container-preflight.js","sourceRoot":"","sources":["../../src/startup/container-preflight.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* token-usage-aggregator.ts
|
|
3
|
+
*
|
|
4
|
+
* Aggregates token usage metrics from Pi event stream.
|
|
5
|
+
* Tracks input tokens, output tokens, and cache-related tokens (creation and read).
|
|
6
|
+
* Supports OpenRouter-style usage objects from Pi API responses.
|
|
7
|
+
*/
|
|
8
|
+
export interface UsageObject {
|
|
9
|
+
prompt_tokens?: number;
|
|
10
|
+
completion_tokens?: number;
|
|
11
|
+
prompt_tokens_details?: {
|
|
12
|
+
cache_creation_input_tokens?: number;
|
|
13
|
+
cache_read_input_tokens?: number;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export interface TokenUsageSummary {
|
|
17
|
+
total_input_tokens: number;
|
|
18
|
+
total_output_tokens: number;
|
|
19
|
+
total_cache_creation_tokens: number;
|
|
20
|
+
total_cache_read_tokens: number;
|
|
21
|
+
total_tokens: number;
|
|
22
|
+
cache_efficiency_percent: number;
|
|
23
|
+
}
|
|
24
|
+
export interface ModelTokenStats {
|
|
25
|
+
[modelName: string]: {
|
|
26
|
+
input_tokens: number;
|
|
27
|
+
output_tokens: number;
|
|
28
|
+
cache_creation_tokens: number;
|
|
29
|
+
cache_read_tokens: number;
|
|
30
|
+
total_tokens: number;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* TokenUsageAggregator tracks token usage across Pi event streams.
|
|
35
|
+
*
|
|
36
|
+
* Accumulates:
|
|
37
|
+
* - Input tokens (prompt_tokens)
|
|
38
|
+
* - Output tokens (completion_tokens)
|
|
39
|
+
* - Cache creation tokens (prompt_tokens_details.cache_creation_input_tokens)
|
|
40
|
+
* - Cache read tokens (prompt_tokens_details.cache_read_input_tokens)
|
|
41
|
+
*
|
|
42
|
+
* Also tracks per-model usage for cost estimation and performance analysis.
|
|
43
|
+
*/
|
|
44
|
+
export declare class TokenUsageAggregator {
|
|
45
|
+
private totalInputTokens;
|
|
46
|
+
private totalOutputTokens;
|
|
47
|
+
private totalCacheCreationTokens;
|
|
48
|
+
private totalCacheReadTokens;
|
|
49
|
+
private modelStats;
|
|
50
|
+
/**
|
|
51
|
+
* Get or initialize model stats.
|
|
52
|
+
*/
|
|
53
|
+
private ensureModelStats;
|
|
54
|
+
/**
|
|
55
|
+
* Record input tokens for a model.
|
|
56
|
+
*/
|
|
57
|
+
recordInputTokens(modelName: string, tokens: number): void;
|
|
58
|
+
/**
|
|
59
|
+
* Record output tokens for a model.
|
|
60
|
+
*/
|
|
61
|
+
recordOutputTokens(modelName: string, tokens: number): void;
|
|
62
|
+
/**
|
|
63
|
+
* Record cache creation tokens for a model.
|
|
64
|
+
*/
|
|
65
|
+
recordCacheCreationTokens(modelName: string, tokens: number): void;
|
|
66
|
+
/**
|
|
67
|
+
* Record cache read tokens for a model.
|
|
68
|
+
*/
|
|
69
|
+
recordCacheReadTokens(modelName: string, tokens: number): void;
|
|
70
|
+
/**
|
|
71
|
+
* Record usage from an OpenRouter-style usage object.
|
|
72
|
+
* @param modelName - Model identifier
|
|
73
|
+
* @param usage - Usage object with prompt_tokens, completion_tokens, etc.
|
|
74
|
+
*/
|
|
75
|
+
recordUsage(modelName: string, usage: UsageObject | null | undefined): void;
|
|
76
|
+
/**
|
|
77
|
+
* Get the overall token usage summary.
|
|
78
|
+
*/
|
|
79
|
+
getSummary(): TokenUsageSummary;
|
|
80
|
+
/**
|
|
81
|
+
* Get per-model token usage statistics.
|
|
82
|
+
*/
|
|
83
|
+
getModelStats(): ModelTokenStats;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=token-usage-aggregator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-usage-aggregator.d.ts","sourceRoot":"","sources":["../src/token-usage-aggregator.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE;QACtB,2BAA2B,CAAC,EAAE,MAAM,CAAC;QACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAClC,CAAC;CACH;AAED,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2BAA2B,EAAE,MAAM,CAAC;IACpC,uBAAuB,EAAE,MAAM,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,SAAS,EAAE,MAAM,GAAG;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;;;;;;;;;GAUG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,wBAAwB,CAAK;IACrC,OAAO,CAAC,oBAAoB,CAAK;IAGjC,OAAO,CAAC,UAAU,CAQJ;IAEd;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAM1D;;OAEG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAM3D;;OAEG;IACH,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAMlE;;OAEG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAM9D;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IAyB3E;;OAEG;IACH,UAAU,IAAI,iBAAiB;IAuB/B;;OAEG;IACH,aAAa,IAAI,eAAe;CAkBjC"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* token-usage-aggregator.ts
|
|
3
|
+
*
|
|
4
|
+
* Aggregates token usage metrics from Pi event stream.
|
|
5
|
+
* Tracks input tokens, output tokens, and cache-related tokens (creation and read).
|
|
6
|
+
* Supports OpenRouter-style usage objects from Pi API responses.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* TokenUsageAggregator tracks token usage across Pi event streams.
|
|
10
|
+
*
|
|
11
|
+
* Accumulates:
|
|
12
|
+
* - Input tokens (prompt_tokens)
|
|
13
|
+
* - Output tokens (completion_tokens)
|
|
14
|
+
* - Cache creation tokens (prompt_tokens_details.cache_creation_input_tokens)
|
|
15
|
+
* - Cache read tokens (prompt_tokens_details.cache_read_input_tokens)
|
|
16
|
+
*
|
|
17
|
+
* Also tracks per-model usage for cost estimation and performance analysis.
|
|
18
|
+
*/
|
|
19
|
+
export class TokenUsageAggregator {
|
|
20
|
+
totalInputTokens = 0;
|
|
21
|
+
totalOutputTokens = 0;
|
|
22
|
+
totalCacheCreationTokens = 0;
|
|
23
|
+
totalCacheReadTokens = 0;
|
|
24
|
+
// Per-model tracking
|
|
25
|
+
modelStats = new Map();
|
|
26
|
+
/**
|
|
27
|
+
* Get or initialize model stats.
|
|
28
|
+
*/
|
|
29
|
+
ensureModelStats(modelName) {
|
|
30
|
+
if (!this.modelStats.has(modelName)) {
|
|
31
|
+
this.modelStats.set(modelName, {
|
|
32
|
+
input_tokens: 0,
|
|
33
|
+
output_tokens: 0,
|
|
34
|
+
cache_creation_tokens: 0,
|
|
35
|
+
cache_read_tokens: 0,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
return this.modelStats.get(modelName);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Record input tokens for a model.
|
|
42
|
+
*/
|
|
43
|
+
recordInputTokens(modelName, tokens) {
|
|
44
|
+
this.totalInputTokens += tokens;
|
|
45
|
+
const stats = this.ensureModelStats(modelName);
|
|
46
|
+
stats.input_tokens += tokens;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Record output tokens for a model.
|
|
50
|
+
*/
|
|
51
|
+
recordOutputTokens(modelName, tokens) {
|
|
52
|
+
this.totalOutputTokens += tokens;
|
|
53
|
+
const stats = this.ensureModelStats(modelName);
|
|
54
|
+
stats.output_tokens += tokens;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Record cache creation tokens for a model.
|
|
58
|
+
*/
|
|
59
|
+
recordCacheCreationTokens(modelName, tokens) {
|
|
60
|
+
this.totalCacheCreationTokens += tokens;
|
|
61
|
+
const stats = this.ensureModelStats(modelName);
|
|
62
|
+
stats.cache_creation_tokens += tokens;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Record cache read tokens for a model.
|
|
66
|
+
*/
|
|
67
|
+
recordCacheReadTokens(modelName, tokens) {
|
|
68
|
+
this.totalCacheReadTokens += tokens;
|
|
69
|
+
const stats = this.ensureModelStats(modelName);
|
|
70
|
+
stats.cache_read_tokens += tokens;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Record usage from an OpenRouter-style usage object.
|
|
74
|
+
* @param modelName - Model identifier
|
|
75
|
+
* @param usage - Usage object with prompt_tokens, completion_tokens, etc.
|
|
76
|
+
*/
|
|
77
|
+
recordUsage(modelName, usage) {
|
|
78
|
+
if (!usage || typeof usage !== 'object')
|
|
79
|
+
return;
|
|
80
|
+
if (typeof usage.prompt_tokens === 'number') {
|
|
81
|
+
this.recordInputTokens(modelName, usage.prompt_tokens);
|
|
82
|
+
}
|
|
83
|
+
if (typeof usage.completion_tokens === 'number') {
|
|
84
|
+
this.recordOutputTokens(modelName, usage.completion_tokens);
|
|
85
|
+
}
|
|
86
|
+
if (usage.prompt_tokens_details) {
|
|
87
|
+
const details = usage.prompt_tokens_details;
|
|
88
|
+
if (typeof details.cache_creation_input_tokens === 'number') {
|
|
89
|
+
this.recordCacheCreationTokens(modelName, details.cache_creation_input_tokens);
|
|
90
|
+
}
|
|
91
|
+
if (typeof details.cache_read_input_tokens === 'number') {
|
|
92
|
+
this.recordCacheReadTokens(modelName, details.cache_read_input_tokens);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Get the overall token usage summary.
|
|
98
|
+
*/
|
|
99
|
+
getSummary() {
|
|
100
|
+
const totalTokens = this.totalInputTokens +
|
|
101
|
+
this.totalOutputTokens +
|
|
102
|
+
this.totalCacheCreationTokens +
|
|
103
|
+
this.totalCacheReadTokens;
|
|
104
|
+
// Cache efficiency: percentage of tokens from cache reads
|
|
105
|
+
const cacheEfficiency = totalTokens === 0
|
|
106
|
+
? 0
|
|
107
|
+
: Math.round((this.totalCacheReadTokens / totalTokens) * 10000) / 100;
|
|
108
|
+
return {
|
|
109
|
+
total_input_tokens: this.totalInputTokens,
|
|
110
|
+
total_output_tokens: this.totalOutputTokens,
|
|
111
|
+
total_cache_creation_tokens: this.totalCacheCreationTokens,
|
|
112
|
+
total_cache_read_tokens: this.totalCacheReadTokens,
|
|
113
|
+
total_tokens: totalTokens,
|
|
114
|
+
cache_efficiency_percent: cacheEfficiency,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Get per-model token usage statistics.
|
|
119
|
+
*/
|
|
120
|
+
getModelStats() {
|
|
121
|
+
const result = {};
|
|
122
|
+
for (const [modelName, stats] of this.modelStats.entries()) {
|
|
123
|
+
const total = stats.input_tokens +
|
|
124
|
+
stats.output_tokens +
|
|
125
|
+
stats.cache_creation_tokens +
|
|
126
|
+
stats.cache_read_tokens;
|
|
127
|
+
result[modelName] = {
|
|
128
|
+
...stats,
|
|
129
|
+
total_tokens: total,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
return result;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=token-usage-aggregator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-usage-aggregator.js","sourceRoot":"","sources":["../src/token-usage-aggregator.ts"],"names":[],"mappings":"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"}
|