Boards
A board is a Kanban-style pipeline that organizes tasks into columns. Each column represents a stage in a workflow, with optional gates that control when tasks can advance.How Boards Work
Boards replace the legacytask_types system with richer, project-scoped pipeline management. Every board has an ordered set of columns, and tasks move through them left-to-right.
Columns
Each column has:Column Gates
Gates control task flow. They define who can move a task into a column:
When
auto_advance is true and the gate is agent, the task moves forward automatically when the linked skill completes. For example, a task in build (gate: agent, action: /work) will auto-advance to review when the work skill finishes.
Board Templates
Templates are reusable board blueprints. Genie ships five built-in templates:
Create a board from a template (see the Board CLI reference for all commands):
Projects and Boards
Boards are scoped to projects. A project can have multiple boards (e.g., one for features, one for bugs). When you set an active board withgenie board use, that board becomes the default for task operations in the current repo.
Board Lifecycle
Relationship to Tasks
Tasks link to boards viaboard_id and track their current column via column_id. When you move a task (genie task move), the column_id and stage update together. The board’s column pipeline validates that the target stage exists.
Database Storage
Boards are stored in PostgreSQL:Best Practices
Use templates as starting points
Use templates as starting points
Start with a built-in template and customize columns for your workflow. The
software template maps directly to Genie skills.Keep column counts manageable
Keep column counts manageable
More than 8-10 columns creates cognitive overhead. If you need more, consider splitting into multiple boards.
Set gate types intentionally
Set gate types intentionally
Use
agent gates for stages that can run autonomously (build, qa). Use human gates for stages that need judgment (review, ship).One active board per repo
One active board per repo
Use
genie board use to set the default. This simplifies task operations by removing the need to specify --board on every command.