Coder sur son PC depuis son téléphone avec Claude Code

Objectif

Utiliser Claude Code installé sur un PC Windows depuis un téléphone Android (ConnectBot) via SSH. On va dans un premier temps

1. Trouver le nom du PC

Dans l’invite de commande :

hostname

Exemple :

PCYVON2

2. Trouver le nom d’utilisateur Windows

Dans l’invite de commande :

whoami

Exemple :

PCYVON2\yvonh

Le login SSH est donc :

yvonh

3. Trouver l’adresse IP du PC

Dans l’invite de commande :

ipconfig

Repérer l’adresse IPv4 :

192.168.1.xxx

Depuis ConnectBot :

ssh yvonh@192.168.1.xxx

Il est préférable d’utiliser l’adresse IP plutôt que le nom du PC.

4. Vérifier si le serveur SSH est installé

Dans PowerShell :

Start-Service sshd

Si l’erreur suivante apparaît :

Impossible de trouver un service assorti du nom « sshd »

cela signifie que OpenSSH Server n’est pas installé.

5. Installer le serveur OpenSSH

Ouvrir PowerShell en administrateur

Si le message suivant apparait :

Get-WindowsCapability :
L’opération demandée nécessite une élévation.

indique que PowerShell n’a pas été lancé avec les droits administrateur.

Procédure :

  • Menu Démarrer
  • Rechercher PowerShell
  • Clic droit
  • Exécuter en tant qu’administrateur

6. Vérifier les composants OpenSSH

Dans PowerShell administrateur :

Get-WindowsCapability -Online |
Where-Object Name -like 'OpenSSH*'

Exemple :

OpenSSH.Client~~~~0.0.1.0     Installed
OpenSSH.Server~~~~0.0.1.0     NotPresent

7. Installer OpenSSH Server

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

8. Démarrer le service SSH

Start-Service sshd

Le rendre automatique :

Set-Service -Name sshd -StartupType Automatic

Vérifier que c’est lancé :

Get-Service sshd

Résultat attendu :

Status : Running

9. Vérifier le Firewall

Par précaution on vérifie que le firewall ne viennent pas gêner :

Get-NetFirewallRule -Name *ssh*

Si aucune règle n’existe :

New-NetFirewallRule `
    -Name sshd `
    -DisplayName "OpenSSH Server" `
    -Enabled True `
    -Direction Inbound `
    -Protocol TCP `
    -Action Allow `
    -LocalPort 22

10. Tester localement

Depuis le PC :

ssh yvonh@localhost

Si le serveur fonctionne, Windows demande le mot de passe du compte.

11. Connexion depuis ConnectBot

Host :

192.168.1.xxx

Login :

yvonh

Port :

22

Commande SSH :

ssh yvonh@192.168.1.xxx

Cas réseau

Fonctionne

Internet Box
      │
 ┌────┴─────┐
 │          │
PC Ethernet Téléphone Wi-Fi
192.168.1.42
192.168.1.55

Le PC peut être en Ethernet et le téléphone en Wi-Fi tant qu’ils sont connectés à la même box.

Ne fonctionne pas directement depuis un opérateur mobile

Dans ce cas, il faut utiliser une solution comme Tailscale, WireGuard ou ouvrir un accès SSH sécurisé.

Alternatives gratuites à Termius

Termius est une superbe application, mais il peut couter cher, c’est sur abonnement mensuel et non payable en une fois. Néanmoins il existe comme toujours des alternatives gratuites. Pour ma part j’utilise ConnectBot.

Android

  • ConnectBot (Open Source)
  • JuiceSSH
  • Material Terminal

iPhone

  • WebSSH
  • a-Shell

Architecture recommandée

Téléphone
      │
ConnectBot
      │
SSH
      │
PC Windows
      │
Claude Code

Ou, encore mieux : Utiliser Tmux ! j’adore cet outil, il permet de récupérer une session quand vous fermez votre ordinateur.

Téléphone
      │
ConnectBot
      │
SSH
      │
VPS
      │
tmux
      │
Claude Code

Cette architecture permet de laisser Claude Code travailler même lorsque le téléphone est verrouillé ou déconnecté.