[{"data":1,"prerenderedAt":1089},["ShallowReactive",2],{"/de-de/blog/automate-deployment-with-duo-agent-platform":3,"navigation-de-de":337,"banner-de-de":754,"footer-de-de":763,"blog-post-authors-de-de-Cesar Saavedra":1002,"blog-related-posts-de-de-automate-deployment-with-duo-agent-platform":1017,"blog-promotions-de-de":1026,"next-steps-de-de":1079},{"id":4,"title":5,"authors":6,"body":8,"category":315,"date":316,"description":317,"extension":318,"externalUrl":319,"featured":320,"heroImage":321,"meta":322,"navigation":323,"path":324,"seo":325,"slug":328,"stem":329,"tags":330,"template":335,"updatedDate":319,"__hash__":336},"blogPosts/de-de/blog/automate-deployment-with-duo-agent-platform.md","Deployment-Prozesse mittels Custom Agent in GitLab Duo Agent automatisieren",[7],"Cesar Saavedra",{"type":9,"value":10,"toc":300},"minimark",[11,15,24,27,39,42,47,50,55,76,85,88,92,103,106,109,113,120,155,166,170,184,195,215,219,231,234,243,247,260,274,278,281,284,288,291],[12,13,14],"p",{},"Jedes Engineering-Team kennt diese Aufgaben: komplex, repetitiv und\nzeitaufwändig – aber absolut kritisch, um sie richtig auszuführen. Das\nOnboarding eines neuen Microservices in einen etablierten GitOps-Deployment-Workflow\nist ein gutes Beispiel. Es umfasst das Generieren maßgeschneiderter Manifeste,\ndas Aktualisieren von Delivery-Pipelines, das Konfigurieren der\nImage-Automatisierung und die Sicherstellung, dass jedes Element auf die\nrichtigen Namespaces, Ports und Hostnamen verweist. Wird ein Schritt\nübersprungen, schlägt das Deployment fehl. Manuell ausgeführt kann ein solches\nSetup Stunden kosten – manchmal einen ganzen Tag –, obwohl es jedes Mal\ndemselben Muster folgt.",[12,16,17,18,23],{},"Das ist genau die Art von Arbeit, für die KI-Agenten gebaut wurden. Mit der\n",[19,20,22],"a",{"href":21},"/de-de/gitlab-duo-agent-platform/","GitLab Duo Agent Platform"," lässt sich ein\nCustom Agent erstellen, der die spezifische Anwendung, den spezifischen\nGitOps-Workflow und die spezifischen Konventionen versteht – und das komplexe\nOnboarding dann selbst durchführt. Noch besser: Der Agent selbst sowie alle\nvon ihm generierten Artefakte sind in GitLab versioniert, verwaltet und\nkontrolliert. So entsteht die Geschwindigkeit der Automatisierung, ohne auf\nEnterprise-Kontrolle verzichten zu müssen.",[12,25,26],{},"In diesem Tutorial wird gezeigt, wie ein solcher Custom Agent von Grund auf\naufgebaut wird – vom Generieren des System Prompts bis hin zum neuen\nMicroservice, der auf einem Kubernetes-Cluster läuft. Der folgende Inhalt\nbegleitet das Tutorial:",[28,29,32,33],"figure",{"className":30},[31],"video_container","\n  ",[34,35],"iframe",{"src":36,"frameBorder":37,"allowFullScreen":38},"https://www.youtube.com/embed/PpfT40mqr4A?si=CcgUwQr090FYCT3-","0","true",[40,41],"br",{},[43,44,46],"h2",{"id":45},"anwendungsfall-onboarding-eines-microservices-für-tanukibank","Anwendungsfall: Onboarding eines Microservices für TanukiBank",[12,48,49],{},"Als konkretes Beispiel dient eine fiktive Bank namens TanukiBank. Die\nWeb-Anwendung der Bank bietet Girokonten, Sparkonten, Wohnungsbaukredite,\nRechner für Hypotheken und Autokredite sowie eine Seite für Zahlungen und\nÜberweisungen. Diese Seite enthält ein Quick-Transfer-Panel mit dem Ziel,\nÜberweisungen zwischen Konten zu ermöglichen. Das Panel ist derzeit nicht\nimplementiert – beim Klick auf „Überweisung\" passiert nichts, da der\nzugrundeliegende Microservice noch nicht existiert. Die Aufgabe besteht darin,\ndiesen Microservice zu bauen und ihn mit einem Custom Agent in TanukiBanks\nbestehenden GitOps-Workflow einzubinden.",[51,52,54],"h3",{"id":53},"die-anwendung-und-der-gitops-prozess","Die Anwendung und der GitOps-Prozess",[12,56,57,62,63,67,68,71,72,75],{},[19,58,61],{"href":59,"rel":60},"https://gitlab.com/gitlab-da/projects/tanukibank",[],"TanukiBanks Code lebt in einer GitLab-Group","\nmit einer ",[64,65,66],"code",{},"services","-Subgroup, die jeden Microservice enthält (Home-Mortgage-\nRechner, Auto-Loan-Rechner usw.), sowie zwei Top-Level-Projekten –\n",[64,69,70],{},"Tanuki Bank - Delivery"," und ",[64,73,74],{},"Flux Config"," –, die das Deployment auf einem\nKubernetes-Cluster steuern.",[12,77,78,79,81,82,84],{},"Der GitOps-Workflow funktioniert so: Jeder Microservice hat eine Pipeline, die\nein Container-Image baut und es in die integrierte Container-Registry pusht.\nDer Flux Image Automation Controller, der auf dem Kubernetes-Cluster läuft,\nüberwacht diese Registries auf Änderungen und aktualisiert bei Erkennung einer\nÄnderung das entsprechende Manifest im Projekt ",[64,80,70],{},". Das\nlöst eine Delivery-Pipeline aus, die ein neues Container-Image baut und signiert\nund es in der Registry des Delivery-Projekts speichert. Schließlich hält der\nFlux CD Controller die laufenden Pods im Kubernetes-Cluster über alle Umgebungen\nhinweg synchron mit der Container-Registry des Delivery-Projekts. Alle\nFlux-Manifeste leben im Projekt ",[64,83,74],{},".",[12,86,87],{},"Das ist ein sauberer Workflow – aber das Onboarding jedes neuen Microservices\nbedeutet, alle diese beweglichen Teile auf genau die richtige Weise anzufassen.\nEin Custom Agent, der dieses Onboarding übernimmt, vereinfacht das erheblich.",[51,89,91],{"id":90},"den-system-prompt-generieren","Den System Prompt generieren",[12,93,94,95,102],{},"Ein Custom Agent ist nur so gut wie sein System Prompt. Statt ihn von Grund auf\nzu schreiben, übernimmt GitLab Duo die Hauptarbeit. Aus der\n",[19,96,98,101],{"href":59,"rel":97},[],[64,99,100],{},"tanukibank","-Group"," heraus\nwird GitLab Agentic Chat geöffnet und darum gebeten, die Group, ihre Subgroups\nund deren Inhalte zu untersuchen und dann einen System Prompt für einen Agenten\nzu entwerfen, der neue Microservices onboarden kann. Im Wesentlichen wird Duo\ngebeten, den etablierten GitOps-Workflow der Anwendung gründlich zu verstehen\nund zu lernen – damit Duo einen System Prompt erstellen kann, der genug Detail\nenthält, um das Onboarding eines neuen Microservices in diesen GitOps-Workflow\nzu automatisieren.",[12,104,105],{},"GitLab Duo liest die Dateien, untersucht die Manifeste und Konfigurationsdateien,\nanalysiert die Dockerfiles, kartiert Abhängigkeiten und erstellt dann einen\ndetaillierten System Prompt mit Berichtsanweisungen, einzuhaltenden Regeln und\nempfohlenen zu aktivierenden Werkzeugen. Diese Ausgabe wird für den nächsten\nSchritt gespeichert.",[12,107,108],{},"Ein wichtiger Hinweis: Der von GitLab Duo generierte System Prompt ist spezifisch\nfür den GitOps-Workflow dieser Anwendung zum jetzigen Zeitpunkt. Sollte sich der\nGitOps-Workflow künftig ändern, muss dieser System Prompt durch erneutes\nAusführen dieses Schritts neu generiert werden.",[51,110,112],{"id":111},"den-custom-agent-erstellen","Den Custom Agent erstellen",[12,114,115,116,119],{},"Als Nächstes wird ein neues leeres Projekt namens ",[64,117,118],{},"application-agents"," erstellt.\nDieses Projekt verwaltet die Custom Agents – einschließlich der Frage, wer sie\nadministrieren kann und wo sie ausgeführt werden dürfen. Dafür werden folgende\nSchritte ausgeführt:",[121,122,123,135,146,149,152],"ol",{},[124,125,126,127,130,131,134],"li",{},"Unter ",[64,128,129],{},"AI > Agents"," den Tab ",[64,132,133],{},"Managed"," auswählen.",[124,136,137,138,141,142,145],{},"Auf ",[64,139,140],{},"New agent"," klicken, um einen neuen Agenten namens ",[64,143,144],{},"TanukiBank Microservice Onboarder"," zu erstellen, eine kurze Beschreibung hinzuzufügen und ihn als öffentlich kennzeichnen.",[124,147,148],{},"Die von GitLab Duo empfohlenen Werkzeuge auswählen.",[124,150,151],{},"Den generierten System Prompt einfügen.",[124,153,154],{},"Den Agenten erstellen.",[12,156,157,158,71,160,162,163,165],{},"Sobald der Agent erstellt ist, wird er in beiden Projekten aktiviert, die den\nGitOps-Workflow steuern: ",[64,159,70],{},[64,161,74],{},". Das\nAgentic-Chat-Panel in jedem Projekt öffnen und bestätigen, dass\n",[64,164,144],{}," im Agenten-Dropdown erscheint, verifiziert\ndie Einrichtung.",[51,167,169],{"id":168},"mit-dem-developer-flow-einen-neuen-microservice-erstellen","Mit dem Developer Flow einen neuen Microservice erstellen",[12,171,172,173,175,176,179,180,183],{},"Vor dem Testen des Agenten wird ein tatsächlicher Microservice zum Onboarden\nbenötigt. Dafür wird zur ",[64,174,66],{},"-Group navigiert, ein neues Projekt namens\n",[64,177,178],{},"intra-account-transfers"," erstellt und der ",[64,181,182],{},"Developer","-Foundational-Flow der\nGitLab Duo Agent Platform eingesetzt.",[12,185,186,187,190,191,194],{},"Ein neues Issue wird im Projekt geöffnet, und in seiner Beschreibung werden\nSpezifikationen für den Microservice aufgelistet. Dann wird die Schaltfläche\n",[64,188,189],{},"Generate MR with Duo"," geklickt, die den Developer Flow startet. Der Agent\nliest die Spezifikation, implementiert den Microservice, erstellt einen Branch\nund einen Merge Request und verknüpft den MR mit dem Issue. Nach der Überprüfung,\ndass die Implementierung lokal mit einem schnellen ",[64,192,193],{},"curl","-Befehl funktioniert,\nwird der MR gemergt. Die Pipeline läuft und pusht die neuen Container-Images\nin die Registry des Projekts.",[12,196,197,198,201,202,204,205,207,208,211,212,214],{},"Zu diesem Zeitpunkt existiert der neue Microservice, aber der umfassendere\nGitOps-Workflow weiß noch nichts davon. Das ",[64,199,200],{},"manifests/dev","-Verzeichnis im\nProjekt ",[64,203,70],{}," enthält nichts für ",[64,206,178],{},",\ndie Delivery-Pipeline referenziert ihn nicht, und die Datei\n",[64,209,210],{},"image-update-automation.yaml"," im Projekt ",[64,213,74],{}," hat keine Einträge\nfür den neuen Microservice.",[51,216,218],{"id":217},"den-custom-agent-einsetzen","Den Custom Agent einsetzen",[12,220,221,222,224,225,227,228,230],{},"Nach der Aktivierung des ",[64,223,144],{}," im neu erstellten\nProjekt ",[64,226,178],{}," wird zu ",[64,229,70],{}," navigiert,\ndas Agentic-Chat-Panel geöffnet, der Custom Agent aus dem Agenten-Dropdown\ngewählt und er darum gebeten, den neuen Service zu onboarden – unter Angabe des\nService-Namens und Hostnamens.",[12,232,233],{},"Der Agent macht sich an die Arbeit. Er lokalisiert und liest das Dockerfile des\nneuen Microservices, um seinen Port zu ermitteln, generiert die entsprechenden\nManifeste und aktualisiert die relevanten Pipelines. Unterwegs fragt er um\nGenehmigung, bevor er Commits und Merge Requests erstellt – die erteilt werden.",[12,235,236,237,239,240,242],{},"Dann öffnet der Agent zwei MRs – einen in ",[64,238,70],{}," und einen\nin ",[64,241,74],{}," – und schließt mit einer Zusammenfassung von allem, was er\ngetan hat: Links zu den MRs, Service-Details, erstellte und geänderte Dateien\nsowie empfohlene nächste Schritte.",[51,244,246],{"id":245},"die-ergebnisse","Die Ergebnisse",[12,248,249,250,252,253,255,256,259],{},"Die Änderungen in beiden MRs werden überprüft, zunächst der ",[64,251,74],{},"-MR\ngemergt, um die Flux-Komponenten zu aktualisieren, dann der MR von\n",[64,254,70],{},". Zur Überprüfung des Deployments wird in GitLab eine\nneue Umgebung namens ",[64,257,258],{},"intra-account-transfers-dev"," erstellt, die mit dem\nKubernetes-Cluster verbunden ist, der entsprechende Namespace und die\nFlux-Ressource ausgewählt und gespeichert.",[12,261,262,263,266,267,269,270,273],{},"Die Umgebungsansicht zeigt die frisch gestarteten Pods, und ein\n",[64,264,265],{},"kubectl","-Listing im Terminal bestätigt drei neue laufende Pods. Ein abschließendes\n",[64,268,193],{}," gegen den öffentlichen Hostnamen ",[64,271,272],{},"itransfers2.ocpgitlab.com"," liefert die\nkorrekte Antwort. Der Microservice ist live – und das Onboarding, das manuell\npotenziell Stunden sorgfältiger Arbeit gekostet hätte, dauerte Minuten.",[43,275,277],{"id":276},"vorteile","Vorteile",[12,279,280],{},"Ein Custom Agent auf der GitLab Duo Agent Platform bietet Mehrwert auf mehreren\nEbenen. Er komprimiert komplexe Multi-Projekt-Setup-Arbeit auf Minuten und gibt\nEngineers die Freiheit, sich auf höherwertige Probleme zu konzentrieren. Er\nerfasst organisationales Wissen und Kontext – die spezifischen GitOps-Konventionen,\nBenennungsmuster und Pipeline-Strukturen – als wiederverwendbares Asset, das\njedes autorisierte Teammitglied aufrufen kann.",[12,282,283],{},"Da der Agent in einem verwalteten Projekt definiert ist, werden sein Zugriff,\nseine Sichtbarkeit und sein Geltungsbereich genauso kontrolliert wie jede andere\nGitLab-Ressource – das gibt Plattformteams die nötige Sicherheit. Und jedes\nArtefakt, das der Agent erstellt – jedes Manifest, jeder Commit, jeder MR –\nlebt in GitLab: vollständig versioniert und auditierbar. Die Geschwindigkeit\nder KI-Automatisierung entsteht, ohne die Governance und Nachvollziehbarkeit\nzu opfern, die Unternehmen benötigen.",[43,285,287],{"id":286},"heute-einen-custom-agent-aufbauen","Heute einen Custom Agent aufbauen",[12,289,290],{},"Das Onboarding neuer Services in einen ausgereiften GitOps-Workflow ist ein gutes\nBeispiel für Aufgaben, die komplex genug sind, um sorgfältige Aufmerksamkeit zu\nerfordern, aber repetitiv genug, um Engineering-Kapazität zu binden. Ein Custom\nAgent auf der GitLab Duo Agent Platform verändert dieses Verhältnis. Er versteht\ndie Anwendung und den organisationalen Kontext, folgt den eigenen Konventionen\nund produziert konsistente, überprüfbare Änderungen – während er vollständig\nversioniert, kontrolliert und sicher innerhalb von GitLab bleibt.",[12,292,293,295,296,84],{},[19,294,22],{"href":21}," lässt sich im Rahmen\neiner kostenlosen Testversion von GitLab Ultimate ausprobieren. Wer bereits\nZugang zur GitLab Duo Agent Platform hat, findet weitere Informationen im\n",[19,297,299],{"href":298},"/de-de/blog/gitlab-duo-agent-platform-complete-getting-started-guide/","Einstiegsleitfaden",{"title":301,"searchDepth":302,"depth":302,"links":303},"",2,[304,313,314],{"id":45,"depth":302,"text":46,"children":305},[306,308,309,310,311,312],{"id":53,"depth":307,"text":54},3,{"id":90,"depth":307,"text":91},{"id":111,"depth":307,"text":112},{"id":168,"depth":307,"text":169},{"id":217,"depth":307,"text":218},{"id":245,"depth":307,"text":246},{"id":276,"depth":302,"text":277},{"id":286,"depth":302,"text":287},"ai-ml","2026-05-07","Custom AI-Agenten automatisieren komplexe GitOps-Arbeit in Minuten – versioniert, kontrolliert und innerhalb der Unternehmensleitplanken gesichert.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773856365/gsx2c0vqlswox3ldmq88.jpg",{},true,"/de-de/blog/automate-deployment-with-duo-agent-platform",{"config":326,"title":327,"description":317},{"noIndex":320},"GitLab Duo Agent Platform: Deployments automatisieren","automate-deployment-with-duo-agent-platform","de-de/blog/automate-deployment-with-duo-agent-platform",[331,332,333,334],"AI/ML","product","features","tutorial","BlogPost","L5Lba6silnhMf8y1H_Oizksx9LtPrpY3wiuPqicmQq8",{"logo":338,"freeTrial":343,"sales":348,"login":353,"items":358,"search":672,"minimal":706,"duo":724,"switchNav":733,"pricingDeployment":744},{"config":339},{"href":340,"dataGaName":341,"dataGaLocation":342},"/de-de/","gitlab logo","header",{"text":344,"config":345},"Kostenlose Testversion anfordern",{"href":346,"dataGaName":347,"dataGaLocation":342},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":349,"config":350},"Vertrieb kontaktieren",{"href":351,"dataGaName":352,"dataGaLocation":342},"/de-de/sales/","sales",{"text":354,"config":355},"Anmelden",{"href":356,"dataGaName":357,"dataGaLocation":342},"https://gitlab.com/users/sign_in/","sign in",[359,386,488,493,596,652],{"text":360,"config":361,"menu":363},"Plattform",{"dataNavLevelOne":362},"platform",{"type":364,"columns":365},"cards",[366,372,378],{"title":360,"description":367,"link":368},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":369,"config":370},"Die Plattform erkunden",{"href":371,"dataGaName":362,"dataGaLocation":342},"/de-de/platform/",{"title":22,"description":373,"link":374},"Agentische KI für den gesamten Software-Lebenszyklus",{"text":375,"config":376},"Lerne GitLab Duo kennen",{"href":21,"dataGaName":377,"dataGaLocation":342},"gitlab duo agent platform",{"title":379,"description":380,"link":381},"Warum GitLab?","Erfahre, warum sich Unternehmen für GitLab entscheiden",{"text":382,"config":383},"Mehr erfahren",{"href":384,"dataGaName":385,"dataGaLocation":342},"/de-de/why-gitlab/","why gitlab",{"text":387,"left":323,"config":388,"menu":390},"Produkt",{"dataNavLevelOne":389},"solutions",{"type":391,"link":392,"columns":396,"feature":467},"lists",{"text":393,"config":394},"Alle Lösungen anzeigen",{"href":395,"dataGaName":389,"dataGaLocation":342},"/de-de/solutions/",[397,422,445],{"title":398,"description":399,"link":400,"items":405},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":401},{"icon":402,"href":403,"dataGaName":404,"dataGaLocation":342},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[406,410,413,418],{"text":407,"config":408},"CI/CD",{"href":409,"dataGaLocation":342,"dataGaName":407},"/de-de/solutions/continuous-integration/",{"text":22,"config":411},{"href":21,"dataGaLocation":342,"dataGaName":412},"gitlab duo agent platform - product menu",{"text":414,"config":415},"Quellcodeverwaltung",{"href":416,"dataGaLocation":342,"dataGaName":417},"/de-de/solutions/source-code-management/","Source Code Management",{"text":419,"config":420},"Automatische Softwarebereitstellung",{"href":403,"dataGaLocation":342,"dataGaName":421},"Automated software delivery",{"title":423,"description":424,"link":425,"items":430},"Sicherheit","Entwickle Code schneller ohne Abstriche bei der Sicherheit",{"config":426},{"href":427,"dataGaName":428,"dataGaLocation":342,"icon":429},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[431,435,440],{"text":432,"config":433},"Anwendungssicherheitstests",{"href":427,"dataGaName":434,"dataGaLocation":342},"Application security testing",{"text":436,"config":437},"Sicherheit der Software-Lieferkette",{"href":438,"dataGaLocation":342,"dataGaName":439},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":441,"config":442},"Software-Compliance",{"href":443,"dataGaName":444,"dataGaLocation":342},"/de-de/solutions/software-compliance/","software compliance",{"title":446,"link":447,"items":452},"Messung",{"config":448},{"icon":449,"href":450,"dataGaName":451,"dataGaLocation":342},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[453,457,462],{"text":454,"config":455},"Sichtbarkeit und Messung",{"href":450,"dataGaLocation":342,"dataGaName":456},"Visibility and Measurement",{"text":458,"config":459},"Wertstrommanagement",{"href":460,"dataGaLocation":342,"dataGaName":461},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":463,"config":464},"Analysen und Einblicke",{"href":465,"dataGaLocation":342,"dataGaName":466},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":468,"type":391,"items":469},"GitLab für",[470,476,482],{"text":471,"config":472},"Enterprise",{"icon":473,"href":474,"dataGaLocation":342,"dataGaName":475},"Building","/de-de/enterprise/","enterprise",{"text":477,"config":478},"Kleinunternehmen",{"icon":479,"href":480,"dataGaLocation":342,"dataGaName":481},"Work","/de-de/small-business/","small business",{"text":483,"config":484},"Öffentlicher Sektor",{"icon":485,"href":486,"dataGaLocation":342,"dataGaName":487},"Organization","/de-de/solutions/public-sector/","public sector",{"text":489,"config":490},"Preise",{"href":491,"dataGaName":492,"dataGaLocation":342,"dataNavLevelOne":492},"/de-de/pricing/","pricing",{"text":494,"config":495,"menu":497},"Ressourcen",{"dataNavLevelOne":496},"resources",{"type":391,"link":498,"columns":502,"feature":585},{"text":499,"config":500},"Alle Ressourcen anzeigen",{"href":501,"dataGaName":496,"dataGaLocation":342},"/de-de/resources/",[503,536,558],{"title":504,"items":505},"Erste Schritte",[506,511,516,521,526,531],{"text":507,"config":508},"Installieren",{"href":509,"dataGaName":510,"dataGaLocation":342},"/de-de/install/","install",{"text":512,"config":513},"Kurzanleitungen",{"href":514,"dataGaName":515,"dataGaLocation":342},"/de-de/get-started/","quick setup checklists",{"text":517,"config":518},"Lernen",{"href":519,"dataGaLocation":342,"dataGaName":520},"https://university.gitlab.com/","learn",{"text":522,"config":523},"Produktdokumentation",{"href":524,"dataGaName":525,"dataGaLocation":342},"https://docs.gitlab.com/","product documentation",{"text":527,"config":528},"Best-Practice-Videos",{"href":529,"dataGaName":530,"dataGaLocation":342},"/de-de/getting-started-videos/","best practice videos",{"text":532,"config":533},"Integrationen",{"href":534,"dataGaName":535,"dataGaLocation":342},"/de-de/integrations/","integrations",{"title":537,"items":538},"Entdecken",[539,544,549,553],{"text":540,"config":541},"Kundenerfolge",{"href":542,"dataGaName":543,"dataGaLocation":342},"/de-de/customers/","customer success stories",{"text":545,"config":546},"Blog",{"href":547,"dataGaName":548,"dataGaLocation":342},"/de-de/blog/","blog",{"text":550,"config":551},"The Source",{"href":552,"dataGaName":548,"dataGaLocation":342},"/de-de/the-source/",{"text":554,"config":555},"Remote",{"href":556,"dataGaName":557,"dataGaLocation":342},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":559,"items":560},"Vernetzen",[561,565,570,575,580],{"text":562,"config":563},"GitLab-Services",{"href":564,"dataGaName":66,"dataGaLocation":342},"/de-de/services/",{"text":566,"config":567},"Community",{"href":568,"dataGaName":569,"dataGaLocation":342},"/community/","community",{"text":571,"config":572},"Forum",{"href":573,"dataGaName":574,"dataGaLocation":342},"https://forum.gitlab.com/","forum",{"text":576,"config":577},"Veranstaltungen",{"href":578,"dataGaName":579,"dataGaLocation":342},"/events/","events",{"text":581,"config":582},"Partner",{"href":583,"dataGaName":584,"dataGaLocation":342},"/de-de/partners/","partners",{"config":586,"title":589,"text":590,"link":591},{"background":587,"textColor":588},"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":592,"config":593},"Aktuelle Nachrichten",{"href":594,"dataGaName":595,"dataGaLocation":342},"/de-de/whats-new/","whats new",{"text":597,"config":598,"menu":600},"Company",{"dataNavLevelOne":599},"company",{"type":391,"columns":601},[602],{"items":603},[604,609,615,617,622,627,632,637,642,647],{"text":605,"config":606},"Über",{"href":607,"dataGaName":608,"dataGaLocation":342},"/de-de/company/","about",{"text":610,"config":611,"footerGa":614},"Karriere",{"href":612,"dataGaName":613,"dataGaLocation":342},"/jobs/","jobs",{"dataGaName":613},{"text":576,"config":616},{"href":578,"dataGaName":579,"dataGaLocation":342},{"text":618,"config":619},"Geschäftsführung",{"href":620,"dataGaName":621,"dataGaLocation":342},"/company/team/e-group/","leadership",{"text":623,"config":624},"Handbuch",{"href":625,"dataGaName":626,"dataGaLocation":342},"https://handbook.gitlab.com/","handbook",{"text":628,"config":629},"Investor Relations",{"href":630,"dataGaName":631,"dataGaLocation":342},"https://ir.gitlab.com/","investor relations",{"text":633,"config":634},"Trust Center",{"href":635,"dataGaName":636,"dataGaLocation":342},"/de-de/security/","trust center",{"text":638,"config":639},"AI Transparency Center",{"href":640,"dataGaName":641,"dataGaLocation":342},"/de-de/ai-transparency-center/","ai transparency center",{"text":643,"config":644},"Newsletter",{"href":645,"dataGaName":646,"dataGaLocation":342},"/company/contact/#contact-forms","newsletter",{"text":648,"config":649},"Presse",{"href":650,"dataGaName":651,"dataGaLocation":342},"/press/","press",{"text":653,"config":654,"menu":655},"Kontakt",{"dataNavLevelOne":599},{"type":391,"columns":656},[657],{"items":658},[659,662,667],{"text":349,"config":660},{"href":351,"dataGaName":661,"dataGaLocation":342},"talk to sales",{"text":663,"config":664},"Support-Portal",{"href":665,"dataGaName":666,"dataGaLocation":342},"https://support.gitlab.com","support portal",{"text":668,"config":669},"Kundenportal",{"href":670,"dataGaName":671,"dataGaLocation":342},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":673,"login":674,"suggestions":681},"Schließen",{"text":675,"link":676},"Um Repositorys und Projekte zu durchsuchen, melde dich an bei",{"text":677,"config":678},"gitlab.com",{"href":356,"dataGaName":679,"dataGaLocation":680},"search login","search",{"text":682,"default":683},"Vorschläge",[684,686,691,693,698,703],{"text":22,"config":685},{"href":21,"dataGaName":22,"dataGaLocation":680},{"text":687,"config":688},"Codevorschläge (KI)",{"href":689,"dataGaName":690,"dataGaLocation":680},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":407,"config":692},{"href":409,"dataGaName":407,"dataGaLocation":680},{"text":694,"config":695},"GitLab auf AWS",{"href":696,"dataGaName":697,"dataGaLocation":680},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":699,"config":700},"GitLab auf Google Cloud",{"href":701,"dataGaName":702,"dataGaLocation":680},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":379,"config":704},{"href":384,"dataGaName":705,"dataGaLocation":680},"Why GitLab?",{"freeTrial":707,"mobileIcon":712,"desktopIcon":717,"secondaryButton":720},{"text":708,"config":709},"Kostenlos testen",{"href":710,"dataGaName":347,"dataGaLocation":711},"https://gitlab.com/-/trials/new/","nav",{"altText":713,"config":714},"GitLab-Symbol",{"src":715,"dataGaName":716,"dataGaLocation":711},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":713,"config":718},{"src":719,"dataGaName":716,"dataGaLocation":711},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":504,"config":721},{"href":722,"dataGaName":723,"dataGaLocation":711},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":725,"mobileIcon":729,"desktopIcon":731},{"text":726,"config":727},"Mehr über GitLab Duo erfahren",{"href":21,"dataGaName":728,"dataGaLocation":711},"gitlab duo",{"altText":713,"config":730},{"src":715,"dataGaName":716,"dataGaLocation":711},{"altText":713,"config":732},{"src":719,"dataGaName":716,"dataGaLocation":711},{"button":734,"mobileIcon":739,"desktopIcon":741},{"text":735,"config":736},"/Option",{"href":737,"dataGaName":738,"dataGaLocation":711},"#contact","switch",{"altText":713,"config":740},{"src":715,"dataGaName":716,"dataGaLocation":711},{"altText":713,"config":742},{"src":743,"dataGaName":716,"dataGaLocation":711},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":745,"mobileIcon":750,"desktopIcon":752},{"text":746,"config":747},"Zurück zur Preisübersicht",{"href":491,"dataGaName":748,"dataGaLocation":711,"icon":749},"back to pricing","GoBack",{"altText":713,"config":751},{"src":715,"dataGaName":716,"dataGaLocation":711},{"altText":713,"config":753},{"src":719,"dataGaName":716,"dataGaLocation":711},{"title":755,"button":756,"config":761},"Sieh dir an, wie agentische KI die Softwarebereitstellung transformiert",{"text":757,"config":758},"Jetzt live bei GitLab Transcend am 10. Juni dabei sein",{"href":759,"dataGaName":760,"dataGaLocation":342},"/de-de/events/transcend/virtual/","transcend event",{"layout":762,"disabled":320},"release",{"data":764},{"text":765,"source":766,"edit":772,"contribute":777,"config":782,"items":787,"minimal":993},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":767,"config":768},"Quelltext der Seite anzeigen",{"href":769,"dataGaName":770,"dataGaLocation":771},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":773,"config":774},"Diese Seite bearbeiten",{"href":775,"dataGaName":776,"dataGaLocation":771},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":778,"config":779},"Beteilige dich",{"href":780,"dataGaName":781,"dataGaLocation":771},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":783,"facebook":784,"youtube":785,"linkedin":786},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[788,833,886,928,959],{"title":489,"links":789,"subMenu":804},[790,794,799],{"text":791,"config":792},"Tarife anzeigen",{"href":491,"dataGaName":793,"dataGaLocation":771},"view plans",{"text":795,"config":796},"Vorteile von Premium",{"href":797,"dataGaName":798,"dataGaLocation":771},"/de-de/pricing/premium/","why premium",{"text":800,"config":801},"Vorteile von Ultimate",{"href":802,"dataGaName":803,"dataGaLocation":771},"/de-de/pricing/ultimate/","why ultimate",[805],{"title":653,"links":806},[807,809,811,813,818,823,828],{"text":349,"config":808},{"href":351,"dataGaName":352,"dataGaLocation":771},{"text":663,"config":810},{"href":665,"dataGaName":666,"dataGaLocation":771},{"text":668,"config":812},{"href":670,"dataGaName":671,"dataGaLocation":771},{"text":814,"config":815},"Status",{"href":816,"dataGaName":817,"dataGaLocation":771},"https://status.gitlab.com/","status",{"text":819,"config":820},"Nutzungsbedingungen",{"href":821,"dataGaName":822,"dataGaLocation":771},"/terms/","terms of use",{"text":824,"config":825},"Datenschutzerklärung",{"href":826,"dataGaName":827,"dataGaLocation":771},"/de-de/privacy/","privacy statement",{"text":829,"config":830},"Cookie-Einstellungen",{"dataGaName":831,"dataGaLocation":771,"id":832,"isOneTrustButton":323},"cookie preferences","ot-sdk-btn",{"title":387,"links":834,"subMenu":843},[835,839],{"text":836,"config":837},"DevSecOps-Plattform",{"href":371,"dataGaName":838,"dataGaLocation":771},"devsecops platform",{"text":840,"config":841},"KI-unterstützte Entwicklung",{"href":21,"dataGaName":842,"dataGaLocation":771},"ai-assisted development",[844],{"title":845,"links":846},"Themen",[847,851,856,861,866,871,876,881],{"text":407,"config":848},{"href":849,"dataGaName":850,"dataGaLocation":771},"/de-de/topics/ci-cd/","cicd",{"text":852,"config":853},"GitOps",{"href":854,"dataGaName":855,"dataGaLocation":771},"/de-de/topics/gitops/","gitops",{"text":857,"config":858},"DevOps",{"href":859,"dataGaName":860,"dataGaLocation":771},"/de-de/topics/devops/","devops",{"text":862,"config":863},"Versionskontrolle",{"href":864,"dataGaName":865,"dataGaLocation":771},"/de-de/topics/version-control/","version control",{"text":867,"config":868},"DevSecOps",{"href":869,"dataGaName":870,"dataGaLocation":771},"/de-de/topics/devsecops/","devsecops",{"text":872,"config":873},"Cloud-nativ",{"href":874,"dataGaName":875,"dataGaLocation":771},"/de-de/topics/cloud-native/","cloud native",{"text":877,"config":878},"KI für das Programmieren",{"href":879,"dataGaName":880,"dataGaLocation":771},"/de-de/topics/devops/ai-for-coding/","ai for coding",{"text":882,"config":883},"Agentische KI",{"href":884,"dataGaName":885,"dataGaLocation":771},"/de-de/topics/agentic-ai/","agentic ai",{"title":887,"links":888},"Lösungen",[889,892,894,899,903,906,909,912,914,916,918,923],{"text":432,"config":890},{"href":427,"dataGaName":891,"dataGaLocation":771},"Application Security Testing",{"text":419,"config":893},{"href":403,"dataGaName":404,"dataGaLocation":771},{"text":895,"config":896},"Agile Entwicklung",{"href":897,"dataGaName":898,"dataGaLocation":771},"/de-de/solutions/agile-delivery/","agile delivery",{"text":900,"config":901},"SCM",{"href":416,"dataGaName":902,"dataGaLocation":771},"source code management",{"text":407,"config":904},{"href":409,"dataGaName":905,"dataGaLocation":771},"continuous integration & delivery",{"text":458,"config":907},{"href":460,"dataGaName":908,"dataGaLocation":771},"value stream management",{"text":852,"config":910},{"href":911,"dataGaName":855,"dataGaLocation":771},"/de-de/solutions/gitops/",{"text":471,"config":913},{"href":474,"dataGaName":475,"dataGaLocation":771},{"text":477,"config":915},{"href":480,"dataGaName":481,"dataGaLocation":771},{"text":483,"config":917},{"href":486,"dataGaName":487,"dataGaLocation":771},{"text":919,"config":920},"Bildungswesen",{"href":921,"dataGaName":922,"dataGaLocation":771},"/de-de/solutions/education/","education",{"text":924,"config":925},"Finanzdienstleistungen",{"href":926,"dataGaName":927,"dataGaLocation":771},"/de-de/solutions/finance/","financial services",{"title":494,"links":929},[930,932,934,936,939,941,944,946,948,951,953,955,957],{"text":507,"config":931},{"href":509,"dataGaName":510,"dataGaLocation":771},{"text":512,"config":933},{"href":514,"dataGaName":515,"dataGaLocation":771},{"text":517,"config":935},{"href":519,"dataGaName":520,"dataGaLocation":771},{"text":522,"config":937},{"href":524,"dataGaName":938,"dataGaLocation":771},"docs",{"text":545,"config":940},{"href":547,"dataGaName":548,"dataGaLocation":771},{"text":942,"config":943},"Neuigkeiten",{"href":594,"dataGaName":595,"dataGaLocation":771},{"text":540,"config":945},{"href":542,"dataGaName":543,"dataGaLocation":771},{"text":554,"config":947},{"href":556,"dataGaName":557,"dataGaLocation":771},{"text":949,"config":950},"GitLab Services",{"href":564,"dataGaName":66,"dataGaLocation":771},{"text":566,"config":952},{"href":568,"dataGaName":569,"dataGaLocation":771},{"text":571,"config":954},{"href":573,"dataGaName":574,"dataGaLocation":771},{"text":576,"config":956},{"href":578,"dataGaName":579,"dataGaLocation":771},{"text":581,"config":958},{"href":583,"dataGaName":584,"dataGaLocation":771},{"title":960,"links":961},"Unternehmen",[962,964,966,968,970,972,977,982,984,986,988],{"text":605,"config":963},{"href":607,"dataGaName":599,"dataGaLocation":771},{"text":610,"config":965},{"href":612,"dataGaName":613,"dataGaLocation":771},{"text":618,"config":967},{"href":620,"dataGaName":621,"dataGaLocation":771},{"text":623,"config":969},{"href":625,"dataGaName":626,"dataGaLocation":771},{"text":628,"config":971},{"href":630,"dataGaName":631,"dataGaLocation":771},{"text":973,"config":974},"Nachhaltigkeit",{"href":975,"dataGaName":976,"dataGaLocation":771},"/sustainability/","Sustainability",{"text":978,"config":979},"Vielfalt, Inklusion und Zugehörigkeit",{"href":980,"dataGaName":981,"dataGaLocation":771},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":633,"config":983},{"href":635,"dataGaName":636,"dataGaLocation":771},{"text":643,"config":985},{"href":645,"dataGaName":646,"dataGaLocation":771},{"text":648,"config":987},{"href":650,"dataGaName":651,"dataGaLocation":771},{"text":989,"config":990},"Transparenzerklärung zu moderner Sklaverei",{"href":991,"dataGaName":992,"dataGaLocation":771},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":994},[995,997,1000],{"text":819,"config":996},{"href":821,"dataGaName":822,"dataGaLocation":771},{"text":998,"config":999},"Cookies",{"dataGaName":831,"dataGaLocation":771,"id":832,"isOneTrustButton":323},{"text":824,"config":1001},{"href":826,"dataGaName":827,"dataGaLocation":771},[1003],{"id":1004,"title":7,"body":319,"config":1005,"content":1007,"description":319,"extension":1011,"meta":1012,"navigation":323,"path":1013,"seo":1014,"stem":1015,"__hash__":1016},"blogAuthors/en-us/blog/authors/cesar-saavedra.yml",{"template":1006},"BlogAuthor",{"name":7,"config":1008},{"headshot":1009,"ctfId":1010},"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",[1018],{"title":1019,"description":1020,"heroImage":1021,"category":315,"date":1022,"authors":1023,"slug":1025,"externalUrl":319},"Claude Code und GitLab: Drei Workflows bis zur Produktion","KI-Coding-Tools schreiben Code schnell. Aber wer liefert ihn aus? Wie Claude Code und GitLab Duo Agent Platform vom Bug-Report zum Produktions-Fix führen.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1778087000/qdfsf8kz6ebfnopx9v2e.png","2026-05-06",[1024],"Michael Friedrich","claude-code-and-gitlab",{"promotions":1027},[1028,1042,1053,1065],{"id":1029,"categories":1030,"header":1032,"text":1033,"button":1034,"image":1039},"ai-modernization",[1031],"ai","Hält KI, was uns versprochen wurde?","Das Quiz dauert maximal 5 Minuten.",{"text":1035,"config":1036},"Ermittle deinen KI-Reifegrad",{"href":1037,"dataGaName":1038,"dataGaLocation":548},"/de-de/assessments/ai-modernization-assessment/","modernization assessment",{"config":1040},{"src":1041},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1043,"categories":1044,"header":1045,"text":1033,"button":1046,"image":1050},"devops-modernization",[332,870],"Verwaltest du Tool-Chaos oder stellst du Innovationen bereit?",{"text":1047,"config":1048},"Ermittle deinen DevOps-Reifegrad",{"href":1049,"dataGaName":1038,"dataGaLocation":548},"/de-de/assessments/devops-modernization-assessment/",{"config":1051},{"src":1052},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1054,"categories":1055,"header":1057,"text":1033,"button":1058,"image":1062},"security-modernization",[1056],"security","Tauschst du Schnelligkeit gegen Sicherheit ein?",{"text":1059,"config":1060},"Ermittle deinen Sicherheitsreifegrad",{"href":1061,"dataGaName":1038,"dataGaLocation":548},"/de-de/assessments/security-modernization-assessment/",{"config":1063},{"src":1064},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1066,"paths":1067,"header":1070,"text":1071,"button":1072,"image":1077},"github-azure-migration",[1068,1069],"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":1073,"config":1074},"Erfahre, wie GitLab im Vergleich zu GitHub abschneidet",{"href":1075,"dataGaName":1076,"dataGaLocation":548},"/de-de/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1078},{"src":1052},{"header":1080,"blurb":1081,"button":1082,"secondaryButton":1087},"Beginne noch heute, schneller zu entwickeln","Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.\n",{"text":1083,"config":1084},"Kostenlosen Test starten",{"href":1085,"dataGaName":347,"dataGaLocation":1086},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/de-de/","feature",{"text":349,"config":1088},{"href":351,"dataGaName":352,"dataGaLocation":1086},1781392784531]