CLI-Referenz · Befehle
task
Tasks anlegen, übernehmen, verschieben und abschließen. Das sind die Befehle, die Agenten am
häufigsten benutzen, vor allem task create,
task start und task done.
Welcher Task gemeint ist
Task-Nummern gelten für den ganzen Workspace, nicht je Projekt. Bei show, start, move,
done, comment, attach und edit ist die Nummer optional. Ohne Nummer nimmt die CLI den
laufenden Task im Projekt aus der .workban.toml, den auch
workban task current zeigt: meinen Task auf In Progress, Testing oder
On Hold, und zwar
- den auf dem aktuellen Git-Branch,
- sonst den einzigen offenen,
- sonst den einzigen auf In Progress.
Bleibt es mehrdeutig, verlangt die CLI die Nummer (Exit-Code 2), damit ein Befehl nie auf dem falschen Task landet. Statt der Nummer geht überall auch die ID des Tasks.
workban task create
Legt einen Task an. Mit --start steht er sofort auf In Progress, gehört dem Token-Inhaber und
bekommt Branch und Idempotenz-Schlüssel aus Git.
workban task create <title> [Optionen]Argumente
<title>Pflicht
Optionen
--description <text>WertBeschreibung inline--description-file <path>WertBeschreibung aus Datei--stdinSchalterBeschreibung von stdin lesen--project <slug>Wertsonst aus .workban.toml--startSchalterdirekt auf in_progress, Assignee = ich--assignee [wer]optionaler Wertme oder Benutzername, ohne Wert eine Auswahl; ohne --start bleibt der Task sonst unzugewiesen--agent <type>Wertwer arbeitetWerte:claude-code · codex · other · human--branch <name>Wertmit --start sonst der aktuelle Git-Branch--ref <external_ref>WertIdempotenz-Schlüssel, mit --start sonst der Branch--no-branch-detectSchalterBranch auch mit --start nicht aus Git ableiten--keep-pathsSchalterlokale Pfade in Titel, Beschreibung oder Kommentar stehen lassen
Die Beschreibung kommt aus --description, --description-file oder --stdin. Für Agenten ist
--stdin mit Heredoc der beste Weg, weil keine Datei entsteht, die jemand aufräumen muss.
- Idempotent: Mit
--start(oder--ref) gibt es je Branch nur einen offenen Task. Ein zweiter Aufruf gibt den bestehenden zurück, meldetexisting task #42 reusedundreused: truein der JSON-Antwort. Exit-Code bleibt 0. - Branch: Mit
--startliest die CLI den aktuellen Git-Branch, außer aufmain,masterunddevelop. Ohne--startbekommt der Task keinen Branch. - Zuweisen ohne Start:
--assignee meoder ein Benutzername. Ohne Wert erscheint im Terminal eine nummerierte Auswahl der Mitglieder (nsteht für niemand). Ohne Terminal bricht das mit Exit-Code 2 ab und nennt die Benutzernamen. - Lokale Pfade in Titel und Beschreibung räumt die CLI vorher auf, siehe Lokale Pfade.
Beispiele
# Agent beginnt neue Arbeit: Task anlegen und sofort starten
workban task create "Login-Redirect nach Magic Link fixen" --stdin --start --agent claude-code --json <<'EOF'
Nach dem Klick auf den Magic Link landet man wieder auf /login.
EOF
# Ticket nur vormerken, im Backlog für mich
workban task create "Passkey-Login in Safari testen" --assignee me
workban task list
Listet Tasks als kompakte Tabelle. Standard ist das Projekt aus der .workban.toml, ohne
erledigte Tasks, höchstens 50.
workban task list [Optionen]Optionen
--mineSchalternur meine--status <list>Wertkommagetrennt, z. B. in_progress,testing--project <slug>Wertnur dieses Projekt (Standard: das Projekt aus .workban.toml)--all-projectsSchalterTasks aller Projekte, auch in einem Repo mit .workban.toml--archivedSchalterauch Tasks archivierter Projekte--allSchalterauch erledigte (Standard: ohne done)--limit <n>Wertmax. AnzahlStandard:50
--all-projects zeigt alle Projekte, auch in einem Repo mit .workban.toml, --archived auch
Tasks archivierter Projekte, --all auch erledigte.
workban task list --mine
workban task list --status in_progress,testing --all-projects
#42 in_progress workban Login-Redirect nach Magic Link fixen claude-code fix/auth-redirect-loop läuft 22m
#39 done screenway Slider-Animation auf Safari codex feat/slider 1h 12m
workban task current
Zeigt meinen laufenden Task in diesem Projekt, nach den Regeln aus
Welcher Task gemeint ist. Gibt es keinen, endet der Befehl mit
Exit-Code 2 und nennt workban task start <nr>. Gibt es mehrere, nennt er ihre Nummern.
workban task currentworkban task show
Zeigt einen Task mit Beschreibung, Kommentaren und Anhängen, ohne Nummer den laufenden.
workban task show [id] [Optionen]Argumente
[id]optional
Optionen
--download [dir]optionaler WertAnhänge laden; ohne Ordner in einen neuen privaten Ordner (Pfade unter downloaded)
--download lädt die Anhänge herunter. Ohne Ordner landen sie in einem neuen privaten Ordner
(Rechte 0700), die Pfade stehen in der JSON-Antwort unter downloaded.
workban task show 28 --json --download
workban task start
Übernimmt einen Task und setzt ihn auf In Progress: die Kurzform für claim und
move in_progress. Ohne Nummer der laufende Task, etwa zurück aus Testing oder On Hold.
workban task start [id] [Optionen]Argumente
[id]optional
Optionen
--agent <type>Wertwer arbeitetWerte:claude-code · codex · other · human--branch <name>Wertsonst aktueller Git-Branch--forceSchalterauch einen erledigten Task wieder öffnen
start setzt die Zeitstempel, aus denen die Dauer berechnet wird. Einen erledigten Task öffnet
es nur mit --force: Weil Nummern für den ganzen Workspace gelten, könnte eine Nummer aus einem
anderen Repo sonst fertige Arbeit unbemerkt wieder öffnen.
workban task start 28 --agent claude-code --json # bestehende Aufgabe übernehmen
workban task start --agent claude-code --json # zurück an die Arbeit am laufenden Task
workban task claim
Übernimmt einen Task (Assignee = ich), der Status bleibt. Ein schon zugewiesener Task kann übernommen werden, der vorherige Assignee steht im Verlauf.
workban task claim <id> [Optionen]Argumente
<id>Pflicht
Optionen
--agent <type>Wertwer arbeitetWerte:claude-code · codex · other · human--branch <name>WertBranch der Arbeit
workban task move
Setzt den Status: backlog, in_progress, testing, on_hold oder done. Ohne Nummer gilt
der laufende Task, das erste Argument ist dann der Status.
workban task move <idOrStatus> [status] [Optionen]Argumente
<idOrStatus>Pflicht[status]optional
Optionen
--comment <text>WertKommentar im selben Schritt--position <n>WertReihenfolge in der Spalte (kleiner = weiter oben)--tokens <n>Wertbei done: Token-Verbrauch angeben, wenn er nicht gemessen werden kann--no-tokensSchalterbei done: keinen Token-Verbrauch messen--keep-pathsSchalterlokale Pfade in Titel, Beschreibung oder Kommentar stehen lassen
Ein Wechsel auf denselben Status ändert nichts und lässt sich deshalb gefahrlos wiederholen.
--comment schreibt im selben Schritt einen Kommentar, etwa worauf ein Task auf On Hold wartet.
Bei done gelten dieselben Regeln zum Token-Verbrauch wie bei
task done.
workban task move testing --json # Tests laufen
workban task move 42 on_hold --comment "Wartet auf Freigabe" --json
workban task move 42 backlog --position 1 # ganz nach oben
workban task done
Setzt einen Task auf Done, die Kurzform für move done. Ohne Nummer der laufende Task.
workban task done [id] [Optionen]Argumente
[id]optional
Optionen
--comment <text>Wertwas gemacht wurde, PR-Link--tokens <n>WertToken-Verbrauch angeben, wenn er nicht gemessen werden kann (nie schätzen)--no-tokensSchalterkeinen Token-Verbrauch messen--keep-pathsSchalterlokale Pfade in Titel, Beschreibung oder Kommentar stehen lassen
Beim Wechsel misst die CLI den Token-Verbrauch der Agenten-Sitzung, in der sie läuft, und hängt
ihn an den Task. Ohne Agenten-Sitzung, etwa im eigenen Terminal, wird nichts gemessen. --tokens
trägt eine echte Zahl von Hand ein, wenn sie nicht gemessen werden kann, --no-tokens schaltet
die Messung ab. Scheitert die Messung, geht der Task trotzdem auf Done, auf stderr steht ein
Hinweis.
workban task done --comment "Redirect gefixt, Commit a1b2c3d" --json
workban task comment
Schreibt einen Kommentar in Markdown, optional mit Dateien. Ohne Nummer am laufenden Task, das erste Argument ist dann der Text.
workban task comment <idOrText> [text] [Optionen]Argumente
<idOrText>Pflicht[text]optional
Optionen
--file <path...>ListeDateien anhängen--keep-pathsSchalterlokale Pfade in Titel, Beschreibung oder Kommentar stehen lassen
workban task comment "Ursache gefunden: der Cookie wird vor dem Redirect gelöscht"
workban task comment 42 "Screenshot vom Fehler" --file fehler.png
workban task attach
Hängt Dateien an den Task oder mit --comment-id an einen Kommentar. Ohne Nummer der laufende
Task: Das erste Argument gilt als Task, wenn es eine Nummer oder ID ist, sonst als Datei.
workban task attach [idOrFile] [files...] [Optionen]Argumente
[idOrFile]optional[files]optional, mehrere möglich
Optionen
--comment-id <id>Wertan diesen Kommentar statt an den Task--clipboardSchalterdas Bild aus der Zwischenablage anhängen--lastSchalterden neuesten Screenshot anhängen
--clipboardhängt das Bild aus der Zwischenablage an (macOS über AppleScript, Windows über PowerShell, Linux überwl-pasteoderxclip).--lasthängt den neuesten Screenshot an. Den Ordner liest die CLI auf macOS auscom.apple.screencapture location, sonst nimmt sie den üblichen Bilder-Ordner.- Der Dateityp kommt aus der Endung (
.png,.pdf,.md,.log, …). Unbekannte Endungen lehnt die API ab.
Ohne Bild in der Zwischenablage oder ohne Screenshot endet der Befehl mit Exit-Code 2 und sagt warum.
workban task attach screenshot.png log.txt
workban task attach --clipboard
workban task edit
Ändert Titel, Beschreibung, Branch, Agent, Zuweisung oder Projekt. Ohne Nummer der laufende Task.
workban task edit [id] [Optionen]Argumente
[id]optional
Optionen
--title <text>Wertneuer Titel--description <text>Wertneue Beschreibung inline--description-file <path>Wertneue Beschreibung aus Datei--stdinSchalterBeschreibung von stdin--worked <minuten>Wertgearbeitete Zeit korrigieren, der Rest zählt als Pause--branch <name>WertBranch setzen, leer entfernt ihn--no-branchSchalterBranch entfernen--agent <type>Wertwer arbeitetWerte:claude-code · codex · other · human--assignee [wer]optionaler Wertme, Benutzername oder none (entfernt die Zuweisung), ohne Wert eine Auswahl--project <slug>Wertin dieses Projekt verschieben--keep-pathsSchalterlokale Pfade in Titel, Beschreibung oder Kommentar stehen lassen
--worked <minuten>korrigiert die gearbeitete Zeit, die Differenz zur verstrichenen Spanne zählt als Pause. Nötig ist das selten, weil die Uhr nur in In Progress und Testing läuft und Leerlauf nach 45 Minuten gedeckelt wird.--no-branchoder--branch ""entfernt den Branch. Ein Schlüssel, der aus dem Branch abgeleitet war, geht mit.--assignee noneentfernt die Zuweisung.
workban task edit --stdin <<'EOF'
Neue Beschreibung mit dem genaueren Plan.
EOF
workban task edit 42 --worked 90
workban task delete
Löscht einen Task endgültig, mit allen Anhängen. Das dürfen nur Owner und Admins.
workban task delete <id> [Optionen]Argumente
<id>Pflicht
Optionen
--yesSchalterohne Rückfrage
Im Terminal fragt die CLI vorher nach. Ohne Terminal ist --yes Pflicht, sonst endet der Befehl
mit Exit-Code 2.