Documentation
Exécuter Claude Code ou Codex dans un bac à sable Runzivo
Connectez-vous à un bac à sable par SSH, ouvrez une session Claude Code ou Codex avec votre propre compte ou clé et gardez les identifiants hors des commandes et de la gestion de versions.
Se connecter par SSH
Sur macOS ou Linux, installez rzv et OpenSSH, créez un bac à sable et attendez qu’il soit en cours d’exécution. Écrivez une fois son entrée d’hôte SSH, puis connectez-vous et travaillez dans /workspace. SSH vers un bac à sable depuis Windows n’est pas encore pris en charge.
Claude Code et Codex sont inclus dans l’image de développement, déconnectés. Chacun envoie ses requêtes du bac à sable directement à son fournisseur, qui vous les facture. Runzivo facture uniquement l’infrastructure du bac.
rzv sandboxes ssh-config <sandbox-id> --write
ssh <sandbox-id>.rzvOuvrir une session Claude Code
Avec un abonnement Claude, lancez claude dans le bac à sable et suivez l’invite de connexion. Aucun navigateur ne s’ouvre dans le bac : ouvrez l’URL de connexion sur votre ordinateur, connectez-vous et collez le code dans le bac. La session est enregistrée dans ~/.claude, dans le bac.
Avec une clé d’API Anthropic, saisissez la clé dans le bac à sable, pas sur la ligne de commande de votre ordinateur. La clé ne dure que le temps de ce shell.
read -rs ANTHROPIC_API_KEY && export ANTHROPIC_API_KEY
claudeOuvrir une session Codex
Avec une clé d’API OpenAI, transmettez-la depuis votre gestionnaire de mots de passe par SSH, chiffré de votre ordinateur au bac à sable. Avec un forfait ChatGPT, lancez codex login --device-auth dans le bac, ouvrez le lien sur votre ordinateur et saisissez le code. OpenAI qualifie la connexion par code d’appareil de bêta ; elle doit être activée dans les paramètres de sécurité ChatGPT ou par l’administrateur de votre espace de travail.
<password-manager-command> | ssh <sandbox-id>.rzv 'codex login --with-api-key'Désactiver le bac à sable propre à Codex
Le mode workspace-write de Codex exige bubblewrap, absent de l’image. Le bac à sable est déjà sa propre machine virtuelle : désactivez donc le bac à sable propre à Codex dans ~/.codex/config.toml. Codex peut alors modifier tout fichier du bac et accéder au réseau.
sandbox_mode = "danger-full-access"Garder les clés hors des commandes
- Ne transmettez pas de clé avec rzv sandboxes exec --env ni dans une commande exec. Runzivo conserve la requête exec jusqu’à sa réception par l’hôte du bac, et l’historique de votre shell l’enregistre.
- Ne placez jamais une clé ni une session enregistrée dans /workspace ou dans la gestion de versions.
- Pendant l’exécution du bac, les membres de l’espace de travail qui ont sandboxes:write peuvent y ouvrir un shell et lire une session enregistrée, un fichier de clé ou une clé dans un shell en cours.
- Les agents de programmation exécutent des commandes et modifient des fichiers dans le bac. Révisez les changements et lancez vos tests avant de pousser (git push).
Arrêter, démarrer et nettoyer
Un arrêt suivi d’un démarrage conserve le disque du bac : /workspace, ~/.claude, ~/.codex et leurs paramètres sont toujours là. Les sessions d’agent en cours prennent fin ; relancez-les. Un nouveau bac à sable démarre déconnecté.
Un bac à sable dure 8 heures par défaut, ou 12 ou 24 heures selon la capacité de l’hôte. L’arrêt ne met pas la durée de vie en pause. À l’expiration ou à la suppression, le bac et ses fichiers, y compris toute session enregistrée, sont supprimés. Poussez d’abord le travail à conserver. Déconnectez-vous avant l’arrêt si vous ne voulez pas garder une session.
# dans le bac à sable
claude auth logout
codex logout
# sur votre ordinateur
rzv sandboxes delete <sandbox-id>