Yappus-Term
A terminal interface for your AI terminal assistant.
Links
README
From the repo.
Yappus Terminal
A terminal interface for your AI terminal assistant, warning it YAPS! xD.
Local options coming soon using ollama.
Features
- Interactive command-line interface for chatting with Gemini AI
- Support for multiple Gemini models including latest Gemini 2.0 Flash
- Persistent chat history saved between sessions
- Command-line arguments for direct queries and configuration
- Interactive commands within the chat interface
- File integration with
/filecommand for context-aware discussions - Directory navigation with built-in file system commands (
/ls,/cd,/pwd) - Command piping to combine shell commands with AI queries
- Export chat history to JSON files
- Configuration management for API keys and model selection
- Syntax highlighting for code blocks in responses
- Tab completion and command history support
- Context awareness that maintains conversation flow
In Works
- Using history for more context.
- Using current directory and .git for more knowledge.
- [ ]Using history to predict next questions and help.
- [ ]Fully local mode using Ollama
- [~(kinda lol) ]RAG support with document indexing
- CMD to include the actual shell commands for better interactive.
Prerequisites
- Rust and Cargo (latest stable version)
- A Google Gemini API key (obtain from https://aistudio.google.com/app/apikey)
Installation
For Debian/Ubuntu-based systems
You can install Yappus directly from our APT repository:
# Download the installation script
curl -O https://raw.githubusercontent.com/MostlyKIGuess/Yappus-Term/main/install-yappus.sh
chmod +x install-yappus.sh
# runnn
./install-yappus.sh
For Arch Linux
Install from the AUR:
yay -S yappus
Or manually using the PKGBUILD:
git clone https://github.com/MostlyKIGuess/Yappus-Term.git
cd Yappus-Term
makepkg -si
For Windows
You can install Yappus directly using our PowerShell script:
# install script
Invoke-WebRequest -Uri https://raw.githubusercontent.com/MostlyKIGuess/Yappus-Term/main/install-yappus.ps1 -OutFile install-yappus.ps1
# (may need to run PowerShell as Administrator for system-wide installation)
powershell -ExecutionPolicy Bypass -File install-yappus.ps1
Setup
-
Clone the repository:
git clone https://github.com/MostlyKIGuess/Yappus-Term.git cd yappus-term -
Run the application and it will prompt you for an API key during first-time setup.
Building
Build the application using Cargo:
cargo build --release
The compiled binary will be available at target/release/yappus.
Installing in your Shell
You can install the application in your PATH using Cargo:
cargo install --path .
Running
You can run the application directly using Cargo:
cargo run
Or execute the binary after building:
./target/release/yappus
Or if installed in your PATH:
yappus
Configuration
Yappus stores its configuration and history files in:
- Linux/macOS:
~/.config/yappus-term/ - Windows:
%APPDATA%\yappus\yappus-term\config\
The following files are created:
api_key- Stores your Gemini API keyconfig.json- Stores your preferred model configurationchat_history.json- Stores your chat historyreadline_history.txt- Stores command history
Usage
Command Line Arguments
# ask a question directly, you can use or not use the double quotes
yappus "How do I find large files in Linux?"
# model change, type just yappus model to see the list
yappus model GEMINI_2_5_PRO
# shows chat history
yappus history
#clears history
yappus clear-history
# run the setup again
yappus setup
# version info
yappus version
# current config display
yappus config
# reset or check the api key
yappus key
yappus key --reset
# analyze a file with optional query
yappus file script.sh "explain this script"
# if you wanna export your chats
yappus export ~/my_chat_export.json
Interactive Mode
Start interactive mode by running yappus without arguments:
- Type your message at the prompt (
>) and press Enter - The AI will respond with its message
- Type
exitto quit the application
Available Interactive Commands
/help- Show help message with available commands/model [name]- View or change the Gemini model/history- View your chat history/clearhistory- Clear your chat history/setup- Run the setup process again/version- Show version information/config- Display current configuration/key [reset]- Check or reset API key/export [path]- Export chat history to file/clear- Clear the terminal screen/file <path> [query]- Include file content in conversation/ls [path]- List directory contents/cd <path>- Change directory/pwd- Show current directoryexit- Exit the application
Advanced Features
Command Piping: Combine shell commands with AI queries
> /ls | what programming languages are used in this project?
> /pwd | what should I do in this directory?
File Context Analysis:
> /file package.json
> What dependencies does this project use?
> How can I optimize this configuration?
Available Models
GEMINI_FLASH(2.0) - Default model, latest and greatestGEMINI_2_5_PRO- Most capable model for complex tasksGEMINI_2_5_FLASH- High performance with excellent reasoningGEMINI_1_5_PRO- Powerful legacy modelGEMINI_1_5_FLASH- Fast and efficient
Switch models anytime:
yappus model GEMINI_2_5_PRO # CLI
/model GEMINI_2_5_PRO # Interactive
APT Building
docker run --rm -v $(pwd):/build -w /build debian:bookworm bash -c "apt-get update && apt-get install -y build-essential debhelper curl pkg-config libssl-dev && curl -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable && export PATH=\$HOME/.cargo/bin:\$PATH && dpkg-buildpackage -us -uc -b -d && cp -v /*.deb /build/"
License
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Collected info
- ★ 18 stars
- Language: Rust
- Source updated: 7/16/2026
Config for your environment
Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "{MCP_ENDPOINT_URL}"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.