cost-katana 2.3.2 β†’ 2.4.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.
package/README.md CHANGED
@@ -6,27 +6,73 @@ Cost Katana is a drop-in SDK that wraps your AI calls with automatic cost tracki
6
6
 
7
7
  ---
8
8
 
9
- ## πŸš€ Get Started in 60 Seconds
9
+ ## Get started in 60 seconds
10
10
 
11
- ### Step 1: Install
11
+ Set **`COST_KATANA_API_KEY`**. **`PROJECT_ID`** is optional (recommended for per-project analytics in the dashboard).
12
+
13
+ ### Gateway first (drop-in proxy β€” like changing base URL + one header)
14
+
15
+ **HTTP / cURL** β€” no SDK; send OpenAI-compatible JSON to the gateway:
16
+
17
+ ```bash
18
+ curl -s https://api.costkatana.com/api/gateway/v1/chat/completions \
19
+ -H "Content-Type: application/json" \
20
+ -H "Authorization: Bearer $COST_KATANA_API_KEY" \
21
+ -d '{"model":"gpt-4o","messages":[{"role":"user","content":"Hello!"}]}'
22
+ ```
23
+
24
+ See also [`examples/curl-http.sh`](./examples/curl-http.sh).
25
+
26
+ **TypeScript β€” `gateway()`** β€” zero extra config; reads `COST_KATANA_API_KEY` (same behavior as `createGatewayClientFromEnv()`):
12
27
 
13
28
  ```bash
14
29
  npm install cost-katana
15
30
  ```
16
31
 
17
- ### Step 2: Make Your First AI Call
32
+ ```typescript
33
+ import { gateway } from 'cost-katana';
34
+
35
+ const res = await gateway().openai({
36
+ model: 'gpt-4o',
37
+ messages: [{ role: 'user', content: 'Hello!' }],
38
+ });
39
+
40
+ console.log(res.data);
41
+ ```
42
+
43
+ ### `ai()` β€” simple typed API with cost on the response
18
44
 
19
45
  ```typescript
20
46
  import { ai, OPENAI } from 'cost-katana';
21
47
 
22
- const response = await ai(OPENAI.GPT_4, 'Explain quantum computing in one sentence');
48
+ const response = await ai(OPENAI.GPT_4O, 'Hello');
49
+
50
+ console.log(response.text, response.cost);
51
+ ```
52
+
53
+ ### Python
54
+
55
+ ```bash
56
+ pip install costkatana
57
+ ```
58
+
59
+ ```python
60
+ import cost_katana as ck
61
+ from cost_katana import openai
23
62
 
24
- console.log(response.text); // "Quantum computing uses qubits to perform..."
25
- console.log(response.cost); // 0.0012
26
- console.log(response.tokens); // 47
63
+ response = ck.ai(openai.gpt_4o, "Hello")
64
+ print(response.text, response.cost)
27
65
  ```
28
66
 
29
- **That's it.** No configuration files. No complex setup. Just results.
67
+ ### Which API should I use?
68
+
69
+ | If you want… | Use |
70
+ |--------------|-----|
71
+ | Drop-in HTTP proxy (existing OpenAI clients / curl) | Gateway URL + `Authorization: Bearer`, or **`gateway()`** in TypeScript |
72
+ | Simple AI calls with cost on the response | **`ai()`** / **`chat()`** |
73
+ | Session replay, advanced analytics, or manual `trackUsage` | **`AICostTracker`** (advanced) |
74
+
75
+ For most apps, **`COST_KATANA_API_KEY`** plus either **`gateway()`** (proxy) or **`ai()`** (SDK) is enough. Optional direct provider keys: see [`.env.example`](./.env.example) if you need them.
30
76
 
31
77
  ---
32
78
 
@@ -222,16 +268,25 @@ DEEPSEEK.DEEPSEEK_CHAT
222
268
 
223
269
  ### Environment Variables
224
270
 
271
+ **Start here:** `COST_KATANA_API_KEY` unlocks routing, tracking, and dashboard features. **`PROJECT_ID`** is optional (set it to scope usage to a project in the dashboard).
272
+
225
273
  ```bash
226
- # Recommended: Use Cost Katana API key for all features
274
+ # Required for hosted Cost Katana
227
275
  COST_KATANA_API_KEY=dak_your_key_here
228
276
 
229
- # Or use provider keys directly
277
+ # Optional β€” per-project analytics
278
+ PROJECT_ID=your_project_id
279
+ ```
280
+
281
+ Optional: bring your own provider keys, or use AWS Bedrock. **Copy [`.env.example`](./.env.example)** into `.env` and fill in values.
282
+
283
+ ```bash
284
+ # Optional β€” direct provider keys
230
285
  OPENAI_API_KEY=sk-...
231
286
  ANTHROPIC_API_KEY=sk-ant-...
232
287
  GEMINI_API_KEY=...
233
288
 
234
- # For AWS Bedrock
289
+ # Optional β€” AWS Bedrock
235
290
  AWS_ACCESS_KEY_ID=...
236
291
  AWS_SECRET_ACCESS_KEY=...
237
292
  AWS_REGION=us-east-1
@@ -372,34 +427,70 @@ console.log(`Provider used: ${response.provider}`);
372
427
 
373
428
  ---
374
429
 
375
- ## πŸ“Š Comprehensive Usage Tracking & Analytics
430
+ ## πŸ“Š Usage tracking & analytics
376
431
 
377
- ### Real-time Performance Monitoring
432
+ ### Dashboard attribution (stay on `ai()`)
378
433
 
379
- Cost Katana now provides comprehensive tracking of every request, including network performance, client environment, and optimization opportunities:
434
+ Use the same **`ai()`** API as everywhere else. Point usage at your project once with **`configure()`** or env varsβ€”no need to switch to a new class for standard cost and token tracking.
380
435
 
381
436
  ```typescript
382
- import { AICostTracker, OPENAI } from 'cost-katana';
437
+ import { configure, ai, OPENAI } from 'cost-katana';
383
438
 
