[](https://github.com/s00d/switchshuttle)
[](https://github.com/s00d/switchshuttle/blob/main/LICENSE)
[](https://github.com/s00d/switchshuttle/releases)
[](https://github.com/s00d/switchshuttle/releases)
[](https://github.com/s00d/switchshuttle/issues)
[](https://github.com/s00d/switchshuttle/stargazers)
[](https://www.donationalerts.com/r/s00d88)

# SwitchShuttle
**🚀 Plattformübergreifender Terminal-Befehlsmanager mit globalen Hotkeys**
---
## ✨ Was ist SwitchShuttle?
SwitchShuttle ist eine leistungsstarke plattformübergreifende System-Tray-Anwendung, die die Art und Weise revolutioniert, wie Sie Terminal-Befehle verwalten und ausführen. Entwickelt mit modernen Technologien (Rust + Tauri + Vue.js) bietet es eine elegante Oberfläche zur Organisation, Anpassung und zum schnellen Zugriff auf Ihre am häufigsten verwendeten Terminal-Operationen.
### 🎯 Hauptfunktionen
- **🖥️ Multi-Plattform-Unterstützung** - Funktioniert nahtlos auf macOS, Windows und Linux
- **⚡ Globale Hotkeys** - Führen Sie Befehle sofort von überall mit Tastenkombinationen aus
- **🎨 Mehrere Terminal-Unterstützung** - iTerm, Terminal, Warp, Alacritty, Hyper und mehr
- **📁 Intelligente Organisation** - Erstellen Sie verschachtelte Untermenüs für bessere Befehlsorganisation
- **🔧 Dynamische Eingaben** - Interaktive Eingabeaufforderungen für Befehle, die Benutzereingaben benötigen
- **🔄 Mehrere Ausführungsmodi** - Ausführung im aktuellen Fenster, neuer Tab oder neues Fenster
- **🚀 Auto-Start** - Start beim Systemstart für sofortigen Zugriff
- **🎨 Moderne UI** - Schöne, intuitive Oberfläche entwickelt mit Vue.js
- **💻 Kommandozeilen-Interface** - Führen Sie Befehle direkt aus dem Terminal mit CLI aus
- **⚙️ Konfigurationsverwaltung** - Aktivieren/Deaktivieren von Konfigurationen ohne Löschung
- **🔄 Schalter-Befehle** - Systemfunktionen mit Hintergrundausführung umschalten
- **📊 Überwachungsbefehle** - Echtzeit-Überwachung von Systemressourcen mit visuellen Indikatoren
- **📅 Geplante Befehle** - Automatisierung von Aufgaben mit Cron-Ausdrücken
- **🎯 Template-System** - Vorgefertigte Befehlsvorlagen für häufige Arbeitsabläufe
## 🖥️ Benutzeroberfläche-Übersicht
SwitchShuttle bietet eine moderne, intuitive Benutzeroberfläche mit mehreren Schlüsselkomponenten:
### 🎛️ Hauptkomponenten der Benutzeroberfläche
#### 1. **Konfigurationseditor**
- **Visueller JSON-Editor** - Bearbeiten von Konfigurationen mit Syntaxhervorhebung und Validierung
- **Template-System** - Import vorgefertigter Befehlsvorlagen für häufige Arbeitsabläufe
- **Echtzeit-Validierung** - Sofortiges Feedback zu Konfigurationsfehlern
- **Auto-Save** - Änderungen werden automatisch beim Tippen gespeichert
- **Konfigurationsverwaltung** - Aktivieren/Deaktivieren von Konfigurationen ohne Löschung
- **Suche und Filter** - Schnelles Finden spezifischer Konfigurationen
- **Konfigurationen duplizieren** - Erstellen von Kopien bestehender Konfigurationen für Tests
#### 2. **Befehlsverwaltung**
- **Befehlsgenerator** - Erstellen von Befehlen mit visueller Formularoberfläche
- **Hotkey-Konfiguration** - Festlegen globaler Verknüpfungen für sofortige Befehlsausführung
- **Icon-Auswahl** - Auswahl von Emoji-Icons für bessere visuelle Organisation
- **Eingabefelder** - Konfiguration dynamischer Eingabeaufforderungen für interaktive Befehle
- **Verschachtelte Untermenüs** - Organisation von Befehlen in hierarchische Strukturen
- **Befehlsvalidierung** - Echtzeit-Validierung der Befehls-Syntax
#### 3. **Einstellungsbereich**
- **Terminal-Auswahl** - Auswahl Ihrer bevorzugten Terminal-Anwendung
- **Startmodus** - Konfiguration der Befehlsausführung (aktuell/neuer Tab/neues Fenster)
- **Theme-Einstellungen** - Anpassung des Erscheinungsbilds der Anwendung
- **Auto-Start-Konfiguration** - Aktivieren/Deaktivieren des Systemstarts
- **Globale Hotkey-Einstellungen** - Konfiguration systemweiter Menü-Verknüpfungen
#### 4. **System-Tray-Menü**
- **Schnellzugriff** - Rechtsklick auf Tray-Symbol für sofortigen Befehlszugriff
- **Statusindikatoren** - Visuelles Feedback für Schalter-Befehle und Überwachung
- **Verschachtelte Menüs** - Organisierte Befehls-Hierarchie für einfache Navigation
- **Globale Hotkeys** - Tastenkombinationen für sofortige Befehlsausführung
- **Echtzeit-Überwachung** - Live-Systemressourcen-Indikatoren
### 🎨 Benutzeroberflächen-Features
#### **Visueller Befehlsgenerator**
```json
{
"name": "🚀 Entwicklungsserver starten",
"command": "npm run dev",
"hotkey": "Ctrl+Shift+D",
"icon": "🚀",
"background": false,
"inputs": {
"port": "3000",
"host": "localhost"
}
}
```
#### **Template-System**
SwitchShuttle enthält vorgefertigte Vorlagen für häufige Entwicklungsarbeitsabläufe:
- **Entwicklung** - Git-Operationen, Build-Tools, Tests
- **DevOps** - Docker, Kubernetes, Serververwaltung
- **Datenbank** - MySQL, PostgreSQL, MongoDB-Operationen
- **Cloud** - AWS, Azure, Google Cloud-Befehle
- **Sicherheit** - Netzwerk-Scanning, Schwachstellenbewertung
- **Überwachung** - Systemressourcen, Logs, Metriken
- **Utilities** - Dateioperationen, Systemtools
- **Scheduler** - Cron-Jobs und automatisierte Aufgaben
#### **Intelligente Organisation**
- **Verschachtelte Untermenüs** - Organisieren Sie Befehle in logische Gruppen
- **Icon-Unterstützung** - Visuelle Identifikation mit Emoji-Icons
- **Hotkey-Verwaltung** - Globale Verknüpfungen für sofortigen Zugriff
- **Statusindikatoren** - Echtzeit-Feedback für Schalter-Befehle
- **Suchfunktion** - Schnelle Befehlsentdeckung
## 🔒 Sicherheits-Manager
SwitchShuttle enthält einen umfassenden Sicherheits-Manager, der Ihr System vor potenziell schädlichen Befehlen schützt und eine detaillierte Kontrolle über die Befehlsausführung bietet.
### 🛡️ Sicherheitsfunktionen
#### **Befehlsvalidierung**
- **Längenlimits**: Maximale Befehlslänge (1000 Zeichen) und Eingabelänge (500 Zeichen) verhindern zu lange Befehle
- **Blockierte Befehle**: Definieren Sie eine Liste gefährlicher Befehle, die niemals ausgeführt werden sollten
- **Verdächtige Muster**: Verwenden Sie Regex-Muster, um potenziell schädliche Befehlsmuster zu erkennen und zu blockieren
- **Echtzeit-Validierung**: Befehle werden während der Bearbeitung validiert, um Sicherheit zu gewährleisten
#### **Sicherheitseinstellungen**
- **Sicherheit aktivieren/deaktivieren**: Schalten Sie Sicherheitsfunktionen nach Bedarf ein oder aus
- **Benutzerdefinierte Blocklisten**: Fügen Sie spezifische Befehle zur Liste der blockierten Befehle hinzu
- **Mustervergleich**: Definieren Sie Regex-Muster, um verdächtige Befehlsstrukturen zu erkennen
- **Längenbeschränkungen**: Konfigurieren Sie maximale Längen für Befehle und Benutzereingaben
#### **Wie es funktioniert**
1. **Editor-Validierung**: Der SecurityManager validiert Befehle im Konfigurationseditor vor dem Speichern
2. **Mustervergleich**: Befehle werden gegen blockierte Muster und verdächtige Regex-Muster geprüft
3. **Längenvalidierung**: Befehle und Eingaben werden gegen maximale Längenlimits verifiziert
4. **Blocklistenprüfung**: Befehle werden mit der benutzerdefinierten Liste blockierter Befehle verglichen
5. **Sichere Konfiguration**: Nur validierte Konfigurationen dürfen gespeichert und verwendet werden
## 🚀 Schnellstart
### Download & Installation
#### Option 1: Homebrew (macOS - Empfohlen)
```bash
# Installation über Homebrew
brew tap s00d/switchshuttle
brew install --cask switchshuttle
```
#### Option 2: Manueller Download
1. **Laden Sie** die neueste Version für Ihre Plattform von [GitHub Releases](https://github.com/s00d/switchshuttle/releases) herunter
2. **Installieren Sie** die Anwendung
3. **Starten Sie** SwitchShuttle - es erscheint in Ihrem System-Tray
4. **Rechtsklick** auf das Tray-Symbol für den Menüzugriff
### Erste Konfiguration
1. **Konfigurationseditor öffnen** - Klicken Sie auf "Konfiguration bearbeiten" im System-Tray-Menü
2. **Terminal auswählen** - Wählen Sie Ihre bevorzugte Terminal-Anwendung
3. **Befehle hinzufügen** - Verwenden Sie den visuellen Editor oder importieren Sie Vorlagen
4. **Hotkeys einrichten** - Konfigurieren Sie globale Verknüpfungen für schnellen Zugriff
5. **Speichern und neu starten** - Ihre Befehle sind jetzt im Tray-Menü verfügbar
### Schritt-für-Schritt-Anleitung zur Benutzeroberfläche
#### **Schritt 1: Konfigurationseditor**
- Öffnen Sie SwitchShuttle und navigieren Sie zum "Editor"-Tab
- Wählen Sie Ihre Terminal-Anwendung (iTerm, Terminal, Warp, etc.)
- Stellen Sie den Startmodus ein (aktuelles Fenster, neuer Tab oder neues Fenster)
- Konfigurieren Sie globale Hotkeys für Menüzugriff
#### **Schritt 2: Befehle hinzufügen**
- Klicken Sie auf "Befehl hinzufügen" um einen neuen Befehl zu erstellen
- Füllen Sie die Befehlsdetails aus:
- **Name**: Anzeigename für den Befehl
- **Befehl**: Der tatsächliche Terminal-Befehl zum Ausführen
- **Hotkey**: Globale Verknüpfung (optional)
- **Icon**: Emoji-Icon für visuelle Identifikation
- **Hintergrund**: Ob im Hintergrund ausgeführt werden soll
- **Eingaben**: Dynamische Eingabefelder für interaktive Befehle
#### **Schritt 3: Vorlagen verwenden**
- Klicken Sie auf "Vorlage importieren" für Zugriff auf vorgefertigte Befehls-Sammlungen
- Durchsuchen Sie Kategorien wie Entwicklung, DevOps, Datenbank, etc.
- Wählen und importieren Sie die benötigten Vorlagen
- Passen Sie die importierten Befehle nach Bedarf an
#### **Schritt 4: System-Tray-Zugriff**
- Rechtsklick auf das SwitchShuttle-Tray-Symbol
- Durchsuchen Sie Ihr organisiertes Befehlsmenü
- Verwenden Sie globale Hotkeys für sofortige Befehlsausführung
- Überwachen Sie den Systemstatus mit Echtzeit-Indikatoren
#### **Schritt 5: Erweiterte Funktionen**
- **Schalter-Befehle**: Umschalten von Systemfunktionen mit visuellen Statusindikatoren
- **Überwachungsbefehle**: Echtzeit-Überwachung von Systemressourcen
- **Geplante Befehle**: Automatisierung von Aufgaben mit Cron-Ausdrücken
- **Verschachtelte Menüs**: Organisation von Befehlen in hierarchische Strukturen
## 💻 Kommandozeilen-Interface (CLI)
SwitchShuttle bietet auch ein leistungsstarkes Kommandozeilen-Interface für schnelle Befehlsausführung ohne GUI.
### CLI-Verwendung
#### Befehle ausführen
```bash
# Ausführung nach Befehls-ID
switch-shuttle cmd_8
# Ausführung nach Befehlsname (Groß-/Kleinschreibung ignorierend)
switch-shuttle "Beispiel-Befehl"
```
#### Alle Befehle auflisten
```bash
# Alle verfügbaren Befehle mit ihren IDs anzeigen
switch-shuttle --list
# oder
switch-shuttle -l
```
#### Befehle suchen
```bash
# Nach Befehlen suchen, die bestimmten Text enthalten
switch-shuttle --search "git"
# oder
switch-shuttle -s "docker"
```
### CLI auf verschiedenen Betriebssystemen ausführen
#### macOS
```bash
# Wenn über Homebrew installiert
switch-shuttle --list
# Wenn manuell installiert
/Applications/switch-shuttle.app/Contents/MacOS/SwitchShuttle --list
# Alias für einfacheren Zugriff erstellen
echo 'alias switch-shuttle="/Applications/switch-shuttle.app/Contents/MacOS/SwitchShuttle"' >> ~/.zshrc
source ~/.zshrc
```
#### Windows
```bash
# Wenn über Installer installiert
"C:\Program Files\SwitchShuttle\switch-shuttle.exe" --list
# Wenn über winget oder chocolatey installiert
switch-shuttle --list
# Zu PATH hinzufügen für einfacheren Zugriff
# Fügen Sie "C:\Program Files\SwitchShuttle" zu Ihrem System-PATH hinzu
```
#### Linux
```bash
# Wenn über Paketmanager installiert
switch-shuttle --list
# Wenn manuell installiert
./switch-shuttle --list
# Ausführbar machen und zu PATH hinzufügen
chmod +x switch-shuttle
sudo mv switch-shuttle /usr/local/bin/
```
### CLI-Beispiele
```bash
# Schnelle Git-Operationen
switch-shuttle "git status"
switch-shuttle "git pull"
# Entwicklungs-Workflows
switch-shuttle "npm run dev"
switch-shuttle "docker-compose up"
# Alle verfügbaren Befehle auflisten
switch-shuttle --list
# Nach datenbankbezogenen Befehlen suchen
switch-shuttle --search "database"
```
### CLI-Features
- **🚀 Schnelle Ausführung** - Befehle sofort aus dem Terminal ausführen
- **🔍 Intelligente Suche** - Befehle nach ID oder Namen finden
- **📋 Befehlsauflistung** - Alle verfügbaren Befehle anzeigen
- **⚡ Keine GUI erforderlich** - Perfekt für Automatisierung und Skripte
- **🔄 Beenden nach Ausführung** - Saubere Terminal-Erfahrung
## 📋 Konfigurationsanleitung
### Grundstruktur
SwitchShuttle verwendet JSON-Konfigurationsdateien, gespeichert in:
- **macOS/Linux**: `~/.config/switch-shuttle/`
- **Windows**: `C:\Users\