{"id":37599796,"url":"https://github.com/bikz/goodcommit","last_synced_at":"2026-01-16T10:01:18.253Z","repository":{"id":287228115,"uuid":"964047036","full_name":"Bikz/goodcommit","owner":"Bikz","description":"A lightning-fast utility for Git that stages, commits with AI-generated messages, and pushes—all with one simple command: g.","archived":false,"fork":false,"pushed_at":"2026-01-12T09:07:56.000Z","size":212,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-12T13:57:02.907Z","etag":null,"topics":["ai","cli","commit","commit-message","conventional-commits","developer-tools","git","gpt-5","ollama","openai","opencommit","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Bikz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-10T15:54:30.000Z","updated_at":"2026-01-12T09:07:59.000Z","dependencies_parsed_at":"2025-06-17T22:32:48.101Z","dependency_job_id":"f43dc9c0-b9b7-4d1e-aa8c-8bb784cadba4","html_url":"https://github.com/Bikz/goodcommit","commit_stats":null,"previous_names":["bikz/git-ai-commit","bikz/gdot-ai-commit","bikz/goodcommit"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/Bikz/goodcommit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bikz%2Fgoodcommit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bikz%2Fgoodcommit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bikz%2Fgoodcommit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bikz%2Fgoodcommit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bikz","download_url":"https://codeload.github.com/Bikz/goodcommit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bikz%2Fgoodcommit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478049,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: 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":["ai","cli","commit","commit-message","conventional-commits","developer-tools","git","gpt-5","ollama","openai","opencommit","rust"],"created_at":"2026-01-16T10:01:03.912Z","updated_at":"2026-01-16T10:01:17.955Z","avatar_url":"https://github.com/Bikz.png","language":"Rust","readme":"# Good Commit (goodcommit, g, g.)\n\nGood Commit is a fast Rust CLI that writes git commit messages with AI. It stages changes (optional), generates a message, shows a preview, commits, and can push. Use OpenAI (including GPT-5) or local Ollama, with safe handling for large diffs.\n\nKeywords: git ai commit, commit message generator, OpenCommit alternative, conventional commits.\n\n## Why Good Commit\n\n- One command: `g` or `g.` to stage, generate, commit, and push (optional).\n- Fast and lightweight: Rust, single binary, no runtime.\n- GPT-5 + Ollama support: cloud or local.\n- Large diff safe: summarization fallback prevents token blowups.\n- Conventional commits by default, with quick overrides.\n\n## Install\n\n### Homebrew\n\n```bash\nbrew tap Bikz/tap\nbrew install goodcommit\n```\n\n### npm\n\n```bash\nnpm install -g goodcommit\n```\n\n### curl installer\n\n```bash\ncurl -s https://raw.githubusercontent.com/Bikz/goodcommit/main/install.sh | sh\n```\n\n## Quick Start\n\n```bash\ngoodcommit setup\ng\n```\n\nSetup asks for your provider, default push behavior, and (if OpenAI) your API key. You can also set `OPENAI_API_KEY` or `GOODCOMMIT_OPENAI_API_KEY` instead of storing it in config. Create a key at:\nhttps://platform.openai.com/api-keys\n\n## Usage\n\n```bash\n# AI commit (uses defaults)\ng\n\n# Use your own message\ng \"fix: resolve auth session leak\"\n\n# Skip push\ng --no-push\n\n# Show message without committing\ng --dry-run\n\n# Interactive staging\ng --interactive\n\n# Local commit only (no push)\ng -l\n\n# Guided split into multiple commits\ngoodcommit split\n```\n\n## Configuration\n\nConfig precedence: CLI flags \u003e repo config \u003e global config \u003e env \u003e defaults.\n\nConfig files:\n- Global: `~/.config/goodcommit/config.toml`\n- Repo: `.goodcommit.toml`\n\nExample:\n\n```toml\nprovider = \"openai\"\nmodel = \"gpt-5-nano-2025-08-07\"\npush = true\nconventional = true\none_line = true\n```\n\nIgnore files (for AI prompt only):\n- Global: `~/.config/goodcommit/ignore`\n- Repo: `.goodcommit-ignore`\n\n## Providers\n\n### OpenAI\n\nSet your key:\n\n```bash\nexport OPENAI_API_KEY=\"...\"\n```\n\n### Ollama\n\n```bash\nollama pull qwen2.5-coder:1.5b\n```\n\n## Hooks\n\n```bash\ngoodcommit hook install\ngoodcommit hook uninstall\n```\n\n## Contributing\n\nIssues and PRs are welcome. Please open an issue for bugs or feature requests, and open a PR for fixes or docs. For larger changes, start with an issue so we can align.\n\n## License\n\nMIT\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbikz%2Fgoodcommit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbikz%2Fgoodcommit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbikz%2Fgoodcommit/lists"}