TimHeuer.Git.AICommit 1.0.15-pre

This is a prerelease version of TimHeuer.Git.AICommit.
dotnet tool install --global TimHeuer.Git.AICommit --version 1.0.15-pre
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local TimHeuer.Git.AICommit --version 1.0.15-pre
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=TimHeuer.Git.AICommit&version=1.0.15-pre&prerelease
nuke :add-package TimHeuer.Git.AICommit --version 1.0.15-pre

AICommit

This is not my idea (original Nutlope/aicommits), but I just created one to use Azure OpenAI instead of the base OpenAI resources and make it a .NET global tool.

Requirements

You will need an Azure OpenAI resource. From the resource grab the following values and set as configuration variables on your machine.

  • AZURE_OPENAI_KEY - the key from your provisioned resource
  • AZURE_OPENAI_ENDPOINT - the endpoint URI from the provisioned resource
  • AZURE_MODEL_DEPLOYMENT - the name you gave to one of your Azure OpenAI model deployments

These can be set as either Environment variables or in the user app local data directory under .aicommit/appsettings.json in the following format:

{
  "AZURE_OPENAI_KEY": "your api key",
  "AZURE_OPENAI_ENDPOINT": "your endpoint",
  "AZURE_MODEL_DEPLOYMENT": "your name of your model deployment"
}

The location for this would be in:

  • Windows - %localappdata% which is usually C:\Users\[username]\AppData\Local
  • macOS = /Users/[username]/.local/share

Installation

To install use the dotnet CLI command:

dotnet tool install -g TimHeuer.Git.AICommit

Usage

From a git repository if there are staged changes, just run aicommit from the repository. It will attempt to generate a message for you and offer you to see it before using for the commit message.

Data Sharing

Indeed this does take the text of your git diff output and send it to Azure OpenAI for completion. You should not use this if you have sensitive information.

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
1.0.15-pre 100 5/3/2023
1.0.13-pre 101 3/28/2023
1.0.12-pre 94 3/24/2023
1.0.11-pre 95 3/23/2023
1.0.10-pre 93 3/23/2023
1.0.8-pre 96 2/20/2023
1.0.3-pre 95 2/20/2023
1.0.1-pre-gb297a7cb69 87 2/18/2023
1.0.0-pre-g08de40af54 87 2/18/2023
0.1.0-pre-g1270646a6f 101 2/18/2023
0.0.4-pre-g21715fe09f 86 2/18/2023
0.0.4-pre-g0f7be50c0c 89 2/18/2023
0.0.3.2-pre 90 2/18/2023
0.0.3.1-pre 87 2/18/2023
0.0.3-pre 94 2/18/2023
0.0.2.4-pre 91 2/18/2023
0.0.2.3-pre 92 2/17/2023
0.0.2.2-pre 88 2/17/2023
0.0.2.1-pre 91 2/17/2023
0.0.1.1-pre 87 2/17/2023
0.0.1-pre 81 2/17/2023

Changed where Azure OpenAI config can be stored