🚀 Documentation Kepler Bot

Guide complet d'utilisation et de configuration

Version Beta - Été 2025

🌟 Vue d'ensemble

⚠️ Avertissement : Kepler est actuellement en version Beta. Des instabilités et des redémarrages intempestifs sont à prévoir !

Kepler est un bot Discord polyvalent développé en TypeScript avec Deno, conçu pour enrichir vos serveurs Discord avec un ensemble complet de fonctionnalités de modération, d'administration, de divertissement et d'utilitaires.

🛡️ Modération Avancée

Système complet avec sanctions numérotées, durées personnalisées, et logs automatiques. Support des timeouts Discord et rôles personnalisés.

⚙️ Administration Flexible

Configuration granulaire des logs, annonces personnalisées, et gestion des canaux spécialisés.

🎂 Gestion d'Anniversaires

Système automatisé de souhaits d'anniversaire avec notifications dans des canaux dédiés.

🎮 Divertissement

Large gamme de jeux interactifs et commandes de divertissement pour animer votre communauté.

🔧 Technologies

📥 Installation

🔗 Lien d'invitation : Ajouter Kepler à votre serveur

Permissions requises

Kepler nécessite les permissions suivantes pour fonctionner correctement :

Configuration initiale

Après avoir ajouté Kepler à votre serveur, utilisez les commandes de configuration suivantes :

/logconfig canal:#logs-général /moderationconfig canal:#logs-modération /bdayconfig canal:#anniversaires

⚙️ Configuration

Configuration des canaux

Commande Description Permissions
/logconfig Configure le canal pour les logs généraux du serveur Administrateur
/moderationconfig Configure le canal pour les logs de modération Administrateur
/bdayconfig Configure le canal pour les annonces d'anniversaires Administrateur

Configuration du système de mute

Kepler propose un système de mute hybride :

# Utiliser un rôle existant /muteroleconfig set role:@Muted # Créer automatiquement un rôle /muteroleconfig create nom:"Silencieux" # Revenir au timeout Discord /muteroleconfig disable
💡 Conseil : La commande create configure automatiquement les permissions du rôle dans tous les canaux du serveur.

🛡️ Système de Modération

Commandes de sanction

Commande Syntaxe Description
/ban /ban utilisateur raison durée suppression_messages Bannir un utilisateur (permanent ou temporaire)
/unban /unban user_id raison Débannir un utilisateur
/kick /kick utilisateur raison Expulser un utilisateur
/mute /mute utilisateur durée raison Rendre muet un utilisateur
/unmute /unmute utilisateur raison Annuler le mute d'un utilisateur
/warn /warn utilisateur raison Avertir un utilisateur
/unwarn /unwarn numéro_sanction Supprimer un avertissement

Commandes d'information

Commande Description
/modinfo Affiche l'historique de modération d'un utilisateur
/warnings Liste tous les avertissements d'un utilisateur

Formats de durée acceptés

Exemples : - 1d = 1 jour - 2h = 2 heures - 30m = 30 minutes - 1w = 1 semaine - 1d12h = 1 jour et 12 heures

Système de numérotation

Chaque sanction reçoit un numéro unique par serveur :

Fonctionnalités automatiques

Sécurité

🔒 Règles de sécurité :
  • Les modérateurs ne peuvent pas sanctionner des utilisateurs de rang égal ou supérieur
  • Impossible de se sanctionner soi-même
  • Le bot ne peut pas être sanctionné
  • Vérification des permissions avant chaque action

⚙️ Administration

Commandes d'administration

Commande Description Permissions
/annonce Créer une annonce avec embed personnalisé et boutons Administrateur
/logconfig Configurer le canal des logs généraux Administrateur
/moderationconfig Configurer le canal des logs de modération Administrateur
/bdayconfig Configurer le canal des anniversaires Administrateur
/muteroleconfig Configurer le système de mute Administrateur

Système d'annonces

La commande /annonce permet de créer des annonces riches avec :

Exemple : /annonce titre:"Nouvelle mise à jour !" message:"Découvrez les nouvelles fonctionnalités" couleur:Bleu bouton1_texte:"En savoir plus" bouton1_lien:"https://example.com"

🔧 Commandes Utilitaires

Informations sur le serveur

Commande Description
/serverinfo Informations complètes du serveur (membres, canaux, rôles, boosts)
/userinfo Informations détaillées d'un utilisateur
/roleinfo Informations sur un rôle spécifique
/rolelist Liste tous les rôles du serveur avec le nombre de membres

Outils pratiques

Commande Description
/genpass Génère un mot de passe sécurisé
/minecraft-uuid Récupère l'UUID d'un joueur Minecraft
/reminder Crée un rappel personnalisé
/wowguilde Informations sur une guilde World of Warcraft

