Butterfish Shell : Un outil innovant pour le travail en ligne de commande
Butterfish Shell est une solution révolutionnaire pour les personnes travaillant depuis la ligne de commande. Il intègre des fonctionnalités d'intelligence artificielle à votre shell (bash ou zsh) en utilisant OpenAI ou des API compatibles.Imaginez un Github Copilot pour votre shell. Lorsque vous utilisez votre shell normalement et que vous commencez une commande avec une lettre majuscule, vous pouvez demander à l'IA des informations contextuelles, par exemple : "Pourquoi cette commande a échoué?".
Une fois que vous avez lancé Butterfish Shell, vous pouvez effectuer diverses actions depuis la ligne de commande. Vous pouvez demander : "Donnez-moi une commande pour faire x", "Pourquoi cette commande a échoué?", "!Exécutez make dans ce répertoire et corrigez les problèmes" (cela agit en tant qu'agent), ou obtenir l'autocomplétion des commandes de shell. Vous pouvez également demander une recette de pâtes (car c'est une interface ChatGPT, pas seulement pour les commandes shell!).
L'installation de Butterfish Shell est possible sur MacOS et Linux. Vous pouvez l'installer via Homebrew sur MacOS ou avec go install. Lors de la première invocation, vous serez invité à coller une clé API OpenAI secrète. Il est également possible de créer un alias pour le commande pour plus de commodité.
Butterfish Shell offre de nombreuses fonctionnalités, telles que l'intégration avec bash et zsh sur MacOS et Linux, l'envoi de prompts ChatGPT en commençant une commande avec une lettre majuscule, la gestion de l'historique de votre shell et des prompts, l'autosuggestion de commandes, la possibilité de personnaliser les prompts, et la sélection de votre propre modèle. Il dispose également d'un mode Objectif (Goal Mode) qui permet à un agent d'exécuter des commandes pour atteindre un objectif.
L'architecture de Butterfish Shell est basée sur le démarrage d'une instance de votre shell, l'interception de l'entrée et de la sortie de la shell, et l'utilisation de l'historique en mémoire pour construire des requêtes à l'API ChatGPT. Les requêtes API tiennent compte des contraintes de taille des données et tentent d'inclure autant d'historique récent que possible.
En général, Butterfish Shell essaie de ne pas interférer avec votre opération de shell normale, mais il modifie par défaut votre invite de shell pour indiquer que vous utilisez Butterfish et pour fournir des informations sur le statut de la dernière commande.
Butterfish Shell est un outil open source sous licence MIT et les contributions externes sont les bienvenues. Il est conçu pour rendre l'utilisateur plus rapide et plus efficace en utilisant les modèles d'intelligence artificielle.