ShellMindPy 0.0.1
AI-Powered Command-Line Assistant
Requires Python: >=3.9

# ShellMind: AI-Powered Command-Line Assistant 🧠💻

ShellMind is an AI-powered command-line tool designed to translate natural language queries into executable shell commands for various operating systems, including Linux distributions (Ubuntu, CentOS, Debian) and macOS.

## ✨ Features

*   **Natural Language Processing:** Understands plain English commands.
*   **Cross-Platform:** Designed to work on Linux (Ubuntu, CentOS, Debian) and macOS.
*   **AI Integration:** Leverages AI (initially OpenAI) to generate shell commands.
*   **Configurable:** API keys and execution modes (confirm before run, or run automatically) can be configured.
*   **Safe Execution:** Includes a confirmation step before executing potentially system-altering commands.


## 🛠️📦 Setup and Installation

1.  **Prerequisites:**
    *   Python 3.x installed.
    *   An API key for an AI provider (e.g., OpenAI,DeepSeek,Grok).

2.  **Installation:**
    
    You can install the project using one of the following two methods:
    
    **Method 1: Using a Virtual Environment (Recommended)**
    *   Clone the repository (once available on a version control system like Git).
     ```bash
        git clone https://github.com/aliasadi313/ShellMind 
     ```

    *   Navigate to the project directory.
        ```bash 
        cd shellmind 
        ```
    *   Create a virtual environment (recommended):
        ```bash
        python3 -m venv .venv
        source .venv/bin/activate 
        ```
    *   Install dependencies:
        ```bash
        pip install -r requirements.txt
        ```
    **Method 2: Editable Install**
    *   Clone the repository (once available on a version control system like Git). <br>
     ```bash 
     git clone https://github.com/aliasadi313/ShellMind 
     ```
    *   Navigate to the project directory.
    ```bash
     cd shellmind 
     ```
    *  then run 
    ```bash 
    pip install -e .
    ```

<br>

3.  **Configuration:**
    ShellMind uses a configuration file (`config.yaml` in a directory like `~/.config/shellmind/`) to store settings. Upon first run, it might create a default one.
    You will need to set your AI provider's API key. This can be done via CLI commands provided by ShellMind once it's more fully developed, or by manually editing the configuration file.

    Example (conceptual) CLI commands for configuration:
    ```bash
    # shellmind config set api_key YOUR_AI_API_KEY
    # shellmind config set base_url YOUR_BASE_URL
    # shellmind config set execution_mode confirm or 'auto'
    ```

## 🚀 Usage

Once installed and configured, you would run ShellMind from your terminal:

```bash
# Example: To list files in the current directory
shellmind query "list all files here"

# Example: To install a package (e.g., htop) on a Debian-based system
shellmind "install htop"
```

The tool would then translate your query into the appropriate shell command (e.g., `ls -l` or `sudo apt install htop`), ask for confirmation (if in confirm mode), and then execute it.



## 🤝 Contributing

We welcome and appreciate contributions from the community! Whether you're fixing bugs, adding new features, improving documentation, or just sharing ideas—your input makes this project better.

## 🌟 Show Your Support

If you find this project useful, consider giving it a ⭐ on GitHub and sharing it with others. Every bit helps grow the community!

## Disclaimer

This is a conceptual project. Executing AI-generated commands directly on a system can be risky. Always review commands generated by any AI tool before execution, especially those requiring administrative privileges (e.g., using `sudo`). The developers of this conceptual tool are not responsible for any damage caused by its use or misuse.