Communitygithub.com

cli-anything-shotcut

Eine zustandsbehaftete Kommandozeilen-Schnittstelle für die Videobearbeitung, basierend auf dem MLT-XML-Format. Entwickelt für KI-Agenten und Power-User, die Shotcut-Projekte ohne grafische Oberfläche erstellen und bearbeiten möchten.

Was ist cli-anything-shotcut?

cli-anything-shotcut ist eine zustandsbehaftete, interaktive Kommandozeilen-Schnittstelle zur programmatischen Steuerung von Shotcut (basierend auf dem MLT-XML-Format). Sie ermöglicht KI-Agenten und Power-Usern, Videobearbeitungsprojekte vollständig ohne GUI zu erstellen, zu bearbeiten und zu rendern. Die CLI unterstützt einen zweistufigen Medien-Workflow (Import → Platzierung auf der Timeline), umfangreiche Filter- und Effektsteuerung (z. B. Keyframe-basierte Lautstärkenhüllkurven und Ducking), sowie eine deterministische Timeline-Rekonstruktion durch absolute Positionierung mittels `--at`. Sie bietet sowohl eine menschenlesbare als auch eine maschinenlesbare Ausgabe (über das `--json`-Flag) und ist daher ideal für automatisierte Workflows in CI/CD-Pipelines oder KI-gesteuerten Editierungsagenten. Plattformunterstützung: Python 3.10+, erfordert `melt` (MLT CLI), `ffmpeg`/`ffprobe` und Shotcut. Verfügbar über pip.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-shotcut

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht cli-anything-shotcut?

Eine zustandsbehaftete Kommandozeilen-Schnittstelle für die Videobearbeitung, basierend auf dem MLT-XML-Format. Entwickelt für KI-Agenten und Power-User, die Shotcut-Projekte ohne grafische Oberfläche erstellen und bearbeiten möchten.

Installation

Diese CLI wird als Teil des Pakets cli-anything-shotcut installiert:

pip install cli-anything-shotcut

Voraussetzungen:

  • Python 3.10+
  • melt (MLT CLI) — erforderlich für Rendern und Wiedergabe
  • ffmpeg / ffprobe — erforderlich für Medienanalyse
  • shotcut muss auf dem System installiert sein

Verwendung

Grundlegende Befehle

# Hilfe anzeigen
cli-anything-shotcut --help

# Interaktiven REPL-Modus starten
cli-anything-shotcut

# Ein neues Projekt erstellen
cli-anything-shotcut project new -o project.json

# Mit JSON-Ausgabe (für Agenten)
cli-anything-shotcut --json project info -p project.json

REPL-Modus

Wenn ohne Unterbefehl aufgerufen, startet die CLI eine interaktive REPL-Sitzung mit Unterstützung für Rückgängig/Wiederholen:

cli-anything-shotcut
# oder mit einem Projekt:
cli-anything-shotcut --project my_project.mlt

REPL-Befehle

Workflow: Zuerst immer media import, um eine clip_id zu erhalten, dann add-clip verwenden, um den Clip auf der Timeline zu platzieren.

Projekt & Sitzung:

  • new [profile] — Neues Projekt erstellen (Standard: hd1080p30)
  • open <path> — .mlt-Datei öffnen
  • save [path] — Projekt speichern
  • info — Projektinformationen anzeigen
  • xml — Roh-MLT-XML ausgeben
  • status — Sitzungsstatus anzeigen
  • undo / redo — Operationsverlauf navigieren

Medien (Zwei-Schritt-Modell):

  • media import <file> [--caption name] — Datei in den Projekt-Bin importieren, gibt clip_id zurück (z. B. clip0)
  • media — Alle importierten Medien auflisten
  • probe <file> — Eine Mediendatei analysieren

