Commandify is an intelligent terminal assistant that translates English descriptions into Linux commands using Google's Gemini AI. It helps both beginners and experienced users interact with the Linux terminal more naturally.
- 🤖 AI-Powered Command Translation: Simply describe what you want to do in English
- 🔄 Multiple Suggestions: Get alternative commands for the same task
- 🛡️ Smart Sudo Detection: Automatically detects when commands need elevated privileges
⚠️ Error Handling: Helpful options when commands fail- 💡 Interactive Interface: User-friendly terminal UI with color coding
- ⚡ Quick Access: Custom alias for faster access
- Download the latest release from GitHub Releases
- Extract the archive:
tar -xzf commandify-linux-x64.tar.gz- Make it executable and move to your bin directory:
chmod +x commandify
sudo mv commandify /usr/local/bin/- Get your Gemini API key from Google AI Studio
- The app will prompt you to enter it on first run
- Your key will be saved securely for future use
- Run the program:
commandify- Clone the repository:
git clone https://github.com/ahmedeid5/commandify.git
cd commandify- Install dependencies:
pip install -r requirements.txt- Set up your Gemini API key:
- Get your API key from Google AI Studio
- The app will prompt you to enter it on first run
Run the program:
python3 src/main.pyOr use the configured alias (default: 't'):
t show running processes
t check disk space- Enter command: Input your command in English
- Change API key: Update your Gemini API key
- Change alias: Modify the quick access command
- Help: Show detailed usage instructions
- Exit: Close the application
- "show all running processes"
- "create a new directory called projects"
- "check system memory usage"
- "find all pdf files in downloads folder"
- "show network connections"
- Automatically detects commands that might need sudo
- Prompts for confirmation before adding sudo
- Helps prevent permission-related errors
When a command fails, you can:
- Retry with sudo if it's a permission issue
- Modify the command directly
- Get more command suggestions
- Cancel and start over
- Get multiple alternative commands
- View detailed descriptions for each suggestion
- Modify suggestions before execution
- Chain multiple commands together
Contributions are welcome! Please feel free to submit pull requests.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Python 3.8 or higher
- Required Python packages (installed via requirements.txt):
- requests
- prompt_toolkit
- rich
- google-ai-generativelanguage
- google-auth
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Google's Gemini AI
- Uses the Rich library for terminal styling
- Inspired by the need to make terminal commands more accessible