关键要点
- shell-gpt(github.com/TheR1D/shell_gpt),以
sgpt命令运行,是一款免费、开源(MIT许可)的Python命令行工具 - 由TheR1D(Farkhod Sadykov)维护,仓库大约创建于2023年1月18日
- 生成适配操作系统的shell命令、代码片段和聊天回复,执行任何命令前都有明确的确认步骤
- 自带API密钥模式,默认使用OpenAI;Ollama(本地模型)及LiteLLM/Azure也被列为支持的后端
- 截至本评测时,已获得超过12,200个GitHub星标和980多个复刻
- 另有一个无关的Go语言项目同样使用"sgpt"这个名字——本评测仅涵盖TheR1D的Python工具
📍 简单一句话
shell-gpt(sgpt命令)是一款免费、开源(MIT许可)的Python命令行工具,自2023年1月前后由TheR1D维护,能根据自然语言提示生成shell命令和代码,并在执行任何命令前要求明确确认,GitHub星标超过12,200个。
💬 简单来说
shell-gpt是一个小巧的免费命令行程序,能将一个平实的英语请求("找出所有大于1GB的文件")转换成你操作系统上实际的shell命令,并在运行前要求你确认。它不是完整的编码代理或IDE工具,而是一个轻量级的终端助手。你需要提供自己的AI API密钥,通常用于OpenAI,不过也支持通过Ollama使用本地模型。
📌注: 本评测基于shell-gpt自身的GitHub仓库、其README及PyPI包信息。未发现有据可查、可引用的真实事件表明shell-gpt执行过破坏性命令,但未发现事件不等于安全性保证。本评测并不声称PromptQuorum已对shell-gpt进行了实际操作的基准测试。
shell-gpt是什么?
**shell-gpt是一款免费、开源的命令行生产力工具,能从AI模型生成shell命令、代码和聊天回复,以sgpt命令运行。** 它由GitHub用户名为TheR1D的开发者维护(根据PyPI包元数据,即Farkhod Sadykov)。
- 产品类型:一款轻量级Python命令行工具,不是IDE扩展、完整编码代理或自主系统
- 维护者:TheR1D(Farkhod Sadykov)
- 仓库创建时间:约2023年1月18日
- 许可证:MIT,已通过GitHub仓库的许可字段确认
- 规模:截至本评测时,已获得超过12,200个GitHub星标和980多个复刻
shell-gpt实际能做什么?
shell-gpt能直接在你的终端中,将自然语言请求转换为shell命令、代码片段或聊天回复。
- Shell模式(
--shell/-s):为你的请求生成适配操作系统的shell命令,随后在执行任何操作前提示"[E]xecute, [D]escribe, [A]bort" - 代码模式(
--code/-c):仅输出代码,不进行shell执行 - 聊天与REPL模式(
--chat、--repl):与模型进行持续、交互式的对话 - Shell集成:可通过
sgpt --install-integration安装快捷键(默认Ctrl+L),直接将AI生成的命令建议带入你的终端提示符 - 自定义角色:
--create-role可让你定义可复用的自定义角色/指令 - 函数调用:基于OpenAI的function-calling API构建,默认函数可通过
sgpt --install-functions安装,也可本地自定义函数 - 模型后端:默认使用OpenAI;Ollama(本地模型)、LiteLLM和Azure也被列为支持的后端。本评测未能从shell-gpt自身的文档中确认其对Anthropic/Claude的直接原生支持——如果可以访问Claude,也可能是通过LiteLLM代理间接实现,而非官方记录的一级集成
让shell-gpt执行命令安全吗?
shell-gpt自身的README明确警告,LLM"可能执行破坏性命令,因此请自行承担使用风险"("might execute destructive commands, so please use it at your own risk"),并要求你在每个生成的命令运行前进行确认。
- 默认行为:shell模式始终会显示生成的命令并询问"[E]xecute, [D]escribe, [A]bort"——默认情况下不会静默自动运行命令
- 该项目自己的文档中包含关于破坏性命令的明确风险警告,而不是将该工具描述为本质安全
- 本评测未发现有据可查、可引用的真实事件(GitHub issue、博客文章或新闻报道)表明shell-gpt实际执行过破坏性操作——但未发现事件不等于安全性保证,尤其是用户可能会围绕该工具配置自动化流程,从而跳过手动确认
- 与任何能生成并执行shell命令的工具一样,请将确认步骤视为需要仔细阅读的安全防线,而不是随手点过的形式——即使AI生成的命令"看起来"合理,也仍可能是错误的或出乎意料地具有破坏性
平台、定价与许可
平台
- shell-gpt的官方说明:
- 一款以
sgpt运行的Python命令行工具,可在任何装有Python和pip的操作系统上使用。
费用
- shell-gpt的官方说明:
- 免费且开源。自带API密钥模式——你直接向所选的模型提供商付费。
许可
- shell-gpt的官方说明:
- MIT许可,已通过GitHub仓库的许可元数据确认。
模型后端
- shell-gpt的官方说明:
- 默认使用OpenAI;Ollama、LiteLLM和Azure被记录为支持的后端。项目自身的文档未能确认对Anthropic/Claude的直接原生支持。
由于文档可能在不同版本之间发生变化,在假设某个特定提供商受支持之前,请直接在GitHub仓库中核实当前的后端支持情况。
安装shell-gpt
shell-gpt可通过pip免费安装。
Source | Link |
|---|---|
| GitHub仓库(源代码,MIT许可) | github.com/TheR1D/shell_gpt |
| PyPI包 | pypi.org/project/shell-gpt |
| 安装命令 | pip install shell-gpt |
请确认你安装的是github.com/TheR1D/shell_gpt或shell-gpt这个PyPI包——另有一个无关的Go项目同样使用"sgpt"这个名字。
谁适合使用shell-gpt?
shell-gpt适合那些希望以轻量、低门槛方式获得shell命令和小型代码片段AI帮助,而不想采用完整编码代理的开发者。
shell-gpt不适合哪些场景
shell-gpt不适合自主、多步骤的编码任务,也不适合需要绕过其基于确认的安全检查的工作流程。
- 不是自主编码代理——它生成的是单个命令、代码片段或聊天回复,而不是多文件、多步骤的项目变更
- 未与IDE集成——它是一款独立的终端工具,没有自己的VS Code或JetBrains扩展
- 未确认具有原生Anthropic/Claude支持——在假设开箱即用之前,请核实当前的后端文档
- 不适合涉及潜在破坏性命令的无人值守、非交互式自动化场景——其安全设计依赖于每次都由人工审查"[E]xecute, [D]escribe, [A]bort"提示
- 不是唯一名为"sgpt"的工具——另有一个无关的Go项目共用这个名字;请确认你正在使用并了解的是TheR1D的Python工具
评估shell-gpt时的常见误区
关于shell-gpt的大多数困惑,来自将它与同名但无关的工具混淆,或期望它具备其并不具备的代理式能力。
竞品与替代方案
shell-gpt最常与aichat和tgpt相提并论,此外还有普通的ChatGPT/Claude CLI封装工具以及GitHub Copilot CLI。
Tool | Best known for | Link |
|---|---|---|
| tgpt | 终端AI聊天工具,部分后端无需API密钥 | terminaltrove.com/tgpt |
| aichat | 支持20多种模型后端的终端AI工具 | aichat(详情见PromptQuorum目录) |
| GitHub Copilot CLI | GitHub自家的终端AI命令助手 | github.com/features/copilot |
| Aider | 终端原生、以git为中心的完整AI结对编程工具 | Aider评测 |
此列表反映的是常与shell-gpt比较的工具,并非PromptQuorum的独立排名——在选择前,请核实每款工具当前的功能和安全模型。
常见问题
shell-gpt(sgpt)是什么?
shell-gpt(github.com/TheR1D/shell_gpt),以sgpt命令运行,是一款免费、开源(MIT许可)的Python命令行工具,用于从AI模型生成shell命令、代码和聊天回复。
shell-gpt使用安全吗?
在执行任何生成的命令前,它都需要明确的"[E]xecute, [D]escribe, [A]bort"确认,其官方README也警告LLM可能会生成破坏性命令。本评测未发现有据可查的实际破坏性事件,但这并非安全性保证——确认前请仔细阅读每一条生成的命令。
shell-gpt是免费的吗?
是的,shell-gpt本身免费且开源。它采用自带API密钥模式,默认使用OpenAI,因此你需要直接向所选的模型提供商付费。
shell-gpt支持本地模型吗?
是的,根据其官方文档,支持Ollama(本地模型),同时也支持LiteLLM和Azure。本评测未能确认其对Anthropic/Claude的直接原生支持。
如何安装shell-gpt?
运行pip install shell-gpt。由于另有一个无关的Go项目同样使用"sgpt"这个名字,请确认你安装的是正确的PyPI包和GitHub仓库(github.com/TheR1D/shell_gpt)。
shell-gpt由谁维护?
一位以GitHub用户名TheR1D著称的开发者(根据PyPI元数据,即Farkhod Sadykov),项目大约始于2023年1月。
shell-gpt能像Aider或Cline那样编辑多个文件吗?
不能,shell-gpt生成的是单个命令、代码片段或聊天回复。对于多文件、代理式的编码任务,请考虑Aider、Cline或OpenHands。
Shell集成快捷键功能是什么?
运行sgpt --install-integration会设置一个快捷键(默认Ctrl+L),将AI生成的命令建议直接带入你的终端提示行。
GitHub上的"sgpt"和tbckr/sgpt是同一个吗?
不是,github.com/tbckr/sgpt是一个无关的Go语言重新实现项目。本评测仅涵盖TheR1D的原始Python项目。
PromptQuorum是否独立测试过shell-gpt的说法?
本评测基于shell-gpt自身的GitHub仓库、其README以及PyPI包信息,而非PromptQuorum实际操作的基准测试。
