Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Commify is a command-line interface (CLI) tool that generates meaningful, structured commit messages for Git repositories using AI. By analyzing the staged changes (diff) in your repository, it creates commit messages that follow conventional commit guidelines, optionally including emojis for better context and readability. Don't forget to ⭐ the project!
Ollama provider can be slow without a good GPU or a very large AI model. It's not a Commify optimization problem.
ollama
local AI provider, G4F
AI provider or Openai
AI provider (Openai provider requires an apikey).Make sure you have installed Git
, python3.10+
and ollama
(ollama is optional)
Run the following:
pip install Commify
Make sure you have installed Git
, python3.10+
, pipx
and ollama
(ollama is optional)
If you don't, use this command:
sudo apt install git
sudo apt install pipx
And install Commify:
pipx install Commify
pipx ensurepath
After that, restart your terminal and you will already have Commify installed.
See the Commify Documentation to see more example usage, milestones, and others.
Run the commify
CLI with the desired options:
commify <path_to_repo> [--lang <language>] [--emoji <True/False>] [--model <AI_model>] [--provider <AI_PROVIDER>] [--apikey <API_KEY>]
Commify supports multiple AI providers, from locally run (Ollama) to cloud-based (Groq, G4F & Openai)
See more example usage in documentation docs/example-usage
Using Ollama Provider:
commify /path/to/repo --lang english --emoji True --model llama3.1 --provider ollama
Using G4F Provider:
commify /path/to/repo --lang english --emoji True --model gpt-4o --provider g4f
Using Openai Provider:
commify /path/to/repo --lang english --emoji True --model gpt-4o --provider openai
Using Groq Provider:
commify /path/to/repo --lang english --emoji True --model llama-3.3-70b-versatile --provider groq
Without Specifying The Repository Path:
cd /path/to/repo
commify --lang english --emoji True --model llama3.1 --provider ollama
path
: Path to the Git repository. (If the repository path is not specified, the path Commify is running from will be used)--lang
: Language for the commit message (default: english
).--provider
: AI provider to use for generating messages (default: ollama
). (required)--emoji
: Include emojis in the commit message (True
or False
, default: True
).--model
: AI model to use for generating messages (default: llama3.1
). (required)--help
: Display all available parameters and their descriptions.--version
: Display the installed Commify version.--debug
: Run Commify in Debug Mode. (It is not recommended if you don't know what you are doing.)--apikey
: A temporary apikey use for Openai or Groq API key to use (default: sk-
).--save-apikey
: Save API key for a provider. Ex: --save-apikey openai sk-...--mod-apikey
: Modify API key for a provider. Ex: --mod-apikey groq gsk-...Once a message is generated, you'll be prompted to:
y
).n
).c
).Commify currently supports only 4 providers:
Feel free to submit a pull request or open an issue to add more providers!
Commify allows you to save and modify API keys for certain providers (openai
and groq
). This can be useful if you frequently use these providers and want to avoid entering the API key each time you run Commify.
To save an API key for a provider, use the --save-apikey
option followed by the provider name and the API key. For example:
commify --save-apikey openai sk-...
This will save the API key for the openai provider. You can also save an API key for the groq provider:
commify --save-apikey groq gsk-...
The saved API key will be stored in a file located at ~/.commify_env
and will be automatically used in future Commify runs.
If you need to update an existing API key, use the --mod-apikey
option followed by the provider name and the new API key. For example:
commify --mod-apikey openai sk-...
This will update the saved API key for the openai provider. Similarly, you can update the API key for the groq provider:
commify --mod-apikey groq gsk-...
If you prefer not to save the API key, you can provide it directly when running Commify using the --apikey
option. For example:
commify /path/to/repo --provider openai --apikey sk-...
This will use the provided API key for the current run without saving it.
Feel free to submit a pull request or open an issue if you have any suggestions or improvements for this feature!
Confirmed successful runs (with no errors) on the following:
OS:
Python:
AI Models:
Ollama
Ollama
Ollama
G4F
G4F
Ollama
Ollama
Groq
Groq
Let us know if it runs on your machine too!
Commify is developed and maintained by Matuco19.
This project is open-source and available under the MATCO-Open-Source License. See the LICENSE
file for details.
Contributions are welcome! Feel free to open an issue or submit a pull request on GitHub.
Start making commits with Commify today! 🎉
FAQs
Commify: You Should Commit Yourself.
We found that Commify demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.