📖 About the Project
gitllama
is a powerful command-line interface tool designed to leverage artificial intelligence for generating meaningful git commit messages based on your current changes. This tool streamlines the workflow of developers, allowing for clear and concise documentation of commits with minimal effort.
🎯 Features
- AI-generated commit messages based on the diff of staged changes.
- Options to automatically stage (
-y
) and push (-p
) your changes. - Simulation mode (
-s
) to preview commit messages without actual commits.
🚀 Quick Start
-
Clone the repository:
git clone https://github.com/brngdsn/gitllama.git cd gitllama
-
Install dependencies:
npm install
-
Run the tool:
- To generate a commit message:
npx gitllama commit
- To stage all changes automatically:
npx gitllama commit -y
- To push changes to the remote repo:
npx gitllama commit -y -p
- To simulate the process:
npx gitllama commit -s
- To generate a commit message:
🛠️ Tech Stack
- Node.js (v20.8.0)
- Command Line Interface: Commander
- AI Interaction: Ollama with Llama3.2 Model
- Console Styling: Chalk
- Loading Indicators: Ora
- Token Counting: js-tiktoken
📂 Folder Structure
.
├── bin/
│ └── gitllama.js
├── src/
│ ├── aiUtils.js
│ ├── commit.js
│ ├── gitUtils.js
│ └── tokenUtils.js
├── .gitignore
├── package.json
├── LICENSE
└── README.md
📜 License & Credits
This project is licensed under the MIT License. See the LICENSE file for more information. Contributions are welcome, and please adhere to the code of conduct in your interactions and submissions.
For more information, visit our GitHub Repository. Enjoy using gitllama
to streamline your commit processes!