The most v0.14.0 release yet
How's it going? This release is a good mix of big and small things.
MCP Prompts
Did you know MCP can support stored prompts—essentially templates for doing MCP things? Welp, now Crush now supports them. Press ctrl+p to open the command prompt, press tab to move the second tab marked MCP.
Windows users: pretend you’re on Linux
If you'd like, now you can put your config on %USERPROFILE%\.config\crush\crush.json just like on Darwin and Linux. Cool, huh?
Bonus
crush runhas always been a little off for interactive use. We issued a handful fixes and improvements to make the user experience better when you're in a TTY.- On Ghostty and the Windows Terminal, Crush will now send loading feedback while starting up
Thank you!
Thanks so much for all your feedback! See ya in the next release (i.e. tomorrow). 💘
Changelog
New!
- 4ca34bb: feat(mcp): refactor, support prompts (@caarlos0)
- 0182d94: feat: show progress bar on boot for feedback (#1371) (@andreynering)
Fixed
- fc128be: fix(catwalk): improve fetch logging message (@andreynering)
- e519d6f: fix(mcp): tool/prompt list update (@caarlos0)
- 2fd5ab2: fix(noninteractive): always print newline after output (@meowgorithm)
- 3398577: fix(noninteractive): spinner text on light backgrounds (@meowgorithm)
- 60ca35f: fix(noninteractive): strip leading newline from assistant responses (@meowgorithm)
- 5d01173: fix: handle delayed mcp init (@caarlos0)
- a2f7cbb: fix: improve code (@caarlos0)
- a074fa9: fix: missing handle call (@caarlos0)
- 9272218: fix: rethink global config path on windows: use
$HOME/.config(#1352) (@andreynering)
Docs
- 29a73e1: docs(readme): improve mcp example to have the real github url (#1378) (@andreynering)
Other stuff
- 389a6ab: chore(noninteractive): accept a writer for output (@meowgorithm)
- ac80175: chore: switch from bar cursor to blocky cursor (@meowgorithm)
- 88c88c6: refactor(agent): clarify user-initiated cancellations and denials (#1368) (@Amolith)
- 449de92: refactor(catwalk): remove stale helper to avoid confusion (@andreynering)
- 54076c0: refactor(mcp): some more decoupling (@caarlos0)
- c658994: refactor: simplify
home.Dir()(#1353) (@andreynering)
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.14.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.14.0/checksums.txt.pem' \
--signature 'https://github.com/charmbracelet/crush/releases/download/v0.14.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.