テキスト生成、構造化データ、会話に対応する、複数のAIプロバイダーAPIを統一されたシンプルなインターフェースで利用できるPythonクライアントライブラリ。
tbckr/sgpt
OpenAI互換LLMにターミナルから問い合わせ、シェルコマンドやコード、画像を生成できるGo製CLIツール。
- スター
- 461
- フォーク
- 34
- 未解決の Issue
- 3
- 最終コミット
- 4 日前
これは何?
SGPT(shell-gptとも呼ばれます)は、OpenAIのモデルを利用するコマンドラインクライアントです。ターミナルを離れずに質問を送ったり、シェルコマンドやコードを生成したり、チャットを続けたりできます。クエリは引数として渡すほか、stdinからパイプで入力でき、生成中のレスポンスをストリーミング表示することもできます。
通常の質問に加え、シェルコマンド用のshやコード生成用のcodeといったペルソナを利用できます。また、生成されたコマンドを確認後に直接実行するオプションもあります。画像対応モデルへの画像入力、名前付きチャットセッション、YAMLまたはJSONのデータを使ったGo text/templateによるプロンプトのテンプレート化にも対応しています。Bashのエイリアスや関数で、日々の作業に組み込むこともできます。
SGPTはOpenAI APIとOpenAI互換のエンドポイントに対応しており、OpenRouter、Requesty、Google Geminiの互換レイヤーのほか、Ollama、LiteLLM、vLLM、llama.cppなどのローカルバックエンドも利用できます。接続先はOPENAI_API_BASE変数で指定します。Homebrew、Scoop、Go install、Docker、GitHub Releasesからインストールできます。
主な機能
- 01引数またはパイプで渡したstdinから単発のクエリを送り、必要に応じて出力をストリーミング表示する。
- 02shペルソナでシェルコマンドを生成し、確認後に実行することもできる。
- 03codeペルソナでコードスニペットを生成する。
- 04画像対応モデルにローカル画像またはURLの画像を添付する。
- 05--chatで名前付きの複数ターンのチャットセッションを続ける。
- 06stdinから渡したYAMLまたはJSONデータで埋めるGo text/templateのプロンプトを使う。
ユースケース
- ブラウザを開かずに、ちょっとした質問の答えやコマンドの構文を調べる。
- 自然言語で書いた作業内容をシェルのワンライナーに変換し、実行する。
- ターミナルから、慣れていない言語のコードスニペットを作成する。
- Bashのエイリアスや関数、テンプレートを使って、繰り返し使うプロンプトをスクリプト化する。
クイックスタート
- 1
Homebrewでインストール(macOS)
brew install tbckr/tap/sgpt - 2
またはGoでインストール
go install github.com/tbckr/sgpt/v2/cmd/sgpt@latest - 3
シェルのプロファイルにOpenAI APIキーを設定
- 4
質問する
sgpt "mass of sun"
使う前に知っておきたいこと
- 利用するにはOpenAI互換のAPIキーが必要です。
- READMEによると、GPT-4oとVision APIの連携はベータ版であり、変更される可能性があります。
- Goによる実装です。元のPython版shell-gptに関するIssueは、別の場所に報告してください。
収録されている特集
トピック
よくある質問
- sgpt とは?
- OpenAI互換LLMにターミナルから問い合わせ、シェルコマンドやコード、画像を生成できるGo製CLIツール。 SGPT(shell-gptとも呼ばれます)は、OpenAIのモデルを利用するコマンドラインクライアントです。ターミナルを離れずに質問を送ったり、シェルコマンドやコードを生成したり、チャットを続けたりできます。クエリは引数として渡すほか、stdinからパイプで入力でき、生成中のレスポンスをストリーミング表示することもできます。
- sgpt は無料で使えますか?ライセンスは?
- sgpt は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- sgpt は今もメンテナンスされていますか?
- 活発にメンテナンス中。sgpt の最終コミットは 2026年11月3日 です。
- sgpt は何に使えますか?
- ブラウザを開かずに、ちょっとした質問の答えやコマンドの構文を調べる。 自然言語で書いた作業内容をシェルのワンライナーに変換し、実行する。 ターミナルから、慣れていない言語のコードスニペットを作成する。 Bashのエイリアスや関数、テンプレートを使って、繰り返し使うプロンプトをスクリプト化する。
- sgpt のインストール方法は?
- Homebrewでインストール(macOS): brew install tbckr/tap/sgpt またはGoでインストール: go install github.com/tbckr/sgpt/v2/cmd/sgpt@latest シェルのプロファイルにOpenAI APIキーを設定 質問する: sgpt "mass of sun"
- sgpt はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/tbckr/sgpt
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
チャット補完、ツール呼び出し、プロンプトチェーン、構造化出力を使って、Rubyアプリに個別のLLM機能を追加できるライブラリ。
VimとNeovim向けのAIコードアシスタントプラグイン。エディタ内でOpenAI互換モデルによる生成・編集・チャットができます。
関数名、引数、コンテキストをもとに、実行時にLLMで関数の実装を生成するOpenAI対応のPythonライブラリです。