summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--packages/opencode/test/provider/provider.test.ts36
1 files changed, 36 insertions, 0 deletions
diff --git a/packages/opencode/test/provider/provider.test.ts b/packages/opencode/test/provider/provider.test.ts
index 698fdddfb..e6eb0c7b4 100644
--- a/packages/opencode/test/provider/provider.test.ts
+++ b/packages/opencode/test/provider/provider.test.ts
@@ -1727,3 +1727,39 @@ test("provider options are deeply merged", async () => {
},
})
})
+
+test("custom model inherits npm package from models.dev provider config", async () => {
+ await using tmp = await tmpdir({
+ init: async (dir) => {
+ await Bun.write(
+ path.join(dir, "opencode.json"),
+ JSON.stringify({
+ $schema: "https://opencode.ai/config.json",
+ provider: {
+ openai: {
+ models: {
+ "my-custom-model": {
+ name: "My Custom Model",
+ tool_call: true,
+ limit: { context: 8000, output: 2000 },
+ },
+ },
+ },
+ },
+ }),
+ )
+ },
+ })
+ await Instance.provide({
+ directory: tmp.path,
+ init: async () => {
+ Env.set("OPENAI_API_KEY", "test-api-key")
+ },
+ fn: async () => {
+ const providers = await Provider.list()
+ const model = providers["openai"].models["my-custom-model"]
+ expect(model).toBeDefined()
+ expect(model.api.npm).toBe("@ai-sdk/openai")
+ },
+ })
+})