AI Clients
🚀 Mission
The AI Clients stage owns the surfaces where customers experience GitLab Duo. We bring GitLab’s AI capabilities directly into the tools customers already use — their IDE, terminal, and the GitLab web interface — and we provide the shared client SDK that powers those experiences across platforms.
Organizational Structure
The AI Clients stage is organised into three groups, each with functional teams:
graph TD
S["AI Clients<br>(stage)"] --> DC["Developer Clients<br>(group)"]
S --> SDK["Duo Client SDK<br>(group)"]
S --> CHAT["Duo Chat<br>(group)"]
DC --> CLI[Duo CLI]
DC --> VSC[VS Code]
DC --> JB[JetBrains]
SDK --> SDKT[Duo Client SDK]
CHAT --> WC[Web Chat]
CHAT --> CE[Chat Engine]
| Group | Engineering Manager | Product Manager | UX | Functional Teams |
|---|---|---|---|---|
| Developer Clients | Amr Elhusseiny | James Casey | Yi-Ann Chen | Duo CLI, VS Code, JetBrains |
| Duo Client SDK | Donald Cook | James Casey | Yi-Ann Chen | Duo Client SDK |
| Duo Chat | Donald Cook | Dasha Adushkina | Nick Leonard | Web Chat, Chat Engine |
👥 Leadership
| Person | Role |
|---|---|
Donald Cook
|
Engineering Manager — AI Clients Stage (Duo Client SDK & Duo Chat) |
↳
Amr Elhusseiny
|
Engineering Manager — Developer Clients |
🤝 Stable Counterparts
The following people are stable counterparts of the AI Clients stage:
| Name | Role |
|---|---|
James Casey
|
Director of Product |
Dasha Adushkina
|
Senior Product Manager |
Yi-Ann Chen
|
Senior Product Designer, AI |
Nick Leonard
|
Staff Product Designer, Plan:Project Management |
Erran Carey
|
Staff Fullstack Engineer, AI Powered:Editor Extensions |
Groups
Developer Clients
Owns the editor extension integrations and the Duo CLI. See the Developer Clients group page. Functional teams:
Duo Client SDK
Owns the shared language server and client SDK that powers AI features across all editor extensions. See the Duo Client SDK group page. Functional teams:
Duo Chat
Owns the Duo Chat experience across all surfaces. See the Duo Chat group page. Functional teams:
🏷️ How we label issues and merge requests
Labels power triage-ops automation, reporting, and Technical Writing planning. Every issue and MR should carry section::ai, exactly one stage label (devops::*), exactly one group label (group::*), and the relevant category label(s) — use the combinations below as the default:
| Area | Labels |
|---|---|
| Duo CLI (terminal client) | section::ai, devops::ai clients, group::developer clients, category: duo cli |
| VS Code extension | section::ai, devops::ai clients, group::developer clients, category: vs code |
| JetBrains plugin | section::ai, devops::ai clients, group::developer clients, category: jetbrains |
| Duo Client SDK / Language Server | section::ai, devops::ai clients, group::duo client sdk, category: duo client sdk |
| Duo Chat (UI and in-GitLab chat experiences) | section::ai, devops::ai clients, group::duo chat, category: web chat |
| Duo Chat (backend / chat-engine capability work) | section::ai, devops::ai clients, group::duo chat, category: chat engine |
| Duo Developer (end-to-end flow, Agent Foundations) | section::ai, devops::agent foundations, group::agent developer, category: duo developer |
| Flow Components (reusable flow / orchestration components) | section::ai, devops::agent foundations, group::agent developer, category: flow components |
If a change genuinely spans multiple product areas, attach multiple category labels but keep the stage and group labels aligned to the primary owner.
Legacy Editor Extensions::* labels are not part of this taxonomy — don’t rely on them as ownership signals, and remove them from templates over time.
💬 Where to find us
Slack
We follow the GitLab Slack channel prefix conventions: s_ for the cross-team stage channel, f_ for functional-team channels.
| Channel | Purpose |
|---|---|
#s_ai-clients-questions |
Public-facing AI Clients stage channel for questions and outreach |
#s_ai-clients |
Internal stage channel for team syncs only |
#s_ai-clients-social |
Stage social channel |
#f_duo_cli |
Duo CLI functional team |
#f_vscode_extension |
VS Code extension functional team |
#f_jetbrains_plugin |
JetBrains plugin functional team |
#f_duo-client-sdk |
Duo Client SDK functional team (renamed from #f_language_server) |
#duo-chat-lounge |
Duo Chat lounge |
Shared Calendar
AI Clients Shared Calendar (Calendar ID: c_673d889354d021f7fa9f20a003b5867185a9bf12989b5eaacbc8b537cc9ef27c@group.calendar.google.com)
Product categories
Each AI Clients group owns product categories, documented on the product categories page:
- Developer Clients group — Duo CLI, VS Code, JetBrains
- Duo Chat group — Web Chat, Chat Engine
- Duo Client SDK group — Duo Client SDK
Duo Chat Group
Duo Client SDK Group
Ownership and boundaries - AI Clients
92e1b4d8)
Donald Cook
Amr Elhusseiny
James Casey
Dasha Adushkina
Nick Leonard
Erran Carey