Was macht cli-anything-audacity?
Ein zustandsbehaftetes Befehlszeilentool für Audiobearbeitung, das den gleichen Mustern wie die GIMP- und Blender-CLIs in diesem Repository folgt.
Installation
Dieses CLI wird als Teil des cli-anything-audacity-Pakets installiert:
pip install cli-anything-audacity
Voraussetzungen:
- Python 3.10+
- Audacity muss auf Ihrem System installiert sein
Verwendung
Grundlegende Befehle
# Hilfe anzeigen
cli-anything-audacity --help
# Interaktiven REPL-Modus starten
cli-anything-audacity
# Neues Projekt erstellen
cli-anything-audacity project new -o project.json
# Mit JSON-Ausgabe ausführen (für Agenten-Konsum)
cli-anything-audacity --json project info -p project.json
REPL-Modus
Wenn ohne Unterbefehl aufgerufen, startet das CLI eine interaktive REPL-Sitzung:
cli-anything-audacity
# Befehle interaktiv mit Tab-Vervollständigung und Verlauf eingeben
Befehlsgruppen
Projekt
Befehle zur Projektverwaltung.
| Befehl | Beschreibung |
|---|---|
new | Ein neues Projekt erstellen |
open | Ein bestehendes Projekt öffnen |
save | Das aktuelle Projekt speichern |
info | Projektinformationen anzeigen |
settings | Projekteinstellungen anzeigen oder aktualisieren |
json | Rohes Projekt-JSON ausgeben |
Spur
Befehle zur Spurverwaltung.
| Befehl | Beschreibung |
|---|---|
add | Eine neue Spur hinzufügen |
remove | Eine Spur nach Index entfernen |
list | Alle Spuren auflisten |
set | Eine Spureigenschaft setzen (Name, Stumm, Solo, Lautstärke, Panorama) |
Clip
Befehle zur Clip-Verwaltung.
| Befehl | Beschreibung |
|---|---|
import | Eine Audiodatei analysieren/importieren (Metadaten anzeigen) |
add | Einen Audioclip zu einer Spur hinzufügen |
remove | Einen Clip von einer Spur entfernen |
trim | Anfang und/oder Ende eines Clips zuschneiden |
split | Einen Clip an einer bestimmten Zeitposition teilen |
move | Einen Clip an eine neue Startzeit verschieben |
list | Clips auf einer Spur auflisten |
Effektgruppe
Befehle zur Effektverwaltung.
| Befehl | Beschreibung |
|---|---|
list-available | Alle verfügbaren Effekte auflisten |
info | Details zu einem Effekt anzeigen |
add | Einen Effekt zu einer Spur hinzufügen |
remove | Einen Effekt nach Index entfernen |
set | Einen Effektparameter setzen |
list | Effekte auf einer Spur auflisten |
Auswahl
Befehle zur Auswahlverwaltung.
| Befehl | Beschreibung |
|---|---|
set | Auswahlbereich festlegen |
all | Alles auswählen (gesamte Projektdauer) |
none | Auswahl aufheben |
info | Aktuelle Auswahl anzeigen |
Beschriftung
Befehle zur Beschriftungs-/Markierungsverwaltung.
| Befehl | Beschreibung |
|---|---|
add | Eine Beschriftung an einer Zeitposition hinzufügen |
remove | Eine Beschriftung nach Index entfernen |
list | Alle Beschriftungen auflisten |
Medien
Mediendatei-Operationen.
| Befehl | Beschreibung |
|---|---|
probe | Eine Audiodatei analysieren |
check | Überprüfen, ob alle referenzierten Audiodateien existieren |
Exportgruppe
Befehle zum Exportieren/Rendern.
| Befehl | Beschreibung |
|---|---|
presets | Export-Voreinstellungen auflisten |
preset-info | Details zu einer Voreinstellung anzeigen |
render | Das Projekt in eine Audiodatei rendern |
Sitzungsgruppe
Befehle zur Sitzungsverwaltung.
| Befehl | Beschreibung |
|---|---|
status | Sitzungsstatus anzeigen |
undo | Den letzten Vorgang rückgängig machen |
redo | Den letzten rückgängig gemachten Vorgang wiederherstellen |
history | Undo-Verlauf anzeigen |
Beispiele
Ein neues Projekt erstellen
Eine neue Audacity-Projektdatei erstellen.
cli-anything-audacity project new -o myproject.json
# Oder mit JSON-Ausgabe für programmatische Nutzung
cli-anything-audacity --json project new -o myproject.json
Interaktive REPL-Sitzung
Eine interaktive Sitzung mit Undo/Redo-Unterstützung starten.
cli-anything-audacity
# Befehle interaktiv eingeben
# 'help' verwenden, um verfügbare Befehle anzuzeigen
# 'undo' und 'redo' für die Verlaufsnavigation verwenden
Projekt exportieren
Das Projekt in ein endgültiges Ausgabeformat exportieren.
cli-anything-audacity --project myproject.json export render output.pdf --overwrite
Zustandsverwaltung
Das CLI verwaltet den Sitzungszustand mit:
- Undo/Redo: Bis zu 50 Ebenen Verlauf
- Projektpersistenz: Projektzustand als JSON speichern/laden
- Sitzungsverfolgung: Änderungen und Modifikationen verfolgen
Ausgabeformate
Alle Befehle unterstützen zwei Ausgabemodi:
- Lesbar für Menschen (Standard): Tabellen, Farben, formatierter Text
- Maschinenlesbar (
--json-Flag): Strukturiertes JSON für Agenten-Konsum
# Menschliche Ausgabe
cli-anything-audacity project info -p project.json
# JSON-Ausgabe für Agenten
cli-anything-audacity --json project info -p project.json
Für KI-Agenten
Bei programmatischer Nutzung dieses CLIs:
- Immer das
--json-Flag verwenden für analysierbare Ausgabe - Rückgabecodes überprüfen – 0 für Erfolg, ungleich 0 für Fehler
- stderr für Fehlermeldungen parsen bei Fehlschlag
- Absolute Pfade verwenden für alle Dateioperationen
- Existenz der Ausgaben überprüfen nach Exportvorgängen
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