384
- const tracker = new AICostTracker({
439
+ await configure({
385
440
  apiKey: process.env.COST_KATANA_API_KEY,
386
- // Enable comprehensive tracking
387
- comprehensiveTracking: true,
388
- // Optional: configure tracking endpoints
389
- trackingEndpoint: 'https://api.costkatana.com/usage/track-comprehensive'
441
+ projectId: process.env.PROJECT_ID,
390
442
  });
391
443
 
392
- const response = await tracker.chat(OPENAI.GPT_4, 'Explain quantum computing');
444
+ const response = await ai(OPENAI.GPT_4O, 'Explain quantum computing', {
445
+ tags: ['demo', 'readme'],
446
+ });
393
447
 
394
- console.log('Response:', response.text);
448
+ console.log(response.text);
395
449
  console.log('Cost:', response.cost);
396
450
  console.log('Tokens:', response.tokens);
397
- console.log('Response Time:', response.responseTime);
451
+ console.log('Response time (ms):', response.responseTime);
452
+ ```
453
+
454
+ Calls are attributed to your project in the dashboard. You can also pass **`projectId`** on individual `ai()` options when you use multiple projects.
455
+
456
+ ### `AICostTracker` with defaults (recommended)
457
+
458
+ When you need a **dedicated tracker instance** (not the global `ai()` helper), use **`createCostKatanaTracker()`** or **`AICostTracker.createWithDefaults()`**. They fill in **`TrackerConfig`** from the same environment rules as auto-config: if you set **direct** provider keys (`OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `GOOGLE_API_KEY`, or AWS Bedrock creds), those providers are registered. If you **only** have **`COST_KATANA_API_KEY`** and **no** provider keys, the default is **Cost Katana hosted models** via the gateway (**`costkatana-backend-nest`**): a single OpenAI-shaped slot with the reserved `proxy` key so **`ai()`** / **`initializeGateway()`** route inference through the hosted API (no OpenAI/Anthropic keys required in your app). Optimization and alerts come from package defaults; pass a **partial** config to override anything.
398
459
 
399
- // Comprehensive tracking data is automatically sent to your dashboard
400
- // Including network metrics, client environment, and optimization suggestions
460
+ ```typescript
461
+ import { createCostKatanaTracker, AIProvider } from 'cost-katana';
462
+
463
+ const tracker = await createCostKatanaTracker();
464
+
465
+ // Optional overrides (merged on top of defaults)
466
+ const custom = await createCostKatanaTracker({
467
+ optimization: { enablePromptOptimization: false },
468
+ providers: [{ provider: AIProvider.OpenAI, apiKey: process.env.OPENAI_API_KEY! }]
469
+ });
470
+
471
+ // Same behavior: await AICostTracker.createWithDefaults({ ... })
472
+ // Short alias: import { tracker as costKatana } from 'cost-katana';
473
+ ```
474
+
475
+ Requires **`COST_KATANA_API_KEY`** in the environment (same as `AICostTracker.create()`). **`PROJECT_ID`** remains optional.
476
+
477
+ ### Dedicated tracker instances (advanced)
478
+
479
+ If you want a **per-provider tracker object** (instead of the global `ai()` helper), use **`createOpenAITracker`** / **`createAnthropicTracker`** / etc. They wrap `AICostTracker` with a small `complete()` API:
480
+
481
+ ```typescript
482
+ import { createOpenAITracker, OPENAI } from 'cost-katana';
483
+
484
+ const t = await createOpenAITracker({ model: OPENAI.GPT_4O });
485
+ const response = await t.complete({ prompt: 'Explain quantum computing' });
486
+
487
+ console.log(response.text);
488
+ console.log('Total cost (USD):', response.cost.totalCost);
489
+ console.log('Response time (ms):', response.responseTime);
401
490
  ```
402
491
 
492
+ For **gateway proxying**, **manual `trackUsage`**, or a fully custom **`AICostTracker`** with your own provider list, see [`docs/API.md`](./docs/API.md) and [`examples/`](./examples/).
493
+
403
494
  ### View Analytics in Dashboard
404
495
 
405
496
  Once tracking is enabled, you can view detailed analytics at your dashboard:
@@ -415,11 +506,9 @@ Once tracking is enabled, you can view detailed analytics at your dashboard:
415
506
  For custom implementations or additional tracking:
416
507
 
417
508
  ```typescript
418
- import { AICostTracker } from 'cost-katana';
509
+ import { createCostKatanaTracker } from 'cost-katana';
419
510
 
420
- const tracker = new AICostTracker({
421
- apiKey: process.env.COST_KATANA_API_KEY
422
- });
511
+ const tracker = await createCostKatanaTracker();
423
512
 
424
513
  // Manually track usage with additional metadata
425
514
  await tracker.trackUsage({
@@ -444,39 +533,9 @@ await tracker.trackUsage({
444
533
  });
445
534
  ```
446
535
 
447
- ### Session Replay & Distributed Tracing
448
-
449
- ```typescript
450
- import { AICostTracker } from 'cost-katana';
451
-
452
- const tracker = new AICostTracker({
453
- apiKey: process.env.COST_KATANA_API_KEY,
454
- sessionReplay: true,
455
- distributedTracing: true
456
- });
457
-
458
- // Start a traced session
459
- const sessionId = tracker.startSession({
460
- userId: 'user_123',
461
- feature: 'customer-support',
462
- metadata: {
463
- source: 'web-app',
464
- version: '1.2.3'
465
- }
466
- });
467
-
468
- // All requests in this session will be automatically traced
469
- const response = await tracker.chat(OPENAI.GPT_4, 'How can I cancel my subscription?', {
470
- sessionId,
471
- tags: ['support', 'billing']
472
- });
536
+ ### Session replay & distributed tracing
473
537
 
474
- // End session and get analytics
475
- const sessionStats = await tracker.endSession(sessionId);
476
- console.log('Session cost:', sessionStats.totalCost);
477
- console.log('Session duration:', sessionStats.duration);
478
- console.log('Requests made:', sessionStats.requestCount);
479
- ```
538
+ Session graphs, spans, and trace middleware are provided by the **`trace`** submodule. Start here: [`src/trace/README.md`](./src/trace/README.md) (exported APIs such as `TraceClient`, `LocalTraceService`, and `createTraceMiddleware`).
480
539
 
481
540
  ---
482
541
 
@@ -535,41 +594,14 @@ try {
535
594
 
536
595
  ---
537
596
 
538
- ## 🌐 AI Gateway (simple mental model)
539
-
540
- The gateway is an **HTTP proxy**: your app calls **Cost Katana’s URL** (for example `https://api.costkatana.com/api/gateway/...`) with your **Cost Katana API key**. The server can **forward** that request to OpenAI, Anthropic, Google, Cohere, etc., and attach **usage tracking, caching, budgets, firewall**, and other features.
541
-
542
- ### What is `CostKatana-Target-Url` for?
543
-
544
- It tells the proxy **which provider’s base URL** to use (for example `https://api.anthropic.com` or `https://api.openai.com`). The proxy then combines that **origin** with your route (such as `/v1/messages`) to build the real upstream request.
545
-
546
- **It is not your API key.** Keys are either:
547
-
548
- - **Provider keys** configured on the **server** (for example `ANTHROPIC_API_KEY`, `OPENAI_API_KEY`), or
549
- - **Proxy keys** (`ck-proxy-...`) that map to a stored provider key in Cost Katana.
597
+ ## 🌐 AI Gateway β€” details
550
598
 
551
- The target URL only answers: *β€œwhich vendor’s HTTP API are we talking to?”*
599
+ The gateway is an **HTTP proxy**: call Cost Katana’s URL with your API key; the service forwards to OpenAI, Anthropic, Google, Cohere, etc., and can attach caching, retries, firewall, and tracking.
552
600
 
553
- ### Easy default (you usually skip the header)
554
-
555
- For normal routes (`/v1/chat/completions`, `/v1/messages`, Google `generateContent`, Cohere `/v1/generate`, etc.), the gateway **infers** the provider from the path, and the SDK **omits** `CostKatana-Target-Url` when you use `createGatewayClientFromEnv()` or `createCostKatanaGatewayClient()`.
556
-
557
- Set `CostKatana-Target-Url` (or `targetUrl` in SDK options) when you use a **non-default base URL** (Azure OpenAI, a private endpoint, another OpenAI-compatible host) or a path the server cannot infer.
558
-
559
- On **Cost Katana’s hosted gateway**, **`/v1/messages` (Anthropic)** needs **no extra SDK or client configuration**: if the server has **no** `ANTHROPIC_API_KEY`, the gateway **automatically** runs Claude on **AWS Bedrock** (Cost Katana’s AWS account/credentials). Your app still calls the normal gateway URL and `gateway.anthropic(...)` as usual. Streaming (`stream: true`) is not supported on that automatic Bedrock path yetβ€”use non-streaming or set `ANTHROPIC_API_KEY` on the server for direct Anthropic streaming.
560
-
561
- ```typescript
562
- import { createGatewayClientFromEnv } from 'cost-katana';
563
-
564
- const gateway = createGatewayClientFromEnv();
565
-
566
- // No target header needed β€” gateway infers Anthropic from /v1/messages
567
- const res = await gateway.anthropic({
568
- model: 'claude-sonnet-4-5-20250929',
569
- max_tokens: 256,
570
- messages: [{ role: 'user', content: 'Hello' }],
571
- });
572
- ```
601
+ - **Quick start:** see [Get started in 60 seconds](#get-started-in-60-seconds) above (`gateway()` or curl).
602
+ - **`CostKatana-Target-Url`:** only needed for non-default upstream URLs (Azure OpenAI, private endpoints). For standard routes (`/v1/chat/completions`, `/v1/messages`, …), **`gateway()`** uses `inferTargetUrl: true` and usually omits it.
603
+ - **Anthropic on hosted gateway:** `gateway.anthropic(...)` / `/v1/messages` often needs no Anthropic key in your app; the service may use Bedrock when no server `ANTHROPIC_API_KEY` is set (see docs for streaming limitations).
604
+ - **Dashboard rows:** gateway traffic reflects **proxied** bodies; `AICostTracker` / `trackUsage` is for **custom** structured logging. Multi-turn and token accounting nuances: [`examples/GATEWAY_USAGE_AND_TRACKING.md`](./examples/GATEWAY_USAGE_AND_TRACKING.md) and [costkatana-examples `2-gateway`](https://github.com/Hypothesize-Tech/costkatana-examples/tree/main/2-gateway).
573
605
 
574
606
  ---
575
607
 
@@ -0,0 +1,8 @@
1
+ import { ProviderConfig, TrackerConfig } from '../types';
2
+ export declare const COST_KATANA_HOSTED_MODELS_PROXY_KEY: "proxy";
3
+ export declare function hasCostKatanaApiKeyInEnv(): boolean;
4
+ export declare function hasDirectProviderApiKeysInEnv(): boolean;
5
+ export declare function costKatanaHostedModelsProviderEntry(): ProviderConfig;
6
+ export declare function detectProvidersFromEnv(): ProviderConfig[];
7
+ export declare function createDefaultTrackerConfig(overrides?: Partial<TrackerConfig>): TrackerConfig;
8
+ //# sourceMappingURL=tracker-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracker-defaults.d.ts","sourceRoot":"","sources":["../../src/config/tracker-defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AASzF,eAAO,MAAM,mCAAmC,EAAG,OAAgB,CAAC;AAGpE,wBAAgB,wBAAwB,IAAI,OAAO,CAElD;AAGD,wBAAgB,6BAA6B,IAAI,OAAO,CAOvD;AAMD,wBAAgB,mCAAmC,IAAI,cAAc,CAKpE;AASD,wBAAgB,sBAAsB,IAAI,cAAc,EAAE,CAwBzD;AAqBD,wBAAgB,0BAA0B,CAAC,SAAS,GAAE,OAAO,CAAC,aAAa,CAAM,GAAG,aAAa,CAuBhG"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.COST_KATANA_HOSTED_MODELS_PROXY_KEY = void 0;
4
+ exports.hasCostKatanaApiKeyInEnv = hasCostKatanaApiKeyInEnv;
5
+ exports.hasDirectProviderApiKeysInEnv = hasDirectProviderApiKeysInEnv;
6
+ exports.costKatanaHostedModelsProviderEntry = costKatanaHostedModelsProviderEntry;
7
+ exports.detectProvidersFromEnv = detectProvidersFromEnv;
8
+ exports.createDefaultTrackerConfig = createDefaultTrackerConfig;
9
+ const types_1 = require("../types");
10
+ const default_1 = require("./default");
11
+ exports.COST_KATANA_HOSTED_MODELS_PROXY_KEY = 'proxy';
12
+ function hasCostKatanaApiKeyInEnv() {
13
+ return !!(process.env.COST_KATANA_API_KEY || process.env.COSTKATANA_KEY);
14
+ }
15
+ function hasDirectProviderApiKeysInEnv() {
16
+ return !!(process.env.OPENAI_API_KEY ||
17
+ process.env.ANTHROPIC_API_KEY ||
18
+ process.env.GOOGLE_API_KEY ||
19
+ (process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY));
20
+ }
21
+ function costKatanaHostedModelsProviderEntry() {
22
+ return {
23
+ provider: types_1.AIProvider.OpenAI,
24
+ apiKey: exports.COST_KATANA_HOSTED_MODELS_PROXY_KEY
25
+ };
26
+ }
27
+ function detectProvidersFromEnv() {
28
+ const providers = [];
29
+ if (process.env.OPENAI_API_KEY) {
30
+ providers.push({ provider: types_1.AIProvider.OpenAI, apiKey: process.env.OPENAI_API_KEY });
31
+ }
32
+ if (process.env.ANTHROPIC_API_KEY) {
33
+ providers.push({ provider: types_1.AIProvider.Anthropic, apiKey: process.env.ANTHROPIC_API_KEY });
34
+ }
35
+ if (process.env.GOOGLE_API_KEY) {
36
+ providers.push({ provider: types_1.AIProvider.Google, apiKey: process.env.GOOGLE_API_KEY });
37
+ }
38
+ if (process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY) {
39
+ providers.push({
40
+ provider: types_1.AIProvider.AWSBedrock,
41
+ region: process.env.AWS_REGION || 'us-east-1'
42
+ });
43
+ }
44
+ if (providers.length === 0) {
45
+ return [costKatanaHostedModelsProviderEntry()];
46
+ }
47
+ return providers;
48
+ }
49
+ function mergeOptimization(overrides) {
50
+ const base = default_1.defaultConfig.optimization;
51
+ return {
52
+ ...base,
53
+ ...overrides,
54
+ thresholds: {
55
+ ...base.thresholds,
56
+ ...overrides?.thresholds
57
+ }
58
+ };
59
+ }
60
+ function createDefaultTrackerConfig(overrides = {}) {
61
+ const providers = overrides.providers !== undefined ? overrides.providers : detectProvidersFromEnv();
62
+ const optimization = mergeOptimization(overrides.optimization);
63
+ const tracking = {
64
+ retentionDays: 30,
65
+ ...default_1.defaultConfig.tracking,
66
+ ...overrides.tracking
67
+ };
68
+ const alerts = { ...default_1.defaultConfig.alerts, ...overrides.alerts };
69
+ return {
70
+ providers,
71
+ optimization,
72
+ tracking,
73
+ alerts,
74
+ logger: overrides.logger,
75
+ apiUrl: overrides.apiUrl,
76
+ projectId: overrides.projectId
77
+ };
78
+ }
79
+ //# sourceMappingURL=tracker-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracker-defaults.js","sourceRoot":"","sources":["../../src/config/tracker-defaults.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { GatewayClient } from './client';
4
4
  import { GatewayConfig } from '../types/gateway';
5
5
  export declare function createGatewayClient(config: GatewayConfig): GatewayClient;
6
6
  export declare function createGatewayClientFromEnv(overrides?: Partial<GatewayConfig>): GatewayClient;
7
+ export declare function gateway(overrides?: Partial<GatewayConfig>): GatewayClient;
7
8
  export declare function createStandardGatewayClient(config: Omit<GatewayConfig, 'authMethod'>): GatewayClient;
8
9
  export declare function createCostKatanaGatewayClient(config: Omit<GatewayConfig, 'authMethod'>): GatewayClient;
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gateway/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKjD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAExE;AAKD,wBAAgB,0BAA0B,CAAC,SAAS,GAAE,OAAO,CAAC,aAAa,CAAM,GAAG,aAAa,CA+BhG;AAKD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,GACxC,aAAa,CAKf;AAKD,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,GACxC,aAAa,CAMf"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gateway/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAKjD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAExE;AAKD,wBAAgB,0BAA0B,CAAC,SAAS,GAAE,OAAO,CAAC,aAAa,CAAM,GAAG,aAAa,CA+BhG;AAMD,wBAAgB,OAAO,CAAC,SAAS,GAAE,OAAO,CAAC,aAAa,CAAM,GAAG,aAAa,CAE7E;AAKD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,GACxC,aAAa,CAKf;AAKD,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,GACxC,aAAa,CAMf"}
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.GatewayClient = void 0;
18
18
  exports.createGatewayClient = createGatewayClient;
19
19
  exports.createGatewayClientFromEnv = createGatewayClientFromEnv;
20
+ exports.gateway = gateway;
20
21
  exports.createStandardGatewayClient = createStandardGatewayClient;
21
22
  exports.createCostKatanaGatewayClient = createCostKatanaGatewayClient;
22
23
  var client_1 = require("./client");
@@ -52,6 +53,9 @@ function createGatewayClientFromEnv(overrides = {}) {
52
53
  };
53
54
  return new client_2.GatewayClient(config);
54
55
  }
56
+ function gateway(overrides = {}) {
57
+ return createGatewayClientFromEnv(overrides);
58
+ }
55
59
  function createStandardGatewayClient(config) {
56
60
  return createGatewayClient({
57
61
  ...config,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAcA,kDAEC;AAKD,gEA+BC;AAKD,kEAOC;AAKD,sEAQC;AAzED,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,mDAAiC;AAGjC,qCAAyC;AAMzC,SAAgB,mBAAmB,CAAC,MAAqB;IACvD,OAAO,IAAI,sBAAa,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAKD,SAAgB,0BAA0B,CAAC,YAAoC,EAAE;IAC/E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,wCAAwC,CAAC;IAE/F,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,0GAA0G,CAC3G,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAkB;QAC5B,OAAO;QACP,MAAM;QACN,UAAU,EAAE,SAAS;QACrB,cAAc,EAAE,IAAI;QACpB,WAAW,EAAE,IAAI;QACjB,aAAa,EAAE,IAAI;QAEnB,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,KAAK;SAClB;QACD,WAAW,EAAE;YACX,GAAG,EAAE,MAAM;SACZ;QACD,GAAG,SAAS;KACb,CAAC;IAEF,OAAO,IAAI,sBAAa,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAKD,SAAgB,2BAA2B,CACzC,MAAyC;IAEzC,OAAO,mBAAmB,CAAC;QACzB,GAAG,MAAM;QACT,UAAU,EAAE,UAAU;KACvB,CAAC,CAAC;AACL,CAAC;AAKD,SAAgB,6BAA6B,CAC3C,MAAyC;IAEzC,OAAO,mBAAmB,CAAC;QACzB,cAAc,EAAE,IAAI;QACpB,GAAG,MAAM;QACT,UAAU,EAAE,SAAS;KACtB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gateway/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAcA,kDAEC;AAKD,gEA+BC;AAMD,0BAEC;AAKD,kEAOC;AAKD,sEAQC;AAjFD,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,mDAAiC;AAGjC,qCAAyC;AAMzC,SAAgB,mBAAmB,CAAC,MAAqB;IACvD,OAAO,IAAI,sBAAa,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAKD,SAAgB,0BAA0B,CAAC,YAAoC,EAAE;IAC/E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,wCAAwC,CAAC;IAE/F,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,0GAA0G,CAC3G,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAkB;QAC5B,OAAO;QACP,MAAM;QACN,UAAU,EAAE,SAAS;QACrB,cAAc,EAAE,IAAI;QACpB,WAAW,EAAE,IAAI;QACjB,aAAa,EAAE,IAAI;QAEnB,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,KAAK;SAClB;QACD,WAAW,EAAE;YACX,GAAG,EAAE,MAAM;SACZ;QACD,GAAG,SAAS;KACb,CAAC;IAEF,OAAO,IAAI,sBAAa,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAMD,SAAgB,OAAO,CAAC,YAAoC,EAAE;IAC5D,OAAO,0BAA0B,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAKD,SAAgB,2BAA2B,CACzC,MAAyC;IAEzC,OAAO,mBAAmB,CAAC;QACzB,GAAG,MAAM;QACT,UAAU,EAAE,UAAU;KACvB,CAAC,CAAC;AACL,CAAC;AAKD,SAAgB,6BAA6B,CAC3C,MAAyC;IAEzC,OAAO,mBAAmB,CAAC;QACzB,cAAc,EAAE,IAAI;QACpB,GAAG,MAAM;QACT,UAAU,EAAE,SAAS;KACtB,CAAC,CAAC;AACL,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { AIProvider } from './types';
2
2
  export type { UsageMetadata, CostEstimate, OptimizationSuggestion, OptimizationResult, CompressionDetails, ContextTrimDetails, RequestFusionDetails, UsageAnalytics, ModelUsage, ProviderCost, TimeSeriesData, ExpensivePrompt, TrackerConfig, ProviderConfig, OptimizationConfig, BedrockConfig, TrackingConfig, AlertConfig, CustomPricing, AIResponse, FailoverTarget, FailoverPolicy, FailoverOptions, FailoverResponse } from './types';
3
3
  export type { OpenAIModels, AnthropicModels, AWSBedrockModels, GoogleModels, CohereModels, MistralModels, GroqModels, DeepSeekModels, XAIModels, AllModels, ProviderModelMap, SimpleConfig, AnySimpleConfig, SimpleRequest, SimpleResponse, SimpleCostEstimate } from './types/simplified';
4
- export { GatewayClient, createGatewayClient, createGatewayClientFromEnv, createStandardGatewayClient, createCostKatanaGatewayClient } from './gateway';
4
+ export { GatewayClient, createGatewayClient, createGatewayClientFromEnv, gateway, createStandardGatewayClient, createCostKatanaGatewayClient } from './gateway';
5
5
  export type { GatewayConfig, GatewayRequestOptions, GatewayResponse, GatewayStats, CacheStats, AgentTraceSummary, AgentTraceDetails, TraceConfig, WorkflowSummary, WorkflowDetails, RetryConfig, CacheConfig, WorkflowConfig, KeyVaultConfig, FirewallConfig, OpenAIRequest, AnthropicRequest, GoogleAIRequest, CohereRequest, ProxyKeyInfo, ProxyKeyUsageOptions, ThreatDetectionResult, FirewallAnalytics, FirewallOptions } from './types/gateway';
6
6
  export { FeedbackClient } from './feedback';
7
7
  export type { FeedbackOptions, ImplicitSignals, FeedbackAnalytics, ProviderRatings, ModelRatings, FeatureRatings, ImplicitSignalsAnalysis, FeedbackInsights, FeedbackSubmissionResult, FeedbackConfig } from './types/feedback';
@@ -23,6 +23,7 @@ export { validateProvider, validateModel, validateProviderConfig, validateTracke
23
23
  export { Logger as UtilLogger, LogLevel as UtilLogLevel, logger as utilLogger } from './utils/logger';
24
24
  export type { LoggerConfig } from './utils/logger';
25
25
  export { defaultConfig, defaultBedrockRegion, defaultOptimizationModel, supportedProviders, providerEndpoints, optimizationThresholds, alertThresholds } from './config/default';
26
+ export { COST_KATANA_HOSTED_MODELS_PROXY_KEY, costKatanaHostedModelsProviderEntry, createDefaultTrackerConfig, detectProvidersFromEnv, hasCostKatanaApiKeyInEnv, hasDirectProviderApiKeysInEnv } from './config/tracker-defaults';
26
27
  export { OPENAI_MODEL_IDS, ANTHROPIC_MODEL_IDS, AWS_BEDROCK_MODEL_IDS, GOOGLE_MODEL_IDS, COHERE_MODEL_IDS, GROQ_MODEL_IDS, DEEPSEEK_MODEL_IDS, MISTRAL_MODEL_IDS, XAI_MODEL_IDS, getModelsForProvider, validateModelForProvider } from './config/model-types';
27
28
  export { PRICING_CONFIG, PRICING_METADATA, getAllProviders, getProviderModels, getModelPricing, getLatestModels, getModelsByCategory, findCheapestModel, calculateCost as calculatePricingCost, estimateCost as estimatePricingCost, compareProviders } from './config/pricing-data';
28
29
  export type { ModelPricingConfig } from './config/pricing-data';
@@ -47,6 +48,7 @@ export declare class AICostTracker {
47
48
  private templateManagerInstance?;
48
49
  private constructor();
49
50
  static create(config: TrackerConfig): Promise<AICostTracker>;
51
+ static createWithDefaults(overrides?: Partial<TrackerConfig>): Promise<AICostTracker>;
50
52
  estimateCost(prompt: string, model: string, provider: AIProvider, expectedCompletionTokens?: number): Promise<CostEstimate>;
51
53
  makeRequest(request: ProviderRequest): Promise<any>;
52
54
  trackUsage(metadata: UsageMetadata | any): Promise<void>;
@@ -110,6 +112,8 @@ export declare class AICostTracker {
110
112
  getGlobalFeedbackAnalytics(): Promise<FeedbackAnalytics>;
111
113
  }
112
114
  export default AICostTracker;
115
+ export declare function createCostKatanaTracker(overrides?: Partial<TrackerConfig>): Promise<AICostTracker>;
116
+ export declare function tracker(overrides?: Partial<TrackerConfig>): Promise<AICostTracker>;
113
117
  export { AILogger, aiLogger, Logger, logger } from './logging';
114
118
  export { TemplateManager, templateManager } from './templates';
115
119
  export type { AILogEntry, AILoggerConfig, ConsoleLoggerConfig } from './types/logging';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -17,9 +17,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.validateDateRange = exports.validateUserId = exports.validatePrompt = exports.validateTrackerConfig = exports.validateProviderConfig = exports.validateModel = exports.validateProvider = exports.calculateBatchingEconomics = exports.formatCurrency = exports.calculateROI = exports.compareCosts = exports.estimateMonthlyCost = exports.calculateCost = exports.RequestFusion = exports.ContextTrimmer = exports.PromptCompressor = exports.SuggestionEngine = exports.PromptOptimizer = exports.UsageTracker = exports.TokenCounter = exports.CostAnalyzer = exports.isProviderSupported = exports.createProvider = exports.BedrockProvider = exports.OpenAIProvider = exports.BaseProvider = exports.getProviderFromModel = exports.getAllModelConstants = exports.isModelConstant = exports.META = exports.GROQ = exports.COHERE = exports.MISTRAL = exports.DEEPSEEK = exports.XAI = exports.AWS_BEDROCK = exports.GOOGLE = exports.ANTHROPIC = exports.OPENAI = exports.getAllModels = exports.getModelsByProvider = exports.getModelById = exports.MODELS = exports.FeedbackClient = exports.createCostKatanaGatewayClient = exports.createStandardGatewayClient = exports.createGatewayClientFromEnv = exports.createGatewayClient = exports.GatewayClient = exports.AIProvider = void 0;
21
- exports.createXAITracker = exports.createMistralTracker = exports.createDeepSeekTracker = exports.createGroqTracker = exports.createCohereTracker = exports.createGoogleTracker = exports.createBedrockTracker = exports.createAnthropicTracker = exports.createOpenAITracker = exports.createTracker = exports.templateManager = exports.TemplateManager = exports.logger = exports.Logger = exports.aiLogger = exports.AILogger = exports.AICostTracker = exports.compareProviders = exports.estimatePricingCost = exports.calculatePricingCost = exports.findCheapestModel = exports.getModelsByCategory = exports.getLatestModels = exports.getModelPricing = exports.getProviderModels = exports.getAllProviders = exports.PRICING_METADATA = exports.PRICING_CONFIG = exports.validateModelForProvider = exports.getModelsForProvider = exports.XAI_MODEL_IDS = exports.MISTRAL_MODEL_IDS = exports.DEEPSEEK_MODEL_IDS = exports.GROQ_MODEL_IDS = exports.COHERE_MODEL_IDS = exports.GOOGLE_MODEL_IDS = exports.AWS_BEDROCK_MODEL_IDS = exports.ANTHROPIC_MODEL_IDS = exports.OPENAI_MODEL_IDS = exports.alertThresholds = exports.optimizationThresholds = exports.providerEndpoints = exports.supportedProviders = exports.defaultOptimizationModel = exports.defaultBedrockRegion = exports.defaultConfig = exports.utilLogger = exports.UtilLogLevel = exports.UtilLogger = exports.sanitizeInput = void 0;
22
- exports.LocalTraceService = exports.TraceClient = exports.createTrackedProvider = exports.TrackedAnthropic = exports.TrackedOpenAI = exports.createChildSpan = exports.createTraceMiddleware = exports.SimpleCostTracker = void 0;
20
+ exports.validateUserId = exports.validatePrompt = exports.validateTrackerConfig = exports.validateProviderConfig = exports.validateModel = exports.validateProvider = exports.calculateBatchingEconomics = exports.formatCurrency = exports.calculateROI = exports.compareCosts = exports.estimateMonthlyCost = exports.calculateCost = exports.RequestFusion = exports.ContextTrimmer = exports.PromptCompressor = exports.SuggestionEngine = exports.PromptOptimizer = exports.UsageTracker = exports.TokenCounter = exports.CostAnalyzer = exports.isProviderSupported = exports.createProvider = exports.BedrockProvider = exports.OpenAIProvider = exports.BaseProvider = exports.getProviderFromModel = exports.getAllModelConstants = exports.isModelConstant = exports.META = exports.GROQ = exports.COHERE = exports.MISTRAL = exports.DEEPSEEK = exports.XAI = exports.AWS_BEDROCK = exports.GOOGLE = exports.ANTHROPIC = exports.OPENAI = exports.getAllModels = exports.getModelsByProvider = exports.getModelById = exports.MODELS = exports.FeedbackClient = exports.createCostKatanaGatewayClient = exports.createStandardGatewayClient = exports.gateway = exports.createGatewayClientFromEnv = exports.createGatewayClient = exports.GatewayClient = exports.AIProvider = void 0;
21
+ exports.createAnthropicTracker = exports.createOpenAITracker = exports.createTracker = exports.templateManager = exports.TemplateManager = exports.logger = exports.Logger = exports.aiLogger = exports.AILogger = exports.AICostTracker = exports.compareProviders = exports.estimatePricingCost = exports.calculatePricingCost = exports.findCheapestModel = exports.getModelsByCategory = exports.getLatestModels = exports.getModelPricing = exports.getProviderModels = exports.getAllProviders = exports.PRICING_METADATA = exports.PRICING_CONFIG = exports.validateModelForProvider = exports.getModelsForProvider = exports.XAI_MODEL_IDS = exports.MISTRAL_MODEL_IDS = exports.DEEPSEEK_MODEL_IDS = exports.GROQ_MODEL_IDS = exports.COHERE_MODEL_IDS = exports.GOOGLE_MODEL_IDS = exports.AWS_BEDROCK_MODEL_IDS = exports.ANTHROPIC_MODEL_IDS = exports.OPENAI_MODEL_IDS = exports.hasDirectProviderApiKeysInEnv = exports.hasCostKatanaApiKeyInEnv = exports.detectProvidersFromEnv = exports.createDefaultTrackerConfig = exports.costKatanaHostedModelsProviderEntry = exports.COST_KATANA_HOSTED_MODELS_PROXY_KEY = exports.alertThresholds = exports.optimizationThresholds = exports.providerEndpoints = exports.supportedProviders = exports.defaultOptimizationModel = exports.defaultBedrockRegion = exports.defaultConfig = exports.utilLogger = exports.UtilLogLevel = exports.UtilLogger = exports.sanitizeInput = exports.validateDateRange = void 0;
22
+ exports.LocalTraceService = exports.TraceClient = exports.createTrackedProvider = exports.TrackedAnthropic = exports.TrackedOpenAI = exports.createChildSpan = exports.createTraceMiddleware = exports.SimpleCostTracker = exports.createXAITracker = exports.createMistralTracker = exports.createDeepSeekTracker = exports.createGroqTracker = exports.createCohereTracker = exports.createGoogleTracker = exports.createBedrockTracker = void 0;
23
+ exports.createCostKatanaTracker = createCostKatanaTracker;
24
+ exports.tracker = tracker;
23
25
  exports.ai = ai;
24
26
  exports.chat = chat;
25
27
  exports.configure = configure;
@@ -29,6 +31,7 @@ var gateway_1 = require("./gateway");
29
31
  Object.defineProperty(exports, "GatewayClient", { enumerable: true, get: function () { return gateway_1.GatewayClient; } });
30
32
  Object.defineProperty(exports, "createGatewayClient", { enumerable: true, get: function () { return gateway_1.createGatewayClient; } });
31
33
  Object.defineProperty(exports, "createGatewayClientFromEnv", { enumerable: true, get: function () { return gateway_1.createGatewayClientFromEnv; } });
34
+ Object.defineProperty(exports, "gateway", { enumerable: true, get: function () { return gateway_1.gateway; } });
32
35
  Object.defineProperty(exports, "createStandardGatewayClient", { enumerable: true, get: function () { return gateway_1.createStandardGatewayClient; } });
33
36
  Object.defineProperty(exports, "createCostKatanaGatewayClient", { enumerable: true, get: function () { return gateway_1.createCostKatanaGatewayClient; } });
34
37
  var feedback_1 = require("./feedback");
@@ -102,6 +105,13 @@ Object.defineProperty(exports, "supportedProviders", { enumerable: true, get: fu
102
105
  Object.defineProperty(exports, "providerEndpoints", { enumerable: true, get: function () { return default_1.providerEndpoints; } });
103
106
  Object.defineProperty(exports, "optimizationThresholds", { enumerable: true, get: function () { return default_1.optimizationThresholds; } });
104
107
  Object.defineProperty(exports, "alertThresholds", { enumerable: true, get: function () { return default_1.alertThresholds; } });
108
+ var tracker_defaults_1 = require("./config/tracker-defaults");
109
+ Object.defineProperty(exports, "COST_KATANA_HOSTED_MODELS_PROXY_KEY", { enumerable: true, get: function () { return tracker_defaults_1.COST_KATANA_HOSTED_MODELS_PROXY_KEY; } });
110
+ Object.defineProperty(exports, "costKatanaHostedModelsProviderEntry", { enumerable: true, get: function () { return tracker_defaults_1.costKatanaHostedModelsProviderEntry; } });
111
+ Object.defineProperty(exports, "createDefaultTrackerConfig", { enumerable: true, get: function () { return tracker_defaults_1.createDefaultTrackerConfig; } });
112
+ Object.defineProperty(exports, "detectProvidersFromEnv", { enumerable: true, get: function () { return tracker_defaults_1.detectProvidersFromEnv; } });
113
+ Object.defineProperty(exports, "hasCostKatanaApiKeyInEnv", { enumerable: true, get: function () { return tracker_defaults_1.hasCostKatanaApiKeyInEnv; } });
114
+ Object.defineProperty(exports, "hasDirectProviderApiKeysInEnv", { enumerable: true, get: function () { return tracker_defaults_1.hasDirectProviderApiKeysInEnv; } });
105
115
  var model_types_1 = require("./config/model-types");
106
116
  Object.defineProperty(exports, "OPENAI_MODEL_IDS", { enumerable: true, get: function () { return model_types_1.OPENAI_MODEL_IDS; } });
107
117
  Object.defineProperty(exports, "ANTHROPIC_MODEL_IDS", { enumerable: true, get: function () { return model_types_1.ANTHROPIC_MODEL_IDS; } });
@@ -135,6 +145,7 @@ const prompt_optimizer_2 = require("./optimizers/prompt-optimizer");
135
145
  const validators_2 = require("./utils/validators");
136
146
  const logger_2 = require("./utils/logger");
137
147
  const default_2 = require("./config/default");
148
+ const tracker_defaults_2 = require("./config/tracker-defaults");
138
149
  const models_3 = require("./types/models");
139
150
  const axios_1 = __importDefault(require("axios"));
140
151
  const client_1 = require("./gateway/client");
@@ -186,21 +197,26 @@ class AICostTracker {
186
197
  }
187
198
  static async create(config) {
188
199
  const apiKey = process.env.COST_KATANA_API_KEY || '';
189
- const projectId = process.env.PROJECT_ID;
200
+ const projectId = process.env.PROJECT_ID ||
201
+ process.env.COST_KATANA_PROJECT ||
202
+ process.env.COSTKATANA_PROJECT_ID;
190
203
  const apiUrl = config.apiUrl || DEFAULT_API_URL;
191
204
  if (!apiKey) {
192
205
  throw new Error('API_KEY environment variable not set. Please get your API key from the Cost Katana dashboard.');
193
206
  }
194
207
  if (!projectId) {
195
- throw new Error('PROJECT_ID environment variable not set. Please get your Project ID from the Cost Katana dashboard.');
208
+ logger_2.logger.warn('PROJECT_ID not set β€” requests use your account without a project scope. Set PROJECT_ID for per-project dashboard filtering.');
209
+ }
210
+ const headers = {
211
+ Authorization: `Bearer ${apiKey}`,
212
+ 'Content-Type': 'application/json'
213
+ };
214
+ if (projectId) {
215
+ headers['x-project-id'] = projectId;
196
216
  }
197
217
  const apiClient = axios_1.default.create({
198
218
  baseURL: apiUrl,
199
- headers: {
200
- Authorization: `Bearer ${apiKey}`,
201
- 'Content-Type': 'application/json',
202
- 'x-project-id': projectId
203
- }
219
+ headers
204
220
  });
205
221
  try {
206
222
  await apiClient.get('/user/profile');
@@ -210,12 +226,15 @@ class AICostTracker {
210
226
  throw new Error('Invalid or expired API_KEY. Please get a new API key from the Cost Katana dashboard.');
211
227
  }
212
228
  }
213
- if (!config.projectId) {
229
+ if (!config.projectId && projectId) {
214
230
  config.projectId = projectId;
215
231
  }
216
232
  const tracker = new AICostTracker(config, apiClient);
217
233
  return tracker;
218
234
  }
235
+ static async createWithDefaults(overrides = {}) {
236
+ return AICostTracker.create((0, tracker_defaults_2.createDefaultTrackerConfig)(overrides));
237
+ }
219
238
  async estimateCost(prompt, model, provider, expectedCompletionTokens) {
220
239
  (0, validators_2.validatePrompt)(prompt);
221
240
  const providerInstance = this.providers.get(provider);
@@ -617,15 +636,25 @@ class AICostTracker {
617
636
  const responseTime = Date.now() - startTime;
618
637
  const promptText = this.extractPromptFromRequest(request);
619
638
  const completionText = this.extractCompletionFromResponse(response.data);
620
- const promptTokens = Math.ceil(promptText.length / 4);
621
- const completionTokens = Math.ceil(completionText.length / 4);
639
+ const usageFromResponse = response.data?.usage;
640
+ const promptTokens = usageFromResponse?.input_tokens ??
641
+ usageFromResponse?.prompt_tokens ??
642
+ Math.ceil(promptText.length / 4);
643
+ const completionTokens = usageFromResponse?.output_tokens ??
644
+ usageFromResponse?.completion_tokens ??
645
+ Math.ceil(completionText.length / 4);
646
+ const modelForPricing = request.model || response.data?.model || 'unknown';
647
+ const estimatedCost = calculateCostFromUsage(modelForPricing, {
648
+ promptTokens,
649
+ completionTokens
650
+ });
622
651
  const usageMetadata = {
623
652
  provider: this.inferProviderFromOptions(options),
624
653
  model: request.model || 'unknown',
625
654
  promptTokens,
626
655
  completionTokens,
627
656
  totalTokens: promptTokens + completionTokens,
628
- estimatedCost: 0.001,
657
+ estimatedCost,
629
658
  prompt: promptText,
630
659
  completion: completionText,
631
660
  responseTime,
@@ -878,6 +907,12 @@ class AICostTracker {
878
907
  }
879
908
  exports.AICostTracker = AICostTracker;
880
909
  exports.default = AICostTracker;
910
+ async function createCostKatanaTracker(overrides = {}) {
911
+ return AICostTracker.createWithDefaults(overrides);
912
+ }
913
+ async function tracker(overrides = {}) {
914
+ return createCostKatanaTracker(overrides);
915
+ }
881
916
  var logging_1 = require("./logging");
882
917
  Object.defineProperty(exports, "AILogger", { enumerable: true, get: function () { return logging_1.AILogger; } });
883
918
  Object.defineProperty(exports, "aiLogger", { enumerable: true, get: function () { return logging_1.aiLogger; } });
@@ -1185,8 +1220,8 @@ async function autoConfigureIfNeeded() {
1185
1220
  const projectId = process.env.COST_KATANA_PROJECT ||
1186
1221
  process.env.PROJECT_ID ||
1187
1222
  process.env.COSTKATANA_PROJECT_ID;
1188
- if (!apiKey || !projectId) {
1189
- logger_2.logger.info('Cost Katana credentials not found, attempting direct provider mode');
1223
+ if (!apiKey) {
1224
+ logger_2.logger.info('Cost Katana API key not found, attempting direct provider mode');
1190
1225
  const hasOpenAI = !!process.env.OPENAI_API_KEY;
1191
1226
  const hasAnthropic = !!process.env.ANTHROPIC_API_KEY;
1192
1227
  const hasGoogle = !!process.env.GOOGLE_API_KEY;
@@ -1196,7 +1231,7 @@ async function autoConfigureIfNeeded() {
1196
1231
  `Please set up Cost Katana for the best experience:\n\n` +
1197
1232
  ` Option 1: Cost Katana (Recommended)\n` +
1198
1233
  ` export COST_KATANA_API_KEY="dak_your_key"\n` +
1199
- ` export PROJECT_ID="your_project_id"\n` +
1234
+ ` export PROJECT_ID="your_project_id" # optional; omit for account-level only\n` +
1200
1235
  ` Get your keys at: https://costkatana.com/settings/api-keys\n\n` +
1201
1236
  ` Option 2: Direct Provider Keys\n` +
1202
1237
  ` export OPENAI_API_KEY="sk-..."\n` +
@@ -1244,46 +1279,10 @@ async function autoConfigureIfNeeded() {
1244
1279
  ' Sign up at https://costkatana.com for full features!');
1245
1280
  return;
1246
1281
  }
1247
- const config = {
1248
- providers: [],
1249
- optimization: {
1250
- enablePromptOptimization: true,
1251
- enableModelSuggestions: true,
1252
- enableCachingSuggestions: true,
1253
- thresholds: default_2.optimizationThresholds
1254
- },
1255
- tracking: {}
1256
- };
1257
- if (process.env.OPENAI_API_KEY) {
1258
- config.providers.push({
1259
- provider: types_2.AIProvider.OpenAI,
1260
- apiKey: process.env.OPENAI_API_KEY
1261
- });
1262
- }
1263
- if (process.env.ANTHROPIC_API_KEY) {
1264
- config.providers.push({
1265
- provider: types_2.AIProvider.Anthropic,
1266
- apiKey: process.env.ANTHROPIC_API_KEY
1267
- });
1268
- }
1269
- if (process.env.GOOGLE_API_KEY) {
1270
- config.providers.push({
1271
- provider: types_2.AIProvider.Google,
1272
- apiKey: process.env.GOOGLE_API_KEY
1273
- });
1274
- }
1275
- if (process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY) {
1276
- config.providers.push({
1277
- provider: types_2.AIProvider.AWSBedrock,
1278
- region: process.env.AWS_REGION || 'us-east-1'
1279
- });
1280
- }
1281
- if (config.providers.length === 0) {
1282
- config.providers.push({
1283
- provider: types_2.AIProvider.OpenAI,
1284
- apiKey: 'proxy'
1285
- });
1282
+ if (!projectId) {
1283
+ logger_2.logger.warn('PROJECT_ID not set β€” usage will attribute to your account without a project scope. Set PROJECT_ID for per-project dashboard filtering.');
1286
1284
  }
1285
+ const config = (0, tracker_defaults_2.createDefaultTrackerConfig)();
1287
1286
  globalTracker = await AICostTracker.create(config);
1288
1287
  const gatewayUrl = process.env.COSTKATANA_GATEWAY_URL ||
1289
1288
  process.env.GATEWAY_URL ||
@@ -1573,10 +1572,14 @@ function extractTextFromGatewayResponse(response) {
1573
1572
  return '';
1574
1573
  }
1575
1574
  function extractUsageFromGatewayResponse(response) {
1575
+ const u = response?.usage;
1576
+ const promptTokens = u?.prompt_tokens ?? u?.input_tokens ?? 0;
1577
+ const completionTokens = u?.completion_tokens ?? u?.output_tokens ?? 0;
1578
+ const totalTokens = u?.total_tokens ?? promptTokens + completionTokens;
1576
1579
  return {
1577
- promptTokens: response.usage?.prompt_tokens || 0,
1578
- completionTokens: response.usage?.completion_tokens || 0,
1579
- totalTokens: response.usage?.total_tokens || 0
1580
+ promptTokens,
1581
+ completionTokens,
1582
+ totalTokens
1580
1583
  };
1581
1584
  }
1582
1585
  function extractTextFromProviderResponse(response, provider) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cost-katana",
3
- "version": "2.3.2",
3
+ "version": "2.4.0",
4
4
  "description": "The simplest way to use AI with automatic cost tracking and optimization. Native SDK support for OpenAI and Google Gemini with automatic AWS Bedrock fallback.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",