An LLM-powered changelog writer that transforms mundane software updates into epic, theatrical narratives.
- 🎭 Transforms boring changelog entries into dramatic tales
- ⚡ Powered by Google Generative AI
- 🎨 Multiple theatrical styles and themes
- 📝 CLI interface for easy integration
- 🔧 Configurable drama levels
- 📦 Easy pip-style installation
- 🎨 Custom theme support with unlimited extensibility
# Clone the repository
git clone <repository-url>
cd Epic-Logger-Agent
# Install the package
pip install -e .
# Clone this repository
git clone <repository-url>
cd Epic-Logger-Agent
# Install dependencies
pip install -r requirements.txt
Set up your Google API key:
# Create .env file with your API key
echo "GOOGLE_API_KEY=your_api_key_here" > .env
The package provides three convenient commands:
# Primary command
epiclog "Fixed minor bug in login form"
# Alternative alias
changelog "Fixed minor bug in login form"
# Choose drama level (1-10)
epiclog "Added new feature" --drama-level 8
# Select theme
epiclog "Updated dependencies" --theme space
# Interactive mode
epiclog --interactive
# Process file with multiple entries
epiclog --file changelog_input.txt
# Save output to file
epiclog "Fixed bug" --output epic_changes.txt
# List all available themes (default and custom)
epiclog --list-themes
# Create a custom theme template
epiclog --create-theme horror
# Add a custom theme from JSON file
epiclog --add-theme /path/to/my_theme.json
- Input: "Fixed minor bug in login form"
- Output: "🗡️ Vanquished a lurking menace that had corrupted the sacred login flow, restoring peace to the realm of user authentication!"
# With default drama level(7) and default theme(medieval)
python -m app.main "Fixed minor bug in login form"
# Choose drama level (1-10)
python -m app.main "Added new feature" --drama-level 8
# Select theme
python -m app.main "Updated dependencies" --theme space
# Interactive mode
python -m app.main --interactive
# Process file with multiple entries
python -m app.main --file changelog_input.txt
# Save output to file
python -m app.main --output epic_changes.txt
- 1-3: Mildly dramatic
- 4-6: Moderately epic
- 7-8: Highly theatrical
- 9-10: Maximum drama overload
medieval
: Knights, dragons, and quests ⚔️space
: Cosmic battles and galactic adventures 🚀superhero
: Powers, villains, and heroic deeds 💥mythology
: Gods, legends, and ancient prophecies ⚡cyberpunk
: Futuristic cyber adventures 🤖pirate
: High-seas adventures 🏴☠️
Create unlimited custom themes! The Epic Logger Agent supports a powerful theme system:
# See all available themes
epiclog --list-themes
# Create your own theme
epiclog --create-theme horror
# Use your custom theme
epiclog --theme horror "Fixed memory leak"
-
Generate a template:
epiclog --create-theme western
-
Edit the generated file in
Themes/Custom_Themes/western_theme.json
:{ "name": "western", "display_name": "Wild West Adventure", "vocabulary": ["rustled", "gunned", "lassoed", "corralled"], "metaphors": ["sheriff", "outlaw", "saloon", "frontier"], "tone": "wild west frontier adventure", "emoji": "🤠", "description": "Transform code changes into frontier adventures" }
-
Use immediately:
epiclog --theme western "Updated user authentication"
Themes/
├── Default_Themes/ # Built-in themes (6 themes)
│ ├── medieval_theme.json
│ ├── space_theme.json
│ └── ...
└── Custom_Themes/ # Your custom themes
├── horror_theme.json
└── western_theme.json
Create a .env
file with:
GOOGLE_API_KEY=your_google_api_key_here
DEFAULT_DRAMA_LEVEL=7
DEFAULT_THEME=medieval
DEFAULT_MODEL=gemini-2.5-flash
Run tests:
python -m pytest tests/