Skip to content

Commit 7dd2338

Browse files
hbrooksclaude
andauthored
Replace run --budget with a general --config-override <yaml> flag (#13)
Drop the -b, --budget convenience flag. Expose the full config-override mechanism directly: -o, --config-override <yaml> is a partial agent config merged onto the chosen config and re-validated server-side (set limits.run to override the budget). README updated. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent fef18b4 commit 7dd2338

2 files changed

Lines changed: 7 additions & 9 deletions

File tree

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ agent me # show the current credential's identity
2424
agent run start --config <id> # start a run from a saved config
2525
agent run start --config-file f.json # ...or from an inline config
2626
agent run start --template welcome-to-ellipsis # ...or from a maintained template
27+
agent run start --config <id> --config-override "limits:\n run: 5" # override config fields for this run
2728
agent run start --config <id> --watch # start and immediately stream it
2829
agent run list --limit 20 # list recent runs (filter by --source, --days, …)
2930
agent run get <run-id> # inspect one run (prints a dashboard link)

src/commands/run.tsx

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,8 @@ export function registerRun(program: Command): void {
4444
'start from a maintained run template (e.g. welcome-to-ellipsis)',
4545
)
4646
.option(
47-
'-b, --budget <usd>',
48-
"per-run budget override in USD (sets the config's limits.run for this run)",
49-
parseFloat,
47+
'-o, --config-override <yaml>',
48+
'partial agent config (YAML) merged onto the chosen config for this run, e.g. "limits:\\n run: 5"',
5049
)
5150
.option(
5251
'-m, --metadata <key=value>',
@@ -62,7 +61,7 @@ export function registerRun(program: Command): void {
6261
config?: string
6362
configFile?: string
6463
template?: string
65-
budget?: number
64+
configOverride?: string
6665
metadata: Record<string, string>
6766
source: string
6867
watch?: boolean
@@ -85,11 +84,9 @@ export function registerRun(program: Command): void {
8584
if (opts.config) req.config_id = opts.config
8685
if (opts.configFile) req.config = readJsonFile(opts.configFile)
8786
if (opts.template) req.template_id = opts.template
88-
// A budget is expressed as a config override of limits.run (the server
89-
// merges it onto the chosen config and re-validates).
90-
if (opts.budget !== undefined) {
91-
req.config_override_yaml = `limits:\n run: ${opts.budget}`
92-
}
87+
// Merged onto the chosen config and re-validated server-side; set
88+
// limits.run here to override this run's budget.
89+
if (opts.configOverride) req.config_override_yaml = opts.configOverride
9390

9491
const api = new ApiClient()
9592
const run = await api.startAgentRun(req)

0 commit comments

Comments
 (0)