You open VS Code, start a task with an AI agent, then realize you need to jump to a completely different project ā and suddenly your whole workflow falls apart. Sound familiar? š
VS Code 1.120, released on May 13, 2026, tackles exactly that kind of friction head-on. This release is packed with genuinely useful upgrades ā not just checkbox features, but things that will actually change how you work day to day.
From a dedicated Agents window built for multi-project agentic workflows, to accurate token tracking for your BYOK models, to smarter Markdown tooling and terminal command risk badges ā there's a lot to unpack. So let's get into it.
What Is VS Code 1.120?
VS Code 1.120 is the latest stable release of Visual Studio Code ā Microsoft's free, open-source code editor used by millions of developers worldwide.
Every month or so, the VS Code team ships a new version with new features, fixes, and improvements. Version 1.120 is a particularly noteworthy release because it graduates the Agents window from Insiders-only to Stable ā which means it's now available to everyone.
Think of this release as VS Code leveling up its AI game, sharpening its Markdown tools, and adding a few safety nets you didn't know you needed.
Why This Release Matters
Here's the honest reality: agentic coding is not a future thing anymore. Developers are actively using AI agents to write code, run commands, make changes across files, and even manage projects. But VS Code was originally designed around one editor, one workspace, one task at a time.
VS Code 1.120 starts to fix that. It introduces a purpose-built environment for working with multiple agents across multiple projects simultaneously. At the same time, it addresses real pain points around cost visibility, terminal safety, and Markdown review quality. These aren't flashy gimmicks ā they solve problems developers are running into right now.
Key Features in VS Code 1.120
šŖ Agents Window ā Now in Stable
The biggest headline of this release is the Agents window moving from VS Code Insiders to Stable. This is a whole new type of window designed specifically for agent-driven development.
Instead of forcing your agent workflows into the same editor layout built for writing code manually, the Agents window gives you a dedicated space to:
- Explore and iterate on tasks across multiple projects
- Switch between active agent sessions without losing context
- Review agent-generated changes in one place
- Choose your agent harness and run agents on remote machines
It shares all your existing VS Code settings (themes, keybindings, extensions) but lets you override specific settings just for the Agents window.
What's improved since Insiders?
- Your dropdown preferences (agent harness, isolation mode) now persist between sessions ā no more re-selecting every time.
- You can discard edits directly from the Changes panel without hunting for a menu.
- A sync button on the Files panel lets you pull upstream changes from the base branch before the agent begins.
- Completed sessions now automatically show the agent's full set of changes when you open them.
- Arrow buttons in the top-left title bar let you jump between recent sessions quickly.
You can open it from the "Open in Agents" button in the VS Code title bar. The Agents window documentation has everything you need to get started.
š° BYOK Token Usage ā Finally Accurate
If you use Bring Your Own Key (BYOK) with providers like Anthropic, OpenAI, or others, you've probably noticed that the context window control in Chat always showed 0% and zero tokens. That was a bug ā token accounting simply wasn't working for BYOK models.
VS Code 1.120 fixes that. The context window control now shows accurate token usage and percentage for all BYOK models. No more guessing whether you're burning through your context window.
This matters for two reasons: performance and cost. When your model runs out of context window space, it starts forgetting earlier parts of your conversation. And if you're paying per token, keeping an eye on usage is just good hygiene.
š§ Thinking Effort for BYOK Reasoning Models
Reasoning models ā the kind that "think before they answer" ā let you control how hard they work on a problem. More thinking effort means better answers but higher cost and slower responses. Less effort is faster and cheaper but may produce shallower results.
VS Code 1.120 lets you configure thinking effort for BYOK reasoning models directly from the model picker in the Chat view. This works across OpenAI-compatible endpoints including OpenAI, xAI (Grok), OpenRouter, and custom Azure OpenAI deployments. (Anthropic models already had this; the control is now consistent everywhere.)
š¦ Model Picker Organized by Provider
If you work with models from multiple providers, the old model picker could feel like one giant unsorted list. Now, models are grouped by provider, making it much easier to find what you need. You can also search by model name.
Bonus: recently used models now show the provider name in grey text next to the model name, so you can instantly tell apart similarly named models from different services.
š” Quick tip: Type
/modelsin the chat input to jump straight to the model list.
ā” Terminal Output Compression (Preview)
Here's a real scenario: you run npm install or git diff inside an agent session, and the output is hundreds of lines long. That output gets sent to the model and eats a huge chunk of your context window ā leaving less space for your actual code and the agent's reasoning.
Enable chat.tools.compressOutput.enabled and VS Code will post-process terminal output before sending it to the model:
- Large unchanged hunks in diffs are collapsed
- Lockfile and snapshot diffs are dropped entirely
-
ls -loutput is reduced to just entry names - npm install progress bars and deprecation warnings are stripped
A short banner is added to any compressed output so the model knows what was filtered ā and can request the raw version if it needs it.
š¦ Risk Assessment for Terminal Commands (Experimental)
This one is genuinely useful if you let agents run terminal commands. Enable chat.tools.riskAssessment.enabled and every terminal command confirmation now shows a colored risk badge with an AI-generated one-sentence explanation.
Three levels:
- Safe (green): reads files or prints output without making changes
- Caution (orange): modifies the workspace, installs packages, or sends data over the network
- Review carefully (red): may be difficult or impossible to undo ā think force-pushing to a remote or deleting files outside the workspace
It's a small thing, but it gives you a moment to breathe before saying yes to something destructive.
š Markdown Preview for Diffs (Preview)
If you've ever opened a Markdown file in Source Control's diff view and had to mentally parse raw syntax to understand what changed ā this feature is for you.
VS Code 1.120 lets you view Markdown diffs as rendered previews instead of raw source. You can see both side-by-side and inline views. Spotting a changed heading or a restructured list is now as easy as reading the document ā no mental decoding required.
To try it, open a Markdown diff and use Reopen Editor With... to switch to the Markdown preview diff view.
You can also make it the default:
"workbench.diffEditorAssociations": {
"*.md": "vscode.markdown.preview.editor"
}
This is especially handy when reviewing documentation changes from agents or pull requests.
š HTML id Support in Markdown
VS Code now recognizes id attributes from HTML elements inside Markdown files for both path completions and link validation.
So if you write:
<div id="install-guide">...</div>
And then link to it:
See the [installation steps](#install-guide) for details.
VS Code will suggest #install-guide in completions and flag it as an error if the id doesn't exist. No more broken anchor links that look fine until someone clicks them.
š Smart Select for Markdown Tables
A small but welcome addition: Markdown tables now support smart selection. Use Shift+Alt+RightArrow to expand the selection from a cell ā row ā full table. Use Shift+Alt+LeftArrow to shrink it back. If you edit tables regularly, you'll appreciate this.
šļø Plan Mode Improvements for Claude and Copilot CLI
If you use plan mode with the Claude agent or Copilot CLI, the plan editor got better:
- Inline editing: You can now edit the plan directly inside the control instead of opening a separate editor tab.
- Clearer feedback mode: When you're giving feedback on a plan, the UI now clearly shows you're in feedback mode and displays your added feedback.
- You can opt out of the inline editor and fall back to a regular editor tab if you prefer with
chat.planWidget.inlineEditor.enabled.
Comparison: Before and After 1.120
| Feature | Before 1.120 | After 1.120 |
|---|---|---|
| BYOK token display | Always showed 0% | Accurate usage and % |
| Thinking effort for BYOK | Anthropic only | All OpenAI-compatible providers |
| Model picker | One unsorted list | Grouped by provider, searchable |
| Markdown diff view | Raw syntax only | Rendered preview available |
| Terminal command confirmation | Just the command | Command + risk badge + explanation |
| Agents window | Insiders only | Available in Stable |
Best Tips for Getting the Most Out of 1.120
ā Try the Agents window for your next multi-project task. Even if you're not doing heavy agentic work, it's worth exploring. The session history and change review features alone are useful.
ā Enable terminal output compression if you run long commands in agent sessions. It directly preserves your context window and can save you from unexpected token overages.
ā
Turn on risk assessment for terminal commands. It takes two seconds to enable and could save you from a painful git push --force accident.
ā
Set the Markdown preview as your default diff view for .md files. If you review docs regularly, this change alone is worth the update.
ā
Use /models in the chat input to quickly switch between models without clicking through menus.
Common Mistakes to Avoid
ā Ignoring the risk badge on terminal commands. The experimental risk assessment feature is there for a reason. A red badge means stop and read before hitting confirm.
ā Skipping terminal output compression. If you're paying for tokens with BYOK, or working on complex agent sessions, not compressing output is quietly expensive. It's opt-in, so you have to actually turn it on.
ā Not setting the Agents window preferences early. Your harness and isolation mode choices are now saved between sessions ā but only after you set them the first time. Take a minute to configure things the way you want.
ā Assuming BYOK token tracking was always accurate. If you were making decisions based on that 0% display, now's a good time to re-evaluate your context window habits.
Wrapping Up
VS Code 1.120 is one of those releases that makes daily developer work noticeably smoother. The Agents window landing in Stable is the headline, but the token tracking fix, risk badges, Markdown preview for diffs, and terminal compression are the features you'll actually feel every day.
It's not a revolutionary release ā it's a thoughtful, practical one. And those are often the best kind. š
If you found this useful, check out more developer content on hamidrazadev.com ā there's a lot more where this came from. And if this post saved you some time, share it with a teammate who's still on VS Code 1.119. They'll thank you later. š
Top comments (0)