「Visual Studio Code」バージョン1.108、GitHub Copilotのスキル機能など追加Microsoft、2025年12月アップデート

Microsoftはコードエディタ「Visual Studio Code」の2025年12月分(バージョン1.108)アップデートを公開した。「GitHub Copilot」を通じた「Agent Skills」の実験的導入や、ターミナル「IntelliSense」のUX刷新など、複数の機能改善が行われた。

» 2026年02月03日 13時00分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Microsoftは2026年1月8日(米国時間)、コードエディタ「Visual Studio Code」(以下、VS Code)の2025年12月アップデート(バージョン1.108)を公開した。同月はリポジトリの「GitHub Issues」(バグなどの問題を記録するための機能)やプルリクエストの整理に重点を置いており、未解決のイシュー(問題)を約6000件削減し、1000件以上のトリアージを実施したという。

 こうしたメンテナンス作業に加え、各領域で新機能の追加や機能向上が図られている。

Visual Studio Code 2025年12月アップデートの主な内容(提供:Microsoft )

エージェント

Agent Skills

 VS Codeで「Agent Skills」が試験的にサポートされた。これにより、コーディングエージェントに新しい能力を教えたり、ドメイン固有の知識を提供したりすることが可能になる。

 Agent Skillsは、指示、スクリプト、リソースを含むフォルダで構成される。AIコーディングツール「GitHub Copilot」は関連するタスクを実行する際、これらのスキルを読み込んで利用する。スキルは「SKILL.md」ファイルを含むディレクトリに保存され、ワークスペース内の「.github/skills」フォルダ(互換性のために「.claude/skills/」も可)から自動的に検出される。

 この機能を利用するには、設定「chat.useAgentSkills」を有効にする必要がある。

エージェントセッションビューの改善

 エージェントセッションビューにおいて、以下の複数の強化が行われた。

  • アーカイブ、状態の読み取り、セッションの開始といったアクションのキーボード操作対応
  • サイドバイサイドビュー時、状態や経過時間に基づいたセッションのグループ化
  • セッションに関連する変更ファイルや関連PR情報の提供
  • 新しいグループセクションから複数のセッションを一括でアーカイブする機能のサポート
  • 全般的なアクセシビリティーの向上
    • 「chat.viewSessions.orientation」の「auto」オプションは廃止された。代替として「sideBySide」を使用する。
期間ごとに整理され、視認性が向上したエージェントセッションビュー(提供:Microsoft)

チャット

チャットセッションのクイックピック

 チャットのクイックピックがエージェントセッションと同じ情報に基づくようになり、過去のセッションへのアクセスやアーカイブ、名前の変更、削除が容易になった。エージェントセッションには[Ctrl]+[P]キーによるクイックオープンから「agent」と入力してアクセスすることも可能だ。

チャットタイトルの改善

 アクティビティーバーの設定にかかわらずチャットビューのタイトルが表示されるように改善された。タイトルを選択することで、他のセッションへ素早く切り替えられる。

再起動時の挙動

 従来は以前のセッションが自動的に復元されていたが、今後は空のチャットビューが表示される。以前のセッションはエージェントセッションのコントロールからアクセスする形式となる。この挙動は設定「chat.restoreLastPanelSession」で変更可能だ。

ターミナルツールの自動承認ルール

 ターミナルの自動承認設定(chat.tools.terminal.enableAutoApprove)を有効にした際、以下のコマンドがデフォルト(既定)で自動承認されるようになった。

  • git ls-files
  • git --no-pager <安全なサブコマンド>
  • git -C <ディレクトリ名> <安全なサブコマンド>
  • rg(--preおよび--hostname-binを除く)
  • sed(一部の引数や使用パターンを除く)
  • Out-String

 加えて、「package.json」に含まれるnpm、pnpm、yarn経由のnpmスクリプトもデフォルトで自動承認される。これは、エージェントの使用には既にワークスペースの信頼(Workspace Trust)が必要であり、package.jsonのような機密ファイルはエージェントによる編集から保護されているためだ。この挙動は「chat.tools.terminal.autoApproveWorkspaceNpmScripts」で無効化できる。