Timeline:

  • add-track <video|audio> [name] — Eine Spur hinzufügen
  • tracks — Alle Spuren auflisten
  • show — Visuelle Timeline-Übersicht
  • add-clip <clip_id> <track> [in] [out] [--at time] — Importierten Clip auf Spur platzieren
  • clips <track> — Clips auf einer Spur auflisten
  • remove-clip <track> <clip> — Einen Clip entfernen
  • trim <track> <clip> [--in tc] [--out tc] — Clip trimmen
  • split <track> <clip> <at> — Clip an einem Timecode teilen

Filter:

  • list-filters [video|audio] — Verfügbare Filter durchsuchen
  • filter-info <name> — Filterdetails anzeigen
  • add-filter <name> [--track n] [--clip n] [key=val ...] — Filter zu Clip, Spur oder global hinzufügen
  • filters [--track n] [--clip n] — Aktive Filter auflisten
  • remove-filter <idx> [--track n] [--clip n] — Filter nach Index entfernen
  • set-filter <idx> <param> <value> [--track n] [--clip n] — Filterparameter setzen
  • volume-envelope [--track n] [--clip n] TIME=LEVEL ... — Keyframe-basierte Lautstärkenhüllkurve (z. B. 00:00:00.000=1.0 00:00:03.000=0.35)
  • duck [--track n] [--clip n] START..END ... — Ducking-Hüllkurve (z. B. 00:00:06.000..00:00:09.000)

Export:

  • presets — Export-Voreinstellungen auflisten
  • render <output> [--preset name] — In Videodatei rendern

Befehlssgruppen

Projekt

Projektverwaltung: neu, öffnen, speichern, info.

BefehlBeschreibung
newEin neues leeres Projekt erstellen
openEine vorhandene .mlt-Projektdatei öffnen
saveDas aktuelle Projekt speichern
infoDetaillierte Projektinformationen anzeigen
profilesVerfügbare Videoprofile auflisten
xmlDas rohe MLT-XML des aktuellen Projekts ausgeben

Timeline

Timeline-Operationen: Spuren, Clips, Trimmen.

BefehlBeschreibung
showDie Timeline-Übersicht anzeigen
tracksAlle Spuren auflisten
add-trackEine neue Spur zur Timeline hinzufügen
remove-trackEine Spur nach Index entfernen
add-clipEinen importierten Clip per clip_id zu einer Spur hinzufügen; unterstützt --at für absolute Platzierung
remove-clipEinen Clip von einer Spur entfernen
move-clipEinen Clip zwischen Spuren oder Positionen verschieben
trimDie In/Out-Punkte eines Clips trimmen
splitEinen Clip am angegebenen Timecode in zwei teilen
clipsAlle Clips auf einer Spur auflisten
add-blankEine Lücke zu einer Spur hinzufügen
set-nameDen Anzeigenamen einer Spur setzen
muteEine Spur stummschalten oder die Stummschaltung aufheben
hideEine Videospur ein- oder ausblenden

Filtergruppe

Filteroperationen: hinzufügen, entfernen, Effekte konfigurieren.

BefehlBeschreibung
list-availableAlle verfügbaren Filter auflisten
infoDetaillierte Informationen über einen Filter und seine Parameter anzeigen
addEinen Filter zu einem Clip, einer Spur oder global hinzufügen
removeEinen Filter nach Index entfernen
setEinen Parameter an einem Filter setzen
listAktive Filter auf einem Ziel auflisten
volume-envelopeEine neue Keyframe-basierte Lautstärkenhüllkurve auf einer Spur oder einem Clip erstellen oder ersetzen
duckEine praktische Ducking-Hüllkurve über einem oder mehreren Zeitfenstern erstellen

Medien

Medienoperationen: analysieren, auflisten, Dateien prüfen.

BefehlBeschreibung
importEine Mediendatei in den Projekt-Bin importieren
probeDie Eigenschaften einer Mediendatei analysieren
listAlle Medienclips im aktuellen Projekt auflisten
checkAlle Mediendateien auf Existenz prüfen
thumbnailEin Vorschaubild aus einer Videodatei generieren

