使用Skonsole自动生成Git提交信息
使用Skonsole自动生成Git提交信息
随着LLM应用的普及,日常工作中的很多使用都可以使用LLM来完成,比如Git提交信息的生成。
Skonsole是一个基于Semantic Kernel的命令行小工具,集成了Git提交信息生成、PR内容生成、PR评审等功能。
其作者Lee Miller也是Semantic Kernel的主要开发者。
准备
- 首先确保本机安装了 .NET 7 SDK 或者更高版本。
- 该工具使用 Azure OpenAI 服务,确保已经有 Azure OpenAI 的 Endpoint 和 Key。
安装
可以使用dotnet tool 进行安装:
dotnet tool install -g skonsole
安装完成之后,可以使用如下指令进行验证是否安装成功:
skonsole --version
配置
安装完成之后,可以通过以下指令进行配置:
skonsole config
目前的配置项包括:
- AZURE_OPENAI_CHAT_DEPLOYMENT_NAME
- AZURE_OPENAI_API_ENDPOINT
- AZURE_OPENAI_API_KEY
可以根据配置指令提示进行配置,也可以直接设置为系统的环境变量。
其中AZURE_OPENAI_CHAT_DEPLOYMENT_NAME
为 Chat模型的部署名称,例如gpt-35-turbo、gpt-4 等。
使用
完成配置之后,就可以开始使用了。
需要注意的是,git相关的功能都是基于当前的 git 仓库的,所以可以先将命令行的目录切换到对应的 git 仓库下,然后执行。
生成git提交信息
在生成git提交信息之前,需要先将当前的修改暂存到暂存区
然后使用以下指令可根据当暂存区的内容生成提交信息:
skonsole commit
生成PR(MR)内容
生成PR的内容主要针对当前分支与目标分支的差异,所以可以在当前分支完成代码提交之后,执行以下指令:
skonsole pr -t origin/master
如果默认的上游分支是 origin/main
(GitHub 默认分支) 的话, --target
/-t
选项就可以省略。
也可以使用以下子指令,效果一样。
skonsole pr description
生成PR(MR)评审内容
和生成PR内容类似,只是变成了生成PR评审内容,可以使用以下指令:
skonsole pr feedback -t origin/master
其他功能
skonsole chat
: 提示词机器人,可以通过与AI聊天的方式来生成提示词。
构建
该项目在GitHub上开源: Skonsole
如果想要自己修改构建的话,可以执行以下步骤:
- 克隆项目到本地
- 打开
apps/SKonsole
目录 - 添加新的指令和功能
- 执行
dotnet build
进行构建
这个项目是一个 dotnet tool, 如果自行修改后想要安装到本地的话,可以参考这个使用 .NET 本地工具。
参考
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。