Documentation Forgemind

Tout pour utiliser Forgemind sur votre serveur… ou héberger votre propre instance du bot sur Netlify et Cloudflare.

Démarrer en 1 minute

  1. Cliquez sur Ajouter à Discord et choisissez votre serveur. Discord vous demande d’autoriser l’application et le bot : la permission Administrateur est recommandée pour construire des serveurs complets.
  2. Placez le rôle Forgemind en haut de la liste des rôles (Paramètres du serveur → Rôles) : un bot ne peut gérer que les rôles situés sous le sien.
  3. Tapez /aide dans Discord, ou ouvrez le dashboard et connectez-vous avec Discord.

Créer un serveur avec l’IA

La commande /forge creer (ou l’onglet Forge IA du dashboard) prend un thème libre et quelques options :

  • style : complet (25-40 salons), communautaire (axé engagement) ou minimal (10-16 salons) ;
  • mode : Ajouter conserve l’existant et réutilise les rôles et salons portant le même nom ; Tout remplacer supprime les salons et rôles gérables puis reconstruit (confirmation obligatoire) ;
  • icône : génère et applique une icône de serveur par IA ;
  • consignes : précisions libres (« pas d’économie », « salons en anglais »…).

Forgemind crée d’abord une sauvegarde, puis les rôles (hiérarchie incluse), les catégories et salons avec leurs permissions, règle le serveur, publie le règlement, le panneau de rôles, les panneaux tickets et vérification, configure les modules puis synchronise l’AutoMod. Le message d’origine affiche la progression en direct.

Pour vérifier avant de construire : /forge apercu affiche le plan avec des boutons Appliquer, Tout remplacer et Régénérer. Dans le dashboard, l’éditeur de plan permet de modifier chaque rôle, permission et salon avant application. Les 514 modèles s’appliquent sans IA avec /forge modele.

Configurer les modules

Les 25 modules se règlent de trois façons, toutes équivalentes :

  • Dashboard : un formulaire par module, avec sélecteurs de salons et de rôles ;
  • Commandes : /config voir, /config activer, /config regler module:… champ:… valeur:… et les commandes dédiées (/bienvenue, /niveau, /logs…) ;
  • Langage naturel : /ia configurer.

Certaines fonctions réagissent aux événements en temps réel (bienvenue, XP, journaux, anti-raid, comptage, réponses automatiques, salon IA, starboard, AFK, messages collants) : elles nécessitent la passerelle.

L’assistant IA

Décrivez ce que vous voulez : « crée une catégorie Événements avec un salon planning en lecture seule et un vocal, puis lance un giveaway Nitro de 3 jours dans #annonces ». L’assistant lit la structure actuelle du serveur, propose un plan composé de 41 types d’actions et de réglages de modules, et attend votre validation. Les actions sensibles (suppression, bannissement…) sont signalées en rouge. Les actions s’exécutent avec vos permissions : impossible de créer un rôle plus puissant que le vôtre.

Le dashboard

Connectez-vous avec Discord : seuls les serveurs où vous avez la permission Gérer le serveur apparaissent. Vous y trouverez la vue d’ensemble (statistiques, activité), la Forge IA et l’éditeur de plans, l’assistant, tous les modules, l’éditeur de serveur (salons, rôles, actions), le constructeur de messages et d’embeds, l’activation commande par commande, les sauvegardes, l’historique et les clés d’API.

Sauvegardes et restauration

/backup creer enregistre rôles, salons, permissions et réglages du serveur. /backup charger les restaure (une sauvegarde de l’état actuel est faite juste avant). Activez la sauvegarde automatique hebdomadaire dans le module Sauvegardes.

API publique v1

Créez une clé dans Dashboard → Clés d’API. Elle agit avec les permissions actuelles de son créateur sur le serveur.

curl https://forgemind.fr/api/v1/guild \
  -H "Authorization: Bearer fm_votre_cle"

