Skip to content

ServOMorph/AutoClaude

Repository files navigation

AutoClaude

License: MIT Python Tests Lint Version

Conçu pour Claude Code dans VS Code — donne plus d'autonomie à Claude Code en cliquant automatiquement sur les boutons de confirmation récurrents, sans interrompre le flux de travail de l'IA.

Outil Python qui détecte et clique automatiquement sur un bouton récurrent à l'écran — avec une interface graphique CustomTkinter en mode sombre.

Quand Claude Code travaille dans VS Code, il demande régulièrement une confirmation utilisateur (bouton "Continuer", "Approuver", etc.). AutoClaude surveille l'écran en arrière-plan et clique à ta place, permettant à Claude Code de tourner en continu sans surveillance constante.

Développé par SéréniaTech · GitHub


📹 Démo vidéo

Regardez la présentation du projet


Fonctionnalités

  • Détection d'image par template matching (OpenCV + mss)
  • Support multi-moniteur
  • Dégradation progressive : si une dépendance optionnelle manque, l'outil continue de fonctionner
  • Arrêt via Esc, fermeture fenêtre ou mouvement souris (mode auto-stop)
  • Protection de projet Claude Code via injection dans .claude/CLAUDE.md
  • Compteur de clics avec historique persisté
  • Analyses graphiques : navigation temporelle (Récent / Tout), bandeau de statistiques (total, moyenne, record, jours actifs), graphes par Aujourd'hui/7j/30j/12m/Tout
  • Indicateur flottant : overlay always-on-top en bas à gauche de l'écran, cliquable pour activer/désactiver l'autoclick depuis n'importe quelle application
  • Badge modèle Claude : overlay violet foncé attaché à une fenêtre VSCode, affiche le modèle actif (Haiku/Sonnet/Opus/Fable), suit la fenêtre et se masque avec elle, multi-badges, position et modèle persistés
  • Logs rotatifs (~/.autoclaude/logs/) et watchdog de stabilité pour une utilisation longue durée
  • Interface sombre SéréniaTech (CustomTkinter)
  • Paramètres persistés localement (~/.autoclaude/settings.json)

Installation

Option 1 : Télécharger l'exécutable (Windows)

Télécharge AutoClaude_v2.3.0.exe depuis les releases et double-clique pour lancer. Aucune dépendance Python requise.

Option 2 : Installation depuis le code source

# Cloner le dépôt
git clone https://github.com/ServOMorph/AutoClaude.git
cd AutoClaude

# Installer les dépendances
pip install -r requirements.txt

# Lancer l'application
python run.py

Dépendances (installation depuis source)

Obligatoires

Package Rôle
pyautogui Détection et clic d'image (fallback)
pynput Écoute clavier/souris
customtkinter Interface graphique
Pillow Affichage des images
matplotlib Graphes d'analyse
psutil Monitoring mémoire/stabilité

Optionnelles (meilleures performances)

Package Rôle
opencv-python Template matching haute précision
mss Capture multi-moniteur rapide
numpy Traitement d'image (requis par OpenCV)
screeninfo Énumération des moniteurs

Interface

AutoClaude UI


Utilisation

# Lancer l'interface graphique
python run.py

L'interface permet de :

  1. Activer / désactiver l'autoclick via le bouton bleu/rouge
  2. Sélectionner un dossier de projet à protéger
  3. Appliquer ou retirer la protection Claude Code sur ce dossier
  4. Compter les clics — affichage en temps réel du nombre total, avec reset possible
  5. Visualiser les analyses — navigation par période, mode Récent/Tout, stats chiffrées
  6. Afficher/masquer l'indicateur flottant — overlay visible par-dessus toutes les applications

Indicateur flottant

Un petit indicateur apparaît en bas à gauche de l'écran, par-dessus toutes les fenêtres :

  • 🟢 Vert — CL OFF : autoclick inactif
  • 🔴 Rouge — CL ON : autoclick actif

Un clic sur l'indicateur active ou désactive l'autoclick directement, sans revenir à la fenêtre principale. L'affichage se contrôle via le switch "Afficher l'indicateur flottant" dans l'UI.

Badge modèle Claude

Le bouton "Créer un badge modèle" ouvre un dialogue de sélection : fenêtre VSCode cible (détectée via énumération Win32) et modèle initial. Le badge créé :

  • suit la fenêtre VSCode choisie (position relative maintenue quand elle se déplace)
  • se masque automatiquement si la fenêtre est minimisée, fermée ou cloakée (changement de bureau virtuel), réapparaît sinon
  • se déplace par drag & drop (clic gauche) — la position relative est mise à jour et persistée
  • clic droit : menu contextuel pour changer le modèle affiché ou supprimer le badge

Plusieurs badges peuvent coexister (un par fenêtre VSCode). Fenêtre cible, position et modèle sont persistés dans ~/.autoclaude/settings.json et restaurés au démarrage si la fenêtre existe encore.

Analyses

La fenêtre d'analyses offre :

  • 5 périodes : Aujourd'hui, 7 jours, 30 jours, 12 mois, Tout
  • Mode Récent (défaut) : fenêtre glissante — dernières 24h / 7 derniers jours / 30 derniers jours / 12 derniers mois
  • Mode Tout : historique complet avec navigation Précédent / Suivant (paginé par jour, mois ou année selon la période)
  • Bandeau de stats : total, moyenne par jour actif, record journalier, jours actifs

Comportement après clic

Une fois qu'AutoClaude détecte le bouton et clique dessus :

  1. La souris retourne à sa position d'origine (avant le clic)
  2. Le cooldown COOLDOWN_DURATION s'applique avant la prochaine détection

Cela évite que le curseur reste sur le bouton cliqué et prévient les faux positifs dus au survol persistant.

Arrêt

  • Touche Esc — arrête l'autoclick
  • Fermeture de la fenêtre — arrête proprement le thread
  • Mouvement souris — si le mode auto-stop est actif

Image cible

Par défaut, AutoClaude cherche assets/yes.png. Remplace ce fichier par un screenshot du bouton que tu veux automatiser (PNG, JPG ou BMP recommandé).


Protection Claude Code

Le bouton Protéger injecte un bloc de restrictions dans .claude/CLAUDE.md du projet sélectionné. Ce bloc est lu par Claude Code au démarrage de chaque session et contraint le comportement de l'IA au périmètre du projet.

Voir DOCS/SECURITY.md pour le détail du bloc injecté et de l'API.


Logs & stabilité

AutoClaude est conçu pour tourner en continu. Les logs sont disponibles dans ~/.autoclaude/logs/autoclaude.log (rotation automatique, 5 Mo × 3 fichiers). En cas de crash natif (access violation), ~/.autoclaude/logs/crash.log contient les stacks de tous les threads au moment du crash, chaque session étant délimitée par un marqueur horodaté ; un fichier session.lock signale au démarrage suivant qu'une session précédente s'est terminée anormalement.


Configuration fine-tuning

Le fichier config.py à la racine du projet permet d'ajuster le comportement sans modifier le code :

Variable Valeur Description
DEBUG_COMPTEUR True/False Affiche les cercles rouges de debug à chaque clic
COOLDOWN_DURATION 3.0-5.0 (sec) Attente après chaque clic avant nouvelle détection (élevez si re-clics fantômes)
CONFIDENCE_THRESHOLD 0.85-0.95 Sévérité de la détection d'image (élevez pour moins de faux positifs)
PRE_CLICK_DELAY 0.5-2.0 (sec) Délai après détection avant de cliquer (élevez si bouton anime)

Exemple :

# Pour éviter les faux positifs sur boutons bleus
CONFIDENCE_THRESHOLD = 0.95

# Pour boutons qui tardent à disparaître
COOLDOWN_DURATION = 5.0

# Pour debug visuel des clics
DEBUG_COMPTEUR = True

Problèmes connus

Comptage des clics imprécis

  • Symptôme : Le compteur enregistre parfois plus ou moins de clics que prévu
  • Cause potentielle : Timing critique entre détection, clic et disparition du bouton
  • Solution : Ajustez dans config.py :
    • Augmentez COOLDOWN_DURATION si clics doublés
    • Augmentez CONFIDENCE_THRESHOLD pour strictitude accrue
    • Augmentez PRE_CLICK_DELAY pour laisser le bouton stable avant clic
  • Debug : Activez DEBUG_COMPTEUR = True pour visualiser chaque clic via un cercle rouge

Faux positifs de détection (image)

  • Symptôme : Clics sur des éléments qui ne sont pas le bouton visé
  • Cause : Couleurs proches (bleu, gris) ou éléments UI similaires
  • Solution : Augmentez CONFIDENCE_THRESHOLD à 0.90-0.95 dans config.py

Le bouton n'est pas détecté

  • Cause : Confiance trop stricte, ou image cible différente sur l'écran
  • Solution : Baissez CONFIDENCE_THRESHOLD à 0.80-0.85, ou mettez à jour assets/yes.png

Architecture

src/core/       détection, clic, listener, service autoclick, logger, health monitor, window_tracker
src/ui/         interface CustomTkinter + composants + dialogs + overlays (status, flash, badge modèle)
src/security/   ClaudeMdProtector
src/config/     constantes et persistance JSON
assets/         yes.png, Icone AutoClaude.png, Icone AutoClaude.ico, ui-screenshot.png

Voir DOCS/ARCHITECTURE.md pour le détail des décisions techniques.


Mises à jour

Pour rester informé des dernières versions et améliorations d'AutoClaude, n'hésitez pas à suivre le dépôt GitHub officiel : https://github.com/ServOMorph/AutoClaude

Vous y trouverez les notes de version, les nouvelles fonctionnalités et les correctifs de bugs.


Licence

MIT — voir LICENSE


Projet réalisé par ServOMorph avec ClaudeCode pour SérénIA Tech : https://serenia-tech.fr/

Date : 21 juillet 2026 (v2.5.10)


Contribuer

Les contributions sont les bienvenues ! Consulter CONTRIBUTING.md pour démarrer.

About

Outil Python qui clique automatiquement sur le bouton de confirmation de Claude Code (VS Code). Interface graphique sombre, compteur de clics, analyses graphiques et protection de projet intégrée.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages