PTENES
Pular para o conteúdo
MÓDULO 4.1

🚦 Política de autonomia

Quanto maior o impacto da ação, mais você participa. O arquivo runtime/POLITICA.md escreve isso em duas tabelas, e o kit aplica as duas no Claude Code e no Codex. O padrão é um só: "prepara e pede".

6
Tópicos
~35
Minutos
N0–N4
Níveis
Fundamento
Tipo
0 de 60%
1

Leia os cinco níveis de autonomia

Até aqui você conectou ferramentas e montou um time. Falta a pergunta que decide se dá para dormir tranquilo: o que o agente pode fazer sem você?

A runtime/POLITICA.md responde com cinco níveis, de N0 a N4. A primeira linha do arquivo resume a ideia: quanto maior o impacto da ação, mais o humano participa.

🆕 Novo aqui? Três palavras deste módulo

  • Autonomia — quanto o agente age sozinho, sem esperar o seu "pode".
  • Nível (N0 a N4) — o grau dessa autonomia. N0 é só conversa. N4 é agir sem nem avisar.
  • "Prepara e pede" — o padrão do kit: o agente deixa tudo pronto e pergunta antes de fazer o que tem impacto.
NívelO agente…
N0só conversa
N1prepara; o humano executa
N2executa depois de pedir, a cada vez
N3executa sozinho e avisa
N4executa sozinho, sem aviso

O que olhar na tabela: é a cópia exata da seção "Níveis de autonomia" da POLITICA.md. A diferença entre N1 e N2 é quem aperta o botão: no N1 é você, no N2 é o agente, com o seu sim.

N0 · conversa N1 · prepara você executa N2 · pede executa depois do seu sim N3 · avisa faz e conta N4 · silêncio faz sem aviso o humano age padrão "prepara e pede" o agente age sozinho

Como ler o desenho: cada degrau dá mais liberdade ao agente. O degrau âmbar (N2) é onde o kit coloca tudo o que tem impacto. Os degraus azuis são para ações que, se derem errado, você desfaz sem dor.

💬
N0

só conversa

📝
N1

você executa

🙋
N2

pede a cada vez

📣
N3 / N4

age e avisa, ou nem avisa

2

Use o teto por tipo de ação

Os níveis sozinhos não dizem nada. Eles ganham sentido quando você liga cada tipo de ação a um nível máximo. É a segunda tabela da POLITICA.md, a do teto.

As duas últimas colunas mostram como cada teto vira configuração: no Claude Code e no Codex. Você verá as duas nos tópicos 4 e 5.

🆕 Novo aqui? O que é "teto"

Teto é o nível mais alto que uma ação pode ter. Ninguém sobe acima dele, nem o agente, nem um clique apressado. Abaixo dele você pode ser mais rígido: o teto é máximo, não obrigação.

AçãoTetoNo Claude CodeNo Codex
Ler arquivo, página, planilhaN4permitido-s read-only
Criar/alterar arquivo do projetoN3acceptEdits-s workspace-write
Comando que altera o sistemaN2pede confirmaçãosem auto-aprovação
Enviar (e-mail, mensagem, post, push)N2pede confirmaçãosem auto-aprovação
Gastar dinheiro ou créditoN1bloqueadonão executar
Apagar dados / produçãoN1 + backupbloqueado (rm -rf)não executar

O que olhar na tabela: o teto cai conforme o estrago possível sobe. Ler não quebra nada (N4). Gastar e apagar não têm volta (N1): o agente prepara e quem faz é você.

🩺

Clara e a agenda

Ler a planilha para achar horário livre é "ler planilha": N4. O agente responde sem perguntar.

Alterar a agenda mexe com paciente de verdade. A agenda não é um arquivo de rascunho do projeto: é dado da clínica em uso. Clara trata como comando que altera o sistema: N2, o agente pede a cada vez.

🧾

Sônia e o dinheiro do cliente

Somar o CSV de vendas é ler: N4. Montar o relatório num arquivo novo é alterar arquivo do projeto: N3.

Pagar guia, emitir boleto ou gastar crédito é "gastar dinheiro": N1. O agente deixa tudo pronto, e quem paga é a Sônia.

🎯 Objetivo: ver o agente consultar a política antes de responder

Abra claude na pasta do kit e cole:

Leia runtime/POLITICA.md e responda em uma linha qual é o teto de 'Enviar'.

Resultado provado no CHANGELOG 0.2.0 (mesma pergunta, numa sessão em segundo plano):

respondeu "N2" lendo a POLITICA
Como verificar: a resposta diz N2. Troque 'Enviar' por 'Gastar dinheiro ou crédito' e a resposta tem de ser N1.
👀
Ler

teto N4

✏️
Alterar arquivo

