[{"data":1,"prerenderedAt":771},["ShallowReactive",2],{"/de-de/blog/structuring-the-gitlab-package-registry-for-enterprise-scale":3,"navigation-de-de":40,"banner-de-de":443,"footer-de-de":453,"blog-post-authors-de-de-Tim Rizzi":658,"blog-related-posts-de-de-structuring-the-gitlab-package-registry-for-enterprise-scale":672,"blog-promotions-de-de":709,"next-steps-de-de":761},{"id":4,"title":5,"authorSlugs":6,"body":8,"categorySlug":9,"config":10,"content":14,"description":8,"extension":27,"isFeatured":12,"meta":28,"navigation":12,"path":29,"publishedDate":20,"seo":30,"stem":35,"tagSlugs":36,"__hash__":39},"blogPosts/de-de/blog/structuring-the-gitlab-package-registry-for-enterprise-scale.yml","Structuring The Gitlab Package Registry For Enterprise Scale",[7],"tim-rizzi",null,"product",{"slug":11,"featured":12,"template":13},"structuring-the-gitlab-package-registry-for-enterprise-scale",true,"BlogPost",{"title":15,"description":16,"authors":17,"heroImage":19,"date":20,"body":21,"category":9,"tags":22,"updatedDate":26},"Strukturierung der GitLab-Paket-Registry für Unternehmen","Wie du projektbasierte Modelle zur Veröffentlichung von Softwarepaketen von GitLab mit Nutzung auf Root-Gruppen-Ebene kombinierst, um eine Strategie für Paketverwaltung aufzubauen.",[18],"Tim Rizzi","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662332/Blog/Hero%20Images/blog-image-template-1800x945__23_.png","2025-02-19","Je größer Unternehmen werden, desto komplexer wird es, interne Pakete zu verwalten. Während herkömmliche Paketmanager wie JFrog Artifactory und Sonatype Nexus ein zentralisiertes Repository nutzen, geht [GitLab](https://about.gitlab.com/de-de/) einen anderen Weg, der der Arbeitsweise moderner Entwicklungsteams besser entspricht. In diesem Beitrag erfährst du, wie du deine GitLab-Paket-Registry auf Unternehmensniveau effektiv strukturierst. Dabie ziehen wir Maven- und npm-Pakete als Beispiele heran.\n\n## Das Modell der GitLab-Paket-Registry verstehen\n\nWenn du bisher einen herkömmlichen Paketmanager verwendet hast, mutet der Ansatz von GitLab vielleicht erst einmal ungewohnt an. Anstatt eines einzigen, zentralisierten Repositorys integriert GitLab die Paketverwaltung direkt in deine bestehende Projekt- und Gruppenstruktur. Das bedeutet Folgendes:\n\n- Teams veröffentlichen Pakete in bestimmten Projekten, in denen sich der Code befindet\n- Teams verwenden Pakete von Root-Gruppen-Registries, die alle untergeordneten Pakete aggregieren\n- Die Zugriffskontrolle wird durch deine bestehenden GitLab-Berechtigungen festgelegt\n\nDieses Modell bietet mehrere Vorteile:\n\n- Klare Inhaberschaft von Paketen neben deren Quellcode\n- Granulare Zugriffskontrolle ohne zusätzliche Konfiguration\n- Vereinfachte CI/CD-Integration\n- Natürliche Anpassung an die Teamstrukturen\n- Eine einzige URL für alle Pakete des Unternehmens durch Root-Gruppen-Nutzung\n\n### Die Vorteile der Paket-Registry auf Root-Gruppen-Ebene\n\nGitLab unterstützt zwar die Paketnutzung auf verschiedenen Gruppenebenen, aber die Root-Gruppen-Ebene hat sich bei unseren Benutzer(inne)n als bewährte Vorgehensweise etabliert. Das liegt an folgenden Gründen:\n\n- **Einziger Zugriffspunkt:** Eine URL bietet Zugriff auf alle privaten Pakete im gesamten Unternehmen\n- **Konsistente Benennung von Paketen:** Mit Endpunkten auf Gruppenebene können Teams ihre bevorzugten Benennungskonventionen ohne Konflikte weiter nutzen\n- **Vereinfachte Konfiguration:** Alle Entwickler(innen) können dieselbe Konfiguration nutzen, um auf Pakete zuzugreifen\n- **Sicheres Zugriffsmanagement:** Kombiniert mit Bereitstellungstokens für einfache Rotation und Zugriffskontrolle\n- **Hierarchische Organisation**: Bildet deine Unternehmensstrukturen natürlich ab und bietet gleichzeitig vereinheitlichten Zugriff\n\n## Praxisbeispiel: Unternehmensstruktur\n\nSehen wir uns am Beispiel eines größeren Unternehmens an, wie das Ganze in der Praxis aussehen kann:\n\n```text\ncompany/ (root group)\n├── retail-division/\n│   ├── shared-libraries/     # Division-specific shared code\n│   └── teams/\n│       ├── checkout/        # Team publishes packages here\n│       └── inventory/       # Team publishes packages here\n├── banking-division/\n│   ├── shared-libraries/    # Division-specific shared code\n│   └── teams/\n│       ├── payments/       # Team publishes packages here\n│       └── fraud/         # Team publishes packages here\n└── shared-platform/        # Enterprise-wide shared code\n    ├── java-commons/      # Shared Java libraries\n    └── ui-components/     # Shared UI components\n```\n\n### Veröffentlichungskonfiguration\n\nTeams veröffentlichen Pakete in ihre jeweiligen Projekt-Registries und behalten dabei eine klare Inhaberschaft bei:\n\n1. Beispiel: Maven\n\n```xml\n\u003C!-- checkout/pom.xml -->\n\u003CdistributionManagement>\n    \u003Crepository>\n        \u003Cid>gitlab-maven\u003C/id>\n        \u003Curl>${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/maven\u003C/url>\n    \u003C/repository>\n\u003C/distributionManagement>\n```\n\n2. Beispiel: npm\n\n```json\n// ui-components/package.json\n{\n  \"name\": \"@company/ui-components\",\n  \"publishConfig\": {\n    \"registry\": \"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/npm/\"\n  }\n}\n```\n\n### Nutzungskonfiguration\n\nHier zeigt sich wirklich, wie vorteilhaft die Nutzung in der Root-Gruppe ist. Alle Teams konfigurieren einen einzigen Endpunkt für den Paketzugriff:\n\n1. Beispiel: Maven\n\n```xml\n\u003C!-- Any project's pom.xml -->\n\u003Crepositories>\n    \u003Crepository>\n        \u003Cid>gitlab-maven\u003C/id>\n        \u003Curl>https://gitlab.example.com/api/v4/groups/company/-/packages/maven\u003C/url>\n    \u003C/repository>\n\u003C/repositories>\n```\n\n2. Beispiel: npm\n\n```text\n# Any project's .npmrc\n@company:registry=https://gitlab.example.com/api/v4/groups/company/-/packages/npm/\n```\n\nDiese Konfiguration bietet automatisch Zugriff auf alle Pakete in deine Unternehmen und gleichzeitig alle Vorteile der projektbasierten Veröffentlichung.\n\n## Authentifizierung und Zugriffskontrolle\n\nDas Modell von GitLab vereinfacht die Authentifizierung durch Bereitstellungstoken und CI/CD-Integration.\n\n### Für CI/CD-Pipelines\n\nGitLab übernimmt automatisch die Authentifizierung mit `CI_JOB_TOKEN`:\n\n```yaml\n# .gitlab-ci.yml\npublish:\n  script:\n    - mvn deploy  # or npm publish\n  # CI_JOB_TOKEN provides automatic authentication\n```\n\n### Für die Entwicklung\n\nNutze Gruppen-Bereitstellungstoken für die Paketnutzung:\n\n- Erstelle auf Root-Gruppen-Ebene Bereitstellungstoken mit Lesezugriff\n- Rotiere Tokens aus Sicherheitsgründen in regelmäßigen Abständen\n- Teile eine einzige Konfiguration für alle Entwickler(innen)\n\n## Vorteile eines Root-Gruppen-Paket-Registrys:\n\n1. Vereinfachte Konfiguration\n   - Eine URL für den gesamten Paketzugriff\n   - Konsistente Einrichtung für alle Teams\n   - Einfache Rotation von Tokens\n2. Klare Inhaberschaft\n   - Pakete bleiben bei ihrem Quellcode\n   - Teams haben Kontrolle über die Veröffentlichung\n   - Der Versionsverlauf korreliert mit der Projektaktivität\n3. Natürliche Organisation\n   - Entspricht deiner Unternehmensstruktur\n   - Fördert die Autonomie der Teams\n   - Ermöglicht teamübergreifende Zusammenarbeit\n\n## Erste Schritte\n\n1. Richte deine Root-Gruppe ein\n   - Erstelle eine klare Gruppenstruktur\n   - Konfiguriere die entsprechenden Zugriffskontrollen\n   - Erstelle Gruppen-Bereitstellungstoken\n2. Konfiguriere Teamprojekte\n   - Richte die Veröffentlichung auf Projektebene ein\n   - Implementiere CI/CD-Pipelines\n   - Dokumentiere die Benennungskonventionen für Pakete\n3. Standardisiere die Nutzung\n   - Konfiguriere den Registry-Zugriff für die Root-Gruppe\n   - Teile Bereitstellungstoken auf sichere Art und Weise\n   - Dokumentiere den Entdeckungsprozess der Pakete\n\n## Zusammenfassung\n\nDas Paket-Registry-Modell von GitLab ist – insbesondere dann, wenn es auf Root-Gruppen-Ebene genutzt wird – eine leistungsstarke Lösung für die Paketverwaltung im Unternehmen. Durch die Kombination aus projektbasierter Veröffentlichung mit Nutzung auf Root-Gruppen-Ebene erhalten Unternehmen das Beste aus beiden Welten: klare Inhaberschaft und vereinfachten Zugriff. Dieser Ansatz lässt sich natürlich mit deinem Unternehmen skalieren, ohne dass Sicherheit und Benutzerfreundlichkeit vernachlässigt werden.\n\nDu kannst dieses Modell zunächst in einzelnen Teams oder Abteilungen einführen und dann ausweiten, wenn dich die Vorteile dieses integrierten Ansatzes überzeugt haben. Auch wenn wir uns in diesem Beitrag auf Maven und npm konzentriert haben, gelten dieselben Prinzipien für alle Pakettypen, die von GitLab unterstützt werden.\n\n> Lege jetzt mit Paket-Registries los! Melde dich für eine [kostenlose Testversion von GitLab Ultimate](https://about.gitlab.com/de-de/free-trial/) an.\n",[23,24,25],"DevSecOps","tutorial","solutions architecture","2025-05-13","yml",{},"/de-de/blog/structuring-the-gitlab-package-registry-for-enterprise-scale",{"title":15,"description":16,"ogTitle":15,"ogDescription":16,"noIndex":31,"ogImage":19,"ogUrl":32,"ogSiteName":33,"ogType":34,"canonicalUrls":32},false,"https://about.gitlab.com/blog/structuring-the-gitlab-package-registry-for-enterprise-scale","https://about.gitlab.com","article","de-de/blog/structuring-the-gitlab-package-registry-for-enterprise-scale",[37,24,38],"devsecops","solutions-architecture","mC2B96hBD_piEFltPCME2zd3OBywY95NPW5oSDgUyJI",{"data":41},{"logo":42,"freeTrial":47,"sales":52,"login":57,"items":62,"search":371,"minimal":406,"duo":424,"pricingDeployment":433},{"config":43},{"href":44,"dataGaName":45,"dataGaLocation":46},"/de-de/","gitlab logo","header",{"text":48,"config":49},"Kostenlose Testversion anfordern",{"href":50,"dataGaName":51,"dataGaLocation":46},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":53,"config":54},"Vertrieb kontaktieren",{"href":55,"dataGaName":56,"dataGaLocation":46},"/de-de/sales/","sales",{"text":58,"config":59},"Anmelden",{"href":60,"dataGaName":61,"dataGaLocation":46},"https://gitlab.com/users/sign_in/","sign in",[63,90,186,191,292,352],{"text":64,"config":65,"cards":67},"Plattform",{"dataNavLevelOne":66},"platform",[68,74,82],{"title":64,"description":69,"link":70},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":71,"config":72},"Erkunde unsere Plattform",{"href":73,"dataGaName":66,"dataGaLocation":46},"/de-de/platform/",{"title":75,"description":76,"link":77},"GitLab Duo Agent Platform","Agentische KI für den gesamten Softwareentwicklungszyklus",{"text":78,"config":79},"Lerne GitLab Duo kennen",{"href":80,"dataGaName":81,"dataGaLocation":46},"/de-de/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":83,"description":84,"link":85},"Gründe, die für GitLab sprechen","Erfahre, warum Unternehmen auf GitLab setzen",{"text":86,"config":87},"Mehr erfahren",{"href":88,"dataGaName":89,"dataGaLocation":46},"/de-de/why-gitlab/","why gitlab",{"text":91,"left":12,"config":92,"link":94,"lists":98,"footer":168},"Produkt",{"dataNavLevelOne":93},"solutions",{"text":95,"config":96},"Alle Lösungen anzeigen",{"href":97,"dataGaName":93,"dataGaLocation":46},"/de-de/solutions/",[99,124,146],{"title":100,"description":101,"link":102,"items":107},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":103},{"icon":104,"href":105,"dataGaName":106,"dataGaLocation":46},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[108,112,115,120],{"text":109,"config":110},"CI/CD",{"href":111,"dataGaLocation":46,"dataGaName":109},"/de-de/solutions/continuous-integration/",{"text":75,"config":113},{"href":80,"dataGaLocation":46,"dataGaName":114},"gitlab duo agent platform - product menu",{"text":116,"config":117},"Quellcodeverwaltung",{"href":118,"dataGaLocation":46,"dataGaName":119},"/de-de/solutions/source-code-management/","Source Code Management",{"text":121,"config":122},"Automatisierte Softwarebereitstellung",{"href":105,"dataGaLocation":46,"dataGaName":123},"Automated software delivery",{"title":125,"description":126,"link":127,"items":132},"Sicherheit","Entwickle schneller, ohne die Sicherheit zu gefährden",{"config":128},{"href":129,"dataGaName":130,"dataGaLocation":46,"icon":131},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[133,137,142],{"text":134,"config":135},"Application Security Testing",{"href":129,"dataGaName":136,"dataGaLocation":46},"Application security testing",{"text":138,"config":139},"Schutz der Software-Lieferkette",{"href":140,"dataGaLocation":46,"dataGaName":141},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":143,"config":144},"Software Compliance",{"href":145,"dataGaName":143,"dataGaLocation":46},"/de-de/solutions/software-compliance/",{"title":147,"link":148,"items":153},"Bewertung",{"config":149},{"icon":150,"href":151,"dataGaName":152,"dataGaLocation":46},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[154,158,163],{"text":155,"config":156},"Sichtbarkeit und Bewertung",{"href":151,"dataGaLocation":46,"dataGaName":157},"Visibility and Measurement",{"text":159,"config":160},"Wertstrommanagement",{"href":161,"dataGaLocation":46,"dataGaName":162},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":164,"config":165},"Analysen und Einblicke",{"href":166,"dataGaLocation":46,"dataGaName":167},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":169,"items":170},"GitLab für",[171,176,181],{"text":172,"config":173},"Enterprise",{"href":174,"dataGaLocation":46,"dataGaName":175},"/de-de/enterprise/","enterprise",{"text":177,"config":178},"Kleinunternehmen",{"href":179,"dataGaLocation":46,"dataGaName":180},"/de-de/small-business/","small business",{"text":182,"config":183},"den öffentlichen Sektor",{"href":184,"dataGaLocation":46,"dataGaName":185},"/de-de/solutions/public-sector/","public sector",{"text":187,"config":188},"Preise",{"href":189,"dataGaName":190,"dataGaLocation":46,"dataNavLevelOne":190},"/de-de/pricing/","pricing",{"text":192,"config":193,"link":195,"lists":199,"feature":279},"Ressourcen",{"dataNavLevelOne":194},"resources",{"text":196,"config":197},"Alle Ressourcen anzeigen",{"href":198,"dataGaName":194,"dataGaLocation":46},"/de-de/resources/",[200,233,251],{"title":201,"items":202},"Erste Schritte",[203,208,213,218,223,228],{"text":204,"config":205},"Installieren",{"href":206,"dataGaName":207,"dataGaLocation":46},"/de-de/install/","install",{"text":209,"config":210},"Kurzanleitungen",{"href":211,"dataGaName":212,"dataGaLocation":46},"/de-de/get-started/","quick setup checklists",{"text":214,"config":215},"Lernen",{"href":216,"dataGaLocation":46,"dataGaName":217},"https://university.gitlab.com/","learn",{"text":219,"config":220},"Produktdokumentation",{"href":221,"dataGaName":222,"dataGaLocation":46},"https://docs.gitlab.com/","product documentation",{"text":224,"config":225},"Best-Practice-Videos",{"href":226,"dataGaName":227,"dataGaLocation":46},"/de-de/getting-started-videos/","best practice videos",{"text":229,"config":230},"Integrationen",{"href":231,"dataGaName":232,"dataGaLocation":46},"/de-de/integrations/","integrations",{"title":234,"items":235},"Entdecken",[236,241,246],{"text":237,"config":238},"Kundenerfolge",{"href":239,"dataGaName":240,"dataGaLocation":46},"/de-de/customers/","customer success stories",{"text":242,"config":243},"Blog",{"href":244,"dataGaName":245,"dataGaLocation":46},"/de-de/blog/","blog",{"text":247,"config":248},"Remote",{"href":249,"dataGaName":250,"dataGaLocation":46},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":252,"items":253},"Vernetzen",[254,259,264,269,274],{"text":255,"config":256},"GitLab-Services",{"href":257,"dataGaName":258,"dataGaLocation":46},"/de-de/services/","services",{"text":260,"config":261},"Community",{"href":262,"dataGaName":263,"dataGaLocation":46},"/community/","community",{"text":265,"config":266},"Forum",{"href":267,"dataGaName":268,"dataGaLocation":46},"https://forum.gitlab.com/","forum",{"text":270,"config":271},"Veranstaltungen",{"href":272,"dataGaName":273,"dataGaLocation":46},"/events/","events",{"text":275,"config":276},"Partner",{"href":277,"dataGaName":278,"dataGaLocation":46},"/de-de/partners/","partners",{"backgroundColor":280,"textColor":281,"text":282,"image":283,"link":287},"#2f2a6b","#fff","Perspektiven für die Softwareentwicklung der Zukunft",{"altText":284,"config":285},"the source promo card",{"src":286},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":288,"config":289},"Lies die News",{"href":290,"dataGaName":291,"dataGaLocation":46},"/de-de/the-source/","the source",{"text":293,"config":294,"lists":296},"Unternehmen",{"dataNavLevelOne":295},"company",[297],{"items":298},[299,304,310,312,317,322,327,332,337,342,347],{"text":300,"config":301},"Über",{"href":302,"dataGaName":303,"dataGaLocation":46},"/de-de/company/","about",{"text":305,"config":306,"footerGa":309},"Karriere",{"href":307,"dataGaName":308,"dataGaLocation":46},"/jobs/","jobs",{"dataGaName":308},{"text":270,"config":311},{"href":272,"dataGaName":273,"dataGaLocation":46},{"text":313,"config":314},"Geschäftsführung",{"href":315,"dataGaName":316,"dataGaLocation":46},"/company/team/e-group/","leadership",{"text":318,"config":319},"Team",{"href":320,"dataGaName":321,"dataGaLocation":46},"/company/team/","team",{"text":323,"config":324},"Handbuch",{"href":325,"dataGaName":326,"dataGaLocation":46},"https://handbook.gitlab.com/","handbook",{"text":328,"config":329},"Investor Relations",{"href":330,"dataGaName":331,"dataGaLocation":46},"https://ir.gitlab.com/","investor relations",{"text":333,"config":334},"Trust Center",{"href":335,"dataGaName":336,"dataGaLocation":46},"/de-de/security/","trust center",{"text":338,"config":339},"AI Transparency Center",{"href":340,"dataGaName":341,"dataGaLocation":46},"/de-de/ai-transparency-center/","ai transparency center",{"text":343,"config":344},"Newsletter",{"href":345,"dataGaName":346,"dataGaLocation":46},"/company/contact/#contact-forms","newsletter",{"text":348,"config":349},"Presse",{"href":350,"dataGaName":351,"dataGaLocation":46},"/press/","press",{"text":353,"config":354,"lists":355},"Kontakt",{"dataNavLevelOne":295},[356],{"items":357},[358,361,366],{"text":53,"config":359},{"href":55,"dataGaName":360,"dataGaLocation":46},"talk to sales",{"text":362,"config":363},"Support-Portal",{"href":364,"dataGaName":365,"dataGaLocation":46},"https://support.gitlab.com","support portal",{"text":367,"config":368},"Kundenportal",{"href":369,"dataGaName":370,"dataGaLocation":46},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":372,"login":373,"suggestions":380},"Schließen",{"text":374,"link":375},"Um Repositories und Projekte zu durchsuchen, melde dich an bei",{"text":376,"config":377},"gitlab.com",{"href":60,"dataGaName":378,"dataGaLocation":379},"search login","search",{"text":381,"default":382},"Vorschläge",[383,385,390,392,397,402],{"text":75,"config":384},{"href":80,"dataGaName":75,"dataGaLocation":379},{"text":386,"config":387},"Code Suggestions (KI)",{"href":388,"dataGaName":389,"dataGaLocation":379},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":109,"config":391},{"href":111,"dataGaName":109,"dataGaLocation":379},{"text":393,"config":394},"GitLab auf AWS",{"href":395,"dataGaName":396,"dataGaLocation":379},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":398,"config":399},"GitLab auf Google Cloud",{"href":400,"dataGaName":401,"dataGaLocation":379},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":403,"config":404},"Warum GitLab?",{"href":88,"dataGaName":405,"dataGaLocation":379},"Why GitLab?",{"freeTrial":407,"mobileIcon":412,"desktopIcon":417,"secondaryButton":420},{"text":408,"config":409},"Kostenlos testen",{"href":410,"dataGaName":51,"dataGaLocation":411},"https://gitlab.com/-/trials/new/","nav",{"altText":413,"config":414},"GitLab-Symbol",{"src":415,"dataGaName":416,"dataGaLocation":411},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":413,"config":418},{"src":419,"dataGaName":416,"dataGaLocation":411},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":201,"config":421},{"href":422,"dataGaName":423,"dataGaLocation":411},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":425,"mobileIcon":429,"desktopIcon":431},{"text":426,"config":427},"Erfahre mehr über GitLab Duo",{"href":80,"dataGaName":428,"dataGaLocation":411},"gitlab duo",{"altText":413,"config":430},{"src":415,"dataGaName":416,"dataGaLocation":411},{"altText":413,"config":432},{"src":419,"dataGaName":416,"dataGaLocation":411},{"freeTrial":434,"mobileIcon":439,"desktopIcon":441},{"text":435,"config":436},"Zurück zur Preisübersicht",{"href":189,"dataGaName":437,"dataGaLocation":411,"icon":438},"back to pricing","GoBack",{"altText":413,"config":440},{"src":415,"dataGaName":416,"dataGaLocation":411},{"altText":413,"config":442},{"src":419,"dataGaName":416,"dataGaLocation":411},{"title":444,"button":445,"config":450},"Sieh dir an, wie agentische KI die Softwarebereitstellung transformiert",{"text":446,"config":447},"GitLab Transcend jetzt ansehen",{"href":448,"dataGaName":449,"dataGaLocation":46},"/de-de/events/transcend/virtual/","transcend event",{"layout":451,"icon":452,"disabled":12},"release","AiStar",{"data":454},{"text":455,"source":456,"edit":462,"contribute":467,"config":472,"items":477,"minimal":650},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":457,"config":458},"Quelltext der Seite anzeigen",{"href":459,"dataGaName":460,"dataGaLocation":461},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":463,"config":464},"Diese Seite bearbeiten",{"href":465,"dataGaName":466,"dataGaLocation":461},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":468,"config":469},"Beteilige dich",{"href":470,"dataGaName":471,"dataGaLocation":461},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":473,"facebook":474,"youtube":475,"linkedin":476},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[478,501,556,583,617],{"title":64,"links":479,"subMenu":484},[480],{"text":481,"config":482},"DevSecOps-Plattform",{"href":73,"dataGaName":483,"dataGaLocation":461},"devsecops platform",[485],{"title":187,"links":486},[487,491,496],{"text":488,"config":489},"Tarife anzeigen",{"href":189,"dataGaName":490,"dataGaLocation":461},"view plans",{"text":492,"config":493},"Vorteile von Premium",{"href":494,"dataGaName":495,"dataGaLocation":461},"/de-de/pricing/premium/","why premium",{"text":497,"config":498},"Vorteile von Ultimate",{"href":499,"dataGaName":500,"dataGaLocation":461},"/de-de/pricing/ultimate/","why ultimate",{"title":502,"links":503},"Lösungen",[504,509,512,514,519,524,528,531,534,539,541,543,546,551],{"text":505,"config":506},"Digitale Transformation",{"href":507,"dataGaName":508,"dataGaLocation":461},"/de-de/topics/digital-transformation/","digital transformation",{"text":510,"config":511},"Sicherheit und Compliance",{"href":129,"dataGaName":136,"dataGaLocation":461},{"text":121,"config":513},{"href":105,"dataGaName":106,"dataGaLocation":461},{"text":515,"config":516},"Agile Entwicklung",{"href":517,"dataGaName":518,"dataGaLocation":461},"/de-de/solutions/agile-delivery/","agile delivery",{"text":520,"config":521},"Cloud-Transformation",{"href":522,"dataGaName":523,"dataGaLocation":461},"/de-de/topics/cloud-native/","cloud transformation",{"text":525,"config":526},"SCM",{"href":118,"dataGaName":527,"dataGaLocation":461},"source code management",{"text":109,"config":529},{"href":111,"dataGaName":530,"dataGaLocation":461},"continuous integration & delivery",{"text":159,"config":532},{"href":161,"dataGaName":533,"dataGaLocation":461},"value stream management",{"text":535,"config":536},"GitOps",{"href":537,"dataGaName":538,"dataGaLocation":461},"/de-de/solutions/gitops/","gitops",{"text":172,"config":540},{"href":174,"dataGaName":175,"dataGaLocation":461},{"text":177,"config":542},{"href":179,"dataGaName":180,"dataGaLocation":461},{"text":544,"config":545},"Öffentlicher Sektor",{"href":184,"dataGaName":185,"dataGaLocation":461},{"text":547,"config":548},"Bildungswesen",{"href":549,"dataGaName":550,"dataGaLocation":461},"/de-de/solutions/education/","education",{"text":552,"config":553},"Finanzdienstleistungen",{"href":554,"dataGaName":555,"dataGaLocation":461},"/de-de/solutions/finance/","financial services",{"title":192,"links":557},[558,560,562,564,567,569,571,573,575,577,579,581],{"text":204,"config":559},{"href":206,"dataGaName":207,"dataGaLocation":461},{"text":209,"config":561},{"href":211,"dataGaName":212,"dataGaLocation":461},{"text":214,"config":563},{"href":216,"dataGaName":217,"dataGaLocation":461},{"text":219,"config":565},{"href":221,"dataGaName":566,"dataGaLocation":461},"docs",{"text":242,"config":568},{"href":244,"dataGaName":245,"dataGaLocation":461},{"text":237,"config":570},{"href":239,"dataGaName":240,"dataGaLocation":461},{"text":247,"config":572},{"href":249,"dataGaName":250,"dataGaLocation":461},{"text":255,"config":574},{"href":257,"dataGaName":258,"dataGaLocation":461},{"text":260,"config":576},{"href":262,"dataGaName":263,"dataGaLocation":461},{"text":265,"config":578},{"href":267,"dataGaName":268,"dataGaLocation":461},{"text":270,"config":580},{"href":272,"dataGaName":273,"dataGaLocation":461},{"text":275,"config":582},{"href":277,"dataGaName":278,"dataGaLocation":461},{"title":293,"links":584},[585,587,589,591,593,595,597,601,606,608,610,612],{"text":300,"config":586},{"href":302,"dataGaName":295,"dataGaLocation":461},{"text":305,"config":588},{"href":307,"dataGaName":308,"dataGaLocation":461},{"text":313,"config":590},{"href":315,"dataGaName":316,"dataGaLocation":461},{"text":318,"config":592},{"href":320,"dataGaName":321,"dataGaLocation":461},{"text":323,"config":594},{"href":325,"dataGaName":326,"dataGaLocation":461},{"text":328,"config":596},{"href":330,"dataGaName":331,"dataGaLocation":461},{"text":598,"config":599},"Sustainability",{"href":600,"dataGaName":598,"dataGaLocation":461},"/sustainability/",{"text":602,"config":603},"Vielfalt, Inklusion und Zugehörigkeit",{"href":604,"dataGaName":605,"dataGaLocation":461},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":333,"config":607},{"href":335,"dataGaName":336,"dataGaLocation":461},{"text":343,"config":609},{"href":345,"dataGaName":346,"dataGaLocation":461},{"text":348,"config":611},{"href":350,"dataGaName":351,"dataGaLocation":461},{"text":613,"config":614},"Transparenzerklärung zu moderner Sklaverei",{"href":615,"dataGaName":616,"dataGaLocation":461},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":618,"links":619},"Nimm Kontakt auf",[620,623,628,630,635,640,645],{"text":621,"config":622},"Sprich mit einem Experten/einer Expertin",{"href":55,"dataGaName":56,"dataGaLocation":461},{"text":624,"config":625},"Support",{"href":626,"dataGaName":627,"dataGaLocation":461},"https://support.gitlab.com/hc/en-us/articles/11626483177756-GitLab-Support","get help",{"text":367,"config":629},{"href":369,"dataGaName":370,"dataGaLocation":461},{"text":631,"config":632},"Status",{"href":633,"dataGaName":634,"dataGaLocation":461},"https://status.gitlab.com/","status",{"text":636,"config":637},"Nutzungsbedingungen",{"href":638,"dataGaName":639,"dataGaLocation":461},"/terms/","terms of use",{"text":641,"config":642},"Datenschutzerklärung",{"href":643,"dataGaName":644,"dataGaLocation":461},"/de-de/privacy/","privacy statement",{"text":646,"config":647},"Cookie-Einstellungen",{"dataGaName":648,"dataGaLocation":461,"id":649,"isOneTrustButton":12},"cookie preferences","ot-sdk-btn",{"items":651},[652,654,656],{"text":636,"config":653},{"href":638,"dataGaName":639,"dataGaLocation":461},{"text":641,"config":655},{"href":643,"dataGaName":644,"dataGaLocation":461},{"text":646,"config":657},{"dataGaName":648,"dataGaLocation":461,"id":649,"isOneTrustButton":12},[659],{"id":660,"title":18,"body":8,"config":661,"content":663,"description":8,"extension":27,"meta":667,"navigation":12,"path":668,"seo":669,"stem":670,"__hash__":671},"blogAuthors/en-us/blog/authors/tim-rizzi.yml",{"template":662},"BlogAuthor",{"name":18,"config":664},{"headshot":665,"ctfId":666},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749661866/Blog/Author%20Headshots/trizzi-headshot.jpg","trizzi",{},"/en-us/blog/authors/tim-rizzi",{},"en-us/blog/authors/tim-rizzi","ADPqrpcnKveFJS0m_zFV0VLtb_h_txu59QVgz_YwKMc",[673,687,698],{"content":674,"config":685},{"title":675,"description":676,"authors":677,"heroImage":679,"date":680,"body":681,"category":9,"tags":682},"GitLab 18.11: Budgetkontrolle für GitLab Credits – Ausgabelimits und Nutzergrenzen","GitLab 18.11 führt Ausgabelimits und Nutzergrenzen für GitLab Credits ein – für planbare KI-Kosten und reibungslose Budgetgenehmigungen.",[678],"Bryan Rothwell","https://res.cloudinary.com/about-gitlab-com/image/upload/v1776259080/cakqnwo5ecp255lo8lzo.png","2026-04-17","Teams, die GitLab Duo Agent Platform mit On-Demand GitLab Credits nutzen, profitieren von automatisierten Workflows, die früher ganze Sprints beansprucht haben. Mit wachsender Nutzung steigt jedoch der Bedarf an Kostentransparenz – seitens Finance, Procurement und Platform-Teams, die belegen müssen, dass KI-Ausgaben begrenzt, planbar und steuerbar sind.\n\nEine wesentliche Hürde bei der breiteren KI-Einführung ist nicht Skepsis gegenüber der Technologie. Es ist die Unsicherheit bei der Kostenkontrolle. Ohne Ausgabeobergrenzen kann ein arbeitsintensiver Monat zu unerwarteten Kosten führen. Ohne Nutzerlimits können wenige Intensivnutzende das Credit-Kontingent des gesamten Teams aufbrauchen, bevor der Monat endet. Und ohne beides müssen Engineering-Verantwortliche, die Agentic AI weiter ausrollen wollen, aufwändigere Budgetgenehmigungsprozesse durchlaufen.\n\nSeit der [allgemeinen Verfügbarkeit](https://about.gitlab.com/blog/gitlab-duo-agent-platform-is-generally-available/) bietet GitLab Duo Agent Platform bereits Nutzungs-Governance und Transparenz. Mit GitLab 18.11 kommen Verbrauchssteuerung für [GitLab Credits](https://about.gitlab.com/blog/introducing-gitlab-credits/) hinzu: Ausgabeobergrenzen und Budgetlimits, die Organisationen noch mehr Kontrolle und Transparenz über den Credit-Verbrauch geben.\n\n\n## GitLab Credits steuern\n\nGitLab 18.11 führt drei Steuerungsebenen für den GitLab-Credits-Verbrauch ein: eine Ausgabenobergrenze auf Abonnementebene, Nutzerlimits auf individueller Ebene sowie Einblick in den Status und die Durchsetzung beider Limits.\n\n\n### Ausgabenobergrenze auf Abonnementebene\n\nBilling Account Manager können ab sofort eine monatliche Höchstgrenze für den Verbrauch von On-Demand GitLab Credits des gesamten Abonnements festlegen.\n\nFunktionsweise:\n\n* **Limit festlegen** im `Customers Portal` unter den GitLab-Credits-Einstellungen des Abonnements.\n* **Ausgaben automatisch begrenzen.** Erreicht der On-Demand-Verbrauch die Obergrenze, wird der DAP-Zugriff für alle Nutzenden des Abonnements pausiert – bis die nächste monatliche Periode beginnt.\n* **Anpassungen jederzeit möglich.** Das Limit lässt sich innerhalb des Monats anheben oder deaktivieren, um den Zugriff wiederherzustellen.\n\nDas Limit wird monatlich zurückgesetzt; die konfigurierte Grenze gilt so lange, bis sie geändert wird. Da Nutzungsdaten in Intervallen synchronisiert werden – nicht in Echtzeit –, kann nach Erreichen der Obergrenze eine geringe Mehrmenge anfallen, bevor die Durchsetzung greift. Details dazu finden sich in der [GitLab-Credits-Dokumentation](https://docs.gitlab.com/subscriptions/gitlab_credits/).\n\n\n### Nutzerlimits auf individueller Ebene\n\nNicht alle Nutzenden verbrauchen Credits im gleichen Tempo – das ist erwartbar. Problematisch wird es, wenn ein oder zwei Intensivnutzende einen unverhältnismäßig großen Anteil des Kontingents beanspruchen und der Rest des Teams vor Monatsende keinen Zugriff mehr hat.\n\nIndividuelle Nutzerlimits verhindern, dass einzelne Nutzende mehr als ihren fairen Anteil verbrauchen:\n\n* **Einheitliches Nutzerlimit.** Ein gleiches Credit-Limit für alle Nutzenden des Abonnements lässt sich über die GitLab GraphQL API setzen. Anders als die Abonnementobergrenze gilt dieses Limit für den Gesamtverbrauch einer Person über alle Credit-Quellen hinweg.\n* **Individuelle Ausnahmen.** Für differenzierte Limits können über die GraphQL API individuelle Credit-Obergrenzen für bestimmte Nutzende gesetzt werden. So lässt sich beispielsweise Staff Engineers ein höheres Kontingent einräumen, während für das breitere Team ein Standardlimit gilt.\n* **Individuelle Durchsetzung.** Erreicht eine Person ihr Limit, behält sie vollen Zugriff auf GitLab. Lediglich die Duo-Agent-Platform-Nutzung via Credits wird bis zum nächsten Abrechnungszeitraum pausiert. Alle anderen arbeiten unterbrechungsfrei weiter – bis sie ihr eigenes Limit oder die Abonnementobergrenze erreichen, je nachdem, was zuerst eintritt.\n\n\n### Sichtbarkeit und Benachrichtigungen\n\nWird die Abonnementobergrenze erreicht, sendet GitLab eine E-Mail-Benachrichtigung an Billing Account Manager, damit diese reagieren können: das Limit anheben, die nächste Periode abwarten oder Credits umverteilen.\n\nInnerhalb von GitLab können Group Owner (GitLab.com) und Instanz-Administratoren (Self-Managed) einsehen, welche Nutzenden aufgrund ihres individuellen Limits gesperrt wurden, und den Zugriff durch Anpassung der Grenze über die GraphQL API wiederherstellen.\n\n\n## Warum Budgetlimits die KI-Skalierung ermöglichen\n\nKlare Steuerungsmechanismen sind entscheidend, wenn Organisationen ihre KI-Nutzung ausweiten. Drei Gründe:\n\n\n### Planbare KI-Budgets\n\nVerbrauchssteuerung für GitLab Duo Agent Platform macht KI-Ausgaben zu einer planbaren, begrenzten Budgetposition auf Basis von On-Demand GitLab Credits. Das erleichtert sowohl die Budgetfreigabe durch Finance als auch die Planung der quartalsweisen Ausgaben.\n\n\n### Governance und interne Kostenverrechnung\n\nGroße Organisationen müssen KI-Ausgaben häufig internen Budgets, Kostenstellen oder Abteilungsrichtlinien zuordnen. Individuelle Nutzerlimits geben Platform-Teams einen unkomplizierten Mechanismus, Credits fair zuzuweisen und den Verbrauch auf Personenebene nachzuverfolgen. Die API-Konfiguration macht dies auch im Enterprise-Maßstab handhabbar. In Kombination mit den personenbezogenen Verbrauchsdaten aus dem GitLab-Credits-Dashboard lassen sich Verbrauchsmuster nachverfolgen – als Grundlage für interne Kostenverrechnungs- oder Budgetzuweisungsprozesse.\n\n\n### Sicherheit beim Skalieren\n\nViele Kunden starten GitLab Duo Agent Platform zunächst mit einer kleinen Pilotgruppe. Verbrauchssteuerung beseitigt die Risiken, die mit einer Ausweitung auf die gesamte Organisation verbunden sind. Duo Agent Platform lässt sich auf Hunderte oder Tausende von Entwicklungsteams ausrollen – mit der Gewissheit, dass eine harte Ausgabenobergrenze das Budget schützt. Wächst die Nutzung schneller als erwartet, greift das Limit – nicht eine unerwartete Rechnung.\n\n\n## Sitzplatzbasiert vs. verbrauchsbasiert\n\nViele KI-Coding-Tools setzen auf ein sitzplatzbasiertes Preismodell. Eine feste Anzahl von Lizenzen wird zu einem einheitlichen Preis pro Nutzenden erworben. Einfach, aber unflexibel: Der Preis ist derselbe, unabhängig davon, ob jemand das Tool zehnmal täglich nutzt oder gar nicht. Wenn Anbieter zudem Premium-Modelle und verbrauchsabhängige Zusatzkosten auf die Lizenzgebühr aufschlagen, erodiert die Kostentransparenz, die das Lizenzmodell ursprünglich versprochen hat.\n\nGitLab verfolgt einen anderen Ansatz: verbrauchsbasierte Abrechnung mit harten Limits und einem zentralen Governance-Dashboard. Das verbindet die Flexibilität, nur für tatsächliche Nutzung zu zahlen, mit der Budgetplanbarkeit durchgesetzter Ausgabengrenzen.\n\n\n## Anwendungsbeispiele\n\n\n**Beispiel 1: Mittelgroßes SaaS-Unternehmen mit 200 Entwicklungspersonen.** Die Organisation setzt eine Abonnementobergrenze in Höhe des erwarteten On-Demand-Verbrauchs. Die VP of Engineering kann Finance gegenüber zuverlässig zusichern, dass die Duo-Agent-Platform-Ausgaben den genehmigten Betrag nicht überschreiten werden – auch während des Onboardings neuer Teams. Nähert sich die Grenze in der Monatsmitte, erhält der Billing Account Manager eine Benachrichtigung und kann entscheiden: Limit anheben oder die nächste Periode abwarten.\n\n**Beispiel 2: Globales Finanzdienstleistungsunternehmen mit 2.000 Entwicklungspersonen.** Das Unternehmen setzt individuelle Nutzerlimits, um einen fairen Zugang sicherzustellen. Staff Engineers, die an komplexen Refactoring-Projekten arbeiten, erhalten über die API ein höheres individuelles Kontingent; die meisten Entwicklungsteams erhalten ein Standard-Pauschalimit. Einzelne Nutzende können das Gesamtkontingent nicht erschöpfen. Das Platform-Team nutzt die personenbezogenen Verbrauchsdaten im GitLab-Credits-Dashboard für die Nachverfolgung von Verbrauchsmustern und die quartalsweise Budgetplanung.\n\n\n## Erste Schritte\n\nVerbrauchssteuerung ist für GitLab.com- und Self-Managed-Kunden ab GitLab 18.11 verfügbar. Die Konfiguration erfolgt je nach Geltungsbereich und Rolle an unterschiedlichen Stellen.\n\n**Abonnementobergrenze**\n\nBilling Account Manager setzen die Abonnementobergrenze im Customers Portal:\n\n1. Im `Customers Portal` anmelden.\n2. Auf der Abonnementkarte zu den **GitLab Credits**-Einstellungen navigieren.\n3. Die monatliche On-Demand-Credits-Obergrenze aktivieren und den gewünschten Wert eingeben.\n\n**Einheitliches Nutzerlimit**\n\nDas einheitliche Nutzerlimit wird über die GitLab GraphQL API durch Namespace Owner (GitLab.com) oder Instanz-Administratoren (Self-Managed) gesetzt. Details zu verfügbaren Konfigurationsoberflächen finden sich in der [GitLab-Credits-Dokumentation](https://docs.gitlab.com/subscriptions/gitlab_credits/).\n\n**Individuelle Ausnahmen**\n\nFür differenzierte Limits können Namespace Owner (GitLab.com) und Instanz-Administratoren (Self-Managed) individuelle Obergrenzen programmatisch setzen – geeignet für Automatisierungs- und Infrastructure-as-Code-Workflows.\n\n**Verbrauch und Status überwachen**\n\n* **Customers Portal:** Detaillierter Verbrauch und Limitstatus einsehbar.\n* **GitLab.com:** Group Owner können gesperrte Nutzende unter **Einstellungen > GitLab Credits** einsehen.\n* **Self-Managed:** Instanz-Administratoren können Limitstatus und gesperrte Nutzende unter **Admin > GitLab Credits** einsehen.\n\n\n## GitLab Duo Agent Platform – bereit für die Skalierung\n\nVerbrauchssteuerung ist ab sofort in GitLab 18.11 verfügbar. Ausgabelimits setzen, Duo Agent Platform auf weitere Teams ausrollen – und die KI-Ausgaben dabei vollständig im Griff behalten.\n\n> [Mehr über GitLab Credits und Verbrauchssteuerung erfahren](https://docs.gitlab.com/subscriptions/gitlab_credits/).\n",[9,683,684],"AI/ML","news",{"featured":31,"template":13,"slug":686},"gitlab-18-11-budget-guardrails-for-gitlab-credits",{"content":688,"config":696},{"title":689,"description":690,"authors":691,"heroImage":679,"date":680,"body":693,"category":9,"tags":694},"GitLab 18.11: KI-Agenten CI Expert und Data Analyst schließen Entwicklungslücken","Mit GitLab 18.11 stehen zwei neue Agenten bereit – CI Expert für automatisiertes Pipeline-Setup und Data Analyst für direkte SDLC-Datenabfragen.",[692],"Corinne Dent","KI generiert Code schneller, als die Systeme drum herum mithalten können. Mehr Code bedeutet mehr Merge Requests in der Warteschlange, mehr Pipelines, die konfiguriert werden müssen, mehr Fragen zur Delivery, für die niemand Zeit hat – und die meisten Tools, auf die Teams sich stützen, wurden nicht für dieses Tempo entwickelt.\n\nIn GitLab 18.11 adressieren zwei neue Foundational Agents der Duo Agent Platform konkrete Lücken im Entwicklungszyklus, die KI bislang weitgehend unberührt gelassen hat:\n\n* **CI Expert Agent (jetzt in Beta)** schließt die Lücke zwischen dem Schreiben von Code und einer laufenden Pipeline\n* **Data Analyst Agent (jetzt allgemein verfügbar)** schließt die Lücke zwischen dem Ausliefern von Code und der Fähigkeit, grundlegende Fragen zur tatsächlichen Delivery zu beantworten\n\nDiese Problembereiche lassen sich nicht mit einem allgemeinen Assistenten lösen. Ein Tool außerhalb von GitLab kann eine YAML-Datei generieren oder eine Frage beantworten – es hat jedoch keine Kenntnis davon, wie Pipelines historisch performt haben, wo Fehler gehäuft auftreten oder wie die tatsächlichen MR-Durchlaufzeiten aussehen. Dieser Kontext liegt in GitLab. Diese Agenten auch.\n\n\n## Schnelles CI-Setup mit CI Expert Agent\n\nKI beschleunigt das Schreiben von Code erheblich. Den Code in eine laufende Pipeline zu bringen ist etwas, das die meisten Teams Tage oder Wochen später erledigen – wenn überhaupt. Das Blank-Page-Problem liegt nicht mehr im Editor. Es liegt jetzt in der `.gitlab-ci.yml`.\n\nEntwicklungsteams, die CI noch nie konfiguriert haben, wissen nicht, wie Language Detection in YAML aussieht, welche Test-Befehle verwendet werden sollten oder wie das Ergebnis vor dem Push validiert wird. Teams kopieren entweder eine Konfiguration aus einem früheren Projekt, die möglicherweise nicht passt, fügen Beispiele aus der Dokumentation zusammen oder warten auf die eine Person, die es schon einmal gemacht hat. Ist diese Person nicht verfügbar, wird CI zu etwas, das man \"später erledigt\". Aus \"später\" wird \"nie\".\n\nWenn CI dauerhaft ausbleibt, zeigen sich die Folgen im gesamten Entwicklungsprozess: Änderungen werden ohne automatisierte Absicherung ausgeliefert, Regressionen tauchen in der Produktion statt in der Pipeline auf, und Arbeit häuft sich in größeren, riskanteren Batches an. Teams gewöhnen sich mit der Zeit daran, ohne strukturierte Rückkopplung zu arbeiten – auf undokumentiertes Erfahrungswissen angewiesen statt auf einen reproduzierbaren Feedback-Mechanismus, der in jeden Commit integriert ist.\n\nCI Expert Agent, jetzt in Beta verfügbar, beseitigt diese Hürde systematisch. Der Agent analysiert das Repository, erkennt Sprache und Framework und schlägt eine funktionsfähige Build- und Test-Pipeline vor, die auf dem tatsächlichen Repository-Inhalt basiert – mit einer Erklärung jeder Entscheidung in verständlicher Sprache. Das Ziel: eine laufende Pipeline, ohne YAML manuell schreiben zu müssen.\n\nFunktionsumfang von CI Expert Agent:\n\n* Repository-bewusste Pipeline-Generierung erkennt Sprache, Framework und Test-Setup\n* Generiert valide, ausführbare Build- und Test-Konfigurationen\n* Geführter Erstkonfigurations-Ablauf mit verständlicher Erklärung jedes Schritts im Agentic Chat\n* Native GitLab-CI-Semantik ohne Konfigurations-Übersetzung\n\nDa der Agent innerhalb von GitLab läuft und das tatsächliche Pipeline-Verhalten über Zeit beobachtet, kann jede Verbesserung auf der Arbeitsweise der Teams aufbauen – nicht nur auf statischen Beispielen.\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1183458036?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"CI/CD Expert Agent\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n\u003Cbr>\u003C/br>\n\nCI Expert Agent ist verfügbar auf GitLab.com, Self-Managed und Dedicated in den Editionen Free, Premium und Ultimate – mit aktivierter Duo Agent Platform.\n\n\n## SDLC-Daten in natürlicher Sprache abfragen mit Data Analyst Agent\n\nKI hat das Tempo der Code-Auslieferung erhöht. Grundlegende Fragen dazu, wie diese Arbeit verläuft, sind dadurch nicht einfacher zu beantworten – im Gegenteil.\n\nWie lange liegen MRs im Review? Welche Pipelines bremsen Teams aus? Werden Deployment-Ziele tatsächlich erreicht? Diese Fragen ließen sich früher mit einem Blick auf ein Dashboard beantworten. Mit mehr Code, mehr Teams und mehr Komplexität sind die Daten zwar vorhanden – sie liegen in GitLab – der Zugriff erfordert jedoch nach wie vor das Warten auf ein Analytics-Team, eine Dashboard-Anfrage oder die Einarbeitung in GLQL.\n\nData Analyst Agent schließt diese Lücke. Eine Frage in natürlicher Sprache stellen – und eine sofortige Visualisierung im Agentic Chat erhalten. Keine Abfragesprache, keine Dashboard-Anfrage, kein Warten.\n\nDer Agent beantwortet beispielsweise folgende Fragen – je nach Rolle:\n\n* **Engineering Manager:** MR-Durchlaufzeiten, Durchsatz nach Projekt, wo Reviews stocken\n* **Entwicklungsteams:** Beitragsmuster, instabile Tests, die MRs blockieren, Pipeline-Geschwindigkeit\n* **DevOps- und Plattform-Teams:** Pipeline-Erfolgs- und Fehlerquoten, Runner-Auslastung, Deployment-Frequenz\n* **Engineering Leadership:** Deployment-Frequenz über Portfolios hinweg, Projektgesundheitsmetriken, Lead-Time-Vergleiche\n\nMit der allgemeinen Verfügbarkeit in GitLab 18.11 deckt der Agent MRs, Issues, Projekte, Pipelines und Jobs ab – vollständige SDLC-Abdeckung, erweitert gegenüber dem Beta-Umfang. Da Data Analyst Agent direkt auf vorhandene GitLab-Daten zugreift, ist der Kontext stets aktuell – ohne eine separate Datenpipeline pflegen oder ein Drittanbieter-Tool synchron halten zu müssen. Generierte GitLab Query Language-Abfragen lassen sich überall dort kopieren und verwenden, wo GitLab Flavored Markdown unterstützt wird; ein direkter Export zu Work Items und Dashboards ist in Planung.\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1183094817?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"Data Analyst agent demo\">\u003C/iframe>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n\u003Cbr>\u003C/br>\n\nData Analyst Agent ist verfügbar auf GitLab.com, Self-Managed und Dedicated in den Editionen Free, Premium und Ultimate – mit aktivierter Duo Agent Platform.\n\n\n## Eine Plattform, verbundener Kontext\n\nBeide Agenten laufen innerhalb von GitLab und haben Zugriff auf den Code, die Pipelines, Issues und Merge Requests, die dort bereits vorhanden sind. Das unterscheidet plattformnative KI von einem externen Assistenten: Der Kontext ist stets aktuell und wächst mit der Nutzung. CI Expert Agent und Data Analyst Agent sind zwei konkrete Erweiterungen einer Plattform, auf der KI den gesamten Entwicklungszyklus unterstützt – von der Pipeline-Konfiguration über die Auslieferung bis zur Nachverfolgung.\n\n> [GitLab Duo Agent Platform kostenlos testen](https://about.gitlab.com/gitlab-duo/) und diese KI-Agenten direkt im Entwicklungs-Workflow einsetzen.\n",[683,695,9],"features",{"featured":12,"template":13,"slug":697},"ci-expert-and-data-analyst-ai-agents-target-development-gaps",{"content":699,"config":707},{"title":700,"description":701,"authors":702,"heroImage":679,"date":680,"body":704,"category":9,"tags":705},"GitLab 18.11: KI behebt SAST-Schwachstellen – automatisch und 'ready-to-merge'","GitLab 18.11 macht Agentic SAST Vulnerability Resolution allgemein verfügbar und behebt SAST-Schwachstellen per KI-Code-Fix automatisch.",[703],"Alisa Ho","KI generiert Code schneller, als Security-Teams ihn prüfen können. Was früher ein überschaubarer Rückstand an SAST-Befunden (Static Application Security Testing) war, wächst heute mit jedem KI-assistierten Commit weiter an. Laut [GitLab DevSecOps Report 2025](https://about.gitlab.com/resources/developer-survey/) verbringen Entwicklungsteams bereits 11 Stunden pro Monat damit, Schwachstellen nach dem Release zu beheben – also Probleme zu korrigieren, die bereits in der Produktion ausnutzbar sind, statt neue Funktionen zu liefern. Mehr manuelle Remediierung löst dieses Problem grundsätzlich nicht. [Agentic SAST Vulnerability Resolution](https://docs.gitlab.com/user/application_security/vulnerabilities/agentic_vulnerability_resolution/) innerhalb der GitLab Duo Agent Platform ist für genau dieses Problem entwickelt worden.\n\nMit der allgemeinen Verfügbarkeit in GitLab 18.11 generiert Agentic SAST Vulnerability Resolution automatisch zusammenführungsbereite Code-Fixes zur Behebung von SAST-Schwachstellen:\n\n* Entwicklungsteams bleiben im Arbeitsfluss\n* Schwachstellen werden behoben, bevor sie die Produktion erreichen\n* AppSec-Teams verbringen weniger Zeit mit Triage und der Nachverfolgung offener Findings\n\nGitLab 18.11 liefert darüber hinaus schnelleres SAST-Scanning, evidenzbasierte Priorisierung und klar abgegrenzte Governance-Kontrollen.\n\n\n## Auto-Remediierung ohne Unterbrechung des Arbeitsflusses\n\nWenn KI Code in großem Umfang generiert, verändert sich die Ausgangslage grundlegend. Ein Security-Rückstand, der früher linear wuchs, nimmt heute mit jedem modellgestützten Commit weiter zu. Mehr manuelle Kontextwechsel von Entwicklungsteams zu fordern löst dieses Problem nicht – die Mengen sind schlicht zu groß.\n\nAgentic SAST Vulnerability Resolution verändert die Dynamik dieses Zyklus. Sobald ein SAST-Scan abgeschlossen ist, starten die Findings automatisch den [Erkennungsfluss für Fehlalarme (SAST False Positive Detection)](https://docs.gitlab.com/user/application_security/vulnerabilities/false_positive_detection/). Bestätigte True Positives werden direkt in den Agentic SAST Vulnerability Resolution Flow übergeben, wo GitLab Duo Agent Platform:\n\n* die Schwachstelle im Kontext analysiert\n* einen Fix erstellt, der die Grundursache behebt\n* den Fix durch automatisierte Tests validiert\n\nEntwicklungsteams erhalten einen zusammenführungsbereiten MR mit einem Confidence-Score, auf dessen Basis eine fundierte Entscheidung zur Behebung getroffen werden kann. Der Sprint bleibt auf Kurs, Schwachstellen werden behoben, bevor sie die Produktion erreichen.\n\nZum Thema Scan-Geschwindigkeit: GitLab 18.11 führt [inkrementelles Scanning für Advanced SAST](https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#incremental-scanning) ein. Entwicklungsteams erhalten Schwachstellenergebnisse, ohne auf den Abschluss eines vollständigen Scans warten zu müssen – Pipelines bleiben durchgehend in Bewegung.\n\n\u003Ciframe src=\"https://player.vimeo.com/video/1183195999?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479%2Fembed\" allow=\"autoplay; fullscreen; picture-in-picture\" allowfullscreen=\"\" frameborder=\"0\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\">\u003C/iframe>\n\n\n## Remediierung nach Geschäftsrisiko – nicht nach Score\n\nEine automatisierte Remediierungspipeline funktioniert nur so gut wie das Signal, das sie antreibt. Wenn Schwachstellenscores die tatsächliche Ausnutzbarkeit nicht widerspiegeln, verlieren Entwicklungsteams das Vertrauen in das Signal – und beginnen, es zu ignorieren.\n\nGitLab 18.11 adressiert dieses Problem auf vier Ebenen. Erstens sind [Schwachstellenscores](https://docs.gitlab.com/user/application_security/vulnerabilities/severities/#critical-severity) jetzt im Common Vulnerability Scoring System (CVSS) 4.0 verankert – dem aktuellen Industriestandard mit differenzierteren Metriken zur Erfassung realer Ausnutzbarkeit. Der Score, den Entwicklungsteams in GitLab sehen, entspricht damit dem Stand der Technik für die Bewertung realer Risiken.\n\nDarüber hinaus können AppSec-Teams [richtlinienbasierte Regeln](https://docs.gitlab.com/user/application_security/policies/vulnerability_management_policy/#severity-override-policies) definieren, die Schwachstellenscores automatisch anpassen – basierend auf Signalen wie Common Vulnerabilities and Exposures (CVE), Common Weakness Enumeration (CWE) sowie Dateipfad oder Verzeichnis. Einmal konfiguriert, greifen die Schweregrad-Anpassungen sofort, sodass Entwicklungsteams an einem Rückstand arbeiten, der das tatsächliche Geschäftsrisiko widerspiegelt und nicht den unbereinigten Scanner-Output.\n\nDie risikobasierte Steuerung endet nicht beim Rückstand. AppSec-Teams können jetzt [Freigaberichtlinien konfigurieren](https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#vulnerability_attributes-object), die Merges blockieren oder warnen – basierend auf dem Known Exploited Vulnerabilities (KEV)-Status oder dem Exploit Prediction Scoring System (EPSS)-Score. Wird ein Merge blockiert, wissen Entwicklungsteams, dass dies auf realen Ausnutzbarkeitsdaten beruht.\n\nDas [neue Top-CWEs-Diagramm im Security-Dashboard](https://docs.gitlab.com/user/application_security/security_dashboard/#top-10-cwes) gibt Teams abschließend Einblick, welche Schwachstellenklassen in ihren Projekten am häufigsten auftreten. Statt einzelnen Findings nachzujagen, lassen sich Muster erkennen, Grundursachen priorisieren und systemische Risiken adressieren, bevor sie sich auswachsen.\n\n\n## Stärkere Security-Kontrollen bei geringerem operativem Aufwand\n\nEine automatisierte Remediierungspipeline ist nur so gut wie die darunterliegende Scanner-Abdeckung. Inkonsistente Scanner-Konfigurationen führen zu unvollständigen Findings – und damit zu unvollständigen Fixes.\n\nGitLab 18.11 führt den [Security Manager](https://docs.gitlab.com/user/permissions/#default-roles) ein – eine neue Standardrolle, die speziell für Security-Professionals entwickelt wurde. Mit dieser Rolle lassen sich Security-Scanner durchsetzen, Security-Richtlinien definieren und konfigurieren, Triage- und Remediierungs-Workflows für Schwachstellen verwalten sowie Compliance-Frameworks und Audit-Streams pflegen – ohne Code-Änderungs- oder Deployment-Berechtigungen zu benötigen. Security-Teams erhalten genau die Zugriffsrechte, die ihre Aufgaben erfordern, und keine weiteren.\n\nFür AppSec-Teams vereinfachen [SAST-Konfigurationsprofile](https://docs.gitlab.com/user/application_security/configuration/security_configuration_profiles/) die konsistente Scanner-Abdeckung über mehrere Projekte und Gruppen hinweg erheblich. Das Scanning wird einmalig definiert und mit einer Aktion auf alle Projekte einer Gruppe angewendet. Das manuelle Pflegen von YAML-Policy-Dateien, die Abhängigkeit von Entwicklungsteams bei der Scanner-Konfiguration und das Prüfen einzelner Projekte auf Abdeckungslücken entfällt damit.\n\n\n## Automatisierte Vulnerability-Remediierung – jetzt starten\n\nGitLab 18.11 liefert den vollständigen Vulnerability-Workflow auf einer Plattform: KI, die Schwachstellen automatisch behebt, CVSS-4.0-basierte Priorisierung, die Vulnerability-Rauschen reduziert, und Governance-Kontrollen, die Security-Teams den erforderlichen Zugriff und vollständige Abdeckung ermöglichen.\n\n> [GitLab Ultimate kostenlos testen](https://about.gitlab.com/free-trial/?utm_medium=blog&utm_source=blog&utm_campaign=eg_global_x_inbound-request_security_en_) und erleben, wie GitLab Duo Agent Platform die automatisierte Remediierung direkt in den Entwicklungs-Workflow integriert.\n\n\nFür konkrete Compliance-Anforderungen empfiehlt sich die Rücksprache mit entsprechender Fachberatung.\n",[706,683,9,695],"security",{"featured":31,"template":13,"slug":708},"automate-remediation-with-ready-to-merge-ai-code-fixes",{"promotions":710},[711,725,736,747],{"id":712,"categories":713,"header":715,"text":716,"button":717,"image":722},"ai-modernization",[714],"ai-ml","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":718,"config":719},"Get your AI maturity score",{"href":720,"dataGaName":721,"dataGaLocation":245},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":723},{"src":724},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":726,"categories":727,"header":728,"text":716,"button":729,"image":733},"devops-modernization",[9,37],"Are you just managing tools or shipping innovation?",{"text":730,"config":731},"Get your DevOps maturity score",{"href":732,"dataGaName":721,"dataGaLocation":245},"/assessments/devops-modernization-assessment/",{"config":734},{"src":735},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":737,"categories":738,"header":739,"text":716,"button":740,"image":744},"security-modernization",[706],"Are you trading speed for security?",{"text":741,"config":742},"Get your security maturity score",{"href":743,"dataGaName":721,"dataGaLocation":245},"/assessments/security-modernization-assessment/",{"config":745},{"src":746},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":748,"paths":749,"header":752,"text":753,"button":754,"image":759},"github-azure-migration",[750,751],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Is your team ready for GitHub's Azure move?","GitHub is already rebuilding around Azure. Find out what it means for you.",{"text":755,"config":756},"See how GitLab compares to GitHub",{"href":757,"dataGaName":758,"dataGaLocation":245},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":760},{"src":735},{"header":762,"blurb":763,"button":764,"secondaryButton":769},"Beginne noch heute, schneller zu entwickeln","Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.\n",{"text":765,"config":766},"Kostenlosen Test starten",{"href":767,"dataGaName":51,"dataGaLocation":768},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/de-de/","feature",{"text":53,"config":770},{"href":55,"dataGaName":56,"dataGaLocation":768},1776878804181]