From 0b0186674e8e36736d1f5b78ab8d1d0b714472d9 Mon Sep 17 00:00:00 2001 From: alexion Date: Sun, 19 Jul 2026 09:46:27 -0400 Subject: [PATCH] feat(bench): add --skill to override the gitea-axi arm's bundled skill MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit bench:run gains a --skill flag, threaded into the existing BuildArmOptions.skillPath, so a skill variant can be A/B'd against the shipped SKILL.md with the same binary and harness — the mechanism used to validate the find-then-act rewrite — without mutating the shipped file. --- bench/run.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bench/run.ts b/bench/run.ts index e92913c..990bda7 100644 --- a/bench/run.ts +++ b/bench/run.ts @@ -57,6 +57,8 @@ export interface RunArgs { turnCap: number; wallClockMs: number; storeRoot: string; + /** Optional bundled-skill override for the gitea-axi arm; defaults to the shipped SKILL.md. */ + skillPath?: string; } /** The parse outcome: a request for help, or a resolved configuration to run. */ @@ -71,6 +73,7 @@ const KNOWN_FLAGS = new Set([ "turn-cap", "wall-clock-ms", "store", + "skill", ]); /** A usage error, surfaced to the maintainer with the offending detail. */ @@ -157,6 +160,7 @@ export function parseRunArgs( turnCap, wallClockMs, storeRoot: flags.get("store") ?? DEFAULT_STORE_ROOT, + ...(flags.has("skill") ? { skillPath: flags.get("skill") } : {}), }; } @@ -180,6 +184,7 @@ Options: --turn-cap Per-run turn cap (default: ${DEFAULT_TURN_CAP}) --wall-clock-ms Per-run wall-clock backstop in ms (default: ${DEFAULT_WALL_CLOCK_MS}) --store Sample store root (default: ${DEFAULT_STORE_ROOT}) + --skill Override the gitea-axi arm's bundled skill (default: shipped SKILL.md) -h, --help Show this help`; /** Render the run-loop tally into the lines printed after a sitting. */ @@ -246,7 +251,7 @@ export async function runBenchCommand( driver: sdkAgentDriver(), store, bounds: { turnCap: parsed.turnCap, wallClockMs: parsed.wallClockMs }, - build: { binRoot }, + build: { binRoot, ...(parsed.skillPath !== undefined ? { skillPath: parsed.skillPath } : {}) }, }); for (const line of summarize(result, parsed.storeRoot)) { out(line);