J'ai expédié quatre versions de world-model-mcp en douze jours. v0.6.1 à v0.7.2. Le discours est le suivant : « Les agents de codage d’IA perdent le contexte lors du compactage, répètent les mêmes erreurs et hallucinent des API qui n’existent pas. » Avant d'écrire davantage à ce sujet, je voulais démontrer les primitives sur une vraie base de code, avec de vraies sorties, et non des captures d'écran pour lesquelles quelqu'un doit me croire sur parole.
La base de code est le propre dépôt du projet. J'ai exécuté python -m world_model_server.cli setup (il a automatiquement ensemencé 598 entités à partir de la source), puis exécuté scripts/demo_seed.py qui insère le petit ensemble de contraintes, de faits et une ligne d'audit de compactage que la véritable activité de hook PostToolUse / record_correction écrirait de manière organique sur une à deux semaines de développement avec Claude Code installé.
Chaque bloc de sortie ci-dessous est textuellement issu de la base de données SQLite réelle après l'exécution de la commande réelle. Vous pouvez reproduire chaque sortie ici en clonant le dépôt, en exécutant python -m world_model_server.cli setup, puis python scripts/demo_seed.py. Le script est idempotent et prend en charge --dry-run et --reset.
Installer : pip install world-model-mcp. Source : github.com/SaravananJaichandar/world-model-mcp.
1. Une contrainte apprise refusant une modification à la limite de PreToolUse
Lorsqu'un développeur corrige l'agent (réécrit console.log en logger.debug), le hook PostToolUse enregistre la différence et en déduit une règle. Une fois que le nombre de violations de cette règle franchit le seuil strict (gravité = erreur, nombre ≥ 3), la tentative suivante est refusée lors de PreToolUse avant l'exécution de l'outil.
La contrainte telle que le graphique la stocke : { "rule_name": "no-console-log", "severity": "error", "violati...
[Courte citation de 8% de l'article original]