Comprehensive AI-powered CLI assistant with autonomous agent capabilities
Project description
Kritrima AI CLI - Comprehensive AI Assistant
A sophisticated, multi-layered AI-powered CLI assistant with autonomous agent capabilities, built with Python 3.13.
๐ One-Command Installation
Install Kritrima AI CLI on Windows 11 WSL, macOS, and Linux with a single command:
pip install kritrima-ai-cli
Quick Start
# Launch the AI assistant
kritrima-ai
# Or use the short alias
kai
# Get help
kritrima-ai --help
๐ Features
Core AI Integration
- Multi-Provider Support: OpenAI, Azure, Gemini, Ollama, Mistral, DeepSeek, xAI, Groq, ArceeAI, OpenRouter
- Dynamic Model Discovery: Automatic model detection and switching
- Autonomous Agent Loop: Sophisticated AI orchestration with tool calling
- Multi-Modal Input: Text and image processing capabilities
Advanced Code Assistance
- File Operations: Unified diff processing, patch application, conflict resolution
- Shell Integration: Cross-platform command execution with sandboxing
- Git Integration: Repository awareness, diff generation, change tracking
- Project Analysis: Documentation discovery and context integration
Security & Safety
- Multi-Platform Sandboxing: Linux Landlock, macOS Seatbelt, Windows restrictions
- Approval Policies: Configurable command approval workflows
- Path Validation: Directory traversal protection
- Secure Storage: Encrypted configuration and session management
Rich User Interface
- Terminal-Based UI: Rich console interface with real-time updates
- Interactive Overlays: Model selection, history browsing, session management
- Advanced Input: Multi-line editing, file suggestions, slash commands
- Visual Feedback: Progress indicators, notifications, syntax highlighting
Session Management
- Persistent Sessions: Save and resume conversations
- Command History: Searchable command history with sensitive data filtering
- Context Management: Intelligent context optimization and compression
- Export/Import: Share sessions between instances
๐ฆ Installation
System Requirements
- Python 3.13+ (Required)
- pip (Python package manager)
- Internet connection for AI provider APIs
Platform-Specific Setup
Windows 11 (WSL)
# Update system
sudo apt update && sudo apt upgrade -y
# Install Python 3.13+ if needed
sudo apt install python3.13 python3.13-pip -y
# Install Kritrima AI CLI
pip install kritrima-ai-cli
# Verify installation
kritrima-ai --version
macOS
# Install Python 3.13+ (using Homebrew)
brew install python@3.13
# Install Kritrima AI CLI
pip install kritrima-ai-cli
# Verify installation
kritrima-ai --version
Linux (Ubuntu/Debian)
# Update packages
sudo apt update
# Install Python 3.13+
sudo apt install python3.13 python3.13-pip -y
# Install Kritrima AI CLI
pip install kritrima-ai-cli
# Verify installation
kritrima-ai --version
๐ง Configuration
Environment Variables
# Primary AI Provider
export OPENAI_API_KEY="your-openai-key"
export ANTHROPIC_API_KEY="your-anthropic-key"
export GOOGLE_AI_KEY="your-gemini-key"
# Custom Providers
export CUSTOM_PROVIDER_API_KEY="your-custom-key"
export CUSTOM_PROVIDER_BASE_URL="https://api.custom.com/v1"
# Application Settings
export KRITRIMA_AI_APPROVAL_MODE="suggest" # suggest, auto-edit, full-auto
export KRITRIMA_AI_MODEL="gpt-4"
export KRITRIMA_AI_PROVIDER="openai"
Configuration Files
- Global:
~/.kritrima/config.json - Project:
./.kritrima/config.json
Example Configuration
{
"model": "gpt-4",
"provider": "openai",
"approvalMode": "suggest",
"providers": {
"custom": {
"name": "Custom Provider",
"baseURL": "https://api.custom.com/v1",
"envKey": "CUSTOM_API_KEY"
}
},
"ui": {
"theme": "dark",
"notifications": true,
"autoSave": true
}
}
๐ฏ Usage
Basic Commands
# Start interactive session
kritrima-ai
# Single command mode
kritrima-ai "Explain this code file" --file main.py
# Full context mode
kritrima-ai --full-context "Refactor this project"
# Specific model
kritrima-ai --model gpt-4 --provider openai
Slash Commands
/help- Show help information/model- Switch AI model/provider/history- View command history/sessions- Browse saved sessions/clear- Clear conversation/compact- Compress context/bug- Generate bug report/diff- Show git differences
File Operations
# Include file contents
@filename.py
# Create/edit files
Please create a new file called app.py with a Flask application
# Apply patches
Create a patch to fix the bug in utils.py
Approval Modes
- Suggest: Manual approval for all actions
- Auto-Edit: Automatic file edits, manual commands
- Full-Auto: Automatic everything (with sandbox)
๐ Package Management
Update to Latest Version
pip install --upgrade kritrima-ai-cli
Uninstall
# Remove package
pip uninstall kritrima-ai-cli
# Clean up configuration (optional)
rm -rf ~/.kritrima
Development Installation
# Clone repository
git clone https://github.com/kritrima/kritrima-ai-cli.git
cd kritrima-ai-cli
# Install in development mode
pip install -e .
# Install development dependencies
pip install -e ".[dev]"
๐๏ธ Architecture
System Components
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ CLI Entry Point โ
โ (kritrima_ai/cli.py) โ
โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโ
โ Application Core โ
โ (kritrima_ai/app.py) โ
โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโ
โ Agent Loop System โ
โ (kritrima_ai/agent/agent_loop.py) โ
โโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโ
โ Provider Integration โ
โ (kritrima_ai/providers/*.py) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Key Modules
- Agent System: Autonomous AI orchestration
- Provider Integration: Multi-provider AI access
- Security Framework: Sandboxing and approval systems
- Storage System: Session and configuration management
- UI Components: Rich terminal interface
- Tool System: File operations and shell execution
๐ Security
Sandboxing
- Linux: Landlock LSM for file system restrictions
- macOS: Seatbelt for process sandboxing
- Windows: Job objects and ACL restrictions
- Fallback: Safe execution with permission checks
Approval Workflow
- Command validation against safe/dangerous lists
- Path validation for directory traversal protection
- Permission verification for file operations
- Resource limit enforcement
- User approval for potentially dangerous operations
Data Protection
- Encrypted storage for sensitive configuration
- Automatic sensitive data filtering in history
- Secure API key management
- Optional data anonymization
๐จ Troubleshooting
Common Issues
Python Version Issues
# Check Python version
python3 --version
# If Python 3.13+ not available, install it
# Follow platform-specific instructions above
Permission Issues (Linux/macOS)
# Install for current user only
pip install --user kritrima-ai-cli
# Add to PATH if needed
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
Windows PATH Issues
# Add Python Scripts to PATH
$env:Path += ";$env:USERPROFILE\AppData\Roaming\Python\Python313\Scripts"
๐ Resources
- Documentation: https://docs.kritrima.ai
- GitHub Repository: https://github.com/kritrima/kritrima-ai-cli
- Issue Tracker: https://github.com/kritrima/kritrima-ai-cli/issues
- PyPI Package: https://pypi.org/project/kritrima-ai-cli/
- Installation Guide: INSTALLATION.md
- Publishing Guide: PUBLISHING_GUIDE.md
๐ค Contributing
We welcome contributions! Please see our contributing guidelines and feel free to submit issues or pull requests.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
Ready to get started?
pip install kritrima-ai-cli && kritrima-ai
๐ Welcome to the future of AI-powered development!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kritrima_ai_cli-1.1.0.tar.gz.
File metadata
- Download URL: kritrima_ai_cli-1.1.0.tar.gz
- Upload date:
- Size: 253.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce6a6f3fdeb1492bf9266fde2124431c2a7759b5acf338c2ea4742dca9a3657b
|
|
| MD5 |
32b701bb9f2572ae53ed18e1cc830c6a
|
|
| BLAKE2b-256 |
60d71c88b325beb586fe0a6dfed21a5f240390c1a762138c0f30c027f3f77bdb
|
File details
Details for the file kritrima_ai_cli-1.1.0-py3-none-any.whl.
File metadata
- Download URL: kritrima_ai_cli-1.1.0-py3-none-any.whl
- Upload date:
- Size: 282.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
71cd221802016bfae00221968ff7fe6451fe0a7f22a414232805c2dfdde1598e
|
|
| MD5 |
992fd5e8253952ebba2fdda0cbba07b3
|
|
| BLAKE2b-256 |
f7df5bf54e11eaa7a10aa473e95ad3871531d61e2a08d88a7aebf798a9687864
|