Aller au contenu

Coach d'usage IA — fiabilisation de la collecte de session

Billet #232: Suivi coach d'usage IA - fiabilisation de la collecte de session, et expérimentation d'une alternative externe
Type : Automatisation / Workflow / Gouvernance
Composants concernés : .github/ai-coach.config.json, scripts/hooks/ai_coach_session_start.ps1, scripts/hooks/ai_coach_append_event.ps1, .github/agents/ai-coach.agent.md, .github/prompts/ai-coach-report.prompt.md, tests/test_ai_coach_infrastructure.py, logs/ai_coach_active_session.json


1. Contexte et objectif

Le coach d'usage IA mis en place précédemment dans le billet #224 visait à analyser une session de travail pour aider à mieux formuler les prompts, structurer plus efficacement les échanges avec l'IA, et limiter le gaspillage de tokens.

La session actuelle a montré une limite importante : le dispositif existant créait bien une session, mais ne capturait pas assez d'informations pour produire un vrai bilan exploitable. L'objectif de cette intervention a donc été de rendre la collecte réellement utile, sans basculer vers une transcription complète permanente.

En parallèle, une piste externe a été ouverte avec l'installation de l'extension GitHub Copilot usage insights, afin d'expérimenter une alternative à la solution custom en cours de construction.


2. Constat principal

Les vérifications menées pendant cette session ont confirmé que le coach fonctionnait au niveau technique minimal, mais pas encore au niveau analytique attendu.

Concrètement :

  • la session active était bien créée ;
  • un fichier d'événements était bien généré ;
  • mais ce fichier ne contenait en pratique qu'un événement de démarrage (SessionStart) ;
  • il ne permettait donc pas de reconstituer l'objectif, les actions importantes, les validations, ni le résultat final de la session.

Le système savait donc dire qu'une session avait commencé, mais pas expliquer ce qui s'y était passé.


3. Décision prise

Trois options ont été considérées :

  1. conserver le mode actuel ;
  2. activer une transcription complète permanente ;
  3. introduire quelques checkpoints structurés.

La troisième option a été retenue.

Le principe est simple : au lieu d'essayer de tout enregistrer, le coach doit capter quelques jalons clés, suffisants pour reconstituer le déroulé de la session et produire ensuite un bilan utile.

Quatre types de checkpoints ont été définis :

  1. GoalSet — objectif de départ ;
  2. MajorAction — action importante ou changement de cap ;
  3. Validation — vérification ou preuve de confirmation ;
  4. Outcome — résultat final ou décision de clôture.

Cette approche a été jugée comme le meilleur compromis entre simplicité, lisibilité, coût et valeur réelle pour le coaching.


4. Actions réalisées

Les actions suivantes ont été menées pendant cette session :

  1. Audit de la solution existante

    • lecture des artefacts AI coach de la session active ;
    • confirmation que le journal réel ne contenait qu'un SessionStart ;
    • relecture de la configuration, du hook de démarrage, de l'agent et du prompt de rapport.
  2. Renforcement de l'architecture AI coach

    • ajout d'un audit structuré dans .github/ai-coach.config.json ;
    • définition explicite des checkpoints recommandés : GoalSet, MajorAction, Validation, Outcome.
  3. Évolution du hook de démarrage

    • enrichissement de scripts/hooks/ai_coach_session_start.ps1 ;
    • ajout d'un signal StructuredAuditReady ;
    • ajout des métadonnées nécessaires pour indiquer qu'un audit structuré est disponible.
  4. Création d'un mécanisme d'écriture de checkpoints

    • création du script scripts/hooks/ai_coach_append_event.ps1 ;
    • ce script permet d'ajouter un jalon structuré à la session active ;
    • il contrôle aussi les types d'événements autorisés pour éviter les journaux incohérents.
  5. Mise à jour de l'analyse du coach

    • adaptation de .github/agents/ai-coach.agent.md ;
    • adaptation de .github/prompts/ai-coach-report.prompt.md ;
    • lorsque des checkpoints existent, ils deviennent la base prioritaire d'analyse.
  6. Ajout de tests de non-régression

    • création de tests/test_ai_coach_infrastructure.py ;
    • ajout d'un test validant l'écriture d'un checkpoint structuré ;
    • ajout d'un test validant le rejet d'un type d'événement non autorisé.
  7. Exploration d'une alternative externe

    • installation de l'extension GitHub Copilot usage insights ;
    • objectif : comparer à terme la valeur d'une solution externe spécialisée avec celle du coach custom développé dans le dépôt.

5. Validation et résultat

La nouvelle approche a été validée de façon progressive.

  1. Validation isolée

    • création d'une session de test dans un environnement temporaire ;
    • génération correcte des événements SessionStart et StructuredAuditReady ;
    • ajout réussi d'un checkpoint GoalSet.
  2. Validation automatisée

    • exécution des tests de tests/test_ai_coach_infrastructure.py ;
    • résultat : validation réussie du nouveau mécanisme.
  3. Validation d'intégration

    • exécution conjointe des tests AI coach et des tests de gouvernance documentaire ;
    • résultat final observé : 10 tests passés sur le périmètre vérifié.

Le résultat concret de cette session est le suivant :

  • le coach ne se limite plus à enregistrer l'ouverture d'une session ;
  • il peut désormais conserver quelques jalons structurés utiles ;
  • une base crédible existe maintenant pour produire un vrai bilan de session lors d'un prochain usage réel.

6. Limites et points d'attention

Quelques limites subsistent malgré cette amélioration :

  • le système n'est pas encore entièrement automatique : pour obtenir un bilan riche, il faut encore enregistrer quelques checkpoints dans la session ;
  • la mesure des tokens reste indirecte ;
  • la solution custom progresse, mais n'est pas encore arrivée à son état final ;
  • l'extension GitHub Copilot usage insights est installée, mais son évaluation reste à faire.

7. Conclusion

Cette session a permis de transformer une première base encore trop légère en un dispositif plus crédible.

Le point le plus important est que le coach dispose maintenant d'un mécanisme simple et exploitable pour documenter le déroulé réel d'une session, sans passer par une transcription complète permanente. Ce choix rend la solution plus réaliste pour un usage quotidien.

En parallèle, l'installation de l'extension GitHub Copilot usage insights ouvre une seconde piste utile : comparer, à terme, une solution externe spécialisée avec la solution custom développée dans ce dépôt.