À propos du projet
ctx est une chaîne d'outils CLI ouverte, locale et rapide pour l'ingénierie de contexte destinée aux agents de codage. Elle indexe l'historique déjà stocké sur votre machine par des outils tels que Claude Code, Codex, Cursor, Pi et Gemini CLI, convertissant les journaux spécifiques aux fournisseurs en enregistrements locaux cohérents pour les sessions, messages, appels d'outils, relations et activité du dépôt. Les agents peuvent ensuite rechercher cet historique avec `ctx search`, inspecter des événements exacts ou des transcriptions complètes avec `ctx show`, et identifier les emplacements source avec `ctx locate`. La recherche utilise la correspondance lexicale BM25 par défaut, avec une recherche sémantique locale optionnelle activée via `ctx semantic enable`.
Une fonctionnalité clé est `ctx blame`, qui fonctionne comme git blame mais attribue le code commité à la session d'agent qui l'a produit, avec des citations renvoyant à la transcription originale et aux appels d'outils. Elle peut partir d'un fichier et d'une plage de lignes, d'un commit ou d'une pull request, aidant les agents à récupérer les contraintes, décisions, approches échouées et hypothèses qui ne sont plus visibles dans le code.
`ctx graph` fournit la cartographie du codebase et l'analyse d'impact. C'est une implémentation Rust indépendante inspirée de Graphify, stockant le graphe dans SQLite afin que les recherches interrogent directement la base de données et que les mises à jour ne touchent que les fichiers modifiés. Le projet rapporte des performances de recherche et de mise à jour nettement plus rapides que Graphify sur de grands dépôts, tout en préservant la compatibilité avec les bases de données `.graf/index.db` existantes.
`ctx sift` réduit la sortie d'outils bruyante avant qu'elle n'atteigne un agent de codage, laissant les commandes originales intactes et dépensant moins de jetons sur les chemins répétés, les journaux et le formatage. La compaction ordinaire s'exécute localement, et la rétention optionnelle des originaux permet de récupérer la sortie capturée complète avec `ctx sift recall`.
L'indexation de l'historique s'exécute localement sans hooks ni code à l'intérieur du processus de l'agent. L'indexation automatique maintient l'index local à jour, et les mises à jour ne deviennent visibles qu'une fois terminées. Le projet inclut également un support bêta pour sauvegarder l'historique ou partager des sessions sélectionnées via un serveur ctx auto-contrôlé, avec partage opt-in. Des SDK sont documentés pour TypeScript, Python, Rust, Go, JVM, Swift et .NET, et des plugins d'historique personnalisés peuvent adapter des formats d'agents non pris en charge.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.