expert_eval_cli 1.4.0 → 2.0.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 +40 -21
- package/dist/client.d.ts +13 -19
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +36 -67
- package/dist/client.js.map +1 -1
- package/dist/commands/eval-records.d.ts.map +1 -1
- package/dist/commands/eval-records.js +76 -111
- package/dist/commands/eval-records.js.map +1 -1
- package/dist/commands/eval-tasks.d.ts.map +1 -1
- package/dist/commands/eval-tasks.js +73 -78
- package/dist/commands/eval-tasks.js.map +1 -1
- package/dist/commands/experts.d.ts.map +1 -1
- package/dist/commands/experts.js +110 -102
- package/dist/commands/experts.js.map +1 -1
- package/dist/commands/versions.d.ts.map +1 -1
- package/dist/commands/versions.js +83 -70
- package/dist/commands/versions.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -5
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +96 -174
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +4 -3
- package/skill/SKILL.md +15 -11
- package/skill/references/api-reference.md +61 -55
- package/dist/commands/eval-cases.d.ts +0 -3
- package/dist/commands/eval-cases.d.ts.map +0 -1
- package/dist/commands/eval-cases.js +0 -75
- package/dist/commands/eval-cases.js.map +0 -1
- package/dist/commands/eval-items.d.ts +0 -3
- package/dist/commands/eval-items.d.ts.map +0 -1
- package/dist/commands/eval-items.js +0 -204
- package/dist/commands/eval-items.js.map +0 -1
package/dist/commands/experts.js
CHANGED
|
@@ -38,6 +38,27 @@ const commander_1 = require("commander");
|
|
|
38
38
|
const client = __importStar(require("../client.js"));
|
|
39
39
|
const output_js_1 = require("../output.js");
|
|
40
40
|
const utils_js_1 = require("../utils.js");
|
|
41
|
+
const EXPERT_STATUSES = ['developing', 'adjusting', 'published', 'paused'];
|
|
42
|
+
function parseExpertStatus(value) {
|
|
43
|
+
if (value === undefined)
|
|
44
|
+
return undefined;
|
|
45
|
+
if (EXPERT_STATUSES.includes(value))
|
|
46
|
+
return value;
|
|
47
|
+
throw new Error(`Invalid status "${value}". Allowed: ${EXPERT_STATUSES.join(', ')}`);
|
|
48
|
+
}
|
|
49
|
+
function toExpertRows(items) {
|
|
50
|
+
return items.map((e) => ({
|
|
51
|
+
id: e.id,
|
|
52
|
+
expertId: e.expertId,
|
|
53
|
+
name: e.name,
|
|
54
|
+
status: e.status,
|
|
55
|
+
owner: e.owner || '',
|
|
56
|
+
latestVersionNo: e.latestVersionNo ?? '',
|
|
57
|
+
latestVersionId: e.latestVersionId || '',
|
|
58
|
+
latestUploadedAt: e.latestUploadedAt || '',
|
|
59
|
+
description: e.description || '',
|
|
60
|
+
}));
|
|
61
|
+
}
|
|
41
62
|
function makeExpertsCommand() {
|
|
42
63
|
const experts = new commander_1.Command('experts').description('Manage experts');
|
|
43
64
|
experts
|
|
@@ -45,7 +66,8 @@ function makeExpertsCommand() {
|
|
|
45
66
|
.description('List experts with pagination')
|
|
46
67
|
.option('--page <n>', 'Page number (1-based)', '1')
|
|
47
68
|
.option('--page-size <n>', 'Items per page', '50')
|
|
48
|
-
.option('--keyword <text>', 'Filter by
|
|
69
|
+
.option('--keyword <text>', 'Filter by name / business ID / description')
|
|
70
|
+
.option('--status <status>', `Filter by status: ${EXPERT_STATUSES.join(', ')}`)
|
|
49
71
|
.action(async (options) => {
|
|
50
72
|
const globalOpts = experts.optsWithGlobals();
|
|
51
73
|
try {
|
|
@@ -53,6 +75,7 @@ function makeExpertsCommand() {
|
|
|
53
75
|
page: (0, utils_js_1.parseNumber)(options.page),
|
|
54
76
|
pageSize: (0, utils_js_1.parseNumber)(options.pageSize),
|
|
55
77
|
keyword: options.keyword,
|
|
78
|
+
status: parseExpertStatus(options.status),
|
|
56
79
|
};
|
|
57
80
|
const result = await client.listExperts(params);
|
|
58
81
|
if (globalOpts.quiet)
|
|
@@ -60,164 +83,149 @@ function makeExpertsCommand() {
|
|
|
60
83
|
const fmt = globalOpts.format === 'json' || !process.stdout.isTTY ? 'json' : 'csv';
|
|
61
84
|
if (fmt === 'json') {
|
|
62
85
|
(0, output_js_1.printJson)(result, globalOpts);
|
|
86
|
+
return;
|
|
63
87
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
(0, output_js_1.printCsv)(result.items.map((e) => ({
|
|
70
|
-
id: e.id,
|
|
71
|
-
expertId: e.expertId,
|
|
72
|
-
name: e.name,
|
|
73
|
-
type: e.type || '',
|
|
74
|
-
field: e.field || '',
|
|
75
|
-
latestVersionTask: e.latestVersionTask || '',
|
|
76
|
-
tags: (e.tags || []).join(', '),
|
|
77
|
-
description: e.description || '',
|
|
78
|
-
owner: (e.owner || []).join(', '),
|
|
79
|
-
})), globalOpts);
|
|
80
|
-
console.log(`\nPage ${result.page}/${Math.ceil(result.total / result.pageSize)} | Total: ${result.total}`);
|
|
88
|
+
if (result.items.length === 0) {
|
|
89
|
+
console.log('No experts found.');
|
|
90
|
+
return;
|
|
81
91
|
}
|
|
92
|
+
(0, output_js_1.printCsv)(toExpertRows(result.items), globalOpts);
|
|
93
|
+
console.log(`\nPage ${result.page}/${Math.ceil(result.total / result.pageSize)} | Total: ${result.total}`);
|
|
82
94
|
}
|
|
83
95
|
catch (err) {
|
|
84
96
|
(0, output_js_1.printError)(err, globalOpts);
|
|
85
97
|
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
86
|
-
return;
|
|
87
98
|
}
|
|
88
99
|
});
|
|
89
100
|
experts
|
|
90
101
|
.command('get')
|
|
91
|
-
.description('Get expert by ID')
|
|
92
|
-
.argument('<
|
|
93
|
-
.action(async (
|
|
102
|
+
.description('Get expert by business ID')
|
|
103
|
+
.argument('<expertId>', 'Expert business ID')
|
|
104
|
+
.action(async (expertId) => {
|
|
94
105
|
const globalOpts = experts.optsWithGlobals();
|
|
95
106
|
try {
|
|
96
|
-
const item = await client.getExpert(
|
|
107
|
+
const item = await client.getExpert(expertId);
|
|
97
108
|
(0, output_js_1.printItem)(item, globalOpts);
|
|
98
109
|
}
|
|
99
110
|
catch (err) {
|
|
100
111
|
(0, output_js_1.printError)(err, globalOpts);
|
|
101
112
|
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
102
|
-
return;
|
|
103
113
|
}
|
|
104
114
|
});
|
|
105
115
|
experts
|
|
106
116
|
.command('create')
|
|
107
117
|
.description('Create a new expert')
|
|
108
|
-
.requiredOption('--expert-id <id>', 'Unique expert business ID')
|
|
118
|
+
.requiredOption('--expert-id <id>', 'Unique expert business ID (kebab-case)')
|
|
109
119
|
.requiredOption('--name <name>', 'Expert name')
|
|
110
|
-
.option('--
|
|
111
|
-
.option('--type <type>', 'Type (e.g. panel)')
|
|
112
|
-
.option('--field <field>', 'Field (e.g. AI与大模型)')
|
|
113
|
-
.option('--title <title>', 'Title / honorary title')
|
|
114
|
-
.option('--organization <org>', 'Organization')
|
|
115
|
-
.option('--members-count <n>', 'Members count')
|
|
116
|
-
.option('--members <list>', 'Comma-separated member names')
|
|
117
|
-
.option('--tags <list>', 'Comma-separated tags')
|
|
120
|
+
.option('--owner <userId>', 'Owner userId')
|
|
118
121
|
.option('--description <text>', 'Description')
|
|
119
|
-
.option('--
|
|
120
|
-
.option('--recommended-question-en <text>', 'Recommended question in English (en-US)')
|
|
121
|
-
.option('--owner <list>', 'Comma-separated owner user IDs')
|
|
122
|
-
.option('--latest-version-task <id>', 'Latest version task ID')
|
|
122
|
+
.option('--status <status>', `Status, default developing. Allowed: ${EXPERT_STATUSES.join(', ')}`)
|
|
123
123
|
.action(async (options) => {
|
|
124
124
|
const globalOpts = experts.optsWithGlobals();
|
|
125
125
|
try {
|
|
126
|
-
const
|
|
127
|
-
? {
|
|
128
|
-
...(options.recommendedQuestionZh ? { 'zh-CN': options.recommendedQuestionZh } : {}),
|
|
129
|
-
...(options.recommendedQuestionEn ? { 'en-US': options.recommendedQuestionEn } : {}),
|
|
130
|
-
}
|
|
131
|
-
: null;
|
|
132
|
-
const item = await client.createExpert({
|
|
126
|
+
const payload = {
|
|
133
127
|
expertId: options.expertId,
|
|
134
128
|
name: options.name,
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
description: options.description || null,
|
|
144
|
-
recommendedQuestion,
|
|
145
|
-
owner: options.owner ? options.owner.split(',').map((t) => t.trim()) : undefined,
|
|
146
|
-
latestVersionTask: options.latestVersionTask || null,
|
|
147
|
-
});
|
|
129
|
+
};
|
|
130
|
+
if (options.owner !== undefined)
|
|
131
|
+
payload.owner = options.owner;
|
|
132
|
+
if (options.description !== undefined)
|
|
133
|
+
payload.description = options.description;
|
|
134
|
+
if (options.status !== undefined)
|
|
135
|
+
payload.status = parseExpertStatus(options.status);
|
|
136
|
+
const item = await client.createExpert(payload);
|
|
148
137
|
(0, output_js_1.printItem)(item, globalOpts);
|
|
149
138
|
}
|
|
150
139
|
catch (err) {
|
|
151
140
|
(0, output_js_1.printError)(err, globalOpts);
|
|
152
141
|
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
153
|
-
return;
|
|
154
142
|
}
|
|
155
143
|
});
|
|
156
144
|
experts
|
|
157
145
|
.command('update')
|
|
158
|
-
.description('Update an expert
|
|
159
|
-
.
|
|
160
|
-
.
|
|
161
|
-
.option('--
|
|
162
|
-
.option('--
|
|
163
|
-
.option('--field <field>', 'Field (e.g. AI与大模型)')
|
|
164
|
-
.option('--title <title>', 'Title / honorary title')
|
|
165
|
-
.option('--organization <org>', 'Organization')
|
|
166
|
-
.option('--members-count <n>', 'Members count')
|
|
167
|
-
.option('--members <list>', 'Comma-separated member names')
|
|
168
|
-
.option('--tags <list>', 'Comma-separated tags')
|
|
146
|
+
.description('Update an expert partially by business ID')
|
|
147
|
+
.argument('<expertId>', 'Expert business ID')
|
|
148
|
+
.option('--name <name>', 'Expert name')
|
|
149
|
+
.option('--owner <userId>', 'Owner userId')
|
|
150
|
+
.option('--clear-owner', 'Set owner to null')
|
|
169
151
|
.option('--description <text>', 'Description')
|
|
170
|
-
.option('--
|
|
171
|
-
.option('--
|
|
172
|
-
.
|
|
173
|
-
.option('--latest-version-task <id>', 'Latest version task ID')
|
|
174
|
-
.action(async (options) => {
|
|
152
|
+
.option('--clear-description', 'Set description to null')
|
|
153
|
+
.option('--status <status>', `Status: ${EXPERT_STATUSES.join(', ')}`)
|
|
154
|
+
.action(async (expertId, options) => {
|
|
175
155
|
const globalOpts = experts.optsWithGlobals();
|
|
176
156
|
try {
|
|
177
|
-
const
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
membersCount: options.membersCount ? (0, utils_js_1.parseNumber)(options.membersCount) : null,
|
|
192
|
-
members: options.members ? options.members.split(',').map((t) => t.trim()) : undefined,
|
|
193
|
-
tags: options.tags ? options.tags.split(',').map((t) => t.trim()) : undefined,
|
|
194
|
-
description: options.description || null,
|
|
195
|
-
recommendedQuestion,
|
|
196
|
-
owner: options.owner ? options.owner.split(',').map((t) => t.trim()) : undefined,
|
|
197
|
-
latestVersionTask: options.latestVersionTask || null,
|
|
198
|
-
});
|
|
157
|
+
const payload = {};
|
|
158
|
+
if (options.name !== undefined)
|
|
159
|
+
payload.name = options.name;
|
|
160
|
+
if (options.clearOwner)
|
|
161
|
+
payload.owner = null;
|
|
162
|
+
else if (options.owner !== undefined)
|
|
163
|
+
payload.owner = options.owner;
|
|
164
|
+
if (options.clearDescription)
|
|
165
|
+
payload.description = null;
|
|
166
|
+
else if (options.description !== undefined)
|
|
167
|
+
payload.description = options.description;
|
|
168
|
+
if (options.status !== undefined)
|
|
169
|
+
payload.status = parseExpertStatus(options.status);
|
|
170
|
+
const item = await client.updateExpert(expertId, payload);
|
|
199
171
|
(0, output_js_1.printItem)(item, globalOpts);
|
|
200
172
|
}
|
|
201
173
|
catch (err) {
|
|
202
174
|
(0, output_js_1.printError)(err, globalOpts);
|
|
203
175
|
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
204
|
-
return;
|
|
205
176
|
}
|
|
206
177
|
});
|
|
207
178
|
experts
|
|
208
179
|
.command('delete')
|
|
209
|
-
.description('Delete an expert')
|
|
210
|
-
.argument('<
|
|
211
|
-
.action(async (
|
|
180
|
+
.description('Delete an expert by business ID')
|
|
181
|
+
.argument('<expertId>', 'Expert business ID')
|
|
182
|
+
.action(async (expertId) => {
|
|
212
183
|
const globalOpts = experts.optsWithGlobals();
|
|
213
184
|
try {
|
|
214
|
-
const result = await client.deleteExpert(
|
|
185
|
+
const result = await client.deleteExpert(expertId);
|
|
215
186
|
(0, output_js_1.printItem)(result, globalOpts);
|
|
216
187
|
}
|
|
217
188
|
catch (err) {
|
|
218
189
|
(0, output_js_1.printError)(err, globalOpts);
|
|
219
190
|
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
220
|
-
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
experts
|
|
194
|
+
.command('agent-card')
|
|
195
|
+
.description('Fetch and print expert raw agent.json by business ID')
|
|
196
|
+
.argument('<expertId>', 'Expert business ID')
|
|
197
|
+
.action(async (expertId) => {
|
|
198
|
+
const globalOpts = experts.optsWithGlobals();
|
|
199
|
+
try {
|
|
200
|
+
const card = await client.getExpertAgentCard(expertId);
|
|
201
|
+
(0, output_js_1.printItem)(card, globalOpts);
|
|
202
|
+
}
|
|
203
|
+
catch (err) {
|
|
204
|
+
(0, output_js_1.printError)(err, globalOpts);
|
|
205
|
+
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
experts
|
|
209
|
+
.command('agent-yaml')
|
|
210
|
+
.alias('show-yml')
|
|
211
|
+
.description('Fetch and print expert raw agent.yml by business ID')
|
|
212
|
+
.argument('<expertId>', 'Expert business ID')
|
|
213
|
+
.action(async (expertId) => {
|
|
214
|
+
const globalOpts = experts.optsWithGlobals();
|
|
215
|
+
try {
|
|
216
|
+
const yml = await client.getExpertAgentYaml(expertId);
|
|
217
|
+
if (globalOpts.quiet)
|
|
218
|
+
return;
|
|
219
|
+
if (globalOpts.format === 'json') {
|
|
220
|
+
(0, output_js_1.printJson)({ expertId, agentYaml: yml }, globalOpts);
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
console.log(yml);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
catch (err) {
|
|
227
|
+
(0, output_js_1.printError)(err, globalOpts);
|
|
228
|
+
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
221
229
|
}
|
|
222
230
|
});
|
|
223
231
|
return experts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"experts.js","sourceRoot":"","sources":["../../src/commands/experts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"experts.js","sourceRoot":"","sources":["../../src/commands/experts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versions.d.ts","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"versions.d.ts","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmFpC,wBAAgB,mBAAmB,IAAI,OAAO,CA2F7C"}
|
|
@@ -35,9 +35,70 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.makeVersionsCommand = makeVersionsCommand;
|
|
37
37
|
const commander_1 = require("commander");
|
|
38
|
+
const node_fs_1 = require("node:fs");
|
|
38
39
|
const client = __importStar(require("../client.js"));
|
|
39
40
|
const output_js_1 = require("../output.js");
|
|
40
41
|
const utils_js_1 = require("../utils.js");
|
|
42
|
+
function parseJsonObject(value, flag) {
|
|
43
|
+
const parsed = JSON.parse(value);
|
|
44
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
45
|
+
throw new Error(`${flag} must be a JSON object`);
|
|
46
|
+
}
|
|
47
|
+
return parsed;
|
|
48
|
+
}
|
|
49
|
+
function parseJsonObjectArray(value, flag) {
|
|
50
|
+
const parsed = JSON.parse(value);
|
|
51
|
+
if (!Array.isArray(parsed) || parsed.some((item) => !item || typeof item !== 'object' || Array.isArray(item))) {
|
|
52
|
+
throw new Error(`${flag} must be a JSON array of objects`);
|
|
53
|
+
}
|
|
54
|
+
return parsed;
|
|
55
|
+
}
|
|
56
|
+
function readExclusiveInlineOrFile(inline, file, flag) {
|
|
57
|
+
if (inline !== undefined && file !== undefined) {
|
|
58
|
+
throw new Error(`Use only one of --${flag} or --${flag}-file`);
|
|
59
|
+
}
|
|
60
|
+
if (file !== undefined)
|
|
61
|
+
return (0, node_fs_1.readFileSync)(file, 'utf8');
|
|
62
|
+
return inline;
|
|
63
|
+
}
|
|
64
|
+
function readPackageZip(inline, file) {
|
|
65
|
+
if (inline !== undefined && file !== undefined) {
|
|
66
|
+
throw new Error('Use only one of --package-zip or --package-zip-file');
|
|
67
|
+
}
|
|
68
|
+
if (file !== undefined)
|
|
69
|
+
return (0, node_fs_1.readFileSync)(file).toString('base64');
|
|
70
|
+
return inline;
|
|
71
|
+
}
|
|
72
|
+
function buildCreateVersionPayload(options) {
|
|
73
|
+
const payload = {
|
|
74
|
+
expertId: options.expertId,
|
|
75
|
+
};
|
|
76
|
+
const packageZip = readPackageZip(options.packageZip, options.packageZipFile);
|
|
77
|
+
if (packageZip !== undefined)
|
|
78
|
+
payload.packageZip = packageZip;
|
|
79
|
+
if (options.packageName !== undefined)
|
|
80
|
+
payload.packageName = options.packageName;
|
|
81
|
+
const agentJson = readExclusiveInlineOrFile(options.agentJson, options.agentJsonFile, 'agent-json');
|
|
82
|
+
if (agentJson !== undefined)
|
|
83
|
+
payload.agentJson = parseJsonObject(agentJson, '--agent-json');
|
|
84
|
+
const agentYaml = readExclusiveInlineOrFile(options.agentYaml, options.agentYamlFile, 'agent-yaml');
|
|
85
|
+
if (agentYaml !== undefined)
|
|
86
|
+
payload.agentYaml = agentYaml;
|
|
87
|
+
const skillJson = readExclusiveInlineOrFile(options.skillJson, options.skillJsonFile, 'skill-json');
|
|
88
|
+
if (skillJson !== undefined)
|
|
89
|
+
payload.skillJson = parseJsonObjectArray(skillJson, '--skill-json');
|
|
90
|
+
return payload;
|
|
91
|
+
}
|
|
92
|
+
function toVersionRows(items) {
|
|
93
|
+
return items.map((v) => ({
|
|
94
|
+
id: v.id,
|
|
95
|
+
expertId: v.expertId,
|
|
96
|
+
versionNo: v.versionNo,
|
|
97
|
+
packageName: v.packageName || '',
|
|
98
|
+
packageUrl: v.packageUrl,
|
|
99
|
+
uploadedAt: v.uploadedAt,
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
41
102
|
function makeVersionsCommand() {
|
|
42
103
|
const versions = new commander_1.Command('versions').description('Manage versions');
|
|
43
104
|
versions
|
|
@@ -45,13 +106,14 @@ function makeVersionsCommand() {
|
|
|
45
106
|
.description('List versions with pagination')
|
|
46
107
|
.option('--page <n>', 'Page number (1-based)', '1')
|
|
47
108
|
.option('--page-size <n>', 'Items per page', '50')
|
|
48
|
-
.option('--
|
|
109
|
+
.option('--expert-id <id>', 'Filter by expert business ID')
|
|
49
110
|
.action(async (options) => {
|
|
50
111
|
const globalOpts = versions.optsWithGlobals();
|
|
51
112
|
try {
|
|
52
113
|
const params = {
|
|
53
114
|
page: (0, utils_js_1.parseNumber)(options.page),
|
|
54
115
|
pageSize: (0, utils_js_1.parseNumber)(options.pageSize),
|
|
116
|
+
expertId: options.expertId,
|
|
55
117
|
};
|
|
56
118
|
const result = await client.listVersions(params);
|
|
57
119
|
if (globalOpts.quiet)
|
|
@@ -59,21 +121,14 @@ function makeVersionsCommand() {
|
|
|
59
121
|
const fmt = globalOpts.format === 'json' || !process.stdout.isTTY ? 'json' : 'csv';
|
|
60
122
|
if (fmt === 'json') {
|
|
61
123
|
(0, output_js_1.printJson)(result, globalOpts);
|
|
124
|
+
return;
|
|
62
125
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
const rows = options.showDiff
|
|
69
|
-
? result.items
|
|
70
|
-
: result.items.map((v) => {
|
|
71
|
-
const { diff, ...rest } = v;
|
|
72
|
-
return rest;
|
|
73
|
-
});
|
|
74
|
-
(0, output_js_1.printCsv)(rows, globalOpts);
|
|
75
|
-
console.log(`\nPage ${result.page}/${Math.ceil(result.total / result.pageSize)} | Total: ${result.total}`);
|
|
126
|
+
if (result.items.length === 0) {
|
|
127
|
+
console.log('No versions found.');
|
|
128
|
+
return;
|
|
76
129
|
}
|
|
130
|
+
(0, output_js_1.printCsv)(toVersionRows(result.items), globalOpts);
|
|
131
|
+
console.log(`\nPage ${result.page}/${Math.ceil(result.total / result.pageSize)} | Total: ${result.total}`);
|
|
77
132
|
}
|
|
78
133
|
catch (err) {
|
|
79
134
|
(0, output_js_1.printError)(err, globalOpts);
|
|
@@ -97,63 +152,21 @@ function makeVersionsCommand() {
|
|
|
97
152
|
});
|
|
98
153
|
versions
|
|
99
154
|
.command('create')
|
|
100
|
-
.description('
|
|
101
|
-
.requiredOption('--
|
|
102
|
-
.option('--
|
|
103
|
-
.option('--
|
|
104
|
-
.option('--
|
|
105
|
-
.option('--
|
|
106
|
-
.option('--
|
|
155
|
+
.description('Upload a Base64 ZIP package and create a parsed expert version')
|
|
156
|
+
.requiredOption('--expert-id <id>', 'Expert business ID')
|
|
157
|
+
.option('--package-zip <base64>', 'Base64 encoded ZIP content; data:application/zip;base64, prefix is supported by server')
|
|
158
|
+
.option('--package-zip-file <path>', 'Read ZIP file and send it as Base64 encoded content')
|
|
159
|
+
.option('--package-name <name>', 'ZIP package file name')
|
|
160
|
+
.option('--agent-json <json>', 'Parsed agent.json object; skips server-side ZIP parsing for this field')
|
|
161
|
+
.option('--agent-json-file <path>', 'Read parsed agent.json object from file')
|
|
162
|
+
.option('--agent-yaml <yaml>', 'Parsed agent YAML text')
|
|
163
|
+
.option('--agent-yaml-file <path>', 'Read parsed agent YAML text from file')
|
|
164
|
+
.option('--skill-json <json>', 'Parsed skills JSON array')
|
|
165
|
+
.option('--skill-json-file <path>', 'Read parsed skills JSON array from file')
|
|
107
166
|
.action(async (options) => {
|
|
108
167
|
const globalOpts = versions.optsWithGlobals();
|
|
109
168
|
try {
|
|
110
|
-
const
|
|
111
|
-
hash: options.hash,
|
|
112
|
-
};
|
|
113
|
-
if (options.diff)
|
|
114
|
-
payload.diff = options.diff;
|
|
115
|
-
if (options.commitMessage)
|
|
116
|
-
payload.commitMessage = options.commitMessage;
|
|
117
|
-
if (options.author)
|
|
118
|
-
payload.author = options.author;
|
|
119
|
-
if (options.evaluationDate)
|
|
120
|
-
payload.evaluationDate = options.evaluationDate;
|
|
121
|
-
if (options.summary)
|
|
122
|
-
payload.summary = options.summary;
|
|
123
|
-
const item = await client.createVersion(payload);
|
|
124
|
-
(0, output_js_1.printItem)(item, globalOpts);
|
|
125
|
-
}
|
|
126
|
-
catch (err) {
|
|
127
|
-
(0, output_js_1.printError)(err, globalOpts);
|
|
128
|
-
process.exitCode = utils_js_1.EXIT_CODES.GENERAL_ERROR;
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
versions
|
|
132
|
-
.command('update')
|
|
133
|
-
.description('Update a version (idempotent by hash, creates if not exists)')
|
|
134
|
-
.requiredOption('--hash <hash>', 'Version hash')
|
|
135
|
-
.option('--diff <text>', 'Diff content of current commit')
|
|
136
|
-
.option('--commit-message <msg>', 'Commit message')
|
|
137
|
-
.option('--author <name>', 'Author name')
|
|
138
|
-
.option('--evaluation-date <date>', 'Evaluation date (ISO 8601)')
|
|
139
|
-
.option('--summary <text>', 'Evaluation summary')
|
|
140
|
-
.action(async (options) => {
|
|
141
|
-
const globalOpts = versions.optsWithGlobals();
|
|
142
|
-
try {
|
|
143
|
-
const payload = {
|
|
144
|
-
hash: options.hash,
|
|
145
|
-
};
|
|
146
|
-
if (options.diff)
|
|
147
|
-
payload.diff = options.diff;
|
|
148
|
-
if (options.commitMessage)
|
|
149
|
-
payload.commitMessage = options.commitMessage;
|
|
150
|
-
if (options.author)
|
|
151
|
-
payload.author = options.author;
|
|
152
|
-
if (options.evaluationDate)
|
|
153
|
-
payload.evaluationDate = options.evaluationDate;
|
|
154
|
-
if (options.summary)
|
|
155
|
-
payload.summary = options.summary;
|
|
156
|
-
const item = await client.updateVersion(payload);
|
|
169
|
+
const item = await client.createVersion(buildCreateVersionPayload(options));
|
|
157
170
|
(0, output_js_1.printItem)(item, globalOpts);
|
|
158
171
|
}
|
|
159
172
|
catch (err) {
|
|
@@ -168,8 +181,8 @@ function makeVersionsCommand() {
|
|
|
168
181
|
.action(async (id) => {
|
|
169
182
|
const globalOpts = versions.optsWithGlobals();
|
|
170
183
|
try {
|
|
171
|
-
await client.deleteVersion(id);
|
|
172
|
-
(0, output_js_1.printItem)(
|
|
184
|
+
const result = await client.deleteVersion(id);
|
|
185
|
+
(0, output_js_1.printItem)(result, globalOpts);
|
|
173
186
|
}
|
|
174
187
|
catch (err) {
|
|
175
188
|
(0, output_js_1.printError)(err, globalOpts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"versions.js","sourceRoot":"","sources":["../../src/commands/versions.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,aAAa,IAAI,OAAO,CAkBvC"}
|
package/dist/index.js
CHANGED
|
@@ -5,26 +5,22 @@ const commander_1 = require("commander");
|
|
|
5
5
|
const auth_js_1 = require("./commands/auth.js");
|
|
6
6
|
const experts_js_1 = require("./commands/experts.js");
|
|
7
7
|
const versions_js_1 = require("./commands/versions.js");
|
|
8
|
-
const eval_items_js_1 = require("./commands/eval-items.js");
|
|
9
8
|
const eval_records_js_1 = require("./commands/eval-records.js");
|
|
10
9
|
const eval_tasks_js_1 = require("./commands/eval-tasks.js");
|
|
11
|
-
const eval_cases_js_1 = require("./commands/eval-cases.js");
|
|
12
10
|
const agent_accounts_js_1 = require("./commands/agent-accounts.js");
|
|
13
11
|
function createProgram() {
|
|
14
12
|
const program = new commander_1.Command();
|
|
15
13
|
program
|
|
16
14
|
.name('expert_eval')
|
|
17
15
|
.description('AI-friendly CLI for ExpertEval API')
|
|
18
|
-
.version('
|
|
16
|
+
.version('2.0.0')
|
|
19
17
|
.option('--format <type>', 'Output format: json, csv, table, or auto (default: auto)', 'auto')
|
|
20
18
|
.option('-q, --quiet', 'Suppress output (exit codes only)', false);
|
|
21
19
|
program.addCommand((0, auth_js_1.makeAuthCommand)());
|
|
22
20
|
program.addCommand((0, experts_js_1.makeExpertsCommand)());
|
|
23
21
|
program.addCommand((0, versions_js_1.makeVersionsCommand)());
|
|
24
|
-
program.addCommand((0, eval_items_js_1.makeEvalItemsCommand)());
|
|
25
22
|
program.addCommand((0, eval_records_js_1.makeEvalRecordsCommand)());
|
|
26
23
|
program.addCommand((0, eval_tasks_js_1.makeEvalTasksCommand)());
|
|
27
|
-
program.addCommand((0, eval_cases_js_1.makeEvalCasesCommand)());
|
|
28
24
|
program.addCommand((0, agent_accounts_js_1.makeAgentAccountsCommand)());
|
|
29
25
|
return program;
|
|
30
26
|
}
|