Terminal-based ImprovMX alias manager with hacker-chic style
GALIAS is a sleek command-line tool for managing your ImprovMX email aliases. Create, delete, and list aliases with style - no browser needed!
██████╗ █████╗ ██╗ ██╗ █████╗ ███████╗
██╔════╝ ██╔══██╗██║ ██║██╔══██╗██╔════╝
██║ ███╗███████║██║ ██║███████║███████╗
██║ ██║██╔══██║██║ ██║██╔══██║╚════██║
╚██████╔╝██║ ██║███████╗██║██║ ██║███████║
╚═════╝ ╚═╝ ╚═╝╚══════╝╚═╝╚═╝ ╚═╝╚══════╝
ImprovMX Alias Manager @ yourdomain.com
- 🎨 Hacker-chic interface with ASCII banners and styled output
- ⚡ Fast operations - add, delete, list aliases in seconds
- 📊 Real-time progress - see your alias count with visual progress bars
- 🔒 Secure authentication using ImprovMX API keys
- 💻 Interactive prompts - no need to remember command syntax
- 📋 JSON output for scripting and automation
- 🎯 Smart error handling with helpful error messages
git clone https://github.com/gazzycodes/galias.git
cd galias
cp .env.example .envThat's it! Edit .env with your credentials and start using:
# Windows
.\galias.bat --version
.\galias.bat list
.\galias.bat add
.\galias.bat delete
# macOS/Linux
./galias --version
./galias list
./galias add
./galias deleteEdit .env with your ImprovMX credentials:
IMPROVMX_API_KEY=sk_your_api_key_here
DOMAIN=yourdomain.comNo installation, no PATH setup, no complications - just works!
galias list [OPTIONS]Options:
--json- Output raw JSON for scripting--no-color- Disable colored output-q, --quiet- Skip banner and just show aliases
Example:
galias list
[#####---------------] 5/25 aliases
┌─────────────────── Current Aliases ───────────────────┐
│ Alias │ Forward To │ Status │
├──────────┼─────────────────────┼───────────┤
│ info │ [email protected] │ ✓ Active │
│ support │ [email protected] │ ✓ Active │
│ hello │ [email protected] │ ✓ Active │
└──────────┴─────────────────────┴───────────┘galias add [ALIAS] [FORWARD] [OPTIONS]Arguments:
ALIAS- Alias name (without domain)FORWARD- Email address to forward to
Options:
--json- Output raw JSON for scripting--no-color- Disable colored output-q, --quiet- Skip banner and progress display
Examples:
# Interactive mode
galias add
❯ Enter new alias: sales
❯ Forward to: [email protected]
# Direct mode
galias add sales [email protected]galias delete [ALIAS] [OPTIONS]Arguments:
ALIAS- Alias name to delete
Options:
-f, --force- Skip confirmation prompt--json- Output raw JSON for scripting--no-color- Disable colored output-q, --quiet- Skip banner and progress display
Examples:
# Interactive mode with confirmation
galias delete
❯ Alias to delete: old-alias
❯ Delete alias 'old-alias'? [y/N]: y
# Direct mode
galias delete old-alias --forcegalias status [OPTIONS]Options:
--json- Output raw JSON for scripting--no-color- Disable colored output
-
Copy the example file:
cp .env.example .env
-
Edit
.envand paste your real ImprovMX API key:IMPROVMX_API_KEY=sk_b05673aeb5b0493891f61c4e5b5ba32f DOMAIN=yourdomain.com
-
Run any command (list, add, delete) and it will auto-load your credentials.
- Log in to your ImprovMX dashboard
- Go to Account Settings → API
- Generate a new API key (starts with
sk_) - Copy the key to your
.envfile
| Variable | Description | Required | Default |
|---|---|---|---|
IMPROVMX_API_KEY |
Your ImprovMX API key | ✅ | - |
DOMAIN |
Your domain name | ✅ | - |
IMPROVMX_API_BASE_URL |
API base URL | ❌ | https://api.improvmx.com |
MAX_ALIASES |
Maximum aliases for your plan | ❌ | 25 |
[#####---------------] 5/25 aliases # Normal usage
[################----] 20/25 aliases ⚠️ 5 slots left # Near limit
[####################] 25/25 aliases ⚠️ LIMIT REACHED # At limit✓ Added alias: sales → [email protected]
✓ Deleted alias: old-contact✗ Authentication failed
Please check your API key in the .env file
✗ Alias already exists
Choose a different alias name
✗ Network error
Check your internet connection and try againUse --json flag for machine-readable output:
# Get alias count programmatically
galias status --json | jq '.current_aliases'
# List aliases in JSON format
galias list --json | jq '.aliases[].alias'
# Add alias silently
galias add bot [email protected] --json --quiet"galias: command not found" or "galias is not recognized"
- The Python Scripts directory is not in your PATH
- Solution 1: Use the automated installer (
install.baton Windows orpython3 install.pyon macOS/Linux) - Solution 2: Manually add Python Scripts directory to PATH
- Solution 3: Use
python -c "import improvctl; improvctl.main()" listinstead
"✗ Missing IMPROVMX_API_KEY in .env"
- Make sure your
.envfile exists and contains your API key - Copy
.env.exampleto.envand fill in your real API key
"✗ Authentication failed"
- Your API key is wrong or missing
- Check your API key in the ImprovMX dashboard
- Ensure your API key starts with
sk_and has no extra spaces - Verify you copied the complete key from the dashboard
"✗ Invalid API key format"
- ImprovMX API keys must start with
sk_ - Check for typos or missing characters in your
.envfile
"Network error"
- Check your internet connection
- Verify the ImprovMX API is accessible
"Alias limit reached"
- You've hit your plan's alias limit (usually 25 for free plans)
- Delete some aliases or upgrade your plan
"Alias already exists"
- Choose a different alias name
- Check existing aliases with
python improvctl.py list
"No such alias"
- Verify the alias name spelling
- List current aliases to see available options
For detailed error information, run with Python's verbose mode:
python -v -c "import galias; galias.main()"This project is open source. Feel free to modify and distribute.
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
- ImprovMX - Email forwarding service
- ImprovMX API Documentation - Official API docs
Made with ❤️ for the terminal enthusiasts