{"id":16956098,"url":"https://github.com/dandonahoe/slick-commit","last_synced_at":"2026-05-07T10:36:10.501Z","repository":{"id":257513589,"uuid":"853121864","full_name":"dandonahoe/slick-commit","owner":"dandonahoe","description":"Slick Commit is a tool that leverages OpenAI's GPT-4 to automatically generate high-quality commit messages based on staged changes in your Git repository. It uses AI to analyze the git diff and creates concise, readable, and technically sound commit messages.","archived":false,"fork":false,"pushed_at":"2025-07-22T12:36:50.000Z","size":89,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-20T15:49:52.815Z","etag":null,"topics":["code-quality","generative-ai","git","openai","versioning"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/dandonahoe.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-09-06T03:16:19.000Z","updated_at":"2024-09-17T02:54:40.000Z","dependencies_parsed_at":"2024-09-17T06:04:47.480Z","dependency_job_id":"5184b48e-71ff-48bc-9e39-f56e921785c9","html_url":"https://github.com/dandonahoe/slick-commit","commit_stats":null,"previous_names":["dandonahoe/slick-commit"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dandonahoe/slick-commit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dandonahoe%2Fslick-commit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dandonahoe%2Fslick-commit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dandonahoe%2Fslick-commit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dandonahoe%2Fslick-commit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dandonahoe","download_url":"https://codeload.github.com/dandonahoe/slick-commit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dandonahoe%2Fslick-commit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32733898,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["code-quality","generative-ai","git","openai","versioning"],"created_at":"2024-10-13T22:14:14.827Z","updated_at":"2026-05-07T10:36:10.485Z","avatar_url":"https://github.com/dandonahoe.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![image](https://github.com/user-attachments/assets/81d30090-904f-42ba-9474-b2dc9d649f1e)\n\n# Slick Commit\n\nSlick Commit is a tool that leverages OpenAI's GPT-4 to automatically generate high-quality commit messages based on staged changes in your Git repository. It uses AI to analyze the `git diff` and creates concise, readable, and technically sound commit messages—far better than most humans can craft on the spot.\n\n\n\u003cdiv style=\"text-align: left;\"\u003e\n    \u003ch3\u003eExample Commits\u003c/h3\u003e\n    \u003cp\u003eBelow is a screenshot showcasing beautifully formatted commit messages, automatically generated to provide clear, structured, and meaningful descriptions of changes, ensuring consistency and readability across the project.\n\u003c/p\u003e\n    \u003cimg width=\"1096\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ad552be7-beaa-4cbc-bb29-37b2a0c58585\"\u003e\n    \u003cfigcaption style=\"margin-top: 10px;\"\u003eCheck the commit messages of this repo for more real world examples.\u003c/figcaption\u003e\n\u003c/div\u003e\n\n## Features\n\n- **Automatic Commit Message Generation**: Slick Commit uses the OpenAI API to generate commit messages based on staged changes in the repository.\n- **File-Specific Summaries**: Summarizes each changed file with a focus on important changes.\n- **Commit Message Formatting**: Ensures consistent formatting for commit messages, following conventional commits structure (e.g., `feat`, `fix`, `docs`, etc.).\n- **Large Diff Handling**: Handles large or complex diffs, skipping irrelevant files like `package-lock.json`.\n- **Parallel File Summaries**: Processes file changes concurrently, optimizing for speed and performance.\n- **Commit Statistics**: Includes statistics such as the number of files changed and the size of the changes in the commit message.\n\n## Installation\n\nTo install Slick Commit, follow these steps:\n\n1. Clone this repository:\n\n    ```bash\n    git clone https://github.com/your-username/slick-commit.git\n    ```\n\n2. Navigate to the project directory:\n\n    ```bash\n    cd slick-commit\n    ```\n\n3. Install the required dependencies:\n\n    ```bash\n    npm install\n    ```\n\n4. Set up your OpenAI API key by adding it to your environment variables:\n\n    ```bash\n    export OPENAI_API_KEY=your-api-key-here\n    ```\n\n## Usage\n\nAfter making your changes and staging them in Git, use the following command to automatically generate and commit your changes with an AI-generated message:\n\n```bash\nnpm run slick-commit\n```\n\nThis will:\n\n1. Add all your staged changes.\n2. Analyze the `git diff` of your staged changes.\n3. Generate a commit message using OpenAI.\n4. Commit the changes with the AI-generated message.\n\n### Example Commit Message\n\n```bash\nfeat(authentication): enhance auth token verification\n\n- feat(token): improved validation logic for token length in auth.service.ts\n  - File: src/auth/auth.service.ts\n  - Changes: Added better token validation and expiration checks\n- fix(auth): resolved an issue where invalid tokens were being accepted in some cases\n  - File: src/auth/auth.guard.ts\n  - Changes: Improved error handling and logging\n\nThis update enhances token validation to prevent security loopholes. No breaking changes detected.\n```\n\n## Configuration\n\n- **Git**: Make sure you have a valid Git configuration and repository.\n- **OpenAI API**: You need to set the `OPENAI_API_KEY` environment variable to use this tool.\n\n## Development\n\n### Running Locally\n\nTo run this project locally:\n\n1. Clone the repo and install dependencies:\n\n    ```bash\n    git clone https://github.com/your-username/slick-commit.git\n    cd slick-commit\n    npm install\n    ```\n\n2. Make sure your OpenAI API key is available in your environment variables.\n\n3. Run the tool:\n\n    ```bash\n    npm run slick-commit\n    ```\n\n### Contributing\n\nContributions are welcome! Please fork the repository and submit a pull request.\n\n### License\n\nThis project is licensed under the ISC License.\n\n---\n\n### Future Plans\n\n- Support for more file types and custom diff summarization.\n- Improved handling for extremely large files.\n- Better commit message customizations and rules.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdandonahoe%2Fslick-commit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdandonahoe%2Fslick-commit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdandonahoe%2Fslick-commit/lists"}