wish-sh is an LLM-assisted shell that helps users execute commands by translating natural language "wishes" into executable shell commands. It provides a user-friendly TUI (Text-based User Interface) for reviewing suggested commands, executing them, and monitoring their execution status. For a comprehensive technical overview, see our whitepaper.
- Natural Language Command Generation: Input your wishes in natural language and get executable commands
- Command Suggestion and Confirmation: Review suggested commands before execution
- Real-time Status Monitoring: Track command execution status in real-time
- Command History: Access and reuse previous commands
- TUI Interface: User-friendly terminal interface built with Textual
- Knowledge Base Management: Load and manage knowledge bases from GitHub repositories for enhanced command suggestions
- Sliver C2 Integration: Execute commands on remote systems through Sliver C2 framework
For detailed installation and configuration instructions, see the Setup Guide.
Quick start:
pip install wish-sh
export OPENAI_API_KEY=your-api-key-here
wish # or wish-sh on macOS
- Setup Guide - Installation and configuration
- Basic Usage Guide - Getting started with wish-sh
- Knowledge Loader Guide - Enhancing wish-sh with domain knowledge
- Command and Control (C2) Guide - Advanced operations for target systems
- LangSmith Integration Guide - Monitoring, debugging, and optimizing with LangSmith
- Design Documentation - Technical architecture and design
- Whitepaper - Technical whitepaper on wish architecture and capabilities
Refer to the README.md in each package wish-*/
.
For contribution guidelines, including how to update the CHANGELOG and release process, see Contributing Guidelines.