agentv 2.11.0 → 2.11.2
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/dist/{chunk-GO7OTNQ4.js → chunk-IL7CRMY6.js} +20 -9
- package/dist/chunk-IL7CRMY6.js.map +1 -0
- package/dist/{chunk-EXJWRKKL.js → chunk-MQIQH5LB.js} +90 -7
- package/dist/chunk-MQIQH5LB.js.map +1 -0
- package/dist/{chunk-CVC3VMZ3.js → chunk-SNABHVUB.js} +66 -19
- package/dist/chunk-SNABHVUB.js.map +1 -0
- package/dist/cli.js +3 -3
- package/dist/{dist-NYXYDALF.js → dist-OVEHXEXC.js} +2 -2
- package/dist/index.js +3 -3
- package/dist/{interactive-V4A3RRU3.js → interactive-7NQRG7GK.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-CVC3VMZ3.js.map +0 -1
- package/dist/chunk-EXJWRKKL.js.map +0 -1
- package/dist/chunk-GO7OTNQ4.js.map +0 -1
- package/dist/templates/.agents/skills/agentv-chat-to-eval/README.md +0 -84
- package/dist/templates/.agents/skills/agentv-chat-to-eval/SKILL.md +0 -144
- package/dist/templates/.agents/skills/agentv-chat-to-eval/examples/transcript-json.md +0 -67
- package/dist/templates/.agents/skills/agentv-chat-to-eval/examples/transcript-markdown.md +0 -101
- package/dist/templates/.agents/skills/agentv-eval-builder/SKILL.md +0 -458
- package/dist/templates/.agents/skills/agentv-eval-builder/references/config-schema.json +0 -36
- package/dist/templates/.agents/skills/agentv-eval-builder/references/custom-evaluators.md +0 -118
- package/dist/templates/.agents/skills/agentv-eval-builder/references/eval-schema.json +0 -12753
- package/dist/templates/.agents/skills/agentv-eval-builder/references/rubric-evaluator.md +0 -77
- package/dist/templates/.agents/skills/agentv-eval-orchestrator/SKILL.md +0 -50
- package/dist/templates/.agents/skills/agentv-prompt-optimizer/SKILL.md +0 -78
- /package/dist/{dist-NYXYDALF.js.map → dist-OVEHXEXC.js.map} +0 -0
- /package/dist/{interactive-V4A3RRU3.js.map → interactive-7NQRG7GK.js.map} +0 -0
|
@@ -34349,9 +34349,14 @@ async function loadConfig(evalFilePath, repoRoot) {
|
|
|
34349
34349
|
logWarning(`Invalid eval_patterns in ${configPath}, all entries must be strings`);
|
|
34350
34350
|
continue;
|
|
34351
34351
|
}
|
|
34352
|
+
const executionDefaults = parseExecutionDefaults(
|
|
34353
|
+
parsed.execution,
|
|
34354
|
+
configPath
|
|
34355
|
+
);
|
|
34352
34356
|
return {
|
|
34353
34357
|
guideline_patterns: guidelinePatterns,
|
|
34354
|
-
eval_patterns: evalPatterns
|
|
34358
|
+
eval_patterns: evalPatterns,
|
|
34359
|
+
execution: executionDefaults
|
|
34355
34360
|
};
|
|
34356
34361
|
} catch (error40) {
|
|
34357
34362
|
logWarning(
|
|
@@ -34492,6 +34497,36 @@ function extractTotalBudgetUsd(suite) {
|
|
|
34492
34497
|
);
|
|
34493
34498
|
return void 0;
|
|
34494
34499
|
}
|
|
34500
|
+
function parseExecutionDefaults(raw, configPath) {
|
|
34501
|
+
if (!raw || typeof raw !== "object" || Array.isArray(raw)) {
|
|
34502
|
+
return void 0;
|
|
34503
|
+
}
|
|
34504
|
+
const obj = raw;
|
|
34505
|
+
const result = {};
|
|
34506
|
+
if (typeof obj.verbose === "boolean") {
|
|
34507
|
+
result.verbose = obj.verbose;
|
|
34508
|
+
} else if (obj.verbose !== void 0) {
|
|
34509
|
+
logWarning(`Invalid execution.verbose in ${configPath}, expected boolean`);
|
|
34510
|
+
}
|
|
34511
|
+
const traceFile = obj.trace_file;
|
|
34512
|
+
if (typeof traceFile === "string" && traceFile.trim().length > 0) {
|
|
34513
|
+
result.trace_file = traceFile.trim();
|
|
34514
|
+
} else if (traceFile !== void 0) {
|
|
34515
|
+
logWarning(`Invalid execution.trace_file in ${configPath}, expected non-empty string`);
|
|
34516
|
+
}
|
|
34517
|
+
if (typeof obj.keep_workspaces === "boolean") {
|
|
34518
|
+
result.keep_workspaces = obj.keep_workspaces;
|
|
34519
|
+
} else if (obj.keep_workspaces !== void 0) {
|
|
34520
|
+
logWarning(`Invalid execution.keep_workspaces in ${configPath}, expected boolean`);
|
|
34521
|
+
}
|
|
34522
|
+
const otelFile = obj.otel_file;
|
|
34523
|
+
if (typeof otelFile === "string" && otelFile.trim().length > 0) {
|
|
34524
|
+
result.otel_file = otelFile.trim();
|
|
34525
|
+
} else if (otelFile !== void 0) {
|
|
34526
|
+
logWarning(`Invalid execution.otel_file in ${configPath}, expected non-empty string`);
|
|
34527
|
+
}
|
|
34528
|
+
return Object.keys(result).length > 0 ? result : void 0;
|
|
34529
|
+
}
|
|
34495
34530
|
function logWarning(message) {
|
|
34496
34531
|
console.warn(`${ANSI_YELLOW2}Warning: ${message}${ANSI_RESET2}`);
|
|
34497
34532
|
}
|
|
@@ -39133,6 +39168,16 @@ var CopilotCliProvider = class {
|
|
|
39133
39168
|
}
|
|
39134
39169
|
const endTime = (/* @__PURE__ */ new Date()).toISOString();
|
|
39135
39170
|
const durationMs = Date.now() - startMs;
|
|
39171
|
+
const rejectedCalls = completedToolCalls.filter((tc) => {
|
|
39172
|
+
const out = tc.output;
|
|
39173
|
+
return out && (out.code === "rejected" || out.code === "denied");
|
|
39174
|
+
});
|
|
39175
|
+
if (rejectedCalls.length > 0) {
|
|
39176
|
+
const tools = rejectedCalls.map((tc) => tc.tool).join(", ");
|
|
39177
|
+
throw new Error(
|
|
39178
|
+
`Copilot rejected ${rejectedCalls.length} tool call(s): ${tools}. Add args: ["--yolo"] to your target config or re-run with --yolo to bypass permission checks.`
|
|
39179
|
+
);
|
|
39180
|
+
}
|
|
39136
39181
|
const outputMessages = [];
|
|
39137
39182
|
if (completedToolCalls.length > 0) {
|
|
39138
39183
|
outputMessages.push({
|
|
@@ -39165,7 +39210,7 @@ var CopilotCliProvider = class {
|
|
|
39165
39210
|
}
|
|
39166
39211
|
}
|
|
39167
39212
|
buildCliArgs() {
|
|
39168
|
-
const args = ["--acp", "--stdio", "--allow-all-tools"];
|
|
39213
|
+
const args = ["--acp", "--stdio", "--allow-all-tools", "--yolo"];
|
|
39169
39214
|
if (this.config.model) {
|
|
39170
39215
|
args.push("--model", this.config.model);
|
|
39171
39216
|
}
|
|
@@ -46248,7 +46293,7 @@ var RepoManager = class {
|
|
|
46248
46293
|
* Creates on first access, fetches updates on subsequent calls.
|
|
46249
46294
|
* Returns the absolute path to the cache directory.
|
|
46250
46295
|
*/
|
|
46251
|
-
async ensureCache(source) {
|
|
46296
|
+
async ensureCache(source, depth) {
|
|
46252
46297
|
const key = cacheKey(source);
|
|
46253
46298
|
const cachePath = path35.join(this.cacheDir, key);
|
|
46254
46299
|
const lockPath = `${cachePath}.lock`;
|
|
@@ -46256,9 +46301,20 @@ var RepoManager = class {
|
|
|
46256
46301
|
await acquireLock(lockPath);
|
|
46257
46302
|
try {
|
|
46258
46303
|
if (existsSync2(path35.join(cachePath, "HEAD"))) {
|
|
46259
|
-
|
|
46304
|
+
const fetchArgs = ["fetch", "--prune"];
|
|
46305
|
+
if (depth) {
|
|
46306
|
+
fetchArgs.push("--depth", String(depth));
|
|
46307
|
+
}
|
|
46308
|
+
await git(fetchArgs, { cwd: cachePath });
|
|
46260
46309
|
} else {
|
|
46261
|
-
|
|
46310
|
+
const cloneArgs = ["clone", "--mirror", "--bare"];
|
|
46311
|
+
if (depth) {
|
|
46312
|
+
cloneArgs.push("--depth", String(depth));
|
|
46313
|
+
}
|
|
46314
|
+
const sourceUrl = getSourceUrl(source);
|
|
46315
|
+
const cloneUrl = depth && source.type === "local" ? `file://${sourceUrl}` : sourceUrl;
|
|
46316
|
+
cloneArgs.push(cloneUrl, cachePath);
|
|
46317
|
+
await git(cloneArgs);
|
|
46262
46318
|
}
|
|
46263
46319
|
} finally {
|
|
46264
46320
|
await releaseLock(lockPath);
|
|
@@ -46271,7 +46327,7 @@ var RepoManager = class {
|
|
|
46271
46327
|
*/
|
|
46272
46328
|
async materialize(repo, workspacePath) {
|
|
46273
46329
|
const targetDir = path35.join(workspacePath, repo.path);
|
|
46274
|
-
const cachePath = await this.ensureCache(repo.source);
|
|
46330
|
+
const cachePath = await this.ensureCache(repo.source, repo.clone?.depth);
|
|
46275
46331
|
const cloneArgs = ["clone"];
|
|
46276
46332
|
if (repo.clone?.depth) {
|
|
46277
46333
|
cloneArgs.push("--depth", String(repo.clone.depth));
|
|
@@ -46347,6 +46403,33 @@ var RepoManager = class {
|
|
|
46347
46403
|
await git(["clean", "-fd"], { cwd: targetDir });
|
|
46348
46404
|
}
|
|
46349
46405
|
}
|
|
46406
|
+
/**
|
|
46407
|
+
* Seed the cache from a local repository, setting the remote to a given URL.
|
|
46408
|
+
* Useful for avoiding slow network clones when a local clone already exists.
|
|
46409
|
+
*/
|
|
46410
|
+
async seedCache(localPath, remoteUrl, opts) {
|
|
46411
|
+
const source = { type: "git", url: remoteUrl };
|
|
46412
|
+
const key = cacheKey(source);
|
|
46413
|
+
const cachePath = path35.join(this.cacheDir, key);
|
|
46414
|
+
const lockPath = `${cachePath}.lock`;
|
|
46415
|
+
await mkdir11(this.cacheDir, { recursive: true });
|
|
46416
|
+
await acquireLock(lockPath);
|
|
46417
|
+
try {
|
|
46418
|
+
if (existsSync2(path35.join(cachePath, "HEAD"))) {
|
|
46419
|
+
if (!opts?.force) {
|
|
46420
|
+
throw new Error(
|
|
46421
|
+
`Cache already exists for ${remoteUrl} at ${cachePath}. Use force to overwrite.`
|
|
46422
|
+
);
|
|
46423
|
+
}
|
|
46424
|
+
await rm5(cachePath, { recursive: true, force: true });
|
|
46425
|
+
}
|
|
46426
|
+
await git(["clone", "--mirror", "--bare", localPath, cachePath]);
|
|
46427
|
+
await git(["remote", "set-url", "origin", remoteUrl], { cwd: cachePath });
|
|
46428
|
+
} finally {
|
|
46429
|
+
await releaseLock(lockPath);
|
|
46430
|
+
}
|
|
46431
|
+
return cachePath;
|
|
46432
|
+
}
|
|
46350
46433
|
/** Remove the entire cache directory. */
|
|
46351
46434
|
async cleanCache() {
|
|
46352
46435
|
await rm5(this.cacheDir, { recursive: true, force: true });
|
|
@@ -48761,4 +48844,4 @@ export {
|
|
|
48761
48844
|
OtelStreamingObserver,
|
|
48762
48845
|
createAgentKernel
|
|
48763
48846
|
};
|
|
48764
|
-
//# sourceMappingURL=chunk-
|
|
48847
|
+
//# sourceMappingURL=chunk-MQIQH5LB.js.map
|