VS Code 1.108 AI機能完全ガイド – Agent Skillsでカスタムエージェントを構築しよう【2026年1月版】

こんにちは!2026年1月8日にリリースされたVisual Studio Code v1.108の生成AI関連機能に焦点を当てて解説します。今回の目玉は、GitHub Copilotに独自の能力を教えられるAgent S …

A
著者
AI侍
旧サイト移行記事
公開日
読了時間
11分で読めます
Share

こんにちは!2026年1月8日にリリースされたVisual Studio Code v1.108の生成AI関連機能に焦点を当てて解説します。今回の目玉は、GitHub Copilotに独自の能力を教えられるAgent Skills機能の正式導入です!

🎯 今回のAI関連アップデート概要

  • Agent Skills機能の正式導入(実験的機能)
  • Agent Sessionsビューの大幅改善
  • チャット機能のUX向上
  • ターミナルツールの自動承認ルール拡充
  • アクセシビリティの向上(ストリーミング応答対応)

🤖 Agent Skills – AIエージェントに新しい能力を教える

Agent Skillsとは?

Agent Skillsは、GitHub Copilotのコーディングエージェントに対して、専門的なワークフローやタスクを実行するための知識とリソースを追加するための仕組みです。これにより、あなたのプロジェクトやチーム固有のベストプラクティス、社内ツールの使い方、カスタムフレームワークの知識をAIに教え込むことができます。

Agent Skillsの特徴

オープンスタンダード: agentskills.ioで定義されたオープン標準に基づいています
ポータブル: VS Code、GitHub Copilot CLI、GitHub Copilot coding agentで動作します
プログレッシブディスクロージャ: 必要な時だけ関連スキルをロードし、コンテキストを効率的に使用
カスタムインストラクションとの違い: インストラクション、スクリプト、例、リソースを含む包括的な能力定義

Agent Skills vs カスタムインストラクション

特徴 Agent Skills カスタムインストラクション
目的 専門的な能力とワークフローの定義 コーディング標準とガイドラインの定義
ポータビリティ VS Code、CLI、Coding Agentで動作 VS CodeとGitHub.comのみ
コンテンツ インストラクション、スクリプト、例、リソース インストラクションのみ
スコープ タスク固有、オンデマンドでロード 常に適用(またはglobパターンで制御)
標準 オープンスタンダード VS Code固有

Agent Skillsの構造

Agent Skillsは2種類あります:

1. プロジェクトスキル(推奨)

リポジトリ内に配置し、チーム全体で共有:

.github/skills/           # スキルの配置場所(推奨)
├── database-validation/  # スキル名
│   ├── SKILL.md         # スキルの定義ファイル(必須)
│   ├── scripts/         # 実行スクリプト
│   └── resources/       # リソースファイル
└── api-testing/
    ├── SKILL.md
    └── templates/

注意: .claude/skills/ディレクトリも後方互換性のためサポートされています。

2. パーソナルスキル

ユーザープロファイルに配置し、個人用に使用:

~/.copilot/skills/        # パーソナルスキルの配置場所(推奨)
または
~/.claude/skills/         # レガシー(後方互換性)

SKILL.mdの書き方

SKILL.mdファイルは、YAMLフロントマターMarkdownボディで構成されます:

データベーススキーマ検証スキルの例


---
name: database-validation
description: Validates database schema changes and migration safety. Use this when working with database migrations, schema changes, or when keywords like 'schema', 'migration', or 'database' are mentioned.
---

# データベーススキーマ検証スキル

このスキルは、データベーススキーマの変更を検証し、マイグレーションの安全性をチェックします。

## 目的
- スキーマの整合性を保証
- マイグレーションファイルのバリデーション
- データ損失のリスクを検出

## トリガー条件
このスキルは以下の場合に自動的にロードされます:
- マイグレーションファイル('*.sql', '*/migrations/*')が変更されたとき
- 'schema', 'migration', 'database'などのキーワードがリクエストに含まれるとき

## 実行内容
1. スキーマ定義の構文チェック
2. 外部キー制約の整合性検証
3. インデックスの存在確認
4. ロールバックスクリプトの有無確認

## 推奨される使い方
- マイグレーション作成前に必ず実行
- PRレビュー前のチェックリストとして活用
- 本番環境適用前の最終確認

YAMLフロントマターの必須フィールド

