- 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) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。