<div align="center">
# 🐧 LinAIx
**AI-Powered Linux Command Assistant**
[](https://www.python.org/downloads/)
[](LICENSE)
[](https://www.linux.org/)
[](https://aistudio.google.com/)
> **Improve your Linux experience with natural language commands powered by Google Gemini AI**
[Features](#-features) • [Linux Distribution Support](#-linux-distribution-support) • [Installation](#-installation) • [Quick Start](#-quick-start) • [Usage](#-usage) • [Configuration](#-configuration) • [Contributing](#-contributing)
</div>
<div align='center'>

*Recording showing Linaix generating different linux command based on user natural language input*
</div>
---
## 🎯 What is LinAIx?
LinAIx is a command-line tool bridging the gap between human language and Linux system shell command. Instead of memorizing complex shell commands, simply describe what you want to do in plain English, and LinAIx will generate and execute the appropriate Linux commands for you.
### 🌟 Why LinAIx?
- **🚀 Productivity Boost**: No more Googling commands or reading man pages
- **🛡️ Safety First**: Built-in protection against destructive operations
- **🧠 AI-Powered**: Leverages Google Gemini for intelligent command generation
- **📚 Learning Tool**: Understand what commands do with detailed explanations
- **⚡ Interactive Mode**: Full AI-powered terminal experience
---
## ✨ Features
### 🤖 **Natural Language Processing**
Turn everyday language into precise Linux commands:
```bash
"Show me all Python files in the current directory"
# Generates: ls *.py
"Create a backup of my documents folder"
# Generates: cp -r ~/Documents ~/Documents_backup_$(date +%Y%m%d)
```
### 🖥️ **Interactive AI Terminal**
Launch a full-featured AI-powered terminal session:
```bash
linaix --interactive
```
- **Smart Context Awareness**: Understands your current directory and system state
- **Real-time Command Generation**: Instantly converts your requests to commands
- **Error Recovery**: Automatically suggests fixes when commands fail
- **Natural Exit**: Simply type `exit` or `quit` to close
### 📚 **Command History & Learning**
- **Persistent History**: All your commands are saved for future reference
- **Command Reuse**: Replay previous commands with `--reuse <index>`
- **Learning Insights**: Understand what each command does with `--verbose`
### 🏷️ **Smart Aliases**
Create custom shortcuts for your most common tasks:
```bash
# Create an alias
linaix --add-alias listpy "list all python files"
# Use the alias
linaix listpy
```
### 🛡️ **Safety Features**
- **Destructive Command Warnings**: Confirmation prompts for dangerous operations
- **Safe Command Generation**: AI prioritizes non-destructive solutions
- **Error Handling**: Graceful handling of command failures with alternative suggestions
### ⚙️ **Flexible Configuration**
- **Interactive Setup**: Easy setup with `--setup` command
- **JSON Configuration**: Easy-to-edit settings file at `~/.linaix/config.json`
- **Environment Variables**: Support for `GOOGLE_API_KEY` environment variable
- **Model Selection**: Choose your preferred Gemini model during setup
- **Custom Aliases**: Persistent alias management
---
## 🐧 Linux Distribution Support
LinAIx automatically detects your Linux distribution and generates command based on your specific system.
#### **Supported Linux Distributions**
<table>
<tr>
<td align="center">
<a href="https://ubuntu.com/">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/a/ab/Logo-ubuntu_cof-orange-hex.svg/120px-Logo-ubuntu_cof-orange-hex.svg.png" width="80" height="80" alt="Ubuntu"/>
<br><b>Ubuntu</b>
</a>
</td>
<td align="center">
<a href="https://www.debian.org/">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Debian-OpenLogo.svg/120px-Debian-OpenLogo.svg.png" width="80" height="80" alt="Debian"/>
<br><b>Debian</b>
</a>
</td>
<td align="center">
<a href="https://getfedora.org/">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Fedora_icon_%282021%29.svg/120px-Fedora_icon_%282021%29.svg.png" width="80" height="80" alt="Fedora"/>
<br><b>Fedora</b>
</a>
</td>
<td align="center">
<a href="https://www.archlinux.org/">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/a/a5/Archlinux-icon-crystal-64.svg/120px-Archlinux-icon-crystal-64.svg.png" width="80" height="80" alt="Arch Linux"/>
<br><b>Arch Linux</b>
</a>
</td>
</tr>
<tr>
<td align="center">
<a href="https://www.centos.org/">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b4/CentOS_logo.svg/120px-CentOS_logo.svg.png" width="80" height="80" alt="CentOS"/>
<br><b>CentOS</b>
</a>
</td>
<td align="center">
<a href="https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Red_Hat_logo.svg/120px-Red_Hat_logo.svg.png" width="80" height="80" alt="Red Hat"/>
<br><b>Red Hat</b>
</a>
</td>
<td align="center">
<a href="https://www.opensuse.org/">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b5/OpenSUSE_Logo.svg/120px-OpenSUSE_Logo.svg.png" width="80" height="80" alt="openSUSE"/>
<br><b>openSUSE</b>
</a>
</td>
<td align="center">
<a href="https://linuxmint.com/">
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/3a/Logo_Linux_Mint.png/120px-Logo_Linux_Mint.png" width="80" height="80" alt="Linux Mint"/>
<br><b>Linux Mint</b>
</a>
</td>
</tr>
</table>
*LinAIx works with all major Linux distributions and automatically adapts to your system*
</div>
## 🚀 Installation
### Prerequisites
- **Python 3.8+**
- **Linux Distribution** (Ubuntu, Debian, Fedora, Arch Linux, CentOS, Red Hat, openSUSE, Linux Mint, etc.)
- **Google Gemini API Key** ([Get one here](https://aistudio.google.com/app/apikey))
### Install LinAIx
LinAIx using pip:
```bash
pip install linaix
```
After installation, you can run LinAIx directly:
```bash
linaix --help
```
### Configure Your API Key
**Option A: Interactive Setup (Recommended)**
```bash
linaix --setup
```
This will guide you through setting up your API key and choosing your preferred Gemini model interactively.
**Option B: Environment Variable**
```bash
export GOOGLE_API_KEY='your-api-key-here'
```
**Option C: Manual Configuration**
```bash
# The config file will be created automatically at ~/.linaix/config.json
# You can edit it manually if needed
nano ~/.linaix/config.json
```
**Available Models:**
- `gemini-1.5-flash` (fast, good for most tasks) - **Default**
- `gemini-1.5-pro` (more capable, slower)
- `gemini-pro` (legacy model)
---
## 🎮 Quick Start
### 1. **Generate Your First Command**
```bash
linaix "list all files in the current directory"
```
*LinAIx automatically detects your Linux distribution and optimizes commands for your system*
### 2. **Launch Interactive Mode**
```bash
linaix --interactive
```
### 3. **Create Your First Alias**
```bash
linaix --add-alias cleanup "remove all temporary files"
```
---
## 📖 Usage Guide
### **Interactive Mode** 🖥️
Run LinAIx in interactive mode for a natural language terminal experience:
```bash
linaix --interactive
```
This will run the LinAIx natural language terminal directly in your current terminal window.
**Interactive Mode Features:**
- 🎯 **Natural Language Input**: Type what you want to do in plain English
- 🔄 **Real-time Execution**: Commands are generated and executed immediately
- 📊 **Visual Feedback**: Clear success/error indicators
- 🧠 **Context Awareness**: AI understands your current directory and system state
- 🔧 **Error Recovery**: Automatic suggestions when commands fail
- 🖥️ **Current Terminal**: Runs in your current terminal session (no new windows)
**Example Interactive Session:**
```
user@host:/home/user $ create a new project folder called myapp
Generated Command: mkdir -p myapp
✓ Success
user@host:/home/user $ list all files in the project
Generated Command: ls -la myapp/
✓ Success
user@host:/home/user $ install git if it's not already installed
Generated Command: sudo apt update && sudo apt install -y git
✓ Success
```
### **One-off Commands** ⚡
Generate commands for specific tasks:
```bash
# Basic command generation
linaix "find all PDF files in the current directory"
# With explanation
linaix --verbose "create a backup of my documents"
# Complex tasks
linaix "install the latest version of Node.js and npm"
```
### **Alias Management** 🏷️
Create and manage custom shortcuts:
```bash
# Add an alias
linaix --add-alias listpy "list all python files"
linaix --add-alias cleanup "remove all .tmp files"
# Use aliases
linaix listpy
linaix cleanup
# List all aliases
linaix --list-aliases
# Remove an alias
linaix --remove-alias cleanup
```
### **Command History** 📚
Access and reuse previous commands:
```bash
# View command history
linaix --history
# Reuse a specific command
linaix --reuse 2
```
---
## ⚙️ Configuration
### **Configuration File Location**
```
~/.linaix/config.json
```
The configuration file is automatically created on first run with sensible defaults. You can modify it manually or use the interactive setup command.
### **Configuration Options**
```json
{
"api_key": "your-gemini-api-key",
"model": "gemini-1.5-flash",
"auto_run_safe": false,
"aliases": {
"listpy": "list all python files",
"cleanup": "remove temporary files"
}
}
```
### **Setup Commands**
```bash
# Interactive setup (recommended)
linaix --setup
# Set API key directly
linaix --set-api-key "your-api-key-here"
```
### **Environment Variables**
```bash
export GOOGLE_API_KEY="your-api-key-here"
```
---
## 🖼️ Screenshots
<div align="center">
### Interactive Mode Demo

*Screenshot showing the AI-powered terminal interface with natural language input and command generation*
</div>
---
## 🔧 Troubleshooting
### **Common Issues**
#### **"No Google API key found"**
```bash
# Use the interactive setup (recommended)
linaix --setup
# Or set your API key via environment variable
export GOOGLE_API_KEY="your-api-key-here"
# Or set API key directly
linaix --set-api-key "your-api-key-here"
```
#### **"Permission denied"**
```bash
# Try reinstalling the package
pip install --force-reinstall linaix
# Or check if the command is in your PATH
which linaix
```
---
## 🤝 Contributing
We welcome contributions! Here's how you can help:
### **Getting Started**
1. Fork the repository
2. Create a feature branch: `git checkout -b feature/amazing-feature`
3. Make your changes
4. Test thoroughly
5. Commit your changes: `git commit -m 'Add amazing feature'`
6. Push to the branch: `git push origin feature/amazing-feature`
7. Open a Pull Request
### **Development Setup**
```bash
git clone https://github.com/AdirAli/linaix.git
cd linaix
pip install -e .
```
**Note**: For development and contributing, you can install from source using the above commands. For regular usage, use `pip install linaix`.
### **Code Style**
- Follow PEP 8 guidelines
- Add type hints where appropriate
- Include docstrings for new functions
- Write tests for new features
---
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
<div align="center">
**Made wit for the Linux community**
[](https://github.com/yourusername/linaix)
[](https://github.com/yourusername/linaix)
[](https://github.com/yourusername/linaix/issues)
</div>
Raw data
{
"_id": null,
"home_page": "https://github.com/AdirAli/linaix",
"name": "linaix",
"maintainer": "Adir Ali Yerima",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "terminal, linux, nlp, cli",
"author": "Adir Ali Yerima",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/3e/a2/dd1c6a7efde74a5e7d3dd9cb21e4b22df21752c6546d3feb46107ccd8118/linaix-0.1.2.tar.gz",
"platform": null,
"description": "<div align=\"center\">\r\n\r\n# \ud83d\udc27 LinAIx\r\n\r\n**AI-Powered Linux Command Assistant**\r\n\r\n[](https://www.python.org/downloads/)\r\n[](LICENSE)\r\n[](https://www.linux.org/)\r\n[](https://aistudio.google.com/)\r\n\r\n> **Improve your Linux experience with natural language commands powered by Google Gemini AI**\r\n\r\n[Features](#-features) \u2022 [Linux Distribution Support](#-linux-distribution-support) \u2022 [Installation](#-installation) \u2022 [Quick Start](#-quick-start) \u2022 [Usage](#-usage) \u2022 [Configuration](#-configuration) \u2022 [Contributing](#-contributing)\r\n\r\n</div>\r\n\r\n<div align='center'>\r\n\r\n\r\n\r\n*Recording showing Linaix generating different linux command based on user natural language input*\r\n</div>\r\n---\r\n\r\n## \ud83c\udfaf What is LinAIx?\r\n\r\nLinAIx is a command-line tool bridging the gap between human language and Linux system shell command. Instead of memorizing complex shell commands, simply describe what you want to do in plain English, and LinAIx will generate and execute the appropriate Linux commands for you.\r\n\r\n### \ud83c\udf1f Why LinAIx?\r\n\r\n- **\ud83d\ude80 Productivity Boost**: No more Googling commands or reading man pages\r\n- **\ud83d\udee1\ufe0f Safety First**: Built-in protection against destructive operations\r\n- **\ud83e\udde0 AI-Powered**: Leverages Google Gemini for intelligent command generation\r\n- **\ud83d\udcda Learning Tool**: Understand what commands do with detailed explanations\r\n- **\u26a1 Interactive Mode**: Full AI-powered terminal experience\r\n\r\n---\r\n\r\n## \u2728 Features\r\n\r\n### \ud83e\udd16 **Natural Language Processing**\r\nTurn everyday language into precise Linux commands:\r\n```bash\r\n\"Show me all Python files in the current directory\"\r\n# Generates: ls *.py\r\n\r\n\"Create a backup of my documents folder\"\r\n# Generates: cp -r ~/Documents ~/Documents_backup_$(date +%Y%m%d)\r\n```\r\n\r\n### \ud83d\udda5\ufe0f **Interactive AI Terminal**\r\nLaunch a full-featured AI-powered terminal session:\r\n```bash\r\nlinaix --interactive\r\n```\r\n- **Smart Context Awareness**: Understands your current directory and system state\r\n- **Real-time Command Generation**: Instantly converts your requests to commands\r\n- **Error Recovery**: Automatically suggests fixes when commands fail\r\n- **Natural Exit**: Simply type `exit` or `quit` to close\r\n\r\n### \ud83d\udcda **Command History & Learning**\r\n- **Persistent History**: All your commands are saved for future reference\r\n- **Command Reuse**: Replay previous commands with `--reuse <index>`\r\n- **Learning Insights**: Understand what each command does with `--verbose`\r\n\r\n### \ud83c\udff7\ufe0f **Smart Aliases**\r\nCreate custom shortcuts for your most common tasks:\r\n```bash\r\n# Create an alias\r\nlinaix --add-alias listpy \"list all python files\"\r\n\r\n# Use the alias\r\nlinaix listpy\r\n```\r\n\r\n### \ud83d\udee1\ufe0f **Safety Features**\r\n- **Destructive Command Warnings**: Confirmation prompts for dangerous operations\r\n- **Safe Command Generation**: AI prioritizes non-destructive solutions\r\n- **Error Handling**: Graceful handling of command failures with alternative suggestions\r\n\r\n### \u2699\ufe0f **Flexible Configuration**\r\n- **Interactive Setup**: Easy setup with `--setup` command\r\n- **JSON Configuration**: Easy-to-edit settings file at `~/.linaix/config.json`\r\n- **Environment Variables**: Support for `GOOGLE_API_KEY` environment variable\r\n- **Model Selection**: Choose your preferred Gemini model during setup\r\n- **Custom Aliases**: Persistent alias management\r\n\r\n---\r\n\r\n## \ud83d\udc27 Linux Distribution Support\r\n\r\nLinAIx automatically detects your Linux distribution and generates command based on your specific system. \r\n\r\n#### **Supported Linux Distributions**\r\n\r\n<table>\r\n<tr>\r\n<td align=\"center\">\r\n<a href=\"https://ubuntu.com/\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/a/ab/Logo-ubuntu_cof-orange-hex.svg/120px-Logo-ubuntu_cof-orange-hex.svg.png\" width=\"80\" height=\"80\" alt=\"Ubuntu\"/>\r\n<br><b>Ubuntu</b>\r\n</a>\r\n</td>\r\n<td align=\"center\">\r\n<a href=\"https://www.debian.org/\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Debian-OpenLogo.svg/120px-Debian-OpenLogo.svg.png\" width=\"80\" height=\"80\" alt=\"Debian\"/>\r\n<br><b>Debian</b>\r\n</a>\r\n</td>\r\n<td align=\"center\">\r\n<a href=\"https://getfedora.org/\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Fedora_icon_%282021%29.svg/120px-Fedora_icon_%282021%29.svg.png\" width=\"80\" height=\"80\" alt=\"Fedora\"/>\r\n<br><b>Fedora</b>\r\n</a>\r\n</td>\r\n<td align=\"center\">\r\n<a href=\"https://www.archlinux.org/\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/a/a5/Archlinux-icon-crystal-64.svg/120px-Archlinux-icon-crystal-64.svg.png\" width=\"80\" height=\"80\" alt=\"Arch Linux\"/>\r\n<br><b>Arch Linux</b>\r\n</a>\r\n</td>\r\n</tr>\r\n<tr>\r\n<td align=\"center\">\r\n<a href=\"https://www.centos.org/\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/b/b4/CentOS_logo.svg/120px-CentOS_logo.svg.png\" width=\"80\" height=\"80\" alt=\"CentOS\"/>\r\n<br><b>CentOS</b>\r\n</a>\r\n</td>\r\n<td align=\"center\">\r\n<a href=\"https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/e/e0/Red_Hat_logo.svg/120px-Red_Hat_logo.svg.png\" width=\"80\" height=\"80\" alt=\"Red Hat\"/>\r\n<br><b>Red Hat</b>\r\n</a>\r\n</td>\r\n<td align=\"center\">\r\n<a href=\"https://www.opensuse.org/\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/b/b5/OpenSUSE_Logo.svg/120px-OpenSUSE_Logo.svg.png\" width=\"80\" height=\"80\" alt=\"openSUSE\"/>\r\n<br><b>openSUSE</b>\r\n</a>\r\n</td>\r\n<td align=\"center\">\r\n<a href=\"https://linuxmint.com/\">\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/3/3a/Logo_Linux_Mint.png/120px-Logo_Linux_Mint.png\" width=\"80\" height=\"80\" alt=\"Linux Mint\"/>\r\n<br><b>Linux Mint</b>\r\n</a>\r\n</td>\r\n</tr>\r\n</table>\r\n\r\n*LinAIx works with all major Linux distributions and automatically adapts to your system*\r\n\r\n</div>\r\n\r\n## \ud83d\ude80 Installation\r\n\r\n### Prerequisites\r\n\r\n- **Python 3.8+**\r\n- **Linux Distribution** (Ubuntu, Debian, Fedora, Arch Linux, CentOS, Red Hat, openSUSE, Linux Mint, etc.)\r\n- **Google Gemini API Key** ([Get one here](https://aistudio.google.com/app/apikey))\r\n\r\n### Install LinAIx\r\n\r\n LinAIx using pip:\r\n\r\n```bash\r\npip install linaix\r\n```\r\n\r\nAfter installation, you can run LinAIx directly:\r\n```bash\r\nlinaix --help\r\n```\r\n\r\n### Configure Your API Key\r\n\r\n**Option A: Interactive Setup (Recommended)**\r\n```bash\r\nlinaix --setup\r\n```\r\nThis will guide you through setting up your API key and choosing your preferred Gemini model interactively.\r\n\r\n**Option B: Environment Variable**\r\n```bash\r\nexport GOOGLE_API_KEY='your-api-key-here'\r\n```\r\n\r\n**Option C: Manual Configuration**\r\n```bash\r\n# The config file will be created automatically at ~/.linaix/config.json\r\n# You can edit it manually if needed\r\nnano ~/.linaix/config.json\r\n```\r\n\r\n**Available Models:**\r\n- `gemini-1.5-flash` (fast, good for most tasks) - **Default**\r\n- `gemini-1.5-pro` (more capable, slower)\r\n- `gemini-pro` (legacy model)\r\n\r\n---\r\n\r\n## \ud83c\udfae Quick Start\r\n\r\n### 1. **Generate Your First Command**\r\n```bash\r\nlinaix \"list all files in the current directory\"\r\n```\r\n*LinAIx automatically detects your Linux distribution and optimizes commands for your system*\r\n\r\n### 2. **Launch Interactive Mode**\r\n```bash\r\nlinaix --interactive\r\n```\r\n\r\n### 3. **Create Your First Alias**\r\n```bash\r\nlinaix --add-alias cleanup \"remove all temporary files\"\r\n```\r\n\r\n---\r\n\r\n## \ud83d\udcd6 Usage Guide\r\n\r\n### **Interactive Mode** \ud83d\udda5\ufe0f\r\nRun LinAIx in interactive mode for a natural language terminal experience:\r\n\r\n```bash\r\nlinaix --interactive\r\n```\r\n\r\nThis will run the LinAIx natural language terminal directly in your current terminal window.\r\n\r\n**Interactive Mode Features:**\r\n- \ud83c\udfaf **Natural Language Input**: Type what you want to do in plain English\r\n- \ud83d\udd04 **Real-time Execution**: Commands are generated and executed immediately\r\n- \ud83d\udcca **Visual Feedback**: Clear success/error indicators\r\n- \ud83e\udde0 **Context Awareness**: AI understands your current directory and system state\r\n- \ud83d\udd27 **Error Recovery**: Automatic suggestions when commands fail\r\n- \ud83d\udda5\ufe0f **Current Terminal**: Runs in your current terminal session (no new windows)\r\n\r\n**Example Interactive Session:**\r\n```\r\nuser@host:/home/user $ create a new project folder called myapp\r\nGenerated Command: mkdir -p myapp\r\n\u2713 Success\r\n\r\nuser@host:/home/user $ list all files in the project\r\nGenerated Command: ls -la myapp/\r\n\u2713 Success\r\n\r\nuser@host:/home/user $ install git if it's not already installed\r\nGenerated Command: sudo apt update && sudo apt install -y git\r\n\u2713 Success\r\n```\r\n\r\n### **One-off Commands** \u26a1\r\nGenerate commands for specific tasks:\r\n\r\n```bash\r\n# Basic command generation\r\nlinaix \"find all PDF files in the current directory\"\r\n\r\n# With explanation\r\nlinaix --verbose \"create a backup of my documents\"\r\n\r\n# Complex tasks\r\nlinaix \"install the latest version of Node.js and npm\"\r\n```\r\n\r\n### **Alias Management** \ud83c\udff7\ufe0f\r\nCreate and manage custom shortcuts:\r\n\r\n```bash\r\n# Add an alias\r\nlinaix --add-alias listpy \"list all python files\"\r\nlinaix --add-alias cleanup \"remove all .tmp files\"\r\n\r\n# Use aliases\r\nlinaix listpy\r\nlinaix cleanup\r\n\r\n# List all aliases\r\nlinaix --list-aliases\r\n\r\n# Remove an alias\r\nlinaix --remove-alias cleanup\r\n```\r\n\r\n### **Command History** \ud83d\udcda\r\nAccess and reuse previous commands:\r\n\r\n```bash\r\n# View command history\r\nlinaix --history\r\n\r\n# Reuse a specific command\r\nlinaix --reuse 2\r\n```\r\n\r\n---\r\n\r\n## \u2699\ufe0f Configuration\r\n\r\n### **Configuration File Location**\r\n```\r\n~/.linaix/config.json\r\n```\r\n\r\nThe configuration file is automatically created on first run with sensible defaults. You can modify it manually or use the interactive setup command.\r\n\r\n### **Configuration Options**\r\n```json\r\n{\r\n \"api_key\": \"your-gemini-api-key\",\r\n \"model\": \"gemini-1.5-flash\",\r\n \"auto_run_safe\": false,\r\n \"aliases\": {\r\n \"listpy\": \"list all python files\",\r\n \"cleanup\": \"remove temporary files\"\r\n }\r\n}\r\n```\r\n\r\n### **Setup Commands**\r\n```bash\r\n# Interactive setup (recommended)\r\nlinaix --setup\r\n\r\n# Set API key directly\r\nlinaix --set-api-key \"your-api-key-here\"\r\n```\r\n\r\n### **Environment Variables**\r\n```bash\r\nexport GOOGLE_API_KEY=\"your-api-key-here\"\r\n```\r\n\r\n---\r\n\r\n## \ud83d\uddbc\ufe0f Screenshots\r\n\r\n<div align=\"center\">\r\n\r\n### Interactive Mode Demo\r\n\r\n\r\n*Screenshot showing the AI-powered terminal interface with natural language input and command generation*\r\n\r\n</div>\r\n\r\n---\r\n\r\n## \ud83d\udd27 Troubleshooting\r\n\r\n### **Common Issues**\r\n\r\n#### **\"No Google API key found\"**\r\n```bash\r\n# Use the interactive setup (recommended)\r\nlinaix --setup\r\n\r\n# Or set your API key via environment variable\r\nexport GOOGLE_API_KEY=\"your-api-key-here\"\r\n\r\n# Or set API key directly\r\nlinaix --set-api-key \"your-api-key-here\"\r\n```\r\n\r\n#### **\"Permission denied\"**\r\n```bash\r\n# Try reinstalling the package\r\npip install --force-reinstall linaix\r\n\r\n# Or check if the command is in your PATH\r\nwhich linaix\r\n```\r\n\r\n---\r\n\r\n## \ud83e\udd1d Contributing\r\n\r\nWe welcome contributions! Here's how you can help:\r\n\r\n### **Getting Started**\r\n1. Fork the repository\r\n2. Create a feature branch: `git checkout -b feature/amazing-feature`\r\n3. Make your changes\r\n4. Test thoroughly\r\n5. Commit your changes: `git commit -m 'Add amazing feature'`\r\n6. Push to the branch: `git push origin feature/amazing-feature`\r\n7. Open a Pull Request\r\n\r\n### **Development Setup**\r\n```bash\r\ngit clone https://github.com/AdirAli/linaix.git\r\ncd linaix\r\npip install -e .\r\n```\r\n\r\n**Note**: For development and contributing, you can install from source using the above commands. For regular usage, use `pip install linaix`.\r\n\r\n### **Code Style**\r\n- Follow PEP 8 guidelines\r\n- Add type hints where appropriate\r\n- Include docstrings for new functions\r\n- Write tests for new features\r\n\r\n---\r\n\r\n## \ud83d\udcc4 License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n\r\n<div align=\"center\">\r\n\r\n**Made wit for the Linux community**\r\n\r\n[](https://github.com/yourusername/linaix)\r\n[](https://github.com/yourusername/linaix)\r\n[](https://github.com/yourusername/linaix/issues)\r\n\r\n</div>\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A Linux terminal interface with natural language processing capabilities",
"version": "0.1.2",
"project_urls": {
"Bug Tracker": "https://github.com/AdirAli/linaix/issues",
"Documentation": "https://github.com/AdirAli/linaix#readme",
"Homepage": "https://github.com/AdirAli/linaix",
"Repository": "https://github.com/AdirAli/linaix"
},
"split_keywords": [
"terminal",
" linux",
" nlp",
" cli"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "4aee2d23746e9343f447398bb505e9fe668734cc8d318f976843634b8deeadfc",
"md5": "5078eaa0dd275240168a7e0e1a63b951",
"sha256": "e8c7bfe875e8ca26f00ea3ad4d2a570f7a23313b7426e8cd4424c0e1695badf8"
},
"downloads": -1,
"filename": "linaix-0.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5078eaa0dd275240168a7e0e1a63b951",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 20361,
"upload_time": "2025-08-07T20:15:06",
"upload_time_iso_8601": "2025-08-07T20:15:06.394619Z",
"url": "https://files.pythonhosted.org/packages/4a/ee/2d23746e9343f447398bb505e9fe668734cc8d318f976843634b8deeadfc/linaix-0.1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3ea2dd1c6a7efde74a5e7d3dd9cb21e4b22df21752c6546d3feb46107ccd8118",
"md5": "be56babdce1ce23ada1321e8369a7363",
"sha256": "0bdbd4470fa415f0dbf7ea039021f3efaddce18dde2aafb8a119b58de2340331"
},
"downloads": -1,
"filename": "linaix-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "be56babdce1ce23ada1321e8369a7363",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 12135719,
"upload_time": "2025-08-07T20:15:15",
"upload_time_iso_8601": "2025-08-07T20:15:15.893423Z",
"url": "https://files.pythonhosted.org/packages/3e/a2/dd1c6a7efde74a5e7d3dd9cb21e4b22df21752c6546d3feb46107ccd8118/linaix-0.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-07 20:15:15",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "AdirAli",
"github_project": "linaix",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "google-generativeai",
"specs": [
[
">=",
"0.3.0"
]
]
},
{
"name": "prompt-toolkit",
"specs": [
[
">=",
"3.0.0"
]
]
},
{
"name": "pathlib2",
"specs": [
[
">=",
"2.3.0"
]
]
}
],
"lcname": "linaix"
}