pull/5298/head
Aiden Cline 2025-12-09 16:29:33 -06:00
parent 7ac3f9182b
commit 8f3f87943a
5 changed files with 338 additions and 1181 deletions

View File

@ -25,7 +25,6 @@ import { Provider } from "../provider/provider"
import { Installation } from "@/installation"
import { MessageV2 } from "@/session/message-v2"
import { Config } from "@/config/config"
import { MCP } from "@/mcp"
import { Todo } from "@/session/todo"
import { z } from "zod"
import { LoadAPIKeyError } from "ai"

View File

@ -211,7 +211,15 @@ export namespace LSPServer {
export const Biome: Info = {
id: "biome",
root: NearestRoot(["biome.json", "biome.jsonc", "package-lock.json", "bun.lockb", "bun.lock", "pnpm-lock.yaml", "yarn.lock"]),
root: NearestRoot([
"biome.json",
"biome.jsonc",
"package-lock.json",
"bun.lockb",
"bun.lock",
"pnpm-lock.yaml",
"yarn.lock",
]),
extensions: [
".ts",
".tsx",

View File

@ -930,7 +930,7 @@ export namespace Provider {
}
const priority = ["gpt-5", "claude-sonnet-4", "big-pickle", "gemini-3-pro"]
export function sort<T extends { id: string }>(models: T[]) {
export function sort(models: Model[]) {
return sortBy(
models,
[(model) => priority.findIndex((filter) => model.id.includes(filter)), "desc"],

File diff suppressed because it is too large Load Diff

View File

@ -1044,6 +1044,11 @@ export type ProviderConfig = {
reasoning?: boolean
temperature?: boolean
tool_call?: boolean
interleaved?:
| true
| {
field: "reasoning_content" | "reasoning_details"
}
cost?: {
input: number
output: number
@ -1479,6 +1484,11 @@ export type Model = {
video: boolean
pdf: boolean
}
interleaved:
| boolean
| {
field: "reasoning_content" | "reasoning_details"
}
}
cost: {
input: number
@ -3026,6 +3036,11 @@ export type ProviderListResponses = {
reasoning: boolean
temperature: boolean
tool_call: boolean
interleaved?:
| true
| {
field: "reasoning_content" | "reasoning_details"
}
cost?: {
input: number
output: number