Custom task properties can now drive filters, badges, grouping and child reading order while extra frontmatter survives edits. The TUI adds tag search, parent-chain navigation and hierarchy-level filtering, with existing defaults unchanged.
Read the illustrated What's new page for practical examples and terminal screenshots.
New: Custom task properties
Set and remove scalar properties without adding new built-in fields. Filter by typed equality and choose which properties appear in table or JSON output. Strings, finite numbers, booleans and null are supported; numeric-looking text stays distinct from numbers.
kanban-md edit 3 --set-property type=story --set-property reading_order=20
kanban-md list --property type=story --show-property reading_order
kanban-md show 3 --json --show-property typeExtra metadata stays out of default JSON. Repeat --show-property to include only the fields an integration needs.
New: Property-based badges and grouping
Choose one or two fields for compact output and TUI cards. CLI summaries can group by a property, with an optional preferred order. Category names remain your choice; grouping does not restrict allowed values or change TUI status columns.
group_orders:
property:type: [milestone, epic, story, bug]
display:
compact_fields: [status, property:type]
tui:
card_fields: [priority, property:type]kanban-md board --group-by property:typeNew: Numeric reading order for child tasks
Order direct children in CLI and TUI details using a numeric property. Ties use task ID; missing or nonnumeric values come last. This changes detail order, not priority, board order or pick selection.
children:
detail_sort: property:reading_orderkanban-md edit 5 --set-property reading_order=5
kanban-md show 2 --show-property reading_orderNew: Tag search and hierarchy navigation in the TUI
Search now matches individual tags as well as titles. Details show the known ancestor chain and let you open active parents or children, then go back through navigation history. Press v on the board to focus an exact hierarchy level; it combines with search and lasts for the current session.
kanban-md tui
# /, type a tag, then Enter: retain the filter
# v: cycle hierarchy levels, then back to all
# In details: Tab selects a relation, Enter opens it
# Esc or Backspace goes back; q returns to the boardTo clear a retained search, press /, then Esc. Esc from board navigation quits the TUI.
New: Pick a task under a specific parent (by @f1code)
Limit atomic task picking to a parent's direct children while retaining the usual claim, eligibility and priority rules.
kanban-md pick --claim agent-1 --parent 42
kanban-md pick --claim agent-1 --parent 42 --status todo --move in-progressFixed: Extra task metadata survives edits (by @boblangley)
Supported task mutations retain unrecognized frontmatter, including complex YAML and exact numbers. Unsafe alias rewrites refuse before changing the task instead of silently dropping metadata. This preserves values, not identical formatting or comments.
kanban-md edit 3 --title "Updated checklist"Fixed: Circular parent and dependency links (by @DeLuke84)
Creating or editing a relationship that would close a cycle now fails with a useful error. Existing malformed cycles do not prevent unrelated edits.
Fixed: Reliable terminal rendering
Task descriptions remain readable after a running terminal switches between light and dark themes. Search, level filtering and reload no longer leave shortened inactive columns scrolled past their cards, and configurable colored badges truncate without broken formatting.
Upgrading
No manual migration is needed. Existing configurations automatically migrate to version 12; task files are not rewritten by that migration. Default priority badges, compact status/priority fields and ID-based child order remain unchanged. All property-based views are opt-in.
Restart an open TUI after editing its display configuration. Remove an optional view setting to restore its default; saved properties remain until explicitly cleared with --clear-property.
Full diff: v0.38.0...v0.39.0