[{"data":1,"prerenderedAt":919},["ShallowReactive",2],{"/en-us/blog/authors/cesar-saavedra":3,"navigation-en-us":20,"banner-en-us":431,"footer-en-us":441,"blog-author-posts-en-us-cesar-saavedra":683},{"id":4,"title":5,"body":6,"config":7,"content":9,"description":6,"extension":13,"meta":14,"navigation":15,"path":16,"seo":17,"stem":18,"__hash__":19},"blogAuthors/en-us/blog/authors/cesar-saavedra.yml","Cesar Saavedra",null,{"template":8},"BlogAuthor",{"name":5,"config":10},{"headshot":11,"ctfId":12},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659600/Blog/Author%20Headshots/csaavedra1-headshot.jpg","csaavedra1","yml",{},true,"/en-us/blog/authors/cesar-saavedra",{},"en-us/blog/authors/cesar-saavedra","SMqRf-z0W5m5GROz_dXGjmuIb3YaOwm_n_RfeK16GcA",{"data":21},{"logo":22,"freeTrial":27,"sales":32,"login":37,"items":42,"search":351,"minimal":382,"duo":401,"switchNav":410,"pricingDeployment":421},{"config":23},{"href":24,"dataGaName":25,"dataGaLocation":26},"/","gitlab logo","header",{"text":28,"config":29},"Get free trial",{"href":30,"dataGaName":31,"dataGaLocation":26},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":33,"config":34},"Talk to sales",{"href":35,"dataGaName":36,"dataGaLocation":26},"/sales/","sales",{"text":38,"config":39},"Sign in",{"href":40,"dataGaName":41,"dataGaLocation":26},"https://gitlab.com/users/sign_in/","sign in",[43,70,165,170,272,332],{"text":44,"config":45,"cards":47},"Platform",{"dataNavLevelOne":46},"platform",[48,54,62],{"title":44,"description":49,"link":50},"The intelligent orchestration platform for DevSecOps",{"text":51,"config":52},"Explore our Platform",{"href":53,"dataGaName":46,"dataGaLocation":26},"/platform/",{"title":55,"description":56,"link":57},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":58,"config":59},"Meet GitLab Duo",{"href":60,"dataGaName":61,"dataGaLocation":26},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":63,"description":64,"link":65},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":66,"config":67},"Learn more",{"href":68,"dataGaName":69,"dataGaLocation":26},"/why-gitlab/","why gitlab",{"text":71,"left":15,"config":72,"link":74,"lists":78,"footer":147},"Product",{"dataNavLevelOne":73},"solutions",{"text":75,"config":76},"View all Solutions",{"href":77,"dataGaName":73,"dataGaLocation":26},"/solutions/",[79,103,126],{"title":80,"description":81,"link":82,"items":87},"Automation","CI/CD and automation to accelerate deployment",{"config":83},{"icon":84,"href":85,"dataGaName":86,"dataGaLocation":26},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[88,92,95,99],{"text":89,"config":90},"CI/CD",{"href":91,"dataGaLocation":26,"dataGaName":89},"/solutions/continuous-integration/",{"text":55,"config":93},{"href":60,"dataGaLocation":26,"dataGaName":94},"gitlab duo agent platform - product menu",{"text":96,"config":97},"Source Code Management",{"href":98,"dataGaLocation":26,"dataGaName":96},"/solutions/source-code-management/",{"text":100,"config":101},"Automated Software Delivery",{"href":85,"dataGaLocation":26,"dataGaName":102},"Automated software delivery",{"title":104,"description":105,"link":106,"items":111},"Security","Deliver code faster without compromising security",{"config":107},{"href":108,"dataGaName":109,"dataGaLocation":26,"icon":110},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[112,116,121],{"text":113,"config":114},"Application Security Testing",{"href":108,"dataGaName":115,"dataGaLocation":26},"Application security testing",{"text":117,"config":118},"Software Supply Chain Security",{"href":119,"dataGaLocation":26,"dataGaName":120},"/solutions/supply-chain/","Software supply chain security",{"text":122,"config":123},"Software Compliance",{"href":124,"dataGaName":125,"dataGaLocation":26},"/solutions/software-compliance/","software compliance",{"title":127,"link":128,"items":133},"Measurement",{"config":129},{"icon":130,"href":131,"dataGaName":132,"dataGaLocation":26},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[134,138,142],{"text":135,"config":136},"Visibility & Measurement",{"href":131,"dataGaLocation":26,"dataGaName":137},"Visibility and Measurement",{"text":139,"config":140},"Value Stream Management",{"href":141,"dataGaLocation":26,"dataGaName":139},"/solutions/value-stream-management/",{"text":143,"config":144},"Analytics & Insights",{"href":145,"dataGaLocation":26,"dataGaName":146},"/solutions/analytics-and-insights/","Analytics and insights",{"title":148,"items":149},"GitLab for",[150,155,160],{"text":151,"config":152},"Enterprise",{"href":153,"dataGaLocation":26,"dataGaName":154},"/enterprise/","enterprise",{"text":156,"config":157},"Small Business",{"href":158,"dataGaLocation":26,"dataGaName":159},"/small-business/","small business",{"text":161,"config":162},"Public Sector",{"href":163,"dataGaLocation":26,"dataGaName":164},"/solutions/public-sector/","public sector",{"text":166,"config":167},"Pricing",{"href":168,"dataGaName":169,"dataGaLocation":26,"dataNavLevelOne":169},"/pricing/","pricing",{"text":171,"config":172,"link":174,"lists":178,"feature":263},"Resources",{"dataNavLevelOne":173},"resources",{"text":175,"config":176},"View all resources",{"href":177,"dataGaName":173,"dataGaLocation":26},"/resources/",[179,212,235],{"title":180,"items":181},"Getting started",[182,187,192,197,202,207],{"text":183,"config":184},"Install",{"href":185,"dataGaName":186,"dataGaLocation":26},"/install/","install",{"text":188,"config":189},"Quick start guides",{"href":190,"dataGaName":191,"dataGaLocation":26},"/get-started/","quick setup checklists",{"text":193,"config":194},"Learn",{"href":195,"dataGaLocation":26,"dataGaName":196},"https://university.gitlab.com/","learn",{"text":198,"config":199},"Product documentation",{"href":200,"dataGaName":201,"dataGaLocation":26},"https://docs.gitlab.com/","product documentation",{"text":203,"config":204},"Best practice videos",{"href":205,"dataGaName":206,"dataGaLocation":26},"/getting-started-videos/","best practice videos",{"text":208,"config":209},"Integrations",{"href":210,"dataGaName":211,"dataGaLocation":26},"/integrations/","integrations",{"title":213,"items":214},"Discover",[215,220,225,230],{"text":216,"config":217},"Customer success stories",{"href":218,"dataGaName":219,"dataGaLocation":26},"/customers/","customer success stories",{"text":221,"config":222},"Blog",{"href":223,"dataGaName":224,"dataGaLocation":26},"/blog/","blog",{"text":226,"config":227},"The Source",{"href":228,"dataGaName":229,"dataGaLocation":26},"/the-source/","the source",{"text":231,"config":232},"Remote",{"href":233,"dataGaName":234,"dataGaLocation":26},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":236,"items":237},"Connect",[238,243,248,253,258],{"text":239,"config":240},"GitLab Services",{"href":241,"dataGaName":242,"dataGaLocation":26},"/services/","services",{"text":244,"config":245},"Community",{"href":246,"dataGaName":247,"dataGaLocation":26},"/community/","community",{"text":249,"config":250},"Forum",{"href":251,"dataGaName":252,"dataGaLocation":26},"https://forum.gitlab.com/","forum",{"text":254,"config":255},"Events",{"href":256,"dataGaName":257,"dataGaLocation":26},"/events/","events",{"text":259,"config":260},"Partners",{"href":261,"dataGaName":262,"dataGaLocation":26},"/partners/","partners",{"textColor":264,"title":265,"text":266,"link":267},"#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":268,"config":269},"Read the latest",{"href":270,"dataGaName":271,"dataGaLocation":26},"/releases/whats-new/","whats new",{"text":273,"config":274,"lists":276},"Company",{"dataNavLevelOne":275},"company",[277],{"items":278},[279,284,290,292,297,302,307,312,317,322,327],{"text":280,"config":281},"About",{"href":282,"dataGaName":283,"dataGaLocation":26},"/company/","about",{"text":285,"config":286,"footerGa":289},"Jobs",{"href":287,"dataGaName":288,"dataGaLocation":26},"/jobs/","jobs",{"dataGaName":288},{"text":254,"config":291},{"href":256,"dataGaName":257,"dataGaLocation":26},{"text":293,"config":294},"Leadership",{"href":295,"dataGaName":296,"dataGaLocation":26},"/company/team/e-group/","leadership",{"text":298,"config":299},"Team",{"href":300,"dataGaName":301,"dataGaLocation":26},"/company/team/","team",{"text":303,"config":304},"Handbook",{"href":305,"dataGaName":306,"dataGaLocation":26},"https://handbook.gitlab.com/","handbook",{"text":308,"config":309},"Investor relations",{"href":310,"dataGaName":311,"dataGaLocation":26},"https://ir.gitlab.com/","investor relations",{"text":313,"config":314},"Trust Center",{"href":315,"dataGaName":316,"dataGaLocation":26},"/security/","trust center",{"text":318,"config":319},"AI Transparency Center",{"href":320,"dataGaName":321,"dataGaLocation":26},"/ai-transparency-center/","ai transparency center",{"text":323,"config":324},"Newsletter",{"href":325,"dataGaName":326,"dataGaLocation":26},"/company/contact/#contact-forms","newsletter",{"text":328,"config":329},"Press",{"href":330,"dataGaName":331,"dataGaLocation":26},"/press/","press",{"text":333,"config":334,"lists":335},"Contact us",{"dataNavLevelOne":275},[336],{"items":337},[338,341,346],{"text":33,"config":339},{"href":35,"dataGaName":340,"dataGaLocation":26},"talk to sales",{"text":342,"config":343},"Support portal",{"href":344,"dataGaName":345,"dataGaLocation":26},"https://support.gitlab.com","support portal",{"text":347,"config":348},"Customer portal",{"href":349,"dataGaName":350,"dataGaLocation":26},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":352,"login":353,"suggestions":360},"Close",{"text":354,"link":355},"To search repositories and projects, login to",{"text":356,"config":357},"gitlab.com",{"href":40,"dataGaName":358,"dataGaLocation":359},"search login","search",{"text":361,"default":362},"Suggestions",[363,365,369,371,375,379],{"text":55,"config":364},{"href":60,"dataGaName":55,"dataGaLocation":359},{"text":366,"config":367},"Code Suggestions (AI)",{"href":368,"dataGaName":366,"dataGaLocation":359},"/solutions/code-suggestions/",{"text":89,"config":370},{"href":91,"dataGaName":89,"dataGaLocation":359},{"text":372,"config":373},"GitLab on AWS",{"href":374,"dataGaName":372,"dataGaLocation":359},"/partners/technology-partners/aws/",{"text":376,"config":377},"GitLab on Google Cloud",{"href":378,"dataGaName":376,"dataGaLocation":359},"/partners/technology-partners/google-cloud-platform/",{"text":380,"config":381},"Why GitLab?",{"href":68,"dataGaName":380,"dataGaLocation":359},{"freeTrial":383,"mobileIcon":388,"desktopIcon":393,"secondaryButton":396},{"text":384,"config":385},"Start free trial",{"href":386,"dataGaName":31,"dataGaLocation":387},"https://gitlab.com/-/trials/new/","nav",{"altText":389,"config":390},"Gitlab Icon",{"src":391,"dataGaName":392,"dataGaLocation":387},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":389,"config":394},{"src":395,"dataGaName":392,"dataGaLocation":387},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":397,"config":398},"Get Started",{"href":399,"dataGaName":400,"dataGaLocation":387},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":402,"mobileIcon":406,"desktopIcon":408},{"text":403,"config":404},"Learn more about GitLab Duo",{"href":60,"dataGaName":405,"dataGaLocation":387},"gitlab duo",{"altText":389,"config":407},{"src":391,"dataGaName":392,"dataGaLocation":387},{"altText":389,"config":409},{"src":395,"dataGaName":392,"dataGaLocation":387},{"button":411,"mobileIcon":416,"desktopIcon":418},{"text":412,"config":413},"/switch",{"href":414,"dataGaName":415,"dataGaLocation":387},"#contact","switch",{"altText":389,"config":417},{"src":391,"dataGaName":392,"dataGaLocation":387},{"altText":389,"config":419},{"src":420,"dataGaName":392,"dataGaLocation":387},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":422,"mobileIcon":427,"desktopIcon":429},{"text":423,"config":424},"Back to pricing",{"href":168,"dataGaName":425,"dataGaLocation":387,"icon":426},"back to pricing","GoBack",{"altText":389,"config":428},{"src":391,"dataGaName":392,"dataGaLocation":387},{"altText":389,"config":430},{"src":395,"dataGaName":392,"dataGaLocation":387},{"title":432,"button":433,"config":438},"See how agentic AI transforms software delivery",{"text":434,"config":435},"Watch GitLab Transcend now",{"href":436,"dataGaName":437,"dataGaLocation":26},"/events/transcend/virtual/","transcend event",{"layout":439,"icon":440,"disabled":15},"release","AiStar",{"data":442},{"text":443,"source":444,"edit":450,"contribute":455,"config":460,"items":465,"minimal":672},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":445,"config":446},"View page source",{"href":447,"dataGaName":448,"dataGaLocation":449},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":451,"config":452},"Edit this page",{"href":453,"dataGaName":454,"dataGaLocation":449},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":456,"config":457},"Please contribute",{"href":458,"dataGaName":459,"dataGaLocation":449},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":461,"facebook":462,"youtube":463,"linkedin":464},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[466,513,567,611,638],{"title":166,"links":467,"subMenu":482},[468,472,477],{"text":469,"config":470},"View plans",{"href":168,"dataGaName":471,"dataGaLocation":449},"view plans",{"text":473,"config":474},"Why Premium?",{"href":475,"dataGaName":476,"dataGaLocation":449},"/pricing/premium/","why premium",{"text":478,"config":479},"Why Ultimate?",{"href":480,"dataGaName":481,"dataGaLocation":449},"/pricing/ultimate/","why ultimate",[483],{"title":484,"links":485},"Contact Us",[486,489,491,493,498,503,508],{"text":487,"config":488},"Contact sales",{"href":35,"dataGaName":36,"dataGaLocation":449},{"text":342,"config":490},{"href":344,"dataGaName":345,"dataGaLocation":449},{"text":347,"config":492},{"href":349,"dataGaName":350,"dataGaLocation":449},{"text":494,"config":495},"Status",{"href":496,"dataGaName":497,"dataGaLocation":449},"https://status.gitlab.com/","status",{"text":499,"config":500},"Terms of use",{"href":501,"dataGaName":502,"dataGaLocation":449},"/terms/","terms of use",{"text":504,"config":505},"Privacy statement",{"href":506,"dataGaName":507,"dataGaLocation":449},"/privacy/","privacy statement",{"text":509,"config":510},"Cookie preferences",{"dataGaName":511,"dataGaLocation":449,"id":512,"isOneTrustButton":15},"cookie preferences","ot-sdk-btn",{"title":71,"links":514,"subMenu":523},[515,519],{"text":516,"config":517},"DevSecOps platform",{"href":53,"dataGaName":518,"dataGaLocation":449},"devsecops platform",{"text":520,"config":521},"AI-Assisted Development",{"href":60,"dataGaName":522,"dataGaLocation":449},"ai-assisted development",[524],{"title":525,"links":526},"Topics",[527,532,537,542,547,552,557,562],{"text":528,"config":529},"CICD",{"href":530,"dataGaName":531,"dataGaLocation":449},"/topics/ci-cd/","cicd",{"text":533,"config":534},"GitOps",{"href":535,"dataGaName":536,"dataGaLocation":449},"/topics/gitops/","gitops",{"text":538,"config":539},"DevOps",{"href":540,"dataGaName":541,"dataGaLocation":449},"/topics/devops/","devops",{"text":543,"config":544},"Version Control",{"href":545,"dataGaName":546,"dataGaLocation":449},"/topics/version-control/","version control",{"text":548,"config":549},"DevSecOps",{"href":550,"dataGaName":551,"dataGaLocation":449},"/topics/devsecops/","devsecops",{"text":553,"config":554},"Cloud Native",{"href":555,"dataGaName":556,"dataGaLocation":449},"/topics/cloud-native/","cloud native",{"text":558,"config":559},"AI for Coding",{"href":560,"dataGaName":561,"dataGaLocation":449},"/topics/devops/ai-for-coding/","ai for coding",{"text":563,"config":564},"Agentic AI",{"href":565,"dataGaName":566,"dataGaLocation":449},"/topics/agentic-ai/","agentic ai",{"title":568,"links":569},"Solutions",[570,572,574,579,583,586,590,593,595,598,601,606],{"text":113,"config":571},{"href":108,"dataGaName":113,"dataGaLocation":449},{"text":102,"config":573},{"href":85,"dataGaName":86,"dataGaLocation":449},{"text":575,"config":576},"Agile development",{"href":577,"dataGaName":578,"dataGaLocation":449},"/solutions/agile-delivery/","agile delivery",{"text":580,"config":581},"SCM",{"href":98,"dataGaName":582,"dataGaLocation":449},"source code management",{"text":528,"config":584},{"href":91,"dataGaName":585,"dataGaLocation":449},"continuous integration & delivery",{"text":587,"config":588},"Value stream management",{"href":141,"dataGaName":589,"dataGaLocation":449},"value stream management",{"text":533,"config":591},{"href":592,"dataGaName":536,"dataGaLocation":449},"/solutions/gitops/",{"text":151,"config":594},{"href":153,"dataGaName":154,"dataGaLocation":449},{"text":596,"config":597},"Small business",{"href":158,"dataGaName":159,"dataGaLocation":449},{"text":599,"config":600},"Public sector",{"href":163,"dataGaName":164,"dataGaLocation":449},{"text":602,"config":603},"Education",{"href":604,"dataGaName":605,"dataGaLocation":449},"/solutions/education/","education",{"text":607,"config":608},"Financial services",{"href":609,"dataGaName":610,"dataGaLocation":449},"/solutions/finance/","financial services",{"title":171,"links":612},[613,615,617,619,622,624,626,628,630,632,634,636],{"text":183,"config":614},{"href":185,"dataGaName":186,"dataGaLocation":449},{"text":188,"config":616},{"href":190,"dataGaName":191,"dataGaLocation":449},{"text":193,"config":618},{"href":195,"dataGaName":196,"dataGaLocation":449},{"text":198,"config":620},{"href":200,"dataGaName":621,"dataGaLocation":449},"docs",{"text":221,"config":623},{"href":223,"dataGaName":224,"dataGaLocation":449},{"text":216,"config":625},{"href":218,"dataGaName":219,"dataGaLocation":449},{"text":231,"config":627},{"href":233,"dataGaName":234,"dataGaLocation":449},{"text":239,"config":629},{"href":241,"dataGaName":242,"dataGaLocation":449},{"text":244,"config":631},{"href":246,"dataGaName":247,"dataGaLocation":449},{"text":249,"config":633},{"href":251,"dataGaName":252,"dataGaLocation":449},{"text":254,"config":635},{"href":256,"dataGaName":257,"dataGaLocation":449},{"text":259,"config":637},{"href":261,"dataGaName":262,"dataGaLocation":449},{"title":273,"links":639},[640,642,644,646,648,650,652,656,661,663,665,667],{"text":280,"config":641},{"href":282,"dataGaName":275,"dataGaLocation":449},{"text":285,"config":643},{"href":287,"dataGaName":288,"dataGaLocation":449},{"text":293,"config":645},{"href":295,"dataGaName":296,"dataGaLocation":449},{"text":298,"config":647},{"href":300,"dataGaName":301,"dataGaLocation":449},{"text":303,"config":649},{"href":305,"dataGaName":306,"dataGaLocation":449},{"text":308,"config":651},{"href":310,"dataGaName":311,"dataGaLocation":449},{"text":653,"config":654},"Sustainability",{"href":655,"dataGaName":653,"dataGaLocation":449},"/sustainability/",{"text":657,"config":658},"Diversity, inclusion and belonging (DIB)",{"href":659,"dataGaName":660,"dataGaLocation":449},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":313,"config":662},{"href":315,"dataGaName":316,"dataGaLocation":449},{"text":323,"config":664},{"href":325,"dataGaName":326,"dataGaLocation":449},{"text":328,"config":666},{"href":330,"dataGaName":331,"dataGaLocation":449},{"text":668,"config":669},"Modern Slavery Transparency Statement",{"href":670,"dataGaName":671,"dataGaLocation":449},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":673},[674,677,680],{"text":675,"config":676},"Terms",{"href":501,"dataGaName":502,"dataGaLocation":449},{"text":678,"config":679},"Cookies",{"dataGaName":511,"dataGaLocation":449,"id":512,"isOneTrustButton":15},{"text":681,"config":682},"Privacy",{"href":506,"dataGaName":507,"dataGaLocation":449},[684,694,703,712,720,728,737,746,755,764,773,782,792,801,810,819,828,837,846,854,863,872,882,892,901,910],{"content":685,"config":692},{"title":686,"heroImage":687,"category":688,"description":689,"authors":690,"date":691},"GitLab Duo Agent Platform with Claude accelerates development","https://res.cloudinary.com/about-gitlab-com/image/upload/v1772058602/epl3sinfezlzxnppxak6.png","ai-ml","Learn how to leverage external AI models like Anthropic's Claude to automate everything from code generation to pipeline creation directly within GitLab.",[5],"2026-02-26",{"slug":693,"externalUrl":-1},"gitlab-duo-agent-platform-with-claude-accelerates-development",{"content":695,"config":701},{"title":696,"heroImage":697,"category":688,"description":698,"authors":699,"date":700},"Modernize Java applications quickly with GitLab Duo with Amazon Q","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659604/Blog/Hero%20Images/Screenshot_2024-11-27_at_4.55.28_PM.png","Transform legacy Java 8 applications to Java 17 in minutes instead of weeks using AI-powered automation.",[5],"2025-10-22",{"slug":702,"externalUrl":-1},"modernize-java-applications-quickly-with-gitlab-duo-with-amazon-q",{"content":704,"config":710},{"title":705,"heroImage":706,"category":688,"description":707,"authors":708,"date":709},"Vibe coding with GitLab Duo Agent Platform: Issue to MR Flow","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662465/Blog/Hero%20Images/GitLab_Duo_Workflow_Unified_Data_Store__1_.png","Learn how to update your application in minutes with our newest agent Flow that takes developers from idea to code.",[5],"2025-09-03",{"slug":711,"externalUrl":-1},"vibe-coding-with-gitlab-duo-agent-platform-issue-to-mr-flow",{"content":713,"config":718},{"title":714,"heroImage":697,"category":688,"description":715,"authors":716,"date":717},"Enhance application quality with AI-powered test generation","Learn how GitLab Duo with Amazon Q improves the QA process by automatically generating comprehensive unit tests.",[5],"2025-07-03",{"slug":719,"externalUrl":-1},"enhance-application-quality-with-ai-powered-test-generation",{"content":721,"config":726},{"title":722,"heroImage":697,"category":688,"description":723,"authors":724,"date":725},"Speed up code reviews: Let AI handle the feedback implementation","Discover how GitLab Duo with Amazon Q automates the implementation of code review feedback through AI, transforming a time-consuming manual process into a streamlined workflow.",[5],"2025-06-10",{"slug":727,"externalUrl":-1},"speed-up-code-reviews-let-ai-handle-the-feedback-implementation",{"content":729,"config":735},{"title":730,"heroImage":731,"category":688,"description":732,"authors":733,"date":734},"Accelerate code reviews with GitLab Duo and Amazon Q","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750096976/Blog/Hero%20Images/Blog/Hero%20Images/Screenshot%202024-11-27%20at%204.55.28%E2%80%AFPM_4VVz6DgGBOvbGY8BUmd068_1750096975734.png","Use AI-powered agents to optimize code reviews by automatically analyzing merge requests and providing comprehensive feedback on bugs, readability, and coding standards.",[5],"2025-06-02",{"slug":736,"externalUrl":-1},"accelerate-code-reviews-with-gitlab-duo-and-amazon-q",{"content":738,"config":744},{"title":739,"heroImage":740,"category":688,"description":741,"authors":742,"date":743},"GitLab Duo + Amazon Q: Transform ideas into code in minutes","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097127/Blog/Hero%20Images/Blog/Hero%20Images/Screenshot%202024-11-27%20at%204.55.28%E2%80%AFPM_4VVz6DgGBOvbGY8BUmd068_1750097126673.png","The new GitLab Duo with Amazon Q integration analyzes your issue descriptions and automatically generates complete working code solutions, accelerating development workflows.",[5],"2025-04-28",{"slug":745,"externalUrl":-1},"gitlab-duo-amazon-q-transform-ideas-into-code-in-minutes",{"content":747,"config":753},{"title":748,"heroImage":749,"category":688,"description":750,"authors":751,"date":752},"Use GitLab Duo Workflow to improve application quality assurance","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097617/Blog/Hero%20Images/Blog/Hero%20Images/Workflow%201800x945_2gQoQIbY9NvjLFpXtsxtXy_1750097616649.png","Learn step-by-step how to add unit tests to a Java application using agentic AI (includes a video tutorial).",[5],"2025-04-10",{"slug":754,"externalUrl":-1},"use-gitlab-duo-workflow-to-improve-application-quality-assurance",{"content":756,"config":762},{"title":757,"heroImage":758,"category":688,"description":759,"authors":760,"date":761},"Modernizing a simple C++ application to Java with GitLab Duo","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659507/Blog/Hero%20Images/AdobeStock_623844718.jpg","Learn how to refactor code from memory unsafe languages to memory safe languages with the help of GitLab's AI capabilities, saving time and effort on application modernization.",[5],"2024-12-11",{"slug":763,"externalUrl":-1},"modernizing-a-simple-c-application-to-java-with-gitlab-duo",{"content":765,"config":771},{"title":766,"heroImage":767,"category":688,"description":768,"authors":769,"date":770},"Use GitLab Duo to build and deploy a simple Quarkus-native project","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666069/Blog/Hero%20Images/AdobeStock_639935439.jpg","This tutorial shows how a Java application is compiled to machine code and deployed to a Kubernetes cluster using a CI/CD pipeline. See how AI makes the process faster and more efficient.",[5],"2024-10-17",{"slug":772,"externalUrl":-1},"use-gitlab-duo-to-build-and-deploy-a-simple-quarkus-native-project",{"content":774,"config":780},{"title":775,"heroImage":776,"category":688,"description":777,"authors":778,"date":779},"5 videos and interactive tours to learn GitLab Duo fast","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659856/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25.png","Get to know GitLab Duo's capabilities and benefits, and use these visual learning tools to understand how to incorporate AI throughout your software development lifecycle.\n",[5],"2024-08-28",{"slug":781,"externalUrl":-1},"5-videos-and-interactive-tours-to-learn-gitlab-duo-fast",{"content":783,"config":790},{"title":784,"heroImage":785,"category":786,"description":787,"authors":788,"date":789},"Tutorial: Install VS Code on a cloud provider VM and set up remote access","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749670563/Blog/Hero%20Images/cloudcomputing.jpg","engineering","Learn how to automate the installation of VS Code on a VM running on a cloud provider and how to access it from your local laptop.",[5],"2024-05-06",{"slug":791,"externalUrl":-1},"tutorial-install-vs-code-on-a-cloud-provider-vm-and-set-up-remote-access",{"content":793,"config":799},{"title":794,"heroImage":795,"category":551,"description":796,"authors":797,"date":798},"How to use feature flags to lower risk in deployments","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667743/Blog/Hero%20Images/flags.png","Follow this comprehensive tutorial to learn how to create and use feature flags in your software development environment.",[5],"2023-09-20",{"slug":800,"externalUrl":-1},"eliminate-risk-with-feature-flags-tutorial",{"content":802,"config":808},{"title":803,"heroImage":804,"category":688,"description":805,"authors":806,"date":807},"Combine GitLab Flow and GitLab Duo for a workflow powerhouse ","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662840/Blog/Hero%20Images/ai-experiment-stars.png","Add the AI-powered capabilities of GitLab Duo to GitLab Flow to boost the efficiency of DevSecOps workflows. This is a guide for deployment in your environment, including a video tutorial.",[5],"2023-07-27",{"slug":809,"externalUrl":-1},"gitlab-flow-duo",{"content":811,"config":817},{"title":812,"heroImage":813,"category":551,"description":814,"authors":815,"date":816},"How to automate software delivery using Quarkus and GitLab","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749666915/Blog/Hero%20Images/autodevops.jpg","Here's a step-by-step guide to automated software delivery using Supersonic Subatomic Java (Quarkus) and GitLab.",[5],"2022-06-09",{"slug":818,"externalUrl":-1},"how-to-automate-software-delivery-using-quarkus-and-gitlab",{"content":820,"config":826},{"title":821,"heroImage":822,"category":786,"description":823,"authors":824,"date":825},"How to use fine-grained permissions via generic impersonation in CI/CD Tunnel","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667435/Blog/Hero%20Images/tunnel.jpg","Learn how to use use fine-grained permissions via generic impersonation in CI/CD Tunnel",[5],"2022-02-01",{"slug":827,"externalUrl":-1},"cicd-tunnel-impersonation",{"content":829,"config":835},{"title":830,"heroImage":831,"category":786,"description":832,"authors":833,"date":834},"How to install and use the GitLab Kubernetes Operator","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682191/Blog/Hero%20Images/GKO-Thumbnail.png","Follow these step-by-step instructions to set up the GitLab Kubernetes Operator on a Kubernetes cluster.",[5],"2021-11-16",{"slug":836,"externalUrl":-1},"gko-on-ocp",{"content":838,"config":844},{"title":839,"heroImage":840,"category":786,"description":841,"authors":842,"date":843},"How to use external status checks for merge requests","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749663397/Blog/Hero%20Images/logoforblogpost.jpg","Want to integrate third-party systems and apps with GitLab merge requests? Here's everything you need to know.",[5],"2021-10-04",{"slug":845,"externalUrl":-1},"how-to-status-checks",{"content":847,"config":852},{"title":848,"heroImage":840,"category":786,"description":849,"authors":850,"date":851},"How to use a push-based approach for GitOps with Terraform and AWS ECS and EC2","Learn how GitLab supports agentless approach for GitOps on AWS.",[5],"2021-08-10",{"slug":853,"externalUrl":-1},"how-to-agentless-gitops-aws",{"content":855,"config":861},{"title":856,"heroImage":857,"category":786,"description":858,"authors":859,"date":860},"How to use a push-based approach for GitOps with GitLab scripting and variables","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682051/Blog/Hero%20Images/agentless-gitops-vars-cover-880x587.jpg","Learn how GitLab supports agentless approach for GitOps with scripting and variables.",[5],"2021-07-23",{"slug":862,"externalUrl":-1},"how-to-agentless-gitops-vars",{"content":864,"config":870},{"title":865,"heroImage":866,"category":786,"description":867,"authors":868,"date":869},"How to use a pull-based (agent-based) approach for GitOps","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682037/Blog/Hero%20Images/agent-based-gitops-cover-880x587.jpg","Learn how GitLab supports agent-based approach for GitOps",[5],"2021-06-23",{"slug":871,"externalUrl":-1},"how-to-use-agent-based-gitops",{"content":873,"config":880},{"title":874,"heroImage":875,"category":786,"description":876,"authors":877,"date":879},"How to use GitLab CI to deploy to multiple environments","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662033/Blog/Hero%20Images/intro.jpg","We walk you through different scenarios to demonstrate the versatility and power of GitLab CI.",[878,5],"Ivan Nemytchenko","2021-02-05",{"slug":881,"externalUrl":-1},"ci-deployment-and-environments",{"content":883,"config":890},{"title":884,"heroImage":885,"category":886,"description":887,"authors":888,"date":889},"GitLab’s automated and integrated continuous delivery","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681872/Blog/Hero%20Images/CD-2st-mkt-diff-cover-1275x849.jpg","unfiltered","Learn about how the power of GitLab Auto DevOps can help increase productivity and speed up releases.",[5],"2021-01-22",{"slug":891,"externalUrl":-1},"cd-automated-integrated",{"content":893,"config":899},{"title":894,"heroImage":895,"category":786,"description":896,"authors":897,"date":898},"How to use GitLab tools for continuous delivery","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749682956/Blog/Hero%20Images/CD-continuous-nature-cover-880x586.jpg","Learn how to use GitLab technology to release software faster and with less risk.",[5],"2020-12-17",{"slug":900,"externalUrl":-1},"cd-solution-overview",{"content":902,"config":908},{"title":903,"heroImage":904,"category":886,"description":905,"authors":906,"date":907},"GitLab's unifiied and integrated monitoring strategies","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681771/Blog/Hero%20Images/CD-1st-mkt-diff-cover-1275x849.jpg","Learn about GitLab’s unified and integrated monitoring capabilities and advanced deployment strategies.",[5],"2020-11-23",{"slug":909,"externalUrl":-1},"cd-unified-monitor-deploy",{"content":911,"config":917},{"title":912,"heroImage":913,"category":886,"description":914,"authors":915,"date":916},"GitLab uniquely enables rapid innovation","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749681603/Blog/Hero%20Images/rapids-cover-1275x750.jpg","Learn about some of the ways GitLab can uniquely enable your developers to innovate more rapidly.",[5],"2020-09-30",{"slug":918,"externalUrl":-1},"enables-rapid-innovation",1777493624138]