写 Git 提交信息是每个开发者每天重复几十次的小事,但也是最容易被敷衍的:一行 “fix bug” 或 “update” 既不利于回溯,也让同事看不懂你到底改了什么。团队想规范提交格式(如 Conventional Commits),靠人自觉几乎不可能。
另一方面,代码审查的“初稿”同样耗时——把 diff 丢给同事前,自己先过一遍能省很多往返。CodeGPT 这类命令行工具的价值,就是用 LLM 在 commit 钩子里自动生成高质量提交信息,甚至顺手给出审查摘要,把这两件例行公事自动化。

项目基本信息

信息项详情
项目名称CodeGPT
GitHub地址https://github.com/appleboy/CodeGPT
项目描述用 ChatGPT 自动写 Git 提交信息并做代码审查的 Go 命令行
作者appleboy
开源协议MIT License
开源状态公开
LanguagesGo
支持平台Windows / macOS / Linux
最后更新2026-09-29

一、项目介绍

appleboy/CodeGPT 是一个用 Go 写的命令行工具,调用 ChatGPT(支持 gpt-5、gpt-4o、gpt-4 等模型)自动生成 Git 提交信息,或给出代码审查摘要,并会自动安装一个 git prepare-commit-msg 钩子,让提交信息在提交前就被写好。它也支持通过 1Password、AWS Secrets Manager、Google Cloud Secret Manager 等方式安全注入 API Key,避免明文落盘。项目 MIT 协议,跨平台。

二、核心优势

  1. 提交信息自动化:基于暂存区 diff 生成规范、可读的提交信息,并自动挂上 prepare-commit-msg 钩子。
  2. 代码审查摘要:可生成 diff 的审查简报,提交前先自检。
  3. 密钥安全:支持 API Key helper 从密码管理器/云密钥服务动态读取,不必明文写配置。
  4. 多模型:可用 OpenAI、Gemini 等,按需在配置里切换。
  5. 易分发:提供 Homebrew、Chocolatey、install.sh、go install 多种安装方式,跨平台。

三、适用场景

  • 个人或团队规范提交信息,减少 “fix” “update” 这类无意义提交。
  • 在 CI 或个人流程里自动产出代码审查初稿。
  • 多环境(Mac/Windows/Linux)统一一套提交辅助工具。
  • 希望 Key 不落明文的合规场景。

四、安装教程

macOS 用 Homebrew:

brew tap appleboy/tap
brew install codegpt

Windows 用 Chocolatey:

choco install codegpt

或通用安装脚本:

bash < <(curl -sSL https://raw.githubusercontent.com/appleboy/CodeGPT/main/install.sh)

Go 用户也可:

go install github.com/appleboy/CodeGPT/cmd/codegpt@latest

常见报错:go install 后 command not found 是 GOPATH/bin 未入 PATH;install.sh 在受限网络下若 SSL 报错可加 INSECURE=1 跳过校验(仅测试环境)。

五、使用示例

配置密钥后即可让提交信息自动生成(钩子会生效):

codegpt config set openai.api_key sk-xxxxxxx
# 之后正常 git add + git commit 即可,钩子会写入由 AI 生成的信息

用密钥助手避免明文(示例:1Password):

codegpt config set openai.api_key_helper "op read op://vault/openai/api_key"

真实效果:你 git commit 时,prepare-commit-msg 钩子调用模型基于 diff 生成类似 “feat(api): validate payment amount before charge” 的信息,确认即可提交。

六、常见问题

Q:会覆盖我手写的提交信息吗?
A:钩子生成的是默认草稿,你可在编辑器里修改或重写后再提交,不会强制锁定。
Q:支持哪些模型?
A:OpenAI(gpt-5/gpt-4o/gpt-4)与 Gemini 等,通过配置切换。
Q:API Key 怎么才安全?
A:优先用 key_helper 从 1Password、AWS/GCP Secrets Manager 动态读取,避免明文写入配置文件。

七、总结

CodeGPT 把“写提交信息”和“出审查初稿”这两件高频小事交给 LLM,并用 Git 钩子无缝接入日常流程。对个人和小团队,它是几乎零成本的提交规范化工具;MIT 协议、多安装方式,值得在开发机上一键装上。