← Tous les articles

Toute la famille sort : Agent! 1.1.87 et AgentiLoop CLI 0.0.5

Agent! pour Mac accueille Auto-Pilot, six nouveaux fournisseurs, un critique plus strict et la prise en charge de macOS 14.6. Les CLI en Rust et en Go s'offrent une boîte à outils plus fournie : recherche, récupération web, tâches, AGENTS.md, /undo, commandes personnalisées et --json.

La famille AgentiLoop : une app Mac et deux terminaux Une grande fenêtre Mac étiquetée Agent! 1.1.87 trône au centre. À sa gauche, une fenêtre de terminal montre un petit crabe et l'étiquette Rust 0.0.5 ; à sa droite, une fenêtre de terminal montre un petit gopher et l'étiquette Go 0.0.5. Des lignes pointillées relient les trois à un symbole de boucle commun en haut. Agent! 1.1.87 $ agentiloop Rust 0.0.5 $ agentiloop Go 0.0.5 Une boucle. Trois façons de la lancer.
La famille AgentiLoop le 1er octobre : Agent! pour Mac, plus les éditions en ligne de commande en Rust et en Go.

Aujourd'hui, toute la famille sort en même temps. Agent! 1.1.87 est la nouvelle version de l'app Mac, et AgentiLoop CLI 0.0.5 est disponible en Rust comme en Go. C'est une version complète, pas une préversion, et c'est la plus grande avancée à ce jour pour les trois.

Voici les nouveautés, tout droit sorties de l'historique git.

Agent! 1.1.87 pour Mac

La dernière version complète de l'app Mac était la 1.1.33, le 12 septembre. Il s'est passé beaucoup de choses depuis : 449 commits sont entrés dans la 1.1.87. En voici les points forts.

🤖 Auto-Pilot : /auto <goal>

La fonctionnalité phare. Donnez un objectif à Agent!, et /auto l'exécute sous forme d'une série de cycles sans surveillance, dans un budget de temps. Chaque cycle progresse vers l'objectif, vérifie où il en est et continue.

  • Aucune limite de cycles ni d'itérations. Il fonctionne dans les onglets LLM et conserve un historique des objectifs, si bien que /auto last et /auto #N rappellent un objectif précédent.
  • Les sessions survivent aux redémarrages de l'app et reprennent dans le même onglet.
  • Échap n'arrête que le cycle en cours. Stop All (ou /auto stop all) met fin à la session.

C'est la boucle de l'agent avec l'humain qui prend volontairement du recul : vous fixez la destination et le budget, et Agent! prend le volant.

🔌 Six nouveaux fournisseurs, et moins de réglages à bricoler

Nouveau dans la 1.1.87 : Fluxion AI (avec des options de protocole OpenAI et Anthropic), Muse Code (réutilise votre abonnement muse login), Requesty, A2Agent, OrcaRouter et Qwen Code avec le Coding Plan. Il y a aussi un fournisseur expérimental, fm serve, qui expose Apple Foundation Models via une API Chat Completions locale.

La prise en charge de la vision est désormais détectée à partir des métadonnées du catalogue de chaque fournisseur, si bien que l'option Force Vision n'est plus nécessaire. Sous le capot, tous les fournisseurs vivent maintenant dans un seul registre, APIProvider, au lieu d'une douzaine de chemins de code distincts.

🧐 Un critique qu'on ne peut pas faire changer d'avis

Agent! dispose d'une porte critique : un second modèle relit la modification avant que la tâche soit déclarée terminée. Dans la 1.1.87, cette relecture est imposée. Un diff inchangé est refusé, un diff modifié est relu à nouveau, et les problèmes ne peuvent pas être balayés comme « hors périmètre ». Le critique fonctionne désormais aussi avec Codex et Apple Intelligence, et le journal indique quels problèmes il a trouvés et si le code a changé ensuite.

À ses côtés se trouve Jev, la couche de décision TypeSafe System One qui conseille la boucle d'outils. Ses réglages se trouvent dans les nouveaux Réglages communs LLM.

🧠 Un contexte plus intelligent

La compaction a été revue avec soin. Les seuils sont désormais calculés d'après le modèle réellement utilisé (celui de l'onglet ou celui de secours), et les fenêtres de contexte récupérées auprès d'Ollama sont mémorisées. Cela corrige un bug qui faisait compacter certains modèles à 16K. La fin conservée et la microcompaction sont bornées en tokens plutôt qu'en nombre de messages, les blocs trop volumineux sont plafonnés en premier, et les erreurs de dépassement de contexte et de max_tokens sont détectées de la même manière chez tous les fournisseurs.

🖥️ Plus de Mac, plus de langues

  • macOS 14.6 Sonoma et versions ultérieures, sur Apple Silicon et Intel. Les fonctionnalités Apple Intelligence (Foundation Models) nécessitent macOS 26.
  • L'app est traduite en espagnol, français, allemand, chinois (simplifié), russe, coréen et japonais.
  • Nouvelles actions d'accessibilité : wait_until_actionable, select_text_range et observe_start/poll/stop/list.
  • Installation avec Homebrew : brew update && brew install --cask agentiloop-agent.

🔒 Plus sûr par défaut

La suppression récursive du dossier de projet courant est désormais bloquée. Une chasse aux bugs dans toute l'app a corrigé un contournement du mode lecture seule de ShellSafety via &, un blocage du streaming Ollama et plusieurs plantages. task_complete est refusé quand le résumé renvoie à une sortie qui n'a jamais été écrite, et les modèles locaux à court de mémoire s'arrêtent immédiatement avec une raison claire au lieu de tourner en rond.

