> ## 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.

# Hinweise zum Prompten

> Tipps, wie Sie Devin optimal anleiten und neu ausrichten

export const PromptBlock = ({children, type, agent, intent, playbookId}) => {
  var utm = 'utm_source=docs&utm_medium=use-case-gallery&utm_campaign=prompt-block';
  var tag = 'docs-use-case-gallery';
  var agentParams = (agent ? '&agent=' + agent : '') + (intent ? '&intent=' + intent : '') + (playbookId ? '&playbookId=' + playbookId : '');
  var label = type === 'schedule' ? 'Schedule in Devin' : type === 'playbook' ? 'Create Playbook' : type === 'knowledge' ? 'Add to Knowledge' : agent === 'advanced' ? 'Try in Devin' : agent === 'dana' ? 'Try in Dana' : agent === 'ada' ? 'Try in Ask Devin' : 'Try in Devin';
  var buildUrl = function (text) {
    var encoded = encodeURIComponent(text);
    if (type === 'schedule') return 'https://app.devin.ai/settings/schedules/create?' + utm + agentParams + '&prompt=' + encoded;
    if (type === 'playbook') return 'https://app.devin.ai/settings/playbooks/create?' + utm + '&body=' + encoded;
    if (type === 'knowledge') return 'https://app.devin.ai/knowledge?' + utm + '&body=' + encoded;
    if (agent === 'ada') return 'https://app.devin.ai/search?' + utm + '&noSubmit=true&prompt=' + encoded;
    return 'https://app.devin.ai/?tags=' + tag + '&' + utm + agentParams + '&prompt=' + encoded;
  };
  const ref = React.useRef(null);
  const [href, setHref] = React.useState('#');
  React.useEffect(() => {
    if (!ref.current) return;
    var codeEl = ref.current.querySelector('pre code');
    if (codeEl) {
      var text = codeEl.textContent.trim();
      if (text) setHref(buildUrl(text));
    }
    var header = ref.current.querySelector('[data-component-part="code-block-header"]');
    if (header && !header.querySelector('.prompt-block-devin-link')) {
      var link = document.createElement('a');
      link.href = href;
      link.target = '_blank';
      link.rel = 'noopener noreferrer';
      link.className = 'prompt-block-devin-link';
      link.style.cssText = 'display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#fff;font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;white-space:nowrap;background:#317CFF;transition:background 0.2s;margin-left:8px;';
      link.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"/><polyline points="15 3 21 3 21 9"/><line x1="10" y1="14" x2="21" y2="3"/></svg> ' + label;
      link.onmouseenter = function () {
        link.style.background = '#2968D9';
      };
      link.onmouseleave = function () {
        link.style.background = '#317CFF';
      };
      header.appendChild(link);
    }
    var existingLink = ref.current.querySelector('.prompt-block-devin-link');
    if (existingLink && href !== '#') existingLink.href = href;
  });
  return <div className="prompt-block" ref={ref}>{children}</div>;
};

<Tip>Ausführliche Best Practices finden Sie auch unter [Devin effektiv anleiten](/de/essential-guidelines/instructing-devin-effectively) und [Gute vs. schlechte Anweisungen](/de/essential-guidelines/good-vs-bad-instructions).</Tip>

Devin benötigt Hinweise dazu, was deine Präferenzen sind und wie es überprüfen soll, ob es auf dem richtigen Weg ist. Falls nichts angegeben ist, wird Devin eigene Ermessensentscheidungen treffen. Wir empfehlen, in deinen Prompts einer einfachen Struktur zu folgen, damit Devin auf Kurs bleibt und seine eigene Arbeit überprüft:

<CardGroup cols={1}>
  <Card title="Was" icon="block-question" horizontal>
    Beschreibe die Aufgabe, die Devin erledigen soll.

    **Beispiel**: Aktualisiere mein Projekt von Java 7 auf Java 8.
  </Card>

  <Card title="Wie" icon="chalkboard-user" horizontal>
    Beschreibe einige Do's und Don'ts für Devin bei der Ausführung der Aufgabe (z. B. mit Modal deployen usw.)

    **Beispiel**: Identifiziere und ersetze veraltete Java‑7‑APIs durch ihre Java‑8‑Entsprechungen. Analysiere die Codebasis auf mögliche Verbesserungen in Java‑8‑Sprache und -APIs.
  </Card>

  <Card title="Ergebnis" icon="print" horizontal>
    Beschreibe die erwarteten Ergebnisse oder Verhaltensweisen, auf die Devin testen soll, damit Devin weiß, wann die Aufgabe abgeschlossen ist.

    **Beispiel**: Führe die Testsuite aus und stelle sicher, dass alle Tests erfolgreich bestehen. Baue das Projekt mit der aktualisierten Java‑8‑Konfiguration und stelle sicher, dass die Anwendung läuft.
  </Card>
</CardGroup>

<div id="choosing-the-right-tasks">
  ### Die richtigen Aufgaben auswählen
</div>

Wenn Sie entscheiden, welche Aufgaben Sie Devin übergeben, achten Sie auf Aufgaben mit:

1. **Klaren Erfolgskriterien**

   * Aufgaben, bei denen der Erfolg automatisch validiert werden kann
   * Eingebauten Feedbackschleifen (Tests, Kompilierung, Lint-Checks)
   * Objektiven Qualitätskriterien

2. **Angemessenem Umfang**

   * Klar definierten Grenzen und klaren Anforderungen
   * Klaren Mustern in Ihrer Codebasis, an denen man sich orientieren kann
   * Als Faustregel gilt: Aufgaben, die Sie drei Stunden oder weniger kosten würden, eignen sich hervorragend

