From a0d2e53bde04878ec9dc5594f6b118232b569775 Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Thu, 31 Jul 2025 23:47:23 -0400 Subject: [PATCH] poll for models.dev changes --- packages/opencode/src/provider/models.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/opencode/src/provider/models.ts b/packages/opencode/src/provider/models.ts index ef510861..b3091a76 100644 --- a/packages/opencode/src/provider/models.ts +++ b/packages/opencode/src/provider/models.ts @@ -50,18 +50,15 @@ export namespace ModelsDev { export type Provider = z.infer export async function get() { + refresh() const file = Bun.file(filepath) const result = await file.json().catch(() => {}) - if (result) { - refresh() - return result as Record - } - refresh() + if (result) return result as Record const json = await data() return JSON.parse(json) as Record } - async function refresh() { + export async function refresh() { const file = Bun.file(filepath) log.info("refreshing") const result = await fetch("https://models.dev/api.json", { @@ -72,3 +69,5 @@ export namespace ModelsDev { if (result && result.ok) await Bun.write(file, result) } } + +setInterval(() => ModelsDev.refresh(), 60 * 1000).unref()