Você pode aprovar solicitações de permissão do Claude Code pelo celular porque o Claude Code executa um hook PermissionRequest logo antes de mostrar um prompt de permissão, e esse hook pode retornar a própria decisão. Uma ferramenta que envia a solicitação para o seu celular, espera o seu toque e devolve allow ou deny permite que você responda de qualquer lugar. O Claude Code Notifier faz isso com uma pequena ferramenta de linha de comando, ccn, em Mac, Windows e Linux, junto com um app de iPhone ou Android.
01Por que os prompts de permissão travam seu trabalho
No modo de permissão padrão, o Claude Code pergunta antes de executar a maioria dos comandos de shell, editar arquivos ou buscar uma página web. O prompt fica esperando no terminal até alguém responder. Se você foi pegar um café, a tarefa inteira para nessa pergunta, e você só descobre quando volta.
Há três formas de contornar isso:
- Aprovar com menos frequência. Adicione regras de allow para comandos em que você confia ou use um modo mais permissivo. Isso funciona bem para trabalho rotineiro e é explicado em Modos de permissão do Claude Code explicados.
- Receba o aviso e volte até o computador. Um hook de notificação avisa que há um prompt esperando. Mas você ainda precisa voltar ao teclado.
- Responda de longe. Um hook
PermissionRequestleva a pergunta até o seu celular e devolve sua resposta ao Claude Code.
Este guia trata da terceira opção.
02Como o hook PermissionRequest responde por você
O Claude Code dispara PermissionRequest quando uma chamada de ferramenta precisa de uma decisão de permissão. O hook recebe um JSON na entrada padrão com tool_name e tool_input (por exemplo, o comando Bash) e, opcionalmente, uma lista permission_suggestions com as regras que o Claude Code ofereceria salvar.
O hook responde imprimindo um JSON como este:
{
"hookSpecificOutput": {
"hookEventName": "PermissionRequest",
"decision": {
"behavior": "allow"
}
}
}
behavior pode ser allow ou deny. Ao negar, você pode incluir uma message, que explica o motivo ao Claude, e interrupt: true, que interrompe o Claude de vez. Ao aprovar, updatedPermissions pode aplicar regras de permissão para que você não seja perguntado de novo. Se o hook não retornar nada, o Claude Code mostra o prompt de sempre.
Ou seja, um hook de aprovação remota tem três tarefas: enviar a solicitação para algum lugar onde você vá vê-la, esperar uma resposta e imprimir o JSON certo antes que o hook atinja o timeout. A lista completa de campos e um script funcional estão em Respondendo a solicitações de permissão com um hook.
Registrando o hook
Os hooks ficam em ~/.claude/settings.json (para todos os projetos) ou em .claude/settings.json (para um único projeto):
{
"hooks": {
"PermissionRequest": [
{
"matcher": "*",
"hooks": [
{ "type": "command", "command": "/path/to/your-approval-script" }
]
}
]
}
}
O matcher filtra pelo nome da ferramenta, então "Bash" mandaria só comandos de shell para o seu celular. Hooks de comando têm timeout padrão de 600 segundos, o que limita quanto tempo um hook pode esperar por você.
03Fazendo por conta própria
Dá para montar uma versão caseira. Um design típico envia a solicitação para um serviço de push como o ntfy, inclui dois botões de ação que chamam um pequeno endpoint web e faz o hook consultar esse endpoint até chegar uma resposta ou o tempo acabar. Veja Notificações push do Claude Code com ntfy para a parte do envio.
O que dá trabalho são os casos de borda:
- Você está no teclado. Se o hook sempre espera pelo celular, você não consegue responder no terminal enquanto ele espera. Um bom hook percebe que você está presente e sai do caminho.
- Timeouts. O hook precisa desistir antes do timeout do Claude Code e voltar ao comportamento padrão sem problemas.
- Confiança. Qualquer pessoa que consiga acessar seu endpoint de callback pode aprovar comandos no seu computador. Ele precisa de autenticação.
- Várias sessões. Cada solicitação precisa chegar à sessão certa e voltar para ela.
Se você gosta de construir esse tipo de coisa, é um bom projeto de fim de semana. Se quer que funcione hoje, uma ferramenta pronta poupa o esforço.
04Usando o Claude Code Notifier
O Claude Code Notifier é uma ferramenta independente criada pela TouchTap Ltd. Ela não é feita pela Anthropic nem tem vínculo com ela. São duas partes: o ccn, uma ferramenta de linha de comando gratuita para Mac, Windows e Linux, e apps para iPhone e Android.
1. Instale o ccn
No Mac e no Linux:
curl -fsSL https://claudecodenotifier.com/install.sh | sh
No Windows, pelo PowerShell (o suporte ao Windows está em beta):
irm https://claudecodenotifier.com/install.ps1 | iex
As instalações via Homebrew, npm e plugin estão listadas na página do ccn. A instalação adiciona sete entradas de hook ao ~/.claude/settings.json, cada uma executando ccn hook, e guarda um backup do arquivo. Uma delas é o hook PermissionRequest. O ccn roda por alguns milissegundos quando o Claude Code o chama e depois encerra. Nada fica rodando em segundo plano, e ele funciona em qualquer terminal, inclusive nos terminais de IDE.
2. Pareie seu celular
Execute ccn pair e escaneie o QR code, ou digite o código de 6 dígitos do app. O passo a passo para cada sistema operacional está em Conecte seu celular ao Claude Code.
3. Responda pela notificação
Quando o Claude precisa de uma permissão e você não está por perto, o celular mostra o que ele quer fazer, como o comando que pretende executar. Você pode:
- Permitir uma vez, só para esta chamada.
- Permitir na sessão, para que o mesmo tipo de solicitação não seja perguntado de novo nessa sessão.
- Negar, e o Claude segue sabendo que foi recusado.
O hook devolve sua resposta e o Claude continua.
O que acontece quando você está no computador
O ccn verifica se você está presente. Se você digitou algo nos últimos 30 segundos, nada fica esperando: o terminal pergunta como sempre e o celular recebe no máximo um aviso. Se você está ausente, o terminal espera a resposta do celular, até um limite que você define, e para de esperar assim que você toca no teclado. Assim você sempre pode responder onde estiver mais perto.
O limite é uma configuração:
ccn config set hold_ceiling_seconds 900
Ele aceita de 30 a 3600 segundos e o padrão é 600. presence_threshold_seconds altera a janela de 30 segundos. A maioria das configurações também pode ser alterada por computador pelo app do celular.
Verificando se funciona
ccn doctor # checks hooks, credentials, server connection and presence detection
ccn test # sends a test notification
Os apps são gratuitos para baixar, mas exigem uma assinatura ou uma compra vitalícia para usar. Veja os preços. Sem celular, o ccn ainda mostra gratuitamente uma notificação no desktop quando o Claude precisa de uma permissão.
05Aprove menos coisas, também
A aprovação remota funciona melhor junto com regras de permissão bem pensadas. Se você aprova npm test vinte vezes por dia, adicione uma regra como Bash(npm test *) em permissions.allow e deixe o celular para as solicitações que merecem atenção. Antes de aprovar numa tela pequena, leia o comando. É seguro aprovar ações do Claude Code pelo celular? explica o que verificar.
06Perguntas frequentes
O Claude Code consegue pedir permissão no meu celular sem nenhuma ferramenta extra?
O recurso Remote Control da Anthropic permite continuar uma sessão local pelo app do Claude ou por claude.ai/code nos planos compatíveis, inclusive respondendo prompts. Uma ferramenta baseada em hooks como o Claude Code Notifier funciona de outro jeito: não precisa do Remote Control ativado e só envia os momentos que precisam de você. Usar o Claude Code pelo celular compara os dois.
O que acontece se eu não responder no celular?
Com o ccn, o hook espera até o limite definido em hold_ceiling_seconds. Se você voltar e mexer no teclado antes, ele para de esperar e o prompt no terminal fica para você responder.
"Permitir para a sessão" altera meu settings.json?
Não. Vale só para aquela sessão. Para permitir algo de forma permanente, adicione uma regra de permissão em /permissions ou no seu arquivo de configurações.
Funciona no Windows e no Linux?
Sim. O ccn roda no Mac, no Windows e no Linux, e o app do celular funciona com os três. O suporte ao Windows está em beta.
Posso usar com mais de um computador?
Sim. Um celular pode ser pareado com vários computadores, e um computador pode ter vários celulares. O ccn devices lista ou revoga os celulares pareados.