Skip to content

feat(claude_code): per-agent reasoning effort via claudeConfig#1

Closed
vprudnikoff wants to merge 1 commit into
mainfrom
feat/claude-agent-config
Closed

feat(claude_code): per-agent reasoning effort via claudeConfig#1
vprudnikoff wants to merge 1 commit into
mainfrom
feat/claude-agent-config

Conversation

@vprudnikoff

@vprudnikoff vprudnikoff commented Jun 6, 2026

Copy link
Copy Markdown
Owner

What

Adds a claudeConfig field to the agent profile, the Claude Code analog of codexConfig (PR awslabs#278) for the codex provider. The claude_code provider maps it to Claude Code CLI flags at launch:

claudeConfig key Claude Code flag
effort --effort <level>
fallback_model --fallback-model <model>

The top-level model field still maps to --model (unchanged), mirroring how codex keeps model separate from codexConfig.

Why

Today the only lever for a claude_code agent's reasoning effort is the machine-global effortLevel in ~/.claude/settings.json (or the CLAUDE_CODE_EFFORT_LEVEL env var, which the provider already preserves). That silently differs between machines: an orchestrator profile meant to run at xhigh falls back to the Claude Code default (high) on any host where the global setting is absent. codexConfig already solves the equivalent problem per-agent for codex; this brings parity to claude_code.

Example

name: cto
provider: claude_code
claudeConfig:
  effort: xhigh

Tests

test/providers/test_claude_code_unit.py::TestClaudeCodeProviderClaudeConfig: effort flag emitted when set, fallback-model emitted when set, no flag when claudeConfig is absent. Docs updated in docs/agent-profile.md.

Add a `claudeConfig` field to the agent profile, the Claude Code analog of
`codexConfig` for the codex provider. The claude_code provider maps it to
Claude Code CLI flags at launch:

  - effort         -> --effort <level>
  - fallback_model -> --fallback-model <model>

This lets a profile set per-agent reasoning effort (e.g. an orchestrator at
xhigh) without relying on the machine-global `effortLevel` in
~/.claude/settings.json, which silently differs between machines. The
top-level `model` field still maps to `--model`.
@vprudnikoff vprudnikoff force-pushed the feat/claude-agent-config branch from a16cc37 to 25ac0d6 Compare June 6, 2026 13:54
@vprudnikoff

Copy link
Copy Markdown
Owner Author

Superseded by #2 with a clean single-commit history (no extra trailers).

@vprudnikoff vprudnikoff closed this Jun 6, 2026
@vprudnikoff vprudnikoff deleted the feat/claude-agent-config branch June 6, 2026 13:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant