[{"data":1,"prerenderedAt":792},["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-8-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,722,732,741,749,758,767,775,783],{"content":714,"config":720},{"title":715,"heroImage":716,"category":9,"description":717,"authors":718},"Lerne GitLab Duo Workflow kennen – die Zukunft der KI-gestützten Entwicklung","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749658912/Blog/Hero%20Images/blog-image-template-1800x945__20_.png","Workflow, unser autonomer KI-Agent, wird die Art und Weise verändern mit der Teams Software entwickeln und ausliefern – unser erster kühner Schritt in Richtung KI-gestützte DevSecOps.",[719],"David DeSanto, Chief Product Officer, GitLab",{"externalUrl":-1,"slug":721},"meet-gitlab-duo-workflow-the-future-of-ai-driven-development",{"content":723,"config":730},{"title":724,"heroImage":725,"category":9,"description":726,"authors":727},"Entwicklung von GitLab Duo: mit KI und Ursachenanalyse zur Problembehebung bei CI/CD-Pipelines","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097321/Blog/Hero%20Images/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25_7JlF3WlEkswGQbcTe8DOTB_1750097321081.png","Entdecke, wie wir die Ursachenanalyse mit KI aufgepeppt haben, um fehlerhafte CI/CD-Pipelines wieder zum Laufen zu bringen. Dabei erwarten dich Beispiele und Übungen, die du selbst ausprobieren kannst.",[728,729],"Rutvik Shah","Michael Friedrich",{"externalUrl":-1,"slug":731},"developing-gitlab-duo-blending-ai-and-root-cause-analysis-to-fix-ci-cd",{"content":733,"config":739},{"title":734,"heroImage":735,"category":9,"description":736,"authors":737},"Entwicklung von GitLab Duo: Sicheres und gründliches Testen von KI-generiertem Code","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097183/Blog/Hero%20Images/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25_7JlF3WlEkswGQbcTe8DOTB_1750097183481.png","Erfahre Schritt für Schritt, wie du die Zuverlässigkeit und Sicherheit von KI-generiertem Code mithilfe von GitLab Duo und GitLab Pages (einschließlich Codebeispielen und Prompts) verbessern kannst.",[738],"David O'Regan",{"externalUrl":-1,"slug":740},"how-gitlab-duo-helps-secure-and-thoroughly-test-ai-generated-code",{"content":742,"config":747},{"title":743,"heroImage":744,"category":9,"description":745,"authors":746},"Entwicklung von GitLab Duo: Dogfooding unserer KI-Funktionen","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098360/Blog/Hero%20Images/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25_7JlF3WlEkswGQbcTe8DOTB_1750098360821.png","Im Rahmen unserer Blog-Reihe zeigen wir mithilfe von Beispielen aus der Praxis, wie wir KI in den Lebenszyklus unserer Softwareentwicklung integrieren und ihren Erfolg anhand von Metriken messen.",[738],{"externalUrl":-1,"slug":748},"developing-gitlab-duo-how-we-are-dogfooding-our-ai-features",{"content":750,"config":756},{"title":751,"heroImage":752,"category":9,"description":753,"authors":754},"Entwicklung von GitLab Duo: KI-Impact-Analyse-Dashboard misst den ROI von KI","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750098611/Blog/Hero%20Images/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25_7JlF3WlEkswGQbcTe8DOTB_1750098611370.png","In unserem Blog stellen wir eine neue Funktion vor, mit der du die Effektivität deiner Investitionen in die KI besser nachvollziehen kannst. Dies wird durch detaillierte Metriken wie die Nutzungsquote von Codevorschlägen ermöglicht.",[755],"Haim Snir",{"externalUrl":-1,"slug":757},"developing-gitlab-duo-ai-impact-analytics-dashboard-measures-the-roi-of-ai",{"content":759,"config":765},{"title":760,"heroImage":761,"category":9,"description":762,"authors":763},"Entwicklung von GitLab Duo: Wie wir KI-Modelle im großen Maßstab validieren und testen","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659856/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25.png","Unsere Blog-Serie beginnt mit einem Blick hinter die Kulissen, wie wir LLMs evaluieren, sie an Anwendungsfälle anpassen und sie optimieren, um bessere Ergebnisse für die Benutzer(innen) zu erzielen.",[764],"Susie Bitters",{"externalUrl":-1,"slug":766},"developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale",{"content":768,"config":773},{"title":769,"heroImage":770,"category":9,"description":771,"authors":772},"10 Best Practices für den Einsatz des KI-basierten GitLab Duo Chat","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097639/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%281%29_77JeTV9gAmbXM0224acirV_1750097638765.png","Tipps zur Integration von GitLab Duo Chat in deine KI-basierten DevSecOps-Workflows. Dazu gibt's Ratschläge für präzisere Chat-Prompts.",[729],{"externalUrl":-1,"slug":774},"10-best-practices-for-using-ai-powered-gitlab-duo-chat",{"content":776,"config":781},{"title":777,"heroImage":778,"category":9,"description":779,"authors":780},"Lerne fortschrittliche Rust-Programmierung mit KI-Unterstützung","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662439/Blog/Hero%20Images/codewithheart.png","In diesem Tutorial vertiefst du mithilfe der KI-basierten Codevorschläge von GitLab Duo deine Kenntnisse in der fortgeschrittenen Rust-Programmierung.",[729],{"externalUrl":-1,"slug":782},"learn-advanced-rust-programming-with-a-little-help-from-ai-code-suggestions",{"content":784,"config":790},{"title":785,"heroImage":786,"category":9,"description":787,"authors":788},"Kombiniere GitLab Flow und GitLab Duo für starke Workflows","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662840/Blog/Hero%20Images/ai-experiment-stars.png","Erweitere GitLab Flow um die KI-basierten Funktionen von GitLab Duo, um deine DevSecOps-Workflows so effizient wie noch nie zuvor zu machen (Tutorial mit Video).",[789],"Cesar Saavedra",{"externalUrl":-1,"slug":791},"gitlab-flow-duo",1777387013554]