iwillig/Git Hygiene
Lint git commit messages for grammar (LanguageTool) and structure quality (LLM)
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| github-token | GitHub token for posting PR comments and fetching commits | yes | ${{ github.token }} |
| llm-model | LLM model name as known to the llm library. For Ollama (local): e.g. qwen2.5:0.5b, tinyllama, phi3:mini. For remote providers: e.g. gpt-4o-mini (requires llm-api-key). Run 'llm models' to see available models. | no | qwen2.5:0.5b |
| llm-api-key | API key for a remote LLM provider (e.g. OpenAI). Not required when use-local-model is true. | no | "" |
| use-local-model | Run the LLM locally on the GitHub Actions runner using Ollama. No API key needed. Set llm-model to an Ollama model name. | no | true |
| enable-grammar | Enable the LanguageTool grammar checker. Disabled by default. | no | false |
| languagetool-url | LanguageTool API base URL | no | https://api.languagetool.org/v2 |
| languagetool-language | Language code for LanguageTool (e.g. en-US, en-GB, de-DE) | no | en-US |
| ignore-patterns | Newline-separated list of regex patterns for commit messages to skip (e.g. merge commits) | no | ^Merge\s ^Revert\s |
| custom-words | Newline-separated list of words to add to the spell-check dictionary. Matches where the flagged text is one of these words (case-insensitive) are suppressed. A built-in list of common dev/tool names is always included. | no | "" |
| fail-on-error | Whether to fail the check (exit 1) when issues are found | no | true |
Outputs
no outputs