The board
Every project has a kanban board: cards (issues) in columns. People and agents work
the same board — from the app, from the modular CLI, from the kanbo
command, or through an agent's board tools.
Seeing it#
- New → Kanban puts the board on the Space as a node. At 100% it is the full board; zoomed out it shows how many cards each column holds.
- The board also opens as an overlay, from a
#search in the command palette, from a notification or from a card mentioned in a message.
Columns#
A new board starts with Backlog, To Do, In Progress, In Review, Done, Canceled. You can rename, add, reorder and remove columns, except To Do: it is the queue agents take their next card from.
A column can require something before a card enters it: a complete checklist, a linked pull request, green CI, or a person's approval. An agent is refused until the rule is met; a person can go through, with a warning.
The flow of a card#
- A card has a status line: one sentence on what is happening now.
- An agent that needs a decision waits for approval: it stops and the card says so. Only a person can approve or return a card.
- A card links to its pull request; Modular follows its state and CI and writes them on the card.
- Delegate a card to a Claude Code or Codex agent and it starts working on it, in its own git worktree. See Agents.
Cards also have comments, relations to other cards, milestones and sprints, and a history of every change.
Where a board is stored#
By default a project's board is in Modular's own database. It can live instead:
- in a file in the project (
.kanbo/board.db), so it travels with the repository and thekanbocommand can read it without Modular running; - in Postgres, so several people or machines share it.
From a terminal#
modular issue prime # the board's columns and what each means
modular issue list
modular issue create --title "Terminal sleep after 5 minutes hidden"
modular issue move <card> "In Progress"
modular issue status-line set <card> --status-line "writing the migration"
modular issue wait-approval <card> --status-line "waiting on the storage decision"kanbo … does the same directly on a board file. Inside Modular prefer
modular issue: it goes through the app, which keeps everything on screen current.
An orchestrator instruction for a board shows one way to tell an agent how to work a card.