Kanban
Run the full agile cycle — backlog, sprints, story points, workflow rules, automations and recurring cards — with rich cards, Git links and AI.
What a Kanban room is
A Kanban room is a complete agile tool, not just columns of cards. It carries a backlog, sprint planning, a scrum board, story points, rich cards with checklists and custom fields, rules about how work may move, and automations that fire when it does. Teams that only want a simple card board can use it that way and ignore the rest.
Add a Kanban room
- In the space's sidebar, click + and pick Kanban Board.
- Name the board — the name matters, because it sets the reference-key prefix for every card (see below).
- Set visibility, then either start empty or pick from the board templates gallery (36 templates) to get a ready-made structure.
A new board arrives with one group, Stories, and five columns: Backlog, To Do, In Progress, Review and Done.
A room can hold several boards, each a tab along the top. A room needs at least one, so the last board cannot be deleted.
Views and layouts
Along the top: one tab per board, then User Flow, Overview, Tasks, Timeline, Sprints and Scrum.
Within a board you can switch how cards are laid out: Board for flow, List for scanning, Tree for hierarchy, and Calendar for dates. Same cards in every case — no duplicate entry. The layout you pick is remembered per board.
The List layout lets you choose which columns to show: status, priority, assignee, type, points, sprint, labels, tasks and due date. Status, priority, assignee, points and tasks are on by default.
Columns and groups
Columns belong to groups, which band the board horizontally — one group might hold the delivery columns and another a support lane. A group has a name, a colour and a collapse state, and columns are reordered within and between them.
Deleting a column deletes its cards, and cleans up the workflow rules and automations that referred to it.
Cards
Every card gets a reference key like OB-3. The prefix comes from the board's name: the first letters of up to four words, uppercased. Keys are assigned on creation and never reused, so a card can be cited unambiguously in chat, in a commit, or in a branch name.
Clicking a card opens it in a slider and puts ?card=<id> in the URL, so you can copy the address bar and hand someone a link straight to that card.
Card fields cover:
- Assignee — a name or an email address.
- Priority — low, medium, high or critical. New cards are medium.
- Story points, start date and due date.
- Time estimate, in minutes.
- Feature type, labels and tags. Tags are defined once per board with a colour; labels are free text on the card.
- Tasks — a checklist for breaking the card down. Each item can carry its own priority, due date and assignee.
- Related work — parent, child, related, blocks and duplicates links between cards. A parent/child link is only valid one level down: epic to story, story to subtask.
- Custom fields — a label and a value, for whatever your process needs beyond the built-in fields.
- Links — named URLs.
- Images and files — up to 10 attachments per card. Attachments are saved with the rest of the organization's files and spend the owner's account allowance; a single file can be up to 20 MB unless a platform admin has raised the ceiling. See Storage and files.
Cards also come in kinds beyond plain text: action items, sticky notes with a colour, GIFs, drawings, polls and health checks.
Use the Tasks checklist to size scope before the sprint starts. A card whose checklist won't fit a sprint is really several cards.
Discussion, mentions, and the agent
Each card has a Discussion thread. @mention a teammate to notify them with a deep link to the card, so "can you look at this" arrives with the card attached. Comments take the eight GitHub reactions.
Mention @agent in a discussion to hand the card to the AI agent room connected to this board. The agent reads the card's context and replies in the thread, so the discussion is the transcript and nobody has to open the agent room to follow what happened. Connect a board to an agent from the board's settings menu — see AI Agent.
Assigning a card to someone emails them. Cards with a due date inside the next 24 hours notify their assignee once, when the assignee's name or email matches a member of the space.
Sprints and the backlog
Groom work in the backlog, pull it into sprints, and run the sprint from the Scrum view. A sprint has a name, a goal, a start and an end, a status (planned, active or completed) and a cadence — daily, weekly, biweekly, triweekly, monthly or quarterly — which sets the end date when you create it.
Sprint insights report on a sprint while it runs: total and completed cards, total and completed checklist items, progress by group, and where you are in the sprint's days — elapsed, remaining, total. Deleting a sprint releases its cards rather than deleting them.
Workflow rules
A board can restrict which column a card may move to next. It is off by default; turn it on from the board settings menu under Workflow.
Rules are set one source column at a time: pick a column, tick the columns a card may move to from there. A column with nothing ticked stays unrestricted — so you can constrain the one transition that matters without mapping the whole board.
A move the rules forbid is refused, with the reason, and the card does not move.
System moves are exempt on purpose. A card moved by a merged pull request or a finished agent run is not blocked by workflow rules, because leaving it stuck in place would be worse than the rule being bent.
Automations
An automation fires when a card enters a column. That is the only trigger, deliberately.
A rule names a column and then does one or both of two things:
- Notify a specific board member.
- Move the card to another column.
Rules are named, can be switched off without deleting, and are managed from the board settings menu under Automations.
An automation's own move does not trigger further automations. One hop is the whole loop-prevention mechanism, and it is simpler than a cycle detector.
Saved filters
A filter is built from conditions in a small builder — no query language. Each condition is a field, an operator, and a value, and conditions combine with AND.
The fields are assignee, priority, type, sprint, due date and points. The operators are is, is not, contains, is before, is after, is empty and is not empty.
A filter is private to you unless you mark it shared, in which case everyone on the board can use it. Only its creator can edit or delete a personal filter.
Recurring cards
A column can spawn a fresh card on a schedule — "every Monday at 9am UTC, drop a new Weekly planning card into Backlog". Open the column's menu and choose Recurring cards.
Each schedule has a title, a description, a card type, and exactly one cadence:
- Every N minutes, or
- At a given hour UTC, optionally on one weekday.
You pick one or the other, never both. A schedule can be switched off without deleting it. The clock stamps each run before the card is written, so a slow pass cannot double-fire.
Card templates
A card template is a saved blueprint — a name, a title, a description and a card type — that a team picks from the column composer instead of retyping the same boilerplate. Bug reports and feature requests are the usual candidates.
Templates are created and deleted, not edited: change one by deleting it and saving a new one. They are distinct from board templates, which seed a whole board, and from recurring cards, which spawn one on a clock.
Import and export
Import from another tool takes a parsed export from Jira, Trello, Monday.com, ClickUp or a CSV and builds a whole board from it. The wizard walks you through upload, mapping each of your columns onto a field, mapping people, and a review — nothing is written until you confirm.
Mappable fields are title, description, status (which becomes the column), assignee, priority, labels, tags, due date, start date, story points, time estimate, type, parent and checklist. A row whose status does not match a column lands in the backlog rather than silently in the first column.
There is no transaction behind an import. If it fails part-way, the response tells you exactly what was written, so you can delete the board and retry rather than guessing.
Export to CSV is in the same menu.
Git and pull requests
Connect the board to GitHub or GitLab and cards link themselves to the pull requests that implement them.
A card is matched by its reference key appearing in a branch name, a pull request title, or its body — OB-15, OB_15, OB 15 and OB15 all match, case-insensitively. There are no magic words: the key alone is the signal. Each card shows a suggested branch name so the convention is easy to follow.
You can also link a pull request by hand: paste its URL, or just its number. A link you remove by hand is never restored by the next sync.
A card shows its pull requests with their state (open, draft, merged, closed), the roll-up of its checks, and the roll-up of its reviews. When a pull request merges, the card moves to the column you configured — forward only, so re-running a sync or a retried webhook cannot undo a move somebody made by hand afterwards.
Updates arrive two ways: a webhook from your host, within seconds, and a scheduled sync roughly every ten minutes as the floor. A token without permission to install a webhook still gives a working feature through the schedule.
Connections, repositories and user mapping are described in The build agent.
Publishing and the API
The board's Share dialog holds three separate switches:
- Public board — a read-only page at
/board/<token>that anyone with the link can open, with no account. Descriptions, assignee names, and start and due dates are each off or on independently, and descriptions and assignees start off. Backlog cards, discussions, attachments, branches, agent runs, sprints and custom fields never travel. There is an embed snippet for putting the board in someone else's page. - API access — named, revocable tokens for reading the full board over HTTP, and for the board's MCP server. See Board API and Board MCP server.
- Webhooks — announce every card created, edited, moved or deleted to a URL you register, within seconds. Webhooks ride the same API access switch, so one toggle controls every way the board leaves the building.
Rotating the public token breaks every copy of the old link. That is the only way to revoke a URL that has already been pasted somewhere you regret.
My Tasks
Each space has a My Tasks page that collects everything assigned to you across the whole workspace: Kanban cards, Gantt tasks, and retro action items that have not already been promoted to a board. It is sorted by due date, with undated work last.
Matching is by name or email address, because a card's assignee is free text rather than an account.
Tips
- Rotate views for different jobs: the board day to day, Sprints and Scrum for the ceremony, Timeline for planning, Overview for a step back.
- Link related work explicitly (parent/child) instead of encoding hierarchy in card titles — Tree layout then shows real structure.
- Paste
?card=links in chat and standup notes; a deep link beats a description of where the card is. - Put the card's key in your branch name. It is the whole Git integration, and it costs nothing at the moment you create the branch.
- Turn workflow rules on for one transition, not the whole board. The rule people actually want is usually "nothing skips review".
- For cross-board reporting, wire a Dashboard room to the board, or import it into a Gantt room for milestone planning.
FAQ
Is this a real agile tool or sticky-note kanban? The real thing: backlog, sprint planning, scrum board, story points, sprint insights, custom fields, workflow rules and automations. The simple-card-board usage works fine too — the machinery waits until you need it.
Can non-engineers use it? Yes. The views and layouts work for any team moving work through stages; skip sprints, story points and Git if you don't need them.
What does mentioning @agent do? It hands the card to the AI agent room connected to this board, which reads the card and replies in the Discussion thread.
Where do the reference keys come from?
The prefix derives from the board name; each card gets the next number, like OB-3. They are never reused.
How do I share a board with someone outside the company? Publish it from the Share dialog and send the link. Decide first whether descriptions and assignee names should travel — both are off until you turn them on.