diff options
| author | Dax Raad <[email protected]> | 2025-06-17 20:51:25 -0400 |
|---|---|---|
| committer | Dax Raad <[email protected]> | 2025-06-17 20:51:39 -0400 |
| commit | b470466e305c9d577e798a202fe696362dceacf7 (patch) | |
| tree | 3d3e355be7103ea3d37b2eb5162b903a043c2c2b | |
| parent | d1f9311931b48f36bd538b5bc74decd8967bf0a2 (diff) | |
| download | opencode-b470466e305c9d577e798a202fe696362dceacf7.tar.gz opencode-b470466e305c9d577e798a202fe696362dceacf7.zip | |
integrate cache read/write data
| -rw-r--r-- | packages/opencode/src/provider/models.ts | 4 | ||||
| -rw-r--r-- | packages/opencode/src/session/index.ts | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/packages/opencode/src/provider/models.ts b/packages/opencode/src/provider/models.ts index a753d7ec1..e043ab9f9 100644 --- a/packages/opencode/src/provider/models.ts +++ b/packages/opencode/src/provider/models.ts @@ -17,8 +17,8 @@ export namespace ModelsDev { cost: z.object({ input: z.number(), output: z.number(), - inputCached: z.number(), - outputCached: z.number(), + cache_read: z.number().optional(), + cache_write: z.number().optional(), }), limit: z.object({ context: z.number(), diff --git a/packages/opencode/src/session/index.ts b/packages/opencode/src/session/index.ts index fe21b26cd..7d310b853 100644 --- a/packages/opencode/src/session/index.ts +++ b/packages/opencode/src/session/index.ts @@ -759,6 +759,16 @@ export namespace Session { cost: new Decimal(0) .add(new Decimal(tokens.input).mul(model.cost.input).div(1_000_000)) .add(new Decimal(tokens.output).mul(model.cost.output).div(1_000_000)) + .add( + new Decimal(tokens.cache.read) + .mul(model.cost.cache_read ?? 0) + .div(1_000_000), + ) + .add( + new Decimal(tokens.cache.write) + .mul(model.cost.cache_write ?? 0) + .div(1_000_000), + ) .toNumber(), tokens, } |
