2026-04-01 - 17:49Z
Commit: 54b695e · Previous: fc23f2d · Compare: GitHub Version: 1.115.0-insider · Branch: main · Upstream: microsoft/vscode
✨ NEW
- #307007 Add more agenthost integration tests
Adds more WebSocket integration tests for Agent Host covering session title changes, reasoning events, and message handling, increasing protocol robustness.
- #306548 Add performance profiler command
Adds new commands and native host support to record and save performance profiling traces for the workbench and BrowserView.
- #307087 new theme notification
Adds a one-time new default theme notification to inform users of color theme changes and removes legacy auto-detection logic.
- #307079 Adds playwright component fixture tests
Adds Playwright-based component fixture tests to validate UI behavior using Component Explorer fixtures, starting with Image Carousel.
- #307076 Trigger automatic screenshot artifact ingestion
Automates triggering screenshot artifact ingestion after test runs by posting artifact metadata to an external service.
- #304882 Add SSH remote agent host bootstrap
Adds SSH remote agent host bootstrap to automate remote agent setup via SSH including install, start, port forwarding, and reconnect.
- #306950 Added setting and command to control post-update info tooltip
Adds a new setting and command to control the display of the post-update info tooltip, improving update UX customization.
- #306874 Merge extension-provided policy
Adds a build-time script to merge extension-provided configuration policies into exported policy data for enterprise policy support.
- #305372 agenthost: customization syncing data flow
Implements data flow for syncing customization settings with the agent host, enabling consistent state across client and agent.
- #306954 Add readable element labels in browser tool calls
Adds readable labels for elements in browser tool calls, making UI elements easier to identify and interact with during automation.
- #306953 Sessions: Add Copilot status indicator to sidebar footer
Adds a Copilot status indicator to the Sessions sidebar footer for consistent status visibility within the sessions UI.
- #306909 Link to browser editors in tool calls
Enables browser editors referenced in chat tool calls to be linked, improving navigation from chat responses to browser tabs.
- #306875 Add `send_to_terminal` tool for sending commands to background terminals
Adds the 'send_to_terminal' tool allowing agents to send commands to background terminals, enabling interaction with ongoing terminal sessions.
- #306596 Add chat model reference inspection
Adds a developer command to inspect live chat models and their references, helping debug model lifecycle and retention issues.
🐛 FIXES
- #307185 Add windowsUseConptyDll setting to runInTerminal tests
Updates Windows terminal tests to force a consistent terminal backend setting, reducing flaky test runs by stabilizing terminal behavior in CI.
- #307181 Remove redundant LLM error assessment from terminal output monitor
Removes redundant error checks in terminal output monitoring to deliver raw output and better match terminal idle detection, improving performance and accuracy.
- #306564 fix: preserve 'Wait for Breakpoint' selection when reopening breakpoint widget
Fixes breakpoint widget re-opening to preserve the 'Wait for Breakpoint' trigger selection so existing breakpoint triggers aren't mistakenly cleared.
- #307145 sessions - skip `modifiedFilesConfirmation` as inline approval for now, its not working
Skips showing 'modifiedFilesConfirmation' tool invocations as inline approvals in agent sessions, preventing incorrect approval prompts in the sessions list.
- #307186 smoke test failure: show results from all folders (fix #306890)
Avoids flaky smoke tests on Windows web by skipping multiroot test setup, improving CI reliability in that environment.
- #307137 Revert skipping of tests
Re-enables the extensions.json completions tests which were previously skipped, restoring coverage for that feature's integration tests.
- #307175 sessions - skip recent list in dock
Prevents the Sessions app from adding recent files to OS-level recent document lists, keeping Windows Jump List and macOS Dock clean when using Sessions.
- #307172 sessions - hide some menu and commands that do not apply
Hides irrelevant commands and menu items when running in Sessions windows to reduce clutter and avoid confusion in that special UI context.
- #306765 Better URL shortening in browser tab labels
Improves URL shortening in browser tabs to handle long queries/fragments and preserve valid URL path formatting, enhancing tab readability.
- #307165 Fixes component explorer url
Fixes Component Explorer launch configurations to open the correct URL path, ensuring the explorer loads properly in supported browsers.
- #307144 fix: tls.getCACertificates result for self-signed and server auth
Fixes tls.getCACertificates handling for self-signed and server auth certs by updating Electron build details to address related issues.
- #307148 Show TOS when Copilot is already installed (fix #291893)
Shows the Terms of Service to Copilot users even when the extension is already installed, ensuring setup completion is visible.
- #307134 prevent distro.builtInExtensions
Prevents distro quality mixin from overwriting built-in extensions via array in product.json, enforcing expected include/exclude shape for extensions.
- #306825 fix chat tip issue
Fixes chat tip display logic to prevent tips from reappearing after user interaction, improving the welcome experience.
- #306832 Fix memory leak in chat terminal tool from accumulated disposables
Fixes memory leak in terminal tool by using one-time event listeners so disposed terminals don't hold lingering listeners.
- #306826 fix chat tip border in sessions window
Fixes chat tip border styling in Sessions windows to remove unwanted rounded corners, matching intended UI design.
- #307102 Disable more flaky tests
Disables flaky run_in_terminal tests in the chat tool test suite to increase CI stability by skipping known unstable assertions.
- #307091 Session - perf improvements when switching sessions
Improves performance when switching sessions by simplifying tree data derivation and label rendering in the Changes view.
- #307058 fix telemetry description for SkillLoadedIntoContextClassification
Fixes telemetry field descriptions for SkillLoadedIntoContextClassification event to accurately match hashing implementation.
- #307053 Sessions - update order for setting the default value for the branch picker
Updates branch picker default value order to prefer 'main' or 'master' branches before current HEAD for more intuitive selection.
- #307047 unblock build
Unblocks build by disabling a flaky test suite for completions in extensions.json in the configuration-editing extension.
- #307029 build: exclude ssh2 native component to address universal failure
Excludes the ssh2 native crypto component from the final package to fix build failures, keeping a pure-JS SSH implementation.
- #307036 Sessions - hide file header when there is no git repository
Hides file header in Sessions Changes view when there's no associated Git repository, simplifying UI for non-repo contexts.
- #307032 sessions - enforce sessions window in embedded ap
Forces the embedded Sessions app to always open the agent sessions workspace and disables session restore to ensure consistent startup.
- #307022 Sessions: Opening a session in a new window clears it from the Sessions app (fix #306991)
Fixes a bug where opening a session in a new window cleared it from the Sessions app by switching Sessions to the new session view first.
- #306989 agentHost: Disable folders from disconnected remotes
Disables folders from disconnected remote environments in the agent host to prevent invalid or inactive sessions.
- #306992 agentHost: auto-approve terminal commands using treesitter
Adds Treesitter-based logic to auto-approve certain terminal commands, reducing manual approvals during terminal interactions.
- #306586 Fix null crash in task schema fixReferences
Fixes a null check crash in task schema's fixReferences method by preventing null values from being dereferenced.
- #306978 Harness fixes
Internal maintenance/refactoring; no user-visible change expected.
- #306977 chat: use display commands in response stringification
Updates chat response copying to use user-facing terminal commands for clearer copied output instead of internal sandbox wrappers.
- #306973 Encourage browser tab reuse in open tools
Encourages reusing existing browser tabs when opening tools, reducing tab clutter and improving user navigation.
- #306734 promptService: cache IHookDiscoveryInfo
Caches hook discovery info in prompt service to optimize performance during repeated hook lookups.
- #306402 Render URI-based icons in editor quick access
Renders URI-based icons correctly in editor quick access, improving visual cues for editors opened via URIs.
- #306932 remove shell integration none tests
Removes flaky shell integration 'none' tests since most users enable shell integration and tests frequently fail without it.
- #306941 Sessions - do not show changes when until there is no git repository
Updates Sessions to hide file changes UI when no Git repository is detected in the active session, avoiding empty or confusing views.
- #306933 track disposable
Fixes an issue by properly tracking and disposing disposable resources to avoid leaks or stale references.
- #306922 Sessions: Update naming (fix #306461)
Updates Sessions naming conventions to improve clarity and fix inconsistencies, addressing issue #306461.
- #306914 Reduce request to entitlement endpoints
Reduces requests to entitlement endpoints by caching failures and conditional requests, improving performance and reducing unnecessary traffic.
- #306902 Sessions: Adjust header height and refine button styles
Adjusts header height and refines button styles in the Sessions Changes view for better layout and user experience.
- #306858 Sessions: Update agent feedback widget styles for improved clarity and consistency
Updates agent feedback widget styles for improved clarity, visibility, and overall design consistency.
- #306903 show 'ran subagent' when finishing subagents without descriptions
Displays 'ran subagent' messages when finishing subagent tasks without descriptions, improving user feedback.
- #306873 Sessions: Refactor AI Customization Management styles
Refactors AI Customization Management styles by adjusting padding and line-height to improve layout and appearance.
- #306901 make sure to cancel current request on restore checkpoints
Ensures ongoing requests are canceled when restoring checkpoints, preventing stuck or orphaned operations.
- #306829 Fix "Select {0}" in workspace picker
Fixes incorrect 'Select {0}' labeling in the workspace picker for clearer selection UI.
- #306831 agentHost: Fix CopilotAgent finding ripgrep
Fixes CopilotAgent's ability to find the ripgrep executable, ensuring proper search functionality in remote scenarios.
- #306880 Sessions: remove weird description
Removes an unclear or incorrect description in the Sessions UI to improve user understanding.
🔨 REFACTORS
- #307198 sessions: move session grouping from management service to providers
Sessions providers now group session data themselves, simplifying session management and improving multi-chat session support and UI updates.
- #307182 Refactors fixtures
Refactors and reorganizes component test fixtures, adding shared helpers and improved service mocks for cleaner test setup and maintenance.
- #307008 agent host cleanups
Cleans up agent host session tests with fake timers, fixes command categories, and removes an empty architecture document for better code quality.
- #307005 Remove `getChatSessionFromInternalUri` and try using chat session uri directly
Removes a URI-to-session indirection to use the chat session resource directly, simplifying session context and option management across components.
- #307141 Terminal tools: replace `isBackground` with `mode=sync|async`, remove `await_terminal` tool
Replaces terminal tool's isBackground flag with mode=sync|async and removes await_terminal tool, improving clarity and handling of terminal session lifecycles.
- #307028 Sessions - 💄 more cleanup
Cleans up Sessions Changes UI by moving git-diff observables from view to view model, centralizing diff state management.
- #307044 sessions - cleanup window opening handling
Cleans up agent/sessions window opening to use consistent config shapes and ensure CLI args are passed correctly to new windows.
- #306484 Updates component explorer & adopts rspack for fixture serving
Updates component explorer and migrates to rspack for serving component fixtures, improving build and test workflows.
- #306951 Sessions - move more code into the view model
Moves additional logic from Sessions view into the view model to better separate concerns and simplify the view layer.
- #306940 share auto approval logic bw `runInTerminal` and `sendToTerminal`
Shares auto-approval logic between 'runInTerminal' and 'sendToTerminal' tools for consistent command approval behavior.
- #306937 sessions - more renames
Renames and refactors several Sessions components and variables for clarity and consistency in naming conventions.
⬆️ UPGRADES
- #306982 Bump @xmldom/xmldom from 0.8.10 to 0.8.12 in /build
Updates the @xmldom/xmldom dependency to fix security issues and preserve trailing whitespace in processing instruction data.
- #307009 Bump @xmldom/xmldom from 0.8.11 to 0.8.12
Upgrades @xmldom/xmldom to 0.8.12 with security fixes and improved handling of CDATA sections.
- #307131 up distro
Internal maintenance/refactoring; no user-visible change expected.
- #306927 Update distro commit (main)
Automates updating the distro commit used in package.json to the latest main branch commit for synchronization with vscode-distro.
- #306789 Bump distro
Internal maintenance/refactoring; no user-visible change expected.
Token usage - 23898 Out: 2498
Installers
Official download links for the current VS Code Insiders build (may be newer than the build described above):