Skip to main content

Was ist Devins Umgebung?

Devins Umgebung ist der Workspace, in dem Devin arbeitet: eine Linux-basierte virtuelle Maschine mit Ihren geklonten Repositorys, installierten Tools, eingerichteten Abhängigkeiten, festgelegten Umgebungsvariablen und angewendeter Konfiguration. Sie ist das Äquivalent zum Laptop eines Entwicklers: das Betriebssystem, das Terminal, die installierte Toolchain, die geklonten Repos sowie die Zugangsdaten und Settings, die diese Tools benötigen. Ihre Umgebungskonfiguration wird als Snapshot gespeichert: ein unveränderliches, bootfähiges Image, das jeder Sitzung als Ausgangspunkt dient. Konfigurieren Sie sie einmal, und jede Sitzung startet in diesem bewährten Zustand.

Warum die Umgebungskonfiguration wichtig ist

Devin arbeitet wie jeder Entwickler: Es klont Repos, installiert Abhängigkeiten, führt Linting aus, kompiliert Code und führt Tests aus. Dafür braucht es eine funktionierende Umgebung. Ohne sie kann Devin Ihr Projekt nicht bauen, Ihre Tests nicht ausführen und seine eigene Arbeit nicht verifizieren. Es wäre, als würden Sie einen Entwickler einstellen, ihm aber keinen Laptop geben. Die Umgebungskonfiguration stellt Devin die Tools, Laufzeitumgebungen, Zugangsdaten, Umgebungsvariablen und das Projektwissen bereit, die es braucht, um ab der ersten Sitzung produktiv zu sein. Außerdem werden Sitzungen dadurch schneller: Ihr Snapshot enthält bereits geklonte Repos und installierte Abhängigkeiten, sodass Devin sofort produktiv arbeiten kann, statt jedes Mal alles von Grund auf einzurichten. Das ist mit Abstand die wirksamste Maßnahme, um Devins Effektivität in Ihrer Codebasis zu verbessern.

Wie Sitzungen funktionieren

Jede Sitzung startet aus einem Snapshot, einem eingefrorenen, bootfähigen Image der Umgebung.
  1. Snapshot: Ein vorab erstelltes Image, das Ihre Repos, Tools und Abhängigkeiten enthält. Es wird durch die Konfiguration im Voraus vorbereitet.
  2. Sitzung: Devin startet eine neue Kopie des Snapshots. Jede Sitzung beginnt im selben sauberen Zustand. Änderungen aus der Sitzung werden nicht in den Snapshot zurückgeschrieben.
Wenn sich Ihre Konfiguration ändert, wird automatisch ein neuer Snapshot erstellt. Jede Organisation hat genau einen aktiven Snapshot. Jede Sitzung in dieser Organisation startet aus demselben Snapshot.

Bevor Sie beginnen

Bevor Sie Devins Umgebung konfigurieren, stellen Sie sicher, dass Devin auf Ihre Repositorys zugreifen kann:
  1. Verbinden Sie Ihren SCM-Anbieter. Gehen Sie zu Settings > Connections und verbinden Sie GitHub, GitLab, Bitbucket oder Azure DevOps. Wählen Sie während der Einrichtung aus, auf welche Repositorys Devin zugreifen darf. Ausführliche Anweisungen finden Sie in den Integrationsanleitungen.
Das ist alles. Sobald die Verbindung hergestellt ist, können Sie mit der Umgebungskonfiguration fortfahren.
  1. Verbinden Sie Ihren SCM-Anbieter (Enterprise-Admin). Gehen Sie zu Enterprise Settings > Integrations und verbinden Sie Ihren SCM-Anbieter. Eine Einrichtungsanleitung finden Sie unter Git-Integrationen.
  2. Gewähren Sie jeder Organisation Zugriff auf ihre Repositorys (Enterprise-Admin). Gehen Sie zu Enterprise Settings > Repository Permissions und weisen Sie jeder Organisation Repositorys zu. Organisationen können Repositorys erst sehen oder verwenden, wenn Sie ihnen ausdrücklich Zugriff gewähren. Siehe Repository Permissions.
  3. Konfigurieren Sie die Umgebung (Org-Admin). Sobald eine Organisation Zugriff auf Repositorys hat, fahren Sie unten mit der Umgebungskonfiguration fort.
Wenn Sie diese Schritte überspringen, werden Repositorys nicht angezeigt, wenn Sie versuchen, sie Ihrer Umgebung hinzuzufügen. Devin benötigt Repository-Zugriff über Ihre Git-Integration, bevor es Repositorys klonen und Builds ausführen kann.

Richte es ein, indem du Devin fragst

Dies ist die einfachste Möglichkeit, Devins Umgebung zu konfigurieren, und funktioniert für die meisten Repositories.
Starte eine Devin-Sitzung und frage: “Richte deine Umgebung für dieses Repo ein.”
1

Devin analysiert dein Repository

Devin analysiert deine Codebasis und ermittelt, welche Tools, Laufzeitumgebungen und Abhängigkeiten benötigt werden.
2

Überprüfe die Vorschläge

Devin schlägt einen Blueprint in Form von Vorschlagskarten in der Timeline vor. Überprüfe das vorgeschlagene Setup und genehmige die Karten, die du verwenden möchtest.
3

Ein Build erstellt den Snapshot

Devin führt einen Build mit dem genehmigten Blueprint aus und erstellt den Snapshot, von dem jede Sitzung startet.
Eine vollständige Anleitung findest du unter Lass Devin das erledigen.

Umgebungsvariablen und Secrets

Umgebungsvariablen sind Teil deines Blueprints. Definiere nicht sensible Werte im Feld env eines Steps oder schreibe gemeinsam genutzte Werte in $ENVRC; Informationen zu den Mustern für $ENVRC und direnv findest du in den Umgebungsvorlagen. Devin kann Tools und Abhängigkeiten aus deinem Repository ableiten, aber keine Zugangsdaten erkennen. Speichere sensible Werte als verschlüsselte Secrets im Tab Secrets des Blueprint-Editors und referenziere sie dann als $VARIABLE_NAME. Secrets werden während Builds und Sitzungen als Umgebungsvariablen eingefügt; siehe den Leitfaden zu Blueprint-Secrets und die Referenz zu Umgebungsvariablen und Secrets.

Wählen Sie den passenden Ansatz

Devin zu fragen ist der Standard. Wenn Sie die Konfiguration selbst erstellen möchten, verwenden Sie die deklarative Konfiguration, den empfohlenen manuellen Weg. Blueprints beschreiben Ihre Umgebung, und Builds erstellen automatisch Snapshots.

Deklarative Konfiguration

Empfohlener manueller Weg. Prüfen oder bearbeiten Sie das von Devin generierte YAML, um festzulegen, was installiert wird, wie Abhängigkeiten eingerichtet werden und was Devin wissen sollte.
  • Versionskontrolliert
  • Automatische Aktualisierung
  • Tier-übergreifend kombinierbar
  • Reproduzierbar

Blueprint-Referenz

Vollständige Feldspezifikation für Blueprints: Abschnitte, Unterstützung für GitHub Actions, Umgebungsvariablen und Dateianhänge.

Vorlagenbibliothek

Blueprints zum Kopieren und Einfügen für Python, Node.js, Go, Java, Ruby, Rust und fortgeschrittene Muster.

Enterprise-Umgebungsverwaltung

Unternehmensweite Umgebungsverwaltung: 3-stufige Hierarchie, Secrets und organisationsübergreifende Konfiguration.