フィールド 必須 説明
name スキルの一意な識別子。小文字、ハイフン区切り(例: webapp-testing)。最大64文字。
description スキルが何をするかと、いつ使うかの説明。Copilotがスキルをロードするタイミングを判断するために具体的に記述。最大1024文字。

有効化方法

設定ファイルでchat.useAgentSkillsを有効にします:

{
  "chat.useAgentSkills": true
}

VS Codeを再起動すれば、Agent Skillsが自動検出されます!

実用的なユースケース

1. 社内UIコンポーネントライブラリスキル

---
name: company-ui-components
description: Guide for using company's React component library @company/ui-components. Use this when working with UI components, forms, buttons, or modals.
---

# 社内UIコンポーネントライブラリスキル

## 概要
当社のReactコンポーネントライブラリ@company/ui-componentsの
使用方法をガイドします。

## コンポーネント一覧
- `Button>`: プライマリ、セカンダリ、テキストボタン
- `Modal>`: モーダルダイアログ(zIndex 1000)
- `Form>`: バリデーション付きフォーム

## 推奨パターン
- 必ず`ThemeProvider`でラップ
- `data-testid`属性を必ず付与
- アクセシビリティ対応(ARIA属性)を忘れずに

## 使用例
\`\`\`jsx
import { Button, ThemeProvider } from '@company/ui-components';

function App() {
  return (
    <ThemeProvider>
      <Button variant="primary" data-testid="submit-button">
        送信
      </Button>
    </ThemeProvider>
  );
}
\`\`\`

2. REST APIデザインスキル

---
name: rest-api-design
description: Company REST API design standards and conventions. Use this when creating or modifying API endpoints, request/response formats, or error handling.
---

# REST APIデザインスキル

## エンドポイント命名規則
- リソースは複数形: `/api/users`, `/api/products`
- IDは`/api/users/{userId}`形式
- アクション: POST `/api/users/{userId}/activate`

## レスポンス形式
すべてのAPIレスポンスは以下の形式:

\`\`\`json
{
  "success": true,
  "data": { ... },
  "error": null,
  "timestamp": "2026-01-13T10:00:00Z"
}
\`\`\`

## エラーハンドリング
- 400: バリデーションエラー
- 401: 認証エラー
- 403: 権限エラー
- 404: リソース未存在
- 500: サーバーエラー

## 認証
すべてのエンドポイントは`Authorization: Bearer {token}`ヘッダーが必要です。

3. E2Eテストスキル

---
name: e2e-testing
description: End-to-end testing with Playwright. Use this when creating or debugging browser-based tests, test automation, or UI testing.
---

# E2Eテストスキル

## テスト構成
- Playwrightを使用
- `tests/e2e/`ディレクトリに配置
- `*.spec.ts`命名規則

## ページオブジェクトパターン

\`\`\`typescript
export class LoginPage {
  constructor(private page: Page) {}

  async login(email: string, password: string) {
    await this.page.fill('[data-testid="email"]', email);
    await this.page.fill('[data-testid="password"]', password);
    await this.page.click('[data-testid="login-button"]');
  }

  async getErrorMessage() {
    return await this.page.textContent('[data-testid="error-message"]');
  }
}
\`\`\`

## 実行方法

\`\`\`bash
npm run test:e2e        # 全テスト実行
npm run test:e2e:ui     # UIモードで実行
npm run test:e2e:debug  # デバッグモード
\`\`\`

## ベストプラクティス
- ロールベースのセレクタを優先: `page.getByRole('button', { name: '送信' })`
- 動的コンテンツには`data-testid`を使用
- テストは独立性を保つ
- スクリーンショットは失敗時のみ

スキルの動作メカニズム(プログレッシブディスクロージャ)

Agent Skillsは3段階のロードシステムでコンテキストを効率的に使用します:

レベル1: スキル発見

Copilotは常に利用可能なすべてのスキルのnamedescriptionを把握しています。この軽量なメタデータにより、どのスキルが関連しているかを判断します。

レベル2: インストラクションのロード

リクエストがスキルの説明と一致する場合のみ、SKILL.mdのボディをコンテキストにロードします。

レベル3: リソースへのアクセス

スキルディレクトリ内の追加ファイル(スクリプト、例、ドキュメント)は、Copilotが参照する時のみロードされます。

このアーキテクチャにより、多数のスキルをインストールしてもコンテキストを圧迫せず、必要なものだけが自動的にロードされます!

共有スキルの活用

コミュニティが作成したスキルを活用できます!

推奨リソース

使用方法

  1. リポジトリから利用したいスキルを探す
  2. スキルディレクトリを.github/skills/にコピー
  3. SKILL.mdを確認し、必要に応じてカスタマイズ
  4. リソースを追加・修正

セキュリティ注意: 共有スキルを使用する前に必ず内容を確認してください。エージェントがターミナルや各種ツールを実行する際の前提と制御は、Tools(ツールの概念)およびAgent toolsで説明されています。併せて Copilot Chat も参照してください。

ベストプラクティス

スキルは小さく、焦点を絞る: 1つのスキルは1つの責務に
明確なトリガー条件を定義: descriptionに「いつ使うか」を具体的に記述
実例を含める: コード例やテンプレートを豊富に
定期的に更新: プロジェクトの進化に合わせて更新
チームで共有: .github/skills/をGit管理下に置く
YAMLフロントマターを必ず記述: nameとdescriptionは必須

公式ドキュメント

詳細は以下をチェック!


💬 Agent Sessionsビューの改善

Agent Sessionsビューが大幅に使いやすくなりました!

主な改善点

  • キーボードアクセス対応: アーカイブ、既読状態の変更、セッションを開くなどの操作がキーボードで可能に
  • セッションのグルーピング: 状態(アクティブ/アーカイブ済み)や経過時間でグループ化
  • 変更ファイル情報の表示: 各セッションで変更されたファイルと関連するPull Requestを表示
  • 複数セッションの一括アーカイブ: グループセクションから複数のセッションをまとめてアーカイブ可能
  • アクセシビリティの全般的な改善

設定変更: chat.viewSessions.orientationautoオプションが廃止され、sideBySideを使用するようになりました。


🎨 チャット機能のUX向上

1. チャットピッカーの刷新

Quick Pickでチャットセッションを選択する際、Agent Sessionsビューと同じ情報をベースにした新しいUIになりました!

アクセス方法:

  • チャットタイトルをクリック
  • コマンドパレットでagentと入力(Ctrl+P)

2. チャットタイトルコントロールの改善

Activity Barの設定に関わらず、チャットビューのタイトルコントロールが常に表示されるようになりました。タイトルをクリックすると、すぐに別のセッションにジャンプできます。

3. 再起動時は空のチャットを開く

設定: chat.restoreLastPanelSession

デフォルトで、VS Code再起動時に空のチャットビューが開くようになりました。以前のセッションは、Agent Sessionsコントロールからアクセス可能です。

以前の挙動(前回のセッションを復元)に戻したい場合は、設定で変更できます。


🔧 ターミナルツールの自動承認機能拡充

新たに自動承認されるコマンド

設定: chat.tools.terminal.enableAutoApprove

ターミナル自動承認が有効な場合、以下のコマンドがデフォルトで自動承認されるようになりました:

git ls-files
git --no-pager <safe_subcommand>
git -C <dir> <safe_subcommand>
rg (--pre と --hostname-bin を除く)
sed (一部の引数と使用パターンを除く)
Out-String (PowerShell)

npmスクリプトの自動承認

設定: chat.tools.terminal.autoApproveWorkspaceNpmScripts

package.jsonに含まれるnpmスクリプトは、npmpnpmyarn経由で実行する場合、デフォルトで自動承認されます!

理由:

  • エージェントの使用にはすでにWorkspace Trustが必要
  • エージェントはpackage.jsonのような重要ファイルの編集から保護されている
  • 開発効率の向上

無効化したい場合は、設定で変更可能です。

セッション/ワークスペース用ルールの追加

許可コマンドのドロップダウンに、新しいオプションが追加されました:

  • 現在のセッション用に許可: セッション中のみ有効
  • ワークスペース用に許可: このワークスペースで常に有効

シェル履歴からの除外

設定: chat.tools.terminal.preventShellHistory

シェルインテグレーションが有効な場合、ターミナルツールが実行するコマンドはシェル履歴に含まれなくなりました!対応シェル: bash、zsh、pwsh、fish

従来通り履歴に含めたい場合は、設定で変更できます。


♿ アクセシビリティの向上

ストリーミングチャット応答に対応

Accessible View(アクセシブルビュー)が、チャット応答のストリーミング表示に対応しました!

これまでは、更新された内容を見るためにAccessible Viewを閉じて再度開く必要がありましたが、v1.108からはリアルタイムでAI応答を監視できます。スクリーンリーダーユーザーにとって大きな改善です!

MCPサーバー出力の除外

ノイズを減らすため、MCP(Model Context Protocol)サーバーの出力は、デフォルトでAccessible Viewから除外されるようになりました。標準的なチャット出力は引き続き完全にアクセス可能です。


📦 その他のアップデート(簡潔版)

エディタ機能

  • プロファイルのドラッグ&ドロップインポート: .code-profileファイルをD&Dで簡単インポート
  • パンくずリストのパスコピー: Copy Breadcrumbs Pathコマンドでパスをコピー
  • Go to Symbol in Workspaceで特殊文字対応: #などの特殊文字を含むクエリに対応

コード編集

  • 新しいスニペット変換: snakecasekebabcase変換を追加

ソース管理(Git)

  • Git Blame設定: 空白無視、ホバー無効化の設定追加
  • コミットメッセージエディタ改善: アクションボタンの配置変更
  • ワークツリー表示(実験的): Repositoriesビューにワークツリーノード追加

ターミナル

  • IntelliSenseのUX刷新: デフォルトでCtrl+Spaceトリガーに変更
  • カスタムグリフ拡充: 約800文字のグリフをサポート
  • カーリーアンダーラインの改善: より美しいレンダリング
  • リサイズ時のディメンション表示: 列×行数を視覚的に表示
  • パフォーマンス向上: ペースト処理の高速化、クラッシュ修正
  • VT機能追加: Synchronized output、XTVERSIONサポート

デバッグ

  • ブレークポイントのツリー表示: ファイルごとにグループ化可能

テスト

  • カバレッジナビゲーション: カバレッジされていない領域へのジャンプボタン追加

拡張機能開発

  • Quick Pick API拡張: promptresourceUriプロパティ追加

エンジニアリング

  • 大規模なissueクリーンアップ: 5,951件のissueをクローズ、1,203件をトリアージ
  • TypeScriptで拡張機能を直接作成(実験的): ビルドステップなしで開発可能に

🎥 参考リソース

公式動画

コミュニティ

メディア記事

公式ドキュメント


🚀 まとめと実践ガイド

VS Code 1.108は、Agent Skillsというオープンスタンダードに基づく画期的な機能により、GitHub Copilotを自分のプロジェクトに最適化できるようになりました!

今すぐ試すべきこと

  1. Agent Skillsを有効化 { "chat.useAgentSkills": true }
  2. 最初のスキルを作成
    • .github/skills/my-first-skill/ディレクトリを作成
    • YAMLフロントマター付きのSKILL.mdを作成
    • プロジェクトのルールやベストプラクティスを記述
    • チャットで試してみる!
  3. コミュニティスキルを探索
  4. チームで共有
    • スキルをGitにコミット
    • チーム全員がAIから一貫したガイダンスを受けられる

実務での活用シーン

新メンバーのオンボーディング: 社内ルールをスキル化し、AIがガイド
コードレビューの効率化: レビュー基準をスキル化し、PRの品質向上
ドキュメント整備: ベストプラクティスをスキルとして明文化
技術的負債の削減: 非推奨パターンの警告をスキルに含める
クロスツール活用: VS Code、CLI、Coding Agentで同じスキルを利用

導入時のポイント

  • 小さく始める: まずは1つのスキルから
  • YAMLフロントマターを正しく記述: nameとdescriptionは必須
  • descriptionに「いつ使うか」を明記: Copilotが適切にスキルを選択できるように
  • 継続的に改善: フィードバックに基づいて更新
  • チームで議論: スキルの内容をチームでレビュー
  • 実例を豊富に: コード例やテンプレートを充実させる
  • セキュリティレビュー: 共有スキルは使用前に必ず内容確認

Agent Skillsの未来

Agent Skillsはオープンスタンダードとして、今後さまざまなAIツールで利用可能になる予定です。一度作成したスキルが複数のツールで動作するため、投資効果が高く、長期的に価値を提供し続けます。

VS Code 1.108のAgent Skillsで、あなたのAI開発アシスタントをカスタマイズし、開発効率を飛躍的に向上させましょう! 🤖✨

ぜひ試してみて、感想をコメント欄で共有してください!


WordPress用タグ候補

  1. VS Code
  2. GitHub Copilot
  3. Agent Skills
  4. 生成AI
  5. AI開発ツール
  6. コーディングアシスタント
  7. VS Code 1.108
  8. 開発生産性
  9. AIカスタマイズ
  10. 2026年最新