Next-generation SSH terminal with AI assistance
๐ Download โข ๐ Documentation โข ๐ค Contributing โข ๐ก Features
- Multi-Provider Support: Integration with Ollama, OpenAI, Google Gemini, and Anthropic Claude
- Intelligent Command Generation: AI suggests commands based on natural language descriptions
- Command Explanation: Get detailed explanations for any terminal command
- Context-Aware Assistance: AI understands your current directory and system state
- Multiple Authentication Methods: Password, SSH keys, and certificate-based auth
- Connection Profiles: Save and manage multiple server configurations
- Session Persistence: Maintain connections across application restarts
- Encrypted Credential Storage: Secure local storage for sensitive data
- Drag & Drop File Transfer: Intuitive file upload/download
- Remote Directory Navigation: Browse remote filesystems with ease
- Real-time Transfer Progress: Track file operation status
- Integrated File Editing: Edit remote files directly in the terminal
- Tabbed Interface: Multiple simultaneous connections
- Syntax Highlighting: Enhanced readability for commands and outputs
- Customizable Themes: Cyberpunk aesthetics with dark mode support
- Responsive Design: Works seamlessly across different screen sizes
- Real-time Command Execution: Instant feedback and streaming output
- Session Recovery: Automatic reconnection and state restoration
- Memory Efficient: Optimized for long-running sessions
- Cross-platform Compatibility: Built with Electron for Linux support
- Node.js: Version 18 or higher
- npm: Version 8 or higher
- Linux: Ubuntu 20.04+ or equivalent
- Download the latest AppImage from Releases
- Make it executable:
chmod +x KEMENT-2.0.0.AppImage - Run:
./KEMENT-2.0.0.AppImage
# Clone the repository
git clone https://github.com/enisgetmez/kement.git
cd kement
# Install dependencies
npm install
# Build the application
npm run build
# Start KEMENT
npm start# Install development dependencies
npm install
# Start in development mode
npm run dev
# Run tests
npm test
# Build for production
npm run build
# Create AppImage distribution
npm run distKEMENT supports multiple AI providers. Configure them through the AI Settings modal:
{
"enabled": true,
"endpoint": "http://localhost:11434",
"model": "llama3.2:latest"
}{
"enabled": true,
"apiKey": "sk-your-openai-key",
"model": "gpt-4"
}{
"enabled": true,
"apiKey": "AIza-your-gemini-key",
"model": "gemini-pro"
}{
"enabled": true,
"apiKey": "sk-ant-your-claude-key",
"model": "claude-3-sonnet-20240229"
}Create and manage connection profiles:
- Click the "+" button to add a new connection
- Fill in connection details:
- Name: Friendly name for the connection
- Host: Server hostname or IP address
- Port: SSH port (default: 22)
- Username: SSH username
- Authentication: Choose password or key-based auth
- Save and connect with a double-click
- Create a new connection profile
- Double-click the profile to connect
- Start working in the terminal
- Click the AI button (๐ค) on the right side
- Type your request in natural language
- Get command suggestions and explanations
- Execute commands directly from AI responses
- Right-click on a connection and select "Open SFTP"
- Navigate remote directories
- Drag files from your local system to upload
- Double-click remote files to download or edit
Generate Commands:
- "show disk usage"
- "find large files in home directory"
- "create a backup of nginx config"
- "monitor system resources"
Get Explanations:
- Ask AI to explain any command output
- Understand complex shell scripts
- Learn about system administration tasks
Ctrl+T: New terminal tabCtrl+W: Close current tabCtrl+Shift+F: Open SFTP browserCtrl+AI: Toggle AI assistantCtrl+,: Open settings
- Connections persist between application restarts
- Multiple tabs per connection
- Automatic reconnection on network issues
KEMENT is built with modern web technologies:
- Frontend: React 19 with styled-components
- Backend: Electron main process with Node.js
- SSH: ssh2 library for secure connections
- AI Integration: REST APIs for multiple providers
- Storage: electron-store for configuration persistence
kement/
โโโ src/
โ โโโ components/ # React components
โ โโโ services/ # Business logic and AI providers
โ โโโ styles/ # Global styles and themes
โ โโโ utils/ # Helper functions
โโโ assets/ # Images and icons
โโโ dist/ # Built application
โโโ main.js # Electron main process
KEMENT's AI service architecture supports:
- Provider Abstraction: Unified interface for all AI providers
- Configuration Management: Secure credential storage
- Error Handling: Graceful fallbacks and user feedback
- Testing Framework: Built-in connection testing
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and test thoroughly
- Commit with conventional commits:
git commit -m "feat: add amazing feature" - Push to your branch:
git push origin feature/amazing-feature - Open a Pull Request
- Follow React best practices and hooks conventions
- Use TypeScript for new features when possible
- Write tests for new functionality
- Maintain the existing code style
- Update documentation for user-facing changes
Found a bug or have a feature idea? We'd love to hear from you!
- Bug Reports: Create an Issue
- Feature Requests: Request a Feature
- General Questions: GitHub Discussions
This project is licensed under the MIT License. See the LICENSE file for details.
- ssh2 library for secure SSH connections
- Electron framework for cross-platform desktop apps
- React for the modern user interface
- AI Providers for intelligent assistance capabilities
- Open Source Community for inspiration and contributions
Made with โค๏ธ by Enis Getmez



