[{"data":1,"prerenderedAt":796},["ShallowReactive",2],{"/de-de/blog/categories/ai-ml":3,"navigation-de-de":21,"banner-de-de":435,"footer-de-de":445,"ai-ml-category-page-total-items-de-de":681,"ai-ml-category-page-featured-de-de":682,"ai-ml-category-page-3-de-de":712},{"id":4,"title":5,"body":6,"category":6,"config":7,"content":11,"description":6,"extension":13,"meta":14,"navigation":15,"path":16,"seo":17,"slug":6,"stem":19,"testContent":6,"type":6,"__hash__":20},"blogCategories/de-de/blog/categories/ai-ml.yml","Ai Ml",null,{"template":8,"slug":9,"hide":10},"BlogCategory","ai-ml",false,{"name":12},"KI/ML","yml",{},true,"/de-de/blog/categories/ai-ml",{"title":12,"description":18},"Browse articles related to KI/ML on the GitLab Blog","de-de/blog/categories/ai-ml","1ZXMYZ95h3sv7hO1jba_Y-UZre4Tax4JM6QlNpoAdE4",{"data":22},{"logo":23,"freeTrial":28,"sales":33,"login":38,"items":43,"search":353,"minimal":387,"duo":405,"switchNav":414,"pricingDeployment":425},{"config":24},{"href":25,"dataGaName":26,"dataGaLocation":27},"/de-de/","gitlab logo","header",{"text":29,"config":30},"Kostenlose Testversion anfordern",{"href":31,"dataGaName":32,"dataGaLocation":27},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":34,"config":35},"Vertrieb kontaktieren",{"href":36,"dataGaName":37,"dataGaLocation":27},"/de-de/sales/","sales",{"text":39,"config":40},"Anmelden",{"href":41,"dataGaName":42,"dataGaLocation":27},"https://gitlab.com/users/sign_in/","sign in",[44,71,168,173,274,334],{"text":45,"config":46,"cards":48},"Plattform",{"dataNavLevelOne":47},"platform",[49,55,63],{"title":45,"description":50,"link":51},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":52,"config":53},"Die Plattform erkunden",{"href":54,"dataGaName":47,"dataGaLocation":27},"/de-de/platform/",{"title":56,"description":57,"link":58},"GitLab Duo Agent Platform","Agentische KI für den gesamten Software-Lebenszyklus",{"text":59,"config":60},"Lerne GitLab Duo kennen",{"href":61,"dataGaName":62,"dataGaLocation":27},"/de-de/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":64,"description":65,"link":66},"Warum GitLab?","Erfahre, warum sich Unternehmen für GitLab entscheiden",{"text":67,"config":68},"Mehr erfahren",{"href":69,"dataGaName":70,"dataGaLocation":27},"/de-de/why-gitlab/","why gitlab",{"text":72,"left":15,"config":73,"link":75,"lists":79,"footer":150},"Produkt",{"dataNavLevelOne":74},"solutions",{"text":76,"config":77},"Alle Lösungen anzeigen",{"href":78,"dataGaName":74,"dataGaLocation":27},"/de-de/solutions/",[80,105,128],{"title":81,"description":82,"link":83,"items":88},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":84},{"icon":85,"href":86,"dataGaName":87,"dataGaLocation":27},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[89,93,96,101],{"text":90,"config":91},"CI/CD",{"href":92,"dataGaLocation":27,"dataGaName":90},"/de-de/solutions/continuous-integration/",{"text":56,"config":94},{"href":61,"dataGaLocation":27,"dataGaName":95},"gitlab duo agent platform - product menu",{"text":97,"config":98},"Quellcodeverwaltung",{"href":99,"dataGaLocation":27,"dataGaName":100},"/de-de/solutions/source-code-management/","Source Code Management",{"text":102,"config":103},"Automatische Softwarebereitstellung",{"href":86,"dataGaLocation":27,"dataGaName":104},"Automated software delivery",{"title":106,"description":107,"link":108,"items":113},"Sicherheit","Entwickle Code schneller ohne Abstriche bei der Sicherheit",{"config":109},{"href":110,"dataGaName":111,"dataGaLocation":27,"icon":112},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[114,118,123],{"text":115,"config":116},"Anwendungssicherheitstests",{"href":110,"dataGaName":117,"dataGaLocation":27},"Application security testing",{"text":119,"config":120},"Schutz der Software-Lieferkette",{"href":121,"dataGaLocation":27,"dataGaName":122},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":124,"config":125},"Software-Compliance",{"href":126,"dataGaName":127,"dataGaLocation":27},"/de-de/solutions/software-compliance/","software compliance",{"title":129,"link":130,"items":135},"Auswertung",{"config":131},{"icon":132,"href":133,"dataGaName":134,"dataGaLocation":27},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[136,140,145],{"text":137,"config":138},"Sichtbarkeit und Auswertung",{"href":133,"dataGaLocation":27,"dataGaName":139},"Visibility and Measurement",{"text":141,"config":142},"Wertstrommanagement",{"href":143,"dataGaLocation":27,"dataGaName":144},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":146,"config":147},"Analysen und Einblicke",{"href":148,"dataGaLocation":27,"dataGaName":149},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":151,"items":152},"GitLab für",[153,158,163],{"text":154,"config":155},"Enterprise",{"href":156,"dataGaLocation":27,"dataGaName":157},"/de-de/enterprise/","enterprise",{"text":159,"config":160},"Kleinunternehmen",{"href":161,"dataGaLocation":27,"dataGaName":162},"/de-de/small-business/","small business",{"text":164,"config":165},"Öffentlicher Sektor",{"href":166,"dataGaLocation":27,"dataGaName":167},"/de-de/solutions/public-sector/","public sector",{"text":169,"config":170},"Preise",{"href":171,"dataGaName":172,"dataGaLocation":27,"dataNavLevelOne":172},"/de-de/pricing/","pricing",{"text":174,"config":175,"link":177,"lists":181,"feature":261},"Ressourcen",{"dataNavLevelOne":176},"resources",{"text":178,"config":179},"Alle Ressourcen anzeigen",{"href":180,"dataGaName":176,"dataGaLocation":27},"/de-de/resources/",[182,215,233],{"title":183,"items":184},"Erste Schritte",[185,190,195,200,205,210],{"text":186,"config":187},"Installieren",{"href":188,"dataGaName":189,"dataGaLocation":27},"/de-de/install/","install",{"text":191,"config":192},"Kurzanleitungen",{"href":193,"dataGaName":194,"dataGaLocation":27},"/de-de/get-started/","quick setup checklists",{"text":196,"config":197},"Lernen",{"href":198,"dataGaLocation":27,"dataGaName":199},"https://university.gitlab.com/","learn",{"text":201,"config":202},"Produktdokumentation",{"href":203,"dataGaName":204,"dataGaLocation":27},"https://docs.gitlab.com/","product documentation",{"text":206,"config":207},"Best-Practice-Videos",{"href":208,"dataGaName":209,"dataGaLocation":27},"/de-de/getting-started-videos/","best practice videos",{"text":211,"config":212},"Integrationen",{"href":213,"dataGaName":214,"dataGaLocation":27},"/de-de/integrations/","integrations",{"title":216,"items":217},"Entdecken",[218,223,228],{"text":219,"config":220},"Kundenerfolge",{"href":221,"dataGaName":222,"dataGaLocation":27},"/de-de/customers/","customer success stories",{"text":224,"config":225},"Blog",{"href":226,"dataGaName":227,"dataGaLocation":27},"/de-de/blog/","blog",{"text":229,"config":230},"Remote",{"href":231,"dataGaName":232,"dataGaLocation":27},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":234,"items":235},"Vernetzen",[236,241,246,251,256],{"text":237,"config":238},"GitLab Services",{"href":239,"dataGaName":240,"dataGaLocation":27},"/de-de/services/","services",{"text":242,"config":243},"Community",{"href":244,"dataGaName":245,"dataGaLocation":27},"/community/","community",{"text":247,"config":248},"Forum",{"href":249,"dataGaName":250,"dataGaLocation":27},"https://forum.gitlab.com/","forum",{"text":252,"config":253},"Veranstaltungen",{"href":254,"dataGaName":255,"dataGaLocation":27},"/events/","events",{"text":257,"config":258},"Partner",{"href":259,"dataGaName":260,"dataGaLocation":27},"/de-de/partners/","partners",{"backgroundColor":262,"textColor":263,"text":264,"image":265,"link":269},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":266,"config":267},"The Source Promo-Karte",{"src":268},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":270,"config":271},"Aktuelles",{"href":272,"dataGaName":273,"dataGaLocation":27},"/de-de/the-source/","the source",{"text":275,"config":276,"lists":278},"Unternehmen",{"dataNavLevelOne":277},"company",[279],{"items":280},[281,286,292,294,299,304,309,314,319,324,329],{"text":282,"config":283},"Über",{"href":284,"dataGaName":285,"dataGaLocation":27},"/de-de/company/","about",{"text":287,"config":288,"footerGa":291},"Karriere",{"href":289,"dataGaName":290,"dataGaLocation":27},"/jobs/","jobs",{"dataGaName":290},{"text":252,"config":293},{"href":254,"dataGaName":255,"dataGaLocation":27},{"text":295,"config":296},"Geschäftsführung",{"href":297,"dataGaName":298,"dataGaLocation":27},"/company/team/e-group/","leadership",{"text":300,"config":301},"Team",{"href":302,"dataGaName":303,"dataGaLocation":27},"/company/team/","team",{"text":305,"config":306},"Handbuch",{"href":307,"dataGaName":308,"dataGaLocation":27},"https://handbook.gitlab.com/","handbook",{"text":310,"config":311},"Investor Relations",{"href":312,"dataGaName":313,"dataGaLocation":27},"https://ir.gitlab.com/","investor relations",{"text":315,"config":316},"Trust Center",{"href":317,"dataGaName":318,"dataGaLocation":27},"/de-de/security/","trust center",{"text":320,"config":321},"AI Transparency Center",{"href":322,"dataGaName":323,"dataGaLocation":27},"/de-de/ai-transparency-center/","ai transparency center",{"text":325,"config":326},"Newsletter",{"href":327,"dataGaName":328,"dataGaLocation":27},"/company/contact/#contact-forms","newsletter",{"text":330,"config":331},"Presse",{"href":332,"dataGaName":333,"dataGaLocation":27},"/press/","press",{"text":335,"config":336,"lists":337},"Kontakt",{"dataNavLevelOne":277},[338],{"items":339},[340,343,348],{"text":34,"config":341},{"href":36,"dataGaName":342,"dataGaLocation":27},"talk to sales",{"text":344,"config":345},"Support-Portal",{"href":346,"dataGaName":347,"dataGaLocation":27},"https://support.gitlab.com","support portal",{"text":349,"config":350},"Kundenportal",{"href":351,"dataGaName":352,"dataGaLocation":27},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":354,"login":355,"suggestions":362},"Schließen",{"text":356,"link":357},"Um Repositorys und Projekte zu durchsuchen, melde dich an bei",{"text":358,"config":359},"gitlab.com",{"href":41,"dataGaName":360,"dataGaLocation":361},"search login","search",{"text":363,"default":364},"Vorschläge",[365,367,372,374,379,384],{"text":56,"config":366},{"href":61,"dataGaName":56,"dataGaLocation":361},{"text":368,"config":369},"Codevorschläge (KI)",{"href":370,"dataGaName":371,"dataGaLocation":361},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":90,"config":373},{"href":92,"dataGaName":90,"dataGaLocation":361},{"text":375,"config":376},"GitLab auf AWS",{"href":377,"dataGaName":378,"dataGaLocation":361},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":380,"config":381},"GitLab auf Google Cloud",{"href":382,"dataGaName":383,"dataGaLocation":361},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":64,"config":385},{"href":69,"dataGaName":386,"dataGaLocation":361},"Why GitLab?",{"freeTrial":388,"mobileIcon":393,"desktopIcon":398,"secondaryButton":401},{"text":389,"config":390},"Kostenlos testen",{"href":391,"dataGaName":32,"dataGaLocation":392},"https://gitlab.com/-/trials/new/","nav",{"altText":394,"config":395},"GitLab-Symbol",{"src":396,"dataGaName":397,"dataGaLocation":392},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":394,"config":399},{"src":400,"dataGaName":397,"dataGaLocation":392},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":183,"config":402},{"href":403,"dataGaName":404,"dataGaLocation":392},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":406,"mobileIcon":410,"desktopIcon":412},{"text":407,"config":408},"Mehr über GitLab Duo erfahren",{"href":61,"dataGaName":409,"dataGaLocation":392},"gitlab duo",{"altText":394,"config":411},{"src":396,"dataGaName":397,"dataGaLocation":392},{"altText":394,"config":413},{"src":400,"dataGaName":397,"dataGaLocation":392},{"button":415,"mobileIcon":420,"desktopIcon":422},{"text":416,"config":417},"/Option",{"href":418,"dataGaName":419,"dataGaLocation":392},"#contact","switch",{"altText":394,"config":421},{"src":396,"dataGaName":397,"dataGaLocation":392},{"altText":394,"config":423},{"src":424,"dataGaName":397,"dataGaLocation":392},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":426,"mobileIcon":431,"desktopIcon":433},{"text":427,"config":428},"Zurück zur Preisübersicht",{"href":171,"dataGaName":429,"dataGaLocation":392,"icon":430},"back to pricing","GoBack",{"altText":394,"config":432},{"src":396,"dataGaName":397,"dataGaLocation":392},{"altText":394,"config":434},{"src":400,"dataGaName":397,"dataGaLocation":392},{"title":436,"button":437,"config":442},"Sieh dir an, wie agentische KI die Softwarebereitstellung transformiert",{"text":438,"config":439},"GitLab Transcend jetzt ansehen",{"href":440,"dataGaName":441,"dataGaLocation":27},"/de-de/events/transcend/virtual/","transcend event",{"layout":443,"icon":444,"disabled":15},"release","AiStar",{"data":446},{"text":447,"source":448,"edit":454,"contribute":459,"config":464,"items":469,"minimal":672},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":449,"config":450},"Quelltext der Seite anzeigen",{"href":451,"dataGaName":452,"dataGaLocation":453},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":455,"config":456},"Diese Seite bearbeiten",{"href":457,"dataGaName":458,"dataGaLocation":453},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":460,"config":461},"Beteilige dich",{"href":462,"dataGaName":463,"dataGaLocation":453},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":465,"facebook":466,"youtube":467,"linkedin":468},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[470,515,568,610,637],{"title":169,"links":471,"subMenu":486},[472,476,481],{"text":473,"config":474},"Tarife anzeigen",{"href":171,"dataGaName":475,"dataGaLocation":453},"view plans",{"text":477,"config":478},"Vorteile von Premium",{"href":479,"dataGaName":480,"dataGaLocation":453},"/de-de/pricing/premium/","why premium",{"text":482,"config":483},"Vorteile von Ultimate",{"href":484,"dataGaName":485,"dataGaLocation":453},"/de-de/pricing/ultimate/","why ultimate",[487],{"title":335,"links":488},[489,491,493,495,500,505,510],{"text":34,"config":490},{"href":36,"dataGaName":37,"dataGaLocation":453},{"text":344,"config":492},{"href":346,"dataGaName":347,"dataGaLocation":453},{"text":349,"config":494},{"href":351,"dataGaName":352,"dataGaLocation":453},{"text":496,"config":497},"Status",{"href":498,"dataGaName":499,"dataGaLocation":453},"https://status.gitlab.com/","status",{"text":501,"config":502},"Nutzungsbedingungen",{"href":503,"dataGaName":504,"dataGaLocation":453},"/terms/","terms of use",{"text":506,"config":507},"Datenschutzerklärung",{"href":508,"dataGaName":509,"dataGaLocation":453},"/de-de/privacy/","privacy statement",{"text":511,"config":512},"Cookie-Einstellungen",{"dataGaName":513,"dataGaLocation":453,"id":514,"isOneTrustButton":15},"cookie preferences","ot-sdk-btn",{"title":72,"links":516,"subMenu":525},[517,521],{"text":518,"config":519},"DevSecOps-Plattform",{"href":54,"dataGaName":520,"dataGaLocation":453},"devsecops platform",{"text":522,"config":523},"KI-unterstützte Entwicklung",{"href":61,"dataGaName":524,"dataGaLocation":453},"ai-assisted development",[526],{"title":527,"links":528},"Themen",[529,533,538,543,548,553,558,563],{"text":90,"config":530},{"href":531,"dataGaName":532,"dataGaLocation":453},"/de-de/topics/ci-cd/","cicd",{"text":534,"config":535},"GitOps",{"href":536,"dataGaName":537,"dataGaLocation":453},"/de-de/topics/gitops/","gitops",{"text":539,"config":540},"DevOps",{"href":541,"dataGaName":542,"dataGaLocation":453},"/de-de/topics/devops/","devops",{"text":544,"config":545},"Versionskontrolle",{"href":546,"dataGaName":547,"dataGaLocation":453},"/de-de/topics/version-control/","version control",{"text":549,"config":550},"DevSecOps",{"href":551,"dataGaName":552,"dataGaLocation":453},"/de-de/topics/devsecops/","devsecops",{"text":554,"config":555},"Cloud-nativ",{"href":556,"dataGaName":557,"dataGaLocation":453},"/de-de/topics/cloud-native/","cloud native",{"text":559,"config":560},"KI für das Programmieren",{"href":561,"dataGaName":562,"dataGaLocation":453},"/de-de/topics/devops/ai-for-coding/","ai for coding",{"text":564,"config":565},"Agentische KI",{"href":566,"dataGaName":567,"dataGaLocation":453},"/de-de/topics/agentic-ai/","agentic ai",{"title":569,"links":570},"Lösungen",[571,574,576,581,585,588,591,594,596,598,600,605],{"text":115,"config":572},{"href":110,"dataGaName":573,"dataGaLocation":453},"Application Security Testing",{"text":102,"config":575},{"href":86,"dataGaName":87,"dataGaLocation":453},{"text":577,"config":578},"Agile Entwicklung",{"href":579,"dataGaName":580,"dataGaLocation":453},"/de-de/solutions/agile-delivery/","agile delivery",{"text":582,"config":583},"SCM",{"href":99,"dataGaName":584,"dataGaLocation":453},"source code management",{"text":90,"config":586},{"href":92,"dataGaName":587,"dataGaLocation":453},"continuous integration & delivery",{"text":141,"config":589},{"href":143,"dataGaName":590,"dataGaLocation":453},"value stream management",{"text":534,"config":592},{"href":593,"dataGaName":537,"dataGaLocation":453},"/de-de/solutions/gitops/",{"text":154,"config":595},{"href":156,"dataGaName":157,"dataGaLocation":453},{"text":159,"config":597},{"href":161,"dataGaName":162,"dataGaLocation":453},{"text":164,"config":599},{"href":166,"dataGaName":167,"dataGaLocation":453},{"text":601,"config":602},"Bildungswesen",{"href":603,"dataGaName":604,"dataGaLocation":453},"/de-de/solutions/education/","education",{"text":606,"config":607},"Finanzdienstleistungen",{"href":608,"dataGaName":609,"dataGaLocation":453},"/de-de/solutions/finance/","financial services",{"title":174,"links":611},[612,614,616,618,621,623,625,627,629,631,633,635],{"text":186,"config":613},{"href":188,"dataGaName":189,"dataGaLocation":453},{"text":191,"config":615},{"href":193,"dataGaName":194,"dataGaLocation":453},{"text":196,"config":617},{"href":198,"dataGaName":199,"dataGaLocation":453},{"text":201,"config":619},{"href":203,"dataGaName":620,"dataGaLocation":453},"docs",{"text":224,"config":622},{"href":226,"dataGaName":227,"dataGaLocation":453},{"text":219,"config":624},{"href":221,"dataGaName":222,"dataGaLocation":453},{"text":229,"config":626},{"href":231,"dataGaName":232,"dataGaLocation":453},{"text":237,"config":628},{"href":239,"dataGaName":240,"dataGaLocation":453},{"text":242,"config":630},{"href":244,"dataGaName":245,"dataGaLocation":453},{"text":247,"config":632},{"href":249,"dataGaName":250,"dataGaLocation":453},{"text":252,"config":634},{"href":254,"dataGaName":255,"dataGaLocation":453},{"text":257,"config":636},{"href":259,"dataGaName":260,"dataGaLocation":453},{"title":275,"links":638},[639,641,643,645,647,649,651,656,661,663,665,667],{"text":282,"config":640},{"href":284,"dataGaName":277,"dataGaLocation":453},{"text":287,"config":642},{"href":289,"dataGaName":290,"dataGaLocation":453},{"text":295,"config":644},{"href":297,"dataGaName":298,"dataGaLocation":453},{"text":300,"config":646},{"href":302,"dataGaName":303,"dataGaLocation":453},{"text":305,"config":648},{"href":307,"dataGaName":308,"dataGaLocation":453},{"text":310,"config":650},{"href":312,"dataGaName":313,"dataGaLocation":453},{"text":652,"config":653},"Nachhaltigkeit",{"href":654,"dataGaName":655,"dataGaLocation":453},"/sustainability/","Sustainability",{"text":657,"config":658},"Vielfalt, Inklusion und Zugehörigkeit",{"href":659,"dataGaName":660,"dataGaLocation":453},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":315,"config":662},{"href":317,"dataGaName":318,"dataGaLocation":453},{"text":325,"config":664},{"href":327,"dataGaName":328,"dataGaLocation":453},{"text":330,"config":666},{"href":332,"dataGaName":333,"dataGaLocation":453},{"text":668,"config":669},"Transparenzerklärung zu moderner Sklaverei",{"href":670,"dataGaName":671,"dataGaLocation":453},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":673},[674,676,679],{"text":501,"config":675},{"href":503,"dataGaName":504,"dataGaLocation":453},{"text":677,"config":678},"Cookies",{"dataGaName":513,"dataGaLocation":453,"id":514,"isOneTrustButton":15},{"text":506,"config":680},{"href":508,"dataGaName":509,"dataGaLocation":453},73,{"id":683,"title":684,"authorSlugs":685,"body":6,"categorySlug":9,"config":687,"content":690,"description":6,"extension":13,"isFeatured":15,"meta":702,"navigation":15,"path":703,"publishedDate":696,"seo":704,"stem":708,"tagSlugs":709,"__hash__":711},"blogPosts/de-de/blog/give-your-ai-agent-direct-structured-gitlab-access-with-glab-cli.yml","Give Your Ai Agent Direct Structured Gitlab Access With Glab Cli",[686],"kai-armstrong",{"featured":15,"template":688,"slug":689},"BlogPost","give-your-ai-agent-direct-structured-gitlab-access-with-glab-cli",{"title":691,"description":692,"authors":693,"heroImage":695,"date":696,"body":697,"category":9,"tags":698},"glab CLI: Strukturierter GitLab-Zugriff für KI-Agenten","Das GitLab CLI (glab) gibt KI-Agenten strukturierten Zugriff auf Projekte via MCP. Tutorial: Code-Reviews und Issue-Triage mit glab beschleunigen.",[694],"Kai Armstrong","https://res.cloudinary.com/about-gitlab-com/image/upload/v1776347152/unw3mzatkd5xyfbzcnni.png","2026-04-27","Wenn Teams GitLab Duo, Claude, Cursor und andere KI-Assistenten einsetzen,\nläuft ein wachsender Teil des Entwicklungs-Workflows über einen KI-Agenten,\nder im eigenen Auftrag handelt – Issues liest, Merge Requests prüft, Pipelines\nausführt und dabei hilft, schneller zu liefern. Die meisten Entwickler(innen) nutzen\n`glab` bereits vom Terminal aus, um mit GitLab zu interagieren. Beides zu\nkombinieren ist der naheliegende nächste Schritt.\n\nDas Problem: Ohne die richtigen Werkzeuge rät ein KI-Agent im Wesentlichen,\nwenn es um GitLab-Projekte geht. Er könnte die Details eines Issues\nhalluzinieren, den er nie gesehen hat, einen Merge Request auf Basis veralteter\nTrainingsdaten zusammenfassen statt anhand seines tatsächlichen Zustands – oder\nverlangen, dass Kontext manuell aus einem Browser-Tab kopiert und in ein\nChat-Fenster eingefügt wird, bevor überhaupt begonnen werden kann. Jede dieser\nUmgehungslösungen ist Reibung: Sie verlangsamt die Arbeit, eröffnet\nFehlermöglichkeiten und setzt eine harte Obergrenze dafür, was der Agent\ntatsächlich leisten kann. Das GitLab CLI (`glab`) ändert das, indem es Agenten\neine direkte, zuverlässige Schnittstelle zu Projekten gibt.\n\nMit `glab` ruft der Agent das Benötigte direkt von GitLab ab, handelt darauf\nund meldet das Ergebnis zurück – sodass weniger Zeit damit verbracht wird,\nInformationen weiterzugeben, und mehr Zeit für die eigentliche Arbeit bleibt.\n\nIn diesem Tutorial wird gezeigt, wie `glab` KI-Agenten strukturierten,\nzuverlässigen Zugriff auf GitLab-Projekte ermöglicht – und wie das einen\nschnelleren, leistungsfähigeren Entwicklungs-Workflow freischaltet.\n\n\n## KI-Agent über MCP mit GitLab verbinden\n\nDer direkteste Weg, KI-Workflows deutlich leistungsfähiger zu machen, besteht\ndarin, dem KI-Agenten nativen Zugriff auf `glab` über das Model Context\nProtocol ([MCP](https://about.gitlab.com/topics/ai/model-context-protocol/))\nzu geben.\n\nMCP ist ein offener Standard, der KI-Werkzeugen ermöglicht, externe Fähigkeiten\nzur Laufzeit zu entdecken und zu nutzen. Nach der Verbindung kann der\nKI-Assistent Issues lesen, Merge Requests kommentieren, Pipeline-Status prüfen\nund zurück in GitLab schreiben – ohne etwas aus der UI zu kopieren oder auch\nnur einen einzigen API-Aufruf selbst zu schreiben.\n\nEinstieg mit:\n\n```shell\n# MCP-Server von glab starten\nglab mcp serve\n```\n\nSobald der MCP-Client konfiguriert ist, kann die KI Fragen wie *„Was ist der\nStatus meiner offenen MRs?\"* oder *„Gibt es fehlgeschlagene Pipelines auf\nmain?\"* beantworten, indem sie GitLab direkt abfragt – nicht durch Scraping der\nWeb-UI, nicht durch veraltete Trainingsdaten. Die\n[vollständige Setup-Dokumentation](https://docs.gitlab.com/cli/) enthält\nKonfigurationsschritte für Claude Code, Cursor und andere Editoren.\n\nEin wichtiges Detail: `glab` fügt automatisch `--output json` hinzu, wenn es\nüber MCP aufgerufen wird – für jeden Befehl, der das unterstützt. Der Agent\nerhält saubere, strukturierte Daten, ohne dass über Ausgabeformate nachgedacht\nwerden muss. Und da `glab` das offizielle MCP SDK verwendet, bleibt es\nkompatibel, wenn sich das Protokoll weiterentwickelt.\n\nWir haben bewusst entschieden, *welche* Befehle über MCP zugänglich sind.\nBefehle, die interaktive Terminalausgabe erfordern, sind absichtlich\nausgeschlossen – der Agent bleibt nie in einem Wartezustand für Eingaben, die\nnie kommen. Was zugänglich ist, funktioniert zuverlässig im Agenten-Kontext.\n\n\n## KI am Code-Review beteiligen\n\nDie meisten Entwickler(innen) haben einen Rückstand an MRs, die auf Review warten.\nDas ist einer der zeitintensivsten Teile der Arbeit – und einer der besten\nAnsatzpunkte für KI. Mit `glab` beobachtet der Agent die Review-Queue nicht\nnur, sondern arbeitet sie gemeinsam durch.\n\n### Genau sehen, was noch offen ist\n\nEinstieg mit:\n\n```shell\nglab mr view 2677 --comments --unresolved --output json\n```\n\nDieser Befehl gibt den vollständigen MR zurück: Metadaten, Beschreibung und\njede ungelöste Diskussion als einzelnes strukturiertes JSON-Payload. Das gibt\nder KI alles, was sie braucht: welche Threads offen sind, was der Reviewer\nangefragt hat und in welchem Kontext. Kein Tab-Wechsel, kein manuelles Kopieren\neinzelner Kommentare.\n\n```json\n{\n  \"id\": 2677,\n  \"title\": \"feat: add OAuth2 support\",\n  \"state\": \"opened\",\n  \"author\": { \"username\": \"jdwick\" },\n  \"labels\": [\"backend\", \"needs-review\"],\n  \"blocking_discussions_resolved\": false,\n  \"discussions\": [\n    {\n      \"id\": \"3107030349\",\n      \"resolved\": false,\n      \"notes\": [\n        {\n          \"author\": { \"username\": \"dmurphy\" },\n          \"body\": \"This error handling will swallow panics — consider wrapping with recover()\",\n          \"created_at\": \"2026-03-14T09:23:11.000Z\"\n        }\n      ]\n    },\n    {\n      \"id\": \"3107030412\",\n      \"resolved\": false,\n      \"notes\": [\n        {\n          \"author\": { \"username\": \"sreeves\" },\n          \"body\": \"Token refresh logic needs a test for the expired token case\",\n          \"created_at\": \"2026-03-14T10:05:44.000Z\"\n        }\n      ]\n    }\n  ]\n}\n```\n\nStatt jeden Thread selbst durchzulesen, lässt sich der Agent fragen:\n*„Was muss ich in MR 2677 noch beheben?\"* – und erhält eine priorisierte\nZusammenfassung mit Änderungsvorschlägen. Das alles aus einem einzigen Befehl.\n\n### Den Kreislauf programmatisch schließen\n\nSobald der KI geholfen hat, das Feedback zu adressieren, kann sie Diskussionen\nauflösen:\n\n```shell\n# Alle Diskussionen auflisten – strukturiert, bereit für den Agenten\nglab mr note list 456 --output json\n\n# Diskussion auflösen, sobald das Feedback adressiert wurde\nglab mr note resolve 456 3107030349\n\n# Wieder öffnen, wenn etwas erneut geprüft werden muss\nglab mr note reopen 456 3107030349\n```\n\n```json\n[\n  {\n    \"id\": 3107030349,\n    \"body\": \"This error handling will swallow panics — consider wrapping with recover()\",\n    \"author\": { \"username\": \"dmurphy\" },\n    \"resolved\": false,\n    \"resolvable\": true\n  },\n  {\n    \"id\": 3107030412,\n    \"body\": \"Token refresh logic needs a test for the expired token case\",\n    \"author\": { \"username\": \"sreeves\" },\n    \"resolved\": false,\n    \"resolvable\": true\n  }\n]\n```\n\nNote-IDs sind direkt in der GitLab-UI und der API sichtbar – kein zusätzlicher\nLookup nötig. Der Agent kann die vollständige Liste durcharbeiten, jeden Fix\nprüfen und dabei auflösen.\n\n\n## Mit der KI effektiver über Code sprechen\n\nAuch ohne laufenden MCP-Server gibt es eine einfachere Umstellung, die einen\ngroßen Unterschied macht: `glab` einsetzen, um der KI bessere Informationen zu\nliefern.\n\nBeim letzten Mal, als ein KI-Assistent bei der Issue-Triage oder beim Debuggen\neiner fehlgeschlagenen Pipeline geholfen hat, wurde wahrscheinlich etwas Text\naus der GitLab-UI kopiert und in den Chat eingefügt. Das ist es, womit der\nAgent tatsächlich arbeitet:\n\n```text\nopen issues: 12 • milestone: 17.10 • label: bug, needs-triage ...\n```\n\nIm Vergleich dazu, was er mit `glab` erhält:\n\n```json\n[\n  {\n    \"iid\": 902,\n    \"title\": \"Pipeline fails on merge to main\",\n    \"labels\": [\"bug\", \"needs-triage\"],\n    \"milestone\": { \"title\": \"17.10\" },\n    \"assignees\": []\n  },\n  ...\n]\n```\n\nStrukturiert, typisiert, vollständig – keine Mehrdeutigkeit, kein\nInterpretationsaufwand beim Parsen. Das ist der Unterschied zwischen einem\nAgenten, der handeln kann, und einem, der Rückfragen stellen muss.\n\nMit dem MCP-Server passiert das automatisch: `glab` fügt `--output json` für\njeden Befehl hinzu, der das unterstützt. Beim direkten Arbeiten im Terminal\neinfach das Flag selbst ergänzen:\n\n```shell\n# Offene Issues für Triage abrufen\nglab issue list --label \"needs-triage\" --output json\n\n# Pipeline-Status prüfen\nglab ci status --output json\n\n# Vollständige MR-Details abrufen\nglab mr view 456 --output json\n```\n\nDie JSON-Ausgabe wurde in letzten Releases erheblich erweitert. Sie deckt jetzt\nCI-Status, Milestones, Labels, Releases, Schedules, Cluster-Agenten, Work\nItems, MR-Genehmiger, Repository-Mitwirkende und mehr ab. Was `glab` abrufen\nkann, kann die KI sauber verarbeiten.\n\n### Ein echter Workflow\n\n```shell\n$ glab issue list --label \"needs-triage\" --milestone \"17.10\" \\\n--output json\n```\n\n```text\nAgent: I found 2 unassigned bugs in the 17.10 milestone that need triage:\n1. #902 — Pipeline fails on merge to main (opened 5 days ago)\n2. #903 — Auth token not refreshing on expiry (opened 4 days ago)\nBoth are unassigned. Want me to draft triage notes and suggest assignees based on recent commit history?\n```\n\n\n## Der Agent ist keineswegs auf eingebaute Befehle beschränkt\n\nDie nativen Befehle von `glab` decken die gängigsten Workflows ab – aber der\nAgent ist nicht darauf beschränkt. Über `glab api` hat er authentifizierten\nZugriff auf die vollständige GitLab REST- und GraphQL-API-Oberfläche, mit\nderselben Session, ohne zusätzliche Credentials oder Konfiguration.\n\nDas ist ein wesentlicher Unterschied. Die meisten CLI-Werkzeuge beschränken\nsich auf das, was ihre Befehle abbilden. Mit `glab` gilt: Wenn GitLabs API es\nunterstützt, kann der Agent es tun – immer aus einem vertrauenswürdigen,\nauthentifizierten Kontext heraus.\n\nEin praktisches Beispiel: nur die Liste der geänderten Dateien in einem MR\nabrufen, bevor entschieden wird, welche Diffs vollständig geladen werden:\n\n```shell\n# Geänderte Dateipfade abrufen – leichtgewichtig, noch kein Diff-Inhalt\nglab api \"/projects/$CI_PROJECT_ID/merge_requests/$CI_MERGE_REQUEST_IID/diffs?per_page=100\" \\\n| jq '.[].new_path'\n\n# Dann nur die spezifische Datei laden, die der Agent benötigt\nglab api \"/projects/$CI_PROJECT_ID/merge_requests/$CI_MERGE_REQUEST_IID/diffs?per_page=100\" \\\n| jq '.[] | select(.new_path == \"path/to/file.go\")'\n```\n\n```text\n\"internal/auth/token.go\"\n\"internal/auth/token_test.go\"\n\"internal/oauth/refresh.go\"\n```\n\nFür alles, was die REST API nicht abdeckt (Epics, bestimmte Work-Item-Abfragen,\nkomplexe projektübergreifende Daten), bietet `glab api graphql` die vollständige\nGraphQL-Schnittstelle:\n\n```shell\nglab api graphql -f query='\n{\n  project(fullPath: \"gitlab-org/gitlab\") {\n    mergeRequest(iid: \"12345\") {\n      title\n      reviewers { nodes { username } }\n    }\n  }\n}'\n```\n\n```json\n{\n  \"data\": {\n    \"project\": {\n      \"mergeRequest\": {\n        \"title\": \"feat: add OAuth2 support\",\n        \"reviewers\": {\n          \"nodes\": [\n            { \"username\": \"dmurphy\" },\n            { \"username\": \"sreeves\" }\n          ]\n        }\n      }\n    }\n  }\n}\n```\n\nEin einziger, authentifizierter Einstiegspunkt zu allem, was GitLab\nbereitstellt – ohne Token-Jonglieren, separate API-Clients oder\nKonfigurationsaufwand.\n\n\n## Was als Nächstes kommt – und Feedback\n\nZwei Verbesserungen, an denen aktiv gearbeitet wird, werden `glab` für\nAgenten-Workflows noch nützlicher machen:\n\n**Auf Agenten abgestimmter Hilfetext.** Heute ist die `--help`-Ausgabe für\nMenschen am Terminal geschrieben. Sie wird aktualisiert, um für jeden\ninteraktiven Befehl die nicht-interaktive Alternative anzuzeigen, Befehle mit\n`--output json`-Unterstützung zu kennzeichnen und Hilfe generell zu einer\nnützlichen Ressource für Agenten zu machen, die Fähigkeiten zur Laufzeit\nentdecken – nicht nur für Menschen.\n\n**Besser maschinenlesbare Fehlermeldungen.** Wenn heute etwas schiefläuft,\nerhalten Agenten dieselben menschenlesbaren Fehlermeldungen wie\nTerminal-Nutzende. Das wird geändert: Fehler im JSON-Modus geben strukturierte\nAusgaben zurück, die dem Agenten die Informationen liefern, die er braucht, um\nFehler sauber zu behandeln, intelligent zu wiederholen oder den richtigen\nKontext zurückzugeben.\n\nBeide Punkte sind in aktiver Entwicklung. Wer `glab` bereits mit einem\nKI-Werkzeug einsetzt, ist genau die Zielgruppe, deren Erfahrungen uns\ninteressieren.\n\n* **Welche Reibungspunkte gibt es?** Befehle, die sich in Agenten-Kontexten\n  nicht gut verhalten, Fehlermeldungen ohne Handlungsanleitung, Lücken in der\n  JSON-Ausgabe. Feedback ist willkommen.\n\n* **Welche Workflows wurden erschlossen?** Reale Nutzungsmuster helfen dabei,\n  Prioritäten für die weitere Entwicklung zu setzen.\n\nDie Diskussion findet im\n[Feedback-Issue](https://gitlab.com/gitlab-org/cli/-/issues/8177) statt –\ndort wird die Roadmap für Agenten-Freundlichkeit gestaltet, und Beiträge haben\ndort den direktesten Einfluss. Wer eine spezifische Lücke gefunden hat,\nkann ein [Issue öffnen](https://gitlab.com/gitlab-org/cli/-/issues/new). Wer\neinen Fix im Sinn hat: Beiträge sind willkommen. Details unter\n[CONTRIBUTING.md](https://gitlab.com/gitlab-org/cli/-/blob/main/CONTRIBUTING.md).\n\nDas GitLab CLI stand schon immer dafür, Entwickler(inne)n mehr Kontrolle über ihren\nWorkflow zu geben. Da KI ein immer größerer Teil der täglichen Arbeit wird,\nbedeutet das, `glab` zur bestmöglichen Schnittstelle zwischen KI-Werkzeugen\nund GitLab-Projekten zu machen. Wir stehen am Anfang – und freuen uns darauf,\nden nächsten Teil gemeinsam zu gestalten.\n",[699,700,701],"AI/ML","product","tutorial",{},"/de-de/blog/give-your-ai-agent-direct-structured-gitlab-access-with-glab-cli",{"config":705,"title":706,"description":707},{"noIndex":10},"glab CLI und MCP: KI-Agenten direkten GitLab-Zugriff geben","Mit glab CLI und MCP erhalten KI-Agenten strukturierten GitLab-Zugriff. Tutorial zu Code-Review, Issue-Triage und der GitLab-API.","de-de/blog/give-your-ai-agent-direct-structured-gitlab-access-with-glab-cli",[710,700,701],"aiml","u0QL-bFpiGqgGaePmAwJEW7puIKV1YtmePk8VJt0G0I",[713,723,733,743,752,761,770,778,787],{"content":714,"config":721},{"title":715,"heroImage":716,"category":9,"description":717,"authors":718},"KI-gestützte Incident-Reports – strukturierte Dokumentation für NIS2- und ISO-Compliance","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098339/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%285%29_1iy516k40hwBDChKcUJ2zb_1750098339103.png","KI-gestützte Incident-Dokumentation für NIS2/ISO-Compliance: Strukturierte Reports, Root-Cause-Analysen und Audit-Trails. Mit Use-Case-Beispielen.",[719,720],"Valentine Mairet","David O'Regan",{"externalUrl":-1,"slug":722},"how-to-leverage-gitlab-duo-for-enhanced-security-reporting",{"content":724,"config":731},{"title":725,"heroImage":726,"category":9,"description":727,"authors":728},"Vertrauen in agentische Tools aufbauen: Was wir von unseren Nutzer(inne)n gelernt haben","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097663/Blog/Hero%20Images/Blog/Hero%20Images/Workflow%201800x945_2gQoQIbY9NvjLFpXtsxtXy_1750097663612.png","Vertrauen in KI-Agenten entsteht durch viele kleine, positive Mikro-Wendepunkte, nicht durch große Durchbrüche.",[729,730],"Erika Feldman","Will Leidheiser",{"externalUrl":-1,"slug":732},"building-trust-in-agentic-tools-what-we-learned-from-our-users",{"content":734,"config":741},{"title":735,"heroImage":736,"category":9,"description":737,"authors":738},"Datensouveränität sichern – durch Self-Hosted GitLab Duo","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098682/Blog/Hero%20Images/Blog/Hero%20Images/duo-blog-post_1Cy89R1pY8OMwyrgSB525O_1750098682075.png","GitLab Duo selbst hosten für Datenkontrolle. Systematische Bereitstellung mit AWS Bedrock, vLLM oder Air-Gapped – für Compliance-Anforderungen.",[739,740],"Chloe Cartron","Olivier Dupré",{"externalUrl":-1,"slug":742},"gitlab-duo-self-hosted-models-on-aws-bedrock",{"content":744,"config":750},{"title":745,"heroImage":746,"category":9,"description":747,"authors":748},"MLOps – systematisches ML-Lifecycle-Management mit GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1762517473/wo6vgpvabalmnzqgzulh.jpg","MLOps verbindet Data Science und Engineering, automatisiert ML-Workflows und garantiert Reproduzierbarkeit, Governance und KI-Verordnung-Compliance.",[749],"GitLab Germany Team",{"externalUrl":-1,"slug":751},"what-is-mlops",{"content":753,"config":759},{"title":754,"heroImage":755,"category":9,"description":756,"authors":757},"Wie ich mein Onboarding dank KI verbessert habe","https://res.cloudinary.com/about-gitlab-com/image/upload/v1756989645/fojzxakmfdea6jfqjkrl.png","Wie GitLab Duo das Onboarding beschleunigt: Dokumentation durchsuchen, Code reviewen, Fehler debuggen – wissenschaftlich fundierter KI-Einsatz.\n",[758],"Konstantin Greif",{"externalUrl":-1,"slug":760},"gitlab-engineer-how-i-improved-my-onboarding-experience-with-ai",{"content":762,"config":768},{"title":763,"heroImage":764,"category":9,"description":765,"authors":766},"KI-Agenten mittels GitLab in GKE bereitstellen","https://res.cloudinary.com/about-gitlab-com/image/upload/f_auto,q_auto,c_lfill/v1749670563/Blog/Hero%20Images/cloudcomputing.jpg","Systematisches Deployment von AI-Agents nach Google Kubernetes Engine mit GitLab – integrierte Security-Scans, OIDC-Authentifizierung und Audit-Trails.",[767],"Regnard Raquedan",{"externalUrl":-1,"slug":769},"secure-ai-agent-deployment-to-gke",{"content":771,"config":776},{"title":772,"heroImage":773,"category":9,"description":774,"authors":775},"KI-Agenten mittels GitLab in Cloud Run bereitstellen","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670563/Blog/Hero%20Images/cloudcomputing.jpg","Serverless AI-Agent-Deployment mit GitLab und Google Cloud Run – Multi-Agent-Architektur, integrierte Scans, OIDC-Authentifizierung.",[767],{"externalUrl":-1,"slug":777},"fast-and-secure-ai-agent-deployment-to-google-cloud-with-gitlab",{"content":779,"config":785},{"title":780,"heroImage":781,"category":9,"description":782,"authors":783},"Java-Anwendungen schnell aktualisieren – mit GitLab Duo und Amazon Q","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659604/Blog/Hero%20Images/Screenshot_2024-11-27_at_4.55.28_PM.png","Java-8-Anwendungen in Minuten statt Wochen auf Java 17 aktualisieren, dank KI-gestützte Automatisierung mit GitLab Duo und Amazon Q.",[784],"Cesar Saavedra",{"externalUrl":-1,"slug":786},"modernize-java-applications-quickly-with-gitlab-duo-with-amazon-q",{"content":788,"config":794},{"title":789,"heroImage":790,"category":9,"description":791,"authors":792},"GitLab 18.5: KI, die Software-Entwicklung voranbringt","https://res.cloudinary.com/about-gitlab-com/image/upload/v1760970883/asrc2c2hejqp5o1tan4c.png","GitLab 18.5 bietet neue spezialisierte Agenten, präzisere Sicherheitsanalysen und ein neu gestaltetes Interface mit durchgängig sichtbarem KI-Assistenten.",[793],"Bill Staples",{"externalUrl":-1,"slug":795},"gitlab-18-5-intelligence-that-moves-software-development-forward",1777387013303]