Export

Export-/Renderoperationen.

BefehlBeschreibung
presetsVerfügbare Export-Voreinstellungen auflisten
preset-infoDetails einer Export-Voreinstellung anzeigen
renderDas Projekt in eine Videodatei rendern

Übergangsgruppe

Übergangsoperationen: Überblendung, Wischblende und andere Übergänge.

BefehlBeschreibung
list-availableAlle verfügbaren Übergangstypen auflisten
infoDetaillierte Informationen über einen Übergangstyp anzeigen
addEinen Übergang zwischen zwei Spuren hinzufügen
removeEinen Übergang nach Index entfernen
setEinen Parameter an einem Übergang setzen
listAlle Übergänge auf der Timeline auflisten

Composite-Gruppe

Compositing: Überblendungsmodi, Bild-in-Bild, Deckkraft.

BefehlBeschreibung
blend-modesAlle verfügbaren Überblendungsmodi auflisten
set-blendDen Überblendungsmodus für eine Spur setzen
get-blendDen aktuellen Überblendungsmodus einer Spur abrufen
set-opacityDie Deckkraft einer Spur setzen (0.0-1.0)
pipDie Bild-in-Bild-Position für einen Clip setzen

Sitzung

Sitzungsverwaltung: Status, Rückgängig, Wiederholen.

BefehlBeschreibung
statusAktuellen Sitzungsstatus anzeigen
undoDie letzte Operation rückgängig machen
redoDie letzte rückgängig gemachte Operation wiederholen
saveSitzungsstatus auf Datenträger speichern
listAlle gespeicherten Sitzungen auflisten

Vorschau

Vorschaupakete und Live-Vorschau-Sitzungen für iterative Bearbeitungsprüfungen.

BefehlBeschreibung
preview recipesVorschau-Rezepte auflisten
preview captureEin niedrig aufgelöstes Vorschaupaket rendern
preview latestDas neueste vorhandene Paket zurückgeben
preview live startEine Live-Vorschau-Sitzung starten und das erste Paket veröffentlichen
preview live pushEin neues Paket in die Live-Sitzung veröffentlichen
preview live statusAktuellen Live-Sitzungsstatus abfragen, ohne zu rendern
preview live stopDie Live-Sitzung beenden, ohne Artefakte zu löschen

Typischer Inhalt eines quick-Pakets:

  • preview.mp4
  • mehrere Stichproben-Bilder
  • Mittelpunkt hero.png
  • summary.json mit Projektdaten

Poll-Modus wird unterstützt:

cli-anything-shotcut --json --project edit.mlt preview live start --recipe quick --mode poll --source-poll-ms 500

preview live status --json enthält Sitzungsreferenzen und eine kompakte trajectory_summary, damit Agenten preisgünstig die letzten wenigen Veröffentlichungen verstehen können.

Anzeiger-Befehle:

cli-hub previews inspect /path/to/bundle-or-session
cli-hub previews html /path/to/bundle-or-session -o page.html
cli-hub previews watch /path/to/session --open
cli-hub previews open /path/to/bundle-or-session

Beispiele

Ein neues Projekt erstellen

Erstellen Sie eine neue Shotcut-Projektdatei.

cli-anything-shotcut project new -o myproject.json
# Oder mit JSON-Ausgabe für programmatische Nutzung
cli-anything-shotcut --json project new -o myproject.json

Interaktive REPL-Sitzung

Starten Sie eine interaktive Sitzung mit Unterstützung für Rückgängig/Wiederholen.

cli-anything-shotcut
# Geben Sie Befehle interaktiv ein
# Verwenden Sie 'help', um verfügbare Befehle zu sehen
# Verwenden Sie 'undo' und 'redo' für die Verlaufsnavigation

Projekt exportieren

Exportieren Sie das Projekt in ein endgültiges Ausgabeformat.

