Changes for version 0.401 - 2026-07-14
- Fix `karr sync` reporting success even when pull or push failed: it discarded the boolean results and printed "Done." unconditionally, exiting 0 regardless of outcome. It now checks the result of each sync step, aborts on the first failure with the underlying error on STDERR, and exits 1 (ADR 0002's runtime-failure code) instead of masking a Git/sync error as success. It also reuses the Git object inherited from the sync lifecycle instead of constructing a second instance.
- Remote push/pull now fall back from the native libgit2 transport to the system `git` CLI when libgit2 hits a transport error, so ssh_config directives libgit2 does not honor (ProxyCommand, Host aliases, IdentityFile, insteadOf rewrites) take effect again. Covers push, pull, push_ref, pull_ref, and fetch; set KARR_NO_CLI_FALLBACK=1 to disable the fallback and keep the previous libgit2-only behavior.
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
Import a tasks/ file view back into the ref-backed board
Initialize a new karr board
List tasks with filtering and sorting
Show activity log
Write the ref-backed board out as a tasks/ file view
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
karr-foundation read-only overview — multi-board status dashboard
karr-foundation command execution — fork/pipe/select tee + error classification
karr-foundation per-repo state — lock file, JSON state, cooldown backoff
Git operations for karr sync (native via Git::Native + libgit2, with a git-CLI transport fallback)
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 option-aware CLI positional-argument parsing
Normalize MooX::Options option-parse errors to exit code 2 (ADR 0002)
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