CLI-Referenz · Referenz
Verhalten im Detail
Regeln, die für mehrere Befehle gelten. Sie erklären, warum die CLI sich an einer Stelle anders verhält, als man vielleicht erwartet.
Branch-Erkennung
Nur wenn die Arbeit beginnt (task create --start, task start) und kein --branch angegeben
ist, liest die CLI git rev-parse --abbrev-ref HEAD. Auf main, master oder develop meldet
sie keinen Branch, weil das kein Aufgaben-Branch ist. Ein Task, der ohne --start ins Backlog
geht, bekommt keinen Branch, auch wenn gerade ein Feature-Branch ausgecheckt ist.
Idempotenz
task create mit --ref, bei --start auch abgeleitet aus dem Branch, gibt bei einem bestehenden
offenen Task diesen zurück und meldet auf stderr existing task #42 reused. Der Exit-Code bleibt 0.
Geplante Tasks ohne --start und ohne --ref haben keinen Schlüssel, mehrere davon auf demselben
Branch ergeben mehrere Tasks.
Lokale Pfade
Titel, Beschreibungen und Kommentare gehören dem Team. Deshalb räumt die CLI Pfade auf, bevor sie
sie schickt (task create, edit, comment und die --comment von move und done):
- Ein Pfad im Repo wird relativ, etwa
apps/web/src/a.ts. - Ein Pfad außerhalb (Scratchpad,
/tmp, Home, Windows-Laufwerk) und ein gitignorierter werden zu<lokaler Pfad>, weil sie für alle anderen wertlos sind. - Alles andere bleibt: API-Routen wie
/api/v1/tasks, URLs, relative Pfade.
Auf stderr steht eine Zeile, was geändert wurde. --keep-paths lässt alles stehen.
Uploads
Der Dateityp wird aus der Endung abgeleitet (.png, .pdf, .md, .log, …), weil die API den
Typ prüft. Unbekannte Endungen lehnt die API ab.
Version im User-Agent
Jede Anfrage nennt die CLI, ihre Version, Plattform und Installationsart, zum Beispiel
workban-cli/0.38.0 (darwin-arm64; binary). Workban merkt sich den letzten Stand am Token, damit
Plattform-Admins sehen, wer noch eine alte CLI nutzt. Sonst sendet die CLI nichts: keine
Telemetrie, sie spricht nur mit der konfigurierten API.
Timeouts
10 Sekunden pro Anfrage. Kurze Ausfälle fangen die Wiederholungen ab.
Bewusst nicht geplant
Solange niemand sie vermisst:
- Offline-Queue: Die CLI wiederholt kurze Ausfälle selbst, Hooks lassen bei Ausfall durch, und ein Agent trägt seinen Task danach nach. Eine Queue brächte Probleme mit Reihenfolge und Konflikten.
- Watch-Modus (
workban board --watch): Das Board in der Web-App und das Dashboard sind live, im Terminal fehlt der Bedarf.