teto N3

📤
Enviar

teto N2

💸
Gastar / apagar

teto N1

3

Entenda por que "sempre permitir" tem teto

Quando o Claude Code pede licença, ele oferece "sim", "não" e uma opção para não perguntar mais. Na décima pergunta seguida, a tentação é clicar na terceira. Em um dos vídeos de mods, havia até um ajudante que aprovava as permissões sozinho.

A POLITICA.md fecha essa porta com uma frase: uma permissão "sempre permitir" nunca passa do teto da ação. Você pode liberar leitura para sempre. Não pode liberar pagamento para sempre.

✓ "Sempre permitir" faz sentido

  • ✓ Ler a agenda da Clara (teto N4)
  • ✓ Ler o CSV de vendas da Sônia (teto N4)
  • ✓ Criar um relatório na pasta do projeto (teto N3)
  • ✓ Rodar o doctor.mjs, que só olha e informa

✗ "Sempre permitir" passa do teto

  • ✗ Enviar mensagem a paciente (teto N2: pede a cada vez)
  • ✗ Fazer push no repositório (teto N2)
  • ✗ Pagar a guia do cliente da Sônia (teto N1)
  • ✗ Apagar uma pasta com rm -rf (N1 + backup)
1

Cansaço

Muitas perguntas seguidas, todas inofensivas. Você para de ler e começa a aprovar no automático.

2

Liberação ampla

Um clique em "não perguntar mais" vale para todos os casos parecidos, inclusive os perigosos.

3

O teto segura

Mesmo liberado, o que está acima do teto continua bloqueado ou continua perguntando. É isso que o tópico 4 mostra funcionando.

⚠️ Cuidado com o modo que libera tudo

O Claude Code tem um modo de permissão que não pergunta nada. Ele existe para testes em pasta descartável. Se você usar, o que ainda protege é só o que está escrito como bloqueio no .claude/settings.json. Por isso os bloqueios de N1 ficam no arquivo, e não na sua memória.

💡 Frase para guardar

"Sempre permitir" é atalho para o que é seguro repetir. Para o que tem impacto, a pergunta é o próprio controle: se ela some, o controle some junto.

🔁
Sempre permitir

só até o teto

😮‍💨
Cansaço

o risco real

🧱
Bloqueio escrito

não depende de clique

🙋
Pergunta

é o controle

4

Veja o bloqueio no Claude Code

No Claude Code, a política vira o arquivo .claude/settings.json, que já vem no kit. O Claude Code lê esse arquivo sozinho ao abrir na pasta.

A parte que importa aqui é a lista deny: comandos que o agente não roda, peça quem pedir. São os bloqueios básicos que a POLITICA.md cita para "apagar" e para o push forçado.

🆕 Novo aqui? Três termos do settings.json

  • settings.json — o arquivo de configuração do Claude Code para esta pasta. Texto puro, você abre e lê.
  • deny — "negar". Lista de comandos que o Claude Code recusa sem perguntar. O :* no fim quer dizer "com qualquer coisa depois".
  • hook — um pequeno programa que o Claude Code roda antes ou depois de cada ação. O kit usa hooks para a guarda (módulo 4.3).
📄 .claude/settings.json (bloco de permissões; hooks resumidos)
{
  "permissions": {
    "deny": [
      "Bash(rm -rf:*)",
      "Bash(git push --force:*)",
      "Bash(git push -f:*)",
      "Bash(git reset --hard:*)"
    ]
  },
  "enabledMcpjsonServers": [
    "ponte-modelo"
  ],
  "hooks": { ... }
}
O que mais tem no arquivo: o bloco hooks liga a guarda (colisão e raio) antes e depois de cada edição e de cada comando. Ele está resumido aqui com ... e é o assunto do módulo 4.3.
pedido: touch pedido: rm -rf .claude/settings.json lista deny vale até no modo que libera tudo roda ✓ negado ✗ provado no CHANGELOG 0.1.0

Como ler o desenho: os dois pedidos passam pela mesma caixa âmbar. O que não está na lista segue pela seta azul. O que está na lista para na seta vermelha, sem pergunta e sem depender de você estar olhando.

Resultado provado no CHANGELOG 0.1.0

O teste usou o Claude Code sem tela, no modo de permissão que libera tudo, pedindo duas coisas: criar um arquivo vazio e apagar com rm -rf.

touch roda; rm -rf negado pelo .claude/settings.json.

💡 Ajuste para o seu caso

O passo 3 do LEIA-ME.md diz: leia a POLITICA.md e ajuste o .claude/settings.json se precisar. Se a Clara tiver um comando que regrava a agenda, ele é um bom candidato a entrar na lista deny ou a ficar no N2.

⚙️
settings.json

