Skip to content

Commit c49f593

Browse files
committed
tui: fix model selection for models with nested paths
Users can now select models with multiple slashes like 'openrouter/google/gemini-2.5-pro' in the TUI. Previously the TUI would only parse the first two parts of the model path, showing 'Invalid model openrouter/google' for nested models.
1 parent 63862b1 commit c49f593

File tree

1 file changed

+4
-4
lines changed
  • packages/opencode/src/cli/cmd/tui/context

1 file changed

+4
-4
lines changed

packages/opencode/src/cli/cmd/tui/context/local.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { iife } from "@/util/iife"
99
import { createSimpleContext } from "./helper"
1010
import { useToast } from "../ui/toast"
1111
import { createEventBus } from "@solid-primitives/event-bus"
12+
import { Provider } from "@/provider/provider"
1213

1314
export const { use: useLocal, provider: LocalProvider } = createSimpleContext({
1415
name: "Local",
@@ -38,7 +39,7 @@ export const { use: useLocal, provider: LocalProvider } = createSimpleContext({
3839
agent.set(props.initialAgent)
3940
}
4041
if (props.initialModel) {
41-
const [providerID, modelID] = props.initialModel.split("/")
42+
const { providerID, modelID } = Provider.parseModel(props.initialModel)
4243
if (!providerID || !modelID)
4344
return toast.show({
4445
variant: "warning",
@@ -150,7 +151,7 @@ export const { use: useLocal, provider: LocalProvider } = createSimpleContext({
150151

151152
const fallbackModel = createMemo(() => {
152153
if (sync.data.config.model) {
153-
const [providerID, modelID] = sync.data.config.model.split("/")
154+
const { providerID, modelID } = Provider.parseModel(sync.data.config.model)
154155
if (isModelValid({ providerID, modelID })) {
155156
return {
156157
providerID,
@@ -243,8 +244,7 @@ export const { use: useLocal, provider: LocalProvider } = createSimpleContext({
243244
const setInitialPrompt = createEventBus<string>()
244245

245246
onMount(() => {
246-
if (props.initialPrompt)
247-
setInitialPrompt.emit(props.initialPrompt)
247+
if (props.initialPrompt) setInitialPrompt.emit(props.initialPrompt)
248248
})
249249

250250
const result = {

0 commit comments

Comments
 (0)