OpenCode-Befehlszeile verwenden
Auf dieser Seite wird beschrieben, wie Sie die OpenCode-Befehlszeile (CLI) mit einer Gemini Enterprise Agent Platform Workbench-Instanz verwenden.
Dieses Dokument richtet sich an Datenanalysten, Data Scientists und Datenentwickler, die mit Agent Platform Workbench arbeiten. In diesem Dokument wird davon ausgegangen, dass Sie wissen, wie Sie Code in einer Notebook-Umgebung schreiben.
Übersicht
OpenCode ist ein Open-Source-KI-Agent für die Programmierung, der in einem Terminal ausgeführt wird. Weitere Informationen finden Sie unter opencode.ai.
Wenn ein Administrator die OpenCode-Befehlszeile aktiviert, ist sie in einem Terminal in der JupyterLab-Oberfläche Ihrer Agent Platform Workbench-Instanz verfügbar. Sie können damit die Notebooks und Dateien auf Ihrer Instanz bearbeiten und Shell-Befehle sowie Cloud de Confiance by S3NS -Befehle ausführen, indem Sie Anweisungen in natürlicher Sprache geben.
Beschränkungen
Beachten Sie die folgenden Einschränkungen, wenn Sie die OpenCode-Befehlszeile mit der Agent Platform Workbench verwenden:
OpenCode ist nur eine Befehlszeile. Eine grafische Chatoberfläche und erweiterte Tools im Editor sind nicht enthalten.
Wenn Sie OpenCode auffordern, ein Notebook zu ändern, ändert OpenCode die Notebook-Datei direkt auf dem Laufwerk der Instanz. Daher können Sie Änderungen, die von OpenCode vorgenommen wurden, nicht mit der Schaltfläche Rückgängig des Notebook-Editors oder mit Strg + Z (Befehlstaste + Z unter macOS) rückgängig machen. Sie können OpenCode jedoch mit einem Befehl in natürlicher Sprache wie
Undo your last changeauffordern, eine Änderung rückgängig zu machen.Da OpenCode direkt auf die Festplatte schreibt, kann es eine Datei ändern, die Sie auch in JupyterLab geöffnet haben. Wenn Sie nicht gespeicherte Änderungen in einem Notebook haben, speichern Sie diese, bevor Sie OpenCode bitten, dieses Notebook zu ändern.
OpenCode wird mit den Anmeldedaten ausgeführt, die auf Ihrer Instanz aktiv sind. Standardmäßig sind dies die Dienstkonto-Anmeldedaten Ihrer Agent Platform Workbench-Instanz, sodass OpenCode auf dieselben Ressourcen wie die Instanz zugreifen kann. Wenn Sie eine andere Identität auf der Instanz authentifizieren (z. B. durch Ausführen von
gcloud auth loginodergcloud auth application-default login), verwendet OpenCode stattdessen die Berechtigungen dieser Identität.
Hinweis
-
In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Cloud de Confiance project.
Enable the Compute Engine, Notebooks, and Agent Platform APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
Erforderliche Rollen
Wenn Sie die OpenCode-Befehlszeile in Agent Platform Workbench verwenden möchten, müssen Sie dem Nutzer der Agent Platform Workbench-Instanz und dem Dienstkonto der Instanz Berechtigungen gewähren.
Dem Nutzer der Instanz Berechtigungen gewähren
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Agent Platform User (roles/aiplatform.user) für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwenden der OpenCode-Befehlszeile in einer Agent Platform Workbench-Instanz benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Dem Dienstkonto Ihrer Instanz eine Berechtigung gewähren
Damit das Dienstkonto Ihrer Agent Platform Workbench-Instanz die erforderliche Berechtigung hat, um die OpenCode-Befehlszeile in einer Agent Platform Workbench-Instanz auszuführen, bitten Sie Ihren Administrator, dem Dienstkonto Ihrer Agent Platform Workbench-Instanz die IAM-Rolle Agent Platform User (roles/aiplatform.user) für das Projekt zuzuweisen.
Diese vordefinierte Rolle enthält die Berechtigung aiplatform.endpoints.predict, die erforderlich ist, damit die OpenCode-Befehlszeile in einer Agent Platform Workbench-Instanz ausgeführt werden kann.
Ihr Administrator kann dem Dienstkonto Ihrer Agent Platform Workbench-Instanz möglicherweise auch diese Berechtigung mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erteilen.
OpenCode-Befehlszeile aktivieren
Die OpenCode-Befehlszeile ist nur auf Agent Platform Workbench-Instanzen verfügbar, die das Debian 12-Image (workbench-instances-2603) verwenden. Er ist nicht auf Instanzen installiert, die das Debian 11-Image (workbench-instances) verwenden.
Die OpenCode-Befehlszeile ist auf unterstützten Instanzen standardmäßig aktiviert. Wenn Sie sie deaktivieren möchten, setzen Sie den Instanzmetadatenschlüssel enable-opencode auf false. Weitere Informationen finden Sie unter Features über Metadaten verwalten.
OpenCode-Befehlszeile verwenden
Rufen Sie in der Cloud de Confiance Console die Seite Instanzen auf.
Klicken Sie neben dem Namen einer Agent Platform Workbench-Instanz auf JupyterLab öffnen.
Klicken Sie in JupyterLab auf Datei > Neuer Launcher.
Klicken Sie auf dem Tab Launcher im Abschnitt Sonstiges auf die Kachel OpenCode.
Ein Terminal wird geöffnet und die OpenCode-Befehlszeile wird gestartet.
Geben Sie einen Prompt ein, z. B. „Erstelle ein neues Notebook mit dem Namen ‚test-notebook‘“.
Wenn OpenCode eine Aktion vorschlägt, z. B. das Bearbeiten einer Datei oder das Ausführen eines Shell-Befehls, prüfen Sie sie und genehmigen oder lehnen Sie sie ab. Weitere Informationen finden Sie unter Toolaktionen genehmigen.
Tool-Aktionen genehmigen
Standardmäßig bittet OpenCode in Agent Platform Workbench um Ihre Genehmigung, bevor eine Aktion ausgeführt wird, z. B. das Bearbeiten einer Datei, das Ausführen eines Shell-Befehls oder das Abrufen einer URL. Prüfen Sie jede vorgeschlagene Aktion, bevor Sie sie genehmigen.
Diese Standardeinstellung schützt vor Prompt Injections. Ein Notebook, ein Script oder eine Webseite, die von OpenCode gelesen wird, könnte versteckte Anweisungen enthalten, die versuchen, den Agenten dazu zu bringen, Befehle auszuführen, die Sie nicht beabsichtigt haben, z. B. das Senden Ihrer Daten an eine externe Adresse. Da OpenCode mit den Anmeldedaten Ihrer Instanz ausgeführt wird, haben Sie durch die Genehmigungspflicht die Möglichkeit, eine solche Aktion zu sehen und zu stoppen, bevor sie ausgeführt wird.
Drittanbietermodelle verwenden
Standardmäßig ist OpenCode in Agent Platform Workbench so konfiguriert, dass nur die Gemini- und Claude-Modelle verwendet werden, die über die Gemini Enterprise Agent Platform in Ihrem Projekt bereitgestellt werden. Diese Anfragen werden mit den Anmeldedaten Ihrer Instanz gegenüber der Gemini Enterprise Agent Platform Ihres Projekts authentifiziert. Sie bleiben also innerhalb IhresCloud de Confiance by S3NS -Projekts und unterliegen den dafür geltenden Sicherheitskontrollen.
OpenCode unterstützt auch Modellanbieter, deren Anfragen außerhalb Ihres Projekts gesendet werden. Dazu gehören Google AI Studio (die Gemini Developer API), die trotz der Bereitstellung von Gemini-Modellen ein separater Dienst ist, der sich mit einem persönlichen API-Schlüssel und nicht mit den Anmeldedaten Ihres Projekts authentifiziert, sowie nicht von Google stammende Anbieter wie OpenAI und die direkten APIs von Anthropic. Alle diese Optionen sind standardmäßig deaktiviert. Sie können einen aktivieren, indem Sie Ihre eigene OpenCode-Konfiguration bearbeiten und den API-Schlüssel des Anbieters angeben.
Zugriff auf die OpenCode-Befehlszeile steuern
Der Zugriff auf OpenCode wird durch zwei unabhängige Einstellungen gesteuert: ob der OpenCode-Launcher angezeigt wird und ob die zugrunde liegenden Modelle aufgerufen werden können. Diese sind voneinander getrennt. Wenn Sie den Launcher ausblenden, werden die Modelle nicht blockiert. Wenn Sie die Modelle einschränken, wird der Launcher nicht entfernt. Konfigurieren Sie daher beide entsprechend den Richtlinien Ihrer Organisation.
Festlegen, ob der OpenCode-Launcher angezeigt wird
Mit dem Instanzmetadatenschlüssel enable-opencode können Sie steuern, ob OpenCode auf einer Instanz angeboten wird. OpenCode ist standardmäßig aktiviert: Die OpenCode-Kachel wird im JupyterLab-Launcher angezeigt, es sei denn, ein Administrator legt den Schlüssel auf false fest, wodurch sie ausgeblendet wird.
Mit dieser Einstellung wird nur gesteuert, ob der Launcher angezeigt wird. Der Zugriff auf die Modelle wird dadurch nicht blockiert: Ein Nutzer, der die Umgebung der Instanz erreichen kann (z. B. über ein Terminal), kann OpenCode weiterhin starten und alle Modelle aufrufen, für die seine Anmeldedaten berechtigt sind. Wenn Sie einschränken möchten, was OpenCode tun kann, steuern Sie den Zugriff auf die Modelle wie im nächsten Abschnitt beschrieben.
Zugriff auf die Modelle steuern
OpenCode ruft Modelle über die Gemini Enterprise Agent Platform mit den Anmeldedaten Ihrer Instanz auf. Das ist dieselbe Gemini Enterprise Agent Platform-Authentifizierung, die auch die Gemini CLI verwendet. Nutzer müssen keinen API-Schlüssel eingeben, um die Standardmodelle von Gemini und Claude zu verwenden. Eine Anfrage ist nur erfolgreich, wenn die Identität der Instanz berechtigt ist, das Modell aufzurufen, und das Projekt Zugriff darauf hat. Mit dieser Einstellung wird festgelegt, ob OpenCode Antworten generieren kann. Sie gilt unabhängig davon, wie OpenCode gestartet wird.
Verwenden Sie zum Verwalten des Modellzugriffs dieselben Einstellungen, die für alle Gemini Enterprise Agent Platform-Clients gelten:
Wenn Sie bestimmte Modelle auf Organisations-, Ordner- oder Projektebene zulassen oder einschränken möchten, richten Sie eine Organisationsrichtlinie ein. Weitere Informationen finden Sie unter Zugriff auf Model Garden-Modelle steuern.
Wenn Sie verhindern möchten, dass eine Identität Modellendpunkte für die Inferenz verwendet, weisen Sie ihr nicht die Berechtigung
aiplatform.endpoints.predictzu.Für Modelle von Anbietern außerhalb Ihres Projekts (z. B. die direkte API von Anthropic) muss der Nutzer den API-Schlüssel dieses Anbieters in seiner eigenen OpenCode-Konfiguration angeben. Diese Modelle sind standardmäßig deaktiviert. Weitere Informationen finden Sie unter Modelle von Drittanbietern verwenden.
Nächste Schritte
Weitere Informationen zu Gemini Enterprise Agent Platform-Modellen
Informationen zum Festlegen von Instanzmetadaten finden Sie unter Features über Metadaten verwalten.