Browse Source

Add http-referer header for vercel ai gateway requests (#1403)

Josh 7 months ago
parent
commit
4a221868da
1 changed files with 25 additions and 14 deletions
  1. 25 14
      packages/opencode/src/provider/provider.ts

+ 25 - 14
packages/opencode/src/provider/provider.ts

@@ -97,7 +97,7 @@ export namespace Provider {
                     Array.isArray(msg.content) && msg.content.some((part: any) => part.type === "image_url"),
                 )
               }
-            } catch {}
+            } catch { }
             const headers: Record<string, string> = {
               ...init.headers,
               ...copilot.HEADERS,
@@ -194,6 +194,17 @@ export namespace Provider {
         },
       }
     },
+    vercel: async () => {
+      return {
+        autoload: false,
+        options: {
+          headers: {
+            "http-referer": "https://opencode.ai/",
+            "x-title": "opencode",
+          },
+        },
+      }
+    },
   }
 
   const state = App.state("provider", async () => {
@@ -263,26 +274,26 @@ export namespace Provider {
           cost:
             !model.cost && !existing?.cost
               ? {
-                  input: 0,
-                  output: 0,
-                  cache_read: 0,
-                  cache_write: 0,
-                }
+                input: 0,
+                output: 0,
+                cache_read: 0,
+                cache_write: 0,
+              }
               : {
-                  cache_read: 0,
-                  cache_write: 0,
-                  ...existing?.cost,
-                  ...model.cost,
-                },
+                cache_read: 0,
+                cache_write: 0,
+                ...existing?.cost,
+                ...model.cost,
+              },
           options: {
             ...existing?.options,
             ...model.options,
           },
           limit: model.limit ??
             existing?.limit ?? {
-              context: 0,
-              output: 0,
-            },
+            context: 0,
+            output: 0,
+          },
         }
         parsed.models[modelID] = parsedModel
       }