It’s all about @Amolith
Star contributor @Amolith rolled in hot this release with a series of fixes and improvements. Let's get into it!
This Year’s Model
There are a lot of models available in Crush. If you’re like @Amolith you usually switch between a few of your faves—and now that's a lot easier to do as your recently chosen models are now automatically collected at the top of the model chooser. It's quite handy!
Assisted-by is the New Co-Authored-by
The Fedora Council recently put together some guidelines for disclosing AI assistance in open source. We think the guidelines are really cool, and so does @Amolith—and he took it upon himself to make this vision a reality in Crush.
Assisted-by: Claude Sonnet 4.5 via Crush
This is currently opt-in, and the behavior is customizable.
Other Stuff
@danielmerja, @caarlos0, and @kujtimiihoxha rolled in hot with a bunch fixes and, of course, no release would be complete without the fine detail work of @andreynering. Cheers everyone, and thanks for the contributions.
Let us know what you think and enjoy the release! 💘
Changelog
New!
- 7b47c6c: feat(config): add trailer_style option (@Amolith)
- 27093ea: feat(config): migrate deprecated co_authored_by (@Amolith)
- fa28347: feat: recent models section in picker (#1374) (@Amolith)
Fixed
- 425d873: fix(bash): use model name instead of ID (@Amolith)
- 5a7c715: fix(mcp): client being killed (#1419) (@caarlos0)
- 665ee06: fix: append
ImageURLContentpart inunmarshallParts(#1387) (@danielmerja) - e9b30f7: fix: recent models test (@kujtimiihoxha)
Docs
- 025d604: docs(readme): move "local models" section to be under "custom providers" (#1402) (@andreynering)
Other stuff
- c9ca0b7: chore(task): fetch tags before installing (@meowgorithm)
- 02329dc: chore(taskfile): add task to record all cassettes (@andreynering)
- b095afd: chore: record all cassettes after fantasy update (@andreynering)
- 4e244de: chore: update fantasy to v0.2.1 (@andreynering)
- ef1990a: refactor(bash): make whitespace conform to spec (@Amolith)
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.17.0/checksums.txt'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' \
--cert 'https://github.com/charmbracelet/crush/releases/download/v0.17.0/checksums.txt.pem' \
--signature 'https://github.com/charmbracelet/crush/releases/download/v0.17.0/checksums.txt.sig' \
./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.