Disable mouse support + more
Hey, how's your week going? We have a few changes today, including mostly fixes but also a few nice additions.
Disable mouse support
Want to disable mouse support in Crush? Feel lucky because our favorite contributor @timotheosh added just that.
With the config below you can achieve that. It's also possible to toggle it via the command palette dialog.
crushrc:
option ui mouse falsecrush.json:
{ "options": { "tui": { "mouse": false } } }
Fixed UX for non-vision models
In some cases, Crush were allowing you to attach an image even when the selected model was not vision-capable. The attachment was then being silent dropped in the request.
Now, we're properly validating it and showing a message so you know when it's not supported.
Fixed some models on GitHub Copilot
On Copilot some models only works on the /responses endpoint: named GPT-6 Astra and the Grok models.
Fixed some models on OpenCode Zen & Go
OpenCode also require some models to use specific endpoints. Not every model support the /chat/completions endpoint; some require /responses or /messages.
We fixed this issue for the models OpenCode currently supports.
Fixed Sentry MCP + others
A misconfiguration made it impossible to authenticate with OAuth2 with a few the MCPs, including the Sentry MCP. This is now fixed!
Fixed potential memory leak
@caniko discovered a memory leak, specifically when discover_models: true is set. This issue was fixed!
To read the technical explanation, see #3162 and #3683.
See you in the next release!
The Charm Team ™️
Changelog
- fix(clipboard): only report copy success if it happens by @taciturnaxolotl in #3682
- fix: stop long reasoning traces from running away with the heap by @taciturnaxolotl in #3683
- fix(config): honor providers.json when auto-update is disabled by @kvnloo in #3693
- fix: inline code copying by @andrinoff in #3678
- fix: flickering screen when inline code was present by @andrinoff in #3708
- fix(copilot): route grok models through responses api by @DaVinci42 in #3705
- fix(discover): keep a user-set supports_attachments in the LM Studio enricher by @devYRPauli in #3703
- fix: assign models from opencode zen by @andrinoff in #3718
- fix(list): keep AtBottom honest when the top item is taller than the viewport by @taciturnaxolotl in #3720
- fix: make timeout configurable by @andrinoff in #3677
- feat(hyper): show the routed model that served each turn by @andreynering in #3713
- fix(copilot): route GPT-6 Astra through Responses API by @DaVinci42 in #3724
- docs(db): fix timestamp unit comments in initial migration by @LarsArtmann in #3576
- fix(config): resolve the provider cache through the global data dir by @devYRPauli in #3738
- feat(tui): add option to disable mouse support by @timotheosh in #3542
- fix: keep
top_kfor known custom providers by @jackgene in #3736 - chore: add CC-BY-4.0 to allowed licenses by @andrinoff in #3755
- fix: do not upload images if vision is not supported by @andrinoff in #3754
- fix: bump mcp sdk by @andrinoff in #3716
- fix(alibaba): do not send
enable_thinkingwhen we have an effort by @andreynering in #3758 - chore(deps): migrate
mvdan.cc/sh/moreinterptomvdan.cc/sh/xby @andreynering in #3761
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.93.1/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.93.1/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.
