Was macht cli-anything-mermaid?
Erstellen, bearbeiten und rendern Sie Mermaid-Diagramme über zustandsbehaftete Projektdateien und den mermaid.ink-Renderer. Entwickelt für KI-Agenten und Power-User, die Flussdiagramme, Sequenzdiagramme und andere Visualisierungen ohne GUI erzeugen möchten.
Installation
Dieses CLI wird als Teil des Pakets cli-anything-mermaid installiert:
pip install cli-anything-mermaid
Voraussetzungen:
- Python 3.10+
- Keine externe Software erforderlich (Rendering verwendet den Cloud-Dienst mermaid.ink)
Verwendung
Grundlegende Befehle
# Hilfe anzeigen
cli-anything-mermaid --help
# Interaktiven REPL-Modus starten
cli-anything-mermaid
# Neues Projekt erstellen
cli-anything-mermaid project new -o diagram.json
# Mit JSON-Ausgabe ausführen (für Agenten)
cli-anything-mermaid --json project info
REPL-Modus
Wenn ohne Unterbefehl aufgerufen, startet das CLI eine interaktive REPL-Sitzung:
cli-anything-mermaid
# Befehle mit Tab-Vervollständigung und Verlauf interaktiv eingeben
Befehlsgruppen
Projekt
Befehle zum Lebenszyklus des Projekts.
| Befehl | Beschreibung |
|---|---|
new | Ein neues Mermaid-Projekt erstellen (mit optionalem Beispiel-Preset und Thema) |
open | Eine vorhandene Mermaid-Projektdatei öffnen |
save | Das aktuelle Projekt in eine Datei speichern |
info | Informationen zum aktuellen Projekt anzeigen |
samples | Verfügbare Beispiel-Diagramm-Presets auflisten |
Diagramm
Befehle zur Bearbeitung der Diagrammquelle.
| Befehl | Beschreibung |
|---|---|
set | Den Mermaid-Quelltext ersetzen (inline oder aus Datei) |
show | Den aktuellen Mermaid-Quellcode ausgeben |
Export
Befehle zum Rendern und Teilen.
| Befehl | Beschreibung |
|---|---|
render | Das Diagramm als SVG oder PNG über mermaid.ink rendern |
share | Eine Mermaid-Live-Editor-URL zum Teilen generieren |
Sitzung
Befehle zum Sitzungszustand.
| Befehl | Beschreibung |
|---|---|
status | Aktuellen Sitzungszustand anzeigen |
undo | Die letzte Änderung am Diagrammquelltext rückgängig machen |
redo | Die letzte rückgängig gemachte Änderung wiederherstellen |
Beispiele
Ein Flussdiagramm erstellen und rendern
# Projekt mit Flussdiagramm-Beispiel erstellen
cli-anything-mermaid project new --sample flowchart -o flow.json
# Diagrammquelle ersetzen
cli-anything-mermaid --project flow.json diagram set --text "graph TD; A-->B; B-->C;"
# Als SVG rendern
cli-anything-mermaid --project flow.json export render output.svg --format svg
Ein Sequenzdiagramm erstellen
# Projekt mit Sequenz-Beispiel erstellen
cli-anything-mermaid project new --sample sequence -o seq.json
# Diagramm aus Datei setzen
cli-anything-mermaid --project seq.json diagram set --file my_diagram.mmd
# Als PNG rendern
cli-anything-mermaid --project seq.json export render output.png --format png
Ein Diagramm teilen
# Eine bearbeitbare Mermaid-Live-URL generieren
cli-anything-mermaid --project flow.json export share --mode edit
# Eine reine Ansichts-URL generieren
cli-anything-mermaid --project flow.json export share --mode view
Interaktive REPL-Sitzung
cli-anything-mermaid
# new flowchart
# set graph TD; A-->B; B-->C;
# render output.svg
# share
# quit
Zustandsverwaltung
Das CLI verwaltet den Sitzungszustand mit:
- Undo/Redo: Änderungen am Diagrammquelltext rückgängig machen oder wiederholen
- Projektpersistenz: Projektzustand als JSON speichern/laden
- Sitzungsverfolgung: Änderungen und Modifikationen verfolgen
Ausgabeformate
Alle Befehle unterstützen zwei Ausgabemodi:
- Menschlich lesbar (Standard): Tabellen, Farben, formatierter Text
- Maschinenlesbar (
--json-Flag): Strukturiertes JSON für Agenten
# Menschliche Ausgabe
cli-anything-mermaid project info
# JSON-Ausgabe für Agenten
cli-anything-mermaid --json project info
Für KI-Agenten
Bei der programmatischen Nutzung dieses CLI:
- Immer
--json-Flag verwenden für analysierbare Ausgabe - Rückgabecodes prüfen – 0 für Erfolg, ungleich 0 für Fehler
- stderr parsen für Fehlermeldungen bei Fehlern
- Absolute Pfade verwenden für alle Dateioperationen
- Existenz der Ausgaben prüfen nach Rendervorgä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