Tu peux approuver les demandes de permission de Claude Code depuis ton téléphone parce que Claude Code exécute un hook PermissionRequest juste avant d'afficher un prompt de permission, et ce hook peut renvoyer lui-même la décision. Un outil qui envoie la demande sur ton téléphone, attend ton tap puis renvoie allow ou deny te permet de répondre de n'importe où. Claude Code Notifier fait ça avec un petit outil en ligne de commande, ccn, sur Mac, Windows et Linux, plus une app iPhone ou Android.
01Pourquoi les prompts de permission bloquent ton travail
Dans le mode de permission par défaut, Claude Code demande avant d'exécuter la plupart des commandes shell, de modifier des fichiers ou de récupérer une page web. Le prompt attend dans le terminal jusqu'à ce que quelqu'un réponde. Si tu es parti te faire un café, toute la tâche s'arrête sur cette question, et tu ne t'en rends compte qu'à ton retour.
Tu as trois façons de contourner ça :
- Approuver moins souvent. Ajoute des règles allow pour les commandes de confiance, ou utilise un mode plus permissif. Ça convient au travail de routine, et c'est expliqué dans Les modes de permission de Claude Code expliqués.
- Être prévenu, puis revenir. Un hook de notification te signale qu'un prompt attend. Tu dois quand même revenir au clavier.
- Répondre à distance. Un hook
PermissionRequestenvoie la question sur ton téléphone et renvoie ta réponse à Claude Code.
Ce guide porte sur la troisième option.
02Comment le hook PermissionRequest répond à ta place
Claude Code déclenche PermissionRequest quand un appel d'outil nécessite une décision de permission. Le hook reçoit du JSON sur l'entrée standard avec tool_name et tool_input (par exemple la commande Bash), ainsi qu'une liste optionnelle permission_suggestions de règles que Claude Code proposerait d'enregistrer.
Le hook répond en affichant du JSON comme celui-ci :
{
"hookSpecificOutput": {
"hookEventName": "PermissionRequest",
"decision": {
"behavior": "allow"
}
}
}
behavior vaut allow ou deny. Pour un refus, tu peux ajouter un message, qui explique la raison à Claude, et interrupt: true, qui arrête complètement Claude. Pour une autorisation, updatedPermissions peut appliquer des règles de permission pour qu'on ne te redemande pas. Si le hook ne renvoie rien, Claude Code affiche son prompt habituel.
Un hook d'approbation à distance a donc trois rôles : envoyer la demande là où tu la verras, attendre une réponse, et afficher le bon JSON avant le timeout du hook. La liste complète des champs et un script fonctionnel se trouvent dans Répondre aux demandes de permission depuis un hook.
Enregistrer le hook
Les hooks se trouvent dans ~/.claude/settings.json (pour tous les projets) ou .claude/settings.json (pour un seul projet) :
{
"hooks": {
"PermissionRequest": [
{
"matcher": "*",
"hooks": [
{ "type": "command", "command": "/path/to/your-approval-script" }
]
}
]
}
}
Le matcher filtre sur le nom de l'outil : "Bash" n'enverrait donc que les commandes shell sur ton téléphone. Les hooks de type commande ont un timeout par défaut de 600 secondes, ce qui limite le temps qu'un hook peut t'attendre.
03Le faire soi-même
Une version maison est possible. Une approche classique envoie la demande à un service de push comme ntfy, avec deux boutons d'action qui appellent un petit endpoint web, et le hook interroge cet endpoint jusqu'à recevoir une réponse ou jusqu'à expiration d'un minuteur. Voir Notifications push Claude Code avec ntfy pour la partie envoi.
Ce qui prend du temps, ce sont les cas limites :
- Tu es au clavier. Si le hook attend toujours le téléphone, tu ne peux pas répondre dans le terminal pendant ce temps. Un bon hook détecte ta présence et s'efface.
- Timeouts. Le hook doit abandonner avant le timeout de Claude Code et se replier proprement.
- Confiance. N'importe qui pouvant joindre ton endpoint de callback peut approuver des commandes sur ton ordinateur. Il faut une authentification.
- Plusieurs sessions. Chaque demande doit atteindre la bonne session et y revenir.
Si ça t'amuse de le construire, c'est un bon projet de week-end. Si tu veux que ça marche aujourd'hui, un outil tout prêt t'évite l'effort.
04Utiliser Claude Code Notifier
Claude Code Notifier est un outil indépendant créé par TouchTap Ltd. Il n'est ni créé par Anthropic ni affilié à celle-ci. Il comporte deux parties : ccn, un outil en ligne de commande gratuit pour Mac, Windows et Linux, et des applis mobiles pour iPhone et Android.
1. Installer ccn
Sur Mac et Linux :
curl -fsSL https://claudecodenotifier.com/install.sh | sh
Sur Windows, dans PowerShell (le support de Windows est en bêta) :
irm https://claudecodenotifier.com/install.ps1 | iex
Les installations via Homebrew, npm et plugin sont listées sur la page ccn. L'installation ajoute sept entrées de hook à ~/.claude/settings.json, chacune exécutant ccn hook, et garde une sauvegarde du fichier. L'une d'elles est le hook PermissionRequest. ccn tourne quelques millisecondes quand Claude Code l'appelle, puis se termine. Rien ne tourne en arrière-plan, et ça marche dans n'importe quel terminal, y compris ceux des IDE.
2. Associer ton téléphone
Lance ccn pair et scanne le QR code, ou saisis le code à 6 chiffres affiché dans l'appli. La version pas à pas pour chaque système se trouve dans Connecter ton téléphone à Claude Code.
3. Répondre depuis la notification
Quand Claude a besoin d'une permission et que tu n'es pas là, ton téléphone affiche ce qu'il veut faire, par exemple la commande qu'il veut lancer. Tu peux :
- Autoriser une fois, pour cet appel uniquement.
- Autoriser pour la session, pour que le même type de demande ne soit plus posé dans cette session.
- Refuser, et Claude continue en sachant que c'est refusé.
Le hook renvoie ta réponse et Claude continue.
Ce qui se passe quand tu es à ton bureau
ccn vérifie si tu es présent. Si tu as tapé au clavier dans les 30 dernières secondes, rien n'attend : le terminal pose la question comme d'habitude et le téléphone reçoit au plus une simple note. Si tu es absent, le terminal attend la réponse du téléphone, jusqu'à une limite que tu choisis, et arrête d'attendre dès que tu touches le clavier. Tu peux donc toujours répondre là où tu es le plus proche.
La limite est un réglage :
ccn config set hold_ceiling_seconds 900
Elle va de 30 à 3600 secondes, 600 par défaut. presence_threshold_seconds modifie la fenêtre de 30 secondes. La plupart des réglages peuvent aussi être changés par ordinateur depuis l'appli mobile.
Vérifier que ça marche
ccn doctor # checks hooks, credentials, server connection and presence detection
ccn test # sends a test notification
Les applis mobiles sont gratuites à télécharger, mais leur utilisation nécessite un abonnement ou un achat à vie. Voir les tarifs. Sans téléphone, ccn affiche quand même gratuitement une notification de bureau sur l'ordinateur quand Claude a besoin d'une permission.
05Avoir moins de choses à approuver
L'approbation à distance marche mieux avec des règles allow bien pensées. Si tu approuves npm test vingt fois par jour, ajoute une règle comme Bash(npm test *) à permissions.allow et garde ton téléphone pour les demandes qui méritent un coup d'œil. Avant d'approuver depuis un petit écran, lis la commande. Est-il sûr d'approuver les actions de Claude Code depuis ton téléphone ? explique ce qu'il faut vérifier.
06FAQ
Claude Code peut-il demander une permission sur mon téléphone sans outil supplémentaire ?
La fonctionnalité Remote Control d'Anthropic te permet de poursuivre une session locale depuis l'app Claude ou claude.ai/code sur les offres compatibles, y compris pour répondre aux prompts. Un outil basé sur les hooks comme Claude Code Notifier fonctionne autrement : il n'a pas besoin de Remote Control et n'envoie que les moments où on a besoin de toi. Utiliser Claude Code depuis ton téléphone compare les deux.
Que se passe-t-il si je ne réponds pas sur mon téléphone ?
Avec ccn, le hook attend jusqu'à la durée définie par ton réglage hold_ceiling_seconds. Si tu reviens et touches le clavier avant, il arrête d'attendre et c'est à toi de répondre au prompt dans le terminal.
« Autoriser pour la session » modifie-t-il mon settings.json ?
Non. Ça ne s'applique qu'à cette session. Pour autoriser quelque chose de façon permanente, ajoute une règle allow dans /permissions ou dans ton fichier de réglages.
Est-ce que ça marche sous Windows et Linux ?
Oui. ccn tourne sur Mac, Windows et Linux, et l'app mobile fonctionne avec les trois. Le support de Windows est en bêta.
Puis-je l'utiliser avec plusieurs ordinateurs ?
Oui. Un téléphone peut être associé à plusieurs ordinateurs, et un ordinateur peut avoir plusieurs téléphones. ccn devices liste ou révoque les téléphones associés.