Fixed TUI agent switching to respect configured models #4514
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Perfect! I've successfully fixed the TUI agent switching issue. Here's a summary of what I implemented:
Fix Summary
Problem: When switching between agents in the TUI, the model selection didn't respect each agent's configured default model. The model would either stick to the previous agent's model or require manual changes.
Root Cause: The automatic model update effect was outside the model function where
modelStorewasn't accessible, and it always tried to update to the agent's configured model, overriding user manual selections.Solution:
modelStoreis accessibleKey Changes in
packages/opencode/src/cli/cmd/tui/context/local.tsx:156-178:previousAgentNametracking to detect actual agent switchespreviousAgentName !== agentNamemodelStoreis accessibleThis fix ensures that:
The fix addresses the exact issue described in #4344 where switching between Builder mode and Plan mode didn't respect each agent's configured model.
Closes #4344
opencode session | github run