The board
$ ptln boardThe work board in the terminal. partyline's own board has five columns: backlog, building, blocked, review, accepted. Piped or redirected, it prints once and exits.
Boards from other trackers appear as sources. An Odoo provider ships with partyline; S switches source, p picks the project. Foreign boards are read on open, not polled.
Keys
| Key | Does what |
|---|---|
↑↓←→ / jkhl | move; ← → skip empty columns |
⏎ | fold a chain, or run a card's primary move |
a | every move this card has, with what each does |
m | grab the card — it follows the arrows, other cards make room, ⏎ drops it where shown, esc puts it back |
e · c | edit the title · comment (an internal note on a foreign card) |
d | detail: acceptance criteria, the live run log, why it is stuck |
s · r · o | attach the run's session · review the diff · open the PR |
n · D · P | file a new backlog item · describe a problem for an agent to shape · promote a planned item onto a machine |
S · p · i | switch source · pick project/team · import a foreign card as planned work |
g · ? · q | refresh · keymap · leave |
Moving cards (m)
The drop means what the screen shows, and it applies immediately; the write to the source runs behind it. A refused write reloads the board and reverts the preview.
- partyline Backlog —
↑↓reorders. Order in the Backlog is priority; the other columns follow what happened and are not reorderable. - Across columns — a transition. A partyline card can only be carried into columns one of its
a-menu actions reaches; the drop runs that action, confirms included. - Odoo, across stages — writes
stage_idthrough the server's curated update tool. - Odoo, within a stage — writes the kanban
sequence. Odoo ranks priority above sequence, so the board displays Odoo's exact order (priority first) and a drop that lands inside a different priority band writes the priority too. The status line says so every time; a drop on a band boundary keeps the card's own priority.
Odoo requirements
- Scope into a project first (
p) — writes act on tasks, not on the projects overview. - The server's update tool must accept
stage_id(moves) andsequence(row order). A server without them stays read-only and the refusal appears on the status line.