@gitlab/duo-cli 8.77.0 → 8.78.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -90
- package/dist/index.js +912 -774
- package/dist/index.js.map +84 -12
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,110 +4,32 @@ GitLab Duo for your command line. An AI-powered CLI tool that brings
|
|
|
4
4
|
[GitLab Duo Chat (Agentic)](https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/) to your
|
|
5
5
|
terminal.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
📖 **For installation, usage, and configuration see the [GitLab Duo CLI documentation](https://docs.gitlab.com/user/gitlab_duo_cli/).**
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
- Build, modify, refactor, and modernize code.
|
|
11
|
-
- Troubleshoot errors and fix code issues.
|
|
12
|
-
- Automate CI/CD configuration, troubleshoot pipeline errors, and optimize pipelines.
|
|
13
|
-
- Perform multi-step development tasks autonomously.
|
|
9
|
+
## Development
|
|
14
10
|
|
|
15
|
-
|
|
16
|
-
and some features might not work as expected.
|
|
17
|
-
|
|
18
|
-
## Installation
|
|
19
|
-
|
|
20
|
-
Prerequisites:
|
|
21
|
-
|
|
22
|
-
- Node.js 22 or later.
|
|
23
|
-
- A [personal access token](https://docs.gitlab.com/user/profile/personal_access_tokens/) with `api`
|
|
24
|
-
scope.
|
|
25
|
-
|
|
26
|
-
To install the GitLab Duo CLI globally, run:
|
|
27
|
-
|
|
28
|
-
```shell
|
|
29
|
-
npm install -g @gitlab/duo-cli
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### Alternative: Install using installation script
|
|
33
|
-
|
|
34
|
-
You can use the installation script to install the GitLab Duo CLI without Node.js:
|
|
35
|
-
|
|
36
|
-
#### macOS and Linux
|
|
37
|
-
|
|
38
|
-
```shell
|
|
39
|
-
bash <(curl -fsSL "https://gitlab.com/gitlab-org/editor-extensions/gitlab-lsp/-/raw/main/packages/cli/scripts/install_duo_cli.sh")
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
#### Windows
|
|
43
|
-
|
|
44
|
-
```shell
|
|
45
|
-
irm "https://gitlab.com/gitlab-org/editor-extensions/gitlab-lsp/-/raw/main/packages/cli/scripts/install_duo_cli.ps1" | iex
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
This script will:
|
|
49
|
-
|
|
50
|
-
1. Detect your platform (OS and architecture)
|
|
51
|
-
1. Download the appropriate GitLab Duo CLI binary
|
|
52
|
-
1. Install it to `~/.local/bin/duo`
|
|
53
|
-
1. Update your PATH if needed
|
|
54
|
-
|
|
55
|
-
For non-interactive installation (useful for CI/CD):
|
|
11
|
+
To run the CLI from a local checkout:
|
|
56
12
|
|
|
57
13
|
```shell
|
|
58
|
-
|
|
14
|
+
npm run cli
|
|
59
15
|
```
|
|
60
16
|
|
|
61
|
-
|
|
17
|
+
This builds and launches the app. Pass CLI flags after `--`:
|
|
62
18
|
|
|
63
19
|
```shell
|
|
64
|
-
|
|
20
|
+
npm run cli -- run --goal "example"
|
|
65
21
|
```
|
|
66
22
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
### Updating
|
|
70
|
-
|
|
71
|
-
To update to the latest version:
|
|
72
|
-
|
|
73
|
-
```shell
|
|
74
|
-
npm install -g @gitlab/duo-cli@latest
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
## Usage
|
|
78
|
-
|
|
79
|
-
### Interactive Mode (TUI)
|
|
80
|
-
|
|
81
|
-
Start the interactive terminal UI:
|
|
82
|
-
|
|
83
|
-
```shell
|
|
84
|
-
duo
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Alternatively, you can run the GitLab Duo CLI without installing:
|
|
88
|
-
|
|
89
|
-
```shell
|
|
90
|
-
npx -y @gitlab/duo-cli
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
To run a workflow in headless mode, use the command `duo run`:
|
|
94
|
-
|
|
95
|
-
> [!warning]
|
|
96
|
-
> Headless mode bypasses manual tool approval. Use this mode with caution and in a controlled
|
|
97
|
-
> sandbox environment.
|
|
98
|
-
|
|
99
|
-
```shell
|
|
100
|
-
duo run --goal "Your goal or prompt here"
|
|
101
|
-
```
|
|
23
|
+
For hot-reload development, use `npm run dev:watch` instead.
|
|
102
24
|
|
|
103
|
-
|
|
25
|
+
See the full [Development Guide](./docs/development.md) for prerequisites, building, debugging, testing, and architecture details.
|
|
104
26
|
|
|
105
|
-
|
|
106
|
-
[GitLab Duo CLI documentation](https://docs.gitlab.com/user/gitlab_duo_cli/).
|
|
27
|
+
### Packages
|
|
107
28
|
|
|
108
|
-
|
|
29
|
+
The Duo CLI is split across two packages:
|
|
109
30
|
|
|
110
|
-
|
|
31
|
+
- **`packages/cli`** — CLI entry point, command routing, backend abstraction, and controllers for interactive and headless modes.
|
|
32
|
+
- **[`packages/tui`](../tui/)** — React-based terminal UI built on [Ink](https://github.com/vadimdemedes/ink). Pure presentation layer with zero domain logic. Renders the chat interface, messages, tool calls, diffs, and Markdown.
|
|
111
33
|
|
|
112
34
|
## License
|
|
113
35
|
|