ターミナルコマンドの許可を将来に引き継げる

 また、透明性を高めるため、ルールによってコマンドが拒否された場合に情報メッセージが表示されるようになった。許可ドロップダウンリストからは、現在のセッションまたはワークスペース全体に対してコマンドを許可するオプションも選択できる。

セキュリティと利便性を両立するターミナルコマンドの自動承認設定(提供:Microsoft)

シェル履歴への登録防止

 シェル連携が有効な場合、ターミナルツールによって実行されたコマンドがbash、zsh、pwsh、fishの履歴に含まれないようになった。手法はシェルごとに異なり、bashの場合は「HISTCONTROL=ignorespace」を設定し、コマンドの先頭にスペースを追加することで対応している。履歴に残したい場合は、設定「chat.tools.terminal.preventShellHistory」で構成を変更できる。

アクセシビリティー

アクセシブルビューでのチャット応答のストリーミング

 アクセシブルビュー(Accessible View)で、生成中のチャットレスポンスを動的にストリーミング表示できるようになった。従来は更新内容を確認するためにビューを一度閉じて再度開く必要があったが、今後はリアルタイムでAI(人工知能)の回答を追跡できる。

MCPサーバの出力除外

 ノイズを減らすため、MCP(Model Context Protocol)サーバの出力はデフォルトでアクセシブルビューから除外される。

