JasonLovesDoggo/roastme
A witty CLI tool that analyzes your shell history and brutally roasts your command-line habits using AI to keep your ego in check.
๐ Overview
GoRoastMe is a fun CLI tool that analyzes your command history and generates humorous "roasts" based on your
terminal habits.
Whether you're making the same typos, using excessively complex commands, or spending too much time on social media sites through the terminal, RoastMe will call you out with style.
โจ Features
- ๐ Analyzes your shell command history (supports Bash, Zsh, and Fish)
- ๐ค Generates personalized roasts using AI (Google Gemini, OpenAI, or Anthropic)
- ๐ Works locally without API keys or internet connection
- ๐จ Beautiful TUI using Bubble Tea and Lip Gloss
- ๐งฉ Extensible with custom AI providers
๐ Installation
Using Go
go install github.com/jasonlovesdoggo/roastme@latestPre-built binaries
Download the latest release for your platform.
๐ป Usage
Basic Usage
Simply run:
roastmeThis will analyze your recent command history and generate a humorous roast using the local (non-AI) engine.
Advanced Usage
# Get a deeper analysis of your command history
roastme --deep
# Configure your AI provider settings
roastme configโ๏ธ Configuration
RoastMe supports multiple AI providers, with Google Gemini set as the default. You can configure your preferred provider in two ways:
1. Interactive Configuration
Run the configuration UI:
roastme configThis will open an interactive terminal UI where you can:
- Select your preferred AI provider (local, Google Gemini, OpenAI, Anthropic, or custom)
- Enter your API credentials
- Set model preferences
2. Manual Configuration
Edit ~/.roastme.toml:
[ai]
provider = "gemini" # Options: local, gemini, openai, anthropic, custom
[ai.openai]
api_key = "your-openai-api-key"
base_url = "https://api.openai.com/v1"
model = "gpt-3.5-turbo"
[ai.gemini]
api_key = "your-gemini-api-key"
base_url = "https://generativelanguage.googleapis.com"
model = "gemini-pro"
[ai.anthropic]
api_key = "your-anthropic-api-key"
base_url = "https://api.anthropic.com"
model = "claude-2"
[ai.custom]
api_key = "your-custom-api-key"
base_url = "https://api.your-provider.com"
model = "your-model"
[ui]
colorTheme = "dark" # Options: dark, light
style = "rounded" # Options: rounded, double, thick๐ What RoastMe Analyzes
RoastMe looks for patterns in your command history, including:
- Repeated commands - Are you running the same command over and over?
- Failed commands - Typos and error patterns
- Complex commands - Extremely long one-liners or pipe chains
- Indecision - Excessive use of cd, ls, and other navigation commands
- Time wasters - Commands that access time-wasting websites
- Skill level - Command complexity to determine your terminal proficiency
๐ค Contributing
Contributions are welcome! Here's how you can contribute:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Bubble Tea and Lip Gloss for the beautiful TUI
- LangChain Go for AI integrations
- Viper for configuration management
- Cobra for CLI commands
Made with โค๏ธ and a sense of humor

