Synthèse
Orbit ingests software development lifecycle data via change-data-capture into ClickHouse, parses code in 12 languages (Ruby, Java, Kotlin, Python, TypeScript, JavaScript, Rust, Go, C#, C, C++, PHP) through the Rails internal API, and serves the combined graph over a Cypher-like DSL, MCP, REST, and the GitLab CLI. At GitLab's own scale, the indexer covers over 40,000 projects, 500 million nodes, and 2 billion edges in under 45 minutes. An event-driven engine picks up every change as it ships, so
Orbit ingests software development lifecycle data via change-data-capture into ClickHouse, parses code in 12 languages (Ruby, Java, Kotlin, Python, TypeScript, JavaScript, Rust, Go, C#, C, C++, PHP) through the Rails internal API, and serves the combined graph over a Cypher-like DSL, MCP, REST, and the GitLab CLI. At GitLab's own scale, the indexer covers over 40,000 projects, 500 million nodes, and 2 billion edges in under 45 minutes. An event-driven engine picks up every change as it ships, so the graph stays current. Indexing runs as a separate service; query traffic never hits your GitLab instance. Authorization mirrors GitLab permissions, so agents see exactly what their user can see in the UI.
The query engine is built like a compiler: Every query goes through validation, planning, optimization, and security passes before it touches the database, so query speed doesn't degrade as your data grows. There is no separate data infrastructure to stand up. Orbit builds on data GitLab already captures: issues, merge requests, pipelines, code, security findings, deployments, and incidents. You get value from day one with no new instrumentation. Agents on GitLab Duo Agent Platform query the graph natively.
External agents like Claude Code, Codex, and OpenCode connect through MCP and the GitLab CLI. Custom agents and internal tooling connect through REST. One graph, shared across your engineering organization.
about.gitlab.com · 10 juin