Skip to main content
PromptQuorum
主页/本地LLM进阶/shell-gpt(sgpt)评测:一键生成AI shell命令
Coding Assistants

shell-gpt(sgpt)评测:一键生成AI shell命令

·阅读约8分钟·Hans Kuepper 作者 · PromptQuorum创始人,多模型AI调度工具 · PromptQuorum

**shell-gpt(以sgpt命令运行)是一款免费、开源的Python命令行工具,可直接在终端中从AI模型生成shell命令、代码和聊天回复,在执行任何生成的命令前都有"[E]xecute, [D]escribe, [A]bort"(执行/描述/中止)确认步骤。** 它不是IDE扩展或自主编码代理——而是一款轻量级的终端生产力工具,需自带API密钥(bring-your-own-API-key),默认使用OpenAI。

shell-gpt(github.com/TheR1D/shell_gpt)通常以sgpt命令运行,是一款免费、开源的Python命令行工具,用于生成并可选执行shell命令、编写代码片段,以及直接在终端中与AI模型对话。它由化名为TheR1D的维护者开发,已获得超过12,200个GitHub星标。本评测介绍它的功能、内置的安全确认步骤,以及它与更完整的编码代理相比处于什么位置。

shell-gpt(sgpt)评测:一键生成AI shell命令

关键要点

  • 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适合那些希望以轻量、低门槛方式获得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 CLIGitHub自家的终端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实际操作的基准测试。

Sources

← 返回 本地LLM进阶