Je paie 5 dollars par mois pour un VPS qui ne fait rien la plupart du temps. Un giga de RAM, un CPU partagé, vingt gigas de SSD, une adresse IPv4 publique. Tous les hébergeurs VPS vendent à peu près cette machine, et si tu as un jour fait tourner un petit projet perso, tu en as probablement déjà un qui traîne avec de la capacité inutilisée.
Le mois dernier, j'ai transformé le mien en gateway Hermes Agent. Il me répond maintenant sur Telegram, lance des cron jobs qui postent des résumés dans un channel Discord que je partage avec des potes, surveille une boîte mail IMAP, et en ce moment même — pendant que j'écris — il consomme environ 320 Mo de RAM et moins de 2 % de CPU. Pour le prix d'un café, j'ai un assistant qui ne s'arrête jamais.
Ce billet est un guide pratique de l'installation, et des quelques décisions qui comptent vraiment sur une petite machine.
Ce dont tu as réellement besoin
Pour Hermes, le tier à 5 dollars chez n'importe quel hébergeur sérieux (Hetzner, DigitalOcean, Vultr, Linode, Contabo, OVH — ils vendent tous la même chose au même prix à peu de choses près) suffit. Les chiffres à regarder :
- •Au moins 1 Go de RAM. Le processus Python de Hermes lui-même tourne à 200-300 Mo après démarrage. Les threads du gateway Telegram, Discord et Slack ajoutent chacun un petit overhead. Laisse de la marge pour le buffering de la librairie API du modèle et pour les outils qui chargent occasionnellement des données volumineuses.
- •Au moins 10 Go de disque. Hermes, toutes ses dépendances, la base de données de sessions, l'historique cron et les fichiers de logs tiennent confortablement sous les 5 Go. Le reste, c'est de la marge.
- •Du HTTPS sortant. C'est le seul prérequis réseau. Hermes n'a pas besoin de ports entrants sauf si tu lances le serveur API compatible OpenAI optionnel ou que tu mets l'adaptateur Telegram en mode webhook au lieu du polling.
- •Une distribution Linux moderne avec systemd. Ubuntu 22.04 ou 24.04, c'est le choix zéro souci. Debian 12 marche aussi. L'assistant de service du gateway utilise systemd pour enregistrer Hermes comme service persistant.
Ce qui manque ostensiblement dans cette liste : un GPU, une architecture CPU particulière (Hermes tourne bien sur des VPS AMD, Intel et ARM64), un nom de domaine, un reverse proxy, ou quoi que ce soit d'autre. Le gateway est sortant uniquement par défaut.
L'installation, et ce qu'elle fait
La première commande, c'est hermes setup. C'est l'assistant — il te demande quel provider utiliser (OpenRouter, Nous Portal, Anthropic, OpenAI, Hugging Face, ou un endpoint local/custom), t'aide à coller ta clé API, te laisse choisir un modèle par défaut, et écrit le résultat dans ~/.hermes/config.yaml.
La deuxième étape qui compte sur une petite machine, c'est hermes gateway install. Cette commande transforme Hermes en service systemd pour qu'il survive aux redémarrages et se relance automatiquement en cas de crash. Tu peux choisir le scope user (le service tourne sous ton utilisateur, pas besoin de sudo) ou system (le service démarre avant le login, utile pour un serveur headless). Sur un VPS à 5 $, le scope user est généralement ce que tu veux. Sur les systèmes headless, Hermes active automatiquement le linger systemd pour que le service continue de tourner après ta déconnexion.
Ensuite, hermes gateway enable telegram (ou discord, slack, signal, matrix, etc.) ajoute une plateforme. Chaque adaptateur est un plugin — tu peux en faire tourner une seule ou les huit en même temps ; le coût mémoire de chaque plateforme supplémentaire est faible, quelques Mo d'objets Python plus ce que le SDK de la plateforme veut bufferiser.
Les décisions qui comptent sur une petite machine
Trois choix font toute la différence sur un VPS pas cher.
Le choix du modèle. L'empreinte mémoire de l'agent sur le VPS ne dépend pas de la taille du modèle, puisque l'inférence ne se fait pas sur cette machine. Mais la latence et le coût de chaque réponse, si. Le sweet spot pour un gateway perso, c'est généralement un modèle de taille moyenne et rapide (Claude Sonnet, GPT-4.1 mini, Gemini Flash, ou le MiMo v2 Pro gratuit sur Nous Portal pour les tâches auxiliaires) en défaut, avec la commande /model pour monter en gamme à la demande. Le changement de modèle en live permet de le faire en pleine conversation, sans rien redémarrer.
La compression de contexte. La valeur par défaut convient. Hermes compresse proactivement l'historique de conversation quand la fenêtre de contexte se remplit, et le résumé compressé est mis en cache. Sur un petit VPS, ça compte parce que la compression tourne en local et utilise du CPU — la laisser activée signifie que les longues conversations restent fluides et que tu ne crames pas tout ton budget de tokens en un seul tour.
Le pool de credentials. Si tu as plusieurs clés API (fréquent quand on partage un compte avec des amis ou qu'on alterne entre des tiers gratuits), Hermes a une fonction de pool de credentials par provider qui fait tourner les clés automatiquement en cas de rate limit ou d'erreur 401. Sur un petit VPS, ça revient à fusionner N tiers gratuits en une seule clé toujours disponible — exactement ce qu'on veut pour un assistant permanent.
Pourquoi ça marche
Si un VPS à 5 $ peut héberger un vrai assistant IA, ce n'est pas parce que Hermes a été héroïquement optimisé. C'est que l'architecture délègue la partie lourde — le modèle de langue — à quelqu'un d'autre et ne garde en local que la coordination, la mémoire et l'exécution des outils. C'est cette séparation qui rend le coût mensuel raisonnable et qui fait qu'une toute petite machine suffit.
Auto-héberger un assistant, ça voulait dire faire tourner un modèle. Plus maintenant. Maintenant, ça veut dire faire tourner le truc qui dit au modèle quoi faire.