Release date: March 18, 2026
Downloads: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap
Welcome to the 1.112 release of Visual Studio Code. This release includes various improvements across the agent and developer experience.
-
Integrated browser debugging: debug web apps end-to-end without leaving VS Code.
-
Copilot CLI permissions: give Copilot CLI sessions more autonomy so they complete tasks with fewer interruptions.
-
MCP server sandboxing: run local MCP servers in a sandbox to limit what they can access on your machine.
-
Agent image support: work with screenshots, diagrams, and binary files directly in agent conversations.
-
Monorepo customizations: share agent instructions and skills across all packages in a monorepo.
Happy Coding!
VS Code is rolling out gradually to all users. Use Check for Updates in VS Code to get the latest version immediately.
To try new features as soon as possible, download the nightly Insiders build, which includes the latest updates as soon as they are available.
Agent experience
Give agents more autonomy, richer context, and easier diagnostics so they can handle complex tasks with less intervention.
Message steering and queueing in Copilot CLI
For local agent sessions, you can send messages while a previous request is running, to steer the agent towards a different response or queue up follow-up messages. This release adds support for steering and queueing messages to Copilot CLI sessions.
Learn more about message steering and queueing in the documentation.
Preview changes before delegating to Copilot CLI
When you have uncommitted changes in your workspace and try to delegate a task to Copilot CLI, you can choose to copy, move, or ignore those changes in the worktree that Copilot CLI creates for the session. However, you had to check the Source Control view to see what those changes were before making a decision.
In this release, the Chat view now shows the list of pending changes, making it easier to see what can be migrated over to the worktree created when delegating to Copilot CLI.
Clickable file links in Copilot CLI terminal output
Setting: github.copilot.chat.cli.terminalLinks.enabled
The terminal's file link detection now recognizes paths generated by Copilot CLI that reference files under the ~/.copilot/session-state/
directory. Previously, these paths were not resolved correctly because the built-in link detector did not know about the Copilot CLI session-state directory structure.
The link detector now handles both absolute and relative paths: absolute and tilde-prefixed paths open directly, while relative paths are resolved against the active session-state directory with a fallback to workspace folders.
This feature is enabled by default and can be toggled with the github.copilot.chat.cli.terminalLinks.enabled setting.
Permissions levels in Copilot CLI
Setting: chat.autopilot.enabled
You can configure permissions for local agent sessions in chat, to give agents more autonomy in their actions and reduce the number of approval requests. This release adds this capability to Copilot CLI sessions as well.
For Copilot CLI sessions, you can choose between the following permission levels:
Default Permissions
: uses your configured approval settings. Tools that require approval show a confirmation dialog before they run.Bypass Approvals
: auto-approves all tool calls without showing confirmation dialogs and automatically retries on errors.Autopilot
: (enabled by default in Insiders) auto-approves all tool calls, auto-responds to questions, and continues working autonomously until the task is complete. Enable Autopilot with chat.autopilot.enabled setting.
Learn more about Autopilot and Agent Permissions in our documentation.
Troubleshoot agent behavior with /troubleshoot (Preview)
Settings: github.copilot.chat.agentDebugLog.enabled , github.copilot.chat.agentDebugLog.fileLogging.enabled
There are several agent customization options available in VS Code. If your chat agents are not behaving as expected, it can be difficult to understand why. For example, when instructions, skills, or agents are not applied correctly or when a response is unexpectedly slow.
To help with this, we are introducing a new /troubleshoot
skill that analyzes the agent debug logs directly in the conversation and provides insights into the agent's behavior. Type /troubleshoot
in the chat input, followed by a question or description of the issue you're experiencing.
The skill reads the JSONL debug log files that are exported from the chat session and can help you understand why tools or subagents were used or skipped, why instructions or skills did not load, what contributed to slow response times, and whether network connectivity problems occurred.
To use the /troubleshoot
skill in chat, enable the following settings and reload VS Code:
- github.copilot.chat.agentDebugLog.enabled : enables agent debug logging
- github.copilot.chat.agentDebugLog.fileLogging.enabled : writes debug logs to JSONL files on disk
Learn more about troubleshooting agent behavior in VS Code.
Export and import agent debug logs (Preview)
Setting: github.copilot.chat.agentDebugLog.enabled
The Agent Debug Logs panel in VS Code gives you a detailed view into the agent's behavior for a session, including tool usage, subagent decisions, and more. Previously, only the active session's debug information was available in the panel.
You can now export and import debug logs for agent sessions, allowing you to share them with others or analyze them offline. This is especially useful for troubleshooting and sharing insights about agent behavior.
For more information on Agent Debug Log panel, see Agent Debug Logs documentation.
Note: Importing files larger than 50 MB shows a warning dialog with the actual file size. Consider trimming the file or exporting a shorter session if you encounter this warning.
Image and binary file support for agents
Setting: chat.imageCarousel.enabled , imageCarousel.explorerContextMenu.enabled
Agents can now read image files from disk and binary files natively, which allows you to use agents for a wider variety of tasks, such as analyzing screenshots, reading data from binary files, and more. Binary files are presented to the agent in a hexdump format.
When an agent or tool generates an image as output, such as a screenshot from the integrated browser, those images are now selectable in chat responses and can be opened in a dedicated image carousel view. Enable this functionality with the chat.imageCarousel.enabled setting (Experimental).
When imageCarousel.explorerContextMenu.enabled (Experimental) is enabled, you can right-click image files or folders in the Explorer view and select Open Images in Carousel to browse images in the carousel view.
Note: The image carousel is currently experimental.
Automatic symbol references
When you copy a symbol, such as a class name, function, or method name, and paste it into chat, VS Code now automatically pastes it as a symbol reference #sym:Name
. This gives the agent automatic context about the symbol, which enables it to complete tasks more quickly and efficiently.
If you want to paste a symbol without it being converted to a symbol reference, you can use the Paste as Text command, via Ctrl+Shift+V (Cmd+Shift+V on macOS).
Agent extensibility
Scale your agent setup across projects with shared customizations, and keep it secure with tighter control over MCP servers and plugins.
Customizations discovery in parent repositories
Setting: chat.useCustomizationsInParentRepositories
In monorepo setups, you often open a package or subfolder in VS Code instead of the repository root. Previously, chat customizations were only discovered from the current workspace folder. With the new chat.useCustomizationsInParentRepositories setting, VS Code can also discover customization files from parent folders up to the repository root.
This improved discovery makes it easier to share repository-wide guidance and tools across packages in a monorepo without needing to open the full repository as your workspace.
When discovery is enabled, it applies to all chat customization types, including always-on instructions such as copilot-instructions.md
, AGENTS.md
, and CLAUDE.md
, along with instruction files, prompt files, custom agents, skills, and hooks.
Parent-repository discovery only applies when:
- Your open workspace folder is not itself a Git repository
- A parent folder contains the
.git
folder - The parent repository is trusted with workspace trust
Learn more about agent customizations in the documentation.
Sandbox locally running MCP servers
Running MCP servers locally can pose security risks as they have the same permissions as the user running VS Code, which enables them to access files or network resources they shouldn't need for their functionality.
To reduce this risk, you can now run locally configured stdio MCP servers in a sandboxed environment on macOS and Linux. Sandboxed servers have restricted file system and network access.
To enable sandboxing, set "sandboxEnabled": true
for a server in your mcp.json
file. When a sandboxed server needs access to an additional folder or domain, VS Code prompts you to grant that permission and updates the sandbox configuration for that mcp.json
file. All servers defined in the same mcp.json
file share that sandbox configuration.
Note: Sandboxing for locally running MCP servers is not currently available on Windows. Remote scenarios, such as WSL and SSH, continue to work.
Improved UI for MCP elicitation
When an MCP server requires additional information to complete a request, it can trigger an elicitation form to collect that information from the user. These elicitation forms now use the same UI as the Ask Questions tool, allowing for a more consistent and user-friendly experience when providing additional information to MCP servers.
Enable or disable plugins and MCP servers
Previously, plugins and MCP servers could only be disabled or enabled by installing or uninstalling them. This release introduces the ability to enable or disable plugins and MCP servers without uninstalling them.
Both plugins and MCP servers can now be enabled and disabled both globally and per-workspace. You can do this by opening the MCP or plugin page, or by right-clicking on their entries, either in the Extensions view or the Chat: Open Customizations view.
Automatic plugin updates
Setting: extensions.autoUpdate
Plugins can now update automatically based on the
extensions.autoUpdate
setting. Plugins from npm
and pypi
require approval to update, as updating these plugins might cause new code to be run on your machine.
Developer experience
Build and debug web apps without leaving VS Code, with a more capable integrated browser and streamlined editor workflows.
Integrated browser
Debug web apps with the integrated browser
The integrated browser lets you open web apps directly within VS Code, and now you can also start debugging sessions with the integrated browser. This allows you to interact with the web app, set breakpoints, step through code, and inspect variables without ever leaving VS Code.
We added a new editor-browser
debug type that enables debugging of integrated browser tabs with both Launch and Attach configurations.
Most options from existing msedge
and chrome
debug configurations are supported, which makes migration often as simple as changing the type of an existing configuration in launch.json
.
Learn more about the integrated browser and how to set up debugging in the documentation: Integrated browser.
Integrated browser UX improvements
Setting: workbench.browser.pageZoom
-
Context menus
Right clicking in a browser page now exposes common options such as copy/paste, open in new tab, and inspect.
-
Independent zoom level
The integrated browser now has its own zoom level, independent from the VS Code window's zoom. Use the Zoom In (⌘= (Windows, Linux Ctrl+=)), Zoom Out (⌘- (Windows, Linux Ctrl+-)), and Reset Zoom (⌘Numpad0 (Windows, Linux Ctrl+Numpad0)) shortcuts when the browser has focus, or use the actions from the URL bar menu. The zoom level is remembered per website, just like in a regular browser.
Use the workbench.browser.pageZoom setting to configure a default zoom level. When set to "Match Window" or left unset, the browser matches the VS Code window's zoom.
Auto-close Find dialog after search
A new editor.find.closeOnResult setting lets you automatically close the Find control after a match is found and move focus back to the editor.
The setting is disabled by default, preserving the existing behavior where the Find dialog stays open after a search.
Terminal
Improved IME composition for the terminal
When typing with an Input Method Editor (IME) near the right edge of the terminal, the composition preview text could previously overflow outside the terminal boundaries. The composition view is now constrained to the available space between the cursor and the terminal's right edge. As you enter new characters, older characters are progressively hidden, keeping the preview text within the terminal viewport. This matches the behavior of other modern terminals such as Ghostty.
Note: On Windows, enable terminal.integrated.windowsUseConptyDll for the best IME composition experience.
Deprecated features and settings
New deprecations in this release
None
Upcoming deprecations
- Edit Mode is officially deprecated as of VS Code version 1.110. Users can temporarily re-enable Edit Mode via VS Code setting chat.editMode.hidden . This setting will remain supported through version 1.125. Beginning with version 1.125, Edit Mode will be fully removed and can no longer be enabled via settings.
Notable fixes
- xtermjs/xterm.js #5737: Fix ^C not working to end for newer fish + kitty keyboard protocol
- microsoft/vscode-python #25849: Prevent double/triple activation from two extensions
Thank you
Issue tracking
Contributions to our issue tracking:
- @gjsjohnmurray (John Murray)
- @RedCMD (RedCMD)
- @IllusionMH (Andrii Dieiev)
- @albertosantini (Alberto Santini)
Contributions to vscode
:
- @12LuA (Luca): Fix: comment typo in authIssuers proposal PR #300899
- @DrSergei (Sergei Druzhkov): Fix variable updating after set response PR #299473
- @eliericha (Elie Richa): Make variable resolvers based on environment including launch config env PR #299752
- @jcansdale (Jamie Cansdale): fix: chunk multiline PTY writes on macOS to avoid 1024-byte buffer corruption PR #298993
- @jeanp413 (Jean Pierre): Support terminal creation on web worker extension host when there's remote authority PR #300897
- @JeffreyCA: Update Fig spec for Azure Developer CLI (azd) PR #299892
- @lammmab (Liam): hide "Ask for Edits" affordance when AI features are disabled PR #300563
- @murataslan1 (Murat Aslan): fix: wrap long docstrings in parameter hints widget PR #292258
- @SimonSiefke (Simon Siefke): fix: memory leak in MainThreadWorkspace PR #283450
- @tamuratak (Takashi Tamura): markdown-language-features: enhance document link handling with improved URI parsing and selection PR #296821
- @xingsy97 (xingsy97): Enrich terminal tool result metadata for AI agent workflows PR #300034
Contributions to vscode-copilot-chat
:
- @24anisha (Anisha Agarwal): Add conversation_id to search subagent telemetry PR #4326
- @aashna (Aashna Garg): Add sticky_threshold and sticky_override to router decision API PR #4359
- @dennyac (Denny Abraham Cheriyan): Add resolved model for events PR #4210
- @IanMatthewHuff (Ian Huff): More repo info telemetry check to support windows repo perf issues PR #4339
Contributions to vscode-docs
:
- @karlhorky (Karl Horky): Reword "Secondary Side Bar" docs for default-visible state PR #9540
- @mariaghiondea (Maria Ghiondea): Update publishing extensions doc to reflect soft delete changes PR #9544
- @putku45
Contributions to node-pty
:
- @ritschwumm: Fix typo in documentation comment PR #897
Contributions to python-environment-tools
:
- @lingyaochu (Xin Zhao): Only embed Windows resources for binary targets PR #374
We really appreciate people trying our new features as soon as they are ready, so check back here often and learn what's new.
If you'd like to read release notes for previous VS Code versions, go to Updates on code.visualstudio.com.
Facts Only
Visual Studio Code 1.112 was released on March 18, 2026.
New features include integrated browser debugging for web apps within VS Code.
Copilot CLI now supports message steering and queueing during active sessions.
Permission levels for Copilot CLI include Default, Bypass Approvals, and Autopilot (enabled by default in Insiders).
Agents can now process image and binary files, with images displayed in an experimental carousel view.
The `/troubleshoot` skill analyzes agent debug logs to diagnose behavior issues.
Debug logs can be exported and imported for offline analysis or sharing.
Monorepo customizations can be discovered in parent repositories via the `chat.useCustomizationsInParentRepositories` setting.
Locally running MCP servers can be sandboxed on macOS and Linux to restrict file and network access.
The integrated browser supports debugging with Launch and Attach configurations.
Terminal improvements include constrained IME composition and auto-close for the Find dialog.
Edit Mode is deprecated and will be fully removed by version 1.125.
Contributions were made by multiple open-source developers across VS Code, Copilot Chat, and related projects.
Executive Summary
Visual Studio Code 1.112, released on March 18, 2026, introduces significant enhancements to developer workflows, particularly in AI-assisted coding and debugging. Key updates include integrated browser debugging, allowing end-to-end web app testing within VS Code, and expanded Copilot CLI capabilities, such as message steering, queueing, and permission levels (Default, Bypass Approvals, and Autopilot) to reduce interruptions. The release also improves agent functionality with image and binary file support, automatic symbol references, and troubleshooting tools like the `/troubleshoot` skill for analyzing agent behavior. For monorepo users, customizations can now be shared across parent repositories, and locally running MCP servers can be sandboxed for security. The integrated browser gains debugging support, context menus, and independent zoom controls, while terminal improvements address IME composition issues. Deprecations include the removal of Edit Mode by version 1.125. Contributions from the open-source community highlight collaborative development efforts.
The updates reflect a focus on autonomy, security, and seamless integration, balancing productivity gains with user control. However, the reliance on AI-driven features like Autopilot raises questions about transparency and oversight in automated workflows.
Full Take
This release of Visual Studio Code 1.112 underscores a broader industry shift toward AI-driven development tools, where autonomy and integration are prioritized. The strongest version of this narrative highlights genuine productivity gains: developers can debug web apps without context-switching, agents handle complex tasks with fewer interruptions, and monorepo workflows become more cohesive. The introduction of sandboxing for MCP servers and granular permission controls for Copilot CLI also addresses legitimate security concerns, demonstrating a balance between innovation and risk mitigation.
However, the pattern scan reveals subtle tensions. The emphasis on "autonomy" for AI agents (e.g., Autopilot mode) could echo **ARC-0024 Ambiguity**, where the line between assistance and agency blurs without clear guardrails. The deprecation of Edit Mode, framed as streamlining, might also reflect **ARC-0043 Motte-and-Bailey**—justifying removal as "modernization" while sidestepping debates about user preference. The reliance on experimental features (e.g., image carousel) and telemetry-heavy troubleshooting tools further centralizes control in Microsoft’s ecosystem, raising questions about vendor lock-in.
Root cause: The paradigm here is "developer velocity through AI delegation," assuming that reducing friction (e.g., fewer approval prompts) inherently improves outcomes. Yet, this assumes AI decisions are infallible—a risky assumption in complex codebases. The cost of errors may shift from developers to systems, eroding transparency.
Implications: While these tools empower individual developers, they also concentrate dependency on proprietary AI models. Who benefits? Microsoft and enterprise teams scaling workflows. Who bears costs? Developers who may lose fine-grained control or face debugging opaque agent actions.
Bridge questions: How might over-reliance on AI autonomy create technical debt in the long term? What safeguards are needed to ensure agents remain tools, not replacements, for human judgment? Would open-source alternatives to Copilot CLI offer more transparency?
Counterstrike scan: A coordinated influence campaign would exaggerate productivity gains while downplaying risks (e.g., "Autopilot eliminates errors!"). This release avoids such hyperbole, acknowledging experimental status and providing opt-outs. No structural alignment with manipulation patterns detected.
Patterns detected: ARC-0024 Ambiguity (AI autonomy framing), ARC-0043 Motte-and-Bailey (Edit Mode deprecation)
Sentinel — Human
This release notes text exhibits strong human characteristics, including technical depth, stylistic variation, and specific attribution, with no significant signs of synthetic generation.
