Přizpůsobení, rozšíření a ověření agenta Copilot Cloud

Dokončeno

GitHub Copilot Cloud Agent běží v zabezpečeném dočasném prostředí GitHub Actions. Pomocí několika kroků konfigurace můžete toto prostředí předem otestovat a urychlit, rozšířit možnosti agenta pomocí externích nástrojů prostřednictvím protokolu MCP (Model Context Protocol) a použít osvědčené postupy k otestování a ověření výstupu agenta před sloučením.

Na konci této lekce budete schopni:

  • Předinstalované nástroje, závislosti a tajné kódy pro přizpůsobení vývojového prostředí agenta
  • Rozšiřte možnosti agenta pomocí protokolu MCP (Model Context Protocol).
  • Před sloučením změn efektivně otestujte a ověřte výstup agenta.

Předběžné nasazení vývojového prostředí

Předinstalovat nástroje a závislosti pomocícopilot-setup-steps.yml

Vytvořte .github/workflows/copilot-setup-steps.yml na výchozí větvi vašeho úložiště. Pracovní postup musí definovat jednu úlohu s názvem copilot-setup-steps. Uveďte všechny kroky potřebné k instalaci závislostí nebo nastavení nástrojů.

Příklad pro TypeScript:

name: "Copilot Setup Steps"

on:
  workflow_dispatch:
  push:
    paths:
      - .github/workflows/copilot-setup-steps.yml
  pull_request:
    paths:
      - .github/workflows/copilot-setup-steps.yml

jobs:
  copilot-setup-steps:
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
      - name: Checkout code
        uses: actions/checkout@v5
      - name: Set up Node.js
        uses: actions/setup-node@v4
        with:
          node-version: "20"
          cache: "npm"
      - name: Install JavaScript dependencies
        run: npm ci

Povolené konfigurační klíče pro copilot-setup-steps úlohu: steps, permissions, runs-on, container, services, snapshot, timeout-minutes (≤ 59). Všechny actions/checkout hloubky načítání se přepíše, aby bylo možné bezpečné vrácení zpět. Pracovní postup instalace běží samostatně (abyste ho mohli ověřit) a pak automaticky před spuštěním agenta.

Větší spouštěče hostované na GitHubu

  • Přidejte nejprve větší běžce
  • V copilot-setup-steps.yml nastavte runs-on na popisek/skupinu (například ubuntu-4-core).
  • Podporují se pouze spouštěče Ubuntu x64; Spouštěče v místním prostředí se nepodporují.

Git LFS

Pokud používáte úložiště Git Large File Storage, povolte ho v krocích nastavení:

jobs:
  copilot-setup-steps:
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
      - uses: actions/checkout@v5
        with:
          lfs: true

Přizpůsobení brány firewall

Výchozí přístup k internetu je omezený, aby se snížilo riziko exfiltrace. V případě potřeby můžete bránu firewall přizpůsobit nebo zakázat dle zásad organizace.

Rozšíření s protokolem MCP (Model Context Protocol)

MCP je otevřený standard pro připojení LLM k nástrojům a datům. Agent může pomocí nástrojů poskytovaných místními nebo vzdálenými servery MCP rozšířit své možnosti.

Poznámka: Copilot Cloud Agent podporuje pouze nástroje MCP (nikoli prostředky nebo výzvy). Vzdálené servery MCP, které vyžadují OAuth, se nepodporují.

Výchozí servery MCP

  • GitHub MCP Server: Přístup k problémům, pull requestům a datům GitHubu s tokenem jen pro čtení, který je ve výchozím nastavení omezující se na aktuální úložiště (token můžete přizpůsobit).
  • Playwright MCP Server: Čtení, interakce s webovými stránkami a pořizování snímků obrazovky s webovými stránkami přístupnými v prostředí agenta (localhost/127.0.0.1).

Konfigurace úložiště

Správci mohou deklarovat servery MCP prostřednictvím konfigurace JSON v úložišti. Jakmile je agent nakonfigurovaný, autonomně používá dostupné nástroje bez nutnosti schvalování použití. Viz Rozšíření agenta GitHub Copilot Cloud pomocí MCP.

Osvědčené postupy

  • Zkontrolujte servery MCP třetích stran a zkontrolujte, jestli to má vliv na výkon a kvalitu výstupu.
  • Preferovat nástroje pro čtení; pokud existují nástroje pro zápis, povolte pouze to, co je potřeba.
  • Před uložením pečlivě ověřte konfiguraci MCP.

Testování a ověřování výstupu agenta

Za kvalitu a zabezpečení zůstáváte zodpovědní:

  • Spusťte CI (testy, lintery, skenování) pro každou žádost o sloučení agenta; tyto kontroly se nespustí, dokud neschválíte pracovní postupy a spustíte je.
  • Ručně zkontrolujte oblasti s vysokým dopadem nebo citlivými oblastmi.
  • Požádejte agenta, aby vygeneroval testy (např. "Přidejte jednotkové testy Jest pro všechny funkce v src/utils/ v souladu se stylem úložiště") – generování testů s více soubory spotřebovává PRUs.
  • Vynucujte sady pravidel, aby pull requesty agenta musely před sloučením procházet testy, skenováním a lintováním.
  • Označte žádosti o přijetí změn agentů (např. agent-refactor, agent-tests) pro monitorování, řízení a vrácení zpět v případě potřeby.
  • Iterujte pokyny v souboru .github/copilot-instructions.md, když se zobrazí opakované chyby.
  • V případě potřeby se můžete rychle vrátit a požádat o nové změny od agenta.

Záměrné použití PRUs pro ověřování

Využijte programovatelné real-time jednotky pro složitější úkoly ověřování, jako je rozšíření pokrytí testů, audity v rámci adresářů nebo skenování rizikových oblastí. Zjednodušené kontroly spotřebovávají méně jednotek PRU, takže je záměrně použijte k maximalizaci hodnoty.

Při použití konfigurace, rozšíření a ověřovacích postupů je posledním krokem použití zodpovědného rozsahu úloh agenta, zajištění ochrany prostředí a průběžné kontroly výsledků.