summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAiden Cline <[email protected]>2025-12-30 00:14:10 -0600
committerAiden Cline <[email protected]>2025-12-30 00:14:10 -0600
commitc82ab649e2307237b480a94dbb7df6d77a8bf71a (patch)
tree366d9a8155715e02ec2e632028fddcb1a6e449ba
parentabc7eed92bc8f90bf5cc38aab0e2bb1a43d9e233 (diff)
downloadopencode-c82ab649e2307237b480a94dbb7df6d77a8bf71a.tar.gz
opencode-c82ab649e2307237b480a94dbb7df6d77a8bf71a.zip
ignore: fix bug from variants pr, prevent createEffect issue
-rw-r--r--packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx21
1 files changed, 9 insertions, 12 deletions
diff --git a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx
index 6eec5d1d6..70eba3ef8 100644
--- a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx
+++ b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx
@@ -191,23 +191,20 @@ export function Prompt(props: PromptProps) {
interrupt: 0,
})
+ // Initialize agent/model/variant from last user message when session changes
+ let syncedSessionID: string | undefined
createEffect(() => {
+ const sessionID = props.sessionID
const msg = lastUserMessage()
- if (!msg) return
- // Set agent from last message
- if (msg.agent) {
- local.agent.set(msg.agent)
- }
+ if (sessionID !== syncedSessionID) {
+ if (!sessionID || !msg) return
- // Set model from last message
- if (msg.model) {
- local.model.set(msg.model)
- }
+ syncedSessionID = sessionID
- // Set variant from last message
- if (msg.variant) {
- local.model.variant.set(msg.variant)
+ if (msg.agent) local.agent.set(msg.agent)
+ if (msg.model) local.model.set(msg.model)
+ if (msg.variant) local.model.variant.set(msg.variant)
}
})