diff options
| author | Frank <[email protected]> | 2025-09-09 03:16:44 -0400 |
|---|---|---|
| committer | Frank <[email protected]> | 2025-09-09 03:16:44 -0400 |
| commit | 0f263bfefeabdcd95c42269c3ca5cbbbb7854586 (patch) | |
| tree | 8c16ddcd9a81f8c37972a5da3587f69fa2f04afc /packages | |
| parent | 34a33dfc164f91d27517f75e71fbc3742eff25e8 (diff) | |
| download | opencode-0f263bfefeabdcd95c42269c3ca5cbbbb7854586.tar.gz opencode-0f263bfefeabdcd95c42269c3ca5cbbbb7854586.zip | |
Hide experimental models
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/opencode/src/flag/flag.ts | 1 | ||||
| -rw-r--r-- | packages/opencode/src/provider/models.ts | 1 | ||||
| -rw-r--r-- | packages/opencode/src/provider/provider.ts | 15 |
3 files changed, 12 insertions, 5 deletions
diff --git a/packages/opencode/src/flag/flag.ts b/packages/opencode/src/flag/flag.ts index a9d366e8a..4af827d8b 100644 --- a/packages/opencode/src/flag/flag.ts +++ b/packages/opencode/src/flag/flag.ts @@ -7,6 +7,7 @@ export namespace Flag { export const OPENCODE_PERMISSION = process.env["OPENCODE_PERMISSION"] export const OPENCODE_DISABLE_DEFAULT_PLUGINS = truthy("OPENCODE_DISABLE_DEFAULT_PLUGINS") export const OPENCODE_DISABLE_LSP_DOWNLOAD = truthy("OPENCODE_DISABLE_LSP_DOWNLOAD") + export const OPENCODE_ENABLE_EXPERIMENTAL_MODELS = truthy("OPENCODE_ENABLE_EXPERIMENTAL_MODELS") function truthy(key: string) { const value = process.env[key]?.toLowerCase() diff --git a/packages/opencode/src/provider/models.ts b/packages/opencode/src/provider/models.ts index 56350ff25..8cd03088f 100644 --- a/packages/opencode/src/provider/models.ts +++ b/packages/opencode/src/provider/models.ts @@ -28,6 +28,7 @@ export namespace ModelsDev { context: z.number(), output: z.number(), }), + experimental: z.boolean().optional(), options: z.record(z.any()), }) .openapi({ diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts index 37d7aa7c0..9e0ed1d88 100644 --- a/packages/opencode/src/provider/provider.ts +++ b/packages/opencode/src/provider/provider.ts @@ -11,6 +11,7 @@ import { NamedError } from "../util/error" import { Auth } from "../auth" import { Instance } from "../project/instance" import { Global } from "../global" +import { Flag } from "../flag/flag" export namespace Provider { const log = Log.create({ service: "provider" }) @@ -286,14 +287,18 @@ export namespace Provider { for (const [providerID, provider] of configProviders) { mergeProvider(providerID, provider.options ?? {}, "config") } + console.log("!@#!@#", Flag.OPENCODE_ENABLE_EXPERIMENTAL_MODELS) for (const [providerID, provider] of Object.entries(providers)) { - // Filter out blacklisted models const filteredModels = Object.fromEntries( - Object.entries(provider.info.models).filter( - ([modelID]) => - modelID !== "gpt-5-chat-latest" && !(providerID === "openrouter" && modelID === "openai/gpt-5-chat"), - ), + Object.entries(provider.info.models) + // Filter out blacklisted models + .filter( + ([modelID]) => + modelID !== "gpt-5-chat-latest" && !(providerID === "openrouter" && modelID === "openai/gpt-5-chat"), + ) + // Filter out experimental models + .filter(([, model]) => !model.experimental || Flag.OPENCODE_ENABLE_EXPERIMENTAL_MODELS), ) provider.info.models = filteredModels |
