> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Klassische Konfiguration

> Devins Umgebung über den klassischen interaktiven Assistenten konfigurieren.

<Info>Suchst du nach einer deklarativen Konfiguration? Unter [Deklarative Konfiguration (Blueprints)](/de/onboard-devin/environment/blueprints) findest du den empfohlenen Ansatz für neue Einrichtungen.</Info>

Devin arbeitet, indem zu Beginn jeder Sitzung ein Snapshot einer virtuellen Maschine geladen wird. Damit Devin möglichst effektiv ist, sollte dieser Snapshot alle Repositories enthalten, an denen Devin arbeiten soll, sowie alle Tools oder Abhängigkeiten, die Devin für die Arbeit an deiner Codebasis benötigt. So kann sich Devin auf das Schreiben von Code konzentrieren, anstatt jedes Mal seine Umgebung neu einrichten zu müssen!

In diesem Leitfaden zeigen wir dir, wie du Devin für eines deiner Repositories einrichtest und Devins Umgebung (den Snapshot der virtuellen Maschine) konfigurierst. Du kannst dir das so vorstellen, als würdest du Devins Laptop an seinem ersten Arbeitstag einrichten.

<Tip>
  Das korrekte Einrichten von Devins Umgebung wird Devins Leistung
  auf deiner Codebasis deutlich verbessern. Stell dir vor, jedes Mal, wenn du mit
  einer Aufgabe beginnst, würden dein Laptop und ein Teil deines Gedächtnisses gelöscht – genau
  das passiert mit Devin bei einem falschen oder unvollständigen Setup!
</Tip>

<div id="add-a-repository">
  ## Ein Repository hinzufügen
</div>

Stellen Sie zuerst sicher, dass Devin Zugriff auf Ihre Repositories hat. Repositories können jederzeit hinzugefügt werden, indem Sie Devins Zugriff konfigurieren unter:

