2 releases
new 0.1.3 | May 9, 2025 |
---|---|
0.1.2 | May 9, 2025 |
0.1.1 |
|
#708 in Development tools
31 downloads per month
16KB
63 lines
komitto
使用大模型(OpenRouter,兼容 OpenAI)自动生成专业、规范的 Git Commit Message,提高团队协作效率!
✨ 项目简介
komitto 是一个 Rust 编写的命令行工具,可自动获取 Git 暂存区变更,联动大语言模型(如 ChatGPT,通过 OpenRouter),一键帮你生成符合 Conventional Commits 规范的 commit message,助力代码审查与版本管理更高效、专业。
🚀 主要特性
- ✨ 自动提取
git diff --staged
,智能生成提交说明(支持中文/英文) - 🤖 支持指定多种模型(如 gpt-4, gpt-3.5, Llama 等,只要 OpenRouter 支持)
- 🔒 API 密钥通过环境变量安全管理
- 🛠️ 一行命令轻松集成你的开发流程
- 📜 输出规范的
git commit -m "..."
- ⚡ 跨平台,编译产物小巧,命令行体验极佳
🛠️ 安装指南
1. 准备环境
- 已安装 Rust 开发工具链
- 已注册 OpenRouter 并获取 API Key
2. 克隆项目 & 编译
git clone https://github.com/你的用户名/komitto.git
cd komitto
# 构建 release 版(建议)
cargo build --release
# 若需测试直接运行
cargo run
编译后可执行文件路径为: target/release/komitto
3. 配置 OpenRouter API Key
将 API 密钥写入终端环境(建议加入 .zshrc 或 .bashrc 等文件):
export OPENROUTER_API_KEY=你的apikey
🚦 使用方法
- 小步提交,先添加变更:
git add .
- 运行 komitto 自动生成提交消息:
- 调试时用 cargo 执行:
cargo run
- 或者直接用 release 可执行文件(推荐):
./target/release/komitto
- 调试时用 cargo 执行:
- 查看推荐的 commit message,按需提交:
git commit -m "fix(api): 修复登录异常导致的会话丢失"
⚙️ 可选参数
参数 | 说明 | 示例 |
---|---|---|
--model |
指定大模型(如 gpt-4 , gpt-3.5 ) |
--model gpt-4 |
--lang |
输出语言(如 zh 中文或 en 英文) |
--lang zh |
--yes |
自动用建议直接提交(谨慎使用) | --yes |
--help |
查看命令帮助信息 | --help |
提示 具体参数以你的实现为准,支持
komitto --help
查看即时文档。
⛔ 常见问题
- 没有检测到暂存区 diff?
请先git add
需要提交的文件。 - API Key Invalid?
检查环境变量设置和 Key 是否过期。 - 响应过慢?
网络质量或服务商限流问题,稍后重试。
📦 依赖&兼容性
- Rust 2021+
- 依赖 crates:
clap
、reqwest
、serde_json
等 - 兼容任意支持 OpenRouter 的 LLM 模型
🤝 贡献指南
欢迎社区开发者一起共建!
- fork 并新建分支
- 开发并自测(建议加单测)
- 提交 PR 说明修改点
📄 协议
MIT license ©️ 2024
🙌 鸣谢
特别感谢 OpenRouter、Rust 社区 与所有贡献者!
Dependencies
~8–20MB
~280K SLoC