já vem no kit

⛔
deny

4 comandos negados

🪝
hooks

a guarda, no 4.3

✅
Provado

CHANGELOG 0.1.0

5

Aplique a política no Codex

O Codex não lê o .claude/settings.json. Nele, a política entra pelo sandbox, escolhido com a opção -s a cada chamada. A tabela do teto já diz qual usar.

A ponte runtime/pontes/codex-exec.sh, que você usou no módulo 2.1, só aceita dois valores. Qualquer outro é recusado antes de o Codex ser chamado.

🆕 Novo aqui? O que é sandbox

Sandbox ("caixa de areia") é uma cerca em volta do programa. No read-only o Codex só lê. No workspace-write ele também escreve, mas só dentro da pasta indicada. Existe ainda um modo sem cerca nenhuma, e é esse que a ponte recusa.

Sandbox na ponteLinha da POLITICATeto
read-only (padrão)Ler arquivo, página, planilhaN4
workspace-writeCriar/alterar arquivo do projetoN3
qualquer outrorecusado: sandbox recusado pela POLITICA—

O que olhar na tabela: enviar, gastar e apagar não têm sandbox na ponte. Para essas linhas a POLITICA diz "sem auto-aprovação" ou "não executar": o Codex prepara, e a ação fica com você.

🎯 Objetivo: ver a ponte recusar o sandbox sem cerca

No terminal, dentro da pasta do kit:

runtime/pontes/codex-exec.sh "x" . danger-full-access

Resultado provado no CHANGELOG 0.1.0:

sandbox recusado pela POLITICA, saída 2
Como verificar: a mensagem aparece na hora, sem esperar o Codex, e a saída do comando é 2. Nenhum arquivo muda na pasta.
📄 O trecho da ponte que faz a recusa (runtime/pontes/codex-exec.sh)
case "$sandbox" in
  read-only|workspace-write) ;;
  *) echo "sandbox recusado pela POLITICA: $sandbox" >&2; exit 2 ;;
esac

💡 Por que a recusa fica na ponte

Se o Claude pedir ao Codex pelo atalho errado, a ponte barra antes. A regra está num lugar só, em quatro linhas que você consegue ler. Quem quiser mudar precisa mudar o arquivo, e isso aparece no Git.

📖
-s read-only

ler, N4

✏️
-s workspace-write

alterar, N3

🚫
Sem cerca

recusado, saída 2

🌉
Ponte

a regra num lugar só

6

Siga as três regras de integração

Além dos níveis e do teto, a POLITICA.md tem uma seção curta chamada Integração. São três regras sobre como as ferramentas se ligam umas às outras.

Elas protegem o que nenhum deny pega: a conta, a senha e a estabilidade do seu sistema.

1

Só ferramentas oficiais pela assinatura (Claude Code, Codex CLI).

Nada de chave de API emprestada nem cliente paralelo. Cada agente entra com o próprio login.

2

Nunca passe credencial de uma ferramenta para outra.

Quando o Claude chama o Codex pela ponte, o Codex usa o login dele. O Claude não entrega senha, token nem cookie a ninguém.

3

Engenharia reversa é laboratório: anote em LIMITES.md e não use em produção.

É a tese do curso em forma de regra. O módulo 4.2 mostra o LIMITES.md e o 4.4 trata do laboratório.

🆕 Novo aqui? Credencial

Credencial é tudo o que prova quem você é para um sistema: senha, token, chave, cookie de sessão. Quem tem a credencial age em seu nome.

Claude Code login próprio (assinatura) Codex CLI login próprio (assinatura) ponte codex-exec.sh pedido e resposta 🔑 credencial não atravessa a ponte

Como ler o desenho: pela ponte âmbar passa só texto: o pedido vai, a resposta volta. Os logins ficam cada um na sua caixa. O tracejado vermelho é o caminho que a regra 2 proíbe.

Teste rápido (opcional): a Sônia clicou "sempre permitir" quando o agente pediu para pagar uma guia. O que vale?

💳
Assinatura

ferramenta oficial

🔑
Credencial

fica onde está

🧪
Laboratório

engenharia reversa

📒
LIMITES.md

onde se anota

🎓 Resumo do módulo

✓
Cinco níveis, de N0 a N4 — o padrão é "prepara e pede".
✓
Cada ação tem teto — ler N4, alterar N3, enviar N2, gastar e apagar N1.
✓
"Sempre permitir" não fura o teto — a pergunta é o controle.
✓
No Claude, deny; no Codex, -s — rm -rf negado, sandbox sem cerca recusado.
✓
Três regras de integração — oficial, sem trocar credencial, engenharia reversa no laboratório.

Próximo módulo:

4.2 — O agente propõe, você aprova