Esse é o starter que mostrei no vídeo. É um subconjunto seguro do meu: liberei só o que é tranquilo e deixei os comandos destrutivos de fora (eles continuam pedindo permissão). Adiciona os teus conforme for confiando.
Antes de colar
- Instala o RTK primeiro: rtk init.
O hook lá embaixo depende dele — sem isso, dá erro de comando não encontrado. (RTK é open-source e gratuito: https://github.com/rtk-ai/rtk>).
- Cola o bloco abaixo em ~/.claude/settings.json (vide doc https://code.claude.com/docs/en/settings)
settings.json:
{
"env": {
"CLAUDE_CODE_SUBAGENT_MODEL": "sonnet"
},
"attribution": { "commit": "", "pr": "" },
"permissions": {
"defaultMode": "auto",
"allow": [
"WebSearch", "WebFetch",
"Bash(ls:*)", "Bash(cat:*)", "Bash(head:*)", "Bash(tail:*)",
"Bash(grep:*)", "Bash(rg:*)", "Bash(find:*)", "Bash(tree:*)",
"Bash(wc:*)", "Bash(diff:*)", "Bash(pwd:*)", "Bash(which:*)",
"Bash(file:*)", "Bash(stat:*)", "Bash(env:*)", "Bash(date:*)",
"Bash(jq:*)", "Bash(yq:*)", "Bash(git:*)",
"Bash(node:*)", "Bash(npx:*)", "Bash(pnpm:*)", "Bash(python3:*)",
"Bash(tsc:*)", "Bash(tsx:*)"
]
},
"hooks": {
"PreToolUse": [
{ "matcher": "Bash", "hooks": [ { "type": "command", "command": "rtk hook claude" } ] }
]
},
"effortLevel": "xhigh",
"skipWorkflowUsageWarning": true
}
O que cada bloco faz
- CLAUDE_CODE_SUBAGENT_MODEL: "sonnet" — o trabalho pesado roda no Opus; os subagentes, no Sonnet. Economia sem perder qualidade onde importa.
- hooks → rtk hook claude — o RTK. Reescreve cada comando de shell e comprime a saída antes de chegar no modelo (60–90% menos token). Você não muda nada no teu jeito de trabalhar.
- permissions.allow + defaultMode: "auto" — a lista curada do que é seguro. O que não está aqui, o Claude ainda pergunta. Fim do "allow, allow, allow".
- attribution: "" — tira o rodapé "Generated with Claude Code" dos commits e PRs.
- effortLevel: "xhigh" — raciocínio no máximo.
O que deixei de fora de propósito
- Comandos destrutivos no allow (rm, kill, docker, curl…): no meu setup eu libero, aqui não. Comece seguro e vá adicionando o que confia.
- skipDangerousModePermissionPrompt / skipAutoPermissionPrompt: eu uso, mas são flags de power-user. Entenda o que fazem antes de ligar.
- statusLine, plugins e agent teams: são coisas minhas/experimentais, não entram num starter genérico.