📟 Caller Terminal
Caller Terminal is a blunt but helpful PowerShell assistant for beginners, lost users, or anyone who wants quick, no-nonsense terminal help — powered by LLaMA API.
It translates plain English questions into real PowerShell commands, provides quick responses, and even lets you execute suggested commands with a single click — all inside a terminal-like interface. ⚡ Features
✅ Natural Language to PowerShell command translation ✅ Real-time LLaMA API streaming responses ✅ Interactive, terminal-style Textual UI ✅ Click-to-run suggested PowerShell commands ✅ Fully async, responsive architecture ✅ Cross-platform ready (but optimized for Windows with PowerShell 7+) ✅ Packaged as a standalone .exe with PyInstaller 🛠 Requirements
Python 3.11+
PowerShell 7+ installed and accessible via pwsh in PATH
LLaMA API key from llama.com
📦 Installation
Clone the repository:
git clone https://github.com/yourusername/caller-terminal.git cd caller-terminal
Install dependencies:
pip install -r requirements.txt
Set your LLaMA API key as an environment variable or let the app prompt you:
$env:LLAMA_API_KEY = "your_api_key_here"
🚀 Usage
Run the application:
python main.py
You’ll see a terminal-style UI where you can type plain English questions, such as:
what is the command to list files?
Caller will stream back the correct PowerShell command:
dir
Click the "Run Command" button to execute the command in your PowerShell environment and see the output in real-time. 🏗 Building a Portable .exe
Make sure pyinstaller is installed:
pip install pyinstaller
Build the portable application:
pyinstaller build.spec
The final .exe will be located in the dist folder. ⚠ Warnings
Caller never performs destructive operations like Remove-Item unless you explicitly ask.
It assumes you're a beginner and keeps answers short and minimal.
No internet connection = no LLaMA API = no functionality.
Only tested on Windows with PowerShell 7+.
💡 Example Prompts You Ask Caller Suggests how do I see all processes? Get-Process make a new directory called test New-Item -ItemType Directory -Name test clear the terminal Clear-Host how to find my IP ipconfig 🔧 Project Structure
caller-terminal/ ├── main.py # Textual UI and main app logic ├── llama_api.py # Handles LLaMA API calls with streaming ├── powershell_runner.py # Runs PowerShell commands asynchronously ├── config.py # Config and API key management ├── requirements.txt # Python dependencies ├── build.spec # PyInstaller spec for building .exe └── README.md # This file
🤝 License
MIT License — free to use, modify, and share. Just don’t be a jerk.