Patch Day
It's patch Wednesday, coming in hot with improved stability and fixed bugs.
Fixed: Hook Matcher
Did you see that we released an initial hook in the past release? If not, go check it out.
Anyway, there, was a bug in which hooks would run for every tool call and totally ignore matcher rules (e.g. ^bash$). Oof. Fixed.
Anthropic Fix
Kudos to @ljuti who fixed a bug in Fantasy that could cause errors on certain sessions when using Anthropic or Anthropic-compatible providers. Thanks, @ljuti!
Background Jobs, Fixed
The job_kill tool had some prompt changes that caused a regression. We've roll that back and job killin’ should be easer than ever.
Style Council
We also made a bunch more changes under the hood to prep for theming. The design goal is to be able to make themes quickly by setting only a few variables, but also keep the door open for very specific, targeted styling.
High Status
Sometimes the status bar wasn't rendering messages properly. Now, thanks to some good logic, it should be solid as a rock.
That's all for today.
And stay tuned: we have exciting stuff coming soon.
Charm ✨
Changelog
New!
- a4488ca: feat(ui): switch to hyper theme when provider hyper is chosen (@meowgorithm)
Fixed
- 4d16e96: fix(app): replace single events channel with pubsub.Broker for fan-out (#2663) (@taigrr)
- 38a846d: fix(hooks): recompile matchers after config reload (@meowgorithm)
- 2be2024: fix(hyper): re-auth at selection time to ensure provider availability (@meowgorithm)
- cfcffd2: fix(styles): fix some regressions where colors were incorrect (@meowgorithm)
- 09a1120: fix(ui): notification width and text truncation (@meowgorithm)
- 64c47cb: fix(ui): restore 'update available' notification (@meowgorithm)
- 066fb5a: fix: remove unused build (#2734) (@BrunoKrugel)
Other stuff
- 81fbaca: chore(hyper): update endpoint to new one (@andreynering)
- 8ebab21: chore(styles): clean up theme definitions (@meowgorithm)
- 9d4653e: chore(styles): use hypercrush theme when hyper is selected (@meowgorithm)
- 9c4a316: chore(ui,styles): color edits and copyedits for the oAuth view (@meowgorithm)
- b07664e: chore: auto-update files (@charmcli)
- 86bb805: fix(tools/job_kill): use longer job_kill desc to improve reliability (#2747) (@meowgorithm)
- c84ca2d: refactor(hooks): move matcher compilation into the runner (@meowgorithm)
Verifying the artifacts
First, download the checksums.txt file and the checksums.txt.sigstore.json file files, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.64.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.64.0/checksums.txt.sigstore.json'Then, verify it using cosign:
cosign verify-blob \
--certificate-identity 'https://github.com/charmbracelet/meta/.github/workflows/goreleaser.yml@refs/heads/main' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
--bundle 'checksums.txt.sigstore.json' \
./checksums.txtIf the output is Verified OK, you can safely use it to verify the checksums of other artifacts you downloaded from the release using sha256sum:
sha256sum --ignore-missing -c checksums.txtDone! You artifacts are now verified!
Thoughts? Questions? We love hearing from you. Feel free to reach out on X, Discord, Slack, The Fediverse, Bluesky.