{"id":15748277,"url":"https://github.com/dvershinin/commitgpt","last_synced_at":"2026-05-02T19:36:17.545Z","repository":{"id":205078024,"uuid":"713344359","full_name":"dvershinin/CommitGPT","owner":"dvershinin","description":"Automate your Git commit messages with AI-powered insights.","archived":false,"fork":false,"pushed_at":"2023-12-03T07:33:57.000Z","size":21,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-06T11:32:09.661Z","etag":null,"topics":["chatgpt","commit","git","git-hooks","prepare-commit-msg"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dvershinin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","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},"funding":{"github":"dvershinin"}},"created_at":"2023-11-02T10:32:47.000Z","updated_at":"2024-01-29T19:54:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"5009c178-4142-437d-8843-eba68f1a3673","html_url":"https://github.com/dvershinin/CommitGPT","commit_stats":null,"previous_names":["dvershinin/commitgpt"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dvershinin%2FCommitGPT","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dvershinin%2FCommitGPT/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dvershinin%2FCommitGPT/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dvershinin%2FCommitGPT/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dvershinin","download_url":"https://codeload.github.com/dvershinin/CommitGPT/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246429447,"owners_count":20775805,"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":["chatgpt","commit","git","git-hooks","prepare-commit-msg"],"created_at":"2024-10-04T05:41:11.122Z","updated_at":"2026-05-02T19:36:17.516Z","avatar_url":"https://github.com/dvershinin.png","language":"Shell","funding_links":["https://github.com/sponsors/dvershinin"],"categories":[],"sub_categories":[],"readme":"# Git Commit Message Hook\n\n## Description\nThis git hook automatically generates commit messages based on the changes made to the files in a repository.\n\n## Prerequisites\n\n- `jq`\n- `curl`\n- `git`\n\n## Installation Instructions\n\nClone this repository:\n\n````bash\ngit clone https://github.com/dvershinin/CommitGPT.git ~/.local/share/CommitGPT\n````\n\nNavigate to your project's git hooks directory. It is usually located in:\n\n```bash\ncd your-project/.git/hooks/\n```\n\nCreate a symbolic link to the `prepare-commit-msg` hook from the cloned repository:\n\n```bash\nln -s ~/.local/share/CommitGPT/prepare-commit-msg.sh prepare-commit-msg \n```\n\n```bash\nchmod +x prepare-commit-msg \n```\n\nConfigure the necessary environment variable `OPENAI_API_KEY` in your `.bashrc`, for example.\n\n## Usage\n\nOnce installed, the hook will automatically run when you execute git commit in your project repository.\n\nTo automatically generate commit messages disregarding any user input (in automated scripts for example, you can use):\n\n```bash\nGIT_EDITOR=true git commit\n```\n\n## Configuring project goal\n\nThis step is optional, but it is recommended to configure the project goal in the `prepare-commit-msg` hook. \nThis will help generate more elaborate reasons as to *why* the changes introduced by commit was made\n\nNavigate to the Repository:\n\nChange directory into the repository where you want to configure the project goal.\n\n\nRun the following command to set a custom prompt, for example:\n\n```bash\ngit config commit.goal \"assist in automating the process of generating commit messages\"\n```\n\nThe goal should be a text you would otherwise place while filling int the blanks in the sentence:\n\n\u003e The goal of the project is to ...\n\n### Verifying the Configuration:\n\nTo verify that the configuration has been set correctly, you can use the following command:\n\n```bash\ngit config --get commit.goal\n```\n\nThis command will output the currently set goal, allowing you to confirm it’s correctly configured.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdvershinin%2Fcommitgpt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdvershinin%2Fcommitgpt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdvershinin%2Fcommitgpt/lists"}