3. **Wiederkehrenden Elementen**

   * Aufgaben, bei denen ähnliche Änderungen vielfach angewendet werden müssen
   * Variationen, die reines Scripting erschweren
   * Vorhandenen Beispielen, an denen man sich orientieren kann

4. **Typischen Beispielen**
   * Versionsupgrades über mehrere Pakete hinweg
   * Hinzufügen von Testabdeckung für bislang ungetestete Module
   * Konvertieren von Dateien, um neue Muster/Standards zu verwenden
   * Implementieren standardisierter UI-Komponenten

<div id="split-complex-tasks-into-simpler-sub-tasks-across-multiple-sessions">
  #### Teilen Sie komplexe Aufgaben über mehrere Sitzungen hinweg in einfachere Unteraufgaben auf
</div>

Devin hat eine höhere Erfolgswahrscheinlichkeit, wenn komplexe Projekte in klare Unteraufgaben aufgeteilt werden. **zum Beispiel** können Sie Devin statt in einer einzigen Sitzung zu bitten, Ihren Anwendungscode, Ihre Test-Suite und Ihre CI-Konfiguration zu aktualisieren, dies in drei separate Sitzungen aufteilen. Sie können sie parallel ausführen, indem Sie [Devin beauftragen, an verwaltete Devins zu delegieren](/de/work-with-devin/advanced-capabilities#managed-devins).

Bei besonders komplexen Aufgaben empfehlen wir, mit Devin über mehrere separate Sitzungen hinweg zu arbeiten, da **die Leistung von Devin mit zunehmender Sitzungsdauer nachlassen kann**.

<div id="tell-devin-how-to-check-its-progress">
  #### Erklären Sie Devin, wie es seinen Fortschritt prüfen soll
</div>

Devin arbeitet am besten, wenn es klare Schritte zur Überprüfung seiner Arbeit erhält. Das hilft sicherzustellen, dass die Aufgabe korrekt ausgeführt wird und ermöglicht es Devin, potenzielle Probleme frühzeitig zu erkennen.

Hier ist eine nicht abschließende Liste einiger Möglichkeiten, wie Sie Devin helfen können, seine Arbeit zu überprüfen:

1. **Testspezifikationen festlegen**

   * Bitten Sie Devin, bestimmte Test-Suites auszuführen
   * Definieren Sie, welche Tests bestehen sollen
   * Fordern Sie bei Bedarf Metriken zur Testabdeckung an

2. **Klare Checkpoints und Teilaufgaben definieren**

   * Zerlegen Sie komplexe Aufgaben in überprüfbare Teilaufgaben und starten Sie eine Devin-Session pro Teilaufgabe
   * Definieren Sie, wie Erfolg für jede Teilaufgabe aussieht, und optional Checkpoints innerhalb jeder Teilaufgabe
   * Bitten Sie Devin, nach Abschluss jedes Checkpoints/jeder Teilaufgabe zu berichten

3. **Erklären Sie Devin, wie es seine Arbeit prüfen soll**

   Stellen Sie klar, wie Devin prüfen kann, ob es auf dem richtigen Weg ist. Zum Beispiel:

   * Beim Arbeiten mit Datensätzen: „Überprüfe, dass der Datensatz mindestens 500 Zeilen hat und die Spalten X, Y, Z enthält.“
   * Beim Ändern von APIs: „Bestätige, dass der Endpoint den Status 200 zurückgibt und alle erforderlichen Felder enthält.“
   * Beim Aktualisieren der UI: „Prüfe, dass die Komponente ohne Konsolenfehler rendert und der Design-Spezifikation entspricht.“

Je spezifischer Sie Ihre Anforderungen an die Validierung formulieren, desto sicherer kann Devin die Aufgabe ohne Eingreifen fortsetzen.

<div id="be-clear-and-specific">
  #### Sei klar und konkret
</div>

Gib Devin klare, detaillierte Anweisungen und Anforderungen. Versuche zum Beispiel Folgendes:

1. Die wichtigsten Schritte anzugeben, die zum Abschließen einer Aufgabe erforderlich sind
2. Bestimmte Repos, Bibliotheken, Branches usw. zu benennen, mit denen Devin arbeiten soll

Für Devin ist nichts „zu offensichtlich“, aber es wird sein Bestes tun, Dinge zu klären und unterwegs Fragen zu stellen.

<div id="use-playbooks">
  #### Playbooks verwenden
</div>

Für wiederkehrende oder komplexe Aufgaben empfehlen wir, [Playbooks](/de/product-guides/creating-playbooks) zu verwenden und fortlaufend zu verfeinern. Playbooks sind leicht wiederverwendbare und einfach teilbare Prompts. Wenn du zum Beispiel möchtest, dass Devin anhaltende CI-Build-Fehler behebt, kannst du ein Playbook erstellen, das die allgemeinen Schritte enthält, die Devin jedes Mal ausführen soll, um das Problem zu lösen – ohne dass du sie in jedem Prompt erneut angeben musst.

<div id="provide-references-or-examples">
  #### Referenzen oder Beispiele bereitstellen
</div>

Verlinke, wenn verfügbar, Dokumentation oder Beispiele, die für die Aufgabe relevant sind. Wenn du keine Ressourcen angibst, kann Devin selbstständig nach Dokumentation suchen.

<div id="jump-in">
  #### Steig direkt ein!
</div>

Stell Devin Fragen und gib ihm Anweisungen, während Devin arbeitet – genau wie bei jedem anderen Teammitglied!
