[{"data":1,"prerenderedAt":1211},["ShallowReactive",2],{"/en-us/blog/agentic-coding-only-as-good-as-context":3,"navigation-en-us":446,"banner-en-us":861,"footer-en-us":869,"blog-post-authors-en-us-Jessica Taylor":1112,"blog-related-posts-en-us-agentic-coding-only-as-good-as-context":1126,"blog-promotions-en-us":1149,"next-steps-en-us":1201},{"id":4,"title":5,"authors":6,"body":8,"category":426,"date":427,"description":428,"extension":429,"externalUrl":430,"featured":431,"heroImage":432,"meta":433,"navigation":431,"path":434,"seo":435,"slug":439,"stem":440,"tags":441,"template":444,"updatedDate":430,"__hash__":445},"blogPosts/en-us/blog/agentic-coding-only-as-good-as-context.md","Agentic coding is only as good as its context",[7],"Jessica Taylor",{"type":9,"value":10,"toc":413},"minimark",[11,20,23,26,29,34,56,66,73,99,105,125,128,134,140,144,147,168,174,177,180,184,187,190,206,209,217,220,235,241,248,260,266,272,278,282,291,294,297,300,304,307,310,330,334,337,343,352,358,376,380,383,391,399],[12,13,14,15,19],"p",{},"Every week, another coding agent demo shows a prompt turning into a merge request in under five minutes. These demos often highlight a narrow use case not yet in production, and they skip everything that happens ",[16,17,18],"em",{},"after"," the commit.",[12,21,22],{},"The merge request doesn't include a link to the issue it was supposed to fix. The CI/CD pipeline fails because the agent didn't know about a recently added linter rule. A security scan flags a dependency the agent pulled in without checking the project's approved list.",[12,24,25],{},"These are context failures, and they determine whether agentic coding accelerates delivery or creates rework. But when development teams use coding agents with GitLab, the agents draw on the issues, pipelines, and security policies already in the platform, catching problems and remediating them within the developer flow.",[12,27,28],{},"This article walks through what changes when you give a coding agent progressively more lifecycle context from repository-only to full platform visibility, using two recent GitLab tutorials as a reference. You'll learn how platform context improves code quality, security assessments, and review cycles, and what platform teams can do today to close the gap.",[30,31,33],"h2",{"id":32},"putting-context-into-practice","Putting context into practice",[12,35,36,37,43,44,49,50,55],{},"The GitLab tutorials demonstrate what happens when you give an external coding agent progressively more full platform context. The first tutorial illustrates ",[38,39,42],"a",{"href":40,"rel":41},"https://about.gitlab.com/blog/claude-code-and-gitlab/",[],"three workflows with Claude Code",": fixing a C++ sensor crash, enriching the session with ",[38,45,48],{"href":46,"rel":47},"https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_server/",[],"GitLab's Model Context Protocol (MCP) server",", and using Claude Code as an external agent inside a merge request to address review feedback. The second tutorial follows the same progression with ",[38,51,54],{"href":52,"rel":53},"https://about.gitlab.com/blog/fix-bugs-with-codex-and-gitlab/",[],"Codex and GitLab",", this time fixing a Rust WebSocket filtering bug across the same three scenarios.",[12,57,58,62,65],{},[59,60,61],"strong",{},"Scenario 1: The agent only sees the repository",[63,64],"br",{},"\nYou point the agent at the codebase and describe the problem in a prompt. The agent reads files, proposes a fix, and runs the build. The fix works, but it's only based on what the agent infers from local files and your prompt. It doesn't understand your organizational context: the issue's acceptance criteria, the non-functional requirements, or the review standards defined in your project's CI configuration. The code compiles, but it still might not be what your team needs.",[12,67,68],{},[69,70],"img",{"alt":71,"src":72},"Scenario 1. The agent only sees the repository","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779986318/cykpoimst2bhiqxkmkyi.png",[12,74,75,78,80,81,85,86,90,91,94,95,98],{},[59,76,77],{},"Scenario 2: The agent sees the repository and the GitLab issue",[63,79],{},"\nConnect the ",[38,82,84],{"href":46,"rel":83},[],"GitLab MCP server",", and the agent can fetch the issue before writing any code. Now it reads the functional requirements, implementation notes, labels and milestones. In the Codex and GitLab tutorial, this means the agent adds ",[87,88,89],"code",{},"Closes #32"," to the merge request description, because it understands the relationship between the code change and the issue. In the Claude Code tutorial, the agent uses ",[87,92,93],{},"get_issue"," to pull the bug report, then ",[87,96,97],{},"create_merge_request"," to file the MR with the right references. This time, the fix aligns to what the team planned.",[12,100,101],{},[69,102],{"alt":103,"src":104},"Scenario 2. The agent sees the repository and the GitLab issue","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779986319/wvbxpdm79ucuicyqmbhx.png",[12,106,107,110,112,113,118,119,124],{},[59,108,109],{},"Scenario 3: The agent works inside the merge request",[63,111],{},"\nOnce the MR exists, ",[38,114,117],{"href":115,"rel":116},"https://docs.gitlab.com/user/duo_agent_platform/flows/foundational_flows/code_review/",[],"GitLab's Code Review Flow"," runs automatically and posts feedback. In both tutorials, the coding agent gets invoked as an ",[38,120,123],{"href":121,"rel":122},"https://docs.gitlab.com/user/duo_agent_platform/agents/external/",[],"external agent"," inside the MR to address the review feedback. It adds missing tests, updates documentation comments, and fixes validation gaps the review caught. The agent commits directly to the MR branch, CI/CD pipelines run automatically on the new commit, and a human reviewer can inspect the result without switching tools.",[12,126,127],{},"By this scenario, both tutorials demonstrate fewer review rounds and shorter time to merge.",[12,129,130],{},[69,131],{"alt":132,"src":133},"Scenario 3. The agent works inside the merge request","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779986318/wnijcgfsh06rrxkyex09.png",[12,135,136],{},[69,137],{"alt":138,"src":139},"More Scenario 3. The agent works inside the merge request","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779986318/sbybw7hs3dkbxplqblgj.png",[30,141,143],{"id":142},"the-importance-of-agentic-coding-and-platform-visibility","The importance of agentic coding and platform visibility",[12,145,146],{},"If you run a platform team, you're deciding how AI-assisted development works across your organization. You're defining which agents are allowed, what tools they can access, how output gets verified, and where human decisions get made in the process.",[12,148,149,150,155,156,161,162,167],{},"The agent needs context to produce changes that your organization can trust, and that context lives in your DevSecOps platform. Your issue tracker lists requirements. The ",[38,151,154],{"href":152,"rel":153},"https://docs.gitlab.com/topics/build_your_application/",[],"CI/CD configuration"," sets the quality bar. ",[38,157,160],{"href":158,"rel":159},"https://docs.gitlab.com/development/code_review/",[],"Code review"," instructions codify the team's style and standards. ",[38,163,166],{"href":164,"rel":165},"https://docs.gitlab.com/user/application_security/detect/",[],"Security scanners"," enforce vulnerability policy. And the merge request is where it all comes together — the final human gate.",[12,169,170],{},[69,171],{"alt":172,"src":173},"Code review instructions","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779986319/iq9yeutzn7qqzyl3wckf.png",[12,175,176],{},"An agent with platform context follows the same workflow that development teams use and within the same guardrails. The diff is in review cycles, pipeline pass rates, and time to merge.",[12,178,179],{},"An IDE or terminal-based agent, however capable, sees only the files you give it. The platform has access to the full lifecycle from the issue, pipeline, and security policy, to the deployment target and approval rules. That visibility gap is why your organization's platform, not the agent, determines what ships safely.",[30,181,183],{"id":182},"the-impact-on-security-when-agents-produce-more-code","The impact on security when agents produce more code",[12,185,186],{},"In all tutorials, CI/CD pipelines and code review run automatically on every merge request the coding agent creates. Security scanning is part of the pipelines, even if the tutorials focus on code quality rather than security findings. For platform teams, context becomes even more crucial when security is invoked.",[12,188,189],{},"Coding agents produce more code, faster. More code means more vulnerabilities introduced, more findings flagged by scanners, and more fix MRs generated.",[191,192,193,200],"ul",{},[194,195,196,199],"li",{},[59,197,198],{},"Before"," AI coding agents entered the workflow, the bottleneck in vulnerability management was on the application security side: scan, prioritize findings, escalate important ones to developers, wait for a fix.",[194,201,202,205],{},[59,203,204],{},"Now"," with agents accelerating code production and remediation, the bottleneck shifts. The workflow advances from \"which vulnerability should we fix first\" to \"which AI-generated fix MR should a human review and approve first.\"",[12,207,208],{},"That decision requires context the coding agent doesn't have: the broader project code, the complete data flow, the deployment target, and the security policies that apply across your organization.",[191,210,211],{},[194,212,213,216],{},[59,214,215],{},"With context",", prioritization sharpens: An agent grounded in the surrounding code, data flow, and applicable policies can rank findings by real exposure in your environment rather than generic severity scores, surfacing what matters before reviewers spend cycles on it.",[12,218,219],{},"Just as the coding agent in the second scenario produced better code when it could read the GitLab issue, the security layer produces better assessments when it can read the full application context rather than a single file.",[12,221,222,223,228,229,234],{},"GitLab's security layer analyzes findings with full project context, ",[38,224,227],{"href":225,"rel":226},"https://docs.gitlab.com/user/application_security/vulnerabilities/false_positive_detection/",[],"filtering detected false positives"," and flagging confirmed vulnerabilities. When a vulnerability is confirmed, ",[38,230,233],{"href":231,"rel":232},"https://docs.gitlab.com/user/application_security/vulnerabilities/agentic_vulnerability_resolution/",[],"agentic SAST vulnerability resolution"," reads the vulnerable code and surrounding context from the repository, and automatically creates a merge request with a proposed fix. The pipeline runs to validate the fix. A human reviewer inspects it and makes the final merge decision. The agent handles remediation; and the governance model stays intact.",[12,236,237,238],{},"CI/CD quality gates, code review instructions, and security scanning all operate in the merge request, which is also where coding agents do their work. ",[59,239,240],{},"The more effective those controls are at the point of code creation, the fewer vulnerabilities reach production.",[30,242,244,245],{"id":243},"custom-instructions-with-agentsmd","Custom instructions with ",[87,246,247],{},"AGENTS.md",[12,249,250,251,253,254,259],{},"Both tutorials rely on ",[87,252,247],{}," files in the repository. These are ",[38,255,258],{"href":256,"rel":257},"https://docs.gitlab.com/user/duo_agent_platform/customize/agents_md/",[],"custom instructions"," for agents on how the project is structured, which commands to run, and what the code quality expectations are — including what not to touch.",[12,261,262,263,265],{},"In the Codex and GitLab tutorial, the ",[87,264,247],{}," file defined everything from the Rust edition to the async concurrency pattern and CI image pinning policy. The agent didn't need context repeated in the prompt. It read the file and followed the rules.",[12,267,268],{},[69,269],{"alt":270,"src":271},"Local toolchain setup","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779986319/bciynqcmc1gumgcx4mjo.png",[12,273,274,275,277],{},"This one-time investment pays off across every agent interaction, whether your agent is running locally in a developer's terminal, connected via MCP, or operating as an external agent inside a merge request. Standardizing ",[87,276,247],{}," across projects improves agent output quality, because every agent session, local or remote, reads the same rules.",[30,279,281],{"id":280},"context-window-limits","Context window limits",[12,283,284,285,290],{},"Large language models have finite context windows, and research from teams have shown that ",[38,286,289],{"href":287,"rel":288},"https://vercel.com/blog/we-removed-80-percent-of-our-agents-tools",[],"model performance degrades as context utilization climbs past 30%–40%",". The more tools, files, and instructions packed into a session, the less reliably the agent reasons.",[12,292,293],{},"Your organization wants to give the agent rich lifecycle context: issue, review instructions, pipeline history, and security policy. But you also want to ensure the context is structured, relevant, and efficiently delivered.",[12,295,296],{},"Instead of having every agent session reconstruct context by reading files and making unnecessary API calls (diluting the context window and consuming tokens), a platform that understands the relationships between code, issues, pipelines, and deployments can provide the right context at the right time. GitLab captures many of these relationships across the lifecycle, positioning it to deliver context more efficiently. When the platform knows which issue a merge request addresses, which services the code change impacts, and which pipelines validate the result, it can deliver that knowledge as structured context rather than reassembling it from fragments.",[12,298,299],{},"The efficiency of your organization's AI-assisted development workflows depends on how well your platform delivers structured context, not on the size of your model's context window.",[30,301,303],{"id":302},"agents-shorten-the-loop","Agents shorten the loop",[12,305,306],{},"When a coding agent addresses review feedback inside a merge request, it acts on the review. The agent reads the feedback, makes requested changes, commits them, and lets CI/CD validate the result. The human reviewer still validates the outcome, approving or requesting further changes, making the final merge decision.",[12,308,309],{},"Approval rules, code owners, security policies, and audit trails all stay in place. The agent accelerates the revision cycle without bypassing the controls around it.",[12,311,312,313,317,318,323,324,329],{},"External agents in ",[38,314,316],{"href":121,"rel":315},[],"GitLab Duo Agent Platform"," can be further integrated with ",[38,319,322],{"href":320,"rel":321},"https://docs.gitlab.com/user/duo_agent_platform/triggers/",[],"event triggers"," and ",[38,325,328],{"href":326,"rel":327},"https://docs.gitlab.com/user/duo_agent_platform/flows/custom/",[],"custom flows",", giving platform teams control over when and how agents perform in the workflow.",[30,331,333],{"id":332},"how-to-get-started-with-agentic-coding","How to get started with agentic coding",[12,335,336],{},"If you're evaluating how coding agents fit into your organization's development workflow:",[12,338,339,342],{},[59,340,341],{},"Pick a visible bug in a real project."," Define the expected behavior in a GitLab issue with clear requirements. Move through the same progression the tutorials demonstrate: fix it locally with the agent working from the repository, connect GitLab MCP so the agent works from the issue, and use the agent as an external reviewer to address feedback in the merge request.",[12,344,345,351],{},[59,346,347,348,350],{},"Invest in ",[87,349,247],{},"."," Document how the repository works, which commands to pay attention to, and what the code quality expectations are. These instructions ensure higher quality agentic output that compounds over time as more agents and developers interact with the project.",[12,353,354,357],{},[59,355,356],{},"Watch context consumption."," If agent sessions are slow, expensive, or producing shallow results, the problem is likely the context being fed to the model, not the model itself. Structured, relevant context delivered via platform integrations outperform raw file dumps.",[12,359,360,363,364,369,370,375],{},[59,361,362],{},"Review security coverage."," As coding agents produce more merge requests across projects, check that every project is being scanned. Apply ",[38,365,368],{"href":366,"rel":367},"https://docs.gitlab.com/user/application_security/configuration/security_configuration_profiles/",[],"Security Configuration Profiles"," at the group level so scanners are enabled automatically, then use ",[38,371,374],{"href":372,"rel":373},"https://docs.gitlab.com/user/application_security/security_inventory/",[],"Security Inventory"," to confirm coverage and understand where vulnerabilities concentrate.",[30,377,379],{"id":378},"get-started-with-agentic-coding-today","Get started with agentic coding today",[12,381,382],{},"The organizations that get the most from agentic coding will be those with DevSecOps platforms that give agents the right context and controls to ship safely.",[12,384,385,386,350],{},"If you are not using GitLab Duo Agent Platform today, you can start with ",[38,387,390],{"href":388,"rel":389},"https://about.gitlab.com/gitlab-duo-agent-platform/",[],"a free trial",[12,392,393,394,350],{},"If you are already using GitLab in the Free tier, you can sign up for GitLab Duo Agent Platform by ",[38,395,398],{"href":396,"rel":397},"https://docs.gitlab.com/subscriptions/gitlab_credits/#for-the-free-tier-on-gitlabcom",[],"following these easy steps",[12,400,401,402,407,408,350],{},"And if you're an existing GitLab Premium or Ultimate subscriber, get started by ",[38,403,406],{"href":404,"rel":405},"https://docs.gitlab.com/user/duo_agent_platform/turn_on_off/",[],"turning on Duo Agent Platform"," and using the GitLab promotional credits ",[38,409,412],{"href":410,"rel":411},"https://docs.gitlab.com/subscriptions/gitlab_credits/#included-credits",[],"included in your subscription",{"title":414,"searchDepth":415,"depth":415,"links":416},"",2,[417,418,419,420,422,423,424,425],{"id":32,"depth":415,"text":33},{"id":142,"depth":415,"text":143},{"id":182,"depth":415,"text":183},{"id":243,"depth":415,"text":421},"Custom instructions with AGENTS.md",{"id":280,"depth":415,"text":281},{"id":302,"depth":415,"text":303},{"id":332,"depth":415,"text":333},{"id":378,"depth":415,"text":379},"ai","2026-05-28","Coding agents deliver speed. With lifecycle context in GitLab, enterprises address shallow fixes and longer review cycles.","md",null,true,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773856365/gsx2c0vqlswox3ldmq88.jpg",{},"/en-us/blog/agentic-coding-only-as-good-as-context",{"config":436,"title":5,"description":438},{"noIndex":437},false,"\"Coding agents deliver speed. With lifecycle context in GitLab, enterprises address shallow fixes and longer review cycles.\"","agentic-coding-only-as-good-as-context","en-us/blog/agentic-coding-only-as-good-as-context",[442,443],"AI","product","BlogPost","wIvI4l08t4wtn1LAYD-WIGG5Nqu1D7h8HxvDJdMnzuI",{"logo":447,"freeTrial":452,"sales":457,"login":462,"items":467,"search":781,"minimal":812,"duo":831,"switchNav":840,"pricingDeployment":851},{"config":448},{"href":449,"dataGaName":450,"dataGaLocation":451},"/","gitlab logo","header",{"text":453,"config":454},"Get free trial",{"href":455,"dataGaName":456,"dataGaLocation":451},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":458,"config":459},"Talk to sales",{"href":460,"dataGaName":461,"dataGaLocation":451},"/sales/","sales",{"text":463,"config":464},"Sign in",{"href":465,"dataGaName":466,"dataGaLocation":451},"https://gitlab.com/users/sign_in/","sign in",[468,496,596,601,705,761],{"text":469,"config":470,"menu":472},"Platform",{"dataNavLevelOne":471},"platform",{"type":473,"columns":474},"cards",[475,481,488],{"title":469,"description":476,"link":477},"The intelligent orchestration platform for DevSecOps",{"text":478,"config":479},"Explore our Platform",{"href":480,"dataGaName":471,"dataGaLocation":451},"/platform/",{"title":316,"description":482,"link":483},"Agentic AI for the entire software lifecycle",{"text":484,"config":485},"Meet GitLab Duo",{"href":486,"dataGaName":487,"dataGaLocation":451},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":489,"description":490,"link":491},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":492,"config":493},"Learn more",{"href":494,"dataGaName":495,"dataGaLocation":451},"/why-gitlab/","why gitlab",{"text":497,"left":431,"config":498,"menu":500},"Product",{"dataNavLevelOne":499},"solutions",{"type":501,"link":502,"columns":506,"feature":575},"lists",{"text":503,"config":504},"View all Solutions",{"href":505,"dataGaName":499,"dataGaLocation":451},"/solutions/",[507,531,554],{"title":508,"description":509,"link":510,"items":515},"Automation","CI/CD and automation to accelerate deployment",{"config":511},{"icon":512,"href":513,"dataGaName":514,"dataGaLocation":451},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[516,520,523,527],{"text":517,"config":518},"CI/CD",{"href":519,"dataGaLocation":451,"dataGaName":517},"/solutions/continuous-integration/",{"text":316,"config":521},{"href":486,"dataGaLocation":451,"dataGaName":522},"gitlab duo agent platform - product menu",{"text":524,"config":525},"Source Code Management",{"href":526,"dataGaLocation":451,"dataGaName":524},"/solutions/source-code-management/",{"text":528,"config":529},"Automated Software Delivery",{"href":513,"dataGaLocation":451,"dataGaName":530},"Automated software delivery",{"title":532,"description":533,"link":534,"items":539},"Security","Deliver code faster without compromising security",{"config":535},{"href":536,"dataGaName":537,"dataGaLocation":451,"icon":538},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[540,544,549],{"text":541,"config":542},"Application Security Testing",{"href":536,"dataGaName":543,"dataGaLocation":451},"Application security testing",{"text":545,"config":546},"Software Supply Chain Security",{"href":547,"dataGaLocation":451,"dataGaName":548},"/solutions/supply-chain/","Software supply chain security",{"text":550,"config":551},"Software Compliance",{"href":552,"dataGaName":553,"dataGaLocation":451},"/solutions/software-compliance/","software compliance",{"title":555,"link":556,"items":561},"Measurement",{"config":557},{"icon":558,"href":559,"dataGaName":560,"dataGaLocation":451},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[562,566,570],{"text":563,"config":564},"Visibility & Measurement",{"href":559,"dataGaLocation":451,"dataGaName":565},"Visibility and Measurement",{"text":567,"config":568},"Value Stream Management",{"href":569,"dataGaLocation":451,"dataGaName":567},"/solutions/value-stream-management/",{"text":571,"config":572},"Analytics & Insights",{"href":573,"dataGaLocation":451,"dataGaName":574},"/solutions/analytics-and-insights/","Analytics and insights",{"title":576,"type":501,"items":577},"GitLab for",[578,584,590],{"text":579,"config":580},"Enterprise",{"icon":581,"href":582,"dataGaLocation":451,"dataGaName":583},"Building","/enterprise/","enterprise",{"text":585,"config":586},"Small Business",{"icon":587,"href":588,"dataGaLocation":451,"dataGaName":589},"Work","/small-business/","small business",{"text":591,"config":592},"Public Sector",{"icon":593,"href":594,"dataGaLocation":451,"dataGaName":595},"Organization","/solutions/public-sector/","public sector",{"text":597,"config":598},"Pricing",{"href":599,"dataGaName":600,"dataGaLocation":451,"dataNavLevelOne":600},"/pricing/","pricing",{"text":602,"config":603,"menu":605},"Resources",{"dataNavLevelOne":604},"resources",{"type":501,"link":606,"columns":610,"feature":694},{"text":607,"config":608},"View all resources",{"href":609,"dataGaName":604,"dataGaLocation":451},"/resources/",[611,644,666],{"title":612,"items":613},"Getting started",[614,619,624,629,634,639],{"text":615,"config":616},"Install",{"href":617,"dataGaName":618,"dataGaLocation":451},"/install/","install",{"text":620,"config":621},"Quick start guides",{"href":622,"dataGaName":623,"dataGaLocation":451},"/get-started/","quick setup checklists",{"text":625,"config":626},"Learn",{"href":627,"dataGaLocation":451,"dataGaName":628},"https://university.gitlab.com/","learn",{"text":630,"config":631},"Product documentation",{"href":632,"dataGaName":633,"dataGaLocation":451},"https://docs.gitlab.com/","product documentation",{"text":635,"config":636},"Best practice videos",{"href":637,"dataGaName":638,"dataGaLocation":451},"/getting-started-videos/","best practice videos",{"text":640,"config":641},"Integrations",{"href":642,"dataGaName":643,"dataGaLocation":451},"/integrations/","integrations",{"title":645,"items":646},"Discover",[647,652,657,661],{"text":648,"config":649},"Customer success stories",{"href":650,"dataGaName":651,"dataGaLocation":451},"/customers/","customer success stories",{"text":653,"config":654},"Blog",{"href":655,"dataGaName":656,"dataGaLocation":451},"/blog/","blog",{"text":658,"config":659},"The Source",{"href":660,"dataGaName":656,"dataGaLocation":451},"/the-source/",{"text":662,"config":663},"Remote",{"href":664,"dataGaName":665,"dataGaLocation":451},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":667,"items":668},"Connect",[669,674,679,684,689],{"text":670,"config":671},"GitLab Services",{"href":672,"dataGaName":673,"dataGaLocation":451},"/services/","services",{"text":675,"config":676},"Community",{"href":677,"dataGaName":678,"dataGaLocation":451},"/community/","community",{"text":680,"config":681},"Forum",{"href":682,"dataGaName":683,"dataGaLocation":451},"https://forum.gitlab.com/","forum",{"text":685,"config":686},"Events",{"href":687,"dataGaName":688,"dataGaLocation":451},"/events/","events",{"text":690,"config":691},"Partners",{"href":692,"dataGaName":693,"dataGaLocation":451},"/partners/","partners",{"config":695,"title":698,"text":699,"link":700},{"background":696,"textColor":697},"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":701,"config":702},"Read the latest",{"href":703,"dataGaName":704,"dataGaLocation":451},"/whats-new/","whats new",{"text":706,"config":707,"menu":709},"Company",{"dataNavLevelOne":708},"company",{"type":501,"columns":710},[711],{"items":712},[713,718,724,726,731,736,741,746,751,756],{"text":714,"config":715},"About",{"href":716,"dataGaName":717,"dataGaLocation":451},"/company/","about",{"text":719,"config":720,"footerGa":723},"Jobs",{"href":721,"dataGaName":722,"dataGaLocation":451},"/jobs/","jobs",{"dataGaName":722},{"text":685,"config":725},{"href":687,"dataGaName":688,"dataGaLocation":451},{"text":727,"config":728},"Leadership",{"href":729,"dataGaName":730,"dataGaLocation":451},"/company/team/e-group/","leadership",{"text":732,"config":733},"Handbook",{"href":734,"dataGaName":735,"dataGaLocation":451},"https://handbook.gitlab.com/","handbook",{"text":737,"config":738},"Investor relations",{"href":739,"dataGaName":740,"dataGaLocation":451},"https://ir.gitlab.com/","investor relations",{"text":742,"config":743},"Trust Center",{"href":744,"dataGaName":745,"dataGaLocation":451},"/security/","trust center",{"text":747,"config":748},"AI Transparency Center",{"href":749,"dataGaName":750,"dataGaLocation":451},"/ai-transparency-center/","ai transparency center",{"text":752,"config":753},"Newsletter",{"href":754,"dataGaName":755,"dataGaLocation":451},"/company/contact/#contact-forms","newsletter",{"text":757,"config":758},"Press",{"href":759,"dataGaName":760,"dataGaLocation":451},"/press/","press",{"text":762,"config":763,"menu":764},"Contact us",{"dataNavLevelOne":708},{"type":501,"columns":765},[766],{"items":767},[768,771,776],{"text":458,"config":769},{"href":460,"dataGaName":770,"dataGaLocation":451},"talk to sales",{"text":772,"config":773},"Support portal",{"href":774,"dataGaName":775,"dataGaLocation":451},"https://support.gitlab.com","support portal",{"text":777,"config":778},"Customer portal",{"href":779,"dataGaName":780,"dataGaLocation":451},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":782,"login":783,"suggestions":790},"Close",{"text":784,"link":785},"To search repositories and projects, login to",{"text":786,"config":787},"gitlab.com",{"href":465,"dataGaName":788,"dataGaLocation":789},"search login","search",{"text":791,"default":792},"Suggestions",[793,795,799,801,805,809],{"text":316,"config":794},{"href":486,"dataGaName":316,"dataGaLocation":789},{"text":796,"config":797},"Code Suggestions (AI)",{"href":798,"dataGaName":796,"dataGaLocation":789},"/solutions/code-suggestions/",{"text":517,"config":800},{"href":519,"dataGaName":517,"dataGaLocation":789},{"text":802,"config":803},"GitLab on AWS",{"href":804,"dataGaName":802,"dataGaLocation":789},"/partners/technology-partners/aws/",{"text":806,"config":807},"GitLab on Google Cloud",{"href":808,"dataGaName":806,"dataGaLocation":789},"/partners/technology-partners/google-cloud-platform/",{"text":810,"config":811},"Why GitLab?",{"href":494,"dataGaName":810,"dataGaLocation":789},{"freeTrial":813,"mobileIcon":818,"desktopIcon":823,"secondaryButton":826},{"text":814,"config":815},"Start free trial",{"href":816,"dataGaName":456,"dataGaLocation":817},"https://gitlab.com/-/trials/new/","nav",{"altText":819,"config":820},"Gitlab Icon",{"src":821,"dataGaName":822,"dataGaLocation":817},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":819,"config":824},{"src":825,"dataGaName":822,"dataGaLocation":817},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":827,"config":828},"Get Started",{"href":829,"dataGaName":830,"dataGaLocation":817},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":832,"mobileIcon":836,"desktopIcon":838},{"text":833,"config":834},"Learn more about GitLab Duo",{"href":486,"dataGaName":835,"dataGaLocation":817},"gitlab duo",{"altText":819,"config":837},{"src":821,"dataGaName":822,"dataGaLocation":817},{"altText":819,"config":839},{"src":825,"dataGaName":822,"dataGaLocation":817},{"button":841,"mobileIcon":846,"desktopIcon":848},{"text":842,"config":843},"/switch",{"href":844,"dataGaName":845,"dataGaLocation":817},"#contact","switch",{"altText":819,"config":847},{"src":821,"dataGaName":822,"dataGaLocation":817},{"altText":819,"config":849},{"src":850,"dataGaName":822,"dataGaLocation":817},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":852,"mobileIcon":857,"desktopIcon":859},{"text":853,"config":854},"Back to pricing",{"href":599,"dataGaName":855,"dataGaLocation":817,"icon":856},"back to pricing","GoBack",{"altText":819,"config":858},{"src":821,"dataGaName":822,"dataGaLocation":817},{"altText":819,"config":860},{"src":825,"dataGaName":822,"dataGaLocation":817},{"title":862,"button":863,"config":867},"GitLab Orbit is here: The context layer for AI agents.",{"text":492,"config":864},{"href":865,"dataGaName":866,"dataGaLocation":451},"/gitlab-orbit/","orbit",{"layout":868,"disabled":437},"release",{"data":870},{"text":871,"source":872,"edit":878,"contribute":883,"config":888,"items":893,"minimal":1101},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":873,"config":874},"View page source",{"href":875,"dataGaName":876,"dataGaLocation":877},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":879,"config":880},"Edit this page",{"href":881,"dataGaName":882,"dataGaLocation":877},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":884,"config":885},"Please contribute",{"href":886,"dataGaName":887,"dataGaLocation":877},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":889,"facebook":890,"youtube":891,"linkedin":892},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[894,941,995,1039,1069],{"title":597,"links":895,"subMenu":910},[896,900,905],{"text":897,"config":898},"View plans",{"href":599,"dataGaName":899,"dataGaLocation":877},"view plans",{"text":901,"config":902},"Why Premium?",{"href":903,"dataGaName":904,"dataGaLocation":877},"/pricing/premium/","why premium",{"text":906,"config":907},"Why Ultimate?",{"href":908,"dataGaName":909,"dataGaLocation":877},"/pricing/ultimate/","why ultimate",[911],{"title":912,"links":913},"Contact Us",[914,917,919,921,926,931,936],{"text":915,"config":916},"Contact sales",{"href":460,"dataGaName":461,"dataGaLocation":877},{"text":772,"config":918},{"href":774,"dataGaName":775,"dataGaLocation":877},{"text":777,"config":920},{"href":779,"dataGaName":780,"dataGaLocation":877},{"text":922,"config":923},"Status",{"href":924,"dataGaName":925,"dataGaLocation":877},"https://status.gitlab.com/","status",{"text":927,"config":928},"Terms of use",{"href":929,"dataGaName":930,"dataGaLocation":877},"/terms/","terms of use",{"text":932,"config":933},"Privacy statement",{"href":934,"dataGaName":935,"dataGaLocation":877},"/privacy/","privacy statement",{"text":937,"config":938},"Cookie preferences",{"dataGaName":939,"dataGaLocation":877,"id":940,"isOneTrustButton":431},"cookie preferences","ot-sdk-btn",{"title":497,"links":942,"subMenu":951},[943,947],{"text":944,"config":945},"DevSecOps platform",{"href":480,"dataGaName":946,"dataGaLocation":877},"devsecops platform",{"text":948,"config":949},"AI-Assisted Development",{"href":486,"dataGaName":950,"dataGaLocation":877},"ai-assisted development",[952],{"title":953,"links":954},"Topics",[955,960,965,970,975,980,985,990],{"text":956,"config":957},"CICD",{"href":958,"dataGaName":959,"dataGaLocation":877},"/topics/ci-cd/","cicd",{"text":961,"config":962},"GitOps",{"href":963,"dataGaName":964,"dataGaLocation":877},"/topics/gitops/","gitops",{"text":966,"config":967},"DevOps",{"href":968,"dataGaName":969,"dataGaLocation":877},"/topics/devops/","devops",{"text":971,"config":972},"Version Control",{"href":973,"dataGaName":974,"dataGaLocation":877},"/topics/version-control/","version control",{"text":976,"config":977},"DevSecOps",{"href":978,"dataGaName":979,"dataGaLocation":877},"/topics/devsecops/","devsecops",{"text":981,"config":982},"Cloud Native",{"href":983,"dataGaName":984,"dataGaLocation":877},"/topics/cloud-native/","cloud native",{"text":986,"config":987},"AI for Coding",{"href":988,"dataGaName":989,"dataGaLocation":877},"/topics/devops/ai-for-coding/","ai for coding",{"text":991,"config":992},"Agentic AI",{"href":993,"dataGaName":994,"dataGaLocation":877},"/topics/agentic-ai/","agentic ai",{"title":996,"links":997},"Solutions",[998,1000,1002,1007,1011,1014,1018,1021,1023,1026,1029,1034],{"text":541,"config":999},{"href":536,"dataGaName":541,"dataGaLocation":877},{"text":530,"config":1001},{"href":513,"dataGaName":514,"dataGaLocation":877},{"text":1003,"config":1004},"Agile development",{"href":1005,"dataGaName":1006,"dataGaLocation":877},"/solutions/agile-delivery/","agile delivery",{"text":1008,"config":1009},"SCM",{"href":526,"dataGaName":1010,"dataGaLocation":877},"source code management",{"text":956,"config":1012},{"href":519,"dataGaName":1013,"dataGaLocation":877},"continuous integration & delivery",{"text":1015,"config":1016},"Value stream management",{"href":569,"dataGaName":1017,"dataGaLocation":877},"value stream management",{"text":961,"config":1019},{"href":1020,"dataGaName":964,"dataGaLocation":877},"/solutions/gitops/",{"text":579,"config":1022},{"href":582,"dataGaName":583,"dataGaLocation":877},{"text":1024,"config":1025},"Small business",{"href":588,"dataGaName":589,"dataGaLocation":877},{"text":1027,"config":1028},"Public sector",{"href":594,"dataGaName":595,"dataGaLocation":877},{"text":1030,"config":1031},"Education",{"href":1032,"dataGaName":1033,"dataGaLocation":877},"/solutions/education/","education",{"text":1035,"config":1036},"Financial services",{"href":1037,"dataGaName":1038,"dataGaLocation":877},"/solutions/finance/","financial services",{"title":602,"links":1040},[1041,1043,1045,1047,1050,1052,1055,1057,1059,1061,1063,1065,1067],{"text":615,"config":1042},{"href":617,"dataGaName":618,"dataGaLocation":877},{"text":620,"config":1044},{"href":622,"dataGaName":623,"dataGaLocation":877},{"text":625,"config":1046},{"href":627,"dataGaName":628,"dataGaLocation":877},{"text":630,"config":1048},{"href":632,"dataGaName":1049,"dataGaLocation":877},"docs",{"text":653,"config":1051},{"href":655,"dataGaName":656,"dataGaLocation":877},{"text":1053,"config":1054},"What's new",{"href":703,"dataGaName":704,"dataGaLocation":877},{"text":648,"config":1056},{"href":650,"dataGaName":651,"dataGaLocation":877},{"text":662,"config":1058},{"href":664,"dataGaName":665,"dataGaLocation":877},{"text":670,"config":1060},{"href":672,"dataGaName":673,"dataGaLocation":877},{"text":675,"config":1062},{"href":677,"dataGaName":678,"dataGaLocation":877},{"text":680,"config":1064},{"href":682,"dataGaName":683,"dataGaLocation":877},{"text":685,"config":1066},{"href":687,"dataGaName":688,"dataGaLocation":877},{"text":690,"config":1068},{"href":692,"dataGaName":693,"dataGaLocation":877},{"title":706,"links":1070},[1071,1073,1075,1077,1079,1081,1085,1090,1092,1094,1096],{"text":714,"config":1072},{"href":716,"dataGaName":708,"dataGaLocation":877},{"text":719,"config":1074},{"href":721,"dataGaName":722,"dataGaLocation":877},{"text":727,"config":1076},{"href":729,"dataGaName":730,"dataGaLocation":877},{"text":732,"config":1078},{"href":734,"dataGaName":735,"dataGaLocation":877},{"text":737,"config":1080},{"href":739,"dataGaName":740,"dataGaLocation":877},{"text":1082,"config":1083},"Sustainability",{"href":1084,"dataGaName":1082,"dataGaLocation":877},"/sustainability/",{"text":1086,"config":1087},"Diversity, inclusion and belonging (DIB)",{"href":1088,"dataGaName":1089,"dataGaLocation":877},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":742,"config":1091},{"href":744,"dataGaName":745,"dataGaLocation":877},{"text":752,"config":1093},{"href":754,"dataGaName":755,"dataGaLocation":877},{"text":757,"config":1095},{"href":759,"dataGaName":760,"dataGaLocation":877},{"text":1097,"config":1098},"Modern Slavery Transparency Statement",{"href":1099,"dataGaName":1100,"dataGaLocation":877},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":1102},[1103,1106,1109],{"text":1104,"config":1105},"Terms",{"href":929,"dataGaName":930,"dataGaLocation":877},{"text":1107,"config":1108},"Cookies",{"dataGaName":939,"dataGaLocation":877,"id":940,"isOneTrustButton":431},{"text":1110,"config":1111},"Privacy",{"href":934,"dataGaName":935,"dataGaLocation":877},[1113],{"id":1114,"title":7,"body":430,"config":1115,"content":1117,"description":430,"extension":1120,"meta":1121,"navigation":431,"path":1122,"seo":1123,"stem":1124,"__hash__":1125},"blogAuthors/en-us/blog/authors/jessica-taylor.yml",{"template":1116},"BlogAuthor",{"name":7,"config":1118},{"headshot":1119},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1779985822/cbwonn34q2s6nlhtspjw.png","yml",{},"/en-us/blog/authors/jessica-taylor",{},"en-us/blog/authors/jessica-taylor","snalzL2DMwy9vP7FFb3sVPuJhVpreUrC0-5YXtNxNUg",[1127,1135,1142],{"title":1128,"description":1129,"heroImage":1130,"category":426,"date":1131,"authors":1132,"slug":1134,"externalUrl":430},"Introducing GitLab Orbit: Full code and lifecycle context, in one query","With Orbit, your software agents are up to 11 times faster, use up to 4.5 times fewer tokens, and answer questions you couldn’t before.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1780996524/sd1vpl8empy26wizarqj.png","2026-06-10",[1133],"Rebecca Carter","introducing-gitlab-orbit",{"title":1136,"description":1137,"heroImage":1138,"category":426,"date":1131,"authors":1139,"slug":1141,"externalUrl":430},"GitLab Flex: Commit once, reshape your seats and AI spend","In the agentic era you can't predict seats, AI usage, or which capabilities you'll need next. GitLab Flex is one commitment that adjusts as your needs change.\n","https://res.cloudinary.com/about-gitlab-com/image/upload/v1772047747/ntihfmnu2fepamqemaas.png",[1140],"Talia Armato-Helle","introducing-gitlab-flex",{"title":1143,"description":1144,"heroImage":1145,"category":426,"date":1131,"authors":1146,"slug":1148,"externalUrl":430},"GitLab: Built for the agentic engineering era","What we announced at GitLab Transcend, and how one platform delivers agentic speed with the control enterprises need.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1781032585/go3d7pb9opmux7rwhpev.png",[1147],"Manav Khurana","gitlab-transcend-announcements",{"promotions":1150},[1151,1164,1175,1187],{"id":1152,"categories":1153,"header":1154,"text":1155,"button":1156,"image":1161},"ai-modernization",[426],"Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":1157,"config":1158},"Get your AI maturity score",{"href":1159,"dataGaName":1160,"dataGaLocation":656},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":1162},{"src":1163},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1165,"categories":1166,"header":1167,"text":1155,"button":1168,"image":1172},"devops-modernization",[443,979],"Are you just managing tools or shipping innovation?",{"text":1169,"config":1170},"Get your DevOps maturity score",{"href":1171,"dataGaName":1160,"dataGaLocation":656},"/assessments/devops-modernization-assessment/",{"config":1173},{"src":1174},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1176,"categories":1177,"header":1179,"text":1155,"button":1180,"image":1184},"security-modernization",[1178],"security","Are you trading speed for security?",{"text":1181,"config":1182},"Get your security maturity score",{"href":1183,"dataGaName":1160,"dataGaLocation":656},"/assessments/security-modernization-assessment/",{"config":1185},{"src":1186},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1188,"paths":1189,"header":1192,"text":1193,"button":1194,"image":1199},"github-azure-migration",[1190,1191],"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":1195,"config":1196},"See how GitLab compares to GitHub",{"href":1197,"dataGaName":1198,"dataGaLocation":656},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1200},{"src":1174},{"header":1202,"blurb":1203,"button":1204,"secondaryButton":1209},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":1205,"config":1206},"Get your free trial",{"href":1207,"dataGaName":456,"dataGaLocation":1208},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":915,"config":1210},{"href":460,"dataGaName":461,"dataGaLocation":1208},1781392680776]