見出し画像

[AIDD Lv.1]GitHub Copilotエージェント高速化完全解説

AI駆動開発はAIとの反復的なやり取りが基本です。
1回1回のやり取りが遅いと効率が悪くなってしまいます。
GitHub Copilotでは事前に環境を準備しておくことができます。


エージェント実行前の環境を整えるファイル(Copilotエージェントのセットアップ)

用途

Copilot は一時的な環境でビルドやテストを実行するために依存関係をインストールしますが、LLM 任せでは遅延や失敗が起こりがちです。
そこで、リポジトリ直下に .github/workflows/copilot-setup-steps.yml を置き、単一ジョブ copilot-setup-steps で依存インストールとキャッシュを事前に自動化します。
これにより、Copilot 起動時の信頼性と速度が向上し、プロジェクトごとの言語・依存に合わせたカスタマイズも容易になります。

ファイル構造

  • name — 任意。可読性のためのタイトル。

  • onworkflow_dispatchpush: paths: など。手動実行と自己テストを両立させるのが定石。

  • jobs.copilot-setup-steps — ここにすべてのステップを集約。複数ジョブは 無視 される。

    • runs-onubuntu-latest や大型ランナー名。

    • permissions — 最小権限原則。依存取得だけなら contents: read で十分。

    • stepsactions/checkout@v4 → 依存インストール → ビルド前キャッシュ作成 … の順で並べる。

    • timeout-minutes — 上限 59 分。長大ビルドでも忘れずに設定。

    • container — Docker イメージを指定。

    • services — ワークフロー中のジョブのためのサービスコンテナ。

    • snapshot — セルフホストランナー向けの高速化オプション。

サンプル

name: Copilot Setup Steps
on:
  workflow_dispatch:
  push:
    paths:
      - .github/workflows/copilot-setup-steps.yml
jobs:
  copilot-setup-steps:
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: "22"
          cache: "npm"
      - name: Install dependencies
        run: npm ci

上記では Node.js 22 と npm キャッシュを事前に準備。エージェントは node_modules/ 完備の状態で即タスクを開始できます。

作成方法

  1. .github/workflows フォルダーにファイルを追加。

  2. デフォルトブランチへプッシュし、Actions タブから手動実行で動作確認。

  3. キャッシュヒット率と所要時間を観察し、actions/cache などで最適化。


IDE のローカル設定ファイル(settings.json)

用途

VS Code の settings.json は Copilot 拡張の挙動を細粒度に制御できます。リポジトリ共有用の .vscode/settings.json を置けば、チーム全体で同じルールと補完品質を再現可能です。

代表的な設定キー

  • github.copilot.enable — 言語別 ON/OFF。"*": true をベースに無効化言語を部分指定。

  • github.copilot.editor.enableCodeActions — 電球アイコン下で提案を表示。既定 true

  • github.copilot.chat.codeGeneration.useInstructionFiles — リポジトリの copilot-instructions.md をチャットへ自動注入(VS Code 1.102 以降は既定で有効)。

  • github.copilot.chat.agent.terminal.allowList — 危険コマンドを防ぐホワイトリスト。

  • chat.agent.maxRequests — エージェントモードの自動実行上限。

スニペット例

{
  "github.copilot.enable": {
    "*": true,
    "plaintext": false,
    "markdown": false
  },
  "github.copilot.editor.enableCodeActions": true,
  "chat.agent.maxRequests": 20
}

JSON コメントで運用ポリシーを併記すれば、Pull Request レビュー時の誤解を防げます。

作成方法

  1. コマンドパレット → “Settings: Open Settings (JSON)” で直接編集。

  2. 共有したい場合は .vscode/settings.json を Git にコミット。

  3. チームメンバーが VS Code を再読み込みすると即時適用。


まとめ

copilot-setup-steps.yml により環境を事前に準備しておくことでエージェントの処理を早くすることができます。
何十回、何百回とAIとやり取りすると少しのロスが塵積って山となります。
AI駆動開発をスピーディーに進めるためにも copilot-setup-steps.yml を正しく設定しましょう。


知識は武器とかけまして、レゴブロックと解く、その心は?
知識のひとつひとつは小さなレゴブロック
でも、組み合わせれば世界を変えるアイディアをカタチにする武器になる!

また Knowledge Oasis でお会いしましょう。
案内人は koふみ でした。

いいなと思ったら応援しよう!