Operator

Operator is its own kanban provider, and the one it encourages you to start with. There is nothing to connect and no credential to store: the board is the .tickets/ directory on the server, and every other provider syncs into it.

The board is the directory

A ticket is a markdown file. Which column it appears in is which directory it lives in:

.tickets/queue/        -> TODO QUEUE     work waiting to be pulled
.tickets/in-progress/  -> IN PROGRESS    an agent (or you) is on it
.tickets/completed/    -> DONE           finished work

Why it is the default

Operator’s job is to run structured, agent-dispatched work. That needs a queue it fully controls.

The Operator workflow graph is attached to each issue type. The built-in board is that queue - external providers are a way to feed it, not a replacement for it.

Working the board

From the web UI’s Queue page:

From the terminal:

operator create              # new ticket
operator queue               # show the board
operator launch              # launch the next ticket

Relationship to external providers

Connecting Jira, Linear, GitHub Projects or another Kanban provider does not replace this board. Their issues are pulled in as markdown tickets here, and with bidirectional = true each column change is pushed back to the originating board.

The Operator board is never a sync source. It is the destination, so it takes no [kanban.operator] config section and does not appear in operator sync.

Configuration

None. The only related setting is where the tickets live:

[paths]
tickets = ".tickets"

See Tickets for the ticket format and Kanban for the concepts behind the columns.