一个命令行工具,基于你选择的 AI 模型,根据暂存的代码改动自动生成 git 提交信息。
guanguans/ai-commit
一个命令行工具,基于暂存的代码差异,调用 AI 模型自动生成约定式 git 提交信息并完成提交。
- Star
- 393
- Fork
- 22
- 未关闭 Issue
- 0
- 最近提交
- 4天前
这是什么?
ai-commit 是一个 PHP 命令行工具,读取 git diff 后交给 AI 生成器,输出包含类型、主题和正文的约定式提交信息。提交前可以审阅和修改消息,也可以使用 dry-run 模式只生成不提交。
它支持多种后端,包括 OpenAI、OpenAI Chat、Moonshot、文心一言(ERNIE Bot)、Bito CLI、GitHub Copilot CLI 和 GitHub Models CLI。默认生成器与 API 密钥通过 config 命令配置,并提供 list、self-update 等子命令。
可以从仓库下载单个 ai-commit 可执行文件,也可以通过 Composer 安装,运行环境需要 PHP 8.2 及以上版本。
核心功能
- 01根据 git diff 内容生成约定式提交信息。
- 02提交前可选择提交类型并审阅、确认消息。
- 03支持 OpenAI、Moonshot、文心一言等多种 AI 后端。
- 04提供 dry-run 模式,仅输出生成的消息而不提交。
- 05可下载单文件直接使用,也可通过 Composer 安装。
适用场景
- 在遵循 Conventional Commits 规范的项目中保持提交信息格式统一。
- 变更较多、手动撰写摘要比较费时时,加快提交速度。
- 复用已有的 GitHub Copilot 或 Bito CLI 环境来生成提交信息。
快速上手
- 1
通过 Composer 全局安装(需要 PHP 8.2 或更高版本)
composer global require guanguans/ai-commit --dev -v - 2
设置 AI 生成器的 API 密钥(示例使用 OpenAI Chat)
ai-commit config set generators.openai_chat.api_key sk-... --global - 3
暂存更改后,生成并提交提交信息
ai-commit commit
使用前须知
- 需要 PHP 8.2 或更高版本。
- 大多数生成器需要 API 密钥或单独安装的 CLI 工具。
收录于专题
标签
常见问题
- ai-commit 是什么?
- 一个命令行工具,基于暂存的代码差异,调用 AI 模型自动生成约定式 git 提交信息并完成提交。 ai-commit 是一个 PHP 命令行工具,读取 git diff 后交给 AI 生成器,输出包含类型、主题和正文的约定式提交信息。提交前可以审阅和修改消息,也可以使用 dry-run 模式只生成不提交。
- ai-commit 可以免费使用吗?用的什么许可证?
- ai-commit 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- ai-commit 还在维护吗?
- 活跃维护中。ai-commit 最近一次提交是在 2026年11月3日。
- ai-commit 适合用来做什么?
- 在遵循 Conventional Commits 规范的项目中保持提交信息格式统一。 变更较多、手动撰写摘要比较费时时,加快提交速度。 复用已有的 GitHub Copilot 或 Bito CLI 环境来生成提交信息。
- ai-commit 怎么安装和运行?
- 通过 Composer 全局安装(需要 PHP 8.2 或更高版本): composer global require guanguans/ai-commit --dev -v 设置 AI 生成器的 API 密钥(示例使用 OpenAI Chat): ai-commit config set generators.openai_chat.api_key sk-... --global 暂存更改后,生成并提交提交信息: ai-commit commit
- 在哪里获取 ai-commit?
- 源代码和安装说明在 GitHub 上:https://github.com/guanguans/ai-commit
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个 TypeScript 命令行工具,通过交互式提示生成符合 Conventional Commits 规范的提交信息。
一个用 Rust 编写的命令行工具,基于 Git 提交历史和 Conventional Commits 规范生成更新日志。
一个 git prepare-commit-msg 钩子,利用 OpenAI 模型根据暂存的改动自动生成提交信息。
一个用 Go 编写的命令行工具,借助大模型生成 git 提交信息和代码审查摘要,并可自动安装 prepare-commit-msg 钩子。
一款 JetBrains IDE 插件,基于代码差异,借助可配置的大模型自动生成 Git 提交信息。