cli-anything-shotcut --project myproject.json export render output.mp4 --overwrite

Deterministische Timeline-Rekonstruktion

Für Wiederaufbauten bevorzugen Sie die absolute Platzierung gegenüber einem append-only Clip-Einfügen:

cli-anything-shotcut --project myproject.mlt media import intro.mp4
cli-anything-shotcut --project myproject.mlt timeline add-clip clip0 \
  --track 1 --in 00:00:00.000 --out 00:00:04.000 --at 00:00:00.000

cli-anything-shotcut --project myproject.mlt media import broll.mp4
cli-anything-shotcut --project myproject.mlt timeline add-clip clip1 \
  --track 1 --in 00:00:10.000 --out 00:00:16.000 --at 00:00:08.000
  • --at fügt automatisch Lücken ein, wenn die Zielzeit auf leeren Raum fällt.
  • Die CLI lehnt Überlappungen mit einem vorhandenen Clip ab.
  • Bevorzugen Sie explizite --in- und --out-Werte, damit spätere absolute Platzierungen eindeutig bleiben.

Audio-Automation

cli-anything-shotcut --project myproject.mlt filter volume-envelope \
  --track 2 \
  --point 00:00:00.000=1.0 \
  --point 00:00:03.000=0.35 \
  --point 00:00:05.000=1.0

cli-anything-shotcut --project myproject.mlt filter duck \
  --track 2 \
  --window 00:00:06.000..00:00:09.000 \
  --window 00:00:15.000..00:00:18.000 \
  --normal 1.0 --duck 0.25

Die CLI verwaltet den Sitzungsstatus mit:

  • Rückgängig/Wiederholen: Bis zu 50 Ebenen Verlauf
  • Projektpersistenz: Speichern/Laden des Projektstatus als JSON
  • Sitzungsverfolgung: Änderungen und Modifikationen nachverfolgen

Ausgabeformate

Alle Befehle unterstützen zwei Ausgabemodi:

  • Menschenlesbar (Standard): Tabellen, Farben, formatierter Text
  • Maschinenlesbar (--json-Flag): Strukturiertes JSON für die Verarbeitung durch Agenten
# Menschliche Ausgabe
cli-anything-shotcut project info -p project.json

# JSON-Ausgabe für Agenten
cli-anything-shotcut --json project info -p project.json

Für KI-Agenten

Bei programmatischer Nutzung dieser CLI:

  1. Verwenden Sie immer das --json-Flag für analysierbare Ausgaben
  2. Prüfen Sie Rückgabecodes – 0 für Erfolg, ungleich 0 für Fehler
  3. Analysieren Sie stderr für Fehlermeldungen im Fehlerfall
  4. Verwenden Sie absolute Pfade für alle Dateioperationen
  5. Überprüfen Sie die Existenz von Ausgaben nach Exportoperationen
  6. Bevorzugen Sie timeline add-clip --at beim Wiederherstellen eines bekannten Schnitts
  7. Prüfen Sie finale Render nach Schlüsselbild-basierter Lautstärke- oder Ducking-Änderungen
  8. Verwenden Sie preview capture oder preview live ..., um Tempo, Schnitte und Filtereffekte visuell zu validieren
  9. Lesen Sie zurückgegebene Artefaktpfade wie hero.png und preview.mp4; JSON-Payloads referenzieren Dateien auf der Festplatte
  10. Verwenden Sie preview live status --json, bevor Sie die vollständige trajectory.json lesen
  11. Verwenden Sie cli-hub previews ... nur, um vorhandene Pakete oder Live-Sitzungen zu inspizieren/zu öffnen

Weitere Informationen

  • Vollständige Dokumentation: Siehe README.md im Paket
  • Testabdeckung: Siehe TEST.md im Paket
  • Methodik: Siehe HARNESS.md im cli-anything-plugin

Version

1.0.0

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-adguardhome

>-

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-blender

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-drawio

>-

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

Verwandte Skills