Shelf is a command-line tool designed to simplify configuration file management and enhance your git workflow with AI-powered features. It enables you to:
- Manage configuration files effectively across your system
- Automatically generate meaningful git commit messages using AI
- Obtain comprehensive, AI-driven code reviews
Integrated with git hooks and supporting multiple AI providers, Shelf adapts seamlessly to your development workflow.
Note: Currently, Shelf only supports Google Gemini as the AI provider. More providers will be added in future releases.
Track files:
shelf dotfs track ~/.bashrc
List tracked files:
shelf dotfs list
List only modified files:
shelf dotfs list --dirty
Untrack files:
shelf dotfs untrack ~/.bashrc
Save current changes:
shelf dotfs save
Generate a commit message for staged changes:
shelf commit --prefix="Some context" [--model MODEL] [--history N]
Review staged changes:
shelf review [--model MODEL]
Configure your AI provider (default is Google Gemini):
export GEMINI_API_KEY="your-key"
Generate shell completions:
# For zsh
shelf completion zsh
Contributions are welcome! Please submit a Pull Request with your improvements.
Shelf is licensed under the MIT License. See the LICENSE file for details.