Goose (Block) : l'agent IA local dans votre terminal
Oui : lancez goose configure, choisissez Ollama, laissez http://localhost:11434 par défaut et indiquez un modèle Ollama compatible tool-calling. Deux réglages comptent en local : relever OLLAMA_CONTEXT_LENGTH au-delà des 4096 tokens par défaut, et activer le tool shim (GOOSE_TOOLSHIM=true) si le modèle explique les outils en texte au lieu de les appeler. Goose est désormais un projet de l'Agentic AI Foundation, plus seulement de Block.
Goose est un agent IA en ligne de commande et en application de bureau, initialement publié par Block puis transféré à l'Agentic AI Foundation. Ce guide couvre sa configuration avec un Ollama local, le tool shim qui compense l'absence de tool-calling natif sur certains modèles, les modes de permission (autonome par défaut) et les limites réelles d'un petit modèle local face à ses extensions MCP.
#Ce qu'est Goose aujourd'hui
Goose se présente comme un agent IA natif open source — application de bureau, CLI et API — pour le code, les workflows et au-delà, écrit en Rust. Le dépôt (désormais aaif-goose/goose) compte près de 55 000 étoiles au 28 septembre 2026, avec la version v1.52.0 publiée le 23 septembre 2026.
Fait à corriger si vous avez lu des présentations plus anciennes : Goose n'est plus un projet Block isolé, il fait désormais partie de l'Agentic AI Foundation (AAIF) hébergée par la Linux Foundation. Block reste à l'origine du projet, mais la gouvernance a changé — un détail qui compte pour évaluer la pérennité du projet avant de bâtir un workflow dessus.
Goose fonctionne avec plus de 15 fournisseurs de modèles (Anthropic, OpenAI, Google, Ollama, OpenRouter, Azure, Bedrock, et d'autres) et se connecte à plus de 70 extensions via le protocole ouvert MCP (Model Context Protocol).
Il existe aussi une passerelle vers Ramalama, un moteur local qui sert des modèles au format d'artefacts OCI plutôt qu'avec le format propriétaire d'Ollama. Son API étant compatible, Goose peut l'utiliser directement via son fournisseur Ollama, sans code spécifique — une option utile sur des infrastructures déjà construites autour d'outils de conteneurisation standard (Podman, Docker) plutôt qu'autour d'Ollama.
#Connecter Ollama
Ce guide t'amène au modèle. Le kit t'amène au copilote qui code dans ton éditeur.
- Espace en ligne à vie
- PDF + fichiers
- Remboursé 30 j
La configuration passe par l'assistant interactif goose configure, qui demande le fournisseur puis l'hôte. Pour Ollama, si aucun hôte n'est renseigné, Goose utilise localhost:11434 par défaut ; le préfixe http:// est ajouté automatiquement si le schéma n'est pas précisé.
Pour un Ollama qui tourne sur une autre machine du réseau, il faut définir explicitement OLLAMA_HOST=http://{hôte}:{port} avant de lancer la configuration. Pour des modèles hébergés sur ollama.com plutôt qu'en local, le fournisseur à choisir est Ollama Cloud, pas Ollama.
#Le piège du contexte à 4096 tokens
Le défaut d'Ollama pour la fenêtre de contexte est 4096 tokens, et il tronque silencieusement plutôt que de renvoyer une erreur explicite. Sur un agent comme Goose qui charge des instructions de projet (.goosehints), l'historique de conversation et les définitions d'extensions, ce plafond est vite atteint.
#Tool shim : réparer l'appel d'outils
Certains modèles n'ont pas de support natif de l'appel d'outils, ou basculent en cours de session vers une sortie en texte brut au lieu d'un appel structuré. Le tool shim de Goose détecte ces formats textuels et les convertit en appels d'outils exécutables. C'est une fonctionnalité marquée expérimentale par le projet.
Le tool shim s'appuie sur un modèle interprète séparé du modèle de conversation principal — mistral-nemo par défaut via Ollama, remplaçable par GOOSE_TOOLSHIM_OLLAMA_MODEL. La documentation cite explicitement les modèles locaux (Ollama, llama.cpp) sans tool-calling natif comme cas d'usage principal, ainsi que les modèles qui mélangent des balises de raisonnement (« think ») avec les appels d'outils, source fréquente d'échecs de parsing.
Un mode alternatif utilise le backend d'inférence local intégré de Goose au lieu d'une instance Ollama séparée, via GOOSE_TOOLSHIM_BACKEND=local et un nom de modèle obligatoire (GOOSE_TOOLSHIM_MODEL) — sans quoi le démarrage échoue.
#Modes de permission : autonome par défaut
Goose propose quatre modes de permission : complètement autonome (modifie et supprime des fichiers sans confirmation), approbation manuelle (demande confirmation pour chaque outil), approbation intelligente (approuve automatiquement les actions à faible risque) et mode conversation seule (aucune modification, aucun outil).
Le changement de mode se fait à tout moment, y compris en cours de session, via /mode auto, /mode smart_approve, /mode approve ou /mode chat en CLI, ou depuis le menu du bas dans l'application de bureau.
#Extensions MCP et allowlist
Goose se connecte à des extensions via le protocole MCP, et installe par défaut n'importe quel serveur MCP demandé. Pour un contexte professionnel, le projet propose une allowlist : un fichier YAML hébergé sur une URL, référencé par la variable GOOSE_ALLOWLIST, qui limite les extensions installables à une liste explicite d'identifiants et de commandes.
Sans cette allowlist, rien n'empêche techniquement l'agent d'installer un serveur MCP tiers non vérifié si l'utilisateur (ou le modèle, en mode autonome) en fait la demande — un point à considérer conjointement avec le choix du mode de permission ci-dessus.
L'allowlist se déploie comme un simple fichier YAML listant des couples identifiant/commande autorisés, hébergé à une URL que Goose relit à chaque redémarrage via la variable GOOSE_ALLOWLIST. C'est une mesure pensée pour un déploiement en entreprise, où un administrateur veut restreindre les extensions installables à une liste validée à l'avance plutôt que de faire confiance au jugement de chaque utilisateur ou du modèle en mode autonome.
- 01Installer la CLI Goosecurl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash, ou télécharger l'application de bureau depuis la documentation officielle.
- 02Préparer le modèle OllamaVérifier qu'Ollama tourne sur le port 11434 et lancer un modèle explicitement annoncé compatible tool-calling avant de configurer Goose.
- 03Lancer goose configureChoisir Ollama comme fournisseur, valider l'hôte proposé par défaut (localhost:11434) et indiquer le nom exact du modèle chargé.
- 04Relever le contexte si nécessaireSi l'agent ignore des extensions ou un fichier .goosehints, définir OLLAMA_CONTEXT_LENGTH à une valeur supérieure à 4096 avant de relancer une session.
- 05Vérifier le mode de permissionAvant la première session avec des extensions sensibles, passer explicitement en mode approbation manuelle ou intelligente si le mode autonome par défaut n'est pas souhaité.
#Limites d'un modèle local pour Goose
| Symptôme | Cause probable documentée |
|---|---|
| Extensions ignorées, .goosehints non suivi | Contexte par défaut à 4096 tokens trop court : relever OLLAMA_CONTEXT_LENGTH |
| Appels d'outils qui s'arrêtent en cours de session | Le modèle bascule vers une sortie texte : activer GOOSE_TOOLSHIM |
| Interprète du tool shim lent | Modèle interprète trop lourd : passer à un modèle plus petit via GOOSE_TOOLSHIM_OLLAMA_MODEL |
| Raisonnement mélangé aux appels d'outils | Balises « think » parasites : le tool shim les filtre automatiquement une fois activé |
Le natif DeepSeek-R1 ne prend pas en charge l'appel d'outils selon la documentation officielle, qui propose en alternative une version communautaire adaptée pour Goose — un exemple concret de l'écart entre un modèle réputé puissant en conversation et sa capacité réelle à piloter des outils.
Ce décalage entre puissance de raisonnement et fiabilité d'exécution est la limite structurelle à retenir avant d'installer Goose en local : un modèle qui répond bien à des questions ouvertes ne garantit rien sur sa capacité à enchaîner des appels d'outils sans erreur de format. Tester d'abord une tâche simple et vérifiable — lire un fichier, exécuter une commande anodine — avant de confier à l'agent une tâche à plusieurs étapes reste le moyen le plus rapide de repérer un modèle mal adapté.
- OpenCode + Ollama : un agent de code dans votre terminal
- Cline + Ollama : agent de code 100 % local dans VS Code
- MCP : c'est quoi ? Le Model Context Protocol expliqué
- Source : README officiel du dépôt Goose
- Source : documentation officielle des fournisseurs
- Source : documentation officielle du tool shim
Goose est-il toujours développé par Block ?+
Pourquoi Goose ignore-t-il mes extensions ou mon fichier .goosehints avec Ollama ?+
Que faire si mon modèle local n'appelle pas les outils dans Goose ?+
Goose peut-il supprimer des fichiers sans demander confirmation ?+
Faut-il un GPU puissant pour faire tourner Goose en local ?+
Un retour, une erreur, une précision ? Faites-nous signe, ça améliore le guide pour tout le monde.