Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/fulsomenko/kanban/llms.txt

Use this file to discover all available pages before exploring further.

Overview

The Kanban CLI provides a comprehensive command-line interface for managing kanban boards, cards, columns, and sprints. All commands output JSON for easy integration with scripts and automation tools.

Basic Usage

kanban [OPTIONS] <COMMAND>

Global Options

--file
string
default:"$KANBAN_FILE"
Path to the kanban data file. Can also be set via the KANBAN_FILE environment variable.
--help
flag
Display help information for any command.
--version
flag
Display version information including git commit hash.

Environment Variables

KANBAN_FILE

Set the default path to your kanban data file:
export KANBAN_FILE=~/.config/kanban/data.json
kanban board list
This avoids having to specify --file on every command.

JSON Output Format

All commands output JSON for easy parsing and automation. Example:
kanban board list | jq '.[] | .name'

Shell Completions

Generate shell completions for your preferred shell:
# Bash
kanban completions bash > ~/.local/share/bash-completion/completions/kanban

# Zsh
kanban completions zsh > ~/.zfunc/_kanban

# Fish
kanban completions fish > ~/.config/fish/completions/kanban.fish

# PowerShell
kanban completions powershell > $PROFILE
Supported shells: bash, zsh, fish, powershell, elvish

Available Commands

  • board - Board operations (create, list, get, update, delete)
  • card - Card operations (create, list, move, archive, sprint management)
  • column - Column operations (create, list, update, reorder)
  • sprint - Sprint operations (create, activate, complete, cancel)
  • export - Export board data to JSON
  • import - Import board data from JSON
  • completions - Generate shell completions

Examples

Basic Workflow

# Create a board
kanban board create --name "My Project" --card-prefix "PROJ"

# Create columns
kanban column create --board-id <BOARD_ID> --name "Todo" --position 0
kanban column create --board-id <BOARD_ID> --name "In Progress" --position 1
kanban column create --board-id <BOARD_ID> --name "Done" --position 2

# Create a card
kanban card create --board-id <BOARD_ID> --column-id <COLUMN_ID> \
  --title "Implement feature" --priority "high" --points 5

# Move card to next column
kanban card move <CARD_ID> --column-id <NEW_COLUMN_ID>

Using with jq

# Get all high priority cards
kanban card list --board-id <BOARD_ID> | jq '.[] | select(.priority == "high")'

# Count cards per column
kanban card list --board-id <BOARD_ID> | jq 'group_by(.column_id) | map({column: .[0].column_id, count: length})'

Build docs developers (and LLMs) love