curl -X POST https://forgemind.fr/api/v1/actions \
  -H "Authorization: Bearer fm_votre_cle" \
  -H "Content-Type: application/json" \
  -d '{"actions":[{"type":"channel.create","params":{"name":"annonces","read_only":true}},
                  {"type":"message.send","params":{"channel":"$ref:0","content":"Bienvenue !"}}]}'
MéthodeRouteRôle
GET/api/v1/guildServeur, salons, rôles et configuration
GET/api/v1/configConfiguration complète
PATCH/api/v1/config/{module}Modifier un module ({"values":{…}})
POST/api/v1/actionsExécuter des actions (références $ref:N)
POST/api/v1/messagesEnvoyer ou modifier un message avec embeds
GET/api/v1/statsStatistiques des modules
GET/api/v1/leaderboard?type=xp|ecoClassements
POST/api/v1/ai/planDemander un plan à l’assistant ({"prompt":"…"})
POST/api/v1/ai/plan/{id}/runExécuter un plan
POST/api/v1/forgeGénérer un serveur (administrateurs)
GET/api/v1/jobs/{id}Suivre une tâche

Le catalogue complet des actions et de leurs paramètres est disponible sur /api/catalog.

Héberger votre instance

Forgemind est composé d’un site statique (Netlify) et d’un Worker Cloudflare qui héberge le bot, l’API, la base D1, le stockage KV, les Durable Objects et l’IA.

  1. Discord : créez une application sur le portail développeur, un bot, et notez l’ID d’application, la clé publique, le jeton du bot et le secret OAuth2. Ajoutez l’URL de redirection https://votre-site/api/auth/callback.
  2. Cloudflare : dans worker/, lancez npm install, créez la base (npx wrangler d1 create forgemind) et le KV (npx wrangler kv namespace create KV), reportez les identifiants dans wrangler.toml, puis npm run db:init.
  3. Définissez les secrets : npx wrangler secret put DISCORD_BOT_TOKEN, DISCORD_CLIENT_SECRET, ADMIN_SECRET et éventuellement ANTHROPIC_API_KEY.
  4. Déployez avec npm run deploy, enregistrez les commandes avec npm run register, et renseignez https://forgemind.<compte>.workers.dev/interactions comme Interactions Endpoint URL sur Discord.
  5. Netlify : importez le dépôt ; la commande de build et le dossier dist sont lus depuis netlify.toml. Ajoutez la variable API_ORIGIN (URL du Worker) pour activer le proxy /api/*.

Variables d’environnement du Worker

VariableDescription
DISCORD_APPLICATION_IDID de l’application Discord
DISCORD_PUBLIC_KEYClé publique (vérification des interactions)
DISCORD_BOT_TOKEN Jeton du bot
DISCORD_CLIENT_SECRET Secret OAuth2 (connexion au dashboard)
SITE_URLAdresse du site Netlify
ADMIN_SECRET Protège les routes /api/admin/*
AI_PROVIDERauto, anthropic ou workers-ai
ANTHROPIC_API_KEY Clé Claude (facultative)
GATEWAY_ENABLEDtrue pour les événements temps réel
GATEWAY_SHARDSNombre de shards (1 jusqu’à 2 500 serveurs)
MAX_SUBREQUESTSBudget d’appels par lot (40 en offre gratuite)

Questions fréquentes

Pourquoi les messages de bienvenue ou l’XP ne fonctionnent-ils pas ?

Ces fonctionnalités reposent sur la passerelle temps réel de Discord. Activez GATEWAY_ENABLED=true sur le Worker et les intents privilégiés Server Members et Message Content dans le portail développeur Discord.

Les commandes slash n’apparaissent pas, que faire ?

Lancez npm run register dans le dossier worker. Les commandes globales peuvent mettre jusqu’à une heure à apparaître ; utilisez --guild ID pour un serveur de test instantané.

Le bot dit qu’il manque des permissions.

Donnez la permission Administrateur à Forgemind et placez son rôle tout en haut de la hiérarchie dans Paramètres du serveur → Rôles.