Anpassen, Erweitern und Validieren des Copilot Cloud Agent
GitHub Copilot Cloud Agent wird in einer sicheren, kurzlebigen GitHub Actions-Umgebung ausgeführt. Mit einigen Konfigurationsschritten können Sie diese Umgebung vorab bereitstellen, um die Zuverlässigkeit und Geschwindigkeit zu verbessern, die Funktionen des Agents mit externen Tools über das Model Context Protocol (MCP) zu erweitern und bewährte Methoden anzuwenden, um die Ausgabe des Agents vor dem Zusammenführen zu testen und zu überprüfen.
Am Ende dieser Einheit können Sie:
- Installieren Sie Tools, Abhängigkeiten und Secrets vor, um die Entwicklungsumgebung des Agents anzupassen.
- Erweitern Sie die Funktionen des Agents mithilfe des Model Context Protocol (MCP).
- Testen und validieren Sie die Agentenausgabe effektiv, bevor Sie Änderungen zusammenführen.
Vorbereitung der Entwicklungsumgebung
Tools und Abhängigkeiten vorinstallieren mitcopilot-setup-steps.yml
Erstellen Sie .github/workflows/copilot-setup-steps.yml auf dem Standardzweig Ihres Repositorys. Der Workflow muss einen einzelnen Auftrag mit dem Namen copilot-setup-stepsdefinieren. Fügen Sie alle erforderlichen Schritte zum Installieren von Abhängigkeiten oder zum Einrichten von Tools ein.
Beispiel für 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
Zulässige Konfigurationsschlüssel für den copilot-setup-steps Auftrag: steps, permissions, runs-on, container, services, snapshot, timeout-minutes (≤ 59). Jede actions/checkout-Abruftiefe wird überschrieben, um einen sicheren Rollback zu ermöglichen. Der Setupworkflow wird eigenständig ausgeführt (sodass Sie ihn überprüfen können) und dann automatisch, bevor der Agent gestartet wird.
Größere GitHub-Runner
- Fügen Sie größere Läufer zuerst hinzu
- Legen Sie in
copilot-setup-steps.ymlruns-onauf die Bezeichnung/Gruppe fest (zum Beispielubuntu-4-core). - Nur Ubuntu x64-Läufer werden unterstützt; Selbst gehostete Läufer werden nicht unterstützt.
Git LFS
Wenn Sie Git Large File Storage verwenden, aktivieren Sie sie in den Setupschritten:
jobs:
copilot-setup-steps:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v5
with:
lfs: true
Firewallanpassung
Der Standardmäßige Internetzugriff ist beschränkt, um das Exfiltrationsrisiko zu verringern. Sie können die Firewall nach Bedarf anpassen oder deaktivieren.
Erweitern mit dem Model Context Protocol (MCP)
MCP ist ein offener Standard zum Verbinden von LLMs mit Tools und Daten. Der Agent kann Tools verwenden, die von lokalen oder Remote-MCP-Servern bereitgestellt werden, um seine Funktionen zu erweitern.
Hinweis: Copilot Cloud Agent unterstützt nur MCP-Tools (nicht Ressourcen oder Eingabeaufforderungen). Remote-MCP-Server, die OAuth erfordern, werden nicht unterstützt.
Standard-MCP-Server
- GitHub MCP Server: Zugriffsprobleme, PRs und GitHub-Daten mit einem schreibgeschützten Token, das standardmäßig auf das aktuelle Repository festgelegt ist (Sie können das Token anpassen).
- Playwright MCP Server: Lesen, Interagieren mit und Erstellen von Screenshots von Webseiten, auf die innerhalb der Umgebung des Agents zugegriffen werden kann (localhost/127.0.0.1).
Repositorykonfiguration
Administratoren können MCP-Server über eine JSON-Konfiguration im Repository deklarieren. Nach der Konfiguration nutzt der Agent die verfügbaren Tools eigenständig und ohne Benachrichtigungen zur Genehmigung bei jeder Nutzung. Weitere Informationen finden Sie unter Erweitern von GitHub Copilot Cloud Agent mit MCP.
Bewährte Methoden
- Überprüfen Sie MCP-Server von Drittanbietern auf Leistungs- und Ausgabequalitätsauswirkungen.
- Bevorzugen Sie Lesetools; wenn Schreibtools vorhanden sind, lassen Sie nur die erforderlichen Elemente zu.
- Überprüfen Sie die MCP-Konfiguration sorgfältig vor dem Speichern.
Testen und Validieren der Ausgabe von Agenten
Sie bleiben für Qualität und Sicherheit verantwortlich:
- Führen Sie CI (Tests, Linter, Scans) für jeden Agent-PR durch. Diese Überprüfungen werden erst ausgeführt, wenn Sie auf „Genehmigen und Workflows ausführen“ klicken.
- Manuelles Überprüfen von Bereichen mit hohem Einfluss oder sensiblen Bereichen.
- Bitten Sie den Agent, Tests zu generieren (z. B. "Hinzufügen von Jest-Unit-Tests für alle Funktionen im
src/utils/folgenden Repo-Stil") – die Multidateitestgenerierung verwendet PRUs. - Erzwingen Sie Regelsätze, sodass PRs von Agenten vor dem Zusammenführen Tests, Scans und Linting durchlaufen müssen.
- Beschriften Sie Agent-PRs (z. B.
agent-refactor, agent-tests) zum Überwachen, Bearbeiten und bei Bedarf Zurücksetzen. - Wiederholen Sie die Anweisungen in .github/copilot-instructions.md, wenn Sie wiederholte Fehler feststellen.
- Kehren Sie bei Bedarf schnell zurück, und fordern Sie neue Änderungen vom Agent an.
Absichtliches Verwenden von PRUs zur Überprüfung
Nutzen Sie PRUs für tiefere Überprüfungsaufgaben, z. B. Testabdeckungserweiterung, Audits in Verzeichnissen oder riskante Überprüfungen. Leichte Prüfungen nutzen weniger PRUs, setzen Sie sie also bewusst ein, um den Wert zu maximieren.
Da die Konfiguration, Erweiterungen und Validierungspraktiken bereits eingerichtet sind, besteht der letzte Schritt darin, den Agenten verantwortungsvoll einzusetzen, um Aufgaben gut abzugrenzen, Umgebungen zu schützen und die Ergebnisse kontinuierlich zu überprüfen.