๐ Termonaut
Your Terminal Journey Companion - Track, Gamify, and Level Up Your CLI Productivity
๐
/|\
/ | \
| T |
| |
|| ||
/\ /\
Termonaut is a lightweight, privacy-focused terminal productivity tracker that gamifies your command-line experience. Transform your daily shell usage into an engaging RPG-like journey with XP, levels, badges, and shareable statsโall without leaving your terminal.
โจ Features
๐ก Empty Command Stats โญ Stable in v0.9.0!
- Instant Stats: Press Enter on empty command line to see quick stats
- Dual Modes: Minimal one-liner or rich multi-line display
- Smart Integration: Respects your theme and privacy settings
- Fully Configurable: Enable/disable with simple config setting
๐ Core Tracking
- Command Logging: Automatically track every command execution
- Session Management: Intelligent session detection and timing
- Usage Analytics: Daily, weekly, and monthly productivity insights
- Smart Metrics: Active time estimation, command categories, and streak tracking
๐ฎ Gamification System
- XP & Levels: Earn experience points for terminal usage with space-themed progression
- Achievement Badges: Unlock ๐
badges for milestones (100 commands, 7-day streaks, etc.)
- Easter Eggs: 22+ contextual surprises for git, docker, and special moments
- New Command Bonuses: Extra XP for exploring new tools and commands
- Streak Rewards: Maintain daily/weekly usage streaks for motivation
๐จ Avatar System โญ NEW in v0.9.1!
- Visual Identity: Personalized ASCII art avatars that evolve with your level
- Smart Layout: Side-by-side stats display with intelligent terminal width detection
- Multiple Styles: Choose from pixel-art, bottts, adventurer, or avataaars themes
- Adaptive Sizing: Automatically adjusts avatar size (mini/small/medium/large) based on terminal width
- Rich Details: High-quality colored ASCII art with optimized character sets for maximum detail
- Evolution System: Avatar appearance changes and gains new features as you level up
- Full Management: Complete avatar configuration, preview, and refresh commands
๐ Rich CLI Interface
- Interactive Stats: Beautiful terminal-native data visualization
- Multiple Views: Session summaries, command breakdowns, and trend analysis
- Customizable Display: ASCII charts, emoji themes, and configurable output
- Export Options: JSON/CSV export for backup and integration
๐ GitHub Integration โญ NEW in v0.9.0!
- Dynamic Badges: Auto-updating Shields.io badges for your README
- Profile Generation: Complete productivity profiles in Markdown
- Repository Sync: Automatic synchronization with your GitHub repos
- GitHub Actions: Workflow templates for automated stats updates
- Stats Export: JSON and Markdown export for social sharing
- 100% Local: All data stays on your machine by default
- Lightweight: Minimal performance impact with async logging
- SQLite Storage: Fast, reliable, and portable data storage
- No Dependencies: Single binary with zero external requirements
๐ Quick Start
Installation
GitHub Install (Recommended):
# Install from GitHub releases
curl -sSL https://raw.githubusercontent.com/oiahoon/termonaut/main/install.sh | bash
Manual Installation:
# Download latest release for your platform
# Linux (x64)
wget https://github.com/oiahoon/termonaut/releases/latest/download/termonaut-linux-amd64
chmod +x termonaut-linux-amd64
sudo mv termonaut-linux-amd64 /usr/local/bin/termonaut
# macOS (Intel)
wget https://github.com/oiahoon/termonaut/releases/latest/download/termonaut-darwin-amd64
chmod +x termonaut-darwin-amd64
sudo mv termonaut-darwin-amd64 /usr/local/bin/termonaut
# macOS (Apple Silicon)
wget https://github.com/oiahoon/termonaut/releases/latest/download/termonaut-darwin-arm64
chmod +x termonaut-darwin-arm64
sudo mv termonaut-darwin-arm64 /usr/local/bin/termonaut
Build from Source:
git clone https://github.com/oiahoon/termonaut.git
cd termonaut
go build -o termonaut cmd/termonaut/*.go
sudo mv termonaut /usr/local/bin/
Homebrew Installation (Recommended):
# Install from our custom tap
brew tap oiahoon/termonaut
brew install termonaut
# Or install from homebrew-core (coming soon!)
brew install termonaut
Setup
Initialize Termonaut in your shell:
termonaut advanced shell install
# Or use the short alias:
tn advanced shell install
This automatically adds hooks to your ~/.bashrc or ~/.zshrc. Restart your terminal or run:
source ~/.bashrc # or ~/.zshrc
๐ก Pro Tip: Use tn as a short alias for termonaut in all commands!
๐ Need detailed setup help? Check our Quick Start Guide for step-by-step instructions!
๐ Usage
Basic Commands
View Your Stats:
termonaut stats # Today's overview
termonaut stats --weekly # This week's stats
termonaut stats --alltime # Lifetime statistics
# Or use the short alias:
tn stats # Today's overview
tn stats --weekly # This week's stats
tn stats --alltime # Lifetime statistics
Check Your Progress:
termonaut xp # Current XP and level
termonaut badges # Earned achievements
termonaut sessions # Recent terminal sessions
# Short commands:
tn xp # Current XP and level
tn badges # Earned achievements
tn sessions # Recent terminal sessions
Avatar Management:
termonaut avatar show # Display your current avatar
termonaut avatar config --style pixel-art # Change avatar style
termonaut avatar preview -l 10 # Preview avatar at level 10
termonaut avatar refresh # Force regenerate avatar
termonaut avatar stats # Avatar system statistics
# Short commands:
tn avatar show # Display your current avatar
tn avatar config --style bottts # Change to robot style
tn avatar preview -l 25 # Preview high-level avatar
Configuration:
termonaut config set theme emoji # Enable emoji theme
termonaut config set gamification true # Toggle XP system
termonaut config get # View all settings
# Short commands:
tn config set theme emoji # Enable emoji theme
tn config set gamification true # Toggle XP system
tn config get # View all settings
Data Management:
termonaut export stats.json # Export your data
termonaut import backup.json # Restore from backup
Example Output
$ termonaut stats --today
๐ Today's Terminal Stats (2024-01-15)
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Commands Executed: 127 ๐ฏ
Active Time: 3h 42m โฑ๏ธ
Session Count: 4 ๐ฑ
New Commands: 3 โญ
Current Streak: 12 days ๐ฅ
Top Commands:
git (23) โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ls (18) โโโโโโโโโโโโโโโโโโโโโโโโโโโ
cd (15) โโโโโโโโโโโโโโโโโโโโโโ
vim (12) โโโโโโโโโโโโโโโโ
๐ฎ Level 8 Astronaut (2,150 XP)
Progress to Level 9: โโโโโโโโโโโโโโโโ 75%
โ๏ธ Configuration
Termonaut uses a TOML configuration file at ~/.termonaut/config.toml:
# Display and Theme
display_mode = "enter" # Options: off, enter, ps1, floating
theme = "emoji" # Options: minimal, emoji, ascii
show_gamification = true # Enable XP and leveling system
# Tracking Behavior
idle_timeout_minutes = 10 # Session timeout
track_git_repos = true # Include git repository context
command_categories = true # Categorize commands automatically
# GitHub Integration (Optional)
sync_enabled = false # Enable GitHub sync
sync_repo = "username/termonaut-profile"
badge_update_frequency = "daily"
# Privacy
opt_out_commands = ["password", "secret"] # Commands to ignore
anonymous_mode = false # Strip personal paths from logs
๐๏ธ Achievement System
Unlock badges as you progress:
| Badge |
Description |
Criteria |
| ๐ First Launch |
Welcome aboard! |
Execute your first command |
| ๐ Explorer |
Command discoverer |
Use 50 unique commands |
| ๐ Century |
Daily powerhouse |
100 commands in one day |
| ๐ฅ Streak Keeper |
Consistency master |
7-day usage streak |
| ๐จโ๐ Space Commander |
Terminal veteran |
Reach level 10 |
| ๐ช Cosmic Explorer |
Universe navigator |
30-day usage streak |
| โก Lightning Fast |
Speed demon |
500 commands in one day |
| ๐ธ Master Navigator |
Elite astronaut |
Reach level 25 |
๐ง Advanced Features
๐ GitHub Integration & Sync
Automatically sync your terminal stats to GitHub and display dynamic badges:
Quick Setup
# Interactive setup (recommended)
termonaut github sync setup
# Or manual configuration:
termonaut config set sync_enabled true
termonaut config set sync_repo username/termonaut-profile
termonaut config set badge_update_frequency daily
Manual & Automatic Sync
# Manual sync (immediate)
termonaut github sync now
# Check sync status
termonaut github sync status
# View available commands
termonaut github --help
Generate Dynamic Badges
# Generate all badges
termonaut github badges generate
# Generate profile
termonaut github profile generate
# Setup GitHub Actions for automation
termonaut github actions generate termonaut-stats-update
Add Badges to Your README





Sync Features
- ๐ Automatic Sync: Background sync based on frequency (hourly/daily/weekly)
- ๐ Profile Generation: Complete productivity profiles in Markdown
- ๐ท๏ธ Dynamic Badges: 5+ badge types with real-time data
- ๐ Heatmaps: Visual activity heatmaps (HTML/SVG/Markdown)
- โก GitHub Actions: Automated workflows for updates
- ๐ Privacy: Only syncs aggregated stats, no sensitive data
Shell Prompt Integration
Add your stats to your shell prompt:
# Add to ~/.bashrc or ~/.zshrc
export PS1="$(termonaut prompt) $PS1"
API and Integrations
Export data for external tools:
termonaut export --json | jq '.stats.total_commands' # Use with jq
termonaut export --csv > stats.csv # Spreadsheet analysis
๐๏ธ Project Structure
~/.termonaut/
โโโ config.toml # User configuration
โโโ termonaut.db # SQLite database
โโโ termonaut.log # Application logs
โโโ cache/
โ โโโ export.json # Latest export data
โ โโโ badges/ # Generated badge files
โโโ backups/ # Automatic daily backups
๐ค Contributing
We welcome contributions! Please see our Development Guide for:
- Development setup and workflow
- Architecture overview
- Testing guidelines
- Code style and standards
Quick Development Setup
git clone https://github.com/oiahoon/termonaut.git
cd termonaut
make dev-setup # Install dependencies and dev tools
make test # Run test suite
make build # Build binary
๐ Roadmap
- v0.1: Basic command logging and SQLite storage
- v0.2: Enhanced stats and session detection
- v0.5: Full gamification system and achievements
- v0.9: GitHub integration and badge generation
- v1.0: Stable release with comprehensive documentation
- v1.x: Social features and leaderboards
See our Project Planning for detailed milestones.
๐ License
MIT License - see LICENSE for details.
๐ Acknowledgments
- Inspired by terminal productivity tools and gaming mechanics
- Built with โค๏ธ for the command-line community
- Special thanks to contributors and beta testers
"Hack your habits from the shell." ๐
Transform your terminal from a tool into an adventure. Every command is a step toward mastery.
For detailed documentation, visit our Wiki or run termonaut help.