Guide utilisateur

Tout ce qu'il faut savoir pour utiliser le chat, l'Espace Code, les discussions (renommage, recherche) et versions (projet + fichier, restauration), le test du code en preview (PHP / Python), l'analyse qualité du code (rapport interactif) et le terminal SSH (navigateur ou client externe).

1. Chat assistant

Le chat général permet de dialoguer avec l'assistant IA. Vos conversations sont privées et isolées par compte utilisateur.

Fonctionnalités

Export

Si aucune conversation n'existe au chargement, une conversation par défaut est créée automatiquement.

2. Espace Code

Mini-IDE dans le navigateur : explorateur de fichiers, éditeur CodeMirror et assistant capable de modifier réellement les fichiers du projet.

Projets

Explorateur et éditeur

Assistant code

Après les modifications de l'agent ou les vôtres, testez le code dans le conteneur preview — voir §3.

3. Tester le code (preview)

Chaque projet dispose d'un conteneur Docker dédié qui exécute votre code PHP. C'est l'outil principal pour valider un site pendant le développement.

Éditer = Espace Code (IDE + agent).
Exécuter / tester = /preview/{id}/ (application en cours d'exécution).
Parcourir les fichiers = /ws/{id}/ (↗ Workspace, listing seulement).

Cycle de travail recommandé

  1. Décrivez la tâche à l'agent — il modifie les fichiers du workspace.
  2. Vérifiez ou ajustez le code dans l'éditeur ; Ctrl+S pour sauvegarder.
  3. Ouvrez /preview/{id}/ dans un nouvel onglet (ou le lien preview depuis l'Espace Code).
  4. Testez les pages, formulaires, API ; en cas d'erreur, revenez à l'IDE et corrigez.
  5. PHP : les fichiers .php sont servis tout de suite après sauvegarde.

URL de test

EnvironnementURL
Apache + PHP (maia-preview-php) /preview/{id}/ → vos pages .php

En cas de problème

La plateforme utilise l'image maia-preview-php sur le NUC : en cas de régression, signalez-le à l'admin.

4. Analyse du code (qualité)

L'Espace Code intègre une analyse statique du projet : détection de bugs, vulnérabilités, code mort, mauvaises pratiques, etc. Le moteur s'exécute côté serveur (service d'analyse type SonarQube) ; les résultats sont stockés dans le projet et consultables sans quitter l'IDE.

◇ Analyser le code — lance un scan (plusieurs minutes).
↗ Voir le rapport — ouvre le lecteur intégré (disponible après une analyse réussie).

Lancer une analyse

  1. Ouvrez l'Espace Code et sélectionnez un projet.
  2. Cliquez sur ◇ Analyser le code dans la barre du haut.
  3. Confirmez — un indicateur de progression s'affiche pendant le scan.
  4. À la fin : message de succès et dossier Rapports (.maia) visible dans l'explorateur.

Le bouton n'apparaît que si l'analyse est activée sur l'instance (configuration admin). Un scan en cours désactive temporairement les boutons d'analyse.

Fichiers générés

Lire le rapport (↗ Voir le rapport)

La modale Rapport d'analyse propose deux vues :

Pour corriger rapidement : cliquez sur un problème (ou le lien fichier/ligne) — la modale se ferme et l'éditeur s'ouvre sur la ligne concernée. Vous pouvez aussi ouvrir le rapport dans l'éditeur via le bouton Éditeur, ou Actualiser pour régénérer le rapport depuis les données du dernier scan.

Quand l'utiliser ?

Limites et dépannage

5. Aperçu conteneur (détails techniques)

Chaque projet dispose de son propre conteneur Docker, distinct de la plateforme Mon Agent IA.

Édition = Espace Code (IDE + agent).
Fichiers = /ws/{id}/ (listing Apache).
Application = /preview/{id}/ (proxy vers le conteneur).

Conteneur

StackPreview app
Apache + PHP (maia-preview-php) Pages .php du workspace

Cycle de vie

Pour le mode d'emploi utilisateur (tester le code), voir surtout §3 Tester le code.

6. SSH conteneur (DEV)

Chaque conteneur preview expose un accès SSH root sur un port hôte aléatoire (mode développement).

Client SSH externe (Terminal, PuTTY) ou bouton ▸ Terminal dans l'Espace Code (shell web, session Maia uniquement).

7. Discussions (Espace Code)

Une discussion n'est pas votre connexion au site : c'est un fil de conversation avec l'assistant code, propre à un projet.

Projet = les fichiers du workspace.
Discussion = une conversation avec l'agent sur ce projet.

Utilisation

Nom et renommage

Recherche dans la discussion

Le bouton loupe (à côté de +) ouvre un champ de recherche pour retrouver un mot ou une phrase dans les messages affichés.

Quand créer une nouvelle discussion ?

8. Versions projet et versions fichier

Deux mécanismes distincts : l'un pour le projet entier, l'autre pour un fichier à la fois.

Versions projet (snapshots manuels)

Bouton ⊕ Version projet dans la barre du haut (si le module est activé).

Versions fichier (historique automatique)

Bouton Versions fichier dans la barre de l'éditeur (fichier ouvert requis).

Ne confondez pas Versions fichier (automatique, un fichier) et Version projet (manuel, snapshot complet).

9. Exporter une conversation

Disponible dans le Chat et l'Espace Code (discussion active).

Emplacement Markdown PDF
Chat — en-tête Téléchargement .md Page imprimable
Espace Code — barre discussions Téléchargement .md Page imprimable

Les boutons sont grisés tant qu'aucune conversation / discussion n'est sélectionnée.

10. Réponses à choix cliquables

L'agent peut proposer des boutons de réponse au lieu d'une simple liste numérotée (Chat et Espace Code).

  1. L'agent pose une question avec des options, ou propose un plan par étapes.
  2. Des boutons apparaissent sous le message.
  3. Cliquez sur une option pour l'envoyer, ou écrivez une réponse libre.

Les étapes utilisent le même format <<<choices>>>. Module activable/désactivable en administration. Dans l'Espace Code, les boutons sont affichés sous la bulle, hors markdown.

11. Fournisseurs d'IA

L’administrateur configure un fournisseur pour le Chat et un autre (éventuellement différent) pour l’Espace Code. Les utilisateurs voient ensuite les modèles disponibles dans les sélecteurs (format fournisseur|modèle).

ILAAS

Routeur LLM compatible OpenAI (https://llm.ilaas.fr/v1). Une clé API donne accès à un catalogue de modèles hébergés (Llama, Mistral, GPT-OSS, etc.). La plateforme appelle /v1/models et /v1/chat/completions.

ALBERT

Albert API (Etalab / DINUM) : offre d’IA générative pour le secteur public français, avec des modèles open-weight et une API compatible OpenAI. Utile pour un usage plus souverain que les clouds commerciaux classiques.

LITELLM

LiteLLM est un proxy : il traduit une API OpenAI unique vers des dizaines de backends (OpenAI, Azure, Anthropic, Ollama, vLLM…). Vous exposez les modèles dans LiteLLM ; Mon Agent IA se connecte uniquement au proxy (URL + clé master ou virtual key), comme pour ILAAS ou ALBERT.

Résumé public aussi sur l’accueil : Fournisseurs d’IA.

12. Modules fonctionnels

La plateforme propose des modules optionnels. Un administrateur les active ou les désactive dans Administration → Paramètres selon le besoin.

Module Rôle
Espace Code (module complet) Désactive l’IDE, les projets, la preview et toutes les API associées. Seul le Chat reste accessible.
Export / téléchargement de projet Archive ZIP complète du projet.
Versions projet (snapshots) Crée une archive locale + VERSIONS.md / CHANGELOG.md dans le workspace.
Historique des versions de fichiers Archive automatique à chaque sauvegarde ou modification par l’assistant (project/.versions/).
Analyse qualité du code Scan SonarQube et rapport dans l’Espace Code.
Vérification PHP automatique Test syntaxe et exécution après l’agent (conteneur SSH si disponible, sinon hôte + test_site.php).
Questions à choix cliquables Boutons cliquables pour les réponses et les étapes (<<<choices>>>).
Protection mot de passe /ws/ Permet de protéger le workspace public par un mot de passe.
Terminal web (SSH) Ouvre un shell dans le conteneur preview depuis l’interface (session Maia uniquement).
Choix du modèle IA à la création de projet Dans l’Espace Code, permet de choisir le fournisseur et le modèle IA lors de la création d’un projet.
Consommation tokens / indicateur eau Compteur tokens, bouteilles d’eau par conversation et total cumulé dans l’interface.

Vue condensée sur l’accueil : Modules activables.

13. Administration

Réservée aux comptes avec le rôle admin.

Tableau de bord

Autres pages admin

Les logs détaillés sont enregistrés dans data/logs/ (format JSON, un fichier par jour).

Raccourcis utiles

Ctrl + S (Espace Code)Sauvegarder le fichier ouvert
Entrée (chat / code)Envoyer le message ou l'instruction
Shift + EntréeNouvelle ligne dans le message