v1.42.0
This release introduces a powerful new interactive commit screen, extensive enhancements to worktree notes (including a new CLI command and split markdown storage), custom worktree coloring, and major improvements to the command palette's search relevance.
🚀 Features
- Interactive Commit Screen: Added a dedicated modal for staging and committing changes, accessible via
Ctrl+G. It features separate fields for subject and body, support for external editors (Ctrl+X), and an option to auto-generate commit messages from staged diffs (Ctrl+O). - Worktree Color Customization: You can now visually organize your workspace by assigning colors (hex, named, or 256-index) to worktrees via the command palette. Colors are seamlessly persisted in the worktree's YAML frontmatter.
- CLI Note Command: Introduced
lazyworktree note showandnote editCLI commands, allowing you to view, pipe, or modify worktree notes directly from the terminal without opening the TUI. - Splitted Note Storage: Added
worktree_note_type: splittedconfiguration. Instead of a single JSON file, notes can now be stored as individual markdown files with YAML frontmatter, utilizing customizable template paths for better interoperability with external tools. - Advanced Command Palette Search: Completely overhauled the command palette's scoring system. It now ranks results using a tiered approach (exact word, prefix, and fuzzy matching), prioritizing label matches over descriptions, ensuring faster and more accurate command discovery.
- Palette-Only Custom Commands: Custom commands can now be configured to appear exclusively in the command palette by prefixing their key with
_, keeping your keyboard shortcuts and footer hints clutter-free. - Commit Log Indicators: The log pane now features distinct visual indicators for commit states (
↑for unpushed,★for unmerged) and assigns deterministic, color-coded highlights to different commit authors. - Container Execution Enhancements: Custom container command mounts now support an
optionsfield, allowing for arbitrary volume flags such aszorZfor SELinux relabeling. - GitLab MR Improvements: Added support for GitLab Draft MR statuses and improved MR head commit resolution using native API endpoints and
diff_refs.head_shafallbacks. - Contextual Footer Hints: The footer now intuitively displays a
Ctrl+G(Commit) shortcut hint whenever the active worktree contains local changes.
🐛 Bug Fixes
- UI Pane Switching: Fixed an issue where the Git Status pane would fail to refresh and display stale content when cycling through panes using the Tab key. Restored proper focus-driven auto-resizing behavior.
🧹 Maintenance / Refactoring
- UI Simplification: Refined the command palette selection UI by removing cluttered left-accent borders and shortcut badges in favor of a cleaner, full-width background highlight.
- Documentation Overhaul: Reorganized internal project architecture documentation, refreshed AI and container execution examples, and updated the README with a clearer outline of core features and workflows.
- Development Tooling: Added a
hack/sample-repo.shscript to automatically scaffold a rich Git repository with branches, commits, and worktrees to accelerate local testing. - Asset Optimization: Integrated automated image compression (
pngquantandjpegoptim) into the build pipeline to shrink website assets.
📦 Dependencies
- Added
github.com/google/shlexto safely parse user-defined shell commands for the new auto-generated commit message feature. - Incremented system dependencies for rendering and UI components.
Contributors
- @chmouel
- @github-actions
- @goreleaserbot