[{"data":1,"prerenderedAt":829},["ShallowReactive",2],{"/topics/devops/what-is-ai-pair-programming":3,"navigation-en-us":146,"banner-en-us":569,"footer-en-us":577,"next-steps-en-us":819},{"id":4,"title":5,"body":6,"category":6,"config":6,"content":7,"description":6,"extension":135,"meta":136,"navigation":137,"path":138,"seo":139,"slug":6,"stem":144,"testContent":6,"type":6,"__hash__":145},"pages/en-us/topics/devops/what-is-ai-pair-programming/index.yml","",null,[8,22,28,117,119],{"type":9,"componentName":9,"componentContent":10},"CommonBreadcrumbs",{"crumbs":11},[12,16,20],{"title":13,"config":14},"Topics",{"href":15},"/topics/",{"title":17,"config":18},"DevOps",{"href":19},"/topics/devops/",{"title":21},"What is AI pair programming?",{"type":23,"componentName":23,"componentContent":24},"CommonArticleHero",{"title":21,"text":25,"config":26},"AI pair programming is the practice of working with an AI assistant as a real-time collaborator while you write, review, and refine code. Instead of only autocompleting syntax, an AI pair programmer helps with implementation logic, repetitive tasks, explanations, and next-step suggestions while the developer stays in control of decisions and architecture.",{"id":27},"what-is-ai-pair-programming",{"type":29,"componentName":29,"componentContent":30},"CommonSideNavigationWithTree",{"anchors":31,"components":70},{"text":32,"data":33},"On this page",[34,38,42,46,50,54,58,62,66],{"text":35,"config":36},"How is AI pair programming different from traditional pair programming?",{"href":37},"#ai-pair-programming-vs-traditional",{"config":39,"text":41},{"href":40},"#how-does-ai-pair-programming-work","How does AI pair programming work?",{"text":43,"config":44},"Key capabilities of AI pair programming",{"href":45},"#key-capabilities-of AI-pair-programming",{"config":47,"text":49},{"href":48},"#why-teams-use-ai-pair-programming","Why teams use AI pair programming",{"config":51,"text":53},{"href":52},"#what-can-an-ai-pair-programmer-help-with","What can an AI pair programmer help with?",{"config":55,"text":57},{"href":56},"#benefits-of-ai-pair-programming","What are the benefits of AI pair programming?",{"config":59,"text":61},{"href":60},"#risks-and-limitations","What are the risks and limitations?",{"config":63,"text":65},{"href":64},"#how-should-teams-adopt-ai-pair-programming","How should teams adopt AI pair programming?",{"config":67,"text":69},{"href":68},"#conclusion","Conclusion",[71,77,82,87,92,97,102,107,112],{"type":72,"componentName":72,"componentContent":73},"TopicsCopy",{"header":35,"text":74,"config":75},"In traditional pair programming, two developers work together: one drives by writing code while the other navigates, reviewing and guiding in real time.\n\nAI pair programming keeps that collaborative model, but swaps the always-present second human with an on-demand AI assistant. That removes much of the friction of human pairing: scheduling conflicts, skill mismatches, mentoring bottlenecks, and the overhead of coordinating live sessions across distributed teams.\n\nFor software teams, it’s a practical way to speed up delivery, reduce context switching, and keep developers in flow without replacing human judgment.\n\nTo see how AI coding support fits into broader engineering workflows, learn more about [AI for Coding](https://about.gitlab.com/topics/devops/ai-for-coding/).\n\nHuman pairing still has the edge for deep collaboration, teaching, and problem framing. At GitLab, pair programming is described as especially useful for onboarding, mentoring, and working through difficult problems together.",{"id":76},"ai-pair-programming-vs-traditional",{"type":72,"componentName":72,"componentContent":78},{"header":41,"text":79,"config":80},"AI pair programming tools sit inside the developer's environment, so help appears while you code rather than after. AI can generate code from natural language comments, complete blocks of code, suggest function logic, generate tests, and help developers extend unfamiliar codebases without leaving the IDE.\n\nGitLab’s implementation, [Code Suggestions](https://about.gitlab.com/solutions/code-suggestions/), helps developers stay in flow by predictively completing code blocks, defining function logic, generating tests, and proposing common code patterns, all in the same environment where they already work.",{"id":81},"how-does-ai-pair-programming-work",{"type":72,"componentName":72,"componentContent":83},{"header":43,"text":84,"config":85},"AI pair programming combines several capabilities that work together inside your existing development workflow. Instead of a single “auto-complete” feature, modern tools layer suggestions, explanations, and multi-file assistance so developers stay in control while moving faster.\n\n### Inline code completion in your IDE\nThe most visible capability is inline completion: as you type, an AI assistant predicts the next line or block of code directly in your editor. It can fill in common patterns, boilerplate, and function bodies so you spend less time on repetitive scaffolding. For developers, this feels like a second pair of hands that keeps momentum going while you focus on intent and structure rather than syntax.\n\n### Contextual chat for explanations and edits\nAI pair programming also adds conversational help on top of your code. You can ask questions about a file, a selected snippet, or an error message, and get explanations or suggested edits without leaving the IDE. This is especially useful for understanding unfamiliar code, exploring new APIs, or learning a language or framework faster while staying inside your normal tools.\n\n### Multi-step and multi-file assistance\nBeyond one-line completions, some AI pair programming experiences can propose larger edits across multiple files. For example, you might describe a goal—such as adding a new endpoint or updating a pattern—and have the assistant outline the changes, draft code, and suggest tests. Developers still review and refine the result, but the AI can handle much of the mechanical work involved in applying a change consistently.\n\n### Codebase-aware suggestions\nThe most effective AI pair programming tools don’t just generate generic snippets; they adapt to your project. By taking your existing code, patterns, and structure into account, the assistant can suggest implementations that fit your conventions and reuse existing functions where appropriate. That makes suggestions more trustworthy and reduces the cleanup work required to make generated code production-ready.",{"id":86},"key-capabilities-of-ai-pair-programming",{"type":72,"componentName":72,"componentContent":88},{"header":49,"text":89,"config":90},"Teams adopt AI pair programming to move faster without pushing all routine support work onto senior engineers. The biggest advantages are:\n\n- Less time spent on repetitive coding tasks and boilerplate  \n- Faster feedback while coding instead of waiting for later review cycles  \n- Easier onboarding and in-context learning for junior developers  \n- More consistent support for distributed teams that cannot always pair live\n\nIt’s also why AI pair programming fits naturally into modern [DevOps](https://about.gitlab.com/topics/devops/) environments, where teams need to ship quickly without sacrificing quality.",{"id":91},"why-teams-use-ai-pair-programming",{"type":72,"componentName":72,"componentContent":93},{"header":53,"text":94,"config":95},"AI pair programming is most useful when developers need momentum, guidance, or fast iteration inside everyday workflows. Common use cases:\n\n- Drafting functions or classes from natural-language prompts  \n- Filling in boilerplate, tests, and common implementation patterns  \n- Catching likely issues earlier and suggesting refactors or cleaner patterns  \n- Explaining unfamiliar code, APIs, or libraries in context  \n- Helping developers work across multiple languages and codebases\n\nIn GitLab, AI-assisted coding is also part of a broader workflow. GitLab Duo includes AI-assisted capabilities beyond code generation, supporting more of the software development lifecycle from planning and coding to testing, security, and delivery.",{"id":96},"what-can-an-ai-pair-programmer-help-with",{"type":72,"componentName":72,"componentContent":98},{"header":57,"text":99,"config":100},"The real value of AI pair programming comes from shifting developer effort toward problem-solving and away from low-value repetition.\n\n### Faster development\n\nAI assistance can shorten the time required for coding fundamental functions, generating common patterns, and understanding unfamiliar sections of code.\n\n### Better learning and onboarding\n\nAI pair programmers can explain code context, demonstrate practices on the fly, and help less experienced developers contribute earlier.\n\n### Improved developer experience\n\nDevelopers spend less time bouncing between documentation, examples, and trial-and-error workflows. GitLab specifically frames this as reducing context switching and helping developers stay in flow.\n\n### More scalable collaboration\n\nHuman pair programming is powerful, but it does not scale to every task or every developer. AI assistance offers a persistent layer of support that complements human collaboration rather than replacing it.",{"id":101},"benefits-of-ai-pair-programming",{"type":72,"componentName":72,"componentContent":103},{"header":61,"text":104,"config":105},"AI pair programming still needs guardrails. AI-generated code should be reviewed like any other code contribution, especially when quality, security, compliance, or intellectual property requirements are important.\n\nTeams should pay particular attention to:\n\n- Human review requirements for generated code  \n- Testing, static analysis, and security validation  \n- Data protection and sensitive code handling  \n- Transparency, attribution, and auditability\n\n### Governance and human review\nEffective AI pair programming depends on strong review habits and clear guardrails. AI-generated code should go through the same review, testing, and security checks as any other contribution, and teams should set expectations up front about when it is appropriate to rely on suggestions. \n\nThat often means defining which parts of the codebase are in scope for AI help, what level of test coverage is required before merge, and how reviewers should treat AI-assisted changes in code review.\n\n### Privacy and data handling\nMost AI pair programming tools rely on sending some code and metadata to an AI service so it can generate relevant suggestions. That raises important questions about privacy, intellectual property, and compliance. Teams should understand where inference happens, how long prompts and context are retained, and whether customer or proprietary code is ever used to train underlying models. \n\nA privacy-first approach keeps sensitive code protected, makes data-handling policies transparent, and ensures AI assistance can be adopted without compromising security or regulatory requirements.\n\nGitLab’s public positioning also emphasizes privacy-first AI. GitLab states that private, non-public customer code stored in GitLab is not used as training data for Code Suggestions.",{"id":106},"risks-and-limitations",{"type":72,"componentName":72,"componentContent":108},{"header":65,"text":109,"config":110},"The most effective adoption model is usually gradual. Rather than rolling it out everywhere at once, teams can start with a pilot, measure impact, establish review expectations, and train developers on how to collaborate productively with AI tools.\n\nSuccessful teams treat AI pair programming as an incremental change to how they work, not a single switch to flip. A common pattern is to start with one or two squads, agree on review and testing expectations, and focus on a small set of use cases such as boilerplate, tests, or refactors. \n\nAs developers build confidence, teams can gradually broaden where AI assistance is used and refine their guidelines based on real outcomes.\n\nA practical rollout often includes:\n\n- Selecting a pilot team and clear use cases  \n- Defining review, testing, and governance standards  \n- Training developers on effective prompting and workflow usage  \n- Tracking metrics such as velocity, cycle time, suggestion acceptance, and developer satisfaction\n\nTo understand the impact of AI pair programming, teams often track:\n\n- Changes in lead time and cycle time for common types of changes\n- Suggestion acceptance rates and how often suggestions are edited before merge\n- Developer satisfaction and perceived flow, measured through regular surveys\n- Any changes in defect rates, security findings, or rework related to AI-assisted code",{"id":111},"how-should-teams-adopt-ai-pair-programming",{"type":72,"componentName":72,"componentContent":113},{"header":69,"text":114,"config":115},"AI pair programming turns code assistance into an active, in-flow development experience. Instead of waiting for help, developers can work with AI in real time to generate code, explore implementation options, learn faster, and reduce routine effort. For organizations, that means a practical path to stronger productivity, better developer experience, and more scalable software delivery when paired with the right review, governance, and security controls.",{"id":116},"conclusion",{"type":118,"componentName":118},"CommonNextSteps",{"type":120,"componentName":120,"componentContent":121},"CommonFaq",{"header":122,"groups":123},"Frequently Asked Questions",[124],{"questions":125},[126,129,132],{"question":127,"answer":128},"Is AI pair programming the same as code completion?","No. Traditional code completion usually predicts syntax or the next few tokens, while AI pair programming is broader and more collaborative. It can respond to intent, comment blocks, code structure, and implementation goals in a more contextual way.",{"question":130,"answer":131},"Does AI pair programming replace human pair programming?","No. Human pairing is still valuable for mentoring, design trade-offs, and collaborative problem solving. AI pair programming is best understood as a complementary layer that helps when live human pairing is not practical or necessary for every task.",{"question":133,"answer":134},"What makes AI pair programming useful for enterprises?","For enterprises, the biggest value is scale. AI assistance can help close mentoring gaps, reduce repetitive work, improve coding efficiency, and support broader engineering productivity without requiring a human partner for every session.","yml",{},true,"/en-us/topics/devops/what-is-ai-pair-programming",{"config":140,"title":21,"ogTitle":21,"description":142,"ogDescription":143},{"noIndex":141},false,"Learn how an AI pair programmer helps with repetitive tasks while the developer stays in control of decisions and architecture.","GitLab Topics | What is AI pair programming?","en-us/topics/devops/what-is-ai-pair-programming/index","Fz86K1C_5WcvHc0KXK3Omm_ROHhv0bIcz7-ugjTFTwI",{"logo":147,"freeTrial":152,"sales":157,"login":162,"items":167,"search":489,"minimal":520,"duo":539,"switchNav":548,"pricingDeployment":559},{"config":148},{"href":149,"dataGaName":150,"dataGaLocation":151},"/","gitlab logo","header",{"text":153,"config":154},"Get free trial",{"href":155,"dataGaName":156,"dataGaLocation":151},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":158,"config":159},"Request a demo",{"href":160,"dataGaName":161,"dataGaLocation":151},"/sales/?contact-topic=request-demo","sales",{"text":163,"config":164},"Sign in",{"href":165,"dataGaName":166,"dataGaLocation":151},"https://gitlab.com/users/sign_in/","sign in",[168,197,297,302,411,467],{"text":169,"config":170,"menu":172},"Platform",{"dataNavLevelOne":171},"platform",{"type":173,"columns":174},"cards",[175,181,189],{"title":169,"description":176,"link":177},"The intelligent orchestration platform for DevSecOps",{"text":178,"config":179},"Explore our Platform",{"href":180,"dataGaName":171,"dataGaLocation":151},"/platform/",{"title":182,"description":183,"link":184},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":185,"config":186},"Meet GitLab Duo",{"href":187,"dataGaName":188,"dataGaLocation":151},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":190,"description":191,"link":192},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":193,"config":194},"Learn more",{"href":195,"dataGaName":196,"dataGaLocation":151},"/why-gitlab/","why gitlab",{"text":198,"left":137,"config":199,"menu":201},"Product",{"dataNavLevelOne":200},"solutions",{"type":202,"link":203,"columns":207,"feature":276},"lists",{"text":204,"config":205},"View all Solutions",{"href":206,"dataGaName":200,"dataGaLocation":151},"/solutions/",[208,232,255],{"title":209,"description":210,"link":211,"items":216},"Automation","CI/CD and automation to accelerate deployment",{"config":212},{"icon":213,"href":214,"dataGaName":215,"dataGaLocation":151},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[217,221,224,228],{"text":218,"config":219},"CI/CD",{"href":220,"dataGaLocation":151,"dataGaName":218},"/solutions/continuous-integration/",{"text":182,"config":222},{"href":187,"dataGaLocation":151,"dataGaName":223},"gitlab duo agent platform - product menu",{"text":225,"config":226},"Source Code Management",{"href":227,"dataGaLocation":151,"dataGaName":225},"/solutions/source-code-management/",{"text":229,"config":230},"Automated Software Delivery",{"href":214,"dataGaLocation":151,"dataGaName":231},"Automated software delivery",{"title":233,"description":234,"link":235,"items":240},"Security","Deliver code faster without compromising security",{"config":236},{"href":237,"dataGaName":238,"dataGaLocation":151,"icon":239},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[241,245,250],{"text":242,"config":243},"Application Security Testing",{"href":237,"dataGaName":244,"dataGaLocation":151},"Application security testing",{"text":246,"config":247},"Software Supply Chain Security",{"href":248,"dataGaLocation":151,"dataGaName":249},"/solutions/supply-chain/","Software supply chain security",{"text":251,"config":252},"Software Compliance",{"href":253,"dataGaName":254,"dataGaLocation":151},"/solutions/software-compliance/","software compliance",{"title":256,"link":257,"items":262},"Measurement",{"config":258},{"icon":259,"href":260,"dataGaName":261,"dataGaLocation":151},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[263,267,271],{"text":264,"config":265},"Visibility & Measurement",{"href":260,"dataGaLocation":151,"dataGaName":266},"Visibility and Measurement",{"text":268,"config":269},"Value Stream Management",{"href":270,"dataGaLocation":151,"dataGaName":268},"/solutions/value-stream-management/",{"text":272,"config":273},"Analytics & Insights",{"href":274,"dataGaLocation":151,"dataGaName":275},"/solutions/analytics-and-insights/","Analytics and insights",{"title":277,"type":202,"items":278},"GitLab for",[279,285,291],{"text":280,"config":281},"Enterprise",{"icon":282,"href":283,"dataGaLocation":151,"dataGaName":284},"Building","/enterprise/","enterprise",{"text":286,"config":287},"Small Business",{"icon":288,"href":289,"dataGaLocation":151,"dataGaName":290},"Work","/small-business/","small business",{"text":292,"config":293},"Public Sector",{"icon":294,"href":295,"dataGaLocation":151,"dataGaName":296},"Organization","/solutions/public-sector/","public sector",{"text":298,"config":299},"Pricing",{"href":300,"dataGaName":301,"dataGaLocation":151,"dataNavLevelOne":301},"/pricing/","pricing",{"text":303,"config":304,"menu":306},"Resources",{"dataNavLevelOne":305},"resources",{"type":202,"link":307,"columns":311,"feature":400},{"text":308,"config":309},"View all resources",{"href":310,"dataGaName":305,"dataGaLocation":151},"/resources/",[312,345,367],{"title":313,"items":314},"Getting started",[315,320,325,330,335,340],{"text":316,"config":317},"Install",{"href":318,"dataGaName":319,"dataGaLocation":151},"/install/","install",{"text":321,"config":322},"Quick start guides",{"href":323,"dataGaName":324,"dataGaLocation":151},"/get-started/","quick setup checklists",{"text":326,"config":327},"Learn",{"href":328,"dataGaLocation":151,"dataGaName":329},"https://university.gitlab.com/","learn",{"text":331,"config":332},"Product documentation",{"href":333,"dataGaName":334,"dataGaLocation":151},"https://docs.gitlab.com/","product documentation",{"text":336,"config":337},"Best practice videos",{"href":338,"dataGaName":339,"dataGaLocation":151},"/getting-started-videos/","best practice videos",{"text":341,"config":342},"Integrations",{"href":343,"dataGaName":344,"dataGaLocation":151},"/integrations/","integrations",{"title":346,"items":347},"Discover",[348,353,358,362],{"text":349,"config":350},"Customer success stories",{"href":351,"dataGaName":352,"dataGaLocation":151},"/customers/","customer success stories",{"text":354,"config":355},"Blog",{"href":356,"dataGaName":357,"dataGaLocation":151},"/blog/","blog",{"text":359,"config":360},"The Source",{"href":361,"dataGaName":357,"dataGaLocation":151},"/the-source/",{"text":363,"config":364},"Remote",{"href":365,"dataGaName":366,"dataGaLocation":151},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":368,"items":369},"Connect",[370,375,380,385,390,395],{"text":371,"config":372},"GitLab Services",{"href":373,"dataGaName":374,"dataGaLocation":151},"/services/","services",{"text":376,"config":377},"Contribute",{"href":378,"dataGaName":379,"dataGaLocation":151},"https://contributors.gitlab.com","contribute",{"text":381,"config":382},"Community",{"href":383,"dataGaName":384,"dataGaLocation":151},"/community/","community",{"text":386,"config":387},"Forum",{"href":388,"dataGaName":389,"dataGaLocation":151},"https://forum.gitlab.com/","forum",{"text":391,"config":392},"Events",{"href":393,"dataGaName":394,"dataGaLocation":151},"/events/","events",{"text":396,"config":397},"Partners",{"href":398,"dataGaName":399,"dataGaLocation":151},"/partners/","partners",{"config":401,"title":404,"text":405,"link":406},{"background":402,"textColor":403},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":407,"config":408},"Read the latest",{"href":409,"dataGaName":410,"dataGaLocation":151},"/whats-new/","whats new",{"text":412,"config":413,"menu":415},"Company",{"dataNavLevelOne":414},"company",{"type":202,"columns":416},[417],{"items":418},[419,424,430,432,437,442,447,452,457,462],{"text":420,"config":421},"About",{"href":422,"dataGaName":423,"dataGaLocation":151},"/company/","about",{"text":425,"config":426,"footerGa":429},"Jobs",{"href":427,"dataGaName":428,"dataGaLocation":151},"/jobs/","jobs",{"dataGaName":428},{"text":391,"config":431},{"href":393,"dataGaName":394,"dataGaLocation":151},{"text":433,"config":434},"Leadership",{"href":435,"dataGaName":436,"dataGaLocation":151},"/company/team/e-group/","leadership",{"text":438,"config":439},"Handbook",{"href":440,"dataGaName":441,"dataGaLocation":151},"https://handbook.gitlab.com/","handbook",{"text":443,"config":444},"Investor relations",{"href":445,"dataGaName":446,"dataGaLocation":151},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":448,"config":449},"Trust Center",{"href":450,"dataGaName":451,"dataGaLocation":151},"/security/","trust center",{"text":453,"config":454},"AI Transparency Center",{"href":455,"dataGaName":456,"dataGaLocation":151},"/ai-transparency-center/","ai transparency center",{"text":458,"config":459},"Newsletter",{"href":460,"dataGaName":461,"dataGaLocation":151},"/company/contact/#contact-forms","newsletter",{"text":463,"config":464},"Press",{"href":465,"dataGaName":466,"dataGaLocation":151},"/press/","press",{"text":468,"config":469,"menu":470},"Contact us",{"dataNavLevelOne":414},{"type":202,"columns":471},[472],{"items":473},[474,479,484],{"text":475,"config":476},"Talk to sales",{"href":477,"dataGaName":478,"dataGaLocation":151},"/sales/","talk to sales",{"text":480,"config":481},"Support portal",{"href":482,"dataGaName":483,"dataGaLocation":151},"https://support.gitlab.com/hc/en-us","support portal",{"text":485,"config":486},"Customer portal",{"href":487,"dataGaName":488,"dataGaLocation":151},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":490,"login":491,"suggestions":498},"Close",{"text":492,"link":493},"To search repositories and projects, login to",{"text":494,"config":495},"gitlab.com",{"href":165,"dataGaName":496,"dataGaLocation":497},"search login","search",{"text":499,"default":500},"Suggestions",[501,503,507,509,513,517],{"text":182,"config":502},{"href":187,"dataGaName":182,"dataGaLocation":497},{"text":504,"config":505},"Code Suggestions (AI)",{"href":506,"dataGaName":504,"dataGaLocation":497},"/solutions/code-suggestions/",{"text":218,"config":508},{"href":220,"dataGaName":218,"dataGaLocation":497},{"text":510,"config":511},"GitLab on AWS",{"href":512,"dataGaName":510,"dataGaLocation":497},"/partners/technology-partners/aws/",{"text":514,"config":515},"GitLab on Google Cloud",{"href":516,"dataGaName":514,"dataGaLocation":497},"/partners/technology-partners/google-cloud-platform/",{"text":518,"config":519},"Why GitLab?",{"href":195,"dataGaName":518,"dataGaLocation":497},{"freeTrial":521,"mobileIcon":526,"desktopIcon":531,"secondaryButton":534},{"text":522,"config":523},"Start free trial",{"href":524,"dataGaName":156,"dataGaLocation":525},"https://gitlab.com/-/trials/new/","nav",{"altText":527,"config":528},"Gitlab Icon",{"src":529,"dataGaName":530,"dataGaLocation":525},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":527,"config":532},{"src":533,"dataGaName":530,"dataGaLocation":525},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":535,"config":536},"Get Started",{"href":537,"dataGaName":538,"dataGaLocation":525},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":540,"mobileIcon":544,"desktopIcon":546},{"text":541,"config":542},"Learn more about GitLab Duo",{"href":187,"dataGaName":543,"dataGaLocation":525},"gitlab duo",{"altText":527,"config":545},{"src":529,"dataGaName":530,"dataGaLocation":525},{"altText":527,"config":547},{"src":533,"dataGaName":530,"dataGaLocation":525},{"button":549,"mobileIcon":554,"desktopIcon":556},{"text":550,"config":551},"/switch",{"href":552,"dataGaName":553,"dataGaLocation":525},"#contact","switch",{"altText":527,"config":555},{"src":529,"dataGaName":530,"dataGaLocation":525},{"altText":527,"config":557},{"src":558,"dataGaName":530,"dataGaLocation":525},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":560,"mobileIcon":565,"desktopIcon":567},{"text":561,"config":562},"Back to pricing",{"href":300,"dataGaName":563,"dataGaLocation":525,"icon":564},"back to pricing","GoBack",{"altText":527,"config":566},{"src":529,"dataGaName":530,"dataGaLocation":525},{"altText":527,"config":568},{"src":533,"dataGaName":530,"dataGaLocation":525},{"title":570,"button":571,"config":575},"GitLab Orbit is here: The context layer for AI agents.",{"text":193,"config":572},{"href":573,"dataGaName":574,"dataGaLocation":151},"/gitlab-orbit/","orbit",{"layout":576,"disabled":141},"release",{"data":578},{"text":579,"source":580,"edit":586,"contribute":591,"config":596,"items":601,"minimal":808},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":581,"config":582},"View page source",{"href":583,"dataGaName":584,"dataGaLocation":585},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":587,"config":588},"Edit this page",{"href":589,"dataGaName":590,"dataGaLocation":585},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":592,"config":593},"Please contribute",{"href":594,"dataGaName":595,"dataGaLocation":585},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":597,"facebook":598,"youtube":599,"linkedin":600},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[602,649,700,744,776],{"title":298,"links":603,"subMenu":618},[604,608,613],{"text":605,"config":606},"View plans",{"href":300,"dataGaName":607,"dataGaLocation":585},"view plans",{"text":609,"config":610},"Why Premium?",{"href":611,"dataGaName":612,"dataGaLocation":585},"/pricing/premium/","why premium",{"text":614,"config":615},"Why Ultimate?",{"href":616,"dataGaName":617,"dataGaLocation":585},"/pricing/ultimate/","why ultimate",[619],{"title":620,"links":621},"Contact Us",[622,625,627,629,634,639,644],{"text":623,"config":624},"Contact sales",{"href":477,"dataGaName":161,"dataGaLocation":585},{"text":480,"config":626},{"href":482,"dataGaName":483,"dataGaLocation":585},{"text":485,"config":628},{"href":487,"dataGaName":488,"dataGaLocation":585},{"text":630,"config":631},"Status",{"href":632,"dataGaName":633,"dataGaLocation":585},"https://status.gitlab.com/","status",{"text":635,"config":636},"Terms of use",{"href":637,"dataGaName":638,"dataGaLocation":585},"/terms/","terms of use",{"text":640,"config":641},"Privacy statement",{"href":642,"dataGaName":643,"dataGaLocation":585},"/privacy/","privacy statement",{"text":645,"config":646},"Cookie preferences",{"dataGaName":647,"dataGaLocation":585,"id":648,"isOneTrustButton":137},"cookie preferences","ot-sdk-btn",{"title":198,"links":650,"subMenu":659},[651,655],{"text":652,"config":653},"DevSecOps platform",{"href":180,"dataGaName":654,"dataGaLocation":585},"devsecops platform",{"text":656,"config":657},"AI-Assisted Development",{"href":187,"dataGaName":658,"dataGaLocation":585},"ai-assisted development",[660],{"title":13,"links":661},[662,667,672,675,680,685,690,695],{"text":663,"config":664},"CICD",{"href":665,"dataGaName":666,"dataGaLocation":585},"/topics/ci-cd/","cicd",{"text":668,"config":669},"GitOps",{"href":670,"dataGaName":671,"dataGaLocation":585},"/topics/gitops/","gitops",{"text":17,"config":673},{"href":19,"dataGaName":674,"dataGaLocation":585},"devops",{"text":676,"config":677},"Version Control",{"href":678,"dataGaName":679,"dataGaLocation":585},"/topics/version-control/","version control",{"text":681,"config":682},"DevSecOps",{"href":683,"dataGaName":684,"dataGaLocation":585},"/topics/devsecops/","devsecops",{"text":686,"config":687},"Cloud Native",{"href":688,"dataGaName":689,"dataGaLocation":585},"/topics/cloud-native/","cloud native",{"text":691,"config":692},"AI for Coding",{"href":693,"dataGaName":694,"dataGaLocation":585},"/topics/devops/ai-for-coding/","ai for coding",{"text":696,"config":697},"Agentic AI",{"href":698,"dataGaName":699,"dataGaLocation":585},"/topics/agentic-ai/","agentic ai",{"title":701,"links":702},"Solutions",[703,705,707,712,716,719,723,726,728,731,734,739],{"text":242,"config":704},{"href":237,"dataGaName":242,"dataGaLocation":585},{"text":231,"config":706},{"href":214,"dataGaName":215,"dataGaLocation":585},{"text":708,"config":709},"Agile development",{"href":710,"dataGaName":711,"dataGaLocation":585},"/solutions/agile-delivery/","agile delivery",{"text":713,"config":714},"SCM",{"href":227,"dataGaName":715,"dataGaLocation":585},"source code management",{"text":663,"config":717},{"href":220,"dataGaName":718,"dataGaLocation":585},"continuous integration & delivery",{"text":720,"config":721},"Value stream management",{"href":270,"dataGaName":722,"dataGaLocation":585},"value stream management",{"text":668,"config":724},{"href":725,"dataGaName":671,"dataGaLocation":585},"/solutions/gitops/",{"text":280,"config":727},{"href":283,"dataGaName":284,"dataGaLocation":585},{"text":729,"config":730},"Small business",{"href":289,"dataGaName":290,"dataGaLocation":585},{"text":732,"config":733},"Public sector",{"href":295,"dataGaName":296,"dataGaLocation":585},{"text":735,"config":736},"Education",{"href":737,"dataGaName":738,"dataGaLocation":585},"/solutions/education/","education",{"text":740,"config":741},"Financial services",{"href":742,"dataGaName":743,"dataGaLocation":585},"/solutions/finance/","financial services",{"title":303,"links":745},[746,748,750,752,755,757,760,762,764,766,768,770,772,774],{"text":316,"config":747},{"href":318,"dataGaName":319,"dataGaLocation":585},{"text":321,"config":749},{"href":323,"dataGaName":324,"dataGaLocation":585},{"text":326,"config":751},{"href":328,"dataGaName":329,"dataGaLocation":585},{"text":331,"config":753},{"href":333,"dataGaName":754,"dataGaLocation":585},"docs",{"text":354,"config":756},{"href":356,"dataGaName":357,"dataGaLocation":585},{"text":758,"config":759},"What's new",{"href":409,"dataGaName":410,"dataGaLocation":585},{"text":349,"config":761},{"href":351,"dataGaName":352,"dataGaLocation":585},{"text":363,"config":763},{"href":365,"dataGaName":366,"dataGaLocation":585},{"text":371,"config":765},{"href":373,"dataGaName":374,"dataGaLocation":585},{"text":376,"config":767},{"href":378,"dataGaName":379,"dataGaLocation":585},{"text":381,"config":769},{"href":383,"dataGaName":384,"dataGaLocation":585},{"text":386,"config":771},{"href":388,"dataGaName":389,"dataGaLocation":585},{"text":391,"config":773},{"href":393,"dataGaName":394,"dataGaLocation":585},{"text":396,"config":775},{"href":398,"dataGaName":399,"dataGaLocation":585},{"title":412,"links":777},[778,780,782,784,786,788,792,797,799,801,803],{"text":420,"config":779},{"href":422,"dataGaName":414,"dataGaLocation":585},{"text":425,"config":781},{"href":427,"dataGaName":428,"dataGaLocation":585},{"text":433,"config":783},{"href":435,"dataGaName":436,"dataGaLocation":585},{"text":438,"config":785},{"href":440,"dataGaName":441,"dataGaLocation":585},{"text":443,"config":787},{"href":445,"dataGaName":446,"dataGaLocation":585},{"text":789,"config":790},"Sustainability",{"href":791,"dataGaName":789,"dataGaLocation":585},"/sustainability/",{"text":793,"config":794},"Diversity, inclusion and belonging (DIB)",{"href":795,"dataGaName":796,"dataGaLocation":585},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":448,"config":798},{"href":450,"dataGaName":451,"dataGaLocation":585},{"text":458,"config":800},{"href":460,"dataGaName":461,"dataGaLocation":585},{"text":463,"config":802},{"href":465,"dataGaName":466,"dataGaLocation":585},{"text":804,"config":805},"Modern Slavery Transparency Statement",{"href":806,"dataGaName":807,"dataGaLocation":585},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":809},[810,813,816],{"text":811,"config":812},"Terms",{"href":637,"dataGaName":638,"dataGaLocation":585},{"text":814,"config":815},"Cookies",{"dataGaName":647,"dataGaLocation":585,"id":648,"isOneTrustButton":137},{"text":817,"config":818},"Privacy",{"href":642,"dataGaName":643,"dataGaLocation":585},{"header":820,"blurb":821,"button":822,"secondaryButton":827},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":823,"config":824},"Get your free trial",{"href":825,"dataGaName":156,"dataGaLocation":826},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":623,"config":828},{"href":477,"dataGaName":161,"dataGaLocation":826},1785175962684]