API und Integrationen
Die Kommandozeile zl nutzen
Ich möchte …
… die Aufgaben dieses Arbeitsbereichs mit dem Befehl zl aus einem Terminal oder Skript lesen und ändern.
Bevor du startest
- Du brauchst Node.js 22 oder neuer und einen API-Schlüssel dieses Arbeitsbereichs, siehe „API-Schlüssel erstellen und widerrufen“.
- Die Berechtigungen des Schlüssels bestimmen, was
zldarf.Nur lesenliest.Lesen und schreibenändert außerdem Aufgaben und füllt das Testmodul.Vollzugrifflöscht auch. - API-Schlüssel brauchen den Ultra-Plan der Person mit der Rolle
InhaberoderAdmin, die sie erstellt, und sind in der Beta.
So geht's
- Installiere
zlmitnpm install -g zeitlicht-cli, oder führe einen einzelnen Befehl mitnpx zeitlicht-cliaus. - Speichere den Schlüssel in einer Datei, führe
zl auth login < key.txtaus und lösche die Datei danach.zlprüft den Schlüssel und legt ihn im Schlüsselbund deines Systems ab, und wo es keinen gibt, in einer Datei, die nur du lesen kannst. In CI setzt du stattdessen die UmgebungsvariableZEITLICHT_API_KEY. zl auth statuszeigt Name, Arbeitsbereich, Berechtigungen und Ablaufdatum des Schlüssels.zlzeigt immer nur den Anfang des Schlüssels.zl boardslistet die Boards mit ihren IDs, undzl boardmit einer Board-ID dahinter listet dessen Spalten.zl members,zl tagsundzl topicslisten Personen, Tags und Themen. Mit einem Schlüssel für ausgewählte Boards zeigtzl memberskeine E-Mail-Adressen.zl tasks --assignee me --openlistet deine offenen Aufgaben. Filtere mit--board,--column,--tester,--done,--sinceund--query.--alllädt alle Seiten.zl task show 3f2a9c1ezeigt eine Aufgabe, genannt über ihre Kurz-ID, ihre ID oder ihren Link.- Lege eine Aufgabe mit
zl task create --title "Login prüfen" --board BOARD_IDan, auf Wunsch mit--description-file notizen.md,--assignee me,--tag TAG_ID,--due 2026-12-24oder--priority high. Ändere sie mitzl task update, verschiebe sie mitzl task move 3f2a9c1e --column SPALTEN_IDund lösche sie mitzl task delete 3f2a9c1e --yes. - Übergib eine Aufgabe an die Tester mit
zl test request 3f2a9c1e --instructions-file TESTING.md --tester mia@example.com --move-to SPALTEN_ID.zl test status 3f2a9c1ezeigt Tester, Urteile und Bugs. - Es gibt mehr:
zl comment add,zl checklist add,zl checklist check,zl bug report,zl bug status,zl link addundzl attachfür Dateien bis 10 MiB. Den Dateityp erkennt Zeitlicht wie in der App an der Endung; gesperrte Typen wie.exeoder.svglassen sich nicht anhängen.zl task id-fromliest einen Branch-Namen oder Titel eines Pull Requests und gibt die Aufgaben-ID darin aus.zl --helplistet alle Befehle. - Hänge
--jsonan einen Befehl, um eine Ausgabe zu bekommen, die ein Skript lesen kann. zl auth logoutvergisst den gespeicherten Schlüssel.
Das Ergebnis
zl liest und ändert die Aufgaben auf den Boards, die der Schlüssel erlaubt, und zwar in deinem Namen. Jede Anfrage erscheint im Zugriffsprotokoll des Schlüssels.
Häufige Fragen
Welche Exit-Codes nutzt zl?
0 erledigt, 1 von der API abgelehnt, 2 falsch aufgerufen, 3 kein Schlüssel oder Schlüssel abgelehnt, 4 keine Verbindung. Die Fehlerzeile nennt den Grund, etwa key-expired.
Kann ein Skript zl task create gefahrlos wiederholen?
Ja. Gib --idempotency-key mit einem eigenen Wert an, etwa der Run-ID deines CI-Jobs (bis zu 200 Buchstaben, Ziffern oder _.:-). Läuft derselbe Befehl mit demselben Wert innerhalb von 24 Stunden noch einmal, gibt Zeitlicht die erste Aufgabe zurück, statt eine zweite anzulegen. Solange die erste Anfrage noch läuft, bekommt eine Wiederholung 409 (idempotency-in-progress), höchstens 60 Sekunden lang. Derselbe Wert mit anderen Angaben bekommt 422.
Kann zl mit einer Testumgebung sprechen?
Ja. ZEITLICHT_API_URL lenkt zl an eine andere Adresse. Unverschlüsseltes HTTP geht nur für deinen eigenen Rechner (localhost).
Wo genau liegt mein Schlüssel?
Im Schlüsselbund von macOS, Windows oder Linux. Ohne Schlüsselbund in ~/.config/zeitlicht/credentials.json, die nur du lesen kannst. zl warnt, wenn andere die Datei lesen könnten. ZL_NO_KEYRING=1 überspringt den Schlüsselbund.