CLI Reference

Everything you can do with kb — commands, arguments, flags, and examples. Version 1.3.0.

kb init

init
Initialise a new Kanban board in the current directory. Creates .kanban/kb-data.yaml.
kb init [--use-trash] [--no-init-dashboard]
FlagTypeDescription
--use-trashboolEnable trash (undo delete). Prompts interactively if omitted.
--no-init-dashboardboolSkip dashboard setup.
# Accept defaults $ kb init # Enable trash non-interactively $ kb init --use-trash ↑ Top

kb install

install
Copy the binary to %LOCALAPPDATA%\Programs\kb\kb.exe and add it to the user PATH. Windows only. Runs automatically on first launch.
kb install
$ kb install # → Installed to %LOCALAPPDATA%\Programs\kb\kb.exe ↑ Top

kb add

add
Create a new task with status todo. Assign users, set tags, and set priority.
kb add <title> [-p <priority>] [--tag <labels>] [--to <users>] [--due <date>]
ArgRequiredDescription
titleyesTask title (positional). Wrap in quotes for multi-word titles.
-p, --prioritynoPriority: low, medium (default), or high.
--tagnoComma-separated tags or labels.
--tonoComma-separated user IDs to assign.
--duenoDue date in YYYY-MM-DD format.
# Simple task $ kb add "Implement login" # High priority task with due date and labels $ kb add "Fix memory leak" -p high --tag backend,urgent --due 2025-12-31 --to "uid1,uid2" # → Task created with ID a1b2c3d4 ↑ Top

kb edit

edit
Update a task's title, priority, tags, or due date without moving or recreating it.
kb edit <id> [--title <text>] [-p <priority>] [--tag <labels>] [--clear-tags] [--due <date>] [--clear-due]
ArgRequiredDescription
idyesUUID of the task to edit.
--titlenoNew title for the task.
-p, --prioritynoNew priority: low, medium, or high.
--tagnoComma-separated tags or labels.
--clear-tagsnoRemove all tags from the task.
--duenoSet due date in YYYY-MM-DD format.
--clear-duenoRemove the due date.
# Change title only $ kb edit a1b2c3d4 --title "Updated title" # Change priority only $ kb edit a1b2c3d4 -p high # Set due date $ kb edit a1b2c3d4 --due 2025-12-31 # Clear due date $ kb edit a1b2c3d4 --clear-due ↑ Top

kb list

list
List all non-trashed tasks. Optionally filter by priority, status, or tags.
kb list [-p <priority>] [-s <status>] [--tag <labels>]
FlagValuesDescription
-p, --prioritylow, medium, highFilter by priority level.
-s, --statustodo, in-progress, doneFilter by status.
--tagComma-separated labelsFilter tasks that contain all requested tags.
# All tasks $ kb list # High priority, in progress $ kb list -p high -s in-progress # Filter by labels $ kb list --tag backend,urgent ↑ Top

kb tags

tags
List all labels currently used in the board, with usage counts.
kb tags
$ kb tags # → backend 4 ↑ Top

kb move

move
Change a task's status. Moves it between columns on the board.
kb move <task_id> <new_status>
ArgRequiredDescription
task_idyesUUID of the task to move.
new_statusyesTarget status: todo, in-progress, or done.
$ kb move a1b2c3d4 done # → Task a1b2c3d4: in-progress → done ↑ Top

kb assign

assign
Replace the user assignment list of an existing task.
kb assign <task_id> --to <users>
ArgRequiredDescription
task_idyesUUID of the task.
--toyesComma-separated user IDs to assign.
$ kb assign a1b2c3d4 --to "uid1,uid2" # → Task a1b2c3d4 assigned. ↑ Top

kb del

del
Delete a task. Moves to trash if enabled in config (default: yes), otherwise permanently removes it.
kb del <task_id>
ArgRequiredDescription
task_idyesUUID of the task to delete.
$ kb del a1b2c3d4 # → Moves to trash (use_trash: true) ↑ Top

kb comment

comment add
Add a comment to a task. Requires a task UUID and text content. Optionally set the author.
kb comment add <task_id> <content> [--author-id <id>]
ArgRequiredDescription
task_idyesUUID of the task to comment on.
contentyesComment text (positional, wrap in quotes).
--author-idnoUUID of the user posting the comment.
$ kb comment add a1b2c3d4 "Nice work!" --author-id u1v2w3x4 # → Commentaire ajouté: <comment-id> ↑ Top
comment del
Delete a comment by its UUID.
kb comment del <id>
ArgRequiredDescription
idyesUUID of the comment to delete.
$ kb comment del c0mment1d # → Commentaire supprimé: c0mment1d ↑ Top

kb user

user add
Create a new user with an optional profile picture.
kb user add <username> [--pic <path>]
ArgRequiredDescription
usernameyesDisplay name for the user.
--picnoPath to a profile picture.
$ kb user add "Alice" --pic "avatars/alice.png" # → User created with ID u1v2w3x4 ↑ Top
user put
Modify an existing user's name or profile picture.
kb user put <id> [--username <name>] [--pic <path>]
ArgRequiredDescription
idyesUUID of the user to modify.
--usernamenoNew display name.
--picnoNew profile picture path.
$ kb user put u1v2w3x4 --username "Bob" ↑ Top
user del
Delete a user. Removes them from all task assignments.
kb user del <id>
ArgRequiredDescription
idyesUUID of the user to delete.
$ kb user del u1v2w3x4 ↑ Top
user show
List all users with their IDs, usernames, and profile pictures.
kb user show
$ kb user show # → u1v2w3x4 Alice avatars/alice.png ↑ Top

kb status

status
Display board KPIs — total tasks, count by status and priority, percentage done, number of users.
kb status
$ kb status # → 12 tasks · 3 in progress · 4 done · 33% ↑ Top

kb export

export
Export all board data as JSON or Markdown backups. Files are written in .kanban/.
kb export [--json | --md] [--to-file <path>]
FlagDescription
--jsonWrite a JSON backup. Default format and legacy alias: kb data.
--mdWrite a Markdown backup.
--to-fileWrite to a custom path instead of .kanban/.
$ kb export --json $ kb export --md $ kb data ↑ Top

kb config

config
View or update board configuration. Supports use_trash and theme_dashboard.
kb config [--set <KEY=VALUE> ...]
FlagDescription
--setSet configuration values. Repeatable: --set use_trash=false
# View current config $ kb config # Disable trash $ kb config --set use_trash=false # Switch dashboard theme $ kb config --set theme_dashboard=light ↑ Top

kb trash

trash
List trashed tasks, restore them, or permanently empty the trash.
kb trash [--restore <id>] [--clean-all]
FlagDescription
--restoreRestore a trashed task by its UUID.
--clean-allPermanently delete all trashed tasks.
# List trashed tasks $ kb trash # Restore a task $ kb trash --restore a1b2c3d4 # Empty trash permanently $ kb trash --clean-all ↑ Top

kb completion

completion
Generate shell completion scripts for bash, zsh, powershell, fish, or elvish. Pipe the output to your shell's completions directory to enable tab-completion for all kb subcommands and flags.
kb completion {bash|zsh|powershell|fish|elvish}
ArgDescription
bashBash completions
zshZsh completions
powershellPowerShell completions
fishFish completions
elvishElvish completions
# Bash $ kb completion bash > /etc/bash_completion.d/kb # Zsh (Oh My Zsh) $ kb completion zsh > "${fpath[1]}/_kb" # PowerShell $ kb completion powershell > "$PROFILE" # Or source directly $ . <(kb completion bash) ↑ Top

kb dashboard

dashboard
Start the web dashboard server. Serves a drag-and-drop Kanban board UI with task comments, tag filters, user manager, trash drawer, search, export buttons, dark/light themes, and SSE live reload — on localhost. Use watch mode to auto-reload on kb-data.yaml changes.
kb dashboard [--watch]
$ kb dashboard # Auto-reload when kanban files change $ kb dashboard --watch # → Dashboard at http://localhost:5522 # Press Enter to quit ↑ Top