Feature request: defaultEffort setting in settings.json

Resolved 💬 3 comments Opened Apr 25, 2026 by oscardcstudio-cell Closed Apr 28, 2026

Summary

Add a defaultEffort (or similar) key in settings.json so users can pin the default thinking effort level (low / medium / high / xhigh) per session, the same way model pins the default model.

Motivation

Today, two related dimensions are configurable:

  • Model: settable in ~/.claude/settings.json via "model": "..." (persistent)
  • Effort: only switchable per-session via the /effort slash command (not persistent)

This means every new session starts at the harness-default effort, even for users who consistently want a higher (or lower) baseline. There's MAX_THINKING_TOKENS env var, but it only caps thinking — it doesn't set the default effort tier.

For users who routinely run complex work (architecture, planning, debugging) and prefer high-effort thinking by default, having to type /effort high at the start of every session is friction. Conversely, users on tight token budgets who want low-effort by default have the same issue in reverse.

Proposal

Add to settings.json:

{
  "model": "claude-sonnet-4-6",
  "defaultEffort": "high"
}

Valid values: "low" | "medium" | "high" | "xhigh" (whatever the current /effort command accepts).

Behavior: applied at session start. Still overridable mid-session via /effort.

Why this matters

Across millions of sessions, the cumulative cost of starting at the wrong default effort and either:

  • (a) wasting thinking tokens on trivial tasks, or
  • (b) under-thinking on complex tasks and re-running

…adds up to non-trivial token / energy spend. A single line of config would let each user pin their personal sweet spot.

Notes

  • The /effort slash command already exists and its possible values are well-defined.
  • MAX_THINKING_TOKENS already exists as a hard cap — defaultEffort would set the target tier, capped by the existing env var.
  • This is settings-only, no model or API change needed.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