Shell-AI: let AI write your shell commands Shell-AI ( ) is a CLI utility that brings the power of natural language understanding to your command line. Simply input what you want to do in natural language, and will suggest single-line commands that achieve your intent. Under the hood, Shell-AI leverages the LangChain for LLM use and builds on the excellent InquirerPy for the interactive CLI. Installation You can install Shell-AI directly from PyPI using pip: Note that
on Linux, Python 3. After installation, you can invoke the utility using the command. Usage To use Shell-AI, open your terminal and type: Shell-AI will then suggest 3 commands to fulfill your request: Features **Natural Language Input**: Describe what you want to do in plain English (or other supported languages). **Command Suggestions**: Get single-line command suggestions that accomplish what you asked for. **Cross-Platform**: Works on Linux, macOS, and Windows. **Azure Compatibility**: Shell-AI now supports Azure
OpenAI deployments. Configuration Shell-AI can be configured through environment variables or a config file located at (Linux/MacOS) or (Windows). Environment Variables : (Required) Your OpenAI API key, leave empty if you use ollama : The OpenAI model to use (default: "gpt-3. 5-turbo") : The OpenAI API / OpenAI compatible API endpoint to use (default: None) : (Required if using Groq) Your Groq API key : Number of suggestions to generate (default: 3) : Skip command confirmation when set to "true" : Skip writing to
shell history when set to "true" : Choose between "openai", "ollama", "azure", or "groq" (default: "groq") : Controls randomness in the output (default: 0. 05) make output more focused and deterministic, while higher values (e. : Enable context mode when set to "true" (Note: outputs will be sent to the API) : The Ollama model to use (default: "phi3. 5") : The Ollama endpoint to use (default: " Config File Example Config Example for OpenAI compatible Config example for MistralAI Config Example for Ollama The application
will read from this file if it exists, overriding any existing environment variables. Run the application after setting these configurations. Using with Groq To use Shell AI with Groq: 1. Set the following environment variables: Contributing This implementation can be made much smarter! Contribute your ideas as Pull Requests and make AI Shell better for everyone. License Shell-AI is licensed under the MIT License.
Frequently asked questions
How many stars and forks are recorded?
ricklamers/shell-ai has 1,162 stars and 80 forks.
What is the repository rank?
ricklamers/shell-ai is ranked 18,935.
What language and category are recorded?
ricklamers/shell-ai has 1,162 stars, uses Python and belongs to Applications.
Which repository is closest in rank?
ricklamers/shell-ai is compared with github/gh-copilot, ranked 18,938 with 1,153 stars.
README
Shell-AI: let AI write your shell commands
Shell-AI (shai) is a CLI utility that brings the power of natural language understanding to your command line. Simply input what you want to do in natural language, and shai will suggest single-line commands that achieve your intent. Under the hood, Shell-AI leverages the LangChain for LLM use and builds on the excellent InquirerPy for the interactive CLI.
Installation
You can install Shell-AI directly from PyPI using pip:
pip install shell-ai
Note that on Linux, Python 3.10 or later is required.
After installation, you can invoke the utility using the shai command.
Usage
To use Shell-AI, open your terminal and type:
shai run terraform dry run thingy
Shell-AI will then suggest 3 commands to fulfill your request:
terraform plan
terraform plan -input=false
terraform plan
Features
Natural Language Input: Describe what you want to do in plain English (or other supported languages).
Command Suggestions: Get single-line command suggestions that accomplish what you asked for.
Cross-Platform: Works on Linux, macOS, and Windows.
Azure Compatibility: Shell-AI now supports Azure OpenAI deployments.
Configuration
Shell-AI can be configured through environment variables or a config file located at ~/.config/shell-ai/config.json (Linux/MacOS) or %APPDATA%\shell-ai\config.json (Windows).
Environment Variables
OPENAI_API_KEY: (Required) Your OpenAI API key, leave empty if you use ollama
OPENAI_MODEL: The OpenAI model to use (default: "gpt-3.5-turbo")
OPENAI_API_BASE: The OpenAI API / OpenAI compatible API endpoint to use (default: None)
GROQ_API_KEY: (Required if using Groq) Your Groq API key
SHAI_SUGGESTION_COUNT: Number of suggestions to generate (default: 3)
SHAI_SKIP_CONFIRM: Skip command confirmation when set to "true"
SHAI_SKIP_HISTORY: Skip writing to shell history when set to "true"
SHAI_API_PROVIDER: Choose between "openai", "ollama", "azure", or "groq" (default: "groq")
SHAI_TEMPERATURE: Controls randomness in the output (default: 0.05). Lower values (e.g., 0.05) make output more focused and deterministic, while higher values (e.g., 0.7) make it more creative and varied.
CTX: Enable context mode when set to "true" (Note: outputs will be sent to the API)
OLLAMA_MODEL: The Ollama model to use (default: "phi3.5")