@cnbcool/cnb-api-generate 2.0.0 → 2.1.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.
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { printJSON } from './print-json';
|
|
1
2
|
import { summarizeResponse } from './summary-extractors';
|
|
2
3
|
|
|
3
4
|
/**
|
|
@@ -49,7 +50,7 @@ export function isStandardResponse(response: any): boolean {
|
|
|
49
50
|
export function formatOutput(response: any, verbose: boolean, summary: boolean, toolKey: string): string {
|
|
50
51
|
// --verbose 模式:输出完整原始信息
|
|
51
52
|
if (verbose) {
|
|
52
|
-
return
|
|
53
|
+
return printJSON(response, verbose);
|
|
53
54
|
}
|
|
54
55
|
|
|
55
56
|
// converter 可能返回裸 data(没有标准 {status, data} 结构),直接输出
|
|
@@ -57,10 +58,10 @@ export function formatOutput(response: any, verbose: boolean, summary: boolean,
|
|
|
57
58
|
if (summary) {
|
|
58
59
|
const summarized = summarizeResponse(response, toolKey);
|
|
59
60
|
if (summarized !== null) {
|
|
60
|
-
return
|
|
61
|
+
return printJSON(summarized);
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
|
-
return
|
|
64
|
+
return printJSON(response);
|
|
64
65
|
}
|
|
65
66
|
|
|
66
67
|
// 精简响应
|
|
@@ -74,5 +75,5 @@ export function formatOutput(response: any, verbose: boolean, summary: boolean,
|
|
|
74
75
|
}
|
|
75
76
|
}
|
|
76
77
|
|
|
77
|
-
return
|
|
78
|
+
return printJSON(compact);
|
|
78
79
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 将数据转换为格式化的 JSON 字符串
|
|
3
|
+
* @param data 要序列化的数据(可以是任意类型)缩进)
|
|
4
|
+
* @param verbose 是否 verbose 模式
|
|
5
|
+
* @returns 格式化的 JSON 字符串,如果序列化失败则返回错误信息的 JSON
|
|
6
|
+
*/
|
|
7
|
+
export function printJSON(
|
|
8
|
+
data: Record<string, any> | Array<any>,
|
|
9
|
+
verbose: boolean = false
|
|
10
|
+
): string {
|
|
11
|
+
return verbose ? JSON.stringify(data, null, 2) : JSON.stringify(data);
|
|
12
|
+
}
|
package/package.json
CHANGED
package/skills-template/SKILL.md
CHANGED
|
@@ -12,30 +12,29 @@ description: CNB OpenAPI 交互能力,支持仓库、Issue、PR、流水线、
|
|
|
12
12
|
issues 快捷命令:
|
|
13
13
|
- `<$CNB_CLI_CMD$> issues get` — 获取 Issue 详情
|
|
14
14
|
- `<$CNB_CLI_CMD$> issues list-comments` — 列出 Issue 评论
|
|
15
|
-
- `<$CNB_CLI_CMD$> issues comment --
|
|
15
|
+
- `<$CNB_CLI_CMD$> issues comment --body 内容` — 发表 Issue 评论
|
|
16
16
|
- `<$CNB_CLI_CMD$> issues close` — 关闭 Issue
|
|
17
17
|
- `<$CNB_CLI_CMD$> issues open` — 打开 Issue
|
|
18
18
|
- `<$CNB_CLI_CMD$> issues list-labels` — 列出 Issue 标签
|
|
19
|
-
- `<$CNB_CLI_CMD$> issues add-labels --
|
|
19
|
+
- `<$CNB_CLI_CMD$> issues add-labels --labels bug --labels feature` — 添加 Issue 标签
|
|
20
20
|
- `<$CNB_CLI_CMD$> issues list-assignees` — 查看 Issue 处理人
|
|
21
|
-
- `<$CNB_CLI_CMD$> issues add-assignees --
|
|
22
|
-
- `<$CNB_CLI_CMD$> issues upload-file --
|
|
23
|
-
- `<$CNB_CLI_CMD$> issues upload-image --
|
|
21
|
+
- `<$CNB_CLI_CMD$> issues add-assignees --assignees username` — 添加 Issue 处理人
|
|
22
|
+
- `<$CNB_CLI_CMD$> issues upload-file --file 文件路径` — 上传文件到 Issue
|
|
23
|
+
- `<$CNB_CLI_CMD$> issues upload-image --file 图片路径` — 上传图片到 Issue
|
|
24
24
|
|
|
25
25
|
pulls 快捷命令:
|
|
26
26
|
- `<$CNB_CLI_CMD$> pulls get` — 获取 PR 详情
|
|
27
27
|
- `<$CNB_CLI_CMD$> pulls list-files` — 列出 PR 变更文件
|
|
28
28
|
- `<$CNB_CLI_CMD$> pulls list-commits` — 列出 PR 提交记录
|
|
29
29
|
- `<$CNB_CLI_CMD$> pulls list-comments` — 列出 PR 评论
|
|
30
|
-
- `<$CNB_CLI_CMD$> pulls comment --
|
|
30
|
+
- `<$CNB_CLI_CMD$> pulls comment --body 内容` — 发表 PR 评论
|
|
31
31
|
- `<$CNB_CLI_CMD$> pulls list-labels` — 列出 PR 标签
|
|
32
|
-
- `<$CNB_CLI_CMD$> pulls add-labels --
|
|
32
|
+
- `<$CNB_CLI_CMD$> pulls add-labels --labels ready --labels approved` — 添加 PR 标签
|
|
33
33
|
- `<$CNB_CLI_CMD$> pulls check-status` — 查看 CI 状态
|
|
34
34
|
- `<$CNB_CLI_CMD$> pulls list-reviews` — 查看评审列表
|
|
35
35
|
- `<$CNB_CLI_CMD$> pulls list-assignees` — 查看 PR 处理人
|
|
36
|
-
- `<$CNB_CLI_CMD$> pulls
|
|
37
|
-
- `<$CNB_CLI_CMD$> pulls upload-
|
|
38
|
-
- `<$CNB_CLI_CMD$> pulls upload-image --data '{"file":"本地图片路径"}'` — 上传图片到 PR
|
|
36
|
+
- `<$CNB_CLI_CMD$> pulls upload-file --file 文件路径` — 上传文件到 PR
|
|
37
|
+
- `<$CNB_CLI_CMD$> pulls upload-image --file 图片路径` — 上传图片到 PR
|
|
39
38
|
|
|
40
39
|
注意:
|
|
41
40
|
- **路径参数自动注入**:仓库 slug、Issue/PR 编号优先从环境变量自动获取,无需额外传入任何其他参数
|