Une boîte à outils plus fournie pour la CLI Une boîte à outils rouge ouverte, étiquetée 0.0.5. Des outils en sortent avec des étiquettes : glob et grep avec une loupe, web_fetch avec un globe, todo_write avec une liste de contrôle, /undo avec une flèche courbe, AGENTS.md avec un document et --json avec des accolades. 0.0.5 glob · grep web_fetch todo_write /undo AGENTS.md --json { }
AgentiLoop CLI 0.0.5 : la même boucle, et bien plus dans la boîte.

AgentiLoop CLI 0.0.5 : une boîte à outils plus fournie

Quand nous avons emmené la boucle de l'agent dans le terminal, la CLI a démarré avec cinq outils affûtés : lire, lister, écrire, éditer et bash. La version 0.0.4 lui a appris à s'arrêter proprement. La version 0.0.5 consiste à lui donner davantage de matière. Tout est arrivé d'abord en Rust puis a été reproduit commit par commit en Go, si bien que les deux éditions ont exactement les mêmes fonctionnalités.

Nouveaux outils

OutilCe qu'il faitDemande d'abord ?
globTrouve des fichiers par motifNon
grepRecherche dans le contenu des fichiers, avec 0 à 5 lignes de contexteNon
web_fetchRécupère une page http(s) sous forme de texte, avec des limites de tailleOui
todo_writeTient une liste de contrôle pour les travaux en plusieurs étapes (affichez-la avec /todos)Non

glob et grep ignorent .git, node_modules, target et les fichiers binaires, et respectent .gitignore, y compris les fichiers imbriqués, la négation, l'ancrage et les règles réservées aux dossiers. Ils sont ainsi plus rapides qu'un appel à find dans le shell et plus sûrs que de déverser toute une arborescence dans le contexte.

Elle lit les instructions de votre projet

Si votre dépôt contient un AGENTS.md ou un CLAUDE.md, la CLI le charge dans le prompt système, ainsi qu'un fichier dans ~/.agentiloop pour vos préférences personnelles. Des lignes comme @docs/style.md importent d'autres fichiers (imbriqués et protégés contre les cycles). Pas encore de fichier ? /init écrit un AGENTS.md de départ avec les commandes de build et de test qu'il détecte.

Annuler, diff et compagnie

  • /undo : chaque modification faite par write_file, edit_file et apply_patch est journalisée par prompt, ce qui vous permet d'annuler le dernier tour de l'agent.
  • /diff affiche le statut git et le diff de l'arbre de travail.
  • /export enregistre la conversation en Markdown.
  • /usage affiche le total de tokens depuis le démarrage et le taux de remplissage du contexte.

Faites-la vôtre

  • Commandes slash personnalisées : déposez un fichier Markdown dans .agentiloop/commands/, par exemple review.md contenant Review $1 for bugs, et /review main.rs l'exécute. $ARGUMENTS et $1..$9 sont pris en charge, et /commands les liste.
  • Les prompts MCP de vos serveurs apparaissent sous forme de commandes /mcp__<server>__<prompt>.

Conçue pour les scripts et la CI

  • --json affiche une réponse one-shot sous la forme d'un unique objet JSON : result, is_error, session_id, provider, model et usage.
  • --allow-tool / --deny-tool définissent des règles d'autorisation par nom d'outil ou par préfixe mcp_*. Deny l'emporte toujours, même sur --yes.
  • --append-system-prompt ajoute du texte au prompt système le temps d'une exécution.
  • Les pipes fonctionnent, tout simplement : un - isolé dans le prompt est remplacé par stdin, donc git diff | agentiloop "review this" - fait exactement ce qu'il annonce.

Mis bout à bout, cela donne une étape de CI qui relit une pull request, refuse de toucher au shell et renvoie une sortie lisible par une machine :

git diff origin/main | agentiloop --deny-tool bash --json "review this diff" -

Pourquoi les sortir ensemble ?

Parce que c'est la même idée sous trois formes. Agent! pour Mac est le produit phare : il pilote vos apps, vos builds Xcode et tout votre bureau. Les CLI emmènent la même boucle dans n'importe quel terminal sous macOS, Windows et Linux. L'Échap pour annuler de la CLI et l'Auto-Pilot de l'app Mac avec son bouton Stop All répondent à la même question sous deux angles : comment une personne garde-t-elle la main sur une boucle qui tourne toute seule ?

C'est ce qui nous tient le plus à cœur. Pas un avatar mignon, pas un score plus élevé sur un benchmark, mais l'humain dans la boucle : vous fixez l'objectif, vous voyez chaque étape, vous pouvez l'arrêter. Dans la CLI, /undo annule en plus les dernières modifications de fichiers de l'agent. Auto-Pilot ne peut pas être annulé, alors utilisez-le dans un projet suivi par git.

Les obtenir

Les binaires de la CLI pour macOS sont signés et notarisés. Décompressez, placez agentiloop dans votre PATH et lancez-le ; l'assistant de configuration s'occupe du reste.

Les testeurs sont les bienvenus. Essayez /undo après une grosse modification, pointez-la vers un dépôt contenant un AGENTS.md ou branchez --json dans un script, puis dites-nous ce qui a cassé. Indiquez votre OS, votre fournisseur et votre modèle, et n'incluez jamais de clés d'API.