Free-coding-models : choisir un modèle de code gratuit et fiable
https://github.com/vava-nessa/free-coding-models
📌 free-coding-models est une CLI qui teste en temps réel des dizaines de modèles “coding” gratuits, compare la latence et la fiabilité, puis configure automatiquement le modèle choisi dans l’outil de dev IA utilisé au quotidien (OpenCode, Goose, Aider, OpenHands, Qwen Code, etc.). L’objectif est simple : arrêter de perdre du temps à essayer “au hasard” un endpoint gratuit qui marche une fois sur deux, et passer directement à un modèle rapide et stable au moment où la session démarre.

Le problème que l’outil attaque est très concret : les offres “free tier” changent vite, les quotas varient selon les jours, certains modèles répondent vite mais avec des pics de latence pénibles, et d’autres sont réguliers mais moins performants. Sans instrumentation, il est facile de confondre un coup de chance (un ping rapide) avec une vraie stabilité. Ici, la sélection se fait avec des signaux plus solides qu’une moyenne : un score de stabilité sur 100 qui combine p95 de latence, variance, fréquence des spikes et uptime. Résultat : un classement utilisable pour choisir “ce qui tient la route maintenant”, pas seulement “ce qui a été rapide une fois”.
Une fois le modèle repéré, la partie la plus pratique arrive : la CLI écrit la config pour le lanceur choisi et enchaîne sur l’ouverture de l’outil. Ça évite les allers-retours entre tableaux, docs de providers et fichiers de configuration. Pour une utilisation quotidienne, ça ressemble à un sélecteur de modèles universel : filtrer, choisir, lancer. Et si le mode outil n’est pas le bon, la TUI permet de basculer d’un outil à un autre sans relancer tout le programme.
Pour démarrer, l’installation passe par Node via npm, puis l’exécution ouvre une interface terminal. Au premier run, l’outil demande les clés API des providers utilisés. Il est possible de n’en renseigner qu’une seule, puis d’ajouter des providers plus tard. Cette approche est utile pour garder la configuration minimale : une clé, un modèle qui marche bien, et ensuite seulement élargir si besoin (par exemple pour accéder à un origin spécifique comme NVIDIA, Groq ou un agrégateur type OpenRouter).
Points clés
- ⚡ Mesure en live la latence et la stabilité, pas seulement “ça répond”.
- 📊 Score de stabilité (p95, variance, spikes, uptime) pour éviter les mauvaises surprises.
- 🧭 Filtres par tier, origin et modes “scénarios” pour converger vite vers un bon choix.
- 🧩 Écrit automatiquement la config dans l’outil cible (OpenCode, Goose, Aider, OpenHands, Qwen Code, etc.).
- 🧰 Peut pré-filtrer avant ouverture de l’interface (utile en script) et sortir du JSON.
En pratique, plusieurs usages reviennent souvent. D’abord, sélectionner “le plus fiable” quand il faut avancer sans se poser de questions : un mode dédié permet de privilégier la stabilité au moment T. Ensuite, choisir un modèle d’un provider précis, par exemple pour bénéficier d’un quota connu ou d’une latence meilleure selon la région. Enfin, préparer une session pour un outil donné : certains environnements aiment un format d’endpoint ou de modèle particulier, et la CLI évite de se tromper en montrant (et en signalant) les incompatibilités.
La logique de “tiers” aide aussi à choisir sans sur-optimiser. Les tiers sont dérivés d’un repère de performance (SWE-bench Verified) et servent surtout de filtre rapide : viser S ou S+ pour des refactors sérieux, descendre en A si l’infra ou les quotas imposent des compromis, ou prendre un modèle plus léger si l’objectif est juste de la complétion. Ce n’est pas une vérité absolue, mais c’est un bon garde-fou pour éviter de configurer un modèle trop faible et conclure à tort que “l’outil IA ne suit pas”.
Au final, free-coding-models ressemble à un “sélecteur de modèles” orienté exécution : il réduit la friction entre benchmark et usage, et met en avant un critère souvent négligé en gratuit, la stabilité. Pour quelqu’un qui alterne entre plusieurs outils IA en terminal et veut profiter des free tiers sans y laisser du temps, c’est une manière simple de choisir vite, de configurer juste, et de lancer immédiatement.