ウィンドウタイトルの言語ID変数

 ウィンドウタイトル(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」(注釈)機能において、空白の変更を無視する設定「git.blame.ignoreWhitespace」が追加された。リフォーマットされたコードで機能的な変更が行われたコミットを特定するのに役立つ。ホバーツールチップを無効化する「git.blame.editorDecoration.disableHover」も導入された。

コミットメッセージの作成

 コミットメッセージの作成では、エディタ右下のオーバーレイコントロールにコミットやキャンセルのアクションを集約し、操作性を向上させた。

ソース管理ビューの「Worktrees」(実験的)

 実験的機能として、ソース管理ビューに「Worktrees」ノードが追加された。リポジトリのワークツリー一覧を表示し、新しいウィンドウでの展開や削除といった操作が直接行える。利用には設定「scm.repositories.selectionMode」および「scm.repositories.explorer」の有効化が必要だ。

ソース管理ビューに追加された新しい「Worktrees」ノード(提供:Microsoft)

ターミナル「IntelliSense」の挙動変更

 ターミナルの入力支援機能「IntelliSense」のデフォルト設定が変更された。機能自体はデフォルトで有効だが、タイピング時に自動表示されるのではなく、[Ctrl]+[Space]キーで明示的に呼び出す形となった。

 ステータスバーの表示も改善され、アイコン表示に変更されるとともに、キーバインドの表示が廃止された。左側のアクションでは、[Tab]キーや[Enter]キーの反応を決める「選択モード」の切り替えが可能。右側の目玉アイコンからは、以前のような自動表示設定に素早く戻すことができる。

 また、ターミナルを開いた際に使い方のヒントが表示されるようになった。不要な場合は「don't show」をクリックすることで永続的に非表示にできる。

 さらに、「macOS」と「Linux」では実行ビット付きファイルを候補として表示するようになった他、「npm」と「git」の補完精度も改善された。

ターミナルのパフォーマンスと安定性向上

 パフォーマンス面では、macOSおよびLinuxにおいて、50文字以上のペーストや大規模なコマンドの実行がスロットリングされず、即座に適用されるよう改善された。これにより、macOSで発生していたクラッシュも修正されている。

 レイアウト計算の重複によりエディタが重くなる問題や、特定のフォント(CommitMonoなど)設定時のクラッシュも修正された。

包括的なカスタムグリフのサポート

 ターミナルのGPU(グラフィックス処理装置)加速レンダラーにおけるカスタムグリフ(特殊記号)のサポートが拡張された。フォント設定なしで表示可能なグリフが約800個に増え、以下の範囲がカバーされている。

  • けい線(U+2500〜U+257F)
  • ブロック要素(U+2580〜U+259F)
  • 点字パターン(U+2800〜U+28FF)
  • Powerlineシンボル(U+E0A0〜U+E0D4、私用領域)
  • 進捗(しんちょく)インジケーター(U+EE00〜U+EE0B、私用領域)
  • Gitブランチシンボル(U+F5D0〜U+F60D、私用領域)
  • レガシーコンピューティング用記号(U+1FB00〜U+1FBFF)
ターミナルのGPUレンダラーでサポートされた約800種類のカスタムグリフ(提供:Microsoft)

波線下線(curly underline)の描画改善

 ターミナルで表示される波線下線(curly underline)の描画も改善され、エディタに近い見た目になった。

従来の波線下線(上)と新しくなった波線下線(下)(提供:Microsoft)

ターミナルのリサイズ時に寸法をオーバーレイ表示

 ターミナルのリサイズ時に、現在の寸法(列×行)を一時的にオーバーレイ表示する機能が追加された。これは「ghostty」の機能を着想としたもので、テストなどの目的でターミナルを特定のサイズに変更したい場合に有用だ。

新しいVT機能のサポート

 ターミナルが以下のVT(仮想ターミナル)機能およびシーケンスをサポートした。

  • Synchronized output
    • アプリケーションがレンダリングを一時停止し、ターミナルでの更新をバッチ処理できる。バッファーの書き換え時のティアリング防止に役立つ
  • DECRQM(CSI ? 2026 $ p)
  • BSU(CSI ? 2026 h)
  • ESU(CSI ? 2026 l)
  • XTVERSION(CSI > 0 q)
    • アプリケーションがターミナルの詳細を照会できる。現在のレスポンスは「xterm.js」とそのバージョンとなる

デバッグ

 ブレークポイントをファイルごとにグループ化したツリー形式で表示できるようになった。設定の「debug.breakpointsView.presentation」を「tree」に変更することで有効になる。

テスト

 テストカバレッジのツールバーに、コードの未カバー領域間を簡単にジャンプできるナビゲーションボタンが追加された。コマンドパレットの「Test: Show Coverage Toolbar」コマンドを使用して、ツールバーの表示を切り替えられる。

拡張機能

 「GitHub Pull Requests」拡張機能に、プルリクエストや問題の作成、管理を可能にする新機能が追加された。

  • プルリクエストの説明Webビューから、ベースブランチの変更が可能
  • オープンなプルリクエストをWebビューからドラフトに変換可能
  • 既存のプルリクエストに対しても説明文を生成可能

拡張機能開発向けの新プロパティ

 「Quick Pick」API に、インタラクティブな選択インタフェースを作成するための2つの新プロパティが追加された。

1:promptプロパティ

 「QuickPick」の「prompt」プロパティを使用すると、入力ボックスの下に永続的な説明テキストを表示できる。ユーザーが入力している間も表示され続けるため、ガイダンスやコンテキストの提供に役立つ。

2:resourceUriプロパティ

 「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による拡張機能開発(実験的)

 ビルドステップを必要とせず、「TypeScript」で直接VS Code拡張機能を開発することが可能になった。ただし、本機能は実験的な段階にあり、テストの作成・実行方法や拡張機能の公開方法など、多くの側面がまだ未検証の状態となっている。

注目すべき修正

 一部のチャット出力でスクロールを通り過ぎる際に表示が飛び跳ねる回帰不具合(GitHubのIssue番号:283356) が修正された。

Copyright © ITmedia, Inc. All Rights Reserved.

アイティメディアからのお知らせ

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2026
人に頼れない今こそ、本音で語るセキュリティ「モダナイズ」
4AI by @IT - AIを作り、動かし、守り、生かす
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。