@leeguoo/zentao-mcp 0.5.4 → 0.5.6
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 +4 -0
- package/package.json +1 -1
- package/skills/zentao/SKILL.md +90 -0
- package/skills/zentao-cli.md +0 -167
package/README.md
CHANGED
package/package.json
CHANGED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: zentao
|
|
3
|
+
description: Use the zentao CLI to login and query ZenTao products and bugs. ZENTAO_URL usually includes /zentao.
|
|
4
|
+
homepage: https://www.npmjs.com/package/@leeguoo/zentao-mcp
|
|
5
|
+
metadata: {"openclaw":{"emoji":"🐞","install":[{"id":"node","kind":"node","package":"@leeguoo/zentao-mcp","bins":["zentao"],"label":"Install zentao CLI (node)"}]}}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# zentao (ZenTao CLI)
|
|
9
|
+
|
|
10
|
+
## When to use this skill
|
|
11
|
+
|
|
12
|
+
Use this skill when the user asks to:
|
|
13
|
+
|
|
14
|
+
- login to ZenTao via the CLI
|
|
15
|
+
- list products
|
|
16
|
+
- list bugs for a product
|
|
17
|
+
- view bug details
|
|
18
|
+
- list the user's own bugs
|
|
19
|
+
|
|
20
|
+
## Installation (recommended)
|
|
21
|
+
|
|
22
|
+
To install globally with pnpm:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
pnpm i -g @leeguoo/zentao-mcp
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
If pnpm is not installed:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npm i -g pnpm
|
|
32
|
+
pnpm i -g @leeguoo/zentao-mcp
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Login workflow
|
|
36
|
+
|
|
37
|
+
1) Run login once:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
zentao login \
|
|
41
|
+
--zentao-url="https://zentao.example.com/zentao" \
|
|
42
|
+
--zentao-account="leo" \
|
|
43
|
+
--zentao-password="***"
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
2) This writes credentials to:
|
|
47
|
+
|
|
48
|
+
- `~/.config/zentao/config.toml` (or `$XDG_CONFIG_HOME/zentao/config.toml`)
|
|
49
|
+
|
|
50
|
+
3) Verify:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
zentao whoami
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
IMPORTANT: `--zentao-url` usually must include `/zentao`.
|
|
57
|
+
If login returns HTML 404, the base path is likely missing `/zentao`.
|
|
58
|
+
|
|
59
|
+
## Commands
|
|
60
|
+
|
|
61
|
+
List products (simple by default):
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
zentao products list
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
List bugs for a product:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
zentao bugs list --product 6
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Get bug details:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
zentao bug get --id 1329
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
List my bugs (include details):
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
zentao bugs mine --status active --include-details
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Full JSON output:
|
|
86
|
+
|
|
87
|
+
- `zentao products list --json`
|
|
88
|
+
- `zentao bugs list --product 6 --json`
|
|
89
|
+
- `zentao bug get --id 1329 --json`
|
|
90
|
+
- `zentao bugs mine --include-details --json`
|
package/skills/zentao-cli.md
DELETED
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
# zentao (ZenTao CLI)
|
|
2
|
-
|
|
3
|
-
This package provides a CLI for ZenTao REST API (products + bugs).
|
|
4
|
-
|
|
5
|
-
When instructing users, assume the primary workflow is:
|
|
6
|
-
|
|
7
|
-
1) install with pnpm globally
|
|
8
|
-
2) `zentao login` once
|
|
9
|
-
3) run `zentao ...` commands without passing credentials each time
|
|
10
|
-
|
|
11
|
-
## Installation
|
|
12
|
-
|
|
13
|
-
Global install (recommended):
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
pnpm i -g @leeguoo/zentao-mcp
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
If pnpm is not installed:
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
npm i -g pnpm
|
|
23
|
-
pnpm i -g @leeguoo/zentao-mcp
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Or use without installing:
|
|
27
|
-
|
|
28
|
-
```bash
|
|
29
|
-
npx -y @leeguoo/zentao-mcp --help
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
This installs the `zentao` command (and keeps `zentao-mcp` as a compatibility alias).
|
|
33
|
-
|
|
34
|
-
## Authentication
|
|
35
|
-
|
|
36
|
-
Recommended: login once (stored locally):
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
zentao login --zentao-url=https://zentao.example.com/zentao --zentao-account=leo --zentao-password=***
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
This writes:
|
|
43
|
-
|
|
44
|
-
- `~/.config/zentao/config.toml` (or `$XDG_CONFIG_HOME/zentao/config.toml`)
|
|
45
|
-
|
|
46
|
-
IMPORTANT: `zentaoUrl` should usually include `/zentao`.
|
|
47
|
-
If login returns 404 HTML, your base path is likely missing `/zentao`.
|
|
48
|
-
|
|
49
|
-
You can pass credentials via environment variables:
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
export ZENTAO_URL="https://zentao.example.com/zentao"
|
|
53
|
-
export ZENTAO_ACCOUNT="leo"
|
|
54
|
-
export ZENTAO_PASSWORD="***"
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Or via CLI flags:
|
|
58
|
-
|
|
59
|
-
- `--zentao-url`
|
|
60
|
-
- `--zentao-account`
|
|
61
|
-
- `--zentao-password`
|
|
62
|
-
|
|
63
|
-
## Commands
|
|
64
|
-
|
|
65
|
-
### List products
|
|
66
|
-
|
|
67
|
-
```bash
|
|
68
|
-
zentao products list
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
By default, this prints a simple TSV table (key fields). To get full JSON:
|
|
72
|
-
|
|
73
|
-
Full JSON output:
|
|
74
|
-
|
|
75
|
-
```bash
|
|
76
|
-
zentao products list --json
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
### List bugs for a product
|
|
80
|
-
|
|
81
|
-
```bash
|
|
82
|
-
zentao bugs list --product 1
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
By default, this prints a simple TSV table. To get full JSON:
|
|
86
|
-
|
|
87
|
-
Full JSON output:
|
|
88
|
-
|
|
89
|
-
```bash
|
|
90
|
-
zentao bugs list --product 1 --json
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Get bug details
|
|
94
|
-
|
|
95
|
-
```bash
|
|
96
|
-
zentao bug get --id 123
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
By default, this prints a simple TSV (single row). To get full JSON:
|
|
100
|
-
|
|
101
|
-
Full JSON output:
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
zentao bug get --id 123 --json
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
### List my bugs
|
|
108
|
-
|
|
109
|
-
```bash
|
|
110
|
-
zentao bugs mine --scope assigned --status active
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
By default, this prints a simple summary table. To include bug details:
|
|
114
|
-
|
|
115
|
-
```bash
|
|
116
|
-
zentao bugs mine --status active --include-details
|
|
117
|
-
```
|
|
118
|
-
|
|
119
|
-
Full JSON output:
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
zentao bugs mine --scope assigned --status active --json
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
Common options:
|
|
126
|
-
|
|
127
|
-
- `--scope`: `assigned|opened|resolved|all`
|
|
128
|
-
- `--status`: `active|resolved|closed|all` (supports `,` or `|` separated)
|
|
129
|
-
- `--include-details`: include bug list in response
|
|
130
|
-
- `--product-ids`: limit scan to specific products, e.g. `--product-ids=1,2,3`
|
|
131
|
-
|
|
132
|
-
### Self test
|
|
133
|
-
|
|
134
|
-
```bash
|
|
135
|
-
zentao self-test
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
Use `--expected N` to make it CI-friendly (exit code 2 when mismatch):
|
|
139
|
-
|
|
140
|
-
```bash
|
|
141
|
-
zentao self-test --expected 0
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
## Whoami
|
|
145
|
-
|
|
146
|
-
After login:
|
|
147
|
-
|
|
148
|
-
```bash
|
|
149
|
-
zentao whoami
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
### Release (maintainers)
|
|
153
|
-
|
|
154
|
-
Requires `git`, `npm`, and `gh`.
|
|
155
|
-
|
|
156
|
-
```bash
|
|
157
|
-
zentao release patch --dry-run
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
Recommended publishing flow is via GitHub Actions npm Trusted Publisher (OIDC):
|
|
161
|
-
|
|
162
|
-
1) bump `package.json` version
|
|
163
|
-
2) create a matching tag `vX.Y.Z`
|
|
164
|
-
3) push the tag to GitHub
|
|
165
|
-
4) workflow `publish-npm.yml` publishes to npm
|
|
166
|
-
|
|
167
|
-
If you use Actions publishing, prefer `zentao release patch --skip-publish` locally.
|