16 releases (5 breaking)
new 0.6.1 | Nov 3, 2024 |
---|---|
0.6.0 | Nov 2, 2024 |
0.5.1 | Nov 1, 2024 |
0.4.1 | Nov 1, 2024 |
0.1.1 | Oct 29, 2024 |
#71 in Command line utilities
2,012 downloads per month
33KB
824 lines
lumen is a command-line tool that uses AI to generate summary of your git changes
Features
- Generate summary for changes in a git commit by providing its SHA-1
- Generate summary for changes in git diff (staged/unstaged)
- Fuzzy-search for the commit to generate a summary
- Pretty output formatting enabled by Markdown
- Free and unlimited - no API key required to work out of the box
- Supports multiple AI providers
Usage
Try lumen --help
To summarise a commit, pass in its SHA-1
lumen explain HEAD
# OR
lumen explain cc50651f
To use the interactive fuzzy-finder (requires: fzf)
lumen list
To generate a summary for the current git diff
lumen explain --diff
# OR
lumen explain --diff --staged
AI Provider can be configured by using CLI arguments or Environment variables.
-p, --provider <PROVIDER> [env: LUMEN_AI_PROVIDER] [default: phind] [possible values: openai, phind, groq]
-k, --api-key <API_KEY> [env: LUMEN_API_KEY]
-m, --model <MODEL> [env: LUMEN_AI_MODEL]
# eg: lumen -p="openai" -k="<your-api-key>" -m="gpt-4o" explain HEAD
# eg: lumen -p="openai" -k="<your-api-key>" -m="gpt-4o" list
Supported providers
Provider | API Key Required | Models |
---|---|---|
Phind phind (Default) |
No | Phind-70B |
Groq groq |
Yes (free) | llama2-70b-4096 , mixtral-8x7b-32768 (default: mixtral-8x7b-32768 ) |
OpenAI openai |
Yes | gpt-4o , gpt-4o-mini , gpt-4 , gpt-3.5-turbo (default: gpt-4o-mini ) |
Claude claude |
Yes | see list (default: claude-3-5-sonnet-20241022 ) |
Installation
Using Homebrew (MacOS and Linux)
brew tap jnsahaj/lumen
brew install lumen --formula
Using Cargo
[!IMPORTANT]
cargo
is a package manager forrust
, and is installed automatically when you installrust
. see installation guide
cargo install lumen
Prerequisites
Dependencies
~8–23MB
~280K SLoC