Configurer Hwip pour l'utilisateur. L'installation complète consiste à installer le CLI, puis à exécuter
hwip install — tout le reste de cette compétence est une vérification.
La configuration
npm install -g @hwip/cli
hwip install
L'installateur est interactif (connexion navigateur + sélecteur d'agents), il doit donc
être exécuté dans le terminal de l'utilisateur, pas via votre outil Bash. Demandez-lui de l'exécuter —
dans une session Claude Code, il peut le taper avec un préfixe ! :
! npm install -g @hwip/cli && hwip install
Installer globalement, pas avec npx. hwip cc (piloter une session depuis le téléphone)
a besoin de hwip dans le PATH, et les hooks d'agents que l'installateur écrit (comme
les hooks de ce plugin et le serveur MCP) utilisent command -v hwip || npx … — un binaire global
évite le démarrage à froid de npx à chaque notification et à chaque début de session. npx -y @hwip/cli install fonctionne quand même pour une
configuration notifications uniquement sans contrôle téléphonique, mais par défaut, privilégiez
l'installation globale.
Ce que fait hwip install :
- Machine vierge : ouvre une connexion navigateur. L'application web émet une clé API
et un Hook interactif comme une paire appariée, automatiquement — pas besoin de copier
les clés depuis les Paramètres. Le CLI sauvegarde le tout (
apiKey,hookId,baseUrl,wsUrl) dans~/.hwip/config.json. - Déjà connecté : conserve les informations d'identification sauvegardées et (ré)installe uniquement les intégrations d'agents. Sans risque de réexécution.
- Installe hooks/MCP pour chaque agent détecté (Claude Code, Gemini CLI, Codex CLI, Cursor, …).
Vérifier (après que l'utilisateur a dit que c'était terminé)
hwip verify(ounpx -y @hwip/cli verify) — doit signaler que la clé API et le hook sont configurés. Ne jamais utilisercat ~/.hwip/config.json: il contient la clé API et son affichage place la clé dans le transcript.- Envoyer un push de test : utilisez
hwip_notify, ouhwip notify --title "Hwip connecté ✅". - Le téléphone a vibré → terminé. Dites à l'utilisateur de redémarrer sa session d'agent pour que le hook SessionStart injecte les règles de contrôle à distance.
Règles — ne PAS réintroduire l'ancien flux manuel
- Source unique de vérité :
~/.hwip/config.json. Chaque composant Hwip (CLI, serveur MCP, hooks de plugin) le lit. N'ajoutez PASHWIP_API_KEY/HWIP_HOOK_IDdans~/.zshrc,~/.bashrcou~/.claude/settings.json— les exports shell sont inutiles et créent une deuxième copie sujette à dérive. - Les variables d'environnement existent uniquement comme surcharges avancées (multi-compte, CI). Ne les suggérez jamais lors d'une configuration normale.
- Ne guidez jamais l'utilisateur dans la création manuelle de clés ou de hooks dans l'application web sauf si la machine est sans navigateur (ci-dessous).
Machine sans navigateur (pas de navigateur)
Connectez-vous sur n'importe quelle machine AVEC un navigateur. L'utilisateur lit alors les deux valeurs
(apiKey, hookId) depuis le fichier ~/.hwip/config.json de cette machine lui-même —
ne pas afficher le fichier dans la session, il contient la clé API. Sur la machine sans navigateur,
l'utilisateur exécute ceci dans son propre terminal (exécuté par vous, la clé atterrirait dans
le transcript) :
npm install -g @hwip/cli
hwip install --key ak_... --hook hook_...
En cas de problème
hwip_ask 403 Interdit — appariement clé/hook obsolète. Réexécutez
hwip install ; une nouvelle connexion émet une paire cohérente.
Aucune notification reçue — command -v jq (les hooks ont besoin de jq :
brew install jq / apt install jq), et confirmez que l'application téléphone est connectée
au MÊME compte que celui utilisé lors de la connexion navigateur.
hwip_ask expire — L'application téléphone est-elle ouverte ? Réponse donnée dans le délai d'expiration
(par défaut 300 s) ? hwip verify vérifie l'état de santé de l'installation.
config.json manquant ou corrompu — réexécutez hwip install ; il réécrit le fichier.