Skip to content

feat: integrate model/agent controls into conversation-bound input panel#10

Merged
web4zn merged 1 commit into
mainfrom
opencode
May 10, 2026
Merged

feat: integrate model/agent controls into conversation-bound input panel#10
web4zn merged 1 commit into
mainfrom
opencode

Conversation

@web4zn
Copy link
Copy Markdown
Owner

@web4zn web4zn commented May 10, 2026

Summary

  • Conversation-bound controls: Model selector and agent mode toggle moved from global navbar into a new per-conversation input panel (shadcn InputGroup style)
  • Per-conversation agent mode: agentMode migrated from global chatStore to Conversation type — each conversation independently remembers its mode
  • New ChatInputPanel component: Integrated input panel with control row (ModelSelector + mode toggle) and input row (textarea + send/stop button), AgentActivityPanel integrated at bottom
  • Worker model sync fix: ENHANCE_MESSAGE now passes providerConfig + model, Worker recreates languageModel on each enhance request — fixes cross-conversation model stale issue
  • Cleanup: Old MessageInput.tsx deleted, ChatPage navbar simplified (removed ~50 lines of inline controls)

Verification

  • npx tsc --noEmit ✓
  • npm test — 73 passed ✓
  • npm run build ✓

- Conversation type adds agentMode field (per-conversation)
- ChatStore removes global agentMode/setAgentMode
- New ChatInputPanel component with shadcn-style layout (control row + input row)
- ModelSelector and agent mode toggle moved from navbar to input panel
- ENHANCE_MESSAGE passes providerConfig+model to fix cross-conversation model stale issue
- Agent activity indicator integrated into input panel
- Old MessageInput.tsx removed
- Specs synced: agent-orchestration (per-conversation mode) + chat-input-panel (new capability)
@web4zn web4zn merged commit 64e5af1 into main May 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant