Skip to content

feat: convert /model dialog from text inputs to dropdown selects#77

Merged
lewis617 merged 1 commit into
mainfrom
feat/model-dropdown-select
Jun 25, 2026
Merged

feat: convert /model dialog from text inputs to dropdown selects#77
lewis617 merged 1 commit into
mainfrom
feat/model-dropdown-select

Conversation

@lewis617

Copy link
Copy Markdown
Contributor

Summary

Convert the /model dialog from manual text input fields to dropdown selects populated with available models from the SDK, matching wave-agent's behavior.

Changes

Backend (src/session/messageHandler.ts)

  • Add getConfiguredModels message handler
  • Get models list from agent.getConfiguredModels() (SDK's ConfigurationService with remote models)
  • Get current model values from agent.getModelConfig() for correct dropdown selection

Frontend

  • ModelDialog.tsx: Replace <input type="text"> with <select> dropdowns
  • ChatApp.tsx: Handle configuredModelsResponse, add SET_CONFIGURED_MODELS and SET_CURRENT_MODELS actions
  • types/index.ts: Add configuredModels, currentModel, currentFastModel to ChatState

Tests

  • New: e2e/webview/modelDropdown.test.ts (4 tests for dropdown behavior)
  • Updated: model-status-login-commands.test.ts and model-dialog.demo.ts for new select elements

Test Results

  • All 228 Playwright tests pass
  • All 9 Vitest tests pass

- Replace text input fields with <select> dropdowns in ModelDialog
- Get configured models list from agent.getConfiguredModels() (like wave-agent)
- Get current model values from agent.getModelConfig() for correct selection
- Add getConfiguredModels message handler in messageHandler.ts
- Add configuredModels and currentModel/currentFastModel to ChatState
- Update existing tests and add new modelDropdown.test.ts (4 tests)
- All 228 Playwright tests pass
@lewis617 lewis617 force-pushed the feat/model-dropdown-select branch from 5c4be7d to 8e8e483 Compare June 25, 2026 09:35
@lewis617 lewis617 merged commit b132a9c into main Jun 25, 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