* **Teams**: [Settings > Connections](https://app.devin.ai/settings/connections)
* **Enterprise**: [Enterprise Settings > Integrations](https://app.devin.ai/settings/connected-accounts)

Gehen Sie nun innerhalb einer Organisation zu [Devin's Machine](https://app.devin.ai/machine) und klicken Sie auf **Add repository**. Wählen Sie die Repositories aus, die Sie zu Devins Umgebung hinzufügen möchten, und klicken Sie dann auf **Start**, um mit der Konfiguration zu beginnen.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/Start-Repo-Setup.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=6337c4725e562caa5c847e46b5d3353c" alt="Devin" width="1764" height="548" data-path="images/onboard-devin/Start-Repo-Setup.png" />
</Frame>

<Tip>
  Die Maschine von Devin läuft auf Ubuntu 22.04 (x86\_64). Drücken Sie im Terminal Strg+K, um automatisch einen Installationsbefehl generieren zu lassen.
</Tip>

<div id="set-up-the-repository-and-development-environment">
  ## Repository und Entwicklungsumgebung einrichten
</div>

Sobald Sie sich im Repo Setup befinden, sehen Sie drei Panels:

1. **Schritte zur Repository-Einrichtung**: Zeigt alle 8 Setup-Schritte in der richtigen Reihenfolge an, zusammen mit den resultierenden Befehlen, die in Ihrer Konfiguration gespeichert werden.
2. **Devin AI Setup Agent**: Devin kann für jeden Schritt auf Basis Ihres spezifischen Repositories Vorschläge machen und das Setup iterativ anpassen, bis es bereit zum Speichern ist.
3. **VSCode-Terminal**: Gibt Ihnen die Möglichkeit, beliebige Befehle auszuführen oder das Dateisystem direkt in der eingebetteten VSCode-Umgebung zu durchsuchen.

<div id="ai-generated-suggestions">
  ### KI-generierte Vorschläge
</div>

Wenn Sie ein Repository hinzufügen, generiert Devin automatisch Einrichtungsvorschläge für jeden Schritt anhand der Analyse Ihrer Codebasis. Sie können jeden Vorschlag einzeln annehmen oder ablehnen oder sie mit dem Devin AI Setup Agent weiter verfeinern.

<div id="repository-setup-steps">
  ### Schritte zur Repository-Einrichtung
</div>

<Steps>
  <Step title="Git Pull">
    Der Befehl, den Devin zu Beginn jeder Sitzung ausführt, um die neuesten Änderungen aus dem Repository zu holen. In den meisten Fällen solltest du den Standardbefehl beibehalten. Stelle sicher, dass Devin Zugriff auf alle Submodule im Repository hat.
  </Step>

  <Step title="Secrets konfigurieren">
    Richte alle Secrets oder Umgebungsvariablen ein, die Devin benötigt, um mit deinem Repository zu arbeiten. Siehe [Secrets konfigurieren](#configuring-secrets) für weitere Details.
  </Step>

  <Step title="Abhängigkeiten installieren">
    Befehle zur Installation der initialen Abhängigkeiten für dein Repository. Diese werden einmal während des Setups ausgeführt, um Devins Umgebung vorzubereiten.
  </Step>

  <Step title="Abhängigkeiten pflegen">
    Befehle, die Devin nach `git pull` beim Start einer Sitzung ausführt, falls neue Abhängigkeiten hinzugefügt wurden. Dies sollte in der Regel derselbe Befehl sein, den du zum Installieren von Abhängigkeiten verwendest (z. B. `npm install`, `pip install -r requirements.txt`, etc.).
  </Step>

  <Step title="Lint einrichten">
    Befehle, die Devin zum Ausführen von Linting oder zur Überprüfung auf Syntaxfehler verwenden soll. Devin prüft die Ausgabe dieser Befehle, bevor er Änderungen committet.
  </Step>

  <Step title="Tests einrichten">
    Befehle, die Devin zum Ausführen von Tests verwenden soll. Wie bei den Lint-Befehlen prüft Devin die Ausgabe dieser Befehle, bevor er Änderungen committet.
  </Step>

  <Step title="Lokale App ausführen">
    Teile Devin mit, wie dein Code lokal ausgeführt werden soll. Das ist hilfreich, wenn Devin deinen Code ausführen muss, um Änderungen zu testen oder zu debuggen. Du kannst Devins Browser verwenden, um dich bei Websites anzumelden, die Devin nutzen soll. Füge Anmeldedaten zu [secrets](/de/product-guides/secrets) hinzu, falls der Login abläuft.
  </Step>

  <Step title="Zusätzliche Hinweise">
    Füge zusätzliche Anweisungen für Devin hinzu, wenn er an diesem Repository arbeitet.
  </Step>
</Steps>

<div id="finish-or-save-setup">
  ### Einrichtung abschließen oder speichern
</div>

Sobald Sie mit der Einrichtung zufrieden sind, klicken Sie auf **Finish Setup**, um die Einrichtung zu speichern. Dadurch werden alle Befehle aus den Einrichtungs­schritten erneut ausgeführt, um Devins Umgebung vorzubereiten.

Wenn Sie mit Ihren Änderungen noch nicht fertig sind, klicken Sie auf **Finish Later**, um die Einrichtung zu speichern. Die Einrichtung bleibt dadurch als laufend markiert und Sie können später zu ihr zurückkehren. Beachten Sie jedoch, dass **immer nur eine Einrichtung gleichzeitig in Arbeit sein kann**, daher empfehlen wir diese Option nur, wenn es unbedingt notwendig ist.

<Tip>
  **Tipps zum Einrichten von Befehlen:**

  * Führen Sie Befehle zuerst im VS Code-Terminal aus, um den Cache aufzubauen, bevor Sie sie überprüfen.
  * Wenn ein Befehl in einem bestimmten Verzeichnis ausgeführt werden muss, verwenden Sie `cd` wie folgt: `cd <directory> && <command>`.
  * Wenn Ihr Projekt keinen Lint-Befehl hat, können Sie Ihren Build-Befehl einfügen, damit Devin auf Kompilierungsfehler prüft.
  * Wenn das Lint- oder Testverfahren für Ihr Projekt komplex ist, können Sie diese Schritte überspringen und sie Devin im Schritt **Additional Notes** erklären.
  * Lesen Sie den [Abschnitt zur Fehlerbehebung](#troubleshooting), wenn beim Überprüfen Ihrer Befehle Probleme auftreten.
</Tip>

<div id="configure-previously-added-repositories">
  ## Bereits hinzugefügte Repositories konfigurieren
</div>

Sie können jederzeit ein Repository unter [Settings > Devin's Machine](https://app.devin.ai/machine) bearbeiten oder ein neues hinzufügen.

Um ein bestehendes Repository zu bearbeiten, klicken Sie oben rechts auf der Seite auf **Configure**, fügen Sie Repositories hinzu, ändern oder entfernen Sie sie, wählen Sie das Repository aus, das Sie bearbeiten möchten, und klicken Sie auf **Submit**.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/Configure-Devins-Machine.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=013282a4c4e0f00111f2b150a2fa946b" alt="Devin" width="1742" height="832" data-path="images/onboard-devin/Configure-Devins-Machine.png" />
</Frame>

Alternativ können Sie das bestehende Repository, das Sie bearbeiten möchten, aus der Liste auswählen und auf **Modify repo setup** klicken, um die Setup-Schritte zu bearbeiten.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/modify-repo-setup.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=9a066de8525859099c694d420ebab1f6" alt="Devin" width="2098" height="1634" data-path="images/onboard-devin/modify-repo-setup.png" />
</Frame>

<div id="machine-version-history">
  ### Versionsverlauf der Maschine
</div>

Wenn du während der Einrichtung versehentlich eine nicht abwärtskompatible Änderung (Breaking Change) einführst, kannst du zu einem früheren Snapshot der Umgebung zurückkehren. Gehe zu [Settings > Devin's Machine](https://app.devin.ai/machine), wechsle auf den Tab **Version History** und stelle einen früheren Snapshot wieder her, von dem du weißt, dass er einwandfrei funktioniert hat.

<Frame>
  <img src="https://mintcdn.com/cognitionai-enterprise/w4vSTUGo6EvTx13l/images/onboard-devin/Devin-Machine-Version-History.png?fit=max&auto=format&n=w4vSTUGo6EvTx13l&q=85&s=fab3db71873fc8c3049a497730d4ca77" alt="Devin" width="1746" height="1082" data-path="images/onboard-devin/Devin-Machine-Version-History.png" />
</Frame>

<div id="configuring-secrets">
  ## Konfigurieren von Secrets
</div>

Secrets wie API keys, Passwörter und Tokens können im [Secrets](/de/product-guides/secrets)-Dashboard hinzugefügt werden. Wenn möglich, empfehlen wir, in Devins Umgebung eine `.env`-Datei zusammen mit [`direnv`](https://direnv.net/) zu verwenden, um Umgebungsvariablen automatisch zu verwalten. Weitere Details finden Sie im folgenden [Beispiel zur Konfiguration von Umgebungsvariablen](#configuring-environment-variables).

<div id="examples">
  ## Beispiele
</div>

Nachfolgend finden Sie einige Beispiele dafür, wie Sie Devins Umgebung für verschiedene Anwendungsfälle einrichten können.

Da Devin alle Befehle mit bash ausführt, ist eine gängige Vorgehensweise, die Datei `~/.bashrc` zu bearbeiten, um Devins Shell automatisch einzurichten. Sie können `devin ~/.bashrc` im Terminal ausführen, um die Datei in VS Code zu bearbeiten.

<div id="configuring-environments-automatically-for-different-repositories">
  ### Umgebungen für unterschiedliche Repositories automatisch konfigurieren
</div>

<Tip>
  Nach dem 24. April 2025 sollten Teams, die sich für Devin anmelden, den
  Abschnitt `custom_cd` bereits in ihrer `~/.bashrc` sehen. Sie müssen dann nur
  noch den Abschnitt für Ihre eigenen Repos anpassen.
</Tip>

Angenommen, Sie haben zwei Repositories, die unterschiedliche Versionen von Node erfordern, und Sie möchten, dass Devin automatisch für jedes Repository die richtige Version verwendet. Wir verwenden [`nvm`](https://github.com/nvm-sh/nvm), um die Node-Versionen zu installieren und zu verwalten. `nvm` sollte bereits auf Devins Maschine installiert sein.

Zuerst installieren wir die beiden Node-Versionen, indem wir die folgenden Befehle im VS-Code-Terminal ausführen:

```bash theme={null}
nvm install 18
nvm install 20
```

Öffne als Nächstes `~/.bashrc`, indem du `devin ~/.bashrc` im Terminal ausführst. Füge anschließend Folgendes zu `~/.bashrc` hinzu.

```bash theme={null}
function custom_cd() {
  builtin cd "$@"

  if [[ "$PWD" == "$HOME/repos/node18"* ]]; then
    nvm use 18 >/dev/null 2>&1
  elif [[ "$PWD" == "$HOME/repos/node20"* ]]; then
    nvm use 20 >/dev/null 2>&1
  fi
}

alias cd='custom_cd'
cd $PWD
```

Dadurch wird `nvm use 18` ausgeführt, wenn sich Devin im Repo `node18` befindet, und `nvm use 20`, wenn sich Devin im Repo `node20` befindet.

<div id="configuring-environment-variables">
  ### Konfigurieren von Umgebungsvariablen
</div>

[`direnv`](https://direnv.net/) ist auf der Maschine von Devin vorinstalliert und kann zur Verwaltung von Umgebungsvariablen für einzelne Repositories verwendet werden. Der direnv-Hook ist bereits in `~/.bashrc` konfiguriert.

Um Umgebungsvariablen für ein Repository einzurichten, erstelle eine `.envrc`-Datei im Root-Verzeichnis des Repositories. Zum Beispiel:

```bash theme={null}
export ENV_VAR=1
export ANOTHER_ENV_VAR=2
```

Zum Schluss führen wir im Terminal `direnv allow` aus, um die Umgebungsvariablen zu laden.

Devin wird nun die Umgebungsvariablen aus unserer `.envrc`-Datei in seiner Umgebung verfügbar haben, wenn er in künftigen Sitzungen in unserem Repository arbeitet.

<Tip>
  Wir empfehlen, `.envrc` zu Ihrer `.gitignore`-Datei hinzuzufügen, damit Devin sie nicht
  versehentlich ins Repository committet.
</Tip>

<div id="adding-directories-to-the-system-path">
  ### Hinzufügen von Verzeichnissen zur PATH-Umgebungsvariable
</div>

Wir können `~/.bashrc` bearbeiten, um Verzeichnisse zur PATH-Umgebungsvariable hinzuzufügen. Dadurch kann Devin die ausführbaren Dateien in diesen Verzeichnissen leichter ausführen. Zum Beispiel können wir Folgendes an `~/.bashrc` anhängen; dadurch wird das Verzeichnis `~/bin` zur PATH-Umgebungsvariable hinzugefügt.

```bash theme={null}
export PATH="$HOME/bin:$PATH"
```

Jetzt kann Devin die Programme im Verzeichnis `~/bin` ausführen, ohne den vollständigen Pfad angeben zu müssen.

<div id="logging-in-to-websites">
  ## Anmeldung bei Websites
</div>

Während der Environment-Einrichtung kannst du den Browser-Tab verwenden, um dich auf beliebigen Websites anzumelden, mit denen Devin interagieren soll. Diese Session-Cookies werden in Devins Environment gespeichert und stehen Devin in zukünftigen Sitzungen zur Verfügung. Wenn du eine Website verwendest, bei der du häufig automatisch abgemeldet wirst, solltest du Devin außerdem im [Secrets](/de/product-guides/secrets)-Dashboard mit Zugangsdaten ausstatten.

<div id="scripted-browser-use-via-playwright">
  ### Skriptgesteuerte Browsernutzung über Playwright
</div>

Für Apps, die browserbasierte Authentifizierung (SSO, OAuth usw.) oder strukturierte Dateneingabe erfordern, kann Devin Playwright-Skripte schreiben und ausführen, um diese Abläufe im eigenen laufenden Browser zu automatisieren. Sie können diese Skripte auch selbst schreiben und in Ihr Repo einchecken. Devins Chrome-Browser stellt unter `http://localhost:29229` einen **Chrome DevTools Protocol (CDP)**-Endpunkt bereit, mit dem Playwright eine Verbindung herstellen kann.

```python theme={null}
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.connect_over_cdp("http://localhost:29229")
    context = browser.contexts[0]
    page = context.pages[0] if context.pages else context.new_page()

    # Automatisieren Sie hier Ihren Login-Ablauf
    page.goto("https://your-app.com/login")
    page.fill('input[name="email"]', "user@example.com")
    page.fill('input[name="password"]', "password")
    page.click('button[type="submit"]')
    page.wait_for_url("**/dashboard")
```

Nachdem das Skript ausgeführt wurde, bleibt die authentifizierte Sitzung (Cookies, `localStorage`, Auth-Token) in Devins Browser erhalten. Devin kann dann Seiten neu laden, navigieren und normal mit der App interagieren — die Anmeldung bleibt bestehen.

<Tip>
  Speichern Sie Anmeldeskripte im Verzeichnis `.agents/skills/` Ihres Repos und verweisen Sie über [Secrets](/de/product-guides/secrets) auf Anmeldedaten, damit Devin sich in jeder Sitzung automatisch erneut authentifizieren kann. Weitere Informationen finden Sie unter [Computer Use — Scripted Browser Use](/de/work-with-devin/computer-use#scripted-browser-use-via-playwright).
</Tip>

<div id="troubleshooting">
  ## Fehlerbehebung
</div>

<div id="why-arent-my-commands-being-verified">
  ### Warum werden meine Befehle nicht verifiziert?
</div>

Wenn beim Verifizieren eines Befehls ein Fehler auftritt, sehen Sie sich dessen Ausgabe an und versuchen Sie außerdem, den Befehl selbst in einem neuen Terminal auszuführen.

1. Überprüfen Sie den Pfad der ausführbaren Datei, die Sie ausführen. Wir empfehlen nachdrücklich, entweder absolute Pfade zu verwenden oder [ausführbare Dateien zum System-PATH hinzuzufügen](#adding-directories-to-the-system-path).
2. Stellen Sie sicher, dass Sie die notwendigen Tools und Abhängigkeiten installiert haben, um den Befehl auszuführen. Falls nicht, nutzen Sie den Setup Agent oder das VS Code Terminal, um sie zu installieren, und verifizieren Sie anschließend erneut.
3. Überprüfen Sie, dass die Befehle im richtigen Verzeichnis ausgeführt werden. Falls die Befehle in einem bestimmten Verzeichnis laufen müssen, können Sie `cd` wie folgt verwenden: `cd <directory> && <command>`.
4. Überprüfen Sie, dass Sie die **richtigen Sprachversionen** verwenden (z. B. die richtigen Versionen von Node, Python usw.).
5. Möglicherweise möchten Sie Ihre **`~/.bashrc` anpassen**, um automatisch die richtige Umgebung zu verwenden.
   Schauen Sie sich dazu unsere Anleitung als Beispiel dafür an, [wie Sie die richtige Sprachversion für verschiedene Repositories verwenden](#configuring-environments-automatically-for-different-repositories).

<div id="my-commands-work-when-i-run-them-manually">
  ### Meine Befehle funktionieren, wenn ich sie manuell ausführe
</div>

Stelle sicher, dass du deine bashrc so eingerichtet hast, dass eine neue Bash-Shell Zugriff auf die notwendigen Tools hat. Versuche, deine Befehle in einem neuen Terminal auszuführen. Wenn sie dort nicht funktionieren, musst du deine bashrc wahrscheinlich anpassen, zum Beispiel indem du bestimmte Setup-Befehle ausführst oder die systemweite PATH-Variable bearbeitest.
Sieh dir unseren Leitfaden als Beispiel dafür an, [wie du für verschiedene Repositories die richtige Sprachversion verwendest](#configuring-environments-automatically-for-different-repositories).

Befehle werden nach 5 Minuten abgebrochen. Du kannst Caching auslösen, indem du die Befehle im VS Code-Terminal ausführst, bevor du sie von Devin überprüfen lässt. Wir empfehlen nicht, Devin Befehle zu geben, die länger als 5 Minuten zur Ausführung benötigen, da dies Devin erheblich verlangsamt.

<div id="devin-cant-run-my-linttest-commands-in-sessions">
  ### Devin kann meine Lint-/Testbefehle in Sessions nicht ausführen
</div>

Sieh dir die Ausgabe von Devins Terminal an, um zu prüfen, ob du Fehler erkennst. Du kannst die Befehle auch selbst in einem neuen Terminal ausführen, um zu sehen, ob sie funktionieren. Falls nötig kannst du den Repository-Einrichtungsprozess erneut durchlaufen, um Änderungen an Devins Umgebung vorzunehmen.

<div id="the-git-pull-step-isnt-working">
  ### Der `git pull`-Schritt funktioniert nicht
</div>

Überprüfe sorgfältig, ob Devin Zugriff auf das Repository und dessen Submodule hat. Sieh dir außerdem die [GitHub-Integrationsdokumentation](/de/integrations/gh) an, falls du auf Berechtigungsprobleme stößt.

<div id="all-done">
  ## Alles erledigt!
</div>

Glückwunsch! Sie haben Devin erfolgreich eingerichtet und können jetzt gemeinsam mit ihm entwickeln. Es ist Zeit, [Ihre erste Session](/de/get-started/first-run) zu starten. Denken Sie daran, dass Devin am besten arbeitet, wenn Sie:

* Devin sagen, wie es seinen Fortschritt überprüfen soll
* große Aufgaben in kleinere Schritte aufteilen
* detaillierte Anforderungen im Voraus bereitstellen
* mehrere Sessions parallel laufen lassen

Wenn Sie Unterstützung benötigen, zögern Sie bitte nicht, uns eine E-Mail an [support@cognition.ai](mailto:support@cognition.ai) zu schreiben.
