5 Punkte von GN⁺ 2025-08-01 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Als AI-Coding-Agent, der im Terminal läuft, unterstützt Crush die Code-Erstellung, Workflow-Automatisierung und Kontextpflege im Code, indem es mit verschiedenen LLMs (Large Language Models) zusammenarbeitet und so die Code-Produktivität steigert.
  • Es lassen sich mehrere Modelle wählen oder während einer Sitzung frei das Modell wechseln, und es unterstützt die Sitzungskontext- und Projektkontext-Persistenz.
  • Es bietet entwicklerfreundliche Funktionen wie LSP (Language Server Protocol)-Integration, erweiterbare MCP (Model Context Protocol)-Unterstützung sowie Ignorierregeln über .gitignore und separate Dateien.
  • Es läuft auf allen wichtigen Terminal-Umgebungen wie macOS, Linux, Windows, FreeBSD und lässt sich über einen Paketmanager, Go oder Binärdateien installieren.
  • Es unterstützt eine intuitive Konfiguration und gleichzeitig umfangreiche Anpassungsmöglichkeiten, einschließlich Umgebungsvariablen, JSON-Konfiguration und Tool-Whitelist – ein Design, das auch erfahrene Nutzer berücksichtigt.

Crush

  • Ein AI-Coding-Agent, der in der Terminal-Umgebung läuft und sich frei mit den bevorzugten LLMs eines Entwicklers verbindet, um Code-Erstellung, -Bearbeitung und -Automatisierung zu unterstützen.
  • Es können frei verschiedene Modelle (Anthropic, OpenAI, Groq, OpenRouter usw.) ausgewählt und gewechselt werden; der Kontext wird pro Sitzung separat verwaltet.
  • Über LSP (Language Server Protocol) wird je nach Sprache zusätzlicher Kontext abgerufen, sodass die Code-Unterstützung noch intelligenter funktioniert.
  • Über MCP (Model Context Protocol) können zusätzliche Informationen aus externen Systemen, HTTP, der Kommandozeile, SSE und anderen Quellen gesammelt und genutzt werden.

Hauptfunktionen

  • Multi-Model-Support: Integration mit verschiedenen LLMs wie OpenAI, Anthropic, Groq und OpenRouter; zusätzliche Modelle können direkt hinzugefügt werden.
  • Sitzungsbasierte Arbeit: Mehrere Arbeitssitzungen und getrennte Kontexte pro Projekt verwalten.
  • Flexibler Modellwechsel: Freier Modellwechsel auch während einer laufenden Sitzung bei Erhalt des bisherigen Kontexts.
  • LSP-Integration: Verbindung zu LSP für wichtige Sprachen wie Go, TypeScript und Nix zur Stärkung des Code-Kontexts.
  • Erweiterbarkeit: Einfache Erweiterung über MCP auf Basis des Protokolls, z. B. für externe HTTP/CLI/SSE-Funktionen.
  • Umfassender Plattform-Support: Läuft auf den wichtigsten OS-Terminals wie macOS, Linux, Windows (WSL, PowerShell), FreeBSD, OpenBSD und NetBSD.
  • Intuitive Konfiguration: Sofort einsatzbereit ohne separate Einrichtung; bei Bedarf projektbezogene oder globale JSON-Konfiguration verfügbar.
  • Effektive Ignorierfunktion: Verwaltung ausschließender Dateien/Verzeichnisse über .gitignore und .crushignore möglich.
  • Tool-Whitelist: Vorabgenehmigung und Optionen für automatische Ausführung von Tools; mit dem Flag --yolo kann die gesamte Prompt-Eingabe übersprungen werden (mit Vorsicht zu verwenden).
  • Eigene Provider: OpenAI- und Anthropic-kompatible APIs können frei ergänzt und mit Detailoptionen konfiguriert werden.

Installation und Einstieg

  • Installation möglich über verschiedene Paketmanager sowie über Binärdateien oder Go: Homebrew, NPM, Arch, Nix, Debian/Ubuntu, Fedora/RHEL.
  • Beim ersten Start muss ein bevorzugter LLM-API-Schlüssel (OpenAI, Anthropic, Groq usw.) eingegeben werden; er kann auch per Umgebungsvariable gesetzt werden.
  • Repräsentative LLMs, die über Umgebungsvariablen angebunden werden können: OPENAI_API_KEY, ANTHROPIC_API_KEY, GROQ_API_KEY, OPENROUTER_API_KEY, GEMINI_API_KEY, VERTEXAI_PROJECT usw.

Konfigurationsbeispiele

  • Erweiterte Optionen über globale oder projektbezogene JSON-Dateien (./.crush.json, ./crush.json, $HOME/.config/crush/crush.json) anwenden
  • LSP-Konfiguration: Sprachspezifische Befehle können festgelegt werden
    {  
      "lsp": {  
        "go": { "command": "gopls" },  
        "typescript": { "command": "typescript-language-server", "args": ["--stdio"] }  
      }  
    }  
    
  • MCP-Konfiguration: Beispiel für externe Erweiterungen über HTTP/CLI/SSE
    {  
      "mcp": {  
        "filesystem": {  
          "type": "stdio",  
          "command": "node",  
          "args": ["/path/to/mcp-server.js"]  
        }  
      }  
    }  
    
  • Dateiausblendung und Tool-Freigabe
    • Ausschluss bestimmter Dateien/Ordner über .crushignore
    • Tool-Ausführung über Whitelist oder Überspringen der Prompt-Abfrage mit dem --yolo-Flag

Funktionen für Fortgeschrittene Nutzer

  • Registrierung benutzerdefinierter Provider: Hinzufügen von OpenAI/Anthropic-kompatiblen APIs, inklusive Preis- und Kontextdetails als Feinoptionen.
  • Logging: Projektbezogene Logdateien; Zugriff in Echtzeit über CLI-Befehle wie crush logs oder crush logs --follow.
  • Debug-Optionen: Aktivierung detaillierter Logs über das Flag --debug oder die Konfiguration.

Noch keine Kommentare.

Noch keine Kommentare.