/effort: controlando o thinking no Claude Code
O slash command que define quanto o Claude pensa antes de responder. Sintaxe, magic word ultrathink e os ajustes em settings.json — sem teoria, só o controle prático.
/effort <nível> define quanto raciocínio interno o modelo aloca antes de responder, na sessão atual do Claude Code. Níveis aceitos: low, medium, high, xhigh (só Opus 4.7) e max. Default: Opus 4.7 começa em xhigh; Sonnet 4.6 e Opus 4.6, em high.
O conceito por trás (o que é thinking, como cobra, quando vale a pena) está em outro post de fundamentos. Esse aqui é só o controle.
Quando uso /effort
- Bati a parede com effort baixo — Sonnet rodando
mediumque não consegue fechar o bug./effort highmantém a sessão e dá mais músculo sem recomeçar nada. - Plan Mode pra coisa séria —
/effort highantes de entrar no plano. O plano sai mais sólido; na execução, dá pra voltar pramediumse quiser. - Tarefa simples no meio de sessão pesada —
/effort lowpra renomear variáveis sem queimar token de raciocínio, depois volto pro nível anterior com/effort highou/effort medium.
Quando não uso
- Quero o efeito só naquele turno — escrevo
ultrathinkno prompt. É magic word: empurra o thinking pra cima naquela mensagem sem mudar a sessão. - Default global da máquina —
/config→alwaysThinkingEnableddefine o padrão.Alt+T(Linux/Win) /Option+T(macOS) também alterna o display de thinking. - Quero desligar thinking —
MAX_THINKING_TOKENS=0no ambiente. Latência mínima, zero raciocínio interno. - Quero o modo legado (manual, com
budget_tokens) — só Opus 4.6 e Sonnet 4.6:CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1. Em Opus 4.7 isso é ignorado — só adaptive existe.
Pitfall que vale lembrar
/effort afeta só a sessão atual. Fechou o terminal, o nível volta pro default do modelo. Pra persistir, vai em alwaysThinkingEnabled no settings ou na env var. Já me peguei achando que tinha “deixado em high” depois de reabrir o Claude — não tinha.
E ultrathink só funciona na mensagem onde aparece. Se a sessão tá em low e você quer um turno bom, é literal: “ultrathink, [resto do prompt]”. Não basta achar que pediu — a palavra precisa estar lá.
Resumindo
/effort é controle de sessão. ultrathink é boost de um turno. alwaysThinkingEnabled no settings é o default global. Os três se sobrepõem nessa ordem — global, depois sessão, depois turno. Default sensato: global em medium, escala pra high com /effort quando o trabalho pedir.