首页 > 常用工具 > shell_gpt

  • 更新时间 2025-01-06

ShellGPT:一款基于人工智能的命令行生产力工具

ShellGPT 是一个由大型语言模型(LLM)驱动的命令行生产力工具。它能够简化 shell 命令、代码片段和文档的生成过程,无需依赖外部资源(如 Google 搜索)。该工具支持 Linux、macOS 和 Windows 系统,并兼容所有主要的 Shell,如 PowerShell、CMD、Bash 和 Zsh 等。

安装和配置

用户可以通过 pip 安装 ShellGPT:

pip install shell-gpt

默认情况下,ShellGPT 使用 OpenAI 的 API 和 GPT-4 模型。用户需要一个 API 密钥,可以在 OpenAI 的网站上生成。首次使用时,系统会提示输入密钥,并将其存储在 ~/.config/shell_gpt/.sgptrc 文件中。

值得注意的是,用户也可以选择使用本地托管的开源模型,这些模型是免费的。要使用本地模型,需要运行自己的 LLM 后端服务器,如 Ollama。

基本用法

ShellGPT 设计用于快速分析和检索信息。它适用于从技术配置到一般知识的直接请求。例如:

sgpt "What is the fibonacci sequence"

ShellGPT 接受来自标准输入和命令行参数的提示。用户可以通过管道传输输入或直接将其指定为参数。例如,可以轻松地根据 git diff 生成提交信息:

git diff | sgpt "Generate git commit message, for my changes"

Shell 命令生成

通过使用 --shell 或 -s 选项,用户可以快速生成并执行所需的 shell 命令。例如:

sgpt --shell "find all json files in current folder"

ShellGPT 会根据用户的操作系统和使用的 shell 提供特定的命令。

代码生成

使用 --code 或 -c 参数,用户可以专门请求纯代码输出。例如:

sgpt --code "solve fizz buzz problem using python"

聊天模式

ShellGPT 提供了聊天模式,允许用户保持对话的连续性。使用 --chat 选项followed by a unique session name可以启动一个对话:

sgpt --chat conversation_1 "please remember my favorite number: 4"sgpt --chat conversation_1 "what would be my favorite number + 4?"

REPL 模式

REPL(读取-求值-打印循环)模式允许用户与 GPT 模型进行交互式对话。使用 --repl 选项可以启动 REPL 会话:

sgpt --repl temp

函数调用

ShellGPT 支持函数调用,这是 OpenAI 提供的一个强大功能。用户可以定义自己的函数并让 LLM 执行它们,以完成各种任务。

角色定制

用户可以创建自定义角色,用于生成代码、shell 命令或满足特定需求。使用 --create-role 选项可以创建新角色。

请求缓存

ShellGPT 提供了请求缓存功能,可以通过 --cache(默认)和 --no-cache 选项进行控制。

结语

ShellGPT 是一个功能强大的命令行工具,它利用人工智能技术简化了许多日常任务。无论是生成 shell 命令、编写代码还是进行对话式交互,ShellGPT 都能为用户提供有价值的帮助。随着持续的开发和社区贡献,ShellGPT 有望成为开发者和系统管理员的得力助手。

copyright © 2025

//www.aipic.cc/ 版权所有