force models.dev refresh on auth login

This commit is contained in:
Dax Raad
2025-08-01 17:48:01 -04:00
parent e1b7e25f4d
commit 71cd84dbbb
5 changed files with 16 additions and 33 deletions

View File

@@ -1,38 +1,13 @@
{ {
"$schema": "https://opencode.ai/config.json", "$schema": "https://opencode.ai/config.json",
"provider": { "provider": {
"openrouter": { "cerebras": {
"models": {
"moonshotai/kimi-k2": {
"options": {
"provider": {
"order": ["baseten"],
"allow_fallbacks": false
}
}
}
}
},
"huggingface": {
"models": {
"Qwen/Qwen3-235B-A22B-Instruct-2507:fireworks-ai": {}
}
},
"local": {
"npm": "@ai-sdk/openai-compatible",
"name": "Local",
"options": { "options": {
"baseURL": "http://127.0.0.1:1234/v1", "apiKey": "csk-m33xrvt43whkypn8r4ph9xc8fenhx2f68c3pj22ext45v5k9"
"includeUsage": true
}, },
"npm": "@ai-sdk/cerebras",
"models": { "models": {
"qwen/qwen3-coder-30b": { "qwen-3-coder-480b": {}
"name": "Qwen-Coder 30B",
"limit": {
"context": 262144,
"output": 66536
}
}
} }
} }
}, },

View File

@@ -100,6 +100,7 @@ export const AuthLoginCommand = cmd({
prompts.outro("Done") prompts.outro("Done")
return return
} }
await ModelsDev.refresh().catch(() => {})
const providers = await ModelsDev.get() const providers = await ModelsDev.get()
const priority: Record<string, number> = { const priority: Record<string, number> = {
anthropic: 0, anthropic: 0,

View File

@@ -27,7 +27,7 @@ await Promise.all([
fs.mkdir(Global.Path.log, { recursive: true }), fs.mkdir(Global.Path.log, { recursive: true }),
]) ])
const CACHE_VERSION = "3" const CACHE_VERSION = "4"
const version = await Bun.file(path.join(Global.Path.cache, "version")) const version = await Bun.file(path.join(Global.Path.cache, "version"))
.text() .text()

View File

@@ -84,6 +84,7 @@ export namespace LSP {
} }
return { return {
broken: new Set<string>(), broken: new Set<string>(),
servers,
clients, clients,
} }
}, },

View File

@@ -61,13 +61,19 @@ export namespace ModelsDev {
export async function refresh() { export async function refresh() {
const file = Bun.file(filepath) const file = Bun.file(filepath)
log.info("refreshing") log.info("refreshing", {
file,
})
const result = await fetch("https://models.dev/api.json", { const result = await fetch("https://models.dev/api.json", {
headers: { headers: {
"User-Agent": Installation.USER_AGENT, "User-Agent": Installation.USER_AGENT,
}, },
}).catch(() => {}) }).catch((e) => {
if (result && result.ok) await Bun.write(file, result) log.error("Failed to fetch models.dev", {
error: e,
})
})
if (result && result.ok) await Bun.write(file, await result.text())
} }
} }