feat: Windows compatibility, model selector, stop button & smart model tips#3
Open
nekdima wants to merge 8 commits intopatniko:mainfrom
Open
feat: Windows compatibility, model selector, stop button & smart model tips#3nekdima wants to merge 8 commits intopatniko:mainfrom
nekdima wants to merge 8 commits intopatniko:mainfrom
Conversation
- Replace hardcoded macOS copilot CLI path with cross-platform detection - Add host-wrapper.bat for Windows native messaging (Chrome requires .bat/.exe, not .mjs) - Fix register-host.bat to reference host-wrapper.bat instead of host.mjs directly - Use published @github/copilot-sdk (^0.1.32) instead of local file: reference - Add postinstall script to patch vscode-jsonrpc ESM exports map - Add approveAll permission handler for tool execution Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Change shebang to #!/usr/bin/env node for Linux/macOS portability - Use 'where copilot.exe' instead of 'where copilot' to avoid picking up .bat wrappers on Windows Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add a dropdown in the panel header that lets users choose which AI model powers the Copilot browser assistant. - Fetch available models from SDK via client.listModels() on init - New ModelSelector component with dropdown UI - Model selection persisted in localStorage across sessions - SET_MODEL message type for mid-session model switching - Model passed with each SEND_CHAT_MESSAGE for per-request selection - Full message flow: Panel -> ServiceWorker -> NativeHost -> SDK Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Cache model list in service worker so late-connecting panels get it - Send AVAILABLE_MODELS after session init (not before) to prevent race - Serialize message handling in host with promise queue - Make setModel best-effort: failure doesn't block the user's message - Remove redundant SET_MODEL path; model sent per-message only Reviewed by: Claude Opus 4.6, GPT-5.2, Gemini 3 Pro Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add stop button (red square) that replaces send button during streaming - Stop finalizes streaming message and sends CANCEL_REQUEST through the stack - CANCEL_REQUEST handled in service-worker → native host → session.cancel() - New ModelRecommendation component analyzes prompt text (debounced) - Classifies prompts as code/complex/simple and recommends optimal model - Tip banner appears above chat input with Switch/Dismiss buttons - Accepting switches model; dismissing hides for current input session - Bump version to 0.3.0 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Tool call cards now show friendly labels (e.g. 'Reading page content' instead of 'get_page_html') with contextual icons - Animated progress bar on active tool calls instead of static emojis - Stop button now persists throughout the entire workflow: uses deferred loading-off (500ms) so tool call rounds keep it alive TOOL_CALL_START and CHAT_RESPONSE_CHUNK cancel the off-timer - Added CSS keyframes for progress pulse and slide-up animations Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Adds full Windows support, model selector UI, stop button for cancelling responses, human-readable tool progress cards, and smart model recommendation tips. Supersedes #2.
Changes
Windows Compatibility
SDK dependency
Native messaging host (\src/host/host.mjs)
Windows launcher
Model Selector Feature
New component (\src/panel/components/ModelSelector.tsx)
Message flow
Stop Button (NEW)
Smart Model Recommendation Tips (NEW)
Human-Readable Tool Progress Cards (NEW)
Version bump
Files Changed (18 files)
Testing