v0.53.0
charmbracelet/crushv0.53.0Mar 27, 2026by github-actions[bot]
AI Summary
This release adds support for Z.ai's GLM-5.1 AI model and introduces a dynamic prompt input field that grows up to 15 rows in height. It also includes several bug fixes for diff display, session handling when canceling tool calls, session title language issues, and external editor temp file cleanup.
Key Highlights
- Added support for Z.ai's GLM-5.1 AI model - a new open source model close to Opus 4.6
- Dynamic prompt input field that grows up to 15 rows in height
- Fixed diff display showing entire file as changed in some scenarios
- Fixed broken session state when canceling tool calls with esc+esc
- Enhanced session title generation to avoid wrong language with smaller models
New Features
- GLM-5.1 AI model integration
- Variable height prompt input field (up to 15 rows)
- Fixed diff view using udiff.Lines instead of udiff.Strings
- Error tool message appending when tool call is cancelled
- Improved cleanup of external editor temp files (ctrl+e)
- Added Q&A section and clipboard support documentation
Full Release Notes
# GLM-5.1 + Mr. Big Prompt Hey all! Friday is here and we have a few fun goodies for « Le Week-End ». Read on! ## ⚡️ GLM-5.1 Z.ai's GLM-5.1 was released just today as part of their coding plan, and it's available in Crush now. GLM-5.1 is a hot, new open source model that claims to come close to Opus 4.6. Enjoy and let us know what you think! <p><img width="600" src="https://github.com/user-attachments/assets/f155ea87-b1e4-46c9-823c-169a80bb504a" /></p> ## 💬 A Bigger Prompt When we first released Crush, three lines for prompting felt great. Now it feels really tiny! Fear not: in this release we made the prompt input area dynamically grow up to 15 rows in height as needed. <p><img src="https://github.com/user-attachments/assets/d63c94f0-50f4-4590-981d-1a7dbb879142" width="600" alt="Dynamic prompt sizing demo in Crush"></p> ## 🔥 Hot Fixes * **Diffs:** in some scenarios, the diff for a changed file weren't behavior correctly and looked like the whole file was changed. Not anymore. * **Tools calls:** if user canceled the session (with <kbd>esc+esc</kbd>) in the middle of a tool call, that could result in a broken session, making impossible to send new prompts. Fixed! * **Session titles:** the prompt to generate a title for a session was further enhanced to avoid generating in the wrong language if the chosen small model wasn't too smart. * **Cleanup:** we're now ensuring we clean temporary files created when you press <kbd>ctrl+e</kbd> (opens external editor to write prompt). Enjoy your weekend! Charm ✨ ## Changelog ### New! * a81a652178eb25dde56fc5caecc9a8ebeabd13ba: feat(ui): variable height prompt input field (#2468) (@meowgorithm) ### Fixed * 4a3df1ec90eb9536e74b54d292d75a1442e4e58e: fix(dialog): use valid key binding name for OAuth success state (#2491) (@huaiyuWangh) * e7a41461a24eb5bca3463c0c18f9b15f2444871c: fix(diffview): use `udiff.Lines` and not `udiff.Strings` (@andreynering) * 4501438f8125924e549e436a2b8b64608358f29d: fix(ui): always clean up external editor temp file (#2503) (@iceymoss) * 2928dcb2e81dd68919b5fde3b1abd2ca4172c8c8: fix: append error tool message when tool call is cancelled (#2492) (@fuleinist) * dd7b58df1b8037146f4aa8d33e09b711ef777196: fix: enhance session title prompt to fix language issue (#2497) (@andreynering) ### Docs * da39f6f1a8554ffe9bb6aee6cb7a317dc7ae3296: docs(readme): add q&a section and note about clipboard support (#2509) (@andreynering) ### Other stuff * 65b9ea53c46466ee862ba760169f32b9740742bb: chore(taskfile): add one more file to dependencies (@andreynering) * 6efc370154912db8cc8d25d0a9be41dd7820863d: chore: update catwalk (@andreynering) --- <details> <summary>Verifying the artifacts</summary> First, download the [`checksums.txt` file](https://github.com/charmbracelet/crush/releases/download/v0.53.0/checksums.txt) and the [`checksums.txt.sigstore.json` file](https://github.com/charmbracelet/crush/releases/download/v0.53.0/checksums.txt.sigstore.json) files, for example, with `wget`: ```bash wget 'https://github.com/charmbracelet/crush/releases/download/v0.53.0/checksums.txt' wget 'https://github.com/charmbracelet/crush/releases/download/v0.53.0/checksums.txt.sigstore.json' ``` Then, verify it using [`cosign`](https://github.com/sigstore/cosign): ```bash 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.txt ``` If the output is `Verified OK`, you can safely use it to verify the checksums of other artifacts you downloaded from the release using `sha256sum`: ```bash sha256sum --ignore-missing -c checksums.txt ``` Done! You artifacts are now verified! </details> <a href="https://charm.land/"><img alt="The Charm logo" src="https://stuff.charm.sh/charm-banner-next.jpg" width="400"></a> Thoughts? Questions? We love hearing from you. Feel free to reach out on [X](https://x.com/charmcli), [Discord](https://charm.land/discord), [Slack](https://charm.land/slack), [The Fediverse](https://mastodon.social/@charmcli), [Bluesky](https://bsky.app/profile/charm.land).