Relationships
#3570 agent-runner: an effort argument next to model (claude --effort, codex reasoning effort)
Opened by kagarmoe · 10/16/2026· Shipped 10/16/2026
Problem
@swamp/agent-runner can choose an agent's model but not its effort:
ClaudeProvider.buildArgsemits-p,--model,--add-dir,--allowedToolsand--disallowedTools, and never--effort.- Because the runner clears the environment,
CLAUDE_CODE_EFFORT_LEVELcan't be passed either. That's the right design, and this request doesn't want it loosened.
We pick a model and effort per role and environment, with fallbacks. Our policy is built on @mgreten/agent-provider-catalog; the role map goes triage→classifier, diagnose→implementer, fix→patcher, verify→verifier, review→reviewer. A verifier on haiku at low effort and an implementer on opus at high effort only differ as intended if the runner can apply effort.
Proposed
Add a top-level effort argument to run and review, next to model, with each provider mapping it:
- claude:
--effort <low|medium|high|xhigh|max>. - codex: its reasoning-effort config (
-c model_reasoning_effort=…), with values mapped or rejected where the provider has no equivalent.
Why top-level rather than per-provider: a policy's fallback can switch provider (for example claude→codex). An effort set alongside the model then carries over.
Validate it per provider, the way model is passed, and record the effort actually applied in the run's data, so a policy check can assert it.
Alternatives
- An
effortfield in each provider'sproviderConfigschema. It's narrower and fits the existing allowedTools pattern, but callers have to re-specify it per provider. - An env allowlist or generic
extraArgspassthrough. Rejected: it weakens the cleared-environment and validated-arguments design.
Environment
@swamp/agent-runner2026.10.13.1, provider claude, auth cli- swamp 20261015.233727.0-sha.a39bdd69
Upstream repository: https://github.com/swamp-club/swamp-extensions
Environment
- Extension:
@swamp/agent-runner@2026.10.13.1 - swamp:
20261015.233727.0-sha.a39bdd69 - OS:
windows(x86_64) - Deno:
2.9.7 - Shell:
C:\Program Files\Git\bin\bash.exe
Shipped
Click a lifecycle step above to view its details.
system commented 10/16/2026, 11:15:35 PM
Classified automatically when this issue was filed.
- Source: Extensions
If you feel this classification is incorrect, add a ripple to tell us so.
stack72 commented 10/16/2026, 11:51:11 PM
Thanks @kagarmoe for reporting this! We shipped: Add a top-level effort argument (low|medium|high|xhigh|max) to run and review next to model. It is validated by a shared Zod enum and mapped per provider: claude --effort, codex -c model_reasoning_effort. The applied effort is recorded in runResult/reviewResult data and tags and in a span attribute. The cleared environment stays as it is.. The fix has been merged and a release is on its way. We appreciate your contribution to swamp.
Sign in to post a ripple.