Release Notes
Improved
-
LLM commit configuration redesign: The
[commit-generation]section is now[commit.generation], andcommand+argsare unified into a single shell-executedcommandstring. Existing configs continue to work — a deprecation warning shows the new format and creates a.newconfig file you can apply withmv. Claude Code (claude -p) and Codex (codex exec) are documented as first-class options alongsidellm. See the LLM commits guide. (#809, #837) -
Per-project hooks: User config can define hooks per-project that append to global hooks. Execution order: global → per-project → project config. Configure under
[projects."owner/repo".hooks]. (#842) -
Context window gauge for Claude Code: Statusline mode shows a moon phase gauge (🌕🌔🌓🌒🌑) for context window usage. (#840)
-
CI status for remote-only branches:
wt list --remotesshows CI status for branches that only exist on the remote. (#817) -
Hook log file lookup:
wt config state logs get --hook=<spec>returns the path to a specific hook's log file. (#816, thanks @EduardoSimon for requesting) -
Branch/fork info in PR/MR display:
wt switch pr:Nshows the source branch (e.g.,feature-auth) or fork reference (e.g.,contributor:feature) alongside PR details. (#808) -
Claude Code section in
wt config show: Shows Claude CLI installation status, plugin status, and statusline configuration. (#833) -
Deprecation details moved to
wt config show: Other commands show a brief pointer instead of full deprecation details. (#828) -
Config validation suggests correct file: When a config key belongs in user config but appears in project config (or vice versa), the warning suggests the correct location. (#804)
-
Tilde paths in hints: Shell command hints use
~instead of full home directory paths when safe. (#710) -
Improved
--createconflict error:wt switch --create pr:101shows the existing branch name in the error. (#807) -
CI status prioritized in statusline: CI status is retained longer when the statusline truncates. (#845)
Fixed
-
Template expansion bugs: Fixed
worktree_path_of_branchnot respecting shell_escape flag, Windows CI cache rename failures, andWORKTRUNK_MAX_CONCURRENT_COMMANDS=0meaning "no limit". (#847, #849) -
Hook and CI status panics: Fixed panic when serializing mixed named/unnamed hook configs, banned colons in hook names to prevent parsing ambiguity, and fixed GitLab MR detection when multiple MRs exist without project ID. (#846, #848)
-
Pre-commit hooks for clean worktree squash: Pre-commit hooks are collected for approval when squashing on a clean worktree. Previously only collected when dirty. (#695)
-
Hint message formatting: Fixed ANSI escape code interference in dim hint messages. (#836)
-
Spurious [commit] header: Fixed config migration showing
[commit]section header when onlycommit-generationfields needed migration. (#834)
Documentation
- Added at-a-glance examples to config documentation. (#826)
- Clarified user project-specific settings section. (#835)
- Consistent worktree terminology throughout docs. (#813)
- Added tip for monitoring hook logs. (#838)
Internal
- Replaced manual quote escaping with
shell_escapecrate. (#810) - Used
sanitize-filenamecrate for filename sanitization. (#832) - Cached CI tool availability checks. (#831)
- Moved inline imports to module top level. (#818, #819, #820, #822)
Install worktrunk 0.19.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/max-sixty/worktrunk/releases/download/v0.19.0/worktrunk-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/max-sixty/worktrunk/releases/download/v0.19.0/worktrunk-installer.ps1 | iex"Install prebuilt binaries via Homebrew
brew install max-sixty/worktrunk/wtDownload worktrunk 0.19.0
| File | Platform | Checksum |
|---|---|---|
| worktrunk-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| worktrunk-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| worktrunk-x86_64-pc-windows-msvc.zip | x64 Windows | checksum |
| worktrunk-aarch64-unknown-linux-musl.tar.xz | ARM64 MUSL Linux | checksum |
| worktrunk-x86_64-unknown-linux-musl.tar.xz | x64 MUSL Linux | checksum |