Aller au contenu principal
Documentation

AIFORYA — Command Center

Documentation technique de AIFORYA — Command Center, reprise telle quelle de celle livrée avec l'extension.

Requires at least6.0
Tested up to7.0
Requires PHP8.0
Stable tag3.3.5
LicenseGPLv2 or later

← Revenir à la fiche produit La première extension WordPress conçue nativement pour être pilotée par un agent IA externe (Claude, GPT…) via API REST. Outil multi-sites pour agences.

Description

AIFORYA Command Center est la première extension WordPress pensée dès l'origine pour être pilotée par un agent IA (Claude Code, GPT personnalisés, n8n, Zapier, Make…) plutôt que par un humain qui clique dans des écrans d'administration.

Pour une agence digitale, WordPress ou SEO qui gère 5 sites ou plus, cela change la nature du travail. Votre agent IA peut :

  • Auditer 50 sites en parallèle en quelques secondes (un seul appel REST par site → instantané complet : thème, extensions, volume de contenu, taille de la base, médias, indicateurs de débogage)
  • Déployer un correctif de sécurité sur 200 sites en quelques minutes (route d'appels groupés : 50 opérations par appel)
  • Modifier n'importe quel fichier à distance, avec sauvegarde automatique (conservée 30 jours en base)
  • Exécuter des commandes WP-CLI d'une liste blanche, sans accès SSH
  • Lancer des requêtes SQL, avec simulation obligatoire avant toute écriture
  • Orchestrer les autres extensions AIFORYA installées sur le site (audit SEO, optimisation d'images, génération de balisage, modération de commentaires…)
  • Surveiller et déclencher les tâches planifiées
  • Gérer le cycle de vie des extensions (téléverser un ZIP, activer, désactiver)

Chaque opération est authentifiée par jeton JWT, limitée en débit, journalisée avec horodatage, adresse IP et utilisateur, et réversible grâce à la sauvegarde automatique.

Pourquoi Command Center plutôt que ManageWP, MainWP ou l'assistant IA d'un hébergeur ?

  • Le seul outil d'agence conçu nativement pour le pilotage par agent IA — pas pour le clic humain
  • Indépendant de tout hébergeur — fonctionne sur n'importe quelle installation WordPress 6.0+ / PHP 8.0+
  • Aucun relais cloud — vos données restent sur votre serveur, le jeton JWT est signé avec votre propre AUTH_KEY
  • Routes groupées : 50 opérations en un appel, pensées pour des boucles d'agent, pas pour une interface humaine
  • Orchestration native de l'écosystème AIFORYA — pilotez toutes vos extensions AIFORYA par une seule API
  • Logiciel libre GPL — aucun enfermement propriétaire

Formules

Command Center est facturé au nombre de sites gérés : Solo (jusqu'à 5 sites), Agency (jusqu'à 50 sites), Studio (jusqu'à 200 sites) et Enterprise au-delà de 200 sites.

⚠ Les tarifs à jour sont sur la page produit, et nulle part ailleurs : https://www.aiforya.fr/fr/command-center — un prix recopié dans ce fichier finirait par contredire celui que vous payez réellement.

Features

9 onglets d'administration (interface humaine)

  1. Fichiers — explorateur de fichiers avec éditeur intégré et suppression sous confirmation. Sauvegarde automatique avant chaque écriture ou suppression.
  2. Base de données — console SQL (lecture seule depuis l'interface ; toute écriture passe par l'API REST, avec simulation puis confirmation).
  3. Extensions — inventaire complet (extensions AIFORYA d'un côté, les autres de l'autre), boutons d'activation et de désactivation sans rechargement de page, formulaire de téléversement de ZIP avec activation automatique en option.
  4. Terminal — console WP-CLI interactive (fenêtre noire de type terminal, invite $ wp en vert, historique aux flèches haut et bas, commandes en liste blanche).
  5. Journaux — fin du fichier debug.log (50 derniers Ko) et journal d'audit de Command Center (horodatage, utilisateur, adresse IP, action, cible, résultat).
  6. Orchestrateur — tableau des actions disponibles pour chaque extension AIFORYA installée, avec un bouton Exécuter par action et l'affichage de la réponse JSON.
  7. Sécurité — gestion des jetons JWT (génération, liste, révocation) et liste blanche d'adresses IP en option.
  8. Réglages — limite de débit de l'API REST, liste blanche WP-CLI, sauvegarde automatique des fichiers, effacement des données à la désinstallation (décoché par défaut).
  9. Support et avis — contact direct et dépôt d'un avis.

11 familles de routes REST (pilotage par agent IA)

  • GET /files + GET /file + PUT /file + DELETE /file — gestion des fichiers, avec sauvegarde automatique et invalidation d'OPcache
  • GET /system — informations PHP, WordPress, multisite, mémoire
  • GET /sites/info — instantané complet du site en un seul appel (thème, extensions, contenu, stockage, base) — c'est le principal gain de temps pour une agence
  • GET /plugins + POST /plugins/{fichier}/activate|deactivate + POST /plugins/upload — cycle de vie des extensions
  • GET /logs — fin du journal de débogage, filtrée
  • POST /wpcli — exécution WP-CLI en liste blanche
  • POST /sql — lecture directe, ou simulation puis confirm_mutation pour une écriture (DROP DATABASE et DROP SCHEMA sont toujours refusés)
  • GET /cron + POST /cron (exécuter) + DELETE /cron (déprogrammer) — gestion des tâches planifiées
  • POST /aiforya/{slug}/{action} — orchestration des autres extensions AIFORYA (audits, optimisations, rapports)
  • POST /bulk — N opérations en un appel (50 au maximum) — économise N allers-retours réseau
  • POST /tokens et routes de révocation — cycle de vie des jetons JWT

Garanties de sécurité

  • Authentification par jeton JWT signé en HMAC-SHA256 avec votre AUTH_KEY WordPress
  • Capacité manage_options exigée sur chaque route
  • Limite de débit de 60 requêtes par minute et par jeton (réglable jusqu'à 1 000)
  • Journal d'audit complet de toute action modifiante : qui, quand, quoi, depuis quelle IP, avec quel résultat
  • Sauvegarde automatique de tout fichier avant écriture ou suppression (conservée 30 jours)
  • Une écriture SQL exige d'abord dry_run=true, puis confirm_mutation=true
  • DROP DATABASE et DROP SCHEMA sont refusés en toute circonstance
  • Liste blanche WP-CLI (10 commandes sûres par défaut) et refus des caractères d'échappement du shell
  • Jetons révocables immédiatement depuis l'onglet Sécurité
  • La désinstallation conserve vos données par défaut : leur effacement est une case à cocher explicite

Privacy

Command Center fonctionne entièrement sur votre propre serveur WordPress. Chaque opération REST est authentifiée par jeton JWT (signé en HMAC-SHA256 avec l'AUTH_KEY de votre site), limitée en débit et consignée dans un journal d'audit interne (horodatage, utilisateur, adresse IP, action, cible, résultat) stocké dans votre propre base de données : l'API REST ne passe par aucun relais cloud de notre part. Les sauvegardes créées avant chaque écriture ou suppression sont elles aussi conservées localement, pendant 30 jours.

Les fonctions d'IA facultatives (assistant IA, actions du pilote automatique, priorisation de sécurité et analyse des rapports) ne contactent un fournisseur d'IA tiers que si vous avez renseigné votre propre clé d'API personnelle. Sans clé, rien n'est jamais envoyé à un service d'IA externe.

À la désinstallation, toutes les données (jetons, journal d'audit, sauvegardes de fichiers, réglages) sont conservées par défaut. L'effacement destructif est une option à cocher : « Effacer toutes les données à la désinstallation », dans les Réglages.

External services

Cette extension peut s'appuyer sur un service d'IA tiers, mais uniquement lorsque vous activez une fonction d'IA et que vous la configurez avec votre propre clé d'API personnelle. Rien n'est appelé sans votre clé, et aucune donnée ne quitte votre serveur tant que vous n'utilisez pas l'une de ces fonctions.

Données transmises : uniquement lorsque vous utilisez une fonction d'IA, l'extension envoie à Anthropic les messages que vous saisissez dans l'assistant, l'historique de la conversation en cours, et le contexte du site nécessaire à la réponse (nom du site, et tout contenu ou donnée que vous lui demandez explicitement d'analyser). Les requêtes partent directement de votre serveur vers le fournisseur, authentifiées avec votre clé personnelle. Aucune requête d'IA n'est émise sans clé configurée, et l'infrastructure AIFORYA n'est jamais utilisée comme relais pour ces appels.

Installation

  1. Téléversez le ZIP de l'extension via Extensions → Ajouter → Téléverser une extension
  2. Activez-la
  3. Rendez-vous dans AIFORYA → AIFORYA Command Center dans le menu d'administration
  4. Saisissez votre clé de licence sur la page d'activation
  5. Générez votre premier jeton JWT depuis l'onglet Sécurité
  6. Transmettez ce jeton à votre agent IA (Claude Code, GPT personnalisé, n8n, Zapier…)
  7. Votre agent peut désormais appeler https://votresite.fr/wp-json/aiforya-cc/v1/* avec l'en-tête Authorization: Bearer <jeton>

Conseillé pour les agences

Si vous gérez plusieurs sites, installez Command Center sur chacun, générez un jeton par site, puis renseignez dans votre agent IA central les couples adresse + jeton. Votre agent peut alors auditer, mettre à jour et maintenir tout votre portefeuille à partir de commandes de haut niveau.

Frequently Asked Questions

Comment s'intègre-t-il à Claude, GPT ou un autre agent IA ?

Vous générez un jeton JWT depuis l'onglet Sécurité, vous le transmettez à votre agent, et celui-ci appelle les routes /wp-json/aiforya-cc/v1/* avec l'en-tête Authorization: Bearer <jeton>. Aucune intégration cloud n'est nécessaire : tout passe par l'API REST standard de WordPress. Le jeton est signé en HMAC-SHA256 avec votre AUTH_KEY, si bien que même AIFORYA ne peut pas générer de jeton pour votre site.

Que peut faire mon agent IA ?

Onze familles d'opérations : lire, écrire et supprimer des fichiers (avec sauvegarde automatique) ; obtenir l'instantané complet du site en un appel ; gérer les extensions (installation, activation, désactivation) ; consulter la fin des journaux ; exécuter des commandes WP-CLI ; lancer des requêtes SQL (simulation obligatoire avant écriture) ; gérer les tâches planifiées ; orchestrer les autres extensions AIFORYA ; envoyer des opérations groupées (N en un appel) ; et gérer les jetons d'authentification.

Est-ce sûr ?

Plusieurs garde-fous se cumulent :

  1. Toute écriture ou suppression de fichier déclenche une sauvegarde en base (conservée 30 jours)
  2. Une écriture SQL exige dry_run=true, puis confirm_mutation=true de façon explicite
  3. WP-CLI est en liste blanche (commandes sûres uniquement) et les caractères d'échappement du shell sont refusés
  4. Chaque action est journalisée avec horodatage, utilisateur, adresse IP, action, cible et résultat
  5. Les jetons sont révocables immédiatement, et l'accès cesse dans la seconde
  6. DROP DATABASE et DROP SCHEMA sont toujours refusés
  7. Le débit est limité par jeton

Bonne pratique : éprouvez d'abord sur un site de test, et faites une sauvegarde complète avant toute opération groupée en production.

Que se passe-t-il à la désinstallation ?

Par défaut, la désinstallation CONSERVE toutes vos données (jetons, journal d'audit, sauvegardes de fichiers, réglages). Une réinstallation les retrouve intactes. L'effacement destructif est une option à cocher — « Effacer toutes les données à la désinstallation », dans les Réglages — et elle doit être cochée AVANT de désinstaller.

En quoi est-ce différent de ManageWP ou MainWP ?

ManageWP et MainWP sont d'excellents outils pour un gestionnaire d'agence humain qui navigue dans des tableaux de bord. AIFORYA Command Center est le seul conçu pour le pilotage par agent IA : route d'appels groupés, instantané complet du site en un appel, orchestration des autres extensions AIFORYA, invalidation automatique d'OPcache après écriture, aucun relais cloud requis. Ils sont complémentaires : ManageWP ou MainWP pour votre travail humain, Command Center pour l'automatisation par votre agent.

Combien ça coûte ?

La facturation se fait au nombre de sites gérés, en quatre formules : Solo (jusqu'à 5 sites), Agency (jusqu'à 50), Studio (jusqu'à 200) et Enterprise au-delà.

Les montants à jour figurent sur la page produit : https://www.aiforya.fr/fr/command-center

Puis-je arrêter quand je veux ?

Oui. Aucun enfermement propriétaire. Désactiver l'extension coupe l'accès REST mais conserve toutes les données. La désinstaller sans cocher l'effacement vous permet de la réinstaller intacte plus tard. Aucune dépendance à un cloud externe. La licence est la vôtre, sans pénalité de sortie.

Et avec LiteSpeed ou un OPcache PHP agressif ?

Command Center appelle automatiquement opcache_invalidate() après chaque écriture ou suppression de fichier réussie via PUT ou DELETE : les modifications prennent effet immédiatement, même chez les hébergeurs à OPcache agressif (o2switch, Hostinger, Infomaniak…).

Screenshots

  1. AIFORYA Hub — le gestionnaire central qui liste toutes les extensions AIFORYA installées
  2. Page principale de Command Center — 9 onglets (Fichiers, Base de données, Extensions, Terminal, Journaux, Orchestrateur, Sécurité, Réglages, Support)
  3. Onglet Terminal — console WP-CLI interactive, fenêtre noire de type terminal
  4. Onglet Fichiers — explorateur avec éditeur intégré et sauvegarde automatique avant écriture
  5. Onglet Extensions — boutons d'activation et de désactivation en ligne, et formulaire de téléversement de ZIP
  6. Onglet Orchestrateur — un bouton Exécuter par action des extensions AIFORYA installées
  7. Onglet Sécurité — gestion des jetons JWT, avec révocation
  8. Onglet Journaux — fin du fichier de débogage et journal d'audit complet

Changelog

3.3.5

  • Correctif : la limite de débit de l'API REST annonçait « 60 requêtes par minute », et ce n'était vrai ni pour le nombre ni pour la durée.
    • La durée : son compteur voyait son échéance repoussée d'une minute à chaque appel accepté, et ne se vidait qu'une minute après le dernier appel accepté. Un traitement lent mais continu était donc refusé tôt ou tard, quel que soit son rythme.
    • Le nombre : WordPress vérifie les droits une seconde fois après chaque réponse (pour l'en-tête Allow), et chaque vérification était comptée. Une requête en valait deux : la limite réelle était de 30 requêtes, pas 60. Avec les deux défauts réunis, un appel toutes les 5 secondes était refusé au bout de 2 minutes 30. La limite est désormais une vraie fenêtre fixe de 60 secondes, qui repart à zéro 60 secondes après son début quel que soit le rythme des appels, et chaque requête compte une seule fois. La valeur réglée ne change pas.
  • Une réponse 429 indique maintenant la limite, la durée de la fenêtre et le nombre de secondes à attendre, et porte l'en-tête HTTP standard Retry-After.

3.3.3

  • Correctif : le proxy des handlers AJAX ne déposait le jeton de sécurité que sous le nom « nonce ». Un handler qui emploie le nom par défaut de WordPress (_ajax_nonce / _wpnonce) refusait donc un jeton pourtant valide. Le jeton est désormais déposé sous les trois noms ; aucun contrôle de droits n'est levé.

3.3.2

  • Correctif de sécurité — le journal d'audit conservait des secrets en clair. Chaque commande passée par la console était journalisée telle quelle dans la base du site, y compris celles qui transportent un secret : un changement de mot de passe, sa vérification, une clé d'API posée dans un réglage. Ces valeurs sont désormais masquées avant d'être écrites ; la commande reste journalisée, avec le nom du réglage concerné, mais sans la valeur.

3.3.1

  • Correctif de sécurité. Les clés d'API que vous saisissez dans cette extension sont désormais chiffrées au repos dans la base de votre site (AES-256-GCM, clé dérivée des sels de wp-config.php, donc jamais stockée dans la base qu'elle protège). Jusqu'ici elles y étaient lisibles en clair par toute personne ayant accès à la base ou à une sauvegarde. Rien à faire de votre côté : une clé existante reste lisible et se chiffre au prochain enregistrement.

3.3.0 — 2026-08-27

  • NEW : chaque bandeau de l'administration WordPress devient supprimable définitivement, un par un, par un bouton posé sur le bandeau lui-même. Rien n'est masqué par défaut : vous décidez bandeau par bandeau, et une alerte de sécurité n'est jamais escamotée à votre place.
  • NEW : route security.txt.
  • FIX : le bouton de suppression était empilé hors des bandeaux au lieu d'être posé dessus.

3.2.9 — 2026-08-20

  • FIX (sécurité) : POST /plugins/upload refuse désormais une archive dont les chemins internes contiennent des antislashes. Sous Linux, une telle archive s'extrait à plat, unzip_file() rend un succès, et l'extension n'est en réalité pas installée — la route répondait « Plugin installé » sur une installation qui n'avait pas eu lieu.

3.2.8 — 2026-08-19

  • FIX : POST /plugins/upload annonçait « Plugin installé » sans jamais rien vérifier. Il contrôle maintenant la présence réelle de l'extension après extraction, et indique si elle en a remplacé une existante.

3.2.7 — 2026-07-05

  • NEW : interface partagée AIFORYA (aiforya-ui.css / aiforya-ui.js) chargée dans l'administration, libellés de confirmation et d'annulation traduits.
  • IMPROVED : les six catalogues de langue complétés (~500 chaînes par langue).
  • FIX : faute de français dans la FAQ (« le clé API » → « la clé API »).

3.2.5 — 2026-07-05

  • NEW : feuille de style de la navigation latérale AIFORYA chargée dans l'administration.

3.2.2 — 2026-05-18

  • FIX (WordPress 6.7+) : le domaine de traduction est chargé explicitement sur init, et l'enregistrement des onglets déplacé après init. Supprime le message _load_textdomain_just_in_time was called incorrectly.

3.2.1 — 2026-05-14

  • FIX : thème sombre étendu aux tableaux table.widefat — les lignes blanches qui subsistaient sur certains écrans ont disparu.
  • IMPROVED : illustration de l'extension servie depuis aiforya.fr.

3.2.0 — 2026-05-08

  • IMPROVED : FAQ enrichie et interface traduite à 100 % dans les six langues.
  • FIX : assistant de fichiers (file-helper).

3.1.0 — 2026-05-08

  • NEW : sauvegarde et restauration intégrées. Export ZIP complet de la configuration (options, tables aiforya_cc_*, rapports générés, manifeste avec versions et sommes de contrôle), stockage protégé et URL signée 24 h.
  • NEW : restauration en deux temps — une simulation obligatoire (dry_run) avant toute écriture, et une sauvegarde automatique juste avant.
  • NEW : sauvegarde automatique hebdomadaire, les quatre dernières conservées.

3.0.3 — 2026-05-08

  • NEW : Portail Clients en marque blanche — accès par jeton, empreinte SHA-256 en base, purge automatique des jetons expirés.
  • NEW : Rapports HTML et PDF, avec envoi mensuel automatique.
  • NEW : Audit de Sécurité assisté par IA — analyse continue deux fois par jour, résultats dédupliqués.
  • NEW : 15 routes REST (/portal/*, /reports/*, /security/*) et trois nouveaux onglets d'administration.
  • FIX : l'enregistrement des réglages de l'onglet Sécurité arrivait après le démarrage du moteur.

2.5.0 — 2026-05-08

  • NEW : mode Auto-Pilote — des règles autonomes « si ceci, alors cela », évaluées toutes les heures. 8 déclencheurs natifs (mise à jour en attente depuis N jours, base trop volumineuse, dossier d'envois trop lourd, débogage affiché en production, absence de HTTPS, administrateur inactif, version de WordPress dépassée, journal d'audit trop gros) et 6 actions (courriel, webhook, désactiver une extension, WP-CLI, action d'extension, journaliser seulement).
  • NEW : journal complet des exécutions et temporisation anti-répétition.

2.4.0 — 2026-05-08

  • NEW : tableau de bord multi-sites — vue en temps réel de tous les sites pilotés, directement entre vos sites, sans relais cloud tiers.
  • NEW : Intelligence transversale — détection des motifs communs à plusieurs sites (mises à jour en attente, débogage en production, HTTPS absent, versions de WordPress hétérogènes).
  • NEW : les jetons des sites distants sont chiffrés (AES-256-GCM) et ne sont jamais stockés en clair.

2.3.1 — 2026-05-08

  • FIX : l'Assistant IA fonctionne en conditions réelles (identifiant d'outil Anthropic).

2.3.0 — 2026-05-08

  • NEW : Assistant IA conversationnel directement dans l'administration.

2.2.0 — 2026-05-07

  • NEW : route REST GET /sites/info — instantané complet du site en un seul appel (fonction majeure pour les agences)
  • NEW : routes REST GET/POST/DELETE /cron — gestion complète des tâches planifiées (lister, exécuter, déprogrammer)
  • NEW : route REST POST /bulk — enchaîner N opérations en un seul appel (50 au maximum, stop_on_error en option)
  • NEW : interface traduite en 6 langues (FR / EN / DE / ES / IT / NL)
  • NEW : readme.txt au standard wp.org
  • IMPROVED : FAQ enrichie, de 8 à 14 questions (couvre toutes les fonctions des versions 2.x)
  • IMPROVED : onglets Support et Avis activés et testés

2.1.4 — 2026-05-07

  • FIX : hébergements LiteSpeed PHP-FPM — les gestionnaires JavaScript sont désormais écrits directement dans render() (une fonction externe n'était pas toujours évaluée, à cause d'un retour anticipé combiné à la mémoire persistante des workers)
  • FIX : URL d'activation/désactivation d'une extension — plus d'encodage du chemin de l'extension (il provoquait une erreur 404 rest_no_route)
  • FIX : invalidation automatique d'OPcache après chaque écriture ou suppression de fichier
  • FIX : l'horodatage du journal d'audit est enfin renseigné (il valait 0000-00-00)

2.1.0 — 2026-05-07

  • NEW : éditeur en ligne dans l'onglet Fichiers (zone de saisie et enregistrement avec sauvegarde automatique) et suppression avec confirmation
  • NEW : boutons d'activation et de désactivation dans l'onglet Extensions, plus un formulaire de téléversement de ZIP
  • NEW : bouton d'exécution par action dans l'onglet Orchestrateur, avec la sortie JSON affichée
  • NEW : fenêtres modales AIFORYA en thème sombre (elles remplacent les window.confirm / window.alert du navigateur)
  • FIX : la route /sql capture la dernière requête et la dernière erreur avant d'écrire dans le journal d'audit (elle affichait l'écriture du journal au lieu de la requête exécutée)

2.0.0 — 2026-05-07

  • MAJEUR : refonte en version 2 sur une architecture canonique et modulaire
  • NEW : 8 onglets d'administration (Fichiers, Base de données, Extensions, Terminal, Journaux, Orchestrateur, Sécurité, Réglages)
  • NEW : API REST de premier niveau (système, extensions, journaux, WP-CLI)
  • NEW : API REST de second niveau (relais AIFORYA, SQL avec simulation)
  • NEW : versionnage et migration automatiques du schéma de base de données à l'activation
  • NEW : socle vendor-aiforya complet (coquille, menu, moteur, onglets, activation, support, avis)
  • NEW : uninstall.php qui conserve vos données par défaut (le nettoyage est un choix explicite)
  • NEW : les bandeaux d'administration des extensions tierces sont retirés des écrans AIFORYA
  • PRÉSERVÉ : l'API REST de la version 1 (gestion des fichiers avec sauvegarde automatique) — six mois de validation en production

1.0.0 — 2026-04-27

  • Première version : API REST V1 (routes de fichiers) + authentification JWT + journal d'audit