La compaction permet de maintenir la productivité des longues sessions en résumant automatiquement l'historique des conversations plus ancien à mesure que votre session progresse. Vos objectifs, décisions et progrès techniques sont préservés - seule la partie centrale verbeuse est compressée.
| Capacité | IDE | CLI | Web | Mobile |
|---|---|---|---|---|
| Compaction automatique | ✓ | ✓ | ✓ | ✓ |
Déclenchement manuel (/compact) | — | ✓ | — | — |
| Indicateur d'utilisation du contexte | ✓ | ✓ | ✓ | ✓ |
Lorsque votre conversation approche de la limite de contexte du modèle, la compaction se déclenche automatiquement :
Vos objectifs, décisions, modifications de fichiers et contraintes énoncées survivent à la compaction. Ce qui est compressé, c'est le résultat intermédiaire - les détails des appels d'outils, les discussions exploratoires et les messages d'erreur résolus.
Vous travaillez sur une tâche de refactorisation depuis 45 minutes - l'agent a modifié 12 fichiers, exécuté des tests et corrigé trois erreurs de build. L'utilisation du contexte est à 80 %.
La compaction se déclenche. Le résumé capture : quels fichiers ont été modifiés, quels tests réussissent, les 2 fichiers restants à refactoriser, et votre contrainte selon laquelle « tous les changements doivent être rétrocompatibles ». Les deux derniers échanges (votre instruction la plus récente et la réponse de l'agent) sont conservés textuellement.
L'agent continue immédiatement. Il sait ce qui est fait, ce qui reste à faire, et quelles sont vos règles - sans avoir à conserver 45 minutes de résultats d'outils intermédiaires.
| Toujours préservé | Peut être résumé |
|---|---|
| Statut des tâches (terminé / en cours / en attente) | Détails des appels d'outils individuels |
| Chemins des fichiers modifiés | Étapes de raisonnement intermédiaires |
| Décisions et contraintes clés | Extraits de code dans les messages précédents |
| Prochaines étapes | Détails d'erreurs des problèmes résolus |
| Votre intention et vos exigences énoncées | Discussions exploratoires |
La compaction est automatique dans l'IDE. Il n'y a pas de déclenchement manuel.
L'indicateur d'utilisation du contexte dans le panneau de clavardage montre à quel point vous êtes près de la limite du modèle. Lorsque la compaction se déclenche, l'indicateur se réinitialise pour refléter l'espace libéré et la session se poursuit.
La CLI expose deux paramètres qui contrôlent la quantité de contexte conservée pendant la compaction :
| Paramètre | Par défaut | Description |
|---|---|---|
compaction.excludeMessages | 2 | Nombre minimal de paires de messages récents à conserver textuellement |
compaction.excludeContextWindowPercent | 2 | Pourcentage minimal de la fenêtre de contexte à conserver comme messages récents |
Les deux paramètres sont évalués, et la valeur la plus conservatrice (la plus grande) l'emporte. Cela garantit qu'un contexte récent suffisant est toujours disponible pour que l'agent maintienne la continuité.
La compaction est à sens unique. L'historique complet de la conversation avant le point de compaction n'est pas récupérable au sein de la session. Si vous devez préserver l'historique complet, exportez votre session avant que la compaction ne se produise.
Dans IDE 0.x, cette fonctionnalité s'appelait « Summarization ». Le comportement était similaire (déclenchement automatique à 80 % d'utilisation du contexte), mais créait une nouvelle session avec le contexte compacté plutôt que de continuer dans la même session. Consultez la référence 0.x pour connaître le comportement antérieur.
Compaction