{"id":24550875,"url":"https://github.com/https-richardy/commit-message-wizard","last_synced_at":"2025-03-16T13:27:35.280Z","repository":{"id":251815068,"uuid":"838027020","full_name":"https-richardy/commit-message-wizard","owner":"https-richardy","description":"an automated tool that generates intelligent commit messages by analyzing the differences (git diff) in your Git repository.","archived":false,"fork":false,"pushed_at":"2024-08-05T18:38:30.000Z","size":29,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-23T01:14:48.205Z","etag":null,"topics":["assistant","commit","generative-ai"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/https-richardy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-04T18:14:27.000Z","updated_at":"2024-10-06T22:06:35.000Z","dependencies_parsed_at":"2024-08-06T00:07:38.227Z","dependency_job_id":null,"html_url":"https://github.com/https-richardy/commit-message-wizard","commit_stats":null,"previous_names":["https-richardy/commit-message-wizard"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/https-richardy%2Fcommit-message-wizard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/https-richardy%2Fcommit-message-wizard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/https-richardy%2Fcommit-message-wizard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/https-richardy%2Fcommit-message-wizard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/https-richardy","download_url":"https://codeload.github.com/https-richardy/commit-message-wizard/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243874172,"owners_count":20361778,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assistant","commit","generative-ai"],"created_at":"2025-01-23T01:14:50.490Z","updated_at":"2025-03-16T13:27:35.258Z","avatar_url":"https://github.com/https-richardy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Commit Assistant\n\n## About this project\n\nCommitAssistant is a Python script designed to generate commit messages intelligently and automatically by analyzing the differences (diff) in your Git repository. This project makes it easier to create more meaningful commits, saving time and ensuring consistent messages.\n\n## Main features\n\n* **Commit message generation:** Based on the changes detected by git diff, CommitAssistant creates automatic and contextual commit messages.\n\n* **Flexible options:**\n    - **Complete Analysis**: Analyzes all changes to the repository.\n    - **Staged only**: It only analyzes changes that are already staged (ready for commit).\n    - **Specific file**: Allows you to specify a single file for analyzing changes.\n\n## How to use\n\n### Requirements\n\n* Make sure you are in a Git project.\n* Python 3.7 or higher installed.\n\n## Executing the Script\n\nThere is currently no official installer, but you can create an alias to make it easier to use:\n\n#### Linux (Bash/Zsh):\n\nAdd the following line to your `~/.bashrc` or `~/.zshrc:`\n\n```bash\nalias commit-assistant='python3 /path/to/project/assistant.py'\n```\n\nAfter saving the file, reload the terminal:\n\n```bash\nsource ~/.bashrc\n# or\nsource ~/.zshrc\n```\n\n#### Windows (CMD/PowerShell):\n\n```powershell\nSet-Alias commit-assistant 'C:\\path\\to\\project\\assistant.py'\n```\n\n### Examples of use\n\n* **Analyze all changes**:\n    ```bash\n    commit-assistant\n    ```\n\n* **Only analyze staged changes**:\n    ```bash\n    commit-assistant --only-staged\n    ```\n\n* **Analyze a specific file**:\n    ```bash\n    commit-assistant --file-path Path/To/File.cs\n    ```\n\n| command                                             | alias               | description |\n|-----------------------------------------------------|---------------------|-----------|\n| `commit-assistant`                                  |                 | It analyzes all the changes in the repository and generates a commit message. |\n| `commit-assistant --only-staged`                    | `-s`             | It only analyzes the changes that are already staged. |\n| `commit-assistant --file-path path/to/file.py` | `-f path/to/file.py` | It analyzes a specific file to generate a commit message. |\n\n\n### Configuration:\n\nCommitAssistant uses an `assistant.cfg` configuration file to store your preferences:\n\n```ini\n[assistant.secrets]\n# Your Gemini API key. You can get one here: https://aistudio.google.com/app/apikey\ngemini.apiKey = YOU_GEMINI_API_KEY\n\n[assistant.defaults]\n# Default language for commit messages.\nlanguage = EN-US\n\n# Maximum number of characters for commit messages.\nmaxNumberOfCharacters = 80\n\n```\n\n#### Important\n\n**Don't forget to set the `gemini.apiKey` in the `assistant.cfg`** file! It is essential for CommitAssistant to work. You can obtain your API key [here](https://aistudio.google.com/app/apikey).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhttps-richardy%2Fcommit-message-wizard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhttps-richardy%2Fcommit-message-wizard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhttps-richardy%2Fcommit-message-wizard/lists"}