本記事は、VS Code 1.121 の更新情報をもとに AI を補助的に使って下書きを作成し、その後に内容を確認・編集しています。誤りがあれば修正いたします。
はじめに
Visual Studio Code 1.121 が公開されました。
今回のアップデートは、単なる細かな改善というより、Agents / Copilot 周辺の実行体験の強化と、プレビュー機能の標準搭載が目立つリリースです。
特に今回の更新では、次のような変化がありました。
- Agents Window の改善
- リモートマシン上での agent 実行
- 補助用途に使うモデルの切り替え
- Mermaid プレビューの標準搭載
- HTML ファイルのプレビューを標準サポート
- ターミナルツール出力の圧縮やバックグラウンド整理
この記事では、VS Code 1.121 の更新内容を**「何が便利になったのか」**という視点で整理します。
先に結論
今回の VS Code 1.121 を一言でまとめると、次の3点が大きいです。
- Agents が“実験機能”から、少しずつ実務的な実行基盤に近づいてきた
- Mermaid / HTML のような日常的なプレビュー機能が、拡張なしで使いやすくなった
- Copilot / agent がターミナルを使うときの無駄なノイズや資源消費がかなり減った
特に AI コーディング支援を触っている人にとっては、今回の更新はかなり実用寄りです。
1. Agents Window がさらに強化された
まず目立つのが Agents Window (Preview) の継続強化です。
前回から Stable に preview として入っていた agent 用の companion window ですが、今回も改善が続いています。
VS Code タイトルバーの Open in Agents ボタンなどから開けるこの画面は、単なる Copilot Chat の別UIというより、agent 主導で作業させるための専用実行環境として育てられている印象です。
今回の時点で重要なのは、Microsoft 側がこの Agents Window をかなり本気で育てていることです。
単発のチャットではなく、「複数プロジェクトにまたがる作業」「長時間の作業」「将来的な拡張機能との連携」まで見据えていることが、リリースノートからも読み取れます。
2. Remote agents がかなり面白い
今回の更新で特に気になったのが Remote agents (Preview) です。
これは、Agents Window から SSH もしくは dev tunnels を使って、自分が所有するリモートマシン上で agent セッションを走らせられる機能です。
何ができるのか
ざっくり言うと、
- 手元の VS Code から
- リモートマシンに接続して
- その上で agent を動かし
- セッション自体はリモート側で継続できる
という仕組みです。
これの大きいポイントは、クライアントが切断してもリモートの agent host が生き続けることです。
つまり、ローカルのノートPCを閉じても、リモートマシン側で作業が進み続ける設計になっています。
どう実装されているのか
従来の Remote Development Extensions と完全に同じではなく、Agents Window はリモート側に接続したあと、VS Code CLI を入れるか、すでに動いている CLI server に dev tunnel 経由でつなぎます。
その上で agent host という軽量プロセスを起動し、そこが Copilot SDK ベースの新しい agent loop をホストします。
つまりこれは、単なる「リモートで VS Code を開く」ではなく、
agent をリモートに常駐させるための仕組み
として見るのが正しいです。
3. Agent Host Protocol (AHP) という新しい公開プロトコル
Remote agents で技術的に面白いのが、接続に Agent Host Protocol (AHP) という新しいオープンプロトコルを使っていることです。
説明を見る限り、AHP の設計思想はかなり明確です。
- agent host が authoritative state を持つ
- 複数クライアントに状態同期できる
- 変更は reducer ベースで順序付けされる
つまり、agent セッションそのものを共有可能な状態管理対象として扱う方向に寄っています。
これは今後かなり重要になるかもしれません。
単純な chat completion 的な世界ではなく、長寿命・複数クライアント・共有状態付きの agent 実行基盤を想定しているからです。
しかも AHP は open protocol なので、将来的には
- VS Code CLI の agent host に接続する別クライアント
- VS Code が接続できる独自 AHP host
のような展開も理屈の上では可能になります。
ここは、今回のリリースの中でもかなり“将来の布石”感が強い部分です。
4. Agents の観測性も強化された
VS Code の agent 利用状況を OpenTelemetry 経由で出し、Azure Managed Grafana で可視化できる流れも整備されました。
ダッシュボードでは、たとえば次のような情報を見られます。
- agent operations
- token usage
- chat sessions
- tool calls
- model ごとの response time
- TTFT(time to first token)
これは個人利用よりも、チーム利用や運用監視に効く機能です。
AI コーディング支援が「なんとなく便利」から「コストや挙動を計測して管理するもの」に移りつつある流れがここにも出ています。
5. Claude agent に Auto permission mode が追加
Claude Agent には Auto mode (Preview) が追加されました。
これを有効にすると、Claude が毎回 permission prompt を出さずに実行できるようになります。
ただし完全ノーガードではなく、別の classifier request が危険な操作をレビューして止める設計です。
つまりこれは、
- 毎回確認が多すぎてだるい
- でも完全 YOLO は怖い
という人向けの中間モードです。
長時間タスクや反復作業ではかなり便利そうです。
一方で、完全無確認の Bypass all permissions も別設定で出せるようですが、こちらは本当に危険度が高いので、普通は Auto までで十分だと思います。
6. utility model を切り替えられるようになった
今回、地味に実用性が高いのが utility models の設定追加です。
新しい設定はこの2つです。
chat.utilityModelchat.utilitySmallModel
VS Code では、チャット以外にも裏でいろいろな軽量タスクが走っています。たとえば、
- タイトル生成
- 要約
- コミットメッセージ生成
- rename suggestion
- prompt categorization
- intent detection
などです。
今回から、こうした補助用途のモデルを自分で差し替えられるようになりました。
これはかなり大きいです。
メインの会話モデルは高性能なものを使いつつ、
- 軽量作業は安いモデルにする
- BYOK のモデルを使う
- 用途に応じて高速モデルに切り替える
といった構成がしやすくなるからです。
AI を「全部同じモデルで回す」から、役割ごとにモデルを使い分ける方向に進んでいるのが見えます。
7. BYOK の Custom Endpoint provider が入った
これは現時点では Insiders 限定ですが、BYOK まわりも前進しています。
新しい Custom Endpoint provider は、
- Chat Completions
- Responses
- Messages
互換の endpoint を 1つの設定系で扱える provider です。
従来の customoai は Chat Completions だけだったので、より汎用的になった形です。
BYOK を使っている人や、自前 endpoint・互換 API をつなぎたい人にとっては、かなり良い方向の変更です。
8. HTML プレビューが標準で使えるようになった
これはかなり嬉しい変更です。
これまで HTML ファイルをプレビューするには、拡張機能を入れるのがほぼ前提でした。
しかし VS Code 1.121 からは、ローカル HTML ファイルを Integrated Browser で直接開けるようになりました。
使い方も簡単で、
- File Explorer で右クリック
Open in Integrated Browser- もしくはエディタのプレビューアイコン
で開けます。
これはシンプルですが、かなり実用的です。
ちょっとした静的 HTML、UI モック、生成物確認、テンプレート確認などが 拡張なしで完結するようになったからです。
9. Integrated Browser から chat に要素を渡しやすくなった
さらに Integrated Browser 側では、要素選択 UI も改善されています。
- ドラッグで範囲選択
- コンテキストメニューから Add Element to Chat
ができるようになりました。
これにより、Web ページの一部を agent / chat に渡して相談する流れがかなりやりやすくなっています。
フロントエンド作業や UI 修正相談では、地味に便利です。
10. ターミナルまわりが agent 向けにかなり改善された
今回のリリースで、個人的にいちばん実務的だと思うのがここです。
VS Code の agent がターミナルを使うときの挙動がかなり改善されています。
10-1. VSCODE_AGENT 環境変数が設定される
agent 経由で起動された terminal command には、VSCODE_AGENT 環境変数が入るようになりました。
これにより CLI 側で、
- アニメーションを消す
- 機械可読な出力にする
- 対話プロンプトを抑制する
といった切り替えが可能になります。
CI 向けや bot 向けの挙動分岐をすでに持っている CLI なら、同じノリで agent 対応しやすくなります。
10-2. バックグラウンド実行中が見えるようになった
これまでは、terminal command が裏でまだ動いているのに、chat 側では終わったように見えることがありました。
今回からは、動作中は Running <command> in background と表示され、Show で対象ターミナルに飛べます。
これは UX 的にかなり大事です。
「終わったのか、裏でまだ動いているのか」が見えるだけで、agent 利用時の不安がかなり減ります。
10-3. 背景 terminal の自動 cleanup
長いチャットセッションで terminal command を何度も打つと、終わった terminal がどんどん残る問題がありました。
今回から、agent が作った background terminal は 完了後に自動 dispose されます。
ただし Show した terminal は残るので、確認したいものまで消えるわけではありません。
10-4. 出力圧縮の対象が拡大
chat.tools.compressOutput.enabled が効く範囲も広がっています。
今回の対象拡大により、
- test runners
- build tools
- linters
- Docker commands
- package managers
などの冗長出力がより圧縮されやすくなりました。
これはかなり重要です。
AI に食わせる terminal 出力は、全部見せるとノイズが多すぎるからです。
今回の改善で、モデルが本当に必要な差分を見つけやすくなり、トークンの節約にもつながります。
10-5. パスワードなどの sensitive prompt は chat に載せない
password / passphrase / PIN / verification code のような sensitive prompt に達した場合、VS Code がそれを intercept するようになりました。
- 通常モードではユーザーが terminal に直接入力
- auto-approve 系では command を cancel し、モデルには再試行させない
という挙動になります。
これはかなり大事です。
AI が秘密情報を拾ってしまう事故を減らせるからです。
11. quick suggestions のデフォルト挙動が変わった
エディタ側では editor.quickSuggestions のデフォルト挙動が変わりました。
Copilot の inline completion が有効な場合、文字入力時に suggest control が自動で出ないようになっています。
背景にある考え方はシンプルで、これまでの挙動だと アルファベット順のシンボル候補が勝手に選ばれてしまい、Copilot の補完プレフィックスまで汚す ケースがあったからです。
要するに今回の変更は、
補完UIのノイズを減らして、inline completion を自然に受け取りやすくする
方向の調整です。
昔の動きが好きなら設定で戻せますが、Copilot 利用者の多くにとっては新デフォルトの方が静かでよさそうです。
12. Mermaid がついに組み込みになった
これはかなりわかりやすい改善です。
Matt Bierner 氏の Mermaid preview 拡張が VS Code に統合され、Mermaid Markdown Features という built-in extension になりました。
これにより、
- Markdown preview
- notebook の Markdown cell
- chat
で Mermaid diagram をそのままレンダリングできます。
つまり、こういう記法が標準で描画されます。
flowchart LR
Sleep[Sleep] --> Wake{Awake?}
Wake -->|No| Sleep
Wake -->|Hungry| Snack[Get treat]
Wake -->|Not in Sun?| Move[Move to sun]
Wake -->|Human is typing| Keyboard[Sleep on keyboard]
Snack --> Sleep
Move --> Sleep
Keyboard --> Sleep
実際にVS Codeのプレビューで表示される図
しかも今回の built-in Mermaid は、
- pan / zoom 対応
- 右クリックで Mermaid source をコピー可能
といった使い勝手もあります。
Markdown ベースで設計メモを書く人にはかなり嬉しい更新です。
13. Markdown preview の front matter 表示も改善
markdown.preview.frontMatter 設定が追加され、YAML front matter の表示方法を選べるようになりました。
選べるのは次の3つです。
- table(デフォルト)
- codeBlock
- hide
デフォルトで table 表示されるのは、記事やドキュメントの metadata を確認しやすくて便利です。
Qiita や Zenn 原稿を Markdown で書いている人にも相性がよいと思います。
まとめ
VS Code 1.121 の更新をまとめると、今回の主役は明らかに Agents / Copilot 実行基盤の強化 です。
特に大きいのは次の点です。
- Remote agents により、agent をリモート常駐プロセスとして使う方向が見えてきた
- utility model 設定により、補助用途のモデル分離が可能になった
- terminal 出力圧縮や cleanup で agent 実行の無駄が減った
- sensitive prompt の扱いがより安全になった
そのうえで、日常的な改善としても、
- HTML preview の標準対応
- Mermaid の built-in 化
- Markdown front matter 表示改善
があり、普段使いの VS Code も着実に便利になっています。
今回の 1.121 は、単なる機能追加というより、
VS Code が「エディタ」から「AI 実行フロントエンド」へ寄っていく流れがさらに進んだリリース
として見るとわかりやすいと思います。
参考サイト
Visual Studio Code 1.121
https://code.visualstudio.com/updates/v1_121