orchajs 0.2.0 → 0.4.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 +83 -3
- package/dist/cli-agents-template.d.ts +2 -0
- package/dist/cli-agents-template.d.ts.map +1 -0
- package/dist/cli-agents-template.js +907 -0
- package/dist/cli-agents-template.js.map +1 -0
- package/dist/cli.js +335 -16
- package/dist/cli.js.map +1 -1
- package/dist/compiler/build-project.d.ts.map +1 -1
- package/dist/compiler/build-project.js +6 -1
- package/dist/compiler/build-project.js.map +1 -1
- package/dist/compiler/compile.d.ts.map +1 -1
- package/dist/compiler/compile.js +114 -3
- package/dist/compiler/compile.js.map +1 -1
- package/dist/evaluations.d.ts +3 -0
- package/dist/evaluations.d.ts.map +1 -0
- package/dist/evaluations.js +4 -0
- package/dist/evaluations.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/runtime/agent.d.ts.map +1 -1
- package/dist/runtime/agent.js +418 -20
- package/dist/runtime/agent.js.map +1 -1
- package/dist/runtime/execution.d.ts +2 -2
- package/dist/runtime/execution.d.ts.map +1 -1
- package/dist/runtime/execution.js +3 -1
- package/dist/runtime/execution.js.map +1 -1
- package/dist/testing.d.ts.map +1 -1
- package/dist/testing.js +23 -6
- package/dist/testing.js.map +1 -1
- package/dist/types.d.ts +45 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +5 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-agents-template.js","sourceRoot":"","sources":["../src/cli-agents-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAy4BxB,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -1,20 +1,47 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { existsSync } from "node:fs";
|
|
3
|
-
import { appendFile, mkdir, readFile, writeFile } from "node:fs/promises";
|
|
4
|
-
import { dirname, resolve } from "node:path";
|
|
2
|
+
import { existsSync, watch } from "node:fs";
|
|
3
|
+
import { appendFile, mkdir, readFile, rm, writeFile, } from "node:fs/promises";
|
|
4
|
+
import { dirname, relative, resolve } from "node:path";
|
|
5
|
+
import { pathToFileURL } from "node:url";
|
|
6
|
+
import { build as bundleEntry } from "esbuild";
|
|
7
|
+
import { AGENTS_MD } from "./cli-agents-template.js";
|
|
5
8
|
import { buildProject } from "./compiler/build-project.js";
|
|
9
|
+
import { orcha } from "./orcha.js";
|
|
10
|
+
import { getOrchaRuntimeContext } from "./runtime/context.js";
|
|
11
|
+
import { runTests } from "./testing.js";
|
|
6
12
|
const command = process.argv[2];
|
|
13
|
+
const commandArguments = process.argv.slice(3);
|
|
14
|
+
const projectRoot = process.cwd();
|
|
7
15
|
try {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
switch (command) {
|
|
17
|
+
case "init":
|
|
18
|
+
assertNoArguments(commandArguments, "init");
|
|
19
|
+
await initializeProject(projectRoot);
|
|
20
|
+
break;
|
|
21
|
+
case "dev":
|
|
22
|
+
assertNoArguments(commandArguments, "dev");
|
|
23
|
+
await watchProject(projectRoot);
|
|
24
|
+
break;
|
|
25
|
+
case "run":
|
|
26
|
+
await runAgent(projectRoot, commandArguments);
|
|
27
|
+
break;
|
|
28
|
+
case "test":
|
|
29
|
+
await testAgents(projectRoot, commandArguments);
|
|
30
|
+
break;
|
|
31
|
+
case "build": {
|
|
32
|
+
assertNoArguments(commandArguments, "build");
|
|
33
|
+
const outputPath = await buildProject({ projectRoot });
|
|
34
|
+
console.log(`Built ${relative(projectRoot, outputPath)}`);
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
case "help":
|
|
38
|
+
case "--help":
|
|
39
|
+
case "-h":
|
|
40
|
+
case undefined:
|
|
41
|
+
printUsage();
|
|
42
|
+
break;
|
|
43
|
+
default:
|
|
44
|
+
throw new Error(`Unknown command "${command}". Run "orcha --help".`);
|
|
18
45
|
}
|
|
19
46
|
}
|
|
20
47
|
catch (error) {
|
|
@@ -29,7 +56,7 @@ async function initializeProject(projectRoot) {
|
|
|
29
56
|
provider: "anthropic",
|
|
30
57
|
model: "claude-sonnet-4-6",
|
|
31
58
|
region: "provider_managed",
|
|
32
|
-
maxTokens:
|
|
59
|
+
maxTokens: 10240,
|
|
33
60
|
outputType: "text",
|
|
34
61
|
}, null, 2)}\n`,
|
|
35
62
|
],
|
|
@@ -53,6 +80,7 @@ async function initializeProject(projectRoot) {
|
|
|
53
80
|
"",
|
|
54
81
|
].join("\n"),
|
|
55
82
|
],
|
|
83
|
+
["AGENTS.md", AGENTS_MD],
|
|
56
84
|
]);
|
|
57
85
|
for (const [relativePath, contents] of files) {
|
|
58
86
|
const path = resolve(projectRoot, relativePath);
|
|
@@ -65,7 +93,287 @@ async function initializeProject(projectRoot) {
|
|
|
65
93
|
console.log(`Created ${relativePath}`);
|
|
66
94
|
}
|
|
67
95
|
await ensureGitignore(projectRoot);
|
|
68
|
-
console.log('\
|
|
96
|
+
console.log('\nRun "orcha dev" to validate changes or "orcha run exampleAgent --input \\"Hello\\"" to execute the agent.');
|
|
97
|
+
}
|
|
98
|
+
async function watchProject(projectRoot) {
|
|
99
|
+
const registryDirectory = resolve(projectRoot, "orcha");
|
|
100
|
+
if (!existsSync(registryDirectory)) {
|
|
101
|
+
throw new Error('Missing "orcha/". Run "orcha init" first.');
|
|
102
|
+
}
|
|
103
|
+
let validating = false;
|
|
104
|
+
let validateAgain = false;
|
|
105
|
+
let timer;
|
|
106
|
+
const validate = async () => {
|
|
107
|
+
if (validating) {
|
|
108
|
+
validateAgain = true;
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
validating = true;
|
|
112
|
+
try {
|
|
113
|
+
await loadProject(projectRoot);
|
|
114
|
+
const agents = Object.keys(orcha.getCompiledBundle().agents);
|
|
115
|
+
console.log(`[orcha] valid — ${agents.length} agent${agents.length === 1 ? "" : "s"}: ${agents.join(", ") || "none"}`);
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
console.error(`[orcha] invalid — ${error instanceof Error ? error.message : String(error)}`);
|
|
119
|
+
}
|
|
120
|
+
finally {
|
|
121
|
+
validating = false;
|
|
122
|
+
if (validateAgain) {
|
|
123
|
+
validateAgain = false;
|
|
124
|
+
void validate();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
await validate();
|
|
129
|
+
console.log("[orcha] watching orcha/**");
|
|
130
|
+
const watcher = watch(registryDirectory, { recursive: true }, () => {
|
|
131
|
+
clearTimeout(timer);
|
|
132
|
+
timer = setTimeout(() => void validate(), 75);
|
|
133
|
+
});
|
|
134
|
+
await new Promise((resolveStop) => {
|
|
135
|
+
const stop = () => {
|
|
136
|
+
clearTimeout(timer);
|
|
137
|
+
watcher.close();
|
|
138
|
+
resolveStop();
|
|
139
|
+
};
|
|
140
|
+
process.once("SIGINT", stop);
|
|
141
|
+
process.once("SIGTERM", stop);
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
async function runAgent(projectRoot, arguments_) {
|
|
145
|
+
const parsed = parseArguments(arguments_, new Set([
|
|
146
|
+
"--input",
|
|
147
|
+
"--input-file",
|
|
148
|
+
"--session",
|
|
149
|
+
"--tool-results",
|
|
150
|
+
]));
|
|
151
|
+
const agentName = parsed.positionals[0];
|
|
152
|
+
if (!agentName || parsed.positionals.length > 1) {
|
|
153
|
+
throw new Error('Usage: orcha run <agent> (--input "…" | --input-file request.json) [--session <id>] [--json]');
|
|
154
|
+
}
|
|
155
|
+
await loadProject(projectRoot);
|
|
156
|
+
const agent = orcha[agentName];
|
|
157
|
+
if (!agent || !(agentName in orcha.getCompiledBundle().agents)) {
|
|
158
|
+
throw new Error(`Unknown agent "${agentName}".`);
|
|
159
|
+
}
|
|
160
|
+
const sessionId = parsed.values.get("--session");
|
|
161
|
+
const toolResultsPath = parsed.values.get("--tool-results");
|
|
162
|
+
if (toolResultsPath && (parsed.values.has("--input") ||
|
|
163
|
+
parsed.values.has("--input-file"))) {
|
|
164
|
+
throw new Error("--tool-results cannot be combined with --input or --input-file.");
|
|
165
|
+
}
|
|
166
|
+
let execution;
|
|
167
|
+
if (toolResultsPath) {
|
|
168
|
+
if (!sessionId) {
|
|
169
|
+
throw new Error("--tool-results requires --session.");
|
|
170
|
+
}
|
|
171
|
+
execution = agent.resume(sessionId, {
|
|
172
|
+
toolResults: await readToolResults(resolve(projectRoot, toolResultsPath)),
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
const input = await readAgentInput(parsed, projectRoot);
|
|
177
|
+
execution = sessionId
|
|
178
|
+
? agent.resume(sessionId, normalizeResumeInput(input))
|
|
179
|
+
: agent.run(input);
|
|
180
|
+
}
|
|
181
|
+
const result = await execution.result;
|
|
182
|
+
const evaluations = await execution.evaluations;
|
|
183
|
+
if (parsed.flags.has("--json")) {
|
|
184
|
+
console.log(JSON.stringify({ result, evaluations }));
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
printRunResult(projectRoot, result, evaluations);
|
|
188
|
+
}
|
|
189
|
+
if (result.status === "failed") {
|
|
190
|
+
process.exitCode = 1;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
async function testAgents(projectRoot, arguments_) {
|
|
194
|
+
const parsed = parseArguments(arguments_, new Set());
|
|
195
|
+
if (parsed.positionals.length > 1) {
|
|
196
|
+
throw new Error("Usage: orcha test [agent | agent/test] [--json]");
|
|
197
|
+
}
|
|
198
|
+
const selector = parsed.positionals[0];
|
|
199
|
+
const [agent, test, extra] = selector?.split("/") ?? [];
|
|
200
|
+
if (extra || (selector?.includes("/") && (!agent || !test))) {
|
|
201
|
+
throw new Error('Test selector must be an agent name or "agent/test".');
|
|
202
|
+
}
|
|
203
|
+
await loadProject(projectRoot);
|
|
204
|
+
const report = await runTests(orcha, {
|
|
205
|
+
...(agent ? { agent } : {}),
|
|
206
|
+
...(test ? { test } : {}),
|
|
207
|
+
});
|
|
208
|
+
if (parsed.flags.has("--json")) {
|
|
209
|
+
console.log(JSON.stringify(report));
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
console.log(`Agent tests: ${report.passed}/${report.total} passed`);
|
|
213
|
+
for (const testCase of report.cases) {
|
|
214
|
+
const sessionLink = testCase.sessionPath
|
|
215
|
+
? `${testCase.sessionPath}:1`
|
|
216
|
+
: testCase.sessionId;
|
|
217
|
+
console.log(`${testCase.status === "passed" ? "PASS" : "FAIL"} ${testCase.agent}/${testCase.name} (${testCase.durationMs}ms) ${sessionLink}`);
|
|
218
|
+
for (const assertion of testCase.assertions) {
|
|
219
|
+
if (!assertion.passed) {
|
|
220
|
+
console.error(` ${assertion.message}`);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
if (report.status === "failed") {
|
|
226
|
+
process.exitCode = 1;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
async function loadProject(projectRoot) {
|
|
230
|
+
const registryPath = resolve(projectRoot, "orcha/index.ts");
|
|
231
|
+
if (!existsSync(registryPath)) {
|
|
232
|
+
throw new Error('Missing "orcha/index.ts". Run "orcha init" first.');
|
|
233
|
+
}
|
|
234
|
+
const temporaryDirectory = resolve(projectRoot, ".orcha/.cli");
|
|
235
|
+
const bundlePath = resolve(temporaryDirectory, `registry-${process.pid}-${Date.now()}.mjs`);
|
|
236
|
+
await mkdir(temporaryDirectory, { recursive: true });
|
|
237
|
+
try {
|
|
238
|
+
const previousBundle = orcha.isInitialized()
|
|
239
|
+
? orcha.getCompiledBundle()
|
|
240
|
+
: undefined;
|
|
241
|
+
await bundleEntry({
|
|
242
|
+
entryPoints: [registryPath],
|
|
243
|
+
outfile: bundlePath,
|
|
244
|
+
bundle: true,
|
|
245
|
+
format: "esm",
|
|
246
|
+
platform: "node",
|
|
247
|
+
target: "node20",
|
|
248
|
+
packages: "external",
|
|
249
|
+
logLevel: "silent",
|
|
250
|
+
});
|
|
251
|
+
const previousRoot = process.env.ORCHA_PROJECT_ROOT;
|
|
252
|
+
const previousCompiling = process.env.ORCHA_COMPILING;
|
|
253
|
+
process.env.ORCHA_PROJECT_ROOT = projectRoot;
|
|
254
|
+
process.env.ORCHA_COMPILING = "1";
|
|
255
|
+
try {
|
|
256
|
+
await import(`${pathToFileURL(bundlePath).href}?time=${Date.now()}`);
|
|
257
|
+
}
|
|
258
|
+
finally {
|
|
259
|
+
restoreEnvironment("ORCHA_PROJECT_ROOT", previousRoot);
|
|
260
|
+
restoreEnvironment("ORCHA_COMPILING", previousCompiling);
|
|
261
|
+
}
|
|
262
|
+
if (!orcha.isInitialized() ||
|
|
263
|
+
orcha.getCompiledBundle() === previousBundle) {
|
|
264
|
+
throw new Error('"orcha/index.ts" must call orcha.init({ providers, agents }).');
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
finally {
|
|
268
|
+
await rm(bundlePath, { force: true });
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
function parseArguments(arguments_, valueOptions) {
|
|
272
|
+
const parsed = {
|
|
273
|
+
positionals: [],
|
|
274
|
+
flags: new Set(),
|
|
275
|
+
values: new Map(),
|
|
276
|
+
};
|
|
277
|
+
for (let index = 0; index < arguments_.length; index += 1) {
|
|
278
|
+
const argument = arguments_[index];
|
|
279
|
+
if (!argument.startsWith("--")) {
|
|
280
|
+
parsed.positionals.push(argument);
|
|
281
|
+
continue;
|
|
282
|
+
}
|
|
283
|
+
if (argument === "--json") {
|
|
284
|
+
parsed.flags.add(argument);
|
|
285
|
+
continue;
|
|
286
|
+
}
|
|
287
|
+
if (!valueOptions.has(argument)) {
|
|
288
|
+
throw new Error(`Unknown option "${argument}".`);
|
|
289
|
+
}
|
|
290
|
+
const value = arguments_[index + 1];
|
|
291
|
+
if (!value || value.startsWith("--")) {
|
|
292
|
+
throw new Error(`Option "${argument}" requires a value.`);
|
|
293
|
+
}
|
|
294
|
+
parsed.values.set(argument, value);
|
|
295
|
+
index += 1;
|
|
296
|
+
}
|
|
297
|
+
return parsed;
|
|
298
|
+
}
|
|
299
|
+
async function readAgentInput(parsed, projectRoot) {
|
|
300
|
+
const inline = parsed.values.get("--input");
|
|
301
|
+
const inputFile = parsed.values.get("--input-file");
|
|
302
|
+
if (inline && inputFile) {
|
|
303
|
+
throw new Error("--input and --input-file cannot be combined.");
|
|
304
|
+
}
|
|
305
|
+
if (inline !== undefined) {
|
|
306
|
+
return inline;
|
|
307
|
+
}
|
|
308
|
+
if (inputFile) {
|
|
309
|
+
return parseInput(await readFile(resolve(projectRoot, inputFile), "utf8"));
|
|
310
|
+
}
|
|
311
|
+
if (!process.stdin.isTTY) {
|
|
312
|
+
const chunks = [];
|
|
313
|
+
for await (const chunk of process.stdin) {
|
|
314
|
+
chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
|
|
315
|
+
}
|
|
316
|
+
return parseInput(Buffer.concat(chunks).toString("utf8"));
|
|
317
|
+
}
|
|
318
|
+
throw new Error('Provide --input, --input-file, or pipe input through stdin.');
|
|
319
|
+
}
|
|
320
|
+
function parseInput(value) {
|
|
321
|
+
const trimmed = value.trim();
|
|
322
|
+
if (!trimmed) {
|
|
323
|
+
throw new Error("Agent input cannot be empty.");
|
|
324
|
+
}
|
|
325
|
+
if (!trimmed.startsWith("{")) {
|
|
326
|
+
return trimmed;
|
|
327
|
+
}
|
|
328
|
+
const parsed = JSON.parse(trimmed);
|
|
329
|
+
if (!parsed ||
|
|
330
|
+
typeof parsed !== "object" ||
|
|
331
|
+
!("content" in parsed)) {
|
|
332
|
+
throw new Error('Structured input must be an object with "content".');
|
|
333
|
+
}
|
|
334
|
+
return parsed;
|
|
335
|
+
}
|
|
336
|
+
function normalizeResumeInput(input) {
|
|
337
|
+
return typeof input === "string"
|
|
338
|
+
? input
|
|
339
|
+
: { content: input.content };
|
|
340
|
+
}
|
|
341
|
+
async function readToolResults(path) {
|
|
342
|
+
const parsed = JSON.parse(await readFile(path, "utf8"));
|
|
343
|
+
const results = Array.isArray(parsed)
|
|
344
|
+
? parsed
|
|
345
|
+
: parsed &&
|
|
346
|
+
typeof parsed === "object" &&
|
|
347
|
+
"toolResults" in parsed &&
|
|
348
|
+
Array.isArray(parsed.toolResults)
|
|
349
|
+
? parsed.toolResults
|
|
350
|
+
: undefined;
|
|
351
|
+
if (!results) {
|
|
352
|
+
throw new Error('Tool results must be an array or an object with "toolResults".');
|
|
353
|
+
}
|
|
354
|
+
return results;
|
|
355
|
+
}
|
|
356
|
+
function printRunResult(projectRoot, result, evaluations) {
|
|
357
|
+
console.log(JSON.stringify(result, null, 2));
|
|
358
|
+
if (evaluations.length > 0) {
|
|
359
|
+
console.log("Evaluations:");
|
|
360
|
+
console.log(JSON.stringify(evaluations, null, 2));
|
|
361
|
+
}
|
|
362
|
+
console.log(`Session log: ${relative(projectRoot, resolve(projectRoot, getOrchaRuntimeContext(orcha).configuration.storage?.directory ??
|
|
363
|
+
".orcha/sessions", `${result.sessionId}.jsonl`))}:1`);
|
|
364
|
+
}
|
|
365
|
+
function restoreEnvironment(name, value) {
|
|
366
|
+
if (value === undefined) {
|
|
367
|
+
delete process.env[name];
|
|
368
|
+
}
|
|
369
|
+
else {
|
|
370
|
+
process.env[name] = value;
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
function assertNoArguments(arguments_, command) {
|
|
374
|
+
if (arguments_.length > 0) {
|
|
375
|
+
throw new Error(`Usage: orcha ${command}`);
|
|
376
|
+
}
|
|
69
377
|
}
|
|
70
378
|
async function ensureGitignore(projectRoot) {
|
|
71
379
|
const path = resolve(projectRoot, ".gitignore");
|
|
@@ -80,6 +388,17 @@ async function ensureGitignore(projectRoot) {
|
|
|
80
388
|
console.log("Updated .gitignore");
|
|
81
389
|
}
|
|
82
390
|
function printUsage() {
|
|
83
|
-
console.log([
|
|
391
|
+
console.log([
|
|
392
|
+
"Usage: orcha <command>",
|
|
393
|
+
"",
|
|
394
|
+
"Commands:",
|
|
395
|
+
" init Add Orcha to the current project",
|
|
396
|
+
" dev Validate and watch orcha/**",
|
|
397
|
+
" run <agent> [options] Execute or resume an agent",
|
|
398
|
+
" test [agent | agent/test] Run agent tests",
|
|
399
|
+
" build Build the production Orcha bundle",
|
|
400
|
+
"",
|
|
401
|
+
"Run and test support --json for machine-readable output.",
|
|
402
|
+
].join("\n"));
|
|
84
403
|
}
|
|
85
404
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEhC,IAAI,CAAC;IACH,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACzC,CAAC;SAAM,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,CAAC,SAAS,UAAU,EAAE,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,UAAU,EAAE,CAAC;QACb,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;AACH,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,WAAmB;IAClD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAiB;QACpC;YACE,+BAA+B;YAC/B,GAAG,IAAI,CAAC,SAAS,CACf;gBACE,QAAQ,EAAE,WAAW;gBACrB,KAAK,EAAE,mBAAmB;gBAC1B,MAAM,EAAE,kBAAkB;gBAC1B,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,MAAM;aACnB,EACD,IAAI,EACJ,CAAC,CACF,IAAI;SACN;QACD;YACE,oCAAoC;YACpC,4CAA4C;SAC7C;QACD;YACE,gBAAgB;YAChB;gBACE,kCAAkC;gBAClC,EAAE;gBACF,cAAc;gBACd,gBAAgB;gBAChB,uDAAuD;gBACvD,MAAM;gBACN,aAAa;gBACb,uCAAuC;gBACvC,MAAM;gBACN,KAAK;gBACL,EAAE;aACH,CAAC,IAAI,CAAC,IAAI,CAAC;SACb;KACF,CAAC,CAAC;IAEH,KAAK,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,KAAK,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAChD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,oBAAoB,YAAY,EAAE,CAAC,CAAC;YAChD,SAAS;QACX,CAAC;QACD,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,WAAW,YAAY,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,CACT,gHAAgH,CACjH,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,WAAmB;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,SAAS,CAAC;IACxB,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAElE,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,UAAU,CAAC,IAAI,EAAE,GAAG,MAAM,GAAG,KAAK,IAAI,EAAE,MAAM,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,CAAC,GAAG,CAAC,CAAC,wBAAwB,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3F,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-project.d.ts","sourceRoot":"","sources":["../../src/compiler/build-project.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,YAAY,CAChC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"build-project.d.ts","sourceRoot":"","sources":["../../src/compiler/build-project.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,YAAY,CAChC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,CA6HjB"}
|
|
@@ -53,7 +53,12 @@ export async function buildProject(options = {}) {
|
|
|
53
53
|
const runtimeFactoryPath = resolve(dirname(fileURLToPath(import.meta.url)), "../runtime/create-orcha.js").replaceAll("\\", "/");
|
|
54
54
|
const providerDispatcherPath = resolve(dirname(fileURLToPath(import.meta.url)), "../providers/dispatcher.js").replaceAll("\\", "/");
|
|
55
55
|
const includedProviders = [
|
|
56
|
-
...new Set(Object.values(compiledBundle.agents).
|
|
56
|
+
...new Set(Object.values(compiledBundle.agents).flatMap((agent) => [
|
|
57
|
+
agent.provider,
|
|
58
|
+
...Object.values(agent.evaluations ?? {})
|
|
59
|
+
.filter((evaluation) => evaluation.enabled !== false)
|
|
60
|
+
.map((evaluation) => evaluation.provider),
|
|
61
|
+
])),
|
|
57
62
|
];
|
|
58
63
|
const providerRuntimeSource = createProviderRuntimeSource(includedProviders);
|
|
59
64
|
const needsNodeRequire = compiledBundle.actionRuntime === "sandbox" ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-project.js","sourceRoot":"","sources":["../../src/compiler/build-project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EACL,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAMjC,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAA+B,EAAE;IAEjC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClE,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IACjE,MAAM,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IACvE,MAAM,mBAAmB,GAAG,OAAO,CACjC,kBAAkB,EAClB,sBAAsB,CACvB,CAAC;IACF,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;IACjE,MAAM,KAAK,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEtD,IAAI,CAAC;QACH,MAAM,WAAW,CAAC;YAChB,WAAW,EAAE,CAAC,YAAY,CAAC;YAC3B,OAAO,EAAE,kBAAkB;YAC3B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QACtD,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,WAAW,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,CACV,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC,IAAI,SAAS,IAAI,CAAC,GAAG,EAAE,EAAE,CAC/D,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBACpC,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;YACrC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,iBAAiB,CAAC;YAClD,CAAC;YACD,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBACtC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,mBAAmB,CAAC;YACvD,CAAC;QACH,CAAC;QACD,MAAM,cAAc,GAAG,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACjD,MAAM,kBAAkB,GAAG,OAAO,CAChC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EACvC,4BAA4B,CAC7B,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACxB,MAAM,sBAAsB,GAAG,OAAO,CACpC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EACvC,4BAA4B,CAC7B,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACxB,MAAM,iBAAiB,GAAG;YACxB,GAAG,IAAI,GAAG,CACR,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"build-project.js","sourceRoot":"","sources":["../../src/compiler/build-project.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/compiler/compile.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../src/compiler/compile.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAOV,cAAc,EAKf,MAAM,aAAa,CAAC;AAErB,wBAAgB,eAAe,CAC7B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACrC,YAAY,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,QAAQ,GAAG,SAAS,GACnC,cAAc,CAmHhB;AAmjBD,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAO9D"}
|
package/dist/compiler/compile.js
CHANGED
|
@@ -78,6 +78,7 @@ export function compileRegistry(registrations, registryRoot, actionRuntime) {
|
|
|
78
78
|
outputSchema: configuration.outputSchema,
|
|
79
79
|
actions: compileActions(name, sourceDirectory),
|
|
80
80
|
skills: compileSkills(name, sourceDirectory),
|
|
81
|
+
evaluations: compileEvaluations(name, sourceDirectory),
|
|
81
82
|
});
|
|
82
83
|
}
|
|
83
84
|
if (Object.keys(agents).length === 0) {
|
|
@@ -217,13 +218,66 @@ function compileSkills(agentName, sourceDirectory) {
|
|
|
217
218
|
}
|
|
218
219
|
return Object.freeze(skills);
|
|
219
220
|
}
|
|
221
|
+
function compileEvaluations(agentName, sourceDirectory) {
|
|
222
|
+
const evaluationsDirectory = resolve(sourceDirectory, "evaluations");
|
|
223
|
+
if (!existsSync(evaluationsDirectory)) {
|
|
224
|
+
return {};
|
|
225
|
+
}
|
|
226
|
+
const registryPath = resolve(evaluationsDirectory, "index.js");
|
|
227
|
+
if (!existsSync(registryPath)) {
|
|
228
|
+
throw new Error(`Agent "${agentName}" has an evaluations directory but is missing evaluations/index.js.`);
|
|
229
|
+
}
|
|
230
|
+
const registrations = loadEvaluationRegistrations(agentName, registryPath);
|
|
231
|
+
const evaluations = {};
|
|
232
|
+
for (const [registrationName, registeredPath] of Object.entries(registrations)) {
|
|
233
|
+
if (!registrationName.trim()) {
|
|
234
|
+
throw new Error(`Agent "${agentName}" has an empty registered evaluation name.`);
|
|
235
|
+
}
|
|
236
|
+
if (typeof registeredPath !== "string" || !registeredPath.trim()) {
|
|
237
|
+
throw new Error(`Evaluation "${agentName}/${registrationName}" must register a folder path.`);
|
|
238
|
+
}
|
|
239
|
+
const evaluationDirectory = resolve(evaluationsDirectory, registeredPath);
|
|
240
|
+
const relativePath = relative(evaluationsDirectory, evaluationDirectory);
|
|
241
|
+
if (!relativePath ||
|
|
242
|
+
relativePath === ".." ||
|
|
243
|
+
relativePath.startsWith(`..${sep}`)) {
|
|
244
|
+
throw new Error(`Evaluation "${agentName}/${registrationName}" must resolve inside the agent's evaluations directory.`);
|
|
245
|
+
}
|
|
246
|
+
const configurationPath = resolve(evaluationDirectory, "index.json");
|
|
247
|
+
let configuration;
|
|
248
|
+
try {
|
|
249
|
+
configuration = JSON.parse(readFileSync(configurationPath, "utf8"));
|
|
250
|
+
}
|
|
251
|
+
catch (error) {
|
|
252
|
+
throw new Error(`Evaluation "${agentName}/${registrationName}" is missing a valid index.json at ${configurationPath}.`, { cause: error });
|
|
253
|
+
}
|
|
254
|
+
validateEvaluationConfiguration(agentName, registrationName, configuration);
|
|
255
|
+
if (evaluations[configuration.name]) {
|
|
256
|
+
throw new Error(`Agent "${agentName}" has duplicate evaluation name "${configuration.name}".`);
|
|
257
|
+
}
|
|
258
|
+
evaluations[configuration.name] = Object.freeze({
|
|
259
|
+
...configuration,
|
|
260
|
+
enabled: configuration.enabled ?? true,
|
|
261
|
+
provider: configuration.provider,
|
|
262
|
+
directoryName: relativePath.split(sep).join("/"),
|
|
263
|
+
metrics: Object.freeze(configuration.metrics.map((metric) => Object.freeze({ ...metric }))),
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
return Object.freeze(evaluations);
|
|
267
|
+
}
|
|
220
268
|
function loadSkillRegistrations(agentName, registryPath) {
|
|
269
|
+
return loadFolderRegistrations(agentName, registryPath, "skills", "skill", "orchajs/skills", "../skills.js");
|
|
270
|
+
}
|
|
271
|
+
function loadEvaluationRegistrations(agentName, registryPath) {
|
|
272
|
+
return loadFolderRegistrations(agentName, registryPath, "evaluations", "evaluation", "orchajs/evaluations", "../evaluations.js");
|
|
273
|
+
}
|
|
274
|
+
function loadFolderRegistrations(agentName, registryPath, collectionName, itemName, moduleSpecifier, helperPath) {
|
|
221
275
|
let output;
|
|
222
276
|
try {
|
|
223
277
|
const result = buildSync({
|
|
224
278
|
entryPoints: [registryPath],
|
|
225
279
|
alias: {
|
|
226
|
-
|
|
280
|
+
[moduleSpecifier]: resolve(dirname(fileURLToPath(import.meta.url)), helperPath),
|
|
227
281
|
},
|
|
228
282
|
bundle: true,
|
|
229
283
|
write: false,
|
|
@@ -235,7 +289,7 @@ function loadSkillRegistrations(agentName, registryPath) {
|
|
|
235
289
|
output = result.outputFiles[0]?.text ?? "";
|
|
236
290
|
}
|
|
237
291
|
catch (error) {
|
|
238
|
-
throw new Error(`Agent "${agentName}"
|
|
292
|
+
throw new Error(`Agent "${agentName}" ${collectionName}/index.js could not be bundled.`, { cause: error });
|
|
239
293
|
}
|
|
240
294
|
try {
|
|
241
295
|
const module = { exports: {} };
|
|
@@ -251,7 +305,7 @@ function loadSkillRegistrations(agentName, registryPath) {
|
|
|
251
305
|
return registrations;
|
|
252
306
|
}
|
|
253
307
|
catch (error) {
|
|
254
|
-
throw new Error(`Agent "${agentName}"
|
|
308
|
+
throw new Error(`Agent "${agentName}" ${collectionName}/index.js must default-export ${itemName} registrations.`, { cause: error });
|
|
255
309
|
}
|
|
256
310
|
}
|
|
257
311
|
function validateSkillConfiguration(agentName, registrationName, configuration) {
|
|
@@ -274,6 +328,63 @@ function validateSkillConfiguration(agentName, registrationName, configuration)
|
|
|
274
328
|
throw new Error(`Skill "${agentName}/${registrationName}" triggers must be non-empty strings.`);
|
|
275
329
|
}
|
|
276
330
|
}
|
|
331
|
+
function validateEvaluationConfiguration(agentName, registrationName, configuration) {
|
|
332
|
+
const label = `Evaluation "${agentName}/${registrationName}"`;
|
|
333
|
+
if (!configuration ||
|
|
334
|
+
typeof configuration !== "object" ||
|
|
335
|
+
Array.isArray(configuration) ||
|
|
336
|
+
typeof configuration.name !== "string" ||
|
|
337
|
+
!configuration.name.trim()) {
|
|
338
|
+
throw new Error(`${label} requires a name.`);
|
|
339
|
+
}
|
|
340
|
+
if (!/^[a-zA-Z0-9_-]{1,64}$/.test(configuration.name)) {
|
|
341
|
+
throw new Error(`${label} has an invalid name.`);
|
|
342
|
+
}
|
|
343
|
+
if (configuration.description !== undefined &&
|
|
344
|
+
(typeof configuration.description !== "string" ||
|
|
345
|
+
!configuration.description.trim())) {
|
|
346
|
+
throw new Error(`${label} description must be a non-empty string.`);
|
|
347
|
+
}
|
|
348
|
+
if (!isBuiltInProvider(configuration.provider)) {
|
|
349
|
+
throw new Error(`${label} uses unsupported provider "${configuration.provider}".`);
|
|
350
|
+
}
|
|
351
|
+
if (typeof configuration.model !== "string" || !configuration.model.trim()) {
|
|
352
|
+
throw new Error(`${label} requires a model.`);
|
|
353
|
+
}
|
|
354
|
+
if (configuration.enabled !== undefined &&
|
|
355
|
+
typeof configuration.enabled !== "boolean") {
|
|
356
|
+
throw new Error(`${label} enabled must be a boolean.`);
|
|
357
|
+
}
|
|
358
|
+
validateNumber(`${agentName}/${registrationName}`, "maxTokens", configuration.maxTokens, { integer: true, minimum: 1 });
|
|
359
|
+
if (configuration.reasoningLevel !== undefined &&
|
|
360
|
+
(typeof configuration.reasoningLevel !== "string" ||
|
|
361
|
+
!configuration.reasoningLevel.trim())) {
|
|
362
|
+
throw new Error(`${label} reasoningLevel must be a non-empty string.`);
|
|
363
|
+
}
|
|
364
|
+
if (!Array.isArray(configuration.metrics) ||
|
|
365
|
+
configuration.metrics.length === 0) {
|
|
366
|
+
throw new Error(`${label} requires at least one metric.`);
|
|
367
|
+
}
|
|
368
|
+
const names = new Set();
|
|
369
|
+
for (const metric of configuration.metrics) {
|
|
370
|
+
if (!metric ||
|
|
371
|
+
typeof metric !== "object" ||
|
|
372
|
+
typeof metric.name !== "string" ||
|
|
373
|
+
!/^[a-zA-Z0-9_-]{1,64}$/.test(metric.name) ||
|
|
374
|
+
typeof metric.description !== "string" ||
|
|
375
|
+
!metric.description.trim() ||
|
|
376
|
+
typeof metric.threshold !== "number" ||
|
|
377
|
+
!Number.isFinite(metric.threshold) ||
|
|
378
|
+
metric.threshold < 0 ||
|
|
379
|
+
metric.threshold > 1) {
|
|
380
|
+
throw new Error(`${label} metrics require a valid name, description, and threshold between 0 and 1.`);
|
|
381
|
+
}
|
|
382
|
+
if (names.has(metric.name)) {
|
|
383
|
+
throw new Error(`${label} has duplicate metric "${metric.name}".`);
|
|
384
|
+
}
|
|
385
|
+
names.add(metric.name);
|
|
386
|
+
}
|
|
387
|
+
}
|
|
277
388
|
function compileLocalAction(agentName, directoryName, actionsDirectory) {
|
|
278
389
|
const entryPath = resolve(actionsDirectory, directoryName, "index.js");
|
|
279
390
|
if (!existsSync(entryPath)) {
|