[{"data":1,"prerenderedAt":775},["ShallowReactive",2],{"/de-de/blog/developing-gitlab-duo-use-ai-to-remediate-security-vulnerabilities":3,"navigation-de-de":45,"banner-de-de":448,"footer-de-de":458,"blog-post-authors-de-de-Michael Friedrich|Alana Bellucci":663,"blog-related-posts-de-de-developing-gitlab-duo-use-ai-to-remediate-security-vulnerabilities":689,"assessment-promotions-de-de":727,"next-steps-de-de":765},{"id":4,"title":5,"authorSlugs":6,"body":9,"categorySlug":10,"config":11,"content":15,"description":9,"extension":31,"isFeatured":13,"meta":32,"navigation":13,"path":33,"publishedDate":22,"seo":34,"stem":41,"tagSlugs":42,"__hash__":44},"blogPosts/de-de/blog/developing-gitlab-duo-use-ai-to-remediate-security-vulnerabilities.yml","Developing Gitlab Duo Use Ai To Remediate Security Vulnerabilities",[7,8],"michael-friedrich","alana-bellucci",null,"ai-ml",{"slug":12,"featured":13,"template":14},"developing-gitlab-duo-use-ai-to-remediate-security-vulnerabilities",true,"BlogPost",{"heroImage":16,"body":17,"authors":18,"updatedDate":21,"date":22,"title":23,"tags":24,"description":30,"category":10},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098106/Blog/Hero%20Images/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25_7JlF3WlEkswGQbcTe8DOTB_1750098106040.png","Du hast gerade eine neue Stelle angetreten, und gleich an deinem ersten Tag gibt es einen schwerwiegenden Vorfall in der Produktion, bei dem alle verfügbaren Arbeitskräfte benötigt werden. Eine Reihe kritischer neuer Sicherheitslücken erfordert sofortige Aufmerksamkeit, Analyse, Schadensbegrenzung und Behebung. Aber wo genau fängst du mit deiner Untersuchung an?\n\nErfahre, wie du mit den GitLab-Duo-Funktionen zur Erläuterung von Sicherheitslücken und Behebung von Sicherheitslücken zusammen mit anderen KI-basierten Funktionen innerhalb weniger Minuten mit der Behebung von Sicherheitslücken beginnen kannst. Anhand eines praktischen Beispiels erfährst du, wie du von der KI-basierten Unterstützung bei der Analyse und Erläuterung von Sicherheitslücken profitieren kannst. Zusätzliche Abhilfemaßnahmen stehen in Form von KI-generierten Codekorrekturen in MRs im Vordergrund, um Sicherheitslücken schneller zu beheben.\n\n> Starte [eine kostenlose Testversion von GitLab Duo](https://about.gitlab.com/gitlab-duo-agent-platform/#free-trial), um diese leistungsstarken Vorteile bei der Behebung von Sicherheitslücken auch in deinem Unternehmen zu nutzen.\n\n## So gehst du vor: Analyse\n\nDer erste Schritt besteht darin, die Auswirkungen und den Schweregrad der Sicherheitslücke zu analysieren. Öffne die GitLab-Benutzeroberfläche und navigiere zum [Sicherheitslückenbericht](https://docs.gitlab.com/ee/user/application_security/vulnerability_report/) im Menü `Schützen > Sicherheitslückenbericht`. Filtere die Liste der Sicherheitslücken nach `SAST` und identifiziere die kritischsten Sicherheitslücken, an denen du arbeiten musst.\n\n![Übersicht über Sicherheitslückenberichte](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/vulnerability_reports_overview_aHR0cHM6_1750098116056.png)\n\nDie Ergebnisse des SAST-Scanners werden in der Detailansicht zusammengefasst und mit dem Quellcode verknüpft. Sie enthalten Details aus öffentlich zugänglichen Sicherheitshinweisen. Für Entwickler(innen) ist es oft schwierig, direkt aus dem Sicherheitsbericht heraus mit der Analyse zu beginnen, es sei denn, sie kennen den Umfang des Angriffs, die technischen Details und die Sicherheitslücken genau.\n\n## Verstehen und Entschärfen mit der Erläuterung von Sicherheitslücken\n\nEs ist unerlässlich, dass du die Sicherheitslücke verstehst und weißt, wie du sie am besten und effizientesten beheben kannst. Die Korrekturen dürfen bestehende Funktionen nicht beeinträchtigen. Falls doch, ist eine Besprechung mit den zuständigen Betreuer(inne)n und Product Ownern mit einer Zusammenfassung und möglichen Abhilfemaßnahmen erforderlich. Code, den ein(e) ehemalige(r) Mitarbeiter(in) geschrieben hat, oder Code, für den es keine Tests gibt, kann die Planung eines Fixes noch schwieriger machen.\n\nDie KI-basierte Erläuterung von Sicherheitslücken bietet eine Zusammenfassung, wie ein(e) Angreifer(in) die Sicherheitslücke ausnutzen könnte, und liefert weitere Erklärungen zu den Auswirkungen und möglichen Abhilfemaßnahmen.\n\nDas folgende Beispiel zeigt eine OS-Command-Injection-Sicherheitslücke unter Verwendung dieses Codeschnipsels:\n\n```php\n\u003C?php \n\n// Read variable name from GET request\n$name = $_GET['name'];\n\n// Use the variable name to call eval and print its value \neval('echo $' . $name . ';');\n```\n\nDer Sicherheitslückenbericht ist nicht sehr detailliert und setzt voraus, dass du den gesamten Kontext und die Auswirkungen verstehst. Wähle oben rechts `Sicherheitslücke erläutern`, um den GitLab Duo Chat mit einem vordefinierten Prompt zu öffnen. Dieser bietet eine zusätzliche Zusammenfassung der Sicherheitslücke, eine Beschreibung, wie die Sicherheitslücke ausgenutzt werden kann, und einen Lösungsvorschlag.\n\n![Unsachgemäße Neutralisierung von\nspeziellen Elementen, die in einem Betriebssystembefehl verwendet werden\n(„OS Command Injection“) ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image9_aHR0cHM6_1750098116057.png)\n\n### Erläuterung von Sicherheitslücken in einem Gespräch mit Kontext\n\nDu wirst auch eine Änderung in der Benutzeroberfläche sehen: Das vorherige Overlay der Erläuterung von Sicherheitslücken wurde durch einen GitLab-Duo-Chat-Workflow ersetzt. Manchmal benötigt eine komplexe Sicherheitslücke mehrere Abhilfemaßnahmen oder sie führt zu unklaren Quellcodepfaden.\n\nDu kannst zum Quellcodebaum navigieren und mit demselben Chat-Kontext fortfahren, um dir den Code erläutern zu lassen, ihn zu reparieren, zu überarbeiten und zu testen. \n\nProbieren wir den kompletten Workflow anhand eines Beispiels in C aus, bei dem die Sicherheitsscans einen Pufferüberlauf entdeckt haben.\n\n1. Öffne die Detailansicht der Sicherheitslücke und wähle oben rechts auf der Schaltfläche „Sicherheitslücke erläutern“. Dies öffnet den Chat-Prompt mit einer Zusammenfassung des Problems, potenziellen Angriffsvektoren und einem Lösungsvorschlag.\n\n![KI für Sicherheitslücken – Bild 4](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image11_aHR0cHM6_1750098116059.png)\n\n2. Überprüfe den Lösungsvorschlag und bitte Duo Chat in einem Folge-Prompt, dir alternative Lösungsmöglichkeiten anzuzeigen, indem du den folgenden Text eingibst: `Can you show an alternative fix using a different function`. Der Sinn dahinter ist, etwas über Alternativen zur Funktion `strcpy()` zu erfahren, die sicherer zu verwenden sind.\n\n![KI für Sicherheitslücken – Bild 3](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image4_aHR0cHM6_1750098116060.png)\n\n3. Duo Chat bietet im folgenden Beispiel eine alternative Lösung mit `strlcpy()`. Die Funktion kopiert nur so viele Zeichen, wie in der Zielzeichenfolge erlaubt sind, und beendet die Zeichenfolge immer mit Null. Sie gibt auch die Länge der Quellzeichenfolge zurück, um festzustellen, ob die Zeichenfolge abgeschnitten wurde.\n\n![KI für Sicherheitslücken – Bild 5](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image10_aHR0cHM6_1750098116062.png)\n\n4. Klicke auf die URL der Datei `Location`, um zur Quellcodeansicht zu gelangen. Öffne Duo Chat erneut und vergewissere dich, dass der vorherige Kontext zur Erläuterung der Sicherheitslücke noch vorhanden ist. Als Nächstes möchten wir Tests hinzufügen, bevor wir mit einem Lösungsvorschlag fortfahren. So vermeiden wir, dass Funktionen kaputt gehen oder Regressionen eingeführt werden. Verwende zum Beispiel den folgenden Chat-Prompt: `Based on the vulnerability context and opened source code, how would you add tests for it?`.\n\n![KI für Sicherheitslücken – Bild 7](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image8_aHR0cHM6_1750098116063.png)\n\n5. Nachdem du Tests erstellt hast (und angenommen, sie wurden jetzt hinzugefügt), kannst du Duo Chat mit dem Prompt `Can you refactor the source code too?` in der gleichen Sitzung auch darum bitten, den Quellcode zu überarbeiten.\n\n![KI für Sicherheitslücken – Bild 6](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750098116063.png)\n\nDer Workflow zeigt dir, wie du Sicherheitslücken analysierst, verstehst, entschärfst, alternative Ansätze findest, Tests hinzufügst und sogar Refactoring durchführst. \n\nDu kannst diesen Weg mit Duo Chat fortsetzen und dann in die Web IDE wechseln, um den Quellcode zu ändern, nachdem du gelernt hast, wie es geht. Zu den weiteren fortlaufenden Workflows gehören das Committen von Änderungen und das Auslösen der CI/CD-Pipeline und von Sicherheitsscans für den gesamten DevSecOps-Lebenszyklus. \n\n## Beheben mit KI-unterstützter Behebung von Sicherheitslücken\n\nUm eine Sicherheitslücke zu verstehen und zu beheben, sind immer noch Entwicklerfähigkeiten notwendig, um in einem neuen Merge Request eine Lösung für das Problem zu erstellen, Pipelines auszuführen und Sicherheitsscans durchzuführen. Es kann auch erforderlich sein, die Fixes in einer Staging-Umgebung bereitzustellen und über einen längeren Zeitraum zu testen.\n\nDie KI kann dir dabei helfen, einen Lösungsvorschlag auf der Grundlage des bereitgestellten Kontexts der Sicherheitslücke und des Quellcodes zu generieren.\n\nTipp: Denke an die ärgerlichste Sicherheitslücke, die du in deiner Karriere bisher beheben musstest, und erstelle das Anwendungsbeispiel erneut für GitLab Duo. Die [Mitre CWE Top 25 der gefährlichsten Software-Sicherheitslücken](https://cwe.mitre.org/top25/archive/2023/2023_top25_list.html) bietet ebenfalls einen guten Ausgangspunkt.  \n\nDas folgende Beispiel implementiert [CWE-328: Use of a weak hash function (Verwendung einer schwachen Hash-Funktion)](https://cwe.mitre.org/data/definitions/328.html) unter Verwendung von `md5`. Die Sicherheitslücke wird von [SAST-Scannern](https://docs.gitlab.com/ee/user/application_security/sast/) korrekt identifiziert. \n\n```python\nimport hashlib\n\nclass User:\n    def __init__(self, username, password):\n        self.username = username\n        self.password = password\n\n    def set_password(self, password):\n        self.password = hashlib.md5(password.encode()).hexdigest()\n\n```\n\n![KI für Sicherheitslücken – Bild 8](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image7_aHR0cHM6_1750098116064.png)\n\nKlicke oben rechts auf die Schaltfläche `Mit Merge Request lösen`.  Dies öffnet einen MR, der KI verwendet, um eine Lösung vorzuschlagen. Eine mögliche Lösung für diese Sicherheitslücke könnte die Verwendung einer anderen Hash-Funktion sein.\n\n![KI für Sicherheitslücken – Bild 9](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750098116065.png)\n\nEin weiteres häufiges Beispiel für eine Sicherheitslücke ist die Nichtüberprüfung von Funktionsfehlercodes oder möglichen Exceptions. Die folgenden C-Codeschnipsel implementieren ein Beispiel für Timing-Angriffe auf Dateivorgänge mit [CWE-362](https://cwe.mitre.org/data/definitions/362.html) für die Aufrufe `fopen()` und `chmod()`. \n\n```c\n#include \u003Cstdio.h>\n#include \u003Cstring.h>\n#include \u003Csys/mman.h>\n#include \u003Csys/stat.h>\n#include \u003Cunistd.h>\n\nint main(int argc, char **argv) {\n\n    // File operations\n    char *fname = \"gitlab.keksi\";\n\n    FILE *fp;\n    fp = fopen(fname, \"r\");\n    fprintf(fp, \"Hello from GitLab Duo Vulnerability Resolution Challenge\");\n    fclose(fp);\n\n    // Potential chmod() timing attacks    \n\n    // Make the file world readable\n    chmod(fname, S_IRWXU|S_IRWXG|S_IRWXO);\n\n    return 0;\n}\n```\n\nDer SAST-Bericht für `chmod()` kann wie folgt aussehen: \n\n![KI für Sicherheitslücken – Bild 10](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image6_aHR0cHM6_1750098116065.png)\n\nDer vorgeschlagene Merge Request für `chmod()` beinhaltet die Fehlerbehandlung. Zusätzlich wird ein weiteres potenzielles Problem behoben, durch das Dateien öffentlich beschreibbar sind, indem die Berechtigungen von `777` auf `600` geändert werden.\n\n![KI für Sicherheitslücken – Bild 11](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098116/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750098116066.png)\n\n> Probiere diese asynchrone Übung aus: Finde, analysiere und behebe die Sicherheitslücke für die Funktion `fopen()`.\n\n## Mehr KI-Unterstützung von GitLab Duo erforderlich\n\nOft lässt sich ein Sicherheitsproblem mit einer schnellen Lösung oder einem Workaround beheben, der den Entwicklungsteams Zeit gibt, eine längerfristige Lösung zu diskutieren und zu planen. In anderen Fällen wird das Problem komplexer und erfordert die Deaktivierung von Funktions-APIs oder die Behebung von Problemen der Firewall, bis eine angemessene Lösung in die Produktion eingeführt werden kann.\n\nGitLab Duo bietet zusätzliche KI-basierte Funktionen, die bei der Lösung dieser Probleme helfen können. \n\n**Codeerläuterung:** Als Entwickler(in) oder Sicherheitsingenieur(in) ist es wichtig, dass du dich auf deine Änderungen verlassen kannst. In der IDE kannst du die [Funktion „Codeerläuterung“](https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#explain-code-in-the-ide) verwenden, um die von der KI vorgeschlagene Lösung für die Sicherheitslücke besser zu verstehen. So ist sichergestellt, dass du genau weißt, welche Anpassungen vorgenommen wurden und warum.\n\n**Grundursachenanalyse:** Wenn die Lösung deine Pipeline beschädigt, kannst du die [Grundursachenanalyse](https://about.gitlab.com/blog/developing-gitlab-duo-blending-ai-and-root-cause-analysis-to-fix-ci-cd/) verwenden. Dieses Tool hilft dir bei der Identifizierung des zugrunde liegenden Problems und erklärt es dir, damit du es effektiv angehen kannst. Nachdem du die erforderlichen Korrekturen vorgenommen hast, kannst du die Tests erneut ausführen, um eine erfolgreiche Lösung zu gewährleisten.\n\n**Refactoring:** Auch wenn die Sicherheitslücke behoben wurde, lohnt es sich zu überlegen, ob der Code nicht sicherer geschrieben werden kann. In der IDE kannst du GitLab Duo Chat öffnen und die [Refactoring-Aktion](https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#refactor-code-in-the-ide) verwenden, um alternative, sicherere Möglichkeiten zum Schreiben deines Codes zu finden. Dieser proaktive Ansatz trägt zur Aufrechterhaltung einer robusten und sicheren Codebase bei.\n\nMit diesen Funktionen von GitLab Duo kannst du Sicherheitslücken selbstbewusst erkennen und beheben und so sicherstellen, dass dein Code sicher und effizient bleibt.\n\n## Wie geht es weiter?\n\nWir planen, sowohl die Erläuterung von Sicherheitslücken als auch die Behebung von Sicherheitslücken „nach links“ zu verschieben, indem wir sie direkt in den MR-Prozess integrieren. Diese Integration stellt sicher, dass du Sicherheitslücken früher im Entwicklungszyklus angehen und beheben kannst, was deinen Workflow optimiert und die Codesicherheit von Anfang an erhöht.\n\n## Erste Schritte mit GitLab Duo\n\nIn unserer [Dokumentation](https://docs.gitlab.com/ee/user/gitlab_duo/turn_on_off.html) findest du Informationen dazu, wie du die Funktion für unsere GitLab-Ultimate-Kund(inn)en aktivieren kannst. Außerdem sind die GitLab-Duo-Funktionen [Erläuterung von Sicherheitslücken](https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#explaining-a-vulnerability) und [Behebung von Sicherheitslücken](https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#vulnerability-resolution) bald in GitLab Self-Managed und GitLab Dedicated verfügbar.\n\nIn [der Blog-Serie „Entwicklung von GitLab Duo“](https://about.gitlab.com/blog/developing-gitlab-duo-series/) erfährst du regelmäßig, was es Neues in GitLab Duo gibt.\n\n> Starte [eine kostenlose Testversion von GitLab Duo](https://about.gitlab.com/gitlab-duo-agent-platform/#free-trial), um diese leistungsstarken Vorteile bei der Behebung von Sicherheitslücken auch in deinem Unternehmen zu nutzen!\n",[19,20],"Michael Friedrich","Alana Bellucci","2024-11-29","2024-07-15","Die Entwicklung von GitLab Duo: KI zur Behebung von Sicherheitslücken nutzen ",[25,26,27,28,29],"AI/ML","security","product","features","tutorial","Dieses Tutorial zeigt, wie dir die GitLab-Duo-Funktionen zur Erläuterung und Behebung von Sicherheitslücken zusammen mit unseren anderen KI-basierten Funktionen helfen können, Sicherheitslücken schnell zu beheben.","yml",{},"/de-de/blog/developing-gitlab-duo-use-ai-to-remediate-security-vulnerabilities",{"ogTitle":35,"ogImage":16,"ogDescription":30,"ogSiteName":36,"noIndex":37,"ogType":38,"ogUrl":39,"title":35,"canonicalUrls":39,"description":40},"GitLab Duo: KI zur Behebung von Sicherheitslücken nutzen","https://about.gitlab.com",false,"article","https://about.gitlab.com/blog/developing-gitlab-duo-use-ai-to-remediate-security-vulnerabilities","Dieses Tutorial zeigt, wie dir die GitLab-Duo-Funktionen zur Erläuterung und Behebung von Sicherheitslücken zusammen mit unseren anderen KI-basierten Funktionen helfen können, Sicherheitslücken zu beheben.","de-de/blog/developing-gitlab-duo-use-ai-to-remediate-security-vulnerabilities",[43,26,27,28,29],"aiml","MTF8qSYqS9iAUEBsozcv_c8kKrDKJT6PIQy-mKNYZHg",{"data":46},{"logo":47,"freeTrial":52,"sales":57,"login":62,"items":67,"search":376,"minimal":411,"duo":429,"pricingDeployment":438},{"config":48},{"href":49,"dataGaName":50,"dataGaLocation":51},"/de-de/","gitlab logo","header",{"text":53,"config":54},"Kostenlose Testversion anfordern",{"href":55,"dataGaName":56,"dataGaLocation":51},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":58,"config":59},"Vertrieb kontaktieren",{"href":60,"dataGaName":61,"dataGaLocation":51},"/de-de/sales/","sales",{"text":63,"config":64},"Anmelden",{"href":65,"dataGaName":66,"dataGaLocation":51},"https://gitlab.com/users/sign_in/","sign in",[68,95,191,196,297,357],{"text":69,"config":70,"cards":72},"Plattform",{"dataNavLevelOne":71},"platform",[73,79,87],{"title":69,"description":74,"link":75},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":76,"config":77},"Erkunde unsere Plattform",{"href":78,"dataGaName":71,"dataGaLocation":51},"/de-de/platform/",{"title":80,"description":81,"link":82},"GitLab Duo Agent Platform","Agentische KI für den gesamten Softwareentwicklungszyklus",{"text":83,"config":84},"Lerne GitLab Duo kennen",{"href":85,"dataGaName":86,"dataGaLocation":51},"/de-de/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":88,"description":89,"link":90},"Gründe, die für GitLab sprechen","Erfahre, warum Unternehmen auf GitLab setzen",{"text":91,"config":92},"Mehr erfahren",{"href":93,"dataGaName":94,"dataGaLocation":51},"/de-de/why-gitlab/","why gitlab",{"text":96,"left":13,"config":97,"link":99,"lists":103,"footer":173},"Produkt",{"dataNavLevelOne":98},"solutions",{"text":100,"config":101},"Alle Lösungen anzeigen",{"href":102,"dataGaName":98,"dataGaLocation":51},"/de-de/solutions/",[104,129,151],{"title":105,"description":106,"link":107,"items":112},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":108},{"icon":109,"href":110,"dataGaName":111,"dataGaLocation":51},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[113,117,120,125],{"text":114,"config":115},"CI/CD",{"href":116,"dataGaLocation":51,"dataGaName":114},"/de-de/solutions/continuous-integration/",{"text":80,"config":118},{"href":85,"dataGaLocation":51,"dataGaName":119},"gitlab duo agent platform - product menu",{"text":121,"config":122},"Quellcodeverwaltung",{"href":123,"dataGaLocation":51,"dataGaName":124},"/de-de/solutions/source-code-management/","Source Code Management",{"text":126,"config":127},"Automatisierte Softwarebereitstellung",{"href":110,"dataGaLocation":51,"dataGaName":128},"Automated software delivery",{"title":130,"description":131,"link":132,"items":137},"Sicherheit","Entwickle schneller, ohne die Sicherheit zu gefährden",{"config":133},{"href":134,"dataGaName":135,"dataGaLocation":51,"icon":136},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[138,142,147],{"text":139,"config":140},"Application Security Testing",{"href":134,"dataGaName":141,"dataGaLocation":51},"Application security testing",{"text":143,"config":144},"Schutz der Software-Lieferkette",{"href":145,"dataGaLocation":51,"dataGaName":146},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":148,"config":149},"Software Compliance",{"href":150,"dataGaName":148,"dataGaLocation":51},"/de-de/solutions/software-compliance/",{"title":152,"link":153,"items":158},"Bewertung",{"config":154},{"icon":155,"href":156,"dataGaName":157,"dataGaLocation":51},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[159,163,168],{"text":160,"config":161},"Sichtbarkeit und Bewertung",{"href":156,"dataGaLocation":51,"dataGaName":162},"Visibility and Measurement",{"text":164,"config":165},"Wertstrommanagement",{"href":166,"dataGaLocation":51,"dataGaName":167},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":169,"config":170},"Analysen und Einblicke",{"href":171,"dataGaLocation":51,"dataGaName":172},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":174,"items":175},"GitLab für",[176,181,186],{"text":177,"config":178},"Enterprise",{"href":179,"dataGaLocation":51,"dataGaName":180},"/de-de/enterprise/","enterprise",{"text":182,"config":183},"Kleinunternehmen",{"href":184,"dataGaLocation":51,"dataGaName":185},"/de-de/small-business/","small business",{"text":187,"config":188},"den öffentlichen Sektor",{"href":189,"dataGaLocation":51,"dataGaName":190},"/de-de/solutions/public-sector/","public sector",{"text":192,"config":193},"Preise",{"href":194,"dataGaName":195,"dataGaLocation":51,"dataNavLevelOne":195},"/de-de/pricing/","pricing",{"text":197,"config":198,"link":200,"lists":204,"feature":284},"Ressourcen",{"dataNavLevelOne":199},"resources",{"text":201,"config":202},"Alle Ressourcen anzeigen",{"href":203,"dataGaName":199,"dataGaLocation":51},"/de-de/resources/",[205,238,256],{"title":206,"items":207},"Erste Schritte",[208,213,218,223,228,233],{"text":209,"config":210},"Installieren",{"href":211,"dataGaName":212,"dataGaLocation":51},"/de-de/install/","install",{"text":214,"config":215},"Kurzanleitungen",{"href":216,"dataGaName":217,"dataGaLocation":51},"/de-de/get-started/","quick setup checklists",{"text":219,"config":220},"Lernen",{"href":221,"dataGaLocation":51,"dataGaName":222},"https://university.gitlab.com/","learn",{"text":224,"config":225},"Produktdokumentation",{"href":226,"dataGaName":227,"dataGaLocation":51},"https://docs.gitlab.com/","product documentation",{"text":229,"config":230},"Best-Practice-Videos",{"href":231,"dataGaName":232,"dataGaLocation":51},"/de-de/getting-started-videos/","best practice videos",{"text":234,"config":235},"Integrationen",{"href":236,"dataGaName":237,"dataGaLocation":51},"/de-de/integrations/","integrations",{"title":239,"items":240},"Entdecken",[241,246,251],{"text":242,"config":243},"Kundenerfolge",{"href":244,"dataGaName":245,"dataGaLocation":51},"/de-de/customers/","customer success stories",{"text":247,"config":248},"Blog",{"href":249,"dataGaName":250,"dataGaLocation":51},"/de-de/blog/","blog",{"text":252,"config":253},"Remote",{"href":254,"dataGaName":255,"dataGaLocation":51},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":257,"items":258},"Vernetzen",[259,264,269,274,279],{"text":260,"config":261},"GitLab-Services",{"href":262,"dataGaName":263,"dataGaLocation":51},"/de-de/services/","services",{"text":265,"config":266},"Community",{"href":267,"dataGaName":268,"dataGaLocation":51},"/community/","community",{"text":270,"config":271},"Forum",{"href":272,"dataGaName":273,"dataGaLocation":51},"https://forum.gitlab.com/","forum",{"text":275,"config":276},"Veranstaltungen",{"href":277,"dataGaName":278,"dataGaLocation":51},"/events/","events",{"text":280,"config":281},"Partner",{"href":282,"dataGaName":283,"dataGaLocation":51},"/de-de/partners/","partners",{"backgroundColor":285,"textColor":286,"text":287,"image":288,"link":292},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":289,"config":290},"the source promo card",{"src":291},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":293,"config":294},"Lies die News",{"href":295,"dataGaName":296,"dataGaLocation":51},"/de-de/the-source/","the source",{"text":298,"config":299,"lists":301},"Unternehmen",{"dataNavLevelOne":300},"company",[302],{"items":303},[304,309,315,317,322,327,332,337,342,347,352],{"text":305,"config":306},"Über",{"href":307,"dataGaName":308,"dataGaLocation":51},"/de-de/company/","about",{"text":310,"config":311,"footerGa":314},"Karriere",{"href":312,"dataGaName":313,"dataGaLocation":51},"/jobs/","jobs",{"dataGaName":313},{"text":275,"config":316},{"href":277,"dataGaName":278,"dataGaLocation":51},{"text":318,"config":319},"Geschäftsführung",{"href":320,"dataGaName":321,"dataGaLocation":51},"/company/team/e-group/","leadership",{"text":323,"config":324},"Team",{"href":325,"dataGaName":326,"dataGaLocation":51},"/company/team/","team",{"text":328,"config":329},"Handbuch",{"href":330,"dataGaName":331,"dataGaLocation":51},"https://handbook.gitlab.com/","handbook",{"text":333,"config":334},"Investor Relations",{"href":335,"dataGaName":336,"dataGaLocation":51},"https://ir.gitlab.com/","investor relations",{"text":338,"config":339},"Trust Center",{"href":340,"dataGaName":341,"dataGaLocation":51},"/de-de/security/","trust center",{"text":343,"config":344},"AI Transparency Center",{"href":345,"dataGaName":346,"dataGaLocation":51},"/de-de/ai-transparency-center/","ai transparency center",{"text":348,"config":349},"Newsletter",{"href":350,"dataGaName":351,"dataGaLocation":51},"/company/contact/#contact-forms","newsletter",{"text":353,"config":354},"Presse",{"href":355,"dataGaName":356,"dataGaLocation":51},"/press/","press",{"text":358,"config":359,"lists":360},"Kontakt",{"dataNavLevelOne":300},[361],{"items":362},[363,366,371],{"text":58,"config":364},{"href":60,"dataGaName":365,"dataGaLocation":51},"talk to sales",{"text":367,"config":368},"Support-Portal",{"href":369,"dataGaName":370,"dataGaLocation":51},"https://support.gitlab.com","support portal",{"text":372,"config":373},"Kundenportal",{"href":374,"dataGaName":375,"dataGaLocation":51},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":377,"login":378,"suggestions":385},"Schließen",{"text":379,"link":380},"Um Repositories und Projekte zu durchsuchen, melde dich an bei",{"text":381,"config":382},"gitlab.com",{"href":65,"dataGaName":383,"dataGaLocation":384},"search login","search",{"text":386,"default":387},"Vorschläge",[388,390,395,397,402,407],{"text":80,"config":389},{"href":85,"dataGaName":80,"dataGaLocation":384},{"text":391,"config":392},"Code Suggestions (KI)",{"href":393,"dataGaName":394,"dataGaLocation":384},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":114,"config":396},{"href":116,"dataGaName":114,"dataGaLocation":384},{"text":398,"config":399},"GitLab auf AWS",{"href":400,"dataGaName":401,"dataGaLocation":384},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":403,"config":404},"GitLab auf Google Cloud",{"href":405,"dataGaName":406,"dataGaLocation":384},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":408,"config":409},"Warum GitLab?",{"href":93,"dataGaName":410,"dataGaLocation":384},"Why GitLab?",{"freeTrial":412,"mobileIcon":417,"desktopIcon":422,"secondaryButton":425},{"text":413,"config":414},"Kostenlos testen",{"href":415,"dataGaName":56,"dataGaLocation":416},"https://gitlab.com/-/trials/new/","nav",{"altText":418,"config":419},"GitLab-Symbol",{"src":420,"dataGaName":421,"dataGaLocation":416},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":418,"config":423},{"src":424,"dataGaName":421,"dataGaLocation":416},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":206,"config":426},{"href":427,"dataGaName":428,"dataGaLocation":416},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":430,"mobileIcon":434,"desktopIcon":436},{"text":431,"config":432},"Erfahre mehr über GitLab Duo",{"href":85,"dataGaName":433,"dataGaLocation":416},"gitlab duo",{"altText":418,"config":435},{"src":420,"dataGaName":421,"dataGaLocation":416},{"altText":418,"config":437},{"src":424,"dataGaName":421,"dataGaLocation":416},{"freeTrial":439,"mobileIcon":444,"desktopIcon":446},{"text":440,"config":441},"Zurück zur Preisübersicht",{"href":194,"dataGaName":442,"dataGaLocation":416,"icon":443},"back to pricing","GoBack",{"altText":418,"config":445},{"src":420,"dataGaName":421,"dataGaLocation":416},{"altText":418,"config":447},{"src":424,"dataGaName":421,"dataGaLocation":416},{"title":449,"button":450,"config":455},"Sieh dir an, wie agentische KI die Softwarebereitstellung transformiert",{"text":451,"config":452},"GitLab Transcend jetzt ansehen",{"href":453,"dataGaName":454,"dataGaLocation":51},"/de-de/events/transcend/virtual/","transcend event",{"layout":456,"icon":457,"disabled":13},"release","AiStar",{"data":459},{"text":460,"source":461,"edit":467,"contribute":472,"config":477,"items":482,"minimal":655},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":462,"config":463},"Quelltext der Seite anzeigen",{"href":464,"dataGaName":465,"dataGaLocation":466},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":468,"config":469},"Diese Seite bearbeiten",{"href":470,"dataGaName":471,"dataGaLocation":466},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":473,"config":474},"Beteilige dich",{"href":475,"dataGaName":476,"dataGaLocation":466},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":478,"facebook":479,"youtube":480,"linkedin":481},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[483,506,561,588,622],{"title":69,"links":484,"subMenu":489},[485],{"text":486,"config":487},"DevSecOps-Plattform",{"href":78,"dataGaName":488,"dataGaLocation":466},"devsecops platform",[490],{"title":192,"links":491},[492,496,501],{"text":493,"config":494},"Tarife anzeigen",{"href":194,"dataGaName":495,"dataGaLocation":466},"view plans",{"text":497,"config":498},"Vorteile von Premium",{"href":499,"dataGaName":500,"dataGaLocation":466},"/de-de/pricing/premium/","why premium",{"text":502,"config":503},"Vorteile von Ultimate",{"href":504,"dataGaName":505,"dataGaLocation":466},"/de-de/pricing/ultimate/","why ultimate",{"title":507,"links":508},"Lösungen",[509,514,517,519,524,529,533,536,539,544,546,548,551,556],{"text":510,"config":511},"Digitale Transformation",{"href":512,"dataGaName":513,"dataGaLocation":466},"/de-de/topics/digital-transformation/","digital transformation",{"text":515,"config":516},"Sicherheit und Compliance",{"href":134,"dataGaName":141,"dataGaLocation":466},{"text":126,"config":518},{"href":110,"dataGaName":111,"dataGaLocation":466},{"text":520,"config":521},"Agile Entwicklung",{"href":522,"dataGaName":523,"dataGaLocation":466},"/de-de/solutions/agile-delivery/","agile delivery",{"text":525,"config":526},"Cloud-Transformation",{"href":527,"dataGaName":528,"dataGaLocation":466},"/de-de/topics/cloud-native/","cloud transformation",{"text":530,"config":531},"SCM",{"href":123,"dataGaName":532,"dataGaLocation":466},"source code management",{"text":114,"config":534},{"href":116,"dataGaName":535,"dataGaLocation":466},"continuous integration & delivery",{"text":164,"config":537},{"href":166,"dataGaName":538,"dataGaLocation":466},"value stream management",{"text":540,"config":541},"GitOps",{"href":542,"dataGaName":543,"dataGaLocation":466},"/de-de/solutions/gitops/","gitops",{"text":177,"config":545},{"href":179,"dataGaName":180,"dataGaLocation":466},{"text":182,"config":547},{"href":184,"dataGaName":185,"dataGaLocation":466},{"text":549,"config":550},"Öffentlicher Sektor",{"href":189,"dataGaName":190,"dataGaLocation":466},{"text":552,"config":553},"Bildungswesen",{"href":554,"dataGaName":555,"dataGaLocation":466},"/de-de/solutions/education/","education",{"text":557,"config":558},"Finanzdienstleistungen",{"href":559,"dataGaName":560,"dataGaLocation":466},"/de-de/solutions/finance/","financial services",{"title":197,"links":562},[563,565,567,569,572,574,576,578,580,582,584,586],{"text":209,"config":564},{"href":211,"dataGaName":212,"dataGaLocation":466},{"text":214,"config":566},{"href":216,"dataGaName":217,"dataGaLocation":466},{"text":219,"config":568},{"href":221,"dataGaName":222,"dataGaLocation":466},{"text":224,"config":570},{"href":226,"dataGaName":571,"dataGaLocation":466},"docs",{"text":247,"config":573},{"href":249,"dataGaName":250,"dataGaLocation":466},{"text":242,"config":575},{"href":244,"dataGaName":245,"dataGaLocation":466},{"text":252,"config":577},{"href":254,"dataGaName":255,"dataGaLocation":466},{"text":260,"config":579},{"href":262,"dataGaName":263,"dataGaLocation":466},{"text":265,"config":581},{"href":267,"dataGaName":268,"dataGaLocation":466},{"text":270,"config":583},{"href":272,"dataGaName":273,"dataGaLocation":466},{"text":275,"config":585},{"href":277,"dataGaName":278,"dataGaLocation":466},{"text":280,"config":587},{"href":282,"dataGaName":283,"dataGaLocation":466},{"title":298,"links":589},[590,592,594,596,598,600,602,606,611,613,615,617],{"text":305,"config":591},{"href":307,"dataGaName":300,"dataGaLocation":466},{"text":310,"config":593},{"href":312,"dataGaName":313,"dataGaLocation":466},{"text":318,"config":595},{"href":320,"dataGaName":321,"dataGaLocation":466},{"text":323,"config":597},{"href":325,"dataGaName":326,"dataGaLocation":466},{"text":328,"config":599},{"href":330,"dataGaName":331,"dataGaLocation":466},{"text":333,"config":601},{"href":335,"dataGaName":336,"dataGaLocation":466},{"text":603,"config":604},"Sustainability",{"href":605,"dataGaName":603,"dataGaLocation":466},"/sustainability/",{"text":607,"config":608},"Vielfalt, Inklusion und Zugehörigkeit",{"href":609,"dataGaName":610,"dataGaLocation":466},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":338,"config":612},{"href":340,"dataGaName":341,"dataGaLocation":466},{"text":348,"config":614},{"href":350,"dataGaName":351,"dataGaLocation":466},{"text":353,"config":616},{"href":355,"dataGaName":356,"dataGaLocation":466},{"text":618,"config":619},"Transparenzerklärung zu moderner Sklaverei",{"href":620,"dataGaName":621,"dataGaLocation":466},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":623,"links":624},"Nimm Kontakt auf",[625,628,633,635,640,645,650],{"text":626,"config":627},"Sprich mit einem Experten/einer Expertin",{"href":60,"dataGaName":61,"dataGaLocation":466},{"text":629,"config":630},"Support",{"href":631,"dataGaName":632,"dataGaLocation":466},"https://support.gitlab.com/hc/en-us/articles/11626483177756-GitLab-Support","get help",{"text":372,"config":634},{"href":374,"dataGaName":375,"dataGaLocation":466},{"text":636,"config":637},"Status",{"href":638,"dataGaName":639,"dataGaLocation":466},"https://status.gitlab.com/","status",{"text":641,"config":642},"Nutzungsbedingungen",{"href":643,"dataGaName":644,"dataGaLocation":466},"/terms/","terms of use",{"text":646,"config":647},"Datenschutzerklärung",{"href":648,"dataGaName":649,"dataGaLocation":466},"/de-de/privacy/","privacy statement",{"text":651,"config":652},"Cookie-Einstellungen",{"dataGaName":653,"dataGaLocation":466,"id":654,"isOneTrustButton":13},"cookie preferences","ot-sdk-btn",{"items":656},[657,659,661],{"text":641,"config":658},{"href":643,"dataGaName":644,"dataGaLocation":466},{"text":646,"config":660},{"href":648,"dataGaName":649,"dataGaLocation":466},{"text":651,"config":662},{"dataGaName":653,"dataGaLocation":466,"id":654,"isOneTrustButton":13},[664,677],{"id":665,"title":19,"body":9,"config":666,"content":668,"description":9,"extension":31,"meta":672,"navigation":13,"path":673,"seo":674,"stem":675,"__hash__":676},"blogAuthors/en-us/blog/authors/michael-friedrich.yml",{"template":667},"BlogAuthor",{"name":19,"config":669},{"headshot":670,"ctfId":671},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659879/Blog/Author%20Headshots/dnsmichi-headshot.jpg","dnsmichi",{},"/en-us/blog/authors/michael-friedrich",{},"en-us/blog/authors/michael-friedrich","lJ-nfRIhdG49Arfrxdn1Vv4UppwD51BB13S3HwIswt4",{"id":678,"title":20,"body":9,"config":679,"content":680,"description":9,"extension":31,"meta":684,"navigation":13,"path":685,"seo":686,"stem":687,"__hash__":688},"blogAuthors/en-us/blog/authors/alana-bellucci.yml",{"template":667},{"name":20,"config":681},{"headshot":682,"ctfId":683},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664907/Blog/Author%20Headshots/abellucci-headshot.jpg","abellucci",{},"/en-us/blog/authors/alana-bellucci",{},"en-us/blog/authors/alana-bellucci","3yZkXKzugCivW5k4M4NhFUWGwSBpmKUIdSB4MT4yl4U",[690,702,715],{"content":691,"config":700},{"heroImage":692,"title":693,"description":694,"authors":695,"date":697,"category":10,"tags":698,"body":699},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643639/sapu29gmlgtwvhggmj6k.png","GitLab Duo Agent Platform erweitern: Beliebige Tools per MCP verbinden","Externe Tools wie Jira über MCP direkt in GitLab Duo Agent Platform einbinden – Schritt-für-Schritt-Einrichtung mit drei praxisnahen Workflow-Demos.",[696],"Albert Rabassa","2026-03-05",[10,27,29],"Die Verwaltung von Software-Entwicklungsprojekten bedeutet oft, zwischen verschiedenen Tools zu wechseln: Issues in Jira verfolgen, Code in der IDE schreiben, in GitLab zusammenarbeiten. Dieses ständige Wechseln zwischen Plattformen unterbricht den Fokus und verlangsamt die Lieferung.\n\n\n\nMit der MCP-Unterstützung des [GitLab Duo Agent Platform](https://about.gitlab.com/topics/ai/model-context-protocol/) lassen sich Jira und andere MCP-kompatible Tools direkt in die KI-gestützte Entwicklungsumgebung einbinden. Issues abfragen, Tickets aktualisieren, Workflows synchronisieren – per natürlicher Sprache, direkt aus der IDE.\n\n\n\n## Was in diesem Tutorial vermittelt wird\n\n\n\nDieses Tutorial zeigt:\n\n\n\n* **Einrichtung der Jira/Atlassian OAuth-Anwendung** für sichere Authentifizierung\n\n* **Konfiguration des GitLab Duo Agent Platform** als MCP-Client\n\n* **Drei praxisnahe Anwendungsfälle** mit realen Workflows\n\n\n\n## Voraussetzungen\n\n\n\nVor dem Start sollten folgende Voraussetzungen erfüllt sein:\n\n\n\n| Voraussetzung | Details |\n| ---- | ----- |\n| **GitLab-Instanz** | GitLab 18.8+ mit aktiviertem Duo Agent Platform |\n| **Jira-Konto** | Jira Cloud-Instanz mit Admin-Zugriff zum Erstellen von OAuth-Anwendungen |\n| **IDE** | Visual Studio Code mit installierter GitLab Workflow-Erweiterung |\n| **MCP-Unterstützung** | MCP-Unterstützung in GitLab aktiviert |\n\n\n\n## Architektur verstehen\n\n\n\nDer GitLab Duo Agent Platform agiert als **MCP-Client** und stellt eine Verbindung zum Atlassian MCP-Server her, um auf Jira-Projektmanagement-Daten zuzugreifen. Der Atlassian MCP-Server übernimmt die Authentifizierung, übersetzt natürlichsprachliche Anfragen in API-Aufrufe und gibt strukturierte Daten zurück – bei gleichzeitiger Einhaltung von Sicherheits- und Audit-Anforderungen.\n\n\n\n## Teil 1: Jira OAuth-Anwendung konfigurieren\n\n\n\nUm den GitLab Duo Agent Platform sicher mit der Jira-Instanz zu verbinden, muss eine OAuth 2.0-Anwendung in der Atlassian Developer Console erstellt werden. Diese erteilt dem GitLab MCP-Server autorisierten Zugriff auf die Jira-Daten.\n\n\n\n### Einrichtungsschritte\n\n\n\nFür die manuelle Konfiguration sind folgende Schritte erforderlich:\n\n\n\n1. **Atlassian Developer Console aufrufen**\n\n\n   * [developer.atlassian.com/console/myapps](https://developer.atlassian.com/console/myapps) öffnen\n\n\n   * Mit dem Atlassian-Konto anmelden\n\n\n2. **Neue OAuth 2.0-App erstellen**\n\n\n   * **Create** → **OAuth 2.0 integration** klicken\n\n\n   * Namen eingeben (z. B. „gitlab-dap-mcp\")\n\n\n   * Nutzungsbedingungen akzeptieren und **Create** klicken\n\n\n3. **Berechtigungen konfigurieren**\n\n\n   * In der linken Seitenleiste zu **Permissions** navigieren\n\n\n   * **Jira API** hinzufügen und folgende Scopes konfigurieren:\n\n\n     * `read:jira-work` — Issues, Projekte und Boards lesen\n\n\n     * `write:jira-work` — Issues erstellen und aktualisieren\n\n\n     * `read:jira-user` — Benutzerinformationen lesen\n\n\n4. **Autorisierung einrichten**\n\n\n   * In der linken Seitenleiste zu **Authorization** navigieren\n\n\n   * Callback-URL für die Umgebung hinzufügen (`https://gitlab.com/oauth/callback`)\n\n\n   * Änderungen speichern\n\n\n5. **Zugangsdaten abrufen**\n\n\n   * Zu **Settings** navigieren\n\n\n   * **Client ID** und **Client Secret** kopieren\n\n\n   * Sicher aufbewahren – diese werden für die MCP-Konfiguration benötigt\n\n\n\n\n### Interaktive Anleitung: Jira OAuth-Einrichtung\n\n\n\nAuf das Bild klicken, um zu beginnen.\n\n\n\n\n\n[![Jira OAuth setup tour](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772644850/wnzfoq43nkkfmgdqldmr.png)](https://gitlab.navattic.com/jira-oauth-setup)\n\n\n\n\n\n## Teil 2: GitLab Duo Agent Platform MCP-Client konfigurieren\n\n\n\nMit den bereitgestellten OAuth-Zugangsdaten kann der GitLab Duo Agent Platform nun für die Verbindung mit dem Atlassian MCP-Server konfiguriert werden.\n\n\n\n### MCP-Konfigurationsdatei erstellen\n\n\n\nDie MCP-Konfigurationsdatei im GitLab-Projekt unter `.gitlab/duo/mcp.json` erstellen:\n\n```json\n{\n  \"mcpServers\": {\n    \"atlassian\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.atlassian.com/v1/mcp\",\n      \"auth\": {\n        \"type\": \"oauth2\",\n        \"clientId\": \"YOUR_CLIENT_ID\",\n        \"clientSecret\": \"YOUR_CLIENT_SECRET\",\n        \"authorizationUrl\": \"https://auth.atlassian.com/oauth/authorize\",\n        \"tokenUrl\": \"https://auth.atlassian.com/oauth/token\"\n      },\n      \"approvedTools\": true\n    }\n  }\n}\n```\n\n\n\n`YOUR_CLIENT_ID` und `YOUR_CLIENT_SECRET` durch die in Teil 1 generierten Zugangsdaten ersetzen.\n\n\n\n### MCP in GitLab aktivieren\n\n\n\n1. Zu **Gruppeneinstellungen** → **GitLab Duo** → **Konfiguration** navigieren\n\n2. „Externe MCP-Tools erlauben\" aktivieren\n\n\n\n### Verbindung überprüfen\n\n\n\nDas Projekt in VS Code öffnen und im GitLab Duo Agent Platform Chat eingeben:\n\n```text\nWhat MCP tools do you have access to?\n```\n\n\n\nDann\n```text\nTest the MCP JIRA configuration in this project\n```\n\n\n\nAnschließend erfolgt eine Weiterleitung von der IDE zur MCP Atlassian-Website zur Zugriffsgenehmigung:\n\n\n\n![Redirect to MCP Atlassian website](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643461/z5acqjgguh0damnnde9g.png \"Redirect to MCP Atlassian website\")\n\n\n\n\u003Cbr>\u003C/br>\n\n\n\n![Approve access](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643461/rwowamm8nsubhpixtn3i.png \"Approve access\")\n\n\n\n\u003Cbr>\u003C/br>\n\n\n\n![Select your JIRA instance and approve](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643461/chuzqd0jeptfwvoj7wjr.png \"Select your JIRA instance and approve\")\n\n\n\n\u003Cbr>\u003C/br>\n\n\n\n![Success!](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643462/bsgti5iste2bzck19o5y.png \"Success!\")\n\n\n\n\u003Cbr>\u003C/br>\n\n\n\n### Überprüfung über das MCP-Dashboard\n\n\n\nGitLab bietet zudem ein integriertes **MCP-Dashboard** direkt in der IDE.\n\n\n\nIn VS Code oder VSCodium die Befehlspalette öffnen (`Cmd+Shift+P` unter macOS, `Ctrl+Shift+P` unter Windows/Linux) und nach **„GitLab: Show MCP Dashboard\"** suchen. Das Dashboard öffnet sich in einem neuen Editor-Tab und zeigt:\n\n\n\n* **Verbindungsstatus** für jeden konfigurierten MCP-Server\n\n* **Verfügbare Tools** des Servers (z. B. `jira_get_issue`, `jira_create_issue`)\n\n* **Server-Logs** mit Echtzeit-Protokollierung der aufgerufenen Tools\n\n\n\n![MCP servers dashboard and status](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643462/mmvdfchucacsydivowvn.png \"MCP servers dashboard and status\")\n\n\n\n\u003Cbr>\u003C/br>\n\n\n\n![Server details and permissions](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643462/tcocgdvovp2dl42pvfn8.png \"Server details and permissions\")\n\n\n\n\u003Cbr>\u003C/br>\n\n\n\n![MCP Server logs](https://res.cloudinary.com/about-gitlab-com/image/upload/v1772643466/mougvqqk1bozchaufsci.png \"MCP Server logs\")\n\n\n\n\u003Cbr>\u003C/br>\n\n\n\n### Interaktive Anleitung: MCP testen\n\n\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005495?badge=0&amp;autopause=0&amp; player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Testing MCP\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n\n\n## Teil 3: Anwendungsfälle in der Praxis\n\n\n\nMit der konfigurierten Integration lassen sich drei praxisnahe Workflows erkunden, die die Möglichkeiten der Jira-Anbindung an den GitLab Duo Agent Platform demonstrieren.\n\n\n\n### Planungsassistent\n\n\n\n**Szenario:** Vorbereitung auf Sprint-Planung – schnelle Bewertung des Backlogs, Verstehen von Prioritäten, Identifizierung von Blockern.\n\n\n\nDiese Demo zeigt:\n\n\n\n* Backlog abfragen\n\n* Nicht zugewiesene hochpriorisierte Issues identifizieren\n\n* KI-gestützte Sprint-Empfehlungen erhalten\n\n\n\n#### Beispiel-Prompts\n\n\n\nIm GitLab Duo Agent Platform Chat ausprobieren:\n\n```text\nList all the unassigned issues in JIRA for project GITLAB\n```\n\n```text\nSuggest the two top issues to prioritize and summarize them. Assign them to me.\n```\n\n\n### Interaktive Anleitung: Projektplanung\n\n\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005462?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Project Planning\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n\n\n### Issue-Triage und Erstellung aus dem Code\n\n\n\n**Szenario:** Beim Code-Review wird ein Bug entdeckt – ein Jira-Issue mit relevantem Kontext erstellen, ohne die IDE zu verlassen.\n\n\n\nDiese Demo zeigt:\n\n\n\n* Einen Bug beim Coding identifizieren\n\n* Ein detailliertes Jira-Issue per natürlicher Sprache erstellen\n\n* Issue-Felder automatisch mit Code-Kontext befüllen\n\n* Das Issue mit dem aktuellen Branch verknüpfen\n\n\n\n#### Beispiel-Prompts\n```text\nSearch in JIRA for a bug related to: Null pointer exception in PaymentService.processRefund().\n\nIf it does not exist create it with all the context needed from the code. Find possible blockers that this bug may cause.\n```\n\n```text\nCreate a new branch called issue-gitlab-18, checkout, and link it to the issue we just created. Assign the JIRA issue to me and mark it as in-progress.\n```\n\n\n\n### Interaktive Anleitung: Bug-Review und Aufgaben-Automatisierung\n\n\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005368?badge=0&amp;autopause=0&amp; player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Bug Review\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n\n\n### Systemübergreifende Incident-Untersuchung\n\n\n\n**Szenario:** Ein Production-Incident tritt auf – Informationen aus Jira, GitLab Project Management, Codebase und Merge Requests werden korreliert, um die Ursache zu identifizieren.\n\n\n\nDiese Demo zeigt:\n\n\n\n* Incident-Details aus Jira abrufen\n\n* Mit aktuellen Merge Requests in GitLab korrelieren\n\n* Möglicherweise betroffene Code-Änderungen identifizieren\n\n* Eine Incident-Timeline generieren\n\n* Einen Behebungsplan entwerfen und als Work Item in GitLab erstellen\n\n\n\n#### Beispiel-Prompts\n\n```text\n\"We have a production incident INC-1 about checkout failures. Can you help me investigate with all available context?\"\n```\n\n```text\nCreate a timeline of events for incident INC-1 including related Jira issues and recent deployments\n```\n\n```text\nPropose a remediation plan\n```\n\n\n\n### Interaktive Anleitung: Systemübergreifende Fehleranalyse und Behebung\n\n\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1170005413?badge=0&amp;autopause=0&amp; player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Cross System Investigation\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n\n\n## Fehlerbehebung\n\n\n\nHäufige Einrichtungsprobleme und schnelle Lösungen:\n\n\n\n| Problem | Lösung |\n| ----- | ----- |\n| „MCP server not found\" | Prüfen, ob die Datei `mcp.json` am richtigen Ort liegt und korrekt formatiert ist |\n| „Authentication failed\" | OAuth-Zugangsdaten und Scopes in Atlassian überprüfen |\n| „No Jira tools available\" | VS Code nach dem Aktualisieren von `mcp.json` neu starten und MCP in GitLab aktivieren |\n| „Connection timeout\" | Netzwerkverbindung zu `mcp.atlassian.com` prüfen |\n\n\u003Cbr/>\nDetaillierte Informationen zur Fehlerbehebung: [GitLab MCP-Clients-Dokumentation](https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_clients/).\n\n\n\n## Sicherheitshinweise\n\n\n\nBei der Integration von Jira mit dem GitLab Duo Agent Platform:\n\n\n\n* **OAuth-Token** — Zugangsdaten sicher aufbewahren\n\n* **Prinzip der minimalen Rechtevergabe** — Nur die minimal erforderlichen Jira-Scopes vergeben\n\n* **Token-Rotation** — OAuth-Zugangsdaten regelmäßig rotieren\n\n\n\n## Zusammenfassung\n\n\n\nDie Anbindung des GitLab Duo Agent Platform an verschiedene Tools über MCP verändert die Interaktion mit dem Entwicklungslebenszyklus. In diesem Artikel wurde gezeigt:\n\n\n\n* **Issues per natürlicher Sprache abfragen** — Fragen zum Backlog, zu Sprints und Incidents in natürlicher Sprache stellen.\n\n* **Issues in der gesamten DevSecOps-Umgebung erstellen und aktualisieren** — Bugs melden und Tickets aktualisieren, ohne die IDE zu verlassen.\n\n* **Systemübergreifend korrelieren** — Jira-Daten mit GitLab Project Management, Merge Requests und Pipelines für vollständige Transparenz kombinieren.\n\n* **Kontextwechsel reduzieren** — Fokus auf den Code behalten und gleichzeitig mit dem Projektmanagement verbunden bleiben.\n\n\n\n## Für deutsche Unternehmen könnte dies folgende Themen betreffen\n\n\n\nTeams, die externe Tools über MCP einbinden, haben möglicherweise auch Governance- und Sicherheitsüberlegungen – beispielsweise in Bereichen wie Zugriffskontrolle, Token-Management und Audit-Nachvollziehbarkeit.\n\n\n\nRegulatorische Frameworks wie NIS2, ISO 27001 und DSGVO adressieren ähnliche Themen rund um Zugriffssteuerung und Protokollierung. Für konkrete Compliance-Anforderungen empfiehlt sich Rücksprache mit entsprechender Fachberatung.\n\n\n\n## Weiterführende Informationen\n\n\n\n* [GitLab Duo Agent Platform unterstützt jetzt das Model Context Protocol](https://about.gitlab.com/de-de/blog/duo-agent-platform-with-mcp/)\n\n\n\n* [Was ist das Model Context Protocol?](https://about.gitlab.com/topics/ai/model-context-protocol/)\n\n\n\n* [Leitfäden und Ressourcen für Agentic AI](https://about.gitlab.com/de-de/blog/agentic-ai-guides-and-resources/)\n\n\n\n* [Dokumentation zu GitLab-MCP-Clients](https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_clients/)\n\n\n\n* [Erste Schritte mit der GitLab Duo Agent Platform: Der vollständige Leitfaden](https://about.gitlab.com/de-de/blog/gitlab-duo-agent-platform-complete-getting-started-guide/)",{"featured":37,"template":14,"slug":701},"extend-gitlab-duo-agent-platform-connect-any-tool-with-mcp",{"content":703,"config":713},{"title":704,"description":705,"authors":706,"heroImage":708,"date":709,"body":710,"category":10,"tags":711},"10 KI-Prompts für den gesamten Software-Delivery-Prozess","Code Review, Security, Dokumentation, Tests, Planung, Debugging – einsatzbereite Prompts, die Team-Engpässe systematisch adressieren.",[707],"Chandler Gibbons","https://res.cloudinary.com/about-gitlab-com/image/upload/v1772632341/duj8vaznbhtyxxhodb17.png","2026-03-04","KI-gestützte Coding-Tools helfen Entwicklerinnen und Entwicklern, Code schneller zu schreiben. Warum liefern Teams trotzdem nicht schneller?\nWeil Coding nur 20 % des Software-Delivery-Lifecycles ausmacht. Die restlichen 80 % werden zum Engpass: Code-Review-Rückstände wachsen, Security-Scans halten nicht Schritt, Dokumentation bleibt liegen, und manueller Koordinationsaufwand steigt.\nDieselben KI-Fähigkeiten, die das individuelle Coding beschleunigen, lassen sich auf den gesamten Softwarelebenszyklus ausdehnen – von der Planung über Code-Review und Security bis hin zu Tests und Debugging. Nachfolgend finden sich 10 einsatzbereite Prompts aus der [GitLab Duo Agent Platform Prompt Library](https://about.gitlab.com/gitlab-duo/prompt-library/), die typische Team-Engpässe systematisch adressieren.\n\n## Wie wird Code Review vom Engpass zum Beschleuniger?\nTeams erstellen Merge Requests schneller, wenn KI beim Coding unterstützt – doch menschliche Reviewer können kaum mithalten, wenn Review-Zyklen von Stunden auf Tage anwachsen. KI übernimmt Routineprüfungen wie logische Fehler und API-Vertragsverletzungen, damit Reviewer sich auf Architektur und Geschäftslogik konzentrieren können.\n\n### MR auf logische Fehler prüfen\n**Komplexität**: Einstieg\n**Kategorie**: Code Review\n**Prompt aus der Bibliothek**:\n\n```text\n\nReview this MR for logical errors, edge cases, and potential bugs: [MR URL or paste code]\n\n```\n**Warum das hilft**: Automatische Linter erkennen Syntaxfehler – logische Fehler erfordern das Verständnis der Absicht hinter dem Code. Dieser Prompt findet Bugs, bevor Reviewer überhaupt einen Blick darauf werfen, und reduziert Review-Zyklen häufig auf eine einzige Freigaberunde.\n\n### Breaking Changes im MR identifizieren\n**Komplexität**: Einstieg\n**Kategorie**: Code Review\n**Prompt aus der Bibliothek**:\n\n```text\n\nDoes this MR introduce any breaking changes?\n\nChanges:\n\n[PASTE CODE DIFF]\n\nCheck for:\n\n1. API signature changes\n\n2. Removed or renamed public methods\n\n3. Changed return types\n\n4. Modified database schemas\n\n5. Breaking configuration changes\n\n```\n**Warum das hilft**: Breaking Changes, die erst beim Deployment auffallen, erzwingen Rollbacks und verursachen Incidents. Dieser Prompt verlagert die Erkennung in die MR-Phase – wo Korrekturen deutlich weniger aufwändig sind.\n\n## Wie lässt sich Security nach links verschieben, ohne den Prozess zu verlangsamen?\nSecurity-Scans erzeugen Hunderte von Befunden. Security-Teams triagieren manuell, während Entwicklerinnen und Entwickler auf Deployment-Freigaben warten. Der Großteil der Befunde sind False Positives oder Niedrigrisiko-Probleme – die tatsächlichen Bedrohungen herauszufiltern kostet Zeit und Expertise. KI priorisiert Befunde nach tatsächlicher Ausnutzbarkeit und unterstützt bei der Behebung häufiger Schwachstellen, sodass Security-Teams sich auf die relevanten Bedrohungen konzentrieren können.\n\n### Security-Scan-Ergebnisse analysieren\n**Komplexität**: Fortgeschritten\n**Kategorie**: Security\n**Agent**: Duo Security Analyst\n**Prompt aus der Bibliothek**:\n\n```text\n\n@security_analyst Analyze these security scan results:\n\n[PASTE SCAN OUTPUT]\n\nFor each finding:\n\n1. Assess real risk vs false positive\n\n2. Explain the vulnerability\n\n3. Suggest remediation\n\n4. Prioritize by severity\n\n```\n**Warum das hilft**: Dieser Prompt hilft Security-Teams, sich auf die Befunde zu konzentrieren, die tatsächlich relevant sind – und reduziert die Zeit bis zur Behebung von Wochen auf Tage.\n\n### Code auf Sicherheitsprobleme prüfen\n**Komplexität**: Fortgeschritten\n**Kategorie**: Security\n**Agent**: Duo Security Analyst\n**Prompt aus der Bibliothek**:\n\n```text\n\n@security_analyst Review this code for security issues:\n\n[PASTE CODE]\n\nCheck for:\n\n1. Injection vulnerabilities\n\n2. Authentication/authorization flaws\n\n3. Data exposure risks\n\n4. Insecure dependencies\n\n5. Cryptographic issues\n\n```\n**Warum das hilft**: Herkömmliche Security-Reviews finden statt, nachdem Code geschrieben wurde. Dieser Prompt ermöglicht es, Sicherheitsprobleme vor dem Erstellen eines MR zu erkennen und zu beheben – und eliminiert die Abstimmungsschleifen, die Deployments verzögern.\n\n## Wie bleibt Dokumentation mit dem Code auf dem neuesten Stand?\nCode ändert sich schneller als Dokumentation. Neue Teammitglieder benötigen Wochen für das Onboarding, weil Docs veraltet oder unvollständig sind. Dokumentation wird stets als wichtig erkannt, aber bei Deadlines zuerst verschoben. Automatisierte Generierung und Aktualisierung als Teil des Standard-Workflows hält Docs aktuell – ohne zusätzlichen Aufwand.\n\n### Release Notes aus MRs generieren\n**Komplexität**: Einstieg\n**Kategorie**: Dokumentation\n**Prompt aus der Bibliothek**:\n\n```text\n\nGenerate release notes for these merged MRs:\n\n[LIST MR URLs or paste titles]\n\nGroup by:\n\n1. New features\n\n2. Bug fixes\n\n3. Performance improvements\n\n4. Breaking changes\n\n5. Deprecations\n\n```\n**Warum das hilft**: Die manuelle Zusammenstellung von Release Notes dauert Stunden und enthält häufig Lücken oder Fehler. Automatisierte Generierung stellt sicher, dass jedes Release vollständige Notes erhält – ohne zusätzlichen Aufwand im Release-Prozess.\n\n### Dokumentation nach Code-Änderungen aktualisieren\n**Komplexität**: Einstieg\n**Kategorie**: Dokumentation\n**Prompt aus der Bibliothek**:\n\n```text\n\nI changed this code:\n\n[PASTE CODE CHANGES]\n\nWhat documentation needs updating? Check:\n\n1. README files\n\n2. API documentation\n\n3. Architecture diagrams\n\n4. Onboarding guides\n\n```\n**Warum das hilft**: Dokumentation driftet, weil Teams nach Code-Änderungen nicht immer im Blick haben, welche Docs betroffen sind. Dieser Prompt macht Dokumentationspflege zum Teil des Entwicklungsworkflows – statt einer Aufgabe, die aufgeschoben wird.\n\n## Wie lässt sich Planungskomplexität systematisch aufbrechen?\nGroße Features bleiben in der Planungsphase stecken. KI kann komplexe Arbeit strukturiert in konkrete, umsetzbare Aufgaben mit klaren Abhängigkeiten und Akzeptanzkriterien zerlegen – und so wochenlange Abstimmung in fokussierte Implementierung verwandeln.\n\n### Epic in Issues aufteilen\n**Komplexität**: Fortgeschritten\n**Kategorie**: Dokumentation\n**Agent**: Duo Planner\n**Prompt aus der Bibliothek**:\n\n```text\n\nBreak down this epic into implementable issues:\n\n[EPIC DESCRIPTION]\n\nConsider:\n\n1. Technical dependencies\n\n2. Reasonable issue sizes\n\n3. Clear acceptance criteria\n\n4. Logical implementation order\n\n```\n**Warum das hilft**: Dieser Prompt verwandelt eine Woche Planungsmeetings in 30 Minuten KI-gestützte Zerlegung – gefolgt von einer Teamabstimmung. Teams starten früher mit der Implementierung und mit klarerer Ausrichtung.\n\n## Wie lässt sich Testabdeckung ausbauen, ohne den Aufwand zu erhöhen?\nEntwicklerinnen und Entwickler schreiben Code schneller, aber wenn Tests nicht mithalten, sinkt die Testabdeckung und Fehler gelangen in die Produktion. Tests manuell zu schreiben ist aufwändig – und unter Zeitdruck werden Randfälle übersehen. Automatisch generierte Tests bedeuten: prüfen und anpassen statt von Grund auf neu schreiben.\n\n### Unit-Tests generieren\n**Komplexität**: Einstieg\n**Kategorie**: Testing\n**Prompt aus der Bibliothek**:\n\n```text\n\nGenerate unit tests for this function:\n\n[PASTE FUNCTION]\n\nInclude tests for:\n\n1. Happy path\n\n2. Edge cases\n\n3. Error conditions\n\n4. Boundary values\n\n5. Invalid inputs\n\n```\n**Warum das hilft**: Manuelle Tests sind aufwändig, und Randfälle werden unter Zeitdruck oft übersehen. Dieser Prompt generiert umfassende Test-Suites, die Entwicklerinnen und Entwickler prüfen und anpassen – statt von Grund auf zu schreiben.\n\n### Lücken in der Testabdeckung erkennen\n**Komplexität**: Einstieg\n**Kategorie**: Testing\n**Prompt aus der Bibliothek**:\n\n```text\n\nAnalyze test coverage for [MODULE/COMPONENT]:\n\nCurrent coverage: [PERCENTAGE]\n\nIdentify:\n\n1. Untested functions/methods\n\n2. Uncovered edge cases\n\n3. Missing error scenario tests\n\n4. Integration points without tests\n\n5. Priority areas to test next\n\n```\n**Warum das hilft**: Dieser Prompt zeigt blinde Flecken in der Test-Suite auf, bevor sie zu Production-Incidents werden. Teams können die Abdeckung dort systematisch verbessern, wo es am meisten zählt.\n\n## Wie lässt sich die Zeit bis zur Fehlerbehebung verkürzen?\nProduction-Incidents dauern Stunden in der Diagnose. Entwicklerinnen und Entwickler durchsuchen Logs und Stack Traces, während Nutzerinnen und Nutzer Ausfälle erleben. KI beschleunigt die Ursachenanalyse durch Auswertung komplexer Fehlermeldungen und konkrete Lösungsvorschläge – und verkürzt die Diagnosezeit von Stunden auf Minuten.\n\n### Fehlerhafte Pipeline debuggen\n**Komplexität**: Einstieg\n**Kategorie**: Debugging\n**Prompt aus der Bibliothek**:\n\n```text\n\nThis pipeline is failing:\n\nJob: [JOB NAME]\n\nStage: [STAGE]\n\nError: [PASTE ERROR MESSAGE/LOG]\n\nHelp me:\n\n1. Identify the root cause\n\n2. Suggest a fix\n\n3. Explain why it started failing\n\n4. Prevent similar issues\n\n```\n**Warum das hilft**: CI/CD-Ausfälle blockieren das gesamte Team. Dieser Prompt analysiert Fehler in Sekunden statt in den 15 bis 30 Minuten, die Entwicklerinnen und Entwickler typischerweise für die Fehlersuche benötigen.\n\n## Von individuellen Gewinnen zu echter Team-Beschleunigung\nDiese Prompts stehen für einen Ansatz, der KI nicht nur beim individuellen Coding einsetzt, sondern an den Stellen, die Team-Velocity tatsächlich begrenzen: Koordination, Qualitätssicherung und Wissenstransfer.\nDie [vollständige Prompt-Bibliothek](https://about.gitlab.com/gitlab-duo/prompt-library/) enthält mehr als 100 Prompts für alle Phasen des Softwarelebenszyklus – von Planung und Entwicklung über Security und Testing bis hin zu Deployment und Betrieb. Jeder Prompt ist nach Komplexitätsstufe (Einstieg, Fortgeschritten, Experte) und Anwendungsfall kategorisiert.\nMit Prompts der Stufe „Einstieg\" lässt sich am dringendsten Engpass beginnen. Ziel ist nicht schnelleres Coding allein – sondern zuverlässigere, qualitativ hochwertigere Software-Lieferung von der Planung bis zur Produktion.",[25,712],"DevOps platform",{"featured":37,"template":14,"slug":714},"10-ai-prompts-to-speed-your-teams-software-delivery",{"content":716,"config":725},{"title":717,"description":718,"heroImage":719,"authors":720,"date":722,"body":723,"category":10,"tags":724},"KI erkennt Schwachstellen – aber wer verantwortet das Risiko?","KI-gestützte Schwachstellenerkennung entwickelt sich schnell, doch Durchsetzung, Governance und Supply-Chain-Sicherheit erfordern eine integrierte Plattform.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1772195014/ooezwusxjl1f7ijfmbvj.png",[721],"Omer Azaria","2026-02-27","Anthropic hat kürzlich Claude Code Security angekündigt – ein KI-System, das Schwachstellen erkennt und Korrekturen vorschlägt. Die Reaktion der Märkte folgte prompt: Die Aktien von Cybersecurity-Unternehmen gaben nach, als Investoren begannen, die Zukunft klassischer AppSec-Tools in Frage zu stellen. Die Frage, die viele beschäftigt: Wenn KI Code schreiben und absichern kann, wird Anwendungssicherheit dann überflüssig?\n\nWenn Sicherheit nur das Scannen von Code bedeutete, wäre die Antwort vielleicht ja. Aber Enterprise-Sicherheit war noch nie auf Erkennung allein ausgerichtet.\n\nUnternehmen fragen nicht, ob KI Schwachstellen finden kann. Sie stellen drei weitaus schwieriger zu beantwortende Fragen:\n\n* Ist das, was wir ausliefern wollen, sicher?\n* Hat sich unsere Risikolage verändert, während sich Umgebungen, Abhängigkeiten, Drittanbieter-Services, Tools und Infrastruktur kontinuierlich wandeln?\n* Wie lässt sich eine Codebasis steuern, die zunehmend von KI und Drittquellen zusammengestellt wird – für die wir aber weiterhin verantwortlich sind?\n\nDiese Fragen erfordern eine Plattformantwort: Erkennung macht Risiken sichtbar, aber Governance bestimmt, was als nächstes passiert.\n\n[GitLab](https://about.gitlab.com/de-de/) ist die Orchestrierungsschicht, die den Software-Lebenszyklus durchgängig steuert und Teams die Durchsetzung, Transparenz und Nachvollziehbarkeit gibt, die sie brauchen, um mit der Geschwindigkeit KI-gestützter Entwicklung Schritt zu halten.\n\n## KI vertrauen erfordert Governance\n\nKI-Systeme werden zunehmend besser darin, Schwachstellen zu identifizieren und Korrekturen vorzuschlagen. Das ist ein bedeutender Fortschritt – aber Analyse ist keine Verantwortung.\n\nKI kann Unternehmensrichtlinien nicht eigenständig durchsetzen oder akzeptables Risiko definieren. Menschen müssen die Grenzen, Richtlinien und Leitplanken festlegen, innerhalb derer Agenten operieren: Funktionstrennung sicherstellen, Audit-Trails gewährleisten und konsistente Kontrollen über Tausende von Repositories und Teams hinweg aufrechterhalten. Vertrauen in Agenten entsteht nicht durch Autonomie allein, sondern durch klar definierte Governance durch Menschen.\n\nIn einer [agentischen Welt](https://about.gitlab.com/de-de/topics/agentic-ai/), in der Software zunehmend von autonomen Systemen geschrieben und verändert wird, wird Governance wichtiger, nicht unwichtiger. Je mehr Autonomie Unternehmen KI gewähren, desto stärker muss die Governance sein.\n\nGovernance ist keine Bremse. Sie ist das Fundament, das KI-gestützte Entwicklung im Unternehmensmaßstab vertrauenswürdig macht.\n\n## LLMs sehen Code, Plattformen sehen Kontext\n\nEin Large Language Model ([LLM](https://about.gitlab.com/de-de/blog/what-is-a-large-language-model-llm/)) bewertet Code isoliert. Eine Enterprise Application Security-Plattform versteht Kontext. Dieser Unterschied ist entscheidend, weil Risikoentscheidungen kontextabhängig sind:\n\n* Wer hat die Änderung vorgenommen?\n* Wie kritisch ist die Anwendung für das Unternehmen?\n* Wie interagiert sie mit Infrastruktur und Abhängigkeiten?\n* Liegt die Schwachstelle in Code, der tatsächlich in der Produktion erreichbar ist, oder in einer Abhängigkeit, die nie ausgeführt wird?\n* Ist sie in der Produktion tatsächlich ausnutzbar – angesichts der Art, wie die Anwendung läuft, ihrer APIs und der sie umgebenden Umgebung?\n\nSicherheitsentscheidungen hängen von diesem Kontext ab. Fehlt er, produziert Erkennung laute Alarme, die die Entwicklung verlangsamen, anstatt Risiken zu reduzieren. Mit ihm können Unternehmen schnell priorisieren und Risiken gezielt managen. Da sich Kontext mit jeder Softwareänderung weiterentwickelt, kann Governance keine einmalige Entscheidung sein.\n\n## Statische Scans halten mit dynamischem Risiko nicht Schritt\n\nSoftware-Risiko ist dynamisch. Abhängigkeiten ändern sich, Umgebungen entwickeln sich, und Systeme interagieren auf Weisen, die keine einzelne Analyse vollständig vorhersehen kann. Ein sauberer Scan zu einem Zeitpunkt garantiert keine Sicherheit beim Release.\n\nEnterprise-Sicherheit setzt auf kontinuierliche Absicherung: Kontrollen, die direkt in Entwicklungs-Workflows eingebettet sind und Risiken bewerten, während Software entwickelt, getestet und bereitgestellt wird.\n\nErkennung liefert Erkenntnisse. Governance schafft Vertrauen. Kontinuierliche Governance ermöglicht es Unternehmen, im Unternehmensmaßstab sicher auszuliefern.\n\n## Die agentische Zukunft steuern\n\nKI verändert, wie Software entsteht. Die Frage lautet nicht mehr, ob Teams KI einsetzen werden, sondern wie sicher sie dabei skalieren können.\n\nSoftware wird heute ebenso zusammengestellt wie geschrieben – aus KI-generiertem Code, Open-Source-Bibliotheken und Drittanbieter-Abhängigkeiten, die sich über Tausende von Projekten erstrecken. Zu steuern, was über all diese Quellen hinweg ausgeliefert wird, ist der anspruchsvollste Teil der Anwendungssicherheit – und jener, für den kein entwicklerseitiges Tool ausgelegt ist.\n\nAls intelligente Orchestrierungsplattform ist GitLab darauf ausgerichtet, dieses Problem zu lösen. GitLab Ultimate bettet Governance, Richtliniendurchsetzung, Security Scanning und Nachvollziehbarkeit direkt in die Workflows ein, in denen Software geplant, entwickelt und ausgeliefert wird – damit Security-Teams im Tempo von KI steuern können.\n\nKI wird die Entwicklung erheblich beschleunigen. Den größten Nutzen werden nicht die Unternehmen ziehen, die die leistungsfähigsten KI-Assistenten einsetzen, sondern jene, die Vertrauen durch starke Governance aufbauen.\n\n> Wie GitLab Unternehmen dabei hilft, [KI-generierten Code zu steuern und sicher auszuliefern](https://about.gitlab.com/solutions/software-compliance/?utm_medium=blog&utm_campaign=eg_global_x_x_security_en_): [Jetzt mit unserem Team sprechen.](https://about.gitlab.com/sales/?utm_medium=blog&utm_campaign=eg_global_x_x_security_en_)\n\n## Weiterführende Beiträge\n- [KI und DevOps für verbesserte Sicherheit integrieren](https://about.gitlab.com/de-de/topics/devops/ai-enhanced-security/)\n\n- [Das GitLab KI-Sicherheits-Framework für Security-Verantwortliche](https://about.gitlab.com/blog/the-gitlab-ai-security-framework-for-security-leaders/)\n\n- [KI-Sicherheit in GitLab mit Composite Identities verbessern](https://about.gitlab.com/blog/improve-ai-security-in-gitlab-with-composite-identities/)\n\n---\n\n## Für deutsche Unternehmen: Governance als regulatorische Anforderung\n\nDie in diesem Beitrag beschriebenen Governance-Prinzipien adressieren Anforderungen, die regulierte Unternehmen in Deutschland unmittelbar betreffen könnten.\n\nDie NIS-2-Richtlinie (umgesetzt durch das NIS2UmsuCG) verpflichtet betroffene Unternehmen zu Maßnahmen im Bereich Risikoanalyse und Informationssicherheit (Artikel 21 Abs. 2 lit. a), Incident-Handling (Artikel 21 Abs. 2 lit. b) sowie zur Sicherheit in der Software-Lieferkette (Artikel 21 Abs. 2 lit. d) und bei der sicheren Entwicklung (Artikel 21 Abs. 2 lit. e). Die hier beschriebene Unterscheidung zwischen Erkennung und Governance spiegelt genau diese regulatorische Logik wider: Schwachstellen zu finden reicht nicht – entscheidend ist, wer die Reaktion darauf steuert, dokumentiert und verantwortet.\n\nISO 27001 adressiert ähnliche Anforderungen: Zugriffskontrolle (A.5.15–18), Logging und Monitoring (A.8.15–16), Schwachstellenmanagement (A.8.8) sowie Änderungsmanagement (A.8.32) setzen voraus, dass Governance-Prozesse in Entwicklungs-Workflows eingebettet sind – nicht nachgelagert.\n\nFür Unternehmen in regulierten Branchen wie Finanzdienstleistungen (BaFin BAIT §6–7), Automotive (TISAX) oder kritischer Infrastruktur (BSI KRITIS) könnten diese Anforderungen besonders relevant sein. Für konkrete Compliance-Anforderungen empfiehlt sich Rücksprache mit entsprechender Fachberatung.",[25,26],{"featured":13,"template":14,"slug":726},"ai-can-detect-vulnerabilities-but-who-governs-risk",{"promotions":728},[729,742,754],{"id":730,"categories":731,"header":732,"text":733,"button":734,"image":739},"ai-modernization",[10],"Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":735,"config":736},"Get your AI maturity score",{"href":737,"dataGaName":738,"dataGaLocation":250},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":740},{"src":741},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":743,"categories":744,"header":746,"text":733,"button":747,"image":751},"devops-modernization",[27,745],"devsecops","Are you just managing tools or shipping innovation?",{"text":748,"config":749},"Get your DevOps maturity score",{"href":750,"dataGaName":738,"dataGaLocation":250},"/assessments/devops-modernization-assessment/",{"config":752},{"src":753},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":755,"categories":756,"header":757,"text":733,"button":758,"image":762},"security-modernization",[26],"Are you trading speed for security?",{"text":759,"config":760},"Get your security maturity score",{"href":761,"dataGaName":738,"dataGaLocation":250},"/assessments/security-modernization-assessment/",{"config":763},{"src":764},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"header":766,"blurb":767,"button":768,"secondaryButton":773},"Beginne noch heute, schneller zu entwickeln","Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.\n",{"text":769,"config":770},"Kostenlosen Test starten",{"href":771,"dataGaName":56,"dataGaLocation":772},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/de-de/","feature",{"text":58,"config":774},{"href":60,"dataGaName":61,"dataGaLocation":772},1777309994045]