Kagi 0.6.0 — activity, swimlanes, and safer operations
Kagi 0.6.0 — activity, swimlanes, and safer repo operations
This release builds on the worktree-aware graph from 0.5.0 with a new Activity
view, Gitru-style swimlane rendering, faster diff/refresh paths, and another
round of safety hardening in the Git operation pipeline.
Activity
- Added an Activity tab with commit/merge charts and contributor rankings.
- Added Day / Week / Month / Year / All windows, axes, per-bucket tooltips, and
instant hover read-outs. - Tuned the chart to focus on commits, merges, authors, and time windows instead
of noisy line-stat totals.
Graph and UI
- Added stable lane colours, compact swimlane rendering, branch-lane tinting, and
optional author avatar nodes. - Polished swimlane layout so lane bands, avatar nodes, and label connectors stay
aligned inside the graph column. - Fixed the file-diff center pane so it no longer pushes the Inspector off-screen.
- Made worktree WIP markers clearer and included untracked files in WIP counts.
Safety and correctness
- Blocked merge when the working tree is dirty, matching cherry-pick/revert
safety behaviour. - Made conflict-resolution staging atomic across the files being resolved.
- Rechecked stash count during stash-pop preflight so concurrent stash changes
cannot pop the wrong entry. - Added a two-click confirmation path for permanent discard operations.
- Surfaced real operation errors instead of the placeholder
"session unavailable".
Performance
- External repo refresh now snapshots on a background thread instead of blocking
the UI. - File diff content is cached when switching between files/commits.
- Large diffs render text first, with tree-sitter highlighting completed
off-thread.
Architecture
- Extracted the Git backend into the new
kagi-gitworkspace crate. - Added
RepoSession/RepoWorkerinfrastructure for the next
OperationController migration step. - Moved Activity aggregation into pure
kagi-domaincode with unit coverage. - Split more UI subsystems out of
KagiApp, including toast, oplog, blocking-op,
render-helper, modal-renderer, and Activity modules.
Verification: cargo build, cargo fmt --all --check, cargo clippy --workspace,
cargo test --workspace, and the UI git2 grep gate were run for this release.
Full changelog: v0.5.0...v0.6.0