Feature
Command line
One CLI for every issue operation. Create, update, query and close work from the terminal, with plain output that coding agents can read and act on.
Kanbus is driven from the command line. The Rust build installs kbs (and kanbus as an alias), and the Python package installs kanbus. Both run the same shared specifications, so the commands, flags and file formats match. Because every command is an ordinary process with text output, a coding agent can use Kanbus the same way it uses git or grep: no API token, no MCP server and no browser.
Start a project and create work
kbs init creates a .kanbus.yml configuration file and a project/ directory in the current Git repository. From there, kbs create writes a new issue and prints its ID.
kbs init
kbs create "Implement OAuth2 flow" --type task --priority 1 --label auth
kbs create "Release v1" --type epic
kbs create "Write the login screen" --type task --parent kanbus-a1b2c3
The default hierarchy is initiative, epic, task and sub-task, with bug, story and chore as additional types. Priorities are numbers from 0 (critical) to 4 (trivial); the default is 2. Use --parent to place a task under an epic, and --description to add a Markdown body.
Find what matters
kbs list reads every issue and filters on the fields you care about. kbs ready shows open work with no open blockers, and kbs show prints one issue with its dependencies and comments.
kbs list --status open
kbs list --type bug --assignee "you@example.com"
kbs list --parent kanbus-a1b2c3
kbs list --search "login"
kbs ready
kbs show kanbus-a1b2c3
For scripts, --porcelain prints plain, uncolored rows, and kbs show <id> --json returns the issue as JSON. kbs dep tree <id> prints the dependency tree for an issue.
Move work through the workflow
Status changes follow the workflow in .kanbus.yml. The default workflow uses backlog, open, in_progress, blocked and closed, and any transition the workflow does not list is rejected.
kbs update kanbus-a1b2c3 --claim
kbs update kanbus-a1b2c3 --status blocked
kbs comment kanbus-a1b2c3 "Waiting on the API schema"
kbs close kanbus-a1b2c3 --comment "Fixed in PR #42"
--claim assigns the issue to you and moves it to in_progress in one step. kbs close is a shortcut for moving to closed. Every change rewrites one JSON file under project/issues/, so you commit it like any other change.
Learn more
- CLI reference for every command and flag.
- Getting started for installation and a ten-minute walkthrough.
- Configuration for workflows, types and priorities.
- Related features: Kanban board, Git-native storage, Agent provenance.