[{"data":1,"prerenderedAt":765},["ShallowReactive",2],{"/de-de/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale":3,"navigation-de-de":44,"banner-de-de":447,"footer-de-de":457,"blog-post-authors-de-de-Susie Bitters":662,"blog-related-posts-de-de-developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale":677,"assessment-promotions-de-de":718,"next-steps-de-de":755},{"id":4,"title":5,"authorSlugs":6,"body":8,"categorySlug":9,"config":10,"content":14,"description":8,"extension":28,"isFeatured":12,"meta":29,"navigation":12,"path":30,"publishedDate":20,"seo":31,"stem":37,"tagSlugs":38,"__hash__":43},"blogPosts/de-de/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale.yml","Developing Gitlab Duo How We Validate And Test Ai Models At Scale",[7],"susie-bitters",null,"ai-ml",{"slug":11,"featured":12,"template":13},"developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale",true,"BlogPost",{"title":15,"description":16,"authors":17,"heroImage":19,"date":20,"body":21,"category":9,"tags":22},"Entwicklung von GitLab Duo: Wie wir KI-Modelle im großen Maßstab validieren und testen","Unsere Blog-Serie beginnt mit einem Blick hinter die Kulissen, wie wir LLMs evaluieren, sie an Anwendungsfälle anpassen und sie optimieren, um bessere Ergebnisse für die Benutzer(innen) zu erzielen.",[18],"Susie Bitters","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659856/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25.png","2024-05-09","**_Generative KI markiert einen monumentalen Wandel in der Softwareentwicklungsbranche, der es einfacher macht, Software zu entwickeln, sicherer zu machen und sie zu betreiben. Unsere neue Blog-Serie von unseren Produkt- und Entwicklungsteams gibt einen Einblick darin, wie wir die KI-Funktionen erstellen, testen und bereitstellen, die in deinem Unternehmen benötigt werden. Lerne neue Funktionen innerhalb von GitLab Duo kennen und wie sie DevSecOps-Teams dabei helfen, bessere Ergebnisse für Kund(inn)en zu erzielen._**\n\nGitLab schätzt das Vertrauen unserer Kund(inn)en in uns. Ein Teil der Aufrechterhaltung dieses Vertrauens ist die Transparenz darüber, wie wir die hochwertige Funktionalität unserer [GitLab Duo](https://about.gitlab.com/de-de/gitlab-duo-agent-platform/) KI-Funktionen erstellen, bewerten und gewährleisten. Die Funktionen von GitLab Duo basieren auf einer Vielzahl von Modellen, die es uns ermöglichen, eine Vielzahl von Anwendungsfällen zu unterstützen und unseren Kund(inn)en Flexibilität zu bieten. GitLab ist von vornherein nicht an einen einzigen Modellanbieter gebunden. Wir verwenden derzeit Foundation-Modelle von [Google](https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/blob/main/ai_gateway/models/vertex_text.py?ref_type=heads#L86) und [Anthropic](https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/blob/main/ai_gateway/models/anthropic.py?ref_type=heads#L62). Wir wägen jedoch kontinuierlich ab, welche Modelle für die Anwendungsfälle von GitLab Duo geeignet sind. In diesem Artikel geben wir einen Einblick in unseren Validierungsprozess für KI-Modelle.\n\n## Was sind LLMs\n\nUmfangreiche Sprachmodelle (Large language models, LLMs) sind generative KI-Modelle, die viele KI-Funktionen innerhalb der GitLab Plattform unterstützen. LLMs wurden mit riesigen Datensätzen trainiert und prognostizieren das nächste Wort in einer Sequenz basierend auf dem vorhergehenden Kontext. Als Antwort auf eine Eingabe (Prompt) von Benutzer(innen) erzeugen sie Text, der der Antwort eines Menschen ähnelt, indem sie abhängig vom Prompt aus der Wahrscheinlichkeitsverteilung von Wörtern ein Muster wiedergeben.\n\nLLMs ermöglichen es, intelligente Codevorschläge, Konversations-Chatbots, Code-Erklärungen, Analysen von Sicherheitslücken und mehr umzusetzen. Ihre Fähigkeit, für einen bestimmten Prompt unterschiedliche Antworten zu erzeugen, macht eine standardisierte Qualitätsbewertung schwierig. Da LLMs für verschiedene Eigenschaften optimiert werden können, werden so viele unterschiedliche KI-Modelle aktiv entwickelt.\n\n## Testen im großen Maßstab\n\nIm Gegensatz zu herkömmlichen Softwaresystemen, bei denen Ein- und Ausgaben einfacher definiert und getestet werden können, erzeugen LLMs Ausgaben, die oft nuanciert, vielfältig und kontextabhängig sind. Um diese Modelle zu testen, sind umfassende Strategien erforderlich, die die subjektiven und variablen Interpretationen von Qualität sowie die stochastische Natur ihrer Ergebnisse berücksichtigen. Wir können daher die Qualität der Ergebnisse eines LLM nicht individuell oder anekdotisch beurteilen. Stattdessen müssen wir in der Lage sein, das Gesamtmuster des Verhaltens eines LLM zu untersuchen. Um ein Gefühl für diese Muster zu bekommen, müssen wir in großem Maßstab testen. Darunter versteht man den Prozess der Bewertung der Leistung, Zuverlässigkeit und Robustheit eines Systems oder einer Anwendung über eine große und vielfältige Anzahl von Datensätzen und Anwendungsfällen. Unser [Centralized Evaluation Framework (CEF)](https://docs.gitlab.com/development/ai_features/ai_evaluation_guidelines/) verwendet Tausende von Prompts, die mit Dutzenden von Anwendungsfällen verknüpft sind, um signifikante Muster zu identifizieren und das Gesamtverhalten unserer grundlegenden LLMs und der GitLab Duo-Funktionen, in die sie integriert sind, zu bewerten.\n\nTesten im großen Maßstab hilft uns bei der:\n\n- **Gewährleistung von Qualität:** Durch Tests im großen Maßstab können wir die Qualität und Zuverlässigkeit dieser Modelle in einer Vielzahl von Szenarien und Inputs bewerten. Indem wir die Ergebnisse dieser Modelle in großem Maßstab validieren, können wir Muster identifizieren und potenzielle Probleme wie systematische Verzerrungen, Anomalien und Ungenauigkeiten abmildern.\n- **Optimierung der Leistung:** Die Intensivierung der Tests ermöglicht es GitLab, die Leistung und Effizienz von LLMs unter realen Bedingungen zu beurteilen. Dazu gehört die Bewertung von Faktoren wie Ausgabequalität, Latenz und der Kosten für die Optimierung der Bereitstellung und des Einsatzes dieser Modelle in GitLab Duo-Funktionen.\n- **Minderung von Risiken:** Das Testen von LLMs im großen Maßstab trägt dazu bei, die mit der Bereitstellung von LLMs in kritischen Anwendungen verbundenen Risiken zu mindern. Durch gründliche Tests über verschiedene Datensätze und Anwendungsfälle hinweg können wir potenzielle Fehlermodi, Sicherheitslücken und ethische Bedenken identifizieren und diese adressieren und beheben, bevor sie sich auf unsere Kund(inn)en auswirken.\n\nDas Testen von LLMs im großen Maßstab ist unerlässlich, um ihre Zuverlässigkeit und Robustheit für ihre Bereitstellung innerhalb der GitLab-Plattform sicherzustellen. Durch die Investition in umfassende Teststrategien, die verschiedene Datensätze, Anwendungsfälle und Szenarien umfassen, arbeitet GitLab daran, das volle Potenzial von KI-gestützten Workflows auszuschöpfen und gleichzeitig potenzielle Risiken zu mindern.\n\n### Wie wir in großem Maßstab testen\n\nDies sind die notwendigen Schritte, um LLMs in großem Maßstab zu testen.\n\n#### Schritt 1: Erstellen einer Prompt-Bibliothek als Proxy für die Produktion\nWährend andere Unternehmen Kundendaten einsehen und verwenden, um ihre KI-Funktionen zu trainieren, tut GitLab dies derzeit nicht.  Deshalb mussten wir eine umfassende Prompt-Bibliothek entwickeln, die sowohl den Umfang als auch die Aktivität der Produktionsumgebung abbildet.\n\nDiese Prompt-Bibliothek besteht aus Fragen und Antworten. Die Fragen stellen die Art von Abfragen oder Eingaben dar, die wir in der Produktionsumgebung erwarten würden, während die Antworten eine Grundwahrheit darüber darstellen, was unsere ideale Antwort wäre. Diese Referenzantwort könnte auch als Zielantwort formuliert werden. Sowohl die Frage als auch die Antwort können, aber müssen nicht von Menschen generiert werden. Diese Frage-Antwort-Paare geben uns eine Vergleichsbasis und einen Bezugsrahmen, mit dem wir die Unterschiede zwischen Modellen und Funktionen herausarbeiten können. Wenn mehreren Modellen dieselbe Frage gestellt wird und sie unterschiedliche Antworten erzeugen, können wir anhand unserer Referenzantwort feststellen, welches Modell eine Antwort gegeben hat, die unserem Ziel am nächsten kommt, und sie entsprechend bewerten.\n\nAuch hier ist ein zentrales Element einer umfassenden Prompt-Bibliothek, dass sie repräsentativ für die Eingaben ist, die wir in der Produktionsumgebung erwarten. Wir möchten wissen, wie gut die grundlegenden Modelle zu unserem spezifischen Anwendungsfall passen und wie gut unsere Funktionen funktionieren. Es gibt zahlreiche Datensätze mit Benchmark-Prompts, aber diese Datensätze spiegeln möglicherweise nicht die Anwendungsfälle wider, die wir bei GitLab annehmen. Unsere Prompt-Bibliothek ist so konzipiert, dass sie speziell auf die Funktionen und Anwendungsfälle von GitLab zugeschnitten ist.\n\n#### Schritt 2: Leistung des Basismodells\n\nSobald wir eine Prompt-Bibliothek erstellt haben, die die Produktionsaktivitäten genau widerspiegelt, geben wir diese Fragen in [verschiedene Modelle](https://docs.gitlab.com/development/ai_features/ai_evaluation_guidelines/) ein, um zu testen, wie gut sie den Bedürfnissen unserer Kund(inn)en entsprechen. Wir vergleichen jede Antwort mit unserer Grundwahrheit und reihen sie in eine Rangfolge ein, die auf einer Reihe von Metriken basiert, wie zum Beispiel: [Cosine Similarity Score](https://docs.gitlab.com/development/ai_features/glossary/), [Cross Similarity Score](https://docs.gitlab.com/development/ai_features/glossary/),  [LLM Judge](https://docs.gitlab.com/development/ai_features/glossary/), und [Consensus Filtering mit LLM Judge](https://docs.gitlab.com/development/ai_features/glossary/). Diese erste Iteration liefert uns einen Anhaltspunkt dafür, wie gut die einzelnen Modelle abschneiden, und hilft uns bei der Auswahl eines grundlegenden Modells für unsere Einsatzbereiche. Um uns kurz zu fassen, werden wir hier nicht ins Detail gehen, aber du kannst [hier mehr über die Metriken erfahren](https://docs.gitlab.com/development/ai_features/ai_evaluation_guidelines/). Es ist wichtig zu wissen, dass dieses Problem nicht gelöst ist. Die KI-Branche forscht aktiv an neuen Techniken und entwickelt sie weiter. Das Modellvalidierungsteam von GitLab behält die Branche im Auge und arbeitet ständig daran, wie wir die von GitLab Duo verwendeten LLMs prüfen und bewerten.\n\n#### Schritt 3: Funktionsentwicklung\n\nJetzt, da wir eine Grundlage für die Leistung unseres ausgewählten Modells haben, können wir mit den gewonnen Daten unsere Plattform weiterentwickeln. Prompt-Engineering ist zwar sehr populär, aber wenn man sich ausschließlich darauf konzentriert, das Verhalten eines Modells durch Prompting (oder eine andere Technik) zu verändern, ohne es zu validieren, stochert man im Dunkeln und passt sein Prompting sehr wahrscheinlich zu stark an. Man löst vielleicht ein Problem, aber verursacht ein Dutzend andere. Und es würde wahrscheinlich nie auffallen. Wenn wir eine Grundlinie für die Leistung eines Modells festlegen, können wir verfolgen, wie sich das Verhalten im Laufe der Zeit für alle notwendigen Anwendungsfälle verändert. Bei GitLab überprüfen wir die Leistung unserer GitLab Duo Funktionen während der aktiven Entwicklung täglich neu, um sicherzustellen, dass alle Änderungen die Gesamtfunktionalität verbessern.\n\n#### Schritt 4: Iterieren, iterieren, iterieren\n\nUnsere experimentellen Iterationen funktionieren wie folgt: In jedem Durchgang untersuchen wir die Ergebnisse unserer Tests im großen Maßstab, um Muster zu erkennen:\n\n- Was haben unsere schwächsten Bereiche gemeinsam?\n- Verhält sich unsere Funktion für eine bestimmte Metrik oder in einem bestimmten Anwendungsfall ungünstig?\n- Gibt es bei bestimmten Fragen immer wieder dieselben Fehler?\n\nSolche Muster tauchen nur dann auf, wenn wir in großem Maßstab testen, und nur so können wir unsere Experimente optimieren. Auf der Grundlage dieser Muster schlagen wir verschiedene Experimente oder Ansätze vor, um die Leistung in einem bestimmten Bereich und für eine bestimmte Metrik zu verbessern.\n\nTesten im großen Maßstab ist jedoch sowohl teuer als auch zeitaufwendig. Um eine schnellere und kostengünstigere Iteration zu ermöglichen, erstellen wir einen kleineren Datensatz, der als Mini-Proxy fungiert. Die begrenzte Teilmenge wird so gewichtet, dass sie genau die Frage-Antwort-Paare enthält, die wir verbessern möchten. Die erweiterte Teilmenge enthält auch eine Auswahl aller anderen Anwendungsfälle und Bewertungen, um sicherzustellen, dass sich unsere Änderungen nicht nachteilig auf die allgemeine Funktionalität auswirken. Wir nehmen also Änderungen vor und überprüfen sie gegen eine begrenzte Teilmenge der Daten. Wie sieht die neue Antwort im Vergleich zur Ausgangslage aus? Wie verhält es sich mit der Grundwahrheit?\n\nSobald wir einen Prompt gefunden haben, der sich auf den spezifischen Anwendungsfall bezieht, an dem wir gerade mit der begrenzten Teilmenge arbeiten, validieren wir diesen Prompt anhand einer erweiterten Teilmenge von Daten, um sicherzustellen, dass er sich nicht nachteilig auf andere Bereiche auswirkt. Nur wenn wir durch die Validierungsmetriken der Meinung sind, dass der neue Prompt unsere Leistung in unserem Zielbereich verbessert UND die Leistung an anderer Stelle nicht verschlechtert, setzen wir diese Änderung in der Produktionsumgebung um.\n\nDas gesamte Centralized Evaluation Framework wird dann mit dem neuen Prompt ausgeführt und wir überprüfen, ob die Leistung der gesamten Funktionalität gegenüber der Ausgangssituation vom Vortag verbessert wurde. Auf diese Weise stellt GitLab durch ständige Iterationen sicher, dass du im gesamten GitLab-Ökosystem die neueste und beste Leistung der KI-gestützten Funktionen erhältst. So können wir sicherstellen, dass wir gemeinsam immer schneller arbeiten.\n\n### GitLab Duo noch besser machen\n\nWir hoffen, dass wir dir hiermit einen Einblick geben konnten, wie wir die Funktionen von GitLab Duo verantwortungsvoll entwickeln. Dieser Prozess wurde entwickelt, um [GitLab Duo Codevorschläge](https://docs.gitlab.com/ee/user/project/repository/code_suggestions/) und [GitLab Duo Chat](https://docs.gitlab.com/ee/user/gitlab_duo_chat.html) allgemein verfügbar zu machen. Wir haben diesen Validierungsprozess auch in unseren Entwicklungsprozess integriert, wenn wir die Funktionen von GitLab Duo weiterentwickeln. Es bedeutet unzählige Versuche und Fehlschläge, und oft macht die Korrektur eines Punkts drei andere kaputt. Aber wir erhalten dabei auch datengestützte Einblicke in diese Auswirkungen und können so sicherstellen, dass GitLab Duo immer besser wird.\n\n> Starte noch heute deine [kostenlose Testversion von GitLab Duo](https://about.gitlab.com/gitlab-duo-agent-platform/#free-trial)!\n\n\u003Cfigure class=video_container>\n\u003Ciframe width=560 height=315 src=\"https://www.youtube-nocookie.com/embed/LifJdU3Qagw?si=A4kl6d32wPYC4168\" title=\"YouTube video player\" frameborder=0 allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen=\"\">\u003C/iframe>\n\u003C/figure>",[23,24,25,26,27],"AI/ML","DevSecOps","DevSecOps platform","features","inside GitLab","yml",{},"/de-de/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale",{"ogTitle":32,"ogImage":19,"ogDescription":16,"ogSiteName":33,"noIndex":34,"ogType":35,"ogUrl":36,"title":32,"canonicalUrls":36,"description":16},"GitLab Duo – Wie wir LLMs validieren & testen","https://about.gitlab.com",false,"article","https://about.gitlab.com/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale","de-de/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale",[39,40,41,26,42],"aiml","devsecops","devsecops-platform","inside-gitlab","PwMTSyr7cn7wmI1jS_adJt53c9MsXPUjYtHYeHF1UxE",{"data":45},{"logo":46,"freeTrial":51,"sales":56,"login":61,"items":66,"search":375,"minimal":410,"duo":428,"pricingDeployment":437},{"config":47},{"href":48,"dataGaName":49,"dataGaLocation":50},"/de-de/","gitlab logo","header",{"text":52,"config":53},"Kostenlose Testversion anfordern",{"href":54,"dataGaName":55,"dataGaLocation":50},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":57,"config":58},"Vertrieb kontaktieren",{"href":59,"dataGaName":60,"dataGaLocation":50},"/de-de/sales/","sales",{"text":62,"config":63},"Anmelden",{"href":64,"dataGaName":65,"dataGaLocation":50},"https://gitlab.com/users/sign_in/","sign in",[67,94,190,195,296,356],{"text":68,"config":69,"cards":71},"Plattform",{"dataNavLevelOne":70},"platform",[72,78,86],{"title":68,"description":73,"link":74},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":75,"config":76},"Erkunde unsere Plattform",{"href":77,"dataGaName":70,"dataGaLocation":50},"/de-de/platform/",{"title":79,"description":80,"link":81},"GitLab Duo Agent Platform","Agentische KI für den gesamten Softwareentwicklungszyklus",{"text":82,"config":83},"Lerne GitLab Duo kennen",{"href":84,"dataGaName":85,"dataGaLocation":50},"/de-de/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":87,"description":88,"link":89},"Gründe, die für GitLab sprechen","Erfahre, warum Unternehmen auf GitLab setzen",{"text":90,"config":91},"Mehr erfahren",{"href":92,"dataGaName":93,"dataGaLocation":50},"/de-de/why-gitlab/","why gitlab",{"text":95,"left":12,"config":96,"link":98,"lists":102,"footer":172},"Produkt",{"dataNavLevelOne":97},"solutions",{"text":99,"config":100},"Alle Lösungen anzeigen",{"href":101,"dataGaName":97,"dataGaLocation":50},"/de-de/solutions/",[103,128,150],{"title":104,"description":105,"link":106,"items":111},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":107},{"icon":108,"href":109,"dataGaName":110,"dataGaLocation":50},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[112,116,119,124],{"text":113,"config":114},"CI/CD",{"href":115,"dataGaLocation":50,"dataGaName":113},"/de-de/solutions/continuous-integration/",{"text":79,"config":117},{"href":84,"dataGaLocation":50,"dataGaName":118},"gitlab duo agent platform - product menu",{"text":120,"config":121},"Quellcodeverwaltung",{"href":122,"dataGaLocation":50,"dataGaName":123},"/de-de/solutions/source-code-management/","Source Code Management",{"text":125,"config":126},"Automatisierte Softwarebereitstellung",{"href":109,"dataGaLocation":50,"dataGaName":127},"Automated software delivery",{"title":129,"description":130,"link":131,"items":136},"Sicherheit","Entwickle schneller, ohne die Sicherheit zu gefährden",{"config":132},{"href":133,"dataGaName":134,"dataGaLocation":50,"icon":135},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[137,141,146],{"text":138,"config":139},"Application Security Testing",{"href":133,"dataGaName":140,"dataGaLocation":50},"Application security testing",{"text":142,"config":143},"Schutz der Software-Lieferkette",{"href":144,"dataGaLocation":50,"dataGaName":145},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":147,"config":148},"Software Compliance",{"href":149,"dataGaName":147,"dataGaLocation":50},"/de-de/solutions/software-compliance/",{"title":151,"link":152,"items":157},"Bewertung",{"config":153},{"icon":154,"href":155,"dataGaName":156,"dataGaLocation":50},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[158,162,167],{"text":159,"config":160},"Sichtbarkeit und Bewertung",{"href":155,"dataGaLocation":50,"dataGaName":161},"Visibility and Measurement",{"text":163,"config":164},"Wertstrommanagement",{"href":165,"dataGaLocation":50,"dataGaName":166},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":168,"config":169},"Analysen und Einblicke",{"href":170,"dataGaLocation":50,"dataGaName":171},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":173,"items":174},"GitLab für",[175,180,185],{"text":176,"config":177},"Enterprise",{"href":178,"dataGaLocation":50,"dataGaName":179},"/de-de/enterprise/","enterprise",{"text":181,"config":182},"Kleinunternehmen",{"href":183,"dataGaLocation":50,"dataGaName":184},"/de-de/small-business/","small business",{"text":186,"config":187},"den öffentlichen Sektor",{"href":188,"dataGaLocation":50,"dataGaName":189},"/de-de/solutions/public-sector/","public sector",{"text":191,"config":192},"Preise",{"href":193,"dataGaName":194,"dataGaLocation":50,"dataNavLevelOne":194},"/de-de/pricing/","pricing",{"text":196,"config":197,"link":199,"lists":203,"feature":283},"Ressourcen",{"dataNavLevelOne":198},"resources",{"text":200,"config":201},"Alle Ressourcen anzeigen",{"href":202,"dataGaName":198,"dataGaLocation":50},"/de-de/resources/",[204,237,255],{"title":205,"items":206},"Erste Schritte",[207,212,217,222,227,232],{"text":208,"config":209},"Installieren",{"href":210,"dataGaName":211,"dataGaLocation":50},"/de-de/install/","install",{"text":213,"config":214},"Kurzanleitungen",{"href":215,"dataGaName":216,"dataGaLocation":50},"/de-de/get-started/","quick setup checklists",{"text":218,"config":219},"Lernen",{"href":220,"dataGaLocation":50,"dataGaName":221},"https://university.gitlab.com/","learn",{"text":223,"config":224},"Produktdokumentation",{"href":225,"dataGaName":226,"dataGaLocation":50},"https://docs.gitlab.com/","product documentation",{"text":228,"config":229},"Best-Practice-Videos",{"href":230,"dataGaName":231,"dataGaLocation":50},"/de-de/getting-started-videos/","best practice videos",{"text":233,"config":234},"Integrationen",{"href":235,"dataGaName":236,"dataGaLocation":50},"/de-de/integrations/","integrations",{"title":238,"items":239},"Entdecken",[240,245,250],{"text":241,"config":242},"Kundenerfolge",{"href":243,"dataGaName":244,"dataGaLocation":50},"/de-de/customers/","customer success stories",{"text":246,"config":247},"Blog",{"href":248,"dataGaName":249,"dataGaLocation":50},"/de-de/blog/","blog",{"text":251,"config":252},"Remote",{"href":253,"dataGaName":254,"dataGaLocation":50},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":256,"items":257},"Vernetzen",[258,263,268,273,278],{"text":259,"config":260},"GitLab-Services",{"href":261,"dataGaName":262,"dataGaLocation":50},"/de-de/services/","services",{"text":264,"config":265},"Community",{"href":266,"dataGaName":267,"dataGaLocation":50},"/community/","community",{"text":269,"config":270},"Forum",{"href":271,"dataGaName":272,"dataGaLocation":50},"https://forum.gitlab.com/","forum",{"text":274,"config":275},"Veranstaltungen",{"href":276,"dataGaName":277,"dataGaLocation":50},"/events/","events",{"text":279,"config":280},"Partner",{"href":281,"dataGaName":282,"dataGaLocation":50},"/de-de/partners/","partners",{"backgroundColor":284,"textColor":285,"text":286,"image":287,"link":291},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":288,"config":289},"the source promo card",{"src":290},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":292,"config":293},"Lies die News",{"href":294,"dataGaName":295,"dataGaLocation":50},"/de-de/the-source/","the source",{"text":297,"config":298,"lists":300},"Unternehmen",{"dataNavLevelOne":299},"company",[301],{"items":302},[303,308,314,316,321,326,331,336,341,346,351],{"text":304,"config":305},"Über",{"href":306,"dataGaName":307,"dataGaLocation":50},"/de-de/company/","about",{"text":309,"config":310,"footerGa":313},"Karriere",{"href":311,"dataGaName":312,"dataGaLocation":50},"/jobs/","jobs",{"dataGaName":312},{"text":274,"config":315},{"href":276,"dataGaName":277,"dataGaLocation":50},{"text":317,"config":318},"Geschäftsführung",{"href":319,"dataGaName":320,"dataGaLocation":50},"/company/team/e-group/","leadership",{"text":322,"config":323},"Team",{"href":324,"dataGaName":325,"dataGaLocation":50},"/company/team/","team",{"text":327,"config":328},"Handbuch",{"href":329,"dataGaName":330,"dataGaLocation":50},"https://handbook.gitlab.com/","handbook",{"text":332,"config":333},"Investor Relations",{"href":334,"dataGaName":335,"dataGaLocation":50},"https://ir.gitlab.com/","investor relations",{"text":337,"config":338},"Trust Center",{"href":339,"dataGaName":340,"dataGaLocation":50},"/de-de/security/","trust center",{"text":342,"config":343},"AI Transparency Center",{"href":344,"dataGaName":345,"dataGaLocation":50},"/de-de/ai-transparency-center/","ai transparency center",{"text":347,"config":348},"Newsletter",{"href":349,"dataGaName":350,"dataGaLocation":50},"/company/contact/#contact-forms","newsletter",{"text":352,"config":353},"Presse",{"href":354,"dataGaName":355,"dataGaLocation":50},"/press/","press",{"text":357,"config":358,"lists":359},"Kontakt",{"dataNavLevelOne":299},[360],{"items":361},[362,365,370],{"text":57,"config":363},{"href":59,"dataGaName":364,"dataGaLocation":50},"talk to sales",{"text":366,"config":367},"Support-Portal",{"href":368,"dataGaName":369,"dataGaLocation":50},"https://support.gitlab.com","support portal",{"text":371,"config":372},"Kundenportal",{"href":373,"dataGaName":374,"dataGaLocation":50},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":376,"login":377,"suggestions":384},"Schließen",{"text":378,"link":379},"Um Repositories und Projekte zu durchsuchen, melde dich an bei",{"text":380,"config":381},"gitlab.com",{"href":64,"dataGaName":382,"dataGaLocation":383},"search login","search",{"text":385,"default":386},"Vorschläge",[387,389,394,396,401,406],{"text":79,"config":388},{"href":84,"dataGaName":79,"dataGaLocation":383},{"text":390,"config":391},"Code Suggestions (KI)",{"href":392,"dataGaName":393,"dataGaLocation":383},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":113,"config":395},{"href":115,"dataGaName":113,"dataGaLocation":383},{"text":397,"config":398},"GitLab auf AWS",{"href":399,"dataGaName":400,"dataGaLocation":383},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":402,"config":403},"GitLab auf Google Cloud",{"href":404,"dataGaName":405,"dataGaLocation":383},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":407,"config":408},"Warum GitLab?",{"href":92,"dataGaName":409,"dataGaLocation":383},"Why GitLab?",{"freeTrial":411,"mobileIcon":416,"desktopIcon":421,"secondaryButton":424},{"text":412,"config":413},"Kostenlos testen",{"href":414,"dataGaName":55,"dataGaLocation":415},"https://gitlab.com/-/trials/new/","nav",{"altText":417,"config":418},"GitLab-Symbol",{"src":419,"dataGaName":420,"dataGaLocation":415},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":417,"config":422},{"src":423,"dataGaName":420,"dataGaLocation":415},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":205,"config":425},{"href":426,"dataGaName":427,"dataGaLocation":415},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":429,"mobileIcon":433,"desktopIcon":435},{"text":430,"config":431},"Erfahre mehr über GitLab Duo",{"href":84,"dataGaName":432,"dataGaLocation":415},"gitlab duo",{"altText":417,"config":434},{"src":419,"dataGaName":420,"dataGaLocation":415},{"altText":417,"config":436},{"src":423,"dataGaName":420,"dataGaLocation":415},{"freeTrial":438,"mobileIcon":443,"desktopIcon":445},{"text":439,"config":440},"Zurück zur Preisübersicht",{"href":193,"dataGaName":441,"dataGaLocation":415,"icon":442},"back to pricing","GoBack",{"altText":417,"config":444},{"src":419,"dataGaName":420,"dataGaLocation":415},{"altText":417,"config":446},{"src":423,"dataGaName":420,"dataGaLocation":415},{"title":448,"button":449,"config":454},"Sieh dir an, wie agentische KI die Softwarebereitstellung transformiert",{"text":450,"config":451},"GitLab Transcend jetzt ansehen",{"href":452,"dataGaName":453,"dataGaLocation":50},"/de-de/events/transcend/virtual/","transcend event",{"layout":455,"icon":456,"disabled":12},"release","AiStar",{"data":458},{"text":459,"source":460,"edit":466,"contribute":471,"config":476,"items":481,"minimal":654},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":461,"config":462},"Quelltext der Seite anzeigen",{"href":463,"dataGaName":464,"dataGaLocation":465},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":467,"config":468},"Diese Seite bearbeiten",{"href":469,"dataGaName":470,"dataGaLocation":465},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":472,"config":473},"Beteilige dich",{"href":474,"dataGaName":475,"dataGaLocation":465},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":477,"facebook":478,"youtube":479,"linkedin":480},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[482,505,560,587,621],{"title":68,"links":483,"subMenu":488},[484],{"text":485,"config":486},"DevSecOps-Plattform",{"href":77,"dataGaName":487,"dataGaLocation":465},"devsecops platform",[489],{"title":191,"links":490},[491,495,500],{"text":492,"config":493},"Tarife anzeigen",{"href":193,"dataGaName":494,"dataGaLocation":465},"view plans",{"text":496,"config":497},"Vorteile von Premium",{"href":498,"dataGaName":499,"dataGaLocation":465},"/de-de/pricing/premium/","why premium",{"text":501,"config":502},"Vorteile von Ultimate",{"href":503,"dataGaName":504,"dataGaLocation":465},"/de-de/pricing/ultimate/","why ultimate",{"title":506,"links":507},"Lösungen",[508,513,516,518,523,528,532,535,538,543,545,547,550,555],{"text":509,"config":510},"Digitale Transformation",{"href":511,"dataGaName":512,"dataGaLocation":465},"/de-de/topics/digital-transformation/","digital transformation",{"text":514,"config":515},"Sicherheit und Compliance",{"href":133,"dataGaName":140,"dataGaLocation":465},{"text":125,"config":517},{"href":109,"dataGaName":110,"dataGaLocation":465},{"text":519,"config":520},"Agile Entwicklung",{"href":521,"dataGaName":522,"dataGaLocation":465},"/de-de/solutions/agile-delivery/","agile delivery",{"text":524,"config":525},"Cloud-Transformation",{"href":526,"dataGaName":527,"dataGaLocation":465},"/de-de/topics/cloud-native/","cloud transformation",{"text":529,"config":530},"SCM",{"href":122,"dataGaName":531,"dataGaLocation":465},"source code management",{"text":113,"config":533},{"href":115,"dataGaName":534,"dataGaLocation":465},"continuous integration & delivery",{"text":163,"config":536},{"href":165,"dataGaName":537,"dataGaLocation":465},"value stream management",{"text":539,"config":540},"GitOps",{"href":541,"dataGaName":542,"dataGaLocation":465},"/de-de/solutions/gitops/","gitops",{"text":176,"config":544},{"href":178,"dataGaName":179,"dataGaLocation":465},{"text":181,"config":546},{"href":183,"dataGaName":184,"dataGaLocation":465},{"text":548,"config":549},"Öffentlicher Sektor",{"href":188,"dataGaName":189,"dataGaLocation":465},{"text":551,"config":552},"Bildungswesen",{"href":553,"dataGaName":554,"dataGaLocation":465},"/de-de/solutions/education/","education",{"text":556,"config":557},"Finanzdienstleistungen",{"href":558,"dataGaName":559,"dataGaLocation":465},"/de-de/solutions/finance/","financial services",{"title":196,"links":561},[562,564,566,568,571,573,575,577,579,581,583,585],{"text":208,"config":563},{"href":210,"dataGaName":211,"dataGaLocation":465},{"text":213,"config":565},{"href":215,"dataGaName":216,"dataGaLocation":465},{"text":218,"config":567},{"href":220,"dataGaName":221,"dataGaLocation":465},{"text":223,"config":569},{"href":225,"dataGaName":570,"dataGaLocation":465},"docs",{"text":246,"config":572},{"href":248,"dataGaName":249,"dataGaLocation":465},{"text":241,"config":574},{"href":243,"dataGaName":244,"dataGaLocation":465},{"text":251,"config":576},{"href":253,"dataGaName":254,"dataGaLocation":465},{"text":259,"config":578},{"href":261,"dataGaName":262,"dataGaLocation":465},{"text":264,"config":580},{"href":266,"dataGaName":267,"dataGaLocation":465},{"text":269,"config":582},{"href":271,"dataGaName":272,"dataGaLocation":465},{"text":274,"config":584},{"href":276,"dataGaName":277,"dataGaLocation":465},{"text":279,"config":586},{"href":281,"dataGaName":282,"dataGaLocation":465},{"title":297,"links":588},[589,591,593,595,597,599,601,605,610,612,614,616],{"text":304,"config":590},{"href":306,"dataGaName":299,"dataGaLocation":465},{"text":309,"config":592},{"href":311,"dataGaName":312,"dataGaLocation":465},{"text":317,"config":594},{"href":319,"dataGaName":320,"dataGaLocation":465},{"text":322,"config":596},{"href":324,"dataGaName":325,"dataGaLocation":465},{"text":327,"config":598},{"href":329,"dataGaName":330,"dataGaLocation":465},{"text":332,"config":600},{"href":334,"dataGaName":335,"dataGaLocation":465},{"text":602,"config":603},"Sustainability",{"href":604,"dataGaName":602,"dataGaLocation":465},"/sustainability/",{"text":606,"config":607},"Vielfalt, Inklusion und Zugehörigkeit",{"href":608,"dataGaName":609,"dataGaLocation":465},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":337,"config":611},{"href":339,"dataGaName":340,"dataGaLocation":465},{"text":347,"config":613},{"href":349,"dataGaName":350,"dataGaLocation":465},{"text":352,"config":615},{"href":354,"dataGaName":355,"dataGaLocation":465},{"text":617,"config":618},"Transparenzerklärung zu moderner Sklaverei",{"href":619,"dataGaName":620,"dataGaLocation":465},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":622,"links":623},"Nimm Kontakt auf",[624,627,632,634,639,644,649],{"text":625,"config":626},"Sprich mit einem Experten/einer Expertin",{"href":59,"dataGaName":60,"dataGaLocation":465},{"text":628,"config":629},"Support",{"href":630,"dataGaName":631,"dataGaLocation":465},"https://support.gitlab.com/hc/en-us/articles/11626483177756-GitLab-Support","get help",{"text":371,"config":633},{"href":373,"dataGaName":374,"dataGaLocation":465},{"text":635,"config":636},"Status",{"href":637,"dataGaName":638,"dataGaLocation":465},"https://status.gitlab.com/","status",{"text":640,"config":641},"Nutzungsbedingungen",{"href":642,"dataGaName":643,"dataGaLocation":465},"/terms/","terms of use",{"text":645,"config":646},"Datenschutzerklärung",{"href":647,"dataGaName":648,"dataGaLocation":465},"/de-de/privacy/","privacy statement",{"text":650,"config":651},"Cookie-Einstellungen",{"dataGaName":652,"dataGaLocation":465,"id":653,"isOneTrustButton":12},"cookie preferences","ot-sdk-btn",{"items":655},[656,658,660],{"text":640,"config":657},{"href":642,"dataGaName":643,"dataGaLocation":465},{"text":645,"config":659},{"href":647,"dataGaName":648,"dataGaLocation":465},{"text":650,"config":661},{"dataGaName":652,"dataGaLocation":465,"id":653,"isOneTrustButton":12},[663],{"id":664,"title":18,"body":8,"config":665,"content":667,"description":8,"extension":28,"meta":672,"navigation":12,"path":673,"seo":674,"stem":675,"__hash__":676},"blogAuthors/en-us/blog/authors/susie-bitters.yml",{"template":666},"BlogAuthor",{"name":18,"config":668},{"headshot":669,"linkedin":670,"ctfId":671},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664195/Blog/Author%20Headshots/susiebittersheadshot.png","https://www.linkedin.com/in/susie-bitters-33268410/","7yiomgeGp9k4a4srjDU1QK",{},"/en-us/blog/authors/susie-bitters",{},"en-us/blog/authors/susie-bitters","oXfcK-Cd6FO2mDuWYTMXFhcY16XNSSAcyheiVIWVd2k",[678,692,705],{"content":679,"config":690},{"heroImage":680,"title":681,"description":682,"authors":683,"date":685,"category":9,"tags":686,"body":689},"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.",[684],"Albert Rabassa","2026-03-05",[9,687,688],"product","tutorial","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":34,"template":13,"slug":691},"extend-gitlab-duo-agent-platform-connect-any-tool-with-mcp",{"content":693,"config":703},{"title":694,"description":695,"authors":696,"heroImage":698,"date":699,"body":700,"category":9,"tags":701},"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.",[697],"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.",[23,702],"DevOps platform",{"featured":34,"template":13,"slug":704},"10-ai-prompts-to-speed-your-teams-software-delivery",{"content":706,"config":716},{"title":707,"description":708,"heroImage":709,"authors":710,"date":712,"body":713,"category":9,"tags":714},"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",[711],"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.",[23,715],"security",{"featured":12,"template":13,"slug":717},"ai-can-detect-vulnerabilities-but-who-governs-risk",{"promotions":719},[720,733,744],{"id":721,"categories":722,"header":723,"text":724,"button":725,"image":730},"ai-modernization",[9],"Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":726,"config":727},"Get your AI maturity score",{"href":728,"dataGaName":729,"dataGaLocation":249},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":731},{"src":732},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":734,"categories":735,"header":736,"text":724,"button":737,"image":741},"devops-modernization",[687,40],"Are you just managing tools or shipping innovation?",{"text":738,"config":739},"Get your DevOps maturity score",{"href":740,"dataGaName":729,"dataGaLocation":249},"/assessments/devops-modernization-assessment/",{"config":742},{"src":743},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":745,"categories":746,"header":747,"text":724,"button":748,"image":752},"security-modernization",[715],"Are you trading speed for security?",{"text":749,"config":750},"Get your security maturity score",{"href":751,"dataGaName":729,"dataGaLocation":249},"/assessments/security-modernization-assessment/",{"config":753},{"src":754},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"header":756,"blurb":757,"button":758,"secondaryButton":763},"Beginne noch heute, schneller zu entwickeln","Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.\n",{"text":759,"config":760},"Kostenlosen Test starten",{"href":761,"dataGaName":55,"dataGaLocation":762},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/de-de/","feature",{"text":57,"config":764},{"href":59,"dataGaName":60,"dataGaLocation":762},1777309974259]