summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--packages/opencode/src/provider/provider.ts22
1 files changed, 14 insertions, 8 deletions
diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts
index 1b9320aeb..7f10b7dbb 100644
--- a/packages/opencode/src/provider/provider.ts
+++ b/packages/opencode/src/provider/provider.ts
@@ -272,14 +272,20 @@ export namespace Provider {
reasoning: model.reasoning ?? existing?.reasoning ?? false,
temperature: model.temperature ?? existing?.temperature ?? false,
tool_call: model.tool_call ?? existing?.tool_call ?? true,
- cost: {
- ...existing?.cost,
- ...model.cost,
- input: 0,
- output: 0,
- cache_read: 0,
- cache_write: 0,
- },
+ cost:
+ !model.cost && !existing?.cost
+ ? {
+ input: 0,
+ output: 0,
+ cache_read: 0,
+ cache_write: 0,
+ }
+ : {
+ cache_read: 0,
+ cache_write: 0,
+ ...existing?.cost,
+ ...model.cost,
+ },
options: {
...existing?.options,
...model.options,