Changes for version 0.302 - 2026-06-21
- `karr board` now renders a compact, Markdown-flavoured plaintext board (board name as `#`, each status as `## Section`, one `- id | title | meta...` line per task) instead of the coloured column dashboard. The output stays clean when piped or redirected — colour is added only when stdout is a terminal and `NO_COLOR` is unset. Default (`medium`) priority is suppressed, and a new `--tags` flag prints each task's tags on an extra indented line.
- Fix releasing a claim or unblocking a task leaving a null `claimed_by`, `claimed_at`, or `blocked` field behind. Clearing now uses real Moo clearers so the predicate drops and the field is omitted from the task file, instead of being written as an explicit null that reloaded as "still set" — which made `handoff` reject released tasks and `pick` treat them as claimed. Explicit nulls in already-written or external task files are normalized to "unset" on load.
Documentation
Kanban Assignment & Responsibility Registry
Single-shot foundation daemon for periodic karr agent execution
Modules
Kanban Assignment & Responsibility Registry
Activity log writer for karr board operations
Ref-backed board storage for karr
Generate a random two-word agent name
Archive a task (soft-delete)
Export the ref-backed karr board as YAML
Show board summary
View or modify board configuration
Generate board context summary for embedding
Create a new task
Delete a task
Destroy the ref-backed karr board
Modify an existing task
Fetch helper payloads from a Git ref
Hand off a task for review
Initialize a new karr board
List tasks with filtering and sorting
Show activity log
Change a task's status
Atomically find and claim the next available task
Restore the ref-backed karr board from YAML
Store helper payloads in a Git ref
Show full details of a task
Install, check, and update bundled agent skills
Sync karr board with remote
Board configuration management
Single-shot foundation daemon — periodic agent execution across karr boards
Git operations for karr sync (all-native via Git::Native + libgit2)
Lock management via Git refs
Role providing board discovery, sync lifecycle, and task access
Role providing minimal board discovery and config access
Shared claim timeout logic
Role providing common output format options
Role providing sync lifecycle with retry and guard insurance
Push guard with automatic retry on scope exit
Task object representing a single kanban card