- aicommit 介绍:
aicommit
是一个用于生成提交消息的小型命令行工具,市面上已有很多此类工具,且有同名的。但它能遵循仓库现有的风格,在已建立的代码库中工作时很有用。好的提交消息不仅是代码更改的总结,还包含意图、上下文和外部引用,帮助他人理解更改,所以aicommit
有-c
/--context
标志可快速添加细节。它受@sreya启发。 安装方式:
- 通过 Homebrew:
brew install aicommit
。 - 使用 Go:
go install github.com/coder/aicommit/cmd/aicommit@main
。 - 从最新发布下载二进制文件。
- 通过 Homebrew:
使用方法:
- 无参数运行可生成暂存更改的提交消息,如
export OPENAI_API_KEY="..." ; aicommit
。 - 使用
-a
/--amend
标志可“重试”提交消息,如aicommit -a
。 - 使用
-d
/--dry
可进行试运行以查看理想消息而不提交,如aicommit -d
。 - 可指向特定引用,如
aicommit HEAD~3
。 - 可提供上下文给 AI 以生成更好的提交消息,如
aicommit -c "closes #123"
等。 - 厌倦设置环境变量时,可将密钥保存到磁盘,如
export OPENAI_API_KEY="..." ; aicommit --save-key
,环境变量将覆盖保存的密钥。
- 无参数运行可生成暂存更改的提交消息,如
- 风格指南:
aicommit
会读取仓库根目录下的COMMITS.md
文件来确定风格指南,这是可选的,若存在即使与常规规则不同也会遵循。若没有仓库风格指南,会在~/COMMITS.md
中查找用户风格指南。 - 其他提供方:可设置
OPENAI_BASE_URL
使用其他 OpenAI 兼容 API 与aicommit
配合,已在LiteLLM上测试过本地模型(通过 ollama)和 Anthropic,本地模型在提示设计方面效果不佳,而 Anthropic Claude 3.5 的提交消息与 4o 相当,推测是本地模型(包括“指令”模型)的指令微调比旗舰商业模型差很多。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。