Duo CLI - Duo Agentic Platform in command line
## Implementation Stages Overview
```mermaid
timeline
title Duo Agentic Platform CLI Implementation Stages
🛹 MVC : Architecture proven
: Most tasks can be finished
: Significant IDE chat parity
🚴 Dogfooding <br> (we are here) : Effective for team members
: No critical bugs
: Used beyond editor extensions team
🎧 Headless : CI/CD integration
: Running non-interactive flows
🏍️ Beta : Customer release (beta label)
: Almost complete feature parity
: Polished UI and onboarding
🚗 GA : Full customer release
: Complete feature set
```
## Stage 1: :skateboard: [MVC](https://gitlab.com/groups/gitlab-org/-/epics/19713) :white_check_mark:
CLI can finish the same tasks as IDE Agentic Chat, but with sharp edges and bugs, it is not yet an equivalent replacement for IDE Agentic Chat.
:dart: Goal: **Most tasks can be finished, the tool proves the architecture, and implements a significant part of the IDE Agentic Chat**
:no_entry_sign: Non-goals:
- Polished experience
- Bug-free experience
- Usable for daily driving
- Full feature parity with agentic chat
## Stage 2: :bicyclist: [Dogfooding](https://gitlab.com/groups/gitlab-org/-/epics/19715) :construction:
CLI can finish the same tasks as IDE Agentic Chat. It should be OK to use instead of IDE Agentic Chat for GitLab team members. No critical bugs or UI issues are present.
:dart: Goal: **The tool is effective for use by team members on GitLab.com projects**, people from outside ~"group::editor extensions" use the tool
:no_entry_sign: Non-goals:
- Full support for self-managed
- Windows and Linux support validated
- Project resolution and license recognition
- Telemetry and other must-haves for beta release
- Pleasant onboarding
- Clear error messages and debugging experience, we expect to be more involved when team members reporting bugs
## Stage 2.5: :headphones: [Headless](https://gitlab.com/groups/gitlab-org/-/epics/19714)
Supporting running Duo Workflows from CI/CD orchestrated by the Rails instance.
This stage is not linear like the others and can be released independently of the other stages (most likely between dogfooding and beta).
## Stage 3: :motorcycle: [Beta](https://gitlab.com/groups/gitlab-org/-/epics/19716)
CLI is released to customers with the _beta_ or _experimental_ label, which will set some expectations about CLI stability. The vast majority of features and UX are implemented
:dart: Goal: **Almost complete feature parity with IDE Agentic Chat (which will be GA). Polished UI and onboarding.**
:no_entry_sign: Non-goals:
- Everything that will be scoped out for the first customer-facing release
## Stage 3.5: :motorcycle: [Beta Follow-ups](https://gitlab.com/groups/gitlab-org/-/work_items/20437)
## Stage 4: :red_car: [GA](https://gitlab.com/groups/gitlab-org/-/epics/19717)
## Stage 5: :red_car: [Post-GA](https://gitlab.com/groups/gitlab-org/-/work_items/19785)
This stage will include everything we were comfortable scoping out from Beta.
epic