[{"data":1,"prerenderedAt":1200},["ShallowReactive",2],{"/de-de/blog/use-gitlab-duo-workflow-to-improve-application-quality-assurance":3,"navigation-de-de":417,"banner-de-de":849,"footer-de-de":857,"blog-post-authors-de-de-Cesar Saavedra":1098,"blog-related-posts-de-de-use-gitlab-duo-workflow-to-improve-application-quality-assurance":1113,"blog-promotions-de-de":1138,"next-steps-de-de":1190},{"id":4,"title":5,"authors":6,"body":8,"category":392,"date":393,"description":394,"extension":395,"externalUrl":396,"faq":396,"featured":397,"heroImage":398,"meta":399,"navigation":400,"path":401,"seo":402,"slug":406,"stem":407,"tags":408,"template":414,"updatedDate":415,"__hash__":416},"blogPosts/de-de/blog/use-gitlab-duo-workflow-to-improve-application-quality-assurance.md","Verbesserte Qualitätssicherung von Anwendungen mit GitLab Duo Workflow",[7],"Cesar Saavedra",{"type":9,"value":10,"toc":385},"minimark",[11,28,39,44,54,61,74,89,95,101,173,176,182,192,198,226,232,241,247,250,259,263,273,279,285,293,296,308,314,318,321,324,337,347,351,381],[12,13,14,15,21,22,27],"p",{},"Die Qualität deiner Anwendungen durch testbasiertes Design, gute Testabdeckung und Fehlererkennung sicherzustellen, ist für deine Kund(inn)en und deinen Ruf immens wichtig, kann aber auch ziemlich zeitaufwändig sein. ",[16,17,20],"a",{"href":18,"rel":19},"https://about.gitlab.com/de-de/gitlab-duo-agent-platform/",[],"GitLab Duo Workflow",", eine agentische KI, die auf der umfassendsten DevSecOps-Plattform aufbaut, kann dir dabei helfen, Entwicklungsaufgaben wie das Hinzufügen von Unit-Tests zu einer Java-Anwendung schnell zu erledigen. In diesem Tutorial siehst du anhand eines ",[16,23,26],{"href":24,"rel":25},"https://gitlab.com/gitlab-da/playground/csaavedra/gdw/prodmgr-gdw",[],"Java-Beispielprojekts",", wie das geht.",[29,30,31],"blockquote",{},[12,32,33,34,38],{},"Der GitLab Duo Workflow befindet sich derzeit in der privaten Beta-Phase. Trag dich in die ",[16,35,37],{"href":18,"rel":36},[],"Warteliste"," ein, um zu erfahren, was du mit KI-Tools, die deinen gesamten SDLC verstehen, alles machen kannst.",[40,41,43],"h2",{"id":42},"öffne-dein-projekt-in-vscode","Öffne dein Projekt in VS Code",[45,46,47,51],"ol",{},[48,49,50],"li",{},"Öffne das Java-Projekt in Visual Studio Code (nachdem du es auf deinen lokalen Computer geklont hast). Stelle sicher, dass du dich in einem Feature-Branch befindest (nicht im main- oder default-Branch), bevor du beginnst. Wenn du schon an einem Merge Request arbeitest, hat dieser einen eigenen Feature-Branch.",[48,52,53],{},"(Dieser Schritt ist optional.) Gehe zu der Datei, die die Java-Klasse definiert, für die du mit GitLab Duo Workflow Unit-Tests erstellen möchtest. Sieh sie dir genau an, damit du später überprüfen kannst, ob die generierten Unit-Tests die Komponenten der Klasse abdecken. Das solltest du sehen:",[12,55,56],{},[57,58],"img",{"alt":59,"src":60},"Datei, die die Java-Klasse definiert, für die du mit GitLab Duo Workflow Unit-Tests erstellen möchtest","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097627/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097627482.png",[12,62,63,67,68,73],{},[64,65,66],"strong",{},"Hinweis:"," Wir gehen davon aus, dass du die Erweiterung von GitLab Duo Workflow in VS Code bereits aktiviert hast. Wenn nicht, lies dir die ",[16,69,72],{"href":70,"rel":71},"https://docs.gitlab.com/user/duo_agent_platform/#use-workflow-in-vs-code",[],"Einrichtungsdokumentation"," durch (nur in englischer Sprache verfügbar).",[45,75,77],{"start":76},3,[48,78,79,80,84,85,88],{},"Starte GitLab Duo Workflow, indem du die Befehlspalette von VS Code öffnest ",[81,82,83],"span",{},"Strg + Umschalt + P",", „GitLab Duo Workflow“ eingibst und ",[64,86,87],{},"GitLab: Duo Workflow anzeigen"," auswählst. Es erscheint eine Registerkarte, die wie folgt aussieht:",[12,90,91],{},[57,92],{"alt":93,"src":94},"Starten von GitLab Duo Workflow mit VS Code","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097628/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097627483.png",[45,96,98],{"start":97},4,[48,99,100],{},"Im nächsten Schritt fügst du Tests für den Standardkonstruktor, die Überprüfung der Objekterstellung und den Anfangszustand der Eigenschaften der Klasse „Product“ hinzu. Dazu gibst du den folgenden Prompt in den Textbereich in GitLab Duo Workflow ein:",[102,103,108],"pre",{"className":104,"code":105,"language":106,"meta":107,"style":107},"language-sql shiki shiki-themes github-light","Create unit tests for class defined in the Product.java file and store the unit tests in its own file titled ProductTest.java\n","sql","",[109,110,111],"code",{"__ignoreMap":107},[81,112,115,119,123,126,129,132,135,139,142,145,148,151,154,156,159,162,165,168,170],{"class":113,"line":114},"line",1,[81,116,118],{"class":117},"sD7c4","Create",[81,120,122],{"class":121},"sgsFI"," unit tests ",[81,124,125],{"class":117},"for",[81,127,128],{"class":121}," class defined ",[81,130,131],{"class":117},"in",[81,133,134],{"class":121}," the ",[81,136,138],{"class":137},"sYu0t","Product",[81,140,141],{"class":121},".",[81,143,144],{"class":137},"java",[81,146,147],{"class":117}," file",[81,149,150],{"class":117}," and",[81,152,153],{"class":121}," store the unit tests ",[81,155,131],{"class":117},[81,157,158],{"class":121}," its own ",[81,160,161],{"class":117},"file",[81,163,164],{"class":121}," titled ",[81,166,167],{"class":137},"ProductTest",[81,169,141],{"class":121},[81,171,172],{"class":137},"java\n",[12,174,175],{},"(Erstelle Unit-Tests für die in der Datei „Product.java“ definierte Klasse und speichere die Unit-Tests in einer eigenen Datei mit dem Namen „ProductTest.java“.)",[12,177,178],{},[57,179],{"alt":180,"src":181},"Eingabe eines Prompts in GitLab Duo Workflow","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097628/Blog/Content%20Images/Blog/Content%20Images/image4_aHR0cHM6_1750097627484.png",[45,183,185],{"start":184},5,[48,186,187,188,191],{},"Klick in GitLab Duo Workflow auf die Schaltfläche ",[64,189,190],{},"Start",". Es werden zwei neue Fenster angezeigt: eins in der Mitte des Bildschirms und eins rechts davon. Das rechte Fenster zeigt die Analyse an, die GitLab Duo Workflow durchführt, um einen Plan zu erstellen, mit dem das in deinem Prompt angegebene Ziel erreicht werden kann. Der Plan wird im mittleren Fenster angezeigt. Nach Abschluss der Analyse und der Planerstellung sollte eine Ausgabe wie die folgende angezeigt werden:",[12,193,194],{},[57,195],{"alt":196,"src":197},"Von GitLab Duo Workflow generierte Analyse und Plan","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097627/Blog/Content%20Images/Blog/Content%20Images/image8_aHR0cHM6_1750097627486.png",[45,199,201,208,211],{"start":200},6,[48,202,203,204,207],{},"Sieh dir die Analyse und den Plan an und klick unten im Fenster auf ",[64,205,206],{},"Plan genehmigen",", wenn du damit einverstanden bist.",[48,209,210],{},"GitLab Duo Workflow beginnt mit der Ausführung des genehmigten Plans und nimmt die entsprechenden Änderungen an deinem Projekt vor.",[48,212,213,214,217,218,221,222,225],{},"Sobald die Ausführung des Plans abgeschlossen ist, siehst du im Projekt ein neues Verzeichnis ",[109,215,216],{},"src/test/java/csaa/jspring/ProductManager"," mit einer neuen Datei mit dem Namen ",[109,219,220],{},"ProductTest.java",", die alle Unit-Tests für die Klasse ",[109,223,224],{},"Product.java"," enthält.",[12,227,228],{},[57,229],{"alt":230,"src":231},"Neues Verzeichnis im Projekt mit einem neuen Dateinamen „ProductTest.java“","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097628/Blog/Content%20Images/Blog/Content%20Images/image7_aHR0cHM6_1750097627488.png",[45,233,235],{"start":234},9,[48,236,237,238,240],{},"Navigiere zu der neu erstellten Datei ",[109,239,220],{},". Du wirst sehen, dass einige Importanweisungen rot unterstrichen sind, was auf Importfehler hinweist:",[12,242,243],{},[57,244],{"alt":245,"src":246},"„ProductTest.java“ enthält Importanweisungen und Fehleranzeigen in Rot","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097628/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750097627489.png",[12,248,249],{},"GitLab Duo Workflow soll das für uns beheben.",[12,251,252,254,255,258],{},[64,253,66],{}," Wir hätten GitLab Duo Workflow auch in unserem ersten Prompt bitten können, die Datei ",[109,256,257],{},"pom.xml"," entsprechend zu aktualisieren. Da wir das aber nicht gemacht haben, beheben wir diese Fehler in einem neuen Workflow.",[40,260,262],{"id":261},"starten-von-gitlabduo-workflow-um-fehler-im-generierten-code-zu-beheben","Starten von GitLab Duo Workflow, um Fehler im generierten Code zu beheben",[45,264,266],{"start":265},10,[48,267,268,269,272],{},"Starte einen neuen Workflow, indem du unten im Analysefenster auf der rechten Seite deines Bildschirms auf die Schaltfläche ",[64,270,271],{},"Neuer Workflow"," klickst.",[12,274,275],{},[57,276],{"alt":277,"src":278},"Schaltfläche „Neuer Workflow“","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097628/Blog/Content%20Images/Blog/Content%20Images/image6_aHR0cHM6_1750097627491.png",[45,280,282],{"start":281},11,[48,283,284],{},"Gib im Textbereich für den Prompt Folgendes ein:",[102,286,291],{"className":287,"code":289,"language":290,"meta":107},[288],"language-text","The file ProductTest.java has an error “The import org.junit cannot be resolved”. Please fix it\n","text",[109,292,289],{"__ignoreMap":107},[12,294,295],{},"(Die Datei „ProductTest.java“ hat einen Fehler: „Der Import org.junit kann nicht aufgelöst werden“. Bitte behebe diesen Fehler.)",[45,297,299],{"start":298},12,[48,300,301,302,304,305,307],{},"Nachdem du den vorgeschlagenen Plan genehmigt hast, startet GitLab Duo Workflow seine Analyse, indem es die aktuelle ",[109,303,257],{},"-Datei liest. Anschließend wird sie bearbeitet und die veraltete JUnit-Abhängigkeit entfernt. Danach werden die richtige Abhängigkeit und Version für JUnit hinzugefügt. Zuletzt wird die Datei ",[109,306,220],{}," gelesen, um alle Abhängigkeitsfehler zu beheben.",[12,309,310],{},[57,311],{"alt":312,"src":313},"GitLab Duo Workflow führt eine Analyse durch, indem es die Datei „pom.xml“ liest.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097627/Blog/Content%20Images/Blog/Content%20Images/image5_aHR0cHM6_1750097627492.png",[40,315,317],{"id":316},"sieh-dir-das-tutorial-an","Sieh dir das Tutorial an",[12,319,320],{},"Durch die Ausführung dieses Plans führt GitLab Duo Workflow effektiv Aktualisierungen am Projekt durch, um die im Prompt geforderten Aufgaben zu erfüllen. Das spart Zeit und Aufwand und steigert die Produktivität, sodass Entwickler(innen) mehr Zeit für Innovationen und die Schaffung von Mehrwert für ihr Unternehmen aufwenden können.",[12,322,323],{},"Wenn du sehen möchtest, wie das oben Beschriebene in der Praxis funktioniert, sieh dir das folgende Video an:",[325,326,329,330],"figure",{"className":327},[328],"video_container","\n  ",[331,332,336],"iframe",{"src":333,"frameBorder":334,"allowFullScreen":335},"https://www.youtube.com/embed/Tuj7TgqY81Q?si=RReuL1pUsLafvAzs","0","true"," ",[29,338,339],{},[12,340,341,342,346],{},"Trag dich in die ",[16,343,345],{"href":18,"rel":344},[],"Warteliste für die private Beta-Version von GitLab Duo Workflow"," ein, um zu sehen, was du mit KI-Tools machen kannst, die deinen gesamten SDLC verstehen.",[40,348,350],{"id":349},"mehr-über-gitlabduo-workflow-und-agentische-ki","Mehr über GitLab Duo Workflow und agentische KI",[352,353,354,361,368,374],"ul",{},[48,355,356],{},[16,357,360],{"href":358,"rel":359},"https://about.gitlab.com/de-de/blog/gitlab-duo-workflow-enterprise-visibility-and-control-for-agentic-ai/",[],"GitLab Duo Workflow: Transparenz und Kontrolle für agentische KI auf Enterprise-Niveau",[48,362,363],{},[16,364,367],{"href":365,"rel":366},"https://docs.gitlab.com/user/duo_agent_platform/",[],"Dokumentation für GitLab Duo Workflow (nur in englischer Sprache verfügbar)",[48,369,370],{},[16,371,373],{"href":18,"rel":372},[],"GitLab Duo",[48,375,376],{},[16,377,380],{"href":378,"rel":379},"https://about.gitlab.com/the-source/ai/agentic-ai-unlocking-developer-potential-at-scale/",[],"Agentische KI: Entwicklerpotenzial in großem Maßstab freisetzen (The Source) (nur in englischer Sprache verfügbar)",[382,383,384],"style",{},"html pre.shiki code .sD7c4, html code.shiki .sD7c4{--shiki-default:#D73A49}html pre.shiki code .sgsFI, html code.shiki .sgsFI{--shiki-default:#24292E}html pre.shiki code .sYu0t, html code.shiki .sYu0t{--shiki-default:#005CC5}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":107,"searchDepth":386,"depth":386,"links":387},2,[388,389,390,391],{"id":42,"depth":386,"text":43},{"id":261,"depth":386,"text":262},{"id":316,"depth":386,"text":317},{"id":349,"depth":386,"text":350},"ai","2025-04-10","Erfahre, wie du mithilfe von agentischer KI Unit-Tests zu einer Java-Anwendung hinzufügst (Video-Tutorial inklusive).","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097617/Blog/Hero%20Images/Blog/Hero%20Images/Workflow%201800x945_2gQoQIbY9NvjLFpXtsxtXy_1750097616649.png",{},true,"/de-de/blog/use-gitlab-duo-workflow-to-improve-application-quality-assurance",{"title":5,"description":394,"ogTitle":5,"ogDescription":394,"noIndex":397,"ogImage":398,"ogUrl":403,"ogSiteName":404,"ogType":405,"canonicalUrls":403},"https://about.gitlab.com/blog/use-gitlab-duo-workflow-to-improve-application-quality-assurance","https://about.gitlab.com","article","use-gitlab-duo-workflow-to-improve-application-quality-assurance","de-de/blog/use-gitlab-duo-workflow-to-improve-application-quality-assurance",[409,410,411,412,413],"AI","DevSecOps platform","tutorial","product","features","BlogPost","2025-05-01","lfUBc90j-cvvMhRG9QdDV_GCK1s-17eU6pomRyHJOSA",{"logo":418,"freeTrial":423,"sales":428,"login":433,"items":438,"search":767,"minimal":801,"duo":819,"switchNav":828,"pricingDeployment":839},{"config":419},{"href":420,"dataGaName":421,"dataGaLocation":422},"/de-de/","gitlab logo","header",{"text":424,"config":425},"Kostenlose Testversion anfordern",{"href":426,"dataGaName":427,"dataGaLocation":422},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":429,"config":430},"Demo anfordern",{"href":431,"dataGaName":432,"dataGaLocation":422},"/de-de/sales/?contact-topic=request-demo","sales",{"text":434,"config":435},"Anmelden",{"href":436,"dataGaName":437,"dataGaLocation":422},"https://gitlab.com/users/sign_in/","sign in",[439,468,570,575,689,745],{"text":440,"config":441,"menu":443},"Plattform",{"dataNavLevelOne":442},"platform",{"type":444,"columns":445},"cards",[446,452,460],{"title":440,"description":447,"link":448},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":449,"config":450},"Die Plattform erkunden",{"href":451,"dataGaName":442,"dataGaLocation":422},"/de-de/platform/",{"title":453,"description":454,"link":455},"GitLab Duo Agent Platform","Agentische KI für den gesamten Software-Lebenszyklus",{"text":456,"config":457},"Lerne GitLab Duo kennen",{"href":458,"dataGaName":459,"dataGaLocation":422},"/de-de/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":461,"description":462,"link":463},"Warum GitLab?","Erfahre, warum sich Unternehmen für GitLab entscheiden",{"text":464,"config":465},"Mehr erfahren",{"href":466,"dataGaName":467,"dataGaLocation":422},"/de-de/why-gitlab/","why gitlab",{"text":469,"left":400,"config":470,"menu":472},"Produkt",{"dataNavLevelOne":471},"solutions",{"type":473,"link":474,"columns":478,"feature":549},"lists",{"text":475,"config":476},"Alle Lösungen anzeigen",{"href":477,"dataGaName":471,"dataGaLocation":422},"/de-de/solutions/",[479,504,527],{"title":480,"description":481,"link":482,"items":487},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":483},{"icon":484,"href":485,"dataGaName":486,"dataGaLocation":422},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[488,492,495,500],{"text":489,"config":490},"CI/CD",{"href":491,"dataGaLocation":422,"dataGaName":489},"/de-de/solutions/continuous-integration/",{"text":453,"config":493},{"href":458,"dataGaLocation":422,"dataGaName":494},"gitlab duo agent platform - product menu",{"text":496,"config":497},"Quellcodeverwaltung",{"href":498,"dataGaLocation":422,"dataGaName":499},"/de-de/solutions/source-code-management/","Source Code Management",{"text":501,"config":502},"Automatische Softwarebereitstellung",{"href":485,"dataGaLocation":422,"dataGaName":503},"Automated software delivery",{"title":505,"description":506,"link":507,"items":512},"Sicherheit","Entwickle Code schneller ohne Abstriche bei der Sicherheit",{"config":508},{"href":509,"dataGaName":510,"dataGaLocation":422,"icon":511},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[513,517,522],{"text":514,"config":515},"Anwendungssicherheitstests",{"href":509,"dataGaName":516,"dataGaLocation":422},"Application security testing",{"text":518,"config":519},"Schutz der Software-Lieferkette",{"href":520,"dataGaLocation":422,"dataGaName":521},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":523,"config":524},"Software-Compliance",{"href":525,"dataGaName":526,"dataGaLocation":422},"/de-de/solutions/software-compliance/","software compliance",{"title":528,"link":529,"items":534},"Messung",{"config":530},{"icon":531,"href":532,"dataGaName":533,"dataGaLocation":422},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[535,539,544],{"text":536,"config":537},"Sichtbarkeit und Messung",{"href":532,"dataGaLocation":422,"dataGaName":538},"Visibility and Measurement",{"text":540,"config":541},"Wertstrommanagement",{"href":542,"dataGaLocation":422,"dataGaName":543},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":545,"config":546},"Analysen und Einblicke",{"href":547,"dataGaLocation":422,"dataGaName":548},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":550,"type":473,"items":551},"GitLab für",[552,558,564],{"text":553,"config":554},"Enterprise",{"icon":555,"href":556,"dataGaLocation":422,"dataGaName":557},"Building","/de-de/enterprise/","enterprise",{"text":559,"config":560},"Kleinunternehmen",{"icon":561,"href":562,"dataGaLocation":422,"dataGaName":563},"Work","/de-de/small-business/","small business",{"text":565,"config":566},"Öffentlicher Sektor",{"icon":567,"href":568,"dataGaLocation":422,"dataGaName":569},"Organization","/de-de/solutions/public-sector/","public sector",{"text":571,"config":572},"Preise",{"href":573,"dataGaName":574,"dataGaLocation":422,"dataNavLevelOne":574},"/de-de/pricing/","pricing",{"text":576,"config":577,"menu":579},"Ressourcen",{"dataNavLevelOne":578},"resources",{"type":473,"link":580,"columns":584,"feature":678},{"text":581,"config":582},"Alle Ressourcen anzeigen",{"href":583,"dataGaName":578,"dataGaLocation":422},"/de-de/resources/",[585,618,645],{"title":586,"items":587},"Erste Schritte",[588,593,598,603,608,613],{"text":589,"config":590},"Installieren",{"href":591,"dataGaName":592,"dataGaLocation":422},"/de-de/install/","install",{"text":594,"config":595},"Kurzanleitungen",{"href":596,"dataGaName":597,"dataGaLocation":422},"/de-de/get-started/","quick setup checklists",{"text":599,"config":600},"Lernen",{"href":601,"dataGaLocation":422,"dataGaName":602},"https://university.gitlab.com/","learn",{"text":604,"config":605},"Produktdokumentation",{"href":606,"dataGaName":607,"dataGaLocation":422},"https://docs.gitlab.com/","product documentation",{"text":609,"config":610},"Best-Practice-Videos",{"href":611,"dataGaName":612,"dataGaLocation":422},"/de-de/getting-started-videos/","best practice videos",{"text":614,"config":615},"Integrationen",{"href":616,"dataGaName":617,"dataGaLocation":422},"/de-de/integrations/","integrations",{"title":619,"items":620},"Entdecken",[621,626,631,636,640],{"text":622,"config":623},"Kundenerfolge",{"href":624,"dataGaName":625,"dataGaLocation":422},"/de-de/customers/","customer success stories",{"text":627,"config":628},"Blog",{"href":629,"dataGaName":630,"dataGaLocation":422},"/de-de/blog/","blog",{"text":632,"config":633},"Demo-Hub",{"href":634,"dataGaName":635,"dataGaLocation":422},"/de-de/demo-hub/","demo hub",{"text":637,"config":638},"The Source",{"href":639,"dataGaName":630,"dataGaLocation":422},"/de-de/the-source/",{"text":641,"config":642},"Remote",{"href":643,"dataGaName":644,"dataGaLocation":422},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":646,"items":647},"Vernetzen",[648,653,658,663,668,673],{"text":649,"config":650},"GitLab-Services",{"href":651,"dataGaName":652,"dataGaLocation":422},"/de-de/services/","services",{"text":654,"config":655},"Beitragen",{"href":656,"dataGaName":657,"dataGaLocation":422},"https://contributors.gitlab.com","contribute",{"text":659,"config":660},"Community",{"href":661,"dataGaName":662,"dataGaLocation":422},"/community/","community",{"text":664,"config":665},"Forum",{"href":666,"dataGaName":667,"dataGaLocation":422},"https://forum.gitlab.com/","forum",{"text":669,"config":670},"Veranstaltungen",{"href":671,"dataGaName":672,"dataGaLocation":422},"/events/","events",{"text":674,"config":675},"Partner",{"href":676,"dataGaName":677,"dataGaLocation":422},"/de-de/partners/","partners",{"config":679,"title":682,"text":683,"link":684},{"background":680,"textColor":681},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","Neues bei GitLab","Über die neuesten Funktionen und Verbesserungen auf dem Laufenden bleiben.",{"text":685,"config":686},"Aktuelle Nachrichten",{"href":687,"dataGaName":688,"dataGaLocation":422},"/de-de/whats-new/","whats new",{"text":690,"config":691,"menu":693},"Unternehmen",{"dataNavLevelOne":692},"company",{"type":473,"columns":694},[695],{"items":696},[697,702,708,710,715,720,725,730,735,740],{"text":698,"config":699},"Über",{"href":700,"dataGaName":701,"dataGaLocation":422},"/de-de/company/","about",{"text":703,"config":704,"footerGa":707},"Karriere",{"href":705,"dataGaName":706,"dataGaLocation":422},"/jobs/","jobs",{"dataGaName":706},{"text":669,"config":709},{"href":671,"dataGaName":672,"dataGaLocation":422},{"text":711,"config":712},"Geschäftsführung",{"href":713,"dataGaName":714,"dataGaLocation":422},"/company/team/e-group/","leadership",{"text":716,"config":717},"Handbuch",{"href":718,"dataGaName":719,"dataGaLocation":422},"https://handbook.gitlab.com/","handbook",{"text":721,"config":722},"Investor Relations",{"href":723,"dataGaName":724,"dataGaLocation":422},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":726,"config":727},"Trust Center",{"href":728,"dataGaName":729,"dataGaLocation":422},"/de-de/security/","trust center",{"text":731,"config":732},"AI Transparency Center",{"href":733,"dataGaName":734,"dataGaLocation":422},"/de-de/ai-transparency-center/","ai transparency center",{"text":736,"config":737},"Newsletter",{"href":738,"dataGaName":739,"dataGaLocation":422},"/company/contact/#contact-forms","newsletter",{"text":741,"config":742},"Presse",{"href":743,"dataGaName":744,"dataGaLocation":422},"/press/","press",{"text":746,"config":747,"menu":748},"Kontakt",{"dataNavLevelOne":692},{"type":473,"columns":749},[750],{"items":751},[752,757,762],{"text":753,"config":754},"Vertrieb kontaktieren",{"href":755,"dataGaName":756,"dataGaLocation":422},"/de-de/sales/","talk to sales",{"text":758,"config":759},"Support-Portal",{"href":760,"dataGaName":761,"dataGaLocation":422},"https://support.gitlab.com/hc/en-us","support portal",{"text":763,"config":764},"Kundenportal",{"href":765,"dataGaName":766,"dataGaLocation":422},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":768,"login":769,"suggestions":776},"Schließen",{"text":770,"link":771},"Um Repositorys und Projekte zu durchsuchen, melde dich an bei",{"text":772,"config":773},"gitlab.com",{"href":436,"dataGaName":774,"dataGaLocation":775},"search login","search",{"text":777,"default":778},"Vorschläge",[779,781,786,788,793,798],{"text":453,"config":780},{"href":458,"dataGaName":453,"dataGaLocation":775},{"text":782,"config":783},"Codevorschläge (KI)",{"href":784,"dataGaName":785,"dataGaLocation":775},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":489,"config":787},{"href":491,"dataGaName":489,"dataGaLocation":775},{"text":789,"config":790},"GitLab auf AWS",{"href":791,"dataGaName":792,"dataGaLocation":775},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":794,"config":795},"GitLab auf Google Cloud",{"href":796,"dataGaName":797,"dataGaLocation":775},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":461,"config":799},{"href":466,"dataGaName":800,"dataGaLocation":775},"Why GitLab?",{"freeTrial":802,"mobileIcon":807,"desktopIcon":812,"secondaryButton":815},{"text":803,"config":804},"Kostenlos testen",{"href":805,"dataGaName":427,"dataGaLocation":806},"https://gitlab.com/-/trials/new/","nav",{"altText":808,"config":809},"GitLab-Symbol",{"src":810,"dataGaName":811,"dataGaLocation":806},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":808,"config":813},{"src":814,"dataGaName":811,"dataGaLocation":806},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":586,"config":816},{"href":817,"dataGaName":818,"dataGaLocation":806},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":820,"mobileIcon":824,"desktopIcon":826},{"text":821,"config":822},"Mehr über GitLab Duo erfahren",{"href":458,"dataGaName":823,"dataGaLocation":806},"gitlab duo",{"altText":808,"config":825},{"src":810,"dataGaName":811,"dataGaLocation":806},{"altText":808,"config":827},{"src":814,"dataGaName":811,"dataGaLocation":806},{"button":829,"mobileIcon":834,"desktopIcon":836},{"text":830,"config":831},"/Option",{"href":832,"dataGaName":833,"dataGaLocation":806},"#contact","switch",{"altText":808,"config":835},{"src":810,"dataGaName":811,"dataGaLocation":806},{"altText":808,"config":837},{"src":838,"dataGaName":811,"dataGaLocation":806},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":840,"mobileIcon":845,"desktopIcon":847},{"text":841,"config":842},"Zurück zur Preisübersicht",{"href":573,"dataGaName":843,"dataGaLocation":806,"icon":844},"back to pricing","GoBack",{"altText":808,"config":846},{"src":810,"dataGaName":811,"dataGaLocation":806},{"altText":808,"config":848},{"src":814,"dataGaName":811,"dataGaLocation":806},{"title":850,"button":851,"config":855},"GitLab Orbit ist da: die Kontextebene für KI-Agenten",{"text":464,"config":852},{"href":853,"dataGaName":854,"dataGaLocation":422},"/de-de/gitlab-orbit/","orbit",{"layout":856,"disabled":397},"release",{"data":858},{"text":859,"source":860,"edit":866,"contribute":871,"config":876,"items":881,"minimal":1087},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":861,"config":862},"Quelltext der Seite anzeigen",{"href":863,"dataGaName":864,"dataGaLocation":865},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":867,"config":868},"Diese Seite bearbeiten",{"href":869,"dataGaName":870,"dataGaLocation":865},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":872,"config":873},"Beteilige dich",{"href":874,"dataGaName":875,"dataGaLocation":865},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":877,"facebook":878,"youtube":879,"linkedin":880},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[882,927,980,1022,1054],{"title":571,"links":883,"subMenu":898},[884,888,893],{"text":885,"config":886},"Tarife anzeigen",{"href":573,"dataGaName":887,"dataGaLocation":865},"view plans",{"text":889,"config":890},"Vorteile von Premium",{"href":891,"dataGaName":892,"dataGaLocation":865},"/de-de/pricing/premium/","why premium",{"text":894,"config":895},"Vorteile von Ultimate",{"href":896,"dataGaName":897,"dataGaLocation":865},"/de-de/pricing/ultimate/","why ultimate",[899],{"title":746,"links":900},[901,903,905,907,912,917,922],{"text":753,"config":902},{"href":755,"dataGaName":432,"dataGaLocation":865},{"text":758,"config":904},{"href":760,"dataGaName":761,"dataGaLocation":865},{"text":763,"config":906},{"href":765,"dataGaName":766,"dataGaLocation":865},{"text":908,"config":909},"Status",{"href":910,"dataGaName":911,"dataGaLocation":865},"https://status.gitlab.com/","status",{"text":913,"config":914},"Nutzungsbedingungen",{"href":915,"dataGaName":916,"dataGaLocation":865},"/terms/","terms of use",{"text":918,"config":919},"Datenschutzerklärung",{"href":920,"dataGaName":921,"dataGaLocation":865},"/de-de/privacy/","privacy statement",{"text":923,"config":924},"Cookie-Einstellungen",{"dataGaName":925,"dataGaLocation":865,"id":926,"isOneTrustButton":400},"cookie preferences","ot-sdk-btn",{"title":469,"links":928,"subMenu":937},[929,933],{"text":930,"config":931},"DevSecOps-Plattform",{"href":451,"dataGaName":932,"dataGaLocation":865},"devsecops platform",{"text":934,"config":935},"KI-unterstützte Entwicklung",{"href":458,"dataGaName":936,"dataGaLocation":865},"ai-assisted development",[938],{"title":939,"links":940},"Themen",[941,945,950,955,960,965,970,975],{"text":489,"config":942},{"href":943,"dataGaName":944,"dataGaLocation":865},"/de-de/topics/ci-cd/","cicd",{"text":946,"config":947},"GitOps",{"href":948,"dataGaName":949,"dataGaLocation":865},"/de-de/topics/gitops/","gitops",{"text":951,"config":952},"DevOps",{"href":953,"dataGaName":954,"dataGaLocation":865},"/de-de/topics/devops/","devops",{"text":956,"config":957},"Versionskontrolle",{"href":958,"dataGaName":959,"dataGaLocation":865},"/de-de/topics/version-control/","version control",{"text":961,"config":962},"DevSecOps",{"href":963,"dataGaName":964,"dataGaLocation":865},"/de-de/topics/devsecops/","devsecops",{"text":966,"config":967},"Cloud-nativ",{"href":968,"dataGaName":969,"dataGaLocation":865},"/de-de/topics/cloud-native/","cloud native",{"text":971,"config":972},"KI für das Programmieren",{"href":973,"dataGaName":974,"dataGaLocation":865},"/de-de/topics/devops/ai-for-coding/","ai for coding",{"text":976,"config":977},"Agentische KI",{"href":978,"dataGaName":979,"dataGaLocation":865},"/de-de/topics/agentic-ai/","agentic ai",{"title":981,"links":982},"Lösungen",[983,986,988,993,997,1000,1003,1006,1008,1010,1012,1017],{"text":514,"config":984},{"href":509,"dataGaName":985,"dataGaLocation":865},"Application Security Testing",{"text":501,"config":987},{"href":485,"dataGaName":486,"dataGaLocation":865},{"text":989,"config":990},"Agile Entwicklung",{"href":991,"dataGaName":992,"dataGaLocation":865},"/de-de/solutions/agile-delivery/","agile delivery",{"text":994,"config":995},"SCM",{"href":498,"dataGaName":996,"dataGaLocation":865},"source code management",{"text":489,"config":998},{"href":491,"dataGaName":999,"dataGaLocation":865},"continuous integration & delivery",{"text":540,"config":1001},{"href":542,"dataGaName":1002,"dataGaLocation":865},"value stream management",{"text":946,"config":1004},{"href":1005,"dataGaName":949,"dataGaLocation":865},"/de-de/solutions/gitops/",{"text":553,"config":1007},{"href":556,"dataGaName":557,"dataGaLocation":865},{"text":559,"config":1009},{"href":562,"dataGaName":563,"dataGaLocation":865},{"text":565,"config":1011},{"href":568,"dataGaName":569,"dataGaLocation":865},{"text":1013,"config":1014},"Bildungswesen",{"href":1015,"dataGaName":1016,"dataGaLocation":865},"/de-de/solutions/education/","education",{"text":1018,"config":1019},"Finanzdienstleistungen",{"href":1020,"dataGaName":1021,"dataGaLocation":865},"/de-de/solutions/finance/","financial services",{"title":576,"links":1023},[1024,1026,1028,1030,1033,1035,1038,1040,1042,1044,1046,1048,1050,1052],{"text":589,"config":1025},{"href":591,"dataGaName":592,"dataGaLocation":865},{"text":594,"config":1027},{"href":596,"dataGaName":597,"dataGaLocation":865},{"text":599,"config":1029},{"href":601,"dataGaName":602,"dataGaLocation":865},{"text":604,"config":1031},{"href":606,"dataGaName":1032,"dataGaLocation":865},"docs",{"text":627,"config":1034},{"href":629,"dataGaName":630,"dataGaLocation":865},{"text":1036,"config":1037},"Neuerungen",{"href":687,"dataGaName":688,"dataGaLocation":865},{"text":622,"config":1039},{"href":624,"dataGaName":625,"dataGaLocation":865},{"text":641,"config":1041},{"href":643,"dataGaName":644,"dataGaLocation":865},{"text":649,"config":1043},{"href":651,"dataGaName":652,"dataGaLocation":865},{"text":654,"config":1045},{"href":656,"dataGaName":657,"dataGaLocation":865},{"text":659,"config":1047},{"href":661,"dataGaName":662,"dataGaLocation":865},{"text":664,"config":1049},{"href":666,"dataGaName":667,"dataGaLocation":865},{"text":669,"config":1051},{"href":671,"dataGaName":672,"dataGaLocation":865},{"text":674,"config":1053},{"href":676,"dataGaName":677,"dataGaLocation":865},{"title":690,"links":1055},[1056,1058,1060,1062,1064,1066,1071,1076,1078,1080,1082],{"text":698,"config":1057},{"href":700,"dataGaName":692,"dataGaLocation":865},{"text":703,"config":1059},{"href":705,"dataGaName":706,"dataGaLocation":865},{"text":711,"config":1061},{"href":713,"dataGaName":714,"dataGaLocation":865},{"text":716,"config":1063},{"href":718,"dataGaName":719,"dataGaLocation":865},{"text":721,"config":1065},{"href":723,"dataGaName":724,"dataGaLocation":865},{"text":1067,"config":1068},"Nachhaltigkeit",{"href":1069,"dataGaName":1070,"dataGaLocation":865},"/sustainability/","Sustainability",{"text":1072,"config":1073},"Vielfalt, Inklusion und Zugehörigkeit",{"href":1074,"dataGaName":1075,"dataGaLocation":865},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":726,"config":1077},{"href":728,"dataGaName":729,"dataGaLocation":865},{"text":736,"config":1079},{"href":738,"dataGaName":739,"dataGaLocation":865},{"text":741,"config":1081},{"href":743,"dataGaName":744,"dataGaLocation":865},{"text":1083,"config":1084},"Transparenzerklärung zu moderner Sklaverei",{"href":1085,"dataGaName":1086,"dataGaLocation":865},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":1088},[1089,1092,1095],{"text":1090,"config":1091},"Terms",{"href":915,"dataGaName":916,"dataGaLocation":865},{"text":1093,"config":1094},"Cookies",{"dataGaName":925,"dataGaLocation":865,"id":926,"isOneTrustButton":400},{"text":1096,"config":1097},"Datenschutz",{"href":920,"dataGaName":921,"dataGaLocation":865},[1099],{"id":1100,"title":7,"body":396,"config":1101,"content":1103,"description":396,"extension":1107,"meta":1108,"navigation":400,"path":1109,"seo":1110,"stem":1111,"__hash__":1112},"blogAuthors/en-us/blog/authors/cesar-saavedra.yml",{"template":1102},"BlogAuthor",{"name":7,"config":1104},{"headshot":1105,"ctfId":1106},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659600/Blog/Author%20Headshots/csaavedra1-headshot.jpg","csaavedra1","yml",{},"/en-us/blog/authors/cesar-saavedra",{},"en-us/blog/authors/cesar-saavedra","SMqRf-z0W5m5GROz_dXGjmuIb3YaOwm_n_RfeK16GcA",[1114,1122,1130],{"title":1115,"description":1116,"heroImage":1117,"category":392,"date":1118,"authors":1119,"slug":1121,"externalUrl":396},"Wie ich einen Demo-Generator mit Duo Agent Platform baute","So sahen Demos nicht immer aus. Ein Rückblick auf ihre Entwicklung, plus ein Tutorial zum Bau einer eigenen Demo und eines eigenen Agenten.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1765809212/noh0mdfn9o94ry9ykura.png","2026-08-13",[1120],"Itzik Gan Baruch","agentic-click-through-demo",{"title":1123,"description":1124,"heroImage":1125,"category":392,"date":1126,"authors":1127,"slug":1129,"externalUrl":396},"Governance für agentische KI, MCPs und KI-Code-Assistenten","KI-Agenten schreiben, pushen und deployen, ohne dass jeder Schritt geprüft wird. Ein praktisches Framework für Zugriff, Berechtigungen und Audit-Trails.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1785337625/ifzlc2hyzaxhzmjgyymh.png","2026-07-31",[1128],"Julie Griffin","govern-agentic-ai-mcps-code-assistants",{"title":1131,"description":1132,"heroImage":1133,"category":392,"date":1134,"authors":1135,"slug":1137,"externalUrl":396},"Claude Opus 5 auf GitLab: Reasoning für die anspruchsvollsten Aufgaben","Anthropics Claude Opus 5 ist jetzt auf der GitLab Duo Agent Platform verfügbar und bringt tieferes Reasoning für die anspruchsvollsten Aufgaben.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750099203/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2820%29_2bJGC5ZP3WheoqzlLT05C5_1750099203484.png","2026-07-27",[1136],"Brittany Lutz","claude-opus-5-on-gitlab-duo-agent-platform",{"promotions":1139},[1140,1153,1164,1176],{"id":1141,"categories":1142,"header":1143,"text":1144,"button":1145,"image":1150},"ai-modernization",[392],"Hält KI, was uns versprochen wurde?","Das Quiz dauert maximal 5 Minuten.",{"text":1146,"config":1147},"Ermittle deinen KI-Reifegrad",{"href":1148,"dataGaName":1149,"dataGaLocation":630},"/de-de/assessments/ai-modernization-assessment/","modernization assessment",{"config":1151},{"src":1152},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1154,"categories":1155,"header":1156,"text":1144,"button":1157,"image":1161},"devops-modernization",[412,964],"Verwaltest du Tool-Chaos oder stellst du Innovationen bereit?",{"text":1158,"config":1159},"Ermittle deinen DevOps-Reifegrad",{"href":1160,"dataGaName":1149,"dataGaLocation":630},"/de-de/assessments/devops-modernization-assessment/",{"config":1162},{"src":1163},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1165,"categories":1166,"header":1168,"text":1144,"button":1169,"image":1173},"security-modernization",[1167],"security","Tauschst du Schnelligkeit gegen Sicherheit ein?",{"text":1170,"config":1171},"Ermittle deinen Sicherheitsreifegrad",{"href":1172,"dataGaName":1149,"dataGaLocation":630},"/de-de/assessments/security-modernization-assessment/",{"config":1174},{"src":1175},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1177,"paths":1178,"header":1181,"text":1182,"button":1183,"image":1188},"github-azure-migration",[1179,1180],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Ist dein Team bereit für den Umzug von GitHub nach Azure?","GitHub stellt bereits auf Azure um. Finde heraus, was das für dich bedeutet.",{"text":1184,"config":1185},"Erfahre, wie GitLab im Vergleich zu GitHub abschneidet",{"href":1186,"dataGaName":1187,"dataGaLocation":630},"/de-de/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1189},{"src":1163},{"header":1191,"blurb":1192,"button":1193,"secondaryButton":1198},"Beginne noch heute, schneller zu entwickeln","Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.\n",{"text":1194,"config":1195},"Kostenlosen Test starten",{"href":1196,"dataGaName":427,"dataGaLocation":1197},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/de-de/","feature",{"text":753,"config":1199},{"href":755,"dataGaName":432,"dataGaLocation":1197},1786803739926]