Skip to main content

AI Commit Message Generator

基于AI的Git提交信息生成工具,帮助开发者自动生成专业、规范的提交信息。

✨ 功能特性

  • 🤖 智能分析:理解代码变更的意图和上下文
  • 📝 多种格式:支持Conventional Commits、中文、emoji风格等多种格式
  • 🔄 批量处理:一次生成多个提交信息
  • 🎯 历史学习:基于项目历史优化生成结果
  • 🎨 自定义模板:支持团队规范和个性化配置
  • 🌐 多平台:命令行、VS Code扩展、Web界面、API接口

🚀 快速开始

安装

# 从PyPI安装
pip install ai-commit-helper

# 或从源码安装
git clone https://github.com/fscyc/ai-commit-helper.git
cd ai-commit-helper
pip install -e .

基本使用

# 生成当前暂存区的提交信息
aicommit

# 生成指定文件的提交信息
aicommit --file path/to/file.py

# 使用中文格式
aicommit --format zh

# 使用emoji风格
aicommit --format emoji

# 批量生成多个提交信息
aicommit --batch 5

VS Code扩展

  1. 在VS Code扩展商店搜索 "AI Commit Helper"
  2. 点击安装
  3. 在Git面板中,点击 "Generate Commit Message" 按钮

Web界面

访问:https://ai-commit-helper.fscyc.github.io

🛠️ 开发

项目结构

ai-commit-helper/
├── src/                    # 核心Python代码
├── web/                    # Web界面代码
├── vscode-extension/       # VS Code扩展
├── tests/                  # 单元测试和集成测试
├── docs/                   # 文档
├── examples/               # 使用示例
├── configs/                # 配置文件
└── scripts/                # 构建和部署脚本

环境设置

# 克隆仓库
git clone https://github.com/fscyc/ai-commit-helper.git
cd ai-commit-helper

# 创建虚拟环境
python -m venv venv
source venv/bin/activate  # Linux/Mac
# 或
venv\Scripts\activate     # Windows

# 安装开发依赖
pip install -r requirements-dev.txt

运行测试

pytest tests/

🔧 配置

创建配置文件 ~/.aicommit/config.yaml:

# DeepSeek API配置
deepseek:
  api_key: "your-api-key"
  model: "deepseek-chat"
  base_url: "https://api.deepseek.com"

# 生成选项
generation:
  default_format: "conventional"
  max_length: 100
  temperature: 0.7
  include_emoji: true

# 模板配置
templates:
  conventional: |
    {{type}}({{scope}}): {{description}}
    
    {{body}}
    
    {{footer}}
  zh: |
    {{type}}({{scope}}): {{description}}
    
    {{body}}

📖 API文档

Python API

from ai_commit_helper import generate_commit_message

# 生成提交信息
result = generate_commit_message(
    code_diff="...git diff output...",
    format="conventional",
    history=None
)
print(result.message)

REST API

启动本地服务器:

aicommit serve --port 8000

API端点:

  • POST /generate - 生成提交信息
  • GET /formats - 获取支持的格式列表
  • POST /batch - 批量生成

🤝 贡献

欢迎贡献代码、报告问题或提出建议!

  1. Fork 项目
  2. 创建功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m 'Add some amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

💖 赞助

如果这个工具对你有帮助,请考虑赞助支持:

GitHub Sponsors

📞 联系

Metadata

Release files for ai-commit-helper 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ai-commit-helper 0.1.0
File Size Uploaded Provenance
ai_commit_helper-0.1.0.tar.gz 20.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ai-commit-helper 0.1.0
File Interpreter ABI Platform
ai_commit_helper-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 39.7 kB

Release files / ai_commit_helper-0.1.0.tar.gz

Download URL ai_commit_helper-0.1.0.tar.gz
Size 20.7 kB
Tags Source
SHA-256 checksum
How to use checksums
ce8d1a02a1f998dd68ec078b061b5c15a238b5c53207d52293b023c9208acfc8
BLAKE2b-256 checksum
How to use checksums
c8ca894a134bd486431f43db21c65c259c0222235c7e1c03cf50bf03a526e9f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Release files / ai_commit_helper-0.1.0-py3-none-any.whl

Download URL ai_commit_helper-0.1.0-py3-none-any.whl
Size 19.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b30f386e4ab4e254e4b411674a954893629e359d5752408a8d8ec7d527ac99c9
BLAKE2b-256 checksum
How to use checksums
bb30665e42e6cc735420a43b88476f5cf69f0b4e0a6afa45715d378031a8594d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.4

Security for ai-commit-helper 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page