Die shopware-cli ist ein Go-basiertes Kommandozeilen-Tool, das die Shopware-Entwicklung optimiert, indem es repetitive Aufgaben automatisiert. Es ist Shopware-Versionsunabhängig und bietet vier wesentliche Vorteile:
Wenn Sie Erweiterungen manuell in den Shopware Store hochladen, auf langsame Builds warten oder bei jedem Deployment mehrere Befehle ausführen, verschwenden Sie wertvolle Entwicklungszeit. Die shopware-cli behebt diese Probleme mit einem einzigen, versionsunabhängigen Tool.
Dieser Leitfaden behandelt die praktischen Workflows, bei denen shopware-cli die meiste Zeit spart, von der Erweiterungsentwicklung und Store-Verwaltung bis hin zum automatisierten Refactoring und Projekt-Deployment.
Der traditionelle Plugin-Upload-Prozess erfordert die Anmeldung bei account.shopware.com, die Navigation durch mehrere Seiten, das manuelle Hochladen von ZIP-Dateien, das Ausfüllen von Formularen und das Kopieren von Changelogs. Für Entwickler, die häufig Updates veröffentlichen, wird dies zu einem erheblichen Zeitfresser.
Die CLI eliminiert den manuellen Upload-Prozess vollständig:
# Ein Plugin in den Shopware Store hochladen
shopware-cli account producer extension upload path/to/plugin.zip
Für die CI/CD-Integration erstellen Sie einen dedizierten Shopware-Konto-Benutzer mit API-Anmeldedaten. Speichern Sie diese als Umgebungsvariablen, um interaktive Eingabeaufforderungen zu vermeiden:
# Umgebungsvariablen in Ihrer CI-Pipeline setzen
export SHOPWARE_CLI_ACCOUNT_EMAIL="ci-user@yourcompany.com"
export SHOPWARE_CLI_ACCOUNT_PASSWORD="your-token"
# Upload läuft nicht-interaktiv in CI
shopware-cli account producer extension upload dist/plugin.zip
Anstatt Plugin-Beschreibungen, Highlights und Tags manuell über die Weboberfläche zu bearbeiten, können Sie mit der CLI alles über eine lokale YAML-Datei verwalten:
Aktuelle Store-Konfiguration abrufen:
shopware-cli account producer extension info pull ./path/to/extension
Dies erstellt eine .shopware-extension.yml-Datei mit Titel, Beschreibung, Lokalisierung, Highlights und Tags Ihrer Erweiterung. Lokal bearbeiten, dann Änderungen zurücksenden:
shopware-cli account producer extension info push ./path/to/extension
Das manuelle Schreiben von Changelogs ist mühsam und fehleranfällig. Die CLI kann Changelogs direkt aus Ihrer Git-Commit-Historie mit Regex-Mustern extrahieren:
Konfigurieren Sie ein Regex-Muster, um Ticket-Nummern oder strukturierte Commit-Nachrichten zu extrahieren, und erstellen Sie dann eine Markdown-Vorlage für Ihr Changelog. Dies funktioniert besonders gut, wenn Sie konventionellen Commit-Mustern folgen wie:
feat(SHOP-123): Produktvergleichs-Feature hinzufügen
fix(SHOP-456): Warenkorb-Berechnungs-Rundungsfehler beheben
Die CLI kann diese Muster analysieren und automatisch formatierte Changelogs generieren.
Profi-Tipp: Richten Sie Ihre CI/CD-Pipeline ein, um das Changelog automatisch zu generieren, die Plugin-ZIP zu validieren und in den Store hochzuladen, wenn Sie ein Release taggen. Dies erstellt einen vollautomatischen Release-Workflow, der keine manuelle Intervention erfordert.
Das Erstellen von Erweiterungs-Assets erforderte traditionell die vollständige Shopware-Codebasis, um Importe und Abhängigkeiten aufzulösen. Dies machte Builds langsam und stark mit Ihrer Shopware-Version gekoppelt. Beachten Sie, dass Shopware 6.7 von Webpack zu Vite für Core-Administration-Builds gewechselt hat, aber die Prinzipien langsamer, abhängigkeitsintensiver Builds bleiben bei traditionellen Ansätzen bestehen.
Die CLI kann Erweiterungs-Assets vollständig isoliert ohne die Shopware-Codebasis erstellen. Standardmäßig verwendet sie Webpack, aber Sie können esbuild (einen Go-basierten Bundler) für deutlich schnellere Builds aktivieren, indem Sie dies in die .shopware-extension.yml Ihrer Erweiterung einfügen:
# .shopware-extension.yml - esbuild für schnellere Builds aktivieren
build:
zip:
assets:
enable_es_build_for_admin: true
enable_es_build_for_storefront: true
# Erweiterungs-Assets erstellen (sowohl Admin als auch Storefront)
shopware-cli extension build ./path/to/extension
Mit aktiviertem esbuild sinken die Build-Zeiten erheblich - von Minuten auf Sekunden in vielen Fällen. Ein dokumentiertes Beispiel zeigt eine Reduzierung der Build-Zeit von 2 Minuten auf 7 Sekunden. Die Leistungsverbesserung ist besonders in CI-Umgebungen spürbar, wo jede Sekunde zählt.
Für die Administration-Entwicklung bietet die CLI einen Watcher, der in unter einer Sekunde startet (im Vergleich zu deutlich längeren Initialisierungszeiten bei traditionellen Watchern):
# Admin-Watcher mit Hot-Reload starten
shopware-cli extension admin-watch ./path/to/extension https://your-shop.example.com
Der Watcher erstellt automatisch nur geänderte Dateien neu und gibt Ihnen nahezu sofortiges Feedback bei der Entwicklung von Admin-Komponenten.
Da die CLI Assets eigenständig ohne die Shopware-Codebasis erstellt, werden Ihre Builds versionsunabhängig. Das bedeutet:
Hinweis zu Shopware 6.7: Während Shopware Core seit Juni 2025 von Webpack zu Vite für Administration-Builds migriert ist, verwendet shopware-cli weiterhin esbuild für Erweiterungs-Builds. Dieser Ansatz hält Erweiterungs-Builds schnell, eigenständig und versionsunabhängig.
Das manuelle Erstellen einer Plugin-ZIP-Datei ist fehleranfällig. Sie könnten unnötige Dateien wie node_modules einschließen, vergessen, Assets zu kompilieren, oder versehentlich sensible Dateien wie .env einschließen. Jeder dieser Fehler führt dazu, dass die Store-Validierung fehlschlägt.
Die CLI behandelt alle ZIP-Anforderungen automatisch:
# Eine produktionsreife ZIP-Datei erstellen
shopware-cli extension zip ./path/to/plugin --release
Der extension zip-Befehl behandelt Dateiausschlüsse automatisch, während das --release-Flag release-spezifische Vorbereitung hinzufügt:
node_modules und unnötige Verzeichnisse aus der ZIP aus
extension prepare aus, um Composer-Abhängigkeiten zu installieren und aufzuräumen
manifest.xml (kritisch für Shopware Apps)
Vermeiden Sie fehlgeschlagene Uploads, indem Sie Ihr Plugin lokal validieren, bevor Sie es an den Store senden:
# Erweiterung lokal validieren
shopware-cli extension validate ./path/to/plugin
Dies führt Validierungsprüfungen gegen Ihre Erweiterung durch:
Best Practice: Fügen Sie die Validierung Ihrer CI-Pipeline vor dem Upload hinzu. Dies erkennt Probleme frühzeitig und verhindert fehlgeschlagene Releases.
Traditionelle Shopware-Projekt-Builds erfordern das Ausführen mehrerer Befehle nacheinander: composer install, Asset-Kompilierung, Dateiaufräumung und Cache-Aufwärmung. Die CLI konsolidiert dies in einen einzigen CI-optimierten Befehl:
# Shopware-Projekt für CI/CD-Deployment erstellen
shopware-cli project ci
# Dies automatisch:
# 1. Installiert Composer-Abhängigkeiten
# 2. Erstellt Administration- und Storefront-Assets
# 3. Räumt unnötige Dateien auf
# 4. Wärmt Shopware-Cache auf
Die Projektbefehle der CLI optimieren Deployments automatisch:
Die CLI enthält ein experimentelles Deployment-Helper-Composer-Paket, das Shopware-Installationen und -Updates standardisiert:
Beim Upgrade zwischen Shopware-Versionen müssen Sie oft veraltete APIs aktualisieren, Template-Syntax anpassen und Code-Patterns modernisieren. Dies manuell über Hunderte oder Tausende von Dateien zu tun ist fehleranfällig und zeitaufwendig.
Die CLI enthält integrierte automatische Code-Korrektur, die Ihre Codebasis beim Upgrade von Shopware-Versionen modernisiert. Sie verwendet branchenübliche Tools:
Für projektweite Korrekturen erkennt die CLI automatisch Ihre Ziel-Shopware-Version aus composer.json und wendet entsprechende Upgrade-Regeln an:
# Gesamtes Shopware-Projekt korrigieren
shopware-cli project fix
# Spezifische Erweiterung korrigieren
shopware-cli extension fix ./path/to/extension
Die CLI enthält experimentelle LLM-gestützte Twig-Template-Migration, die KI verwendet, um Template-Anpassungen zwischen Shopware-Versionen vorzuschlagen. Dies ist besonders nützlich für komplexe Template-Änderungen, die mit Regex-Regeln schwer zu automatisieren sind.
Unterstützte LLM-Anbieter:
OLLAMA_HOSTOPENAI_API_KEYGEMINI_API_KEYOPENROUTER_API_KEYKritische Warnung: Automatische Code-Korrektur ändert Dateien direkt. Vor der Ausführung:
git diffBeim Debuggen von API-Problemen oder der Skripterstellung von Admin-Operationen ist das manuelle Einholen von OAuth-Tokens mühsam. Die CLI bietet eine vorauthentifizierte curl-Schnittstelle zur Admin-API:
# Admin-API ohne manuelle Authentifizierung abfragen
shopware-cli project admin-api GET /api/product
# Ressourcen über API erstellen
shopware-cli project admin-api POST /api/product '{"name": "Test"}'
# Nur den Access-Token für andere Tools abrufen
shopware-cli project admin-api --output-token
Dies behandelt die OAuth-Token-Generierung automatisch und ist ideal für schnelle API-Abfragen während der Entwicklung oder zum Scripting von Batch-Operationen.
Erstellen Sie MySQL-Dumps mit anonymisierten Kundendaten, ohne dass MySQL lokal installiert sein muss:
# Einen anonymisierten Datenbank-Dump erstellen
shopware-cli project dump --anonymize
Die CLI verwendet eine .shopware-project.yml-Datei zur Verwaltung der Projektkonfiguration, einschließlich Datenbank-Dump-Regeln, Deployment-Einstellungen und Erweiterungs-Synchronisation:
Projektkonfiguration initialisieren:
shopware-cli project config init
Dies erstellt eine .shopware-project.yml in Ihrem Projektstamm. Sie können Datenbank-Dump-Anonymisierungsregeln, Erweiterungs-Synchronisationseinstellungen und andere projektspezifische Standardwerte in dieser Datei konfigurieren.
Dieser Ansatz macht die Projektkonfiguration versionskontrollierbar und konsistent über Entwicklungsumgebungen hinweg.
Die CLI wird als einzelne Binärdatei ohne Abhängigkeiten verteilt. Laden Sie von den offiziellen GitHub-Releases herunter:
# macOS (Homebrew)
brew install shopware/tap/shopware-cli
# Linux (Binärdatei herunterladen)
curl -L https://github.com/shopware/shopware-cli/releases/latest/download/shopware-cli-linux-amd64 -o shopware-cli
chmod +x shopware-cli
sudo mv shopware-cli /usr/local/bin/
# Windows (von Release-Seite herunterladen)
# Besuchen Sie: https://github.com/shopware/shopware-cli/releases
shopware-cli account login
shopware-cli extension build .
shopware-cli extension zip . --release
Die shopware-cli eliminiert repetitive manuelle Arbeit und lässt Sie sich auf die Lösung tatsächlicher Entwicklungsprobleme konzentrieren. Wenn Sie sie noch nicht verwenden, beginnen Sie mit den Asset-Build-Befehlen, um sofortige Leistungsverbesserungen zu sehen.
Entdecken Sie weitere Shopware-Entwicklungsthemen:
Egal ob Sie benutzerdefinierte Plugins entwickeln, Projekte migrieren oder Deployments optimieren - erhalten Sie fachkundige Beratung von einem zertifizierten Shopware-Entwickler.
Jetzt Beratung anfragen