Open source · auto-hébergé · MIT
Claude fait la ronde sur ton serveur. Il répond RAS, ou il t'écrit.
ronde planifie des prompts claude -p sur ta machine, garde l'historique et le coût de chaque passage, et ne t'envoie un mail que quand il y a quelque chose à signaler.
Fonctionne avec ton abonnement Claude Pro/Max — ou une clé API.
authorized_keys. Origine : 185.x.x.x. Mail envoyé.
Une ronde, c'est un prompt, une heure et une règle simple.
Tu écris ce que Claude doit vérifier. Il le vérifie à l'heure dite. Le silence veut dire que tout va bien.
Rien à signaler
Le prompt demande de répondre exactement RAS si tout va bien. Le passage est noté, personne n'est dérangé.
Toute autre réponse
Claude a vu quelque chose. Sa réponse devient l'alerte, et part par mail.
Le passage n'a pas abouti
Code de sortie non nul, erreur, timeout ou sortie illisible : tu es prévenu aussi.
Petit, lisible, et chez toi.
Planification cron ou manuelle
Chaque ronde a son cron, ou aucun : tu la lances à la demande. Jamais deux passages de la même ronde en même temps.
Historique et consommation
Chaque run garde sa réponse, ses tokens, son coût estimé et sa durée. Tu sais ce que coûte ta tranquillité.
Outils sous contrôle
Pour chaque ronde : les outils autorisés, le nombre de tours max, le timeout. Rien de plus que ce dont la tâche a besoin.
Modèles prêts à l'emploi
Disque et Docker, SSH et fail2ban : des scripts hôte produisent les données, Claude les lit en lecture seule.
Ton abonnement suffit
claude setup-token, tu colles le token, c'est pris sur ton quota Pro/Max. Pas de facturation à part.
Un seul conteneur
Node, SQLite, une UI en HTML serveur. Pas de base externe, pas de file d'attente, pas de build front.
Décris ce que tu veux surveiller. Claude écrit la ronde.
ronde expose un serveur MCP. Depuis Claude Code ou claude.ai, Claude conçoit la ronde avec toi, l'essaie pour de vrai, puis la crée quand tu valides.
- Il regarde les données disponibles sur l'hôte et les modèles existants.
- Il te pose les bonnes questions : seuils, fréquence, exceptions.
- Il essaie le prompt sur le serveur et te montre le résultat et le coût.
- Il crée la ronde, seulement après ton accord.
J'ai l'historique
df sur 7 jours. Tu veux une alerte à partir de quel seuil — 85 % ? Et aussi si la croissance dépasse 5 % par jour ?Essai : réponse RAS en 11 s, 0,02 $. Je crée la ronde « Disque » à
0 7 * * * ?Trois commandes, un compte admin.
Un serveur avec Docker suffit. Le code d'installation s'affiche dans les logs.
Lancer ronde
$ git clone https://github.com/buse974/ronde.git && cd ronde $ docker compose up -d $ docker compose logs ronde # code d'installation
Récupérer ton token Claude (sur ta machine), puis le coller dans Réglages
$ claude setup-token
Optionnel : piloter ronde depuis Claude Code
$ claude mcp add --scope user --transport http ronde https://ton-serveur/mcp
Claude a les clés de la ronde, pas celles de la maison.
- Utilisateur dédié.
claudetourne sousrunner, avec un environnement vide : il ne voit ni la base, ni le secret, ni l'environnement de l'app. - Conteneur minimal. Trois capacités seulement (
SETUID,SETGID,KILL) etno-new-privileges. Pas de socket Docker. - Token chiffré. AES-256-GCM en base, clé dérivée d'un secret généré au premier démarrage.
- Données hôte en lecture seule. Les scripts tournent sur l'hôte ; le conteneur ne fait que lire
/host-metrics. - MCP en OAuth 2.1. PKCE, aucun token à copier, accès révocable, et outils limités par défaut à
Read,Grep,Glob. - UI verrouillée. Compte admin argon2, cookie
HttpOnly+SameSite=Strict, contrôle d'origine, limite des tentatives.
Dors tranquille. ronde veille.
Le projet est jeune et ouvert aux contributions : essaie-le, ouvre une issue, propose une ronde utile à tout le monde.