session-guard

Par wshobson · agents

À utiliser lors de tâches complexes à plusieurs étapes, quand une session devient longue (40+ appels d'outils), quand l'agent commence à ignorer des règles qu'il suivait auparavant, quand les conventions dérivent, quand la qualité des sorties semble se dégrader, ou après tout événement de compaction du contexte. Prévient la corruption des longues sessions ET l'amnésie liée à la compaction du contexte grâce à une auto-application comportementale.

npx skills add https://github.com/wshobson/agents --skill session-guard

Session Guard

Vue d'ensemble

Les sessions longues se corrompent silencieusement. La compaction de contexte supprime les instructions sans avertissement. Les hooks ne résolvent pas le problème (confirmé par plusieurs développeurs sur les issues GitHub #19471, #9796, #64171). Cette compétence prévient les deux par auto-application comportementale : surveiller la santé, ancrer les règles critiques à travers la compaction, se diviser avant les dégâts. Aucun package, aucune base de données - une application comportementale pure qui fonctionne dans tous les environnements.

Quand l'utiliser

  • Session dépasse 40 appels d'outils
  • L'agent contredit les décisions antérieures
  • Les conventions de style/nommage commencent à dériver
  • Après tout événement de compaction de contexte
  • La portée des tâches grandit sans limites

Signaux de santé

Signal Seuil Action
Nombre d'appels d'outils >40 JAUNE : checkpoint + réciter les règles critiques
Nombre d'appels d'outils >60 ROUGE : diviser ou compacter avec ancrage
L'agent contredit une décision antérieure Quelconque VÉRIFIER : relire la source de vérité
Dérive de style/nommage Quelconque RÉCITER : énoncer les règles actives à haute voix
La lecture de fichier retourne un contenu inattendu Quelconque RELIRE : ne pas faire confiance à l'état en cache
La portée des tâches grandit sans limites Continu DIVISER : une tâche par session

Protocole

Zone verte (0-40 appels d'outils)

Fonctionnement normal. Aucune intervention nécessaire.

Zone jaune (40-60 appels d'outils)

  1. CHECKPOINT - résumer la progression en un paragraphe
  2. RÉCITER - énoncer les 3-5 règles actives les plus critiques à haute voix : « Règles actives : [convention de nommage], [structure de fichier], [modèle de gestion d'erreur], [exigence de test] »
  3. ÉVALUER - presque terminé ? Continuer. Pas terminé ? Préparer la division.
  4. RÉDUIRE - aucune lecture exploratoire. Uniquement des opérations ciblées.

Zone rouge (60+ appels d'outils OU signal de dérive)

  1. ARRÊTER - ne pas faire d'autres appels d'outils
  2. VÉRIFIER - relire les règles du projet (ne pas faire confiance à la mémoire)
  3. CHECKPOINT - écrire l'état dans un document de transmission
  4. DIVISER - créer une transmission, suggérer une session nouvelle

Ancrage de contexte (anti-compaction)

Lorsque la compaction s'est produite (perte soudaine du contexte antérieur, ou après /compact) :

  1. RELIRE immédiatement le fichier de règles du projet
  2. RÉCITER les 3-5 règles critiques à haute voix dans votre réponse
  3. VÉRIFIER que votre prochaine action prévue correspond à ces règles avant d'exécuter
  4. Si vous êtes incertain sur TOUTE décision antérieure, RELIRE le fichier source - ne pas deviner

Ce qui survit à la compaction :

  • Messages utilisateur les plus récents (haute priorité)
  • Corps de compétence actuellement invoqué (limité à 5 000 tokens, les plus anciens supprimés en premier)
  • État git et structure du projet
  • Contenus de fichier lus APRÈS la compaction

Ce qui est PERDU lors de la compaction :

  • Décisions prises tôt dans la conversation
  • Règles architecturales énoncées uniquement verbalement (pas dans les fichiers)
  • Contexte des sorties d'outils (lectures de fichier, sorties de commande)

Modèle sûr pour la compaction

Garder les instructions critiques dans les FICHIERS (CLAUDE.md, CONTEXT.md), PAS dans la conversation. Si une règle importe, elle doit vivre dans un fichier que l'agent peut relire - pas dans quelque chose convenu antérieurement.

Erreurs courantes

  • Faire confiance à votre mémoire des règles après 50+ appels d'outils (vous ne vous en souvenez pas - relire)
  • Tout relire pour être sûr (gaspille les appels d'outils - être ciblé)
  • Se sentir bien donc supposer que le contexte va bien (la compaction est SILENCIEUSE)
  • Se diviser APRÈS avoir remarqué les problèmes (diviser AVANT - prévention, pas récupération)

Pourquoi c'est important

La compaction de contexte est le problème de plateforme #1 non résolu en 2026. Les hooks ne le résolvent pas (confirmé : l'agent ignore les injections post-compaction car le résumé de compaction crée une dynamique narrative). Cette compétence est la contre-mesure comportementale légère : pas d'infrastructure, pas de packages - une auto-surveillance disciplinée qui fonctionne dans tous les environnements.

Skills similaires