Repository navigation
csagent-openapi
CsAgent v0.7.1 — Notes de version
Version précédente publiée : csagent-v0.7.0 Cette version : 4 commits, le 7 octobre 2026. Tag suggéré :
csagent-v0.7.1
En bref
- Modèles locaux : nouvelle option
--endpoint, qui permet d'utiliser n'importe quel serveur compatible OpenAI, par exemple Ollama, sans recompiler et sans clé d'API. - Un dossier par mémoire : les fichiers de mémoire sont rangés dans un dossier au lieu de quatre fichiers aux noms à rallonge.
⚠️ Aucune migration (voir plus bas). - Linux : le démarrage ne plante plus à cause du moniteur de presse-papiers Windows.
- 78 tests automatisés (71 en 0.7.0), tous réussis.
✨ Nouveautés
Utiliser un serveur LLM local ou autre (--endpoint)
Jusqu'ici l'adresse du serveur LLM était écrite en dur dans le code (API Albert). Elle peut maintenant être choisie à l'exécution.
ollama pull qwen2.5-coder:14b
csagent --endpoint http://localhost:11434/v1 --model qwen2.5-coder:14b
| Option | Variable d'environnement | Rôle |
|---|---|---|
| --endpoint | CSAGENT_ENDPOINT | URL de base d'un serveur compatible OpenAI (par défaut : API Albert) |
| --vision-model | CSAGENT_VISION_MODEL | Modèle utilisé quand la conversation contient une image (par défaut : gemma-4-31b-it) |
Détails :
- L'option de la ligne de commande l'emporte sur la variable d'environnement.
- Pas de clé d'API pour un endpoint local (
localhost,127.x,::1) :ALBERT_API_KEYn'est plus nécessaire. Un endpoint distant l'exige toujours. - Fonctionne dans tous les modes : CLI,
--ui,--leanuiet--api. - L'outil
list_modelsinterroge l'endpoint configuré (le paramètre?status=truen'est envoyé qu'à l'API Albert par défaut). - Le mode
--apiaffiche l'endpoint utilisé au démarrage. - L'aide (
--help) et le README (section « Local models with Ollama ») sont mis à jour.
À savoir avec Ollama :
- Choisis un modèle qui gère les appels d'outils (
qwen2.5-coder,qwen3,llama3.1…) : la boucle de l'agent en dépend. - Pour les images, ajoute
--vision-modelavec un modèle de vision que tu as téléchargé (par exemplellava). Sinongemma-4-31b-itest demandé, et Ollama ne l'a pas.
🔧 Modifications
Mémoire : un dossier par mémoire
Avant (0.7.0) :
agent_memory.json
agent_memory.exact.json
agent_memory.semantic.json
agent_memory.semantic.json.summary.json
Maintenant :
agent_memory/
├── conversation.json
├── exact.json
├── semantic.json
└── summary.json
--mem <nom>désigne maintenant le nom du dossier. Un.jsonfinal est ignoré :--mem projet.jsonet--mem projetdonnent le même dossierprojet/.- Le dossier par défaut est
agent_memory/. Le dossier est créé automatiquement, même dans un chemin qui n'existe pas encore. - Les fichiers corrompus sont toujours mis en quarantaine en
.bad, dans le même dossier. - Deux noms de mémoire différents ne partagent jamais un fichier.
- Le projet de tests couvre ces règles (
MemoryFolderTests).
⚠️ Aucune migration
Les anciens fichiers (agent_memory*.json) ne sont pas lus par cette version. Au premier lancement, l'agent repart avec une mémoire vide dans agent_memory/. Pour garder un ancien historique, il n'existe pas de conversion automatique : l'ancien contenu reste simplement sur le disque, tu peux le supprimer quand tu veux.
🐛 Corrections
- Linux :
System.DllNotFoundException: Unable to load shared library 'kernel32.dll'au démarrage. Le moniteur de presse-papiers Windows ne se lance plus que sous Windows.
⬆️ Mise à jour depuis 0.7.0
- Si tu utilises des fichiers de mémoire existants : ils ne seront pas repris (voir « Aucune migration »). Les dossiers
agent_memory*/sont déjà ignorés par Git (.gitignore). - Si tes scripts passent
--mem un_fichier.json, ils continuent de fonctionner, mais créent maintenant un dossierun_fichier/. - Rien à changer pour continuer à utiliser l'API Albert :
--endpointest facultatif.
🧪 Vérification
78 tests sur 78 réussis. Le mode --api a aussi été essayé de bout en bout avec un faux serveur LLM, sans ALBERT_API_KEY. Il n'a pas été essayé avec un vrai Ollama.