Butterfish Shell 是一款创新的命令行工具,专为那些经常使用命令行界面的用户设计。它通过集成OpenAI(或兼容的API),为传统的shell(如bash、zsh)添加了AI提示功能,类似于Github Copilot,但专为shell环境优化。使用Butterfish Shell,用户可以像平常一样使用命令行,只需在命令前加上大写字母即可触发AI提示。AI能够查看shell的历史记录,因此用户可以提出上下文相关的问题,例如“为什么那个命令失败了?”这种设计提供了一种神奇的UX模式——在用户需要时提供高上下文的AI帮助,无需复制粘贴。
Butterfish Shell 的功能包括但不限于:从命令行请求特定操作的命令、询问命令失败的原因、自动完成shell命令等。此外,由于它本质上是一个ChatGPT接口,用户甚至可以用它来获取食谱等非shell相关的内容。Butterfish 是开源的,采用MIT许可证,欢迎反馈和外部贡献。
安装和认证过程简单明了,支持MacOS和Linux系统。用户可以通过Homebrew在MacOS上安装,或者使用go install命令进行安装。首次运行时,Butterfish会提示用户粘贴OpenAI API的密钥,该密钥将被存储在配置文件中。
Butterfish Shell 的特点包括与bash和zsh的良好集成、通过大写字母开始的命令触发ChatGPT提示、管理shell和提示历史、GPT自动建议、可定制的提示以及选择自己的模型等。此外,Butterfish Shell 还提供了一个称为“目标模式”的功能,允许代理自行执行命令以达到目标。
Butterfish Shell 的架构设计使其在终端中运行时,会启动一个shell实例,并拦截shell的输入和输出。这种设计使得Butterfish能够在不干扰正常shell操作的情况下,提供AI增强功能。