Intégration World of Warcraft

La commande /wowguilde permet d'obtenir des informations détaillées sur une guilde WoW :

Exemple : /wowguilde serveur:"Hyjal" guilde:"Sanctuary" region:eu

🎮 Jeux et Divertissement

Jeux classiques

Commande Description
/coinflip Lance une pièce (pile ou face)
/chifoumi Pierre-papier-ciseaux contre le bot
/8ball Boule magique pour répondre aux questions

Jeux avancés

Commande Description
/puissance4 Puissance 4 contre le bot ou un autre joueur
/golem Crée un golem virtuel personnalisé

Divertissement

Commande Description
/blague Raconte une blague aléatoire avec plusieurs catégories
/meme Affiche un meme aléatoire

Système de blagues

La commande /blague propose plusieurs catégories :

🎮 Puissance 4 : Le jeu supporte les parties contre le bot avec une IA intelligente, ou contre d'autres joueurs avec un système interactif de boutons.

🎂 Système d'Anniversaires

Gestion des anniversaires

Commande Description
/birthday set Définir son anniversaire (jour, mois, année optionnelle)
/birthday get Voir l'anniversaire d'un utilisateur
/birthday remove Supprimer son anniversaire
/birthday list Voir tous les anniversaires du serveur
/birthday celebrate Souhaiter un joyeux anniversaire à quelqu'un

Fonctionnalités automatiques

Configuration

# Configurer le canal d'anniversaires /bdayconfig canal:#anniversaires # Les membres peuvent ensuite définir leur anniversaire /birthday set jour:15 mois:8 année:1990
🔒 Confidentialité : L'année de naissance est optionnelle et ne sera pas affichée publiquement si elle n'est pas renseignée.

📊 Système de Logs

Types de logs

📝 Logs généraux

  • Création/suppression de canaux
  • Modifications de serveur
  • Gestion des rôles
  • Invitations
  • Emojis et stickers

💬 Logs de messages

  • Suppression de messages
  • Modification de messages
  • Suppression en masse

👥 Logs de membres

  • Arrivée/départ de membres
  • Modifications de profil
  • Changements de statut vocal

🛡️ Logs de modération

  • Bannissements/débannissements
  • Expulsions
  • Mutes/démutes
  • Avertissements

Structure des événements

Le système de logs est organisé en plusieurs couches :

Configuration des logs

# Logs généraux (canaux, rôles, membres, etc.) /logconfig canal:#logs-général # Logs de modération spécifiques /moderationconfig canal:#logs-modération
💡 Conseil : Séparez les logs de modération des logs généraux pour une meilleure organisation et lisibilité.

🔧 Informations Techniques

Architecture du bot

🏗️ Structure du projet

  • commands/ - Commandes organisées par catégorie
  • events/ - Gestionnaires d'événements
  • database/ - Gestion base de données
  • utils/ - Utilitaires et helpers

💾 Base de données

  • Supabase (PostgreSQL)
  • Tables : configurations, modération, anniversaires
  • Sauvegarde automatique
  • Migrations versionnées

🚀 Déploiement

  • Docker containerisé
  • CI/CD avec GitHub Actions
  • Monitoring automatique
  • Redémarrages automatiques

🔐 Sécurité

  • Variables d'environnement
  • Validation des permissions
  • Limitation des taux
  • Logs d'audit

Chargement des commandes

Le système charge automatiquement toutes les commandes de manière récursive :

Structure des commandes : commands/ ├── administration/ # Commandes d'admin ├── moderation/ # Commandes de modération ├── utilitaires/ # Outils pratiques ├── games/ # Jeux et divertissement └── general/ # Commandes générales

Gestionnaires automatiques

Performances

Monitoring et debugging

# Logs disponibles - Chargement des commandes - Connexions/déconnexions - Erreurs et exceptions - Actions de modération - Statistiques d'utilisation

🛠️ Roadmap et Développement

✅ Version Alpha (Terminée)

🔄 Version Beta (En cours - Été 2025)

🚀 Version Release (Été 2025)

🤝 Contribution

💬 Serveur Discord : Rejoignez notre communauté
🐛 Issues : Signaler un bug sur GitHub
💡 Suggestions : Partagez vos idées sur notre serveur Discord

❓ Questions Fréquentes

Le bot ne répond pas à mes commandes

Comment configurer les logs de modération ?

/moderationconfig canal:#votre-canal-de-logs

Le système de mute ne fonctionne pas

Les anniversaires ne sont pas annoncés

Comment supprimer une sanction ?

# Pour un avertissement /unwarn numéro_sanction:42 # Pour un ban temporaire /unban user_id:"123456789" raison:"Appel accepté"