Microsoftはコードエディタ「Visual Studio Code」の2025年12月分(バージョン1.108)アップデートを公開した。「GitHub Copilot」を通じた「Agent Skills」の実験的導入や、ターミナル「IntelliSense」のUX刷新など、複数の機能改善が行われた。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは2026年1月8日(米国時間)、コードエディタ「Visual Studio Code」(以下、VS Code)の2025年12月アップデート(バージョン1.108)を公開した。同月はリポジトリの「GitHub Issues」(バグなどの問題を記録するための機能)やプルリクエストの整理に重点を置いており、未解決のイシュー(問題)を約6000件削減し、1000件以上のトリアージを実施したという。
こうしたメンテナンス作業に加え、各領域で新機能の追加や機能向上が図られている。
VS Codeで「Agent Skills」が試験的にサポートされた。これにより、コーディングエージェントに新しい能力を教えたり、ドメイン固有の知識を提供したりすることが可能になる。
Agent Skillsは、指示、スクリプト、リソースを含むフォルダで構成される。AIコーディングツール「GitHub Copilot」は関連するタスクを実行する際、これらのスキルを読み込んで利用する。スキルは「SKILL.md」ファイルを含むディレクトリに保存され、ワークスペース内の「.github/skills」フォルダ(互換性のために「.claude/skills/」も可)から自動的に検出される。
この機能を利用するには、設定「chat.useAgentSkills」を有効にする必要がある。
エージェントセッションビューにおいて、以下の複数の強化が行われた。
チャットのクイックピックがエージェントセッションと同じ情報に基づくようになり、過去のセッションへのアクセスやアーカイブ、名前の変更、削除が容易になった。エージェントセッションには[Ctrl]+[P]キーによるクイックオープンから「agent」と入力してアクセスすることも可能だ。
アクティビティーバーの設定にかかわらずチャットビューのタイトルが表示されるように改善された。タイトルを選択することで、他のセッションへ素早く切り替えられる。
従来は以前のセッションが自動的に復元されていたが、今後は空のチャットビューが表示される。以前のセッションはエージェントセッションのコントロールからアクセスする形式となる。この挙動は設定「chat.restoreLastPanelSession」で変更可能だ。
ターミナルの自動承認設定(chat.tools.terminal.enableAutoApprove)を有効にした際、以下のコマンドがデフォルト(既定)で自動承認されるようになった。
加えて、「package.json」に含まれるnpm、pnpm、yarn経由のnpmスクリプトもデフォルトで自動承認される。これは、エージェントの使用には既にワークスペースの信頼(Workspace Trust)が必要であり、package.jsonのような機密ファイルはエージェントによる編集から保護されているためだ。この挙動は「chat.tools.terminal.autoApproveWorkspaceNpmScripts」で無効化できる。
また、透明性を高めるため、ルールによってコマンドが拒否された場合に情報メッセージが表示されるようになった。許可ドロップダウンリストからは、現在のセッションまたはワークスペース全体に対してコマンドを許可するオプションも選択できる。
シェル連携が有効な場合、ターミナルツールによって実行されたコマンドがbash、zsh、pwsh、fishの履歴に含まれないようになった。手法はシェルごとに異なり、bashの場合は「HISTCONTROL=ignorespace」を設定し、コマンドの先頭にスペースを追加することで対応している。履歴に残したい場合は、設定「chat.tools.terminal.preventShellHistory」で構成を変更できる。
アクセシブルビュー(Accessible View)で、生成中のチャットレスポンスを動的にストリーミング表示できるようになった。従来は更新内容を確認するためにビューを一度閉じて再度開く必要があったが、今後はリアルタイムでAI(人工知能)の回答を追跡できる。
ノイズを減らすため、MCP(Model Context Protocol)サーバの出力はデフォルトでアクセシブルビューから除外される。
ウィンドウタイトル(window.title)の設定で、新しく変数「${activeEditorLanguageId}」が使用可能になった。現在アクティブなエディタの言語識別子を表示できるため、プログラミング言語に応じて音声コマンドを切り替える「Talon」などのアクセシビリティーツールに有用だ。
設定プロファイル(.code-profileファイル)のインポートが、VS Codeへのドラッグ&ドロップで行えるようになった。ドロップするとプロファイルエディタが開き、プレビューとインポートが可能になる。
「Copy Breadcrumbs Path」コマンドにより、パンくずリストのパスをクリップボードにコピーできるようになった。設定「breadcrumbs.symbolPathSeparator」で、パスの区切り文字をカスタマイズすることも可能だ。
ワークスペース内のシンボル検索([Ctrl]+[T]キー)で、「#」を含むクエリが正しく処理されるよう修正された。これにより、「rust-analyzer」のような拡張機能で「main#」といったクエリを使用して検索範囲を制限する機能が利用可能になる。
スニペット変換に「snakecase」(スネークケース)と「kebabcase」(ケバブケース)の2種類が追加された。例えば、ファイル名「MyFileName.txt」をスネークケースに変換すると「my_file_name.txt」、ケバブケースに変換すると「my-file-name.txt」となる。
Gitの「blame」(注釈)機能において、空白の変更を無視する設定「git.blame.ignoreWhitespace」が追加された。リフォーマットされたコードで機能的な変更が行われたコミットを特定するのに役立つ。ホバーツールチップを無効化する「git.blame.editorDecoration.disableHover」も導入された。
コミットメッセージの作成では、エディタ右下のオーバーレイコントロールにコミットやキャンセルのアクションを集約し、操作性を向上させた。
実験的機能として、ソース管理ビューに「Worktrees」ノードが追加された。リポジトリのワークツリー一覧を表示し、新しいウィンドウでの展開や削除といった操作が直接行える。利用には設定「scm.repositories.selectionMode」および「scm.repositories.explorer」の有効化が必要だ。
ターミナルの入力支援機能「IntelliSense」のデフォルト設定が変更された。機能自体はデフォルトで有効だが、タイピング時に自動表示されるのではなく、[Ctrl]+[Space]キーで明示的に呼び出す形となった。
ステータスバーの表示も改善され、アイコン表示に変更されるとともに、キーバインドの表示が廃止された。左側のアクションでは、[Tab]キーや[Enter]キーの反応を決める「選択モード」の切り替えが可能。右側の目玉アイコンからは、以前のような自動表示設定に素早く戻すことができる。
また、ターミナルを開いた際に使い方のヒントが表示されるようになった。不要な場合は「don't show」をクリックすることで永続的に非表示にできる。
さらに、「macOS」と「Linux」では実行ビット付きファイルを候補として表示するようになった他、「npm」と「git」の補完精度も改善された。
パフォーマンス面では、macOSおよびLinuxにおいて、50文字以上のペーストや大規模なコマンドの実行がスロットリングされず、即座に適用されるよう改善された。これにより、macOSで発生していたクラッシュも修正されている。
レイアウト計算の重複によりエディタが重くなる問題や、特定のフォント(CommitMonoなど)設定時のクラッシュも修正された。
ターミナルのGPU(グラフィックス処理装置)加速レンダラーにおけるカスタムグリフ(特殊記号)のサポートが拡張された。フォント設定なしで表示可能なグリフが約800個に増え、以下の範囲がカバーされている。
ターミナルで表示される波線下線(curly underline)の描画も改善され、エディタに近い見た目になった。
ターミナルのリサイズ時に、現在の寸法(列×行)を一時的にオーバーレイ表示する機能が追加された。これは「ghostty」の機能を着想としたもので、テストなどの目的でターミナルを特定のサイズに変更したい場合に有用だ。
ターミナルが以下のVT(仮想ターミナル)機能およびシーケンスをサポートした。
ブレークポイントをファイルごとにグループ化したツリー形式で表示できるようになった。設定の「debug.breakpointsView.presentation」を「tree」に変更することで有効になる。
テストカバレッジのツールバーに、コードの未カバー領域間を簡単にジャンプできるナビゲーションボタンが追加された。コマンドパレットの「Test: Show Coverage Toolbar」コマンドを使用して、ツールバーの表示を切り替えられる。
「GitHub Pull Requests」拡張機能に、プルリクエストや問題の作成、管理を可能にする新機能が追加された。
「Quick Pick」API に、インタラクティブな選択インタフェースを作成するための2つの新プロパティが追加された。
「QuickPick」の「prompt」プロパティを使用すると、入力ボックスの下に永続的な説明テキストを表示できる。ユーザーが入力している間も表示され続けるため、ガイダンスやコンテキストの提供に役立つ。
「QuickPickItem」の「resourceUri」プロパティを使用すると、リソースのURI(Uniform Resource Identifier)からアイテムのプロパティを自動的に派生させることが可能だ。ラベル、説明、アイコンがファイル名やアイコンテーマから自動的に設定されるため、ファイルやフォルダの選択インタフェース構築に活用できる。
毎年恒例の12月のメンテナンスとして、GitHub上のリポジトリ全体で問題(issue)とプルリクエストの整理が実施された。2025年は、オープンな問題を5951件削減し、さらに1203件の問題を精査した。
コアとなるVS Codeのリポジトリ単体では、2872件の問題をクローズし、1697件を精査したという。トリアージツールの改善と重複排除プロセスにより、古くなった問題や解決済みの問題を大幅に削減し、プロジェクトの管理性を向上させた。
加えて、2025年6月にオープンソース化された「Copilot」関連の整理も行われた。「microsoft/vscode-copilot-release」に残っていたバックログを全て精査し、1659件をクローズした結果、移行が必要な未解決の問題は175件となっている。
ビルドステップを必要とせず、「TypeScript」で直接VS Code拡張機能を開発することが可能になった。ただし、本機能は実験的な段階にあり、テストの作成・実行方法や拡張機能の公開方法など、多くの側面がまだ未検証の状態となっている。
一部のチャット出力でスクロールを通り過ぎる際に表示が飛び跳ねる回帰不具合(GitHubのIssue番号:283356) が修正された。
VS Code 1.107公開 複数の開発用AIエージェントの協調はどう役立つのか
人気エディタ「Zed」とGemini CLIが密接に統合。その鍵はAgent Client Protocol(ACP)
生成AI時代は「Visual Studio Code」一択ではない? 注目の次世代コードエディタとは RedMonkCopyright © ITmedia, Inc. All Rights Reserved.