appleboy/CodeGPT
A CLI written in Go language that writes git commit messages or do a code review brief for you using ChatGPT AI (gpt-4.1, gpt-4o model) and automatically installs a git prepare-commit-msg hook.
CodeGPT とは?
CodeGPT は Go 言語で作られたコマンドラインツールであり、大規模言語モデル API(OpenAI、Azure OpenAI、Gemini、Anthropic、Ollama、Groq、OpenRouter)と連携して、開発者が日常的に行う Git の2つのタスクを支援します。
- コミットメッセージの生成 – ステージングされた変更の
git diffを読み取り、選択した LLM に送信し、Conventional Commits 形式に従ったコミットメッセージを返します。このツールはprepare-commit-msgGit フックをインストールすることもでき、git commitを実行するたびに AI 生成されたメッセージが自動的に挿入されます。 - コードレビューの要約 – プルリクエスト形式の短い変更内容のレビューを生成できます。
両方の機能はストリーミング出力(トークンが生成されるたびに表示)、言語翻訳(英語、繁体中国語、簡体中国語、日本語)、カスタムプロンプトテンプレートをサポートしています。
どうやって入手する?
- macOS –
brew tap appleboy/tap && brew install codegpt - Windows –
choco install codegpt - 任意のOS – 提供されたインストールスクリプトを実行するか、GitHub リリースページから事前にコンパイルされたバイナリをダウンロード。
- ソースから –
go install github.com/appleboy/CodeGPT/cmd/codegpt@latest - VS Code devcontainer –
devcontainer.jsonにghcr.io/kvokka/features/codegpt機能を追加。
どうやって動作する?
- 設定 – 環境変数、
.codegpt.yamlファイル、または組み込みの APIキー補助 機能を通じて API キー(または動的に取得するコマンド)を提供します。設定ファイルは$HOME/.config/codegpt/に配置され、以下を設定できます:- プロバイダー(
openai,azure,gemini,anthropic,ollama,groq,openrouter) - ベースURL、モデル名、温度、最大トークン数、プロキシ設定など。
- Git 固有のオプション(差分に含めるコンテキスト行数、除外するファイルなど)。
- プロバイダー(
- CLI の実行 –
codegpt commit(またはcodegpt review)は差分を読み取り、選択したテンプレートからプロンプトを構築し、LLM エンドポイントを呼び出して結果を出力します。--streamフラグを指定すると、トークン単位で応答が表示されます。 - Git フック –
codegpt hook installはprepare-commit-msgスクリプトを書き込み、CLI を自動的に呼び出すようにします。これにより、すべてのgit commitが AI 生成されたメッセージで自動的に埋められます。
誰が役立つ?
- 手動で書くことなく、一貫性のある conventional commit メッセージを望む開発者。
- プルリクエストの説明や社内レビュー用に、迅速かつ読みやすいコード変更の要約が必要なチーム。
- 複数の LLM プロバイダーを扱う人(例:コンプライアンスのために Azure OpenAI を好む、または Ollama でローカルで実行したい)— CodeGPT は単一の CLI を通じてプロバイダーを抽象化しています。
限界は?
- これは クライアント にすぎません。生成されたテキストの品質は、使用している下位モデルに完全に依存します。
- インターネット接続(またはローカルの Ollama サーバー)と、選択したプロバイダー用の有効な API キーが必要です。
- 静的解析や linting を行いません。差分をモデルに単に転送するだけです。
- Git フックは AI 生成テキストをそのまま挿入します。コミットを確定する前にメッセージを確認する必要があります。
クイックスタート例
# インストール(macOS の例)
brew tap appleboy/tap && brew install codegpt
# OpenAI キーをエクスポート(または `codegpt config set` で設定)
export OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxx
# ステージングされた変更のためのコミットメッセージを生成
codegpt commit
# またはフックをインストールして `git commit` が自動的に実行されるようにする
codegpt hook install
詳細情報はどこで?
- リポジトリの README には、詳細なインストール手順、すべての設定オプションのリスト、各サポートプロバイダーの例が含まれています。
- ビデオウォークスルー(中国語) – https://www.youtube.com/watch?v=4Yei_t6eMZU
- 概念を説明するブログ記事 – https://blog.wu-boy.com/2023/03/writes-git-commit-messages-using-chatgpt/
上記のすべての情報はプロジェクトの README から直接取得されています;追加の機能は推測されていません。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト