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]
| Flag | Type | Description |
|---|---|---|
| --use-trash | bool | Enable trash (undo delete). Prompts interactively if omitted. |
| --no-init-dashboard | bool | Skip dashboard setup. |
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>]
| Arg | Required | Description |
|---|---|---|
| title | yes | Task title (positional). Wrap in quotes for multi-word titles. |
| -p, --priority | no | Priority: low, medium (default), or high. |
| --tag | no | Comma-separated tags or labels. |
| --to | no | Comma-separated user IDs to assign. |
| --due | no | Due date in YYYY-MM-DD format. |
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]
| Arg | Required | Description |
|---|---|---|
| id | yes | UUID of the task to edit. |
| --title | no | New title for the task. |
| -p, --priority | no | New priority: low, medium, or high. |
| --tag | no | Comma-separated tags or labels. |
| --clear-tags | no | Remove all tags from the task. |
| --due | no | Set due date in YYYY-MM-DD format. |
| --clear-due | no | Remove the due date. |
kb list
list
List all non-trashed tasks. Optionally filter by priority, status, or tags.
kb list [-p <priority>] [-s <status>] [--tag <labels>]
| Flag | Values | Description |
|---|---|---|
| -p, --priority | low, medium, high | Filter by priority level. |
| -s, --status | todo, in-progress, done | Filter by status. |
| --tag | Comma-separated labels | Filter tasks that contain all requested tags. |
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>
| Arg | Required | Description |
|---|---|---|
| task_id | yes | UUID of the task to move. |
| new_status | yes | Target status: todo, in-progress, or done. |
kb assign
assign
Replace the user assignment list of an existing task.
kb assign <task_id> --to <users>
| Arg | Required | Description |
|---|---|---|
| task_id | yes | UUID of the task. |
| --to | yes | Comma-separated user IDs to assign. |
kb del
del
Delete a task. Moves to trash if enabled in config (default: yes), otherwise permanently removes it.
kb del <task_id>
| Arg | Required | Description |
|---|---|---|
| task_id | yes | UUID of the task to delete. |
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>]
| Arg | Required | Description |
|---|---|---|
| task_id | yes | UUID of the task to comment on. |
| content | yes | Comment text (positional, wrap in quotes). |
| --author-id | no | UUID of the user posting the comment. |
comment del
Delete a comment by its UUID.
kb comment del <id>
| Arg | Required | Description |
|---|---|---|
| id | yes | UUID of the comment to delete. |
kb user
user add
Create a new user with an optional profile picture.
kb user add <username> [--pic <path>]
| Arg | Required | Description |
|---|---|---|
| username | yes | Display name for the user. |
| --pic | no | Path to a profile picture. |
user put
Modify an existing user's name or profile picture.
kb user put <id> [--username <name>] [--pic <path>]
| Arg | Required | Description |
|---|---|---|
| id | yes | UUID of the user to modify. |
| --username | no | New display name. |
| --pic | no | New profile picture path. |
user del
Delete a user. Removes them from all task assignments.
kb user del <id>
| Arg | Required | Description |
|---|---|---|
| id | yes | UUID of the user to delete. |
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>]
| Flag | Description |
|---|---|
| --json | Write a JSON backup. Default format and legacy alias: kb data. |
| --md | Write a Markdown backup. |
| --to-file | Write to a custom path instead of .kanban/. |
kb config
config
View or update board configuration. Supports use_trash and theme_dashboard.
kb config [--set <KEY=VALUE> ...]
| Flag | Description |
|---|---|
| --set | Set configuration values. Repeatable: --set use_trash=false |
kb trash
trash
List trashed tasks, restore them, or permanently empty the trash.
kb trash [--restore <id>] [--clean-all]
| Flag | Description |
|---|---|
| --restore | Restore a trashed task by its UUID. |
| --clean-all | Permanently delete all trashed tasks. |
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}
| Arg | Description |
|---|---|
| bash | Bash completions |
| zsh | Zsh completions |
| powershell | PowerShell completions |
| fish | Fish completions |
| elvish | Elvish completions |
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