github charmbracelet/crush v0.8.0

latest release: nightly
21 hours ago

Reasoning controls, “offline mode”, tool disabling and so much more!

There's a bunch of good stuff in Crush v0.8.0. ⚡️

tl;dr you can now:

  • Change OpenAI reasoning in-app
  • Disable provider auto-updates and be totally offline
  • Search by provider in the model chooser
  • Disable tools

We also squashed a buncha bugs. Read on for more info!

Setting reasoning with OpenAI models

For the OpenAI models that support reasoning, you can now choose which level of reasoning you want to use inside the TUI. Before this release, it was possible only by manually editing crush.json.

Wanna turn off provider auto-updating? Now you can.

The most upvoted issue on our repo is finally closed. Some of you wanted what was called "offline mode", which essentially prevents Crush from fetching provider and model updates from https://catwalk.charm.sh/*. This is particularly important for users in environments where internet access is restructed.

On this release, we're adding a setting to disable this auto-update mechanism. You can do that by adding the setting below to your crush.json or by setting CRUSH_DISABLE_PROVIDER_AUTO_UPDATE.

// ~/.config/crush/crush.json
{
  "options": {
    "disable_provider_auto_update": true
  }
}
export CRUSH_DISABLE_PROVIDER_AUTO_UPDATE=1

By default, when set, Crush will use the embedded providers bundled at the time of the Crush release. If you need to manually update that, we now also introduced a new command crush update-providers to manually run the update when you can:

# Update providers remotely from Catwalk
crush update-providers

# Update providers from a custom URL
crush update-providers https://example.com/

# Update providers from a local file
crush update-providers /path/to/local-providers.json

# Update providers from embedded version
crush update-providers embedded

Better model search

The model chooser filter will now match the provider name and handle multiple words well, making it really easy to find that "one model from that one provider."

Screenshot 2025-09-12 at 18 43 38

Disable specific tools

If you want to disable specific tools for whatever reason, it is now possible by adding the following to your config.json:

// ~/.config/crush/crush.json
{
  "options": {
    // All available listed as example.
    // Only include the ones you want to disable.
    "disabled_tools": [
       "bash",
       "download",
       "edit",
       "fetch",
       "glob",
       "grep",
       "ls",
       "multiedit",
       "sourcegraph",
       "view",
       "write",
    ]
  }
}

Fixed double key press on Windows

Whoops, there was regression in the last release is fixed where, in Windows terminals that are not Windows Terminal, some key presses were being registered twice. This is now fixed.

That's all folks!

That's all for today! Keep crushing and see you in the next release! 💘

Changelog

New!

Fixed

Docs

Other stuff


Verifying the artifacts

First, download the checksums.txt file, for example, with wget:

wget 'https://github.com/charmbracelet/crush/releases/download/v0.8.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.8.0/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.8.0/checksums.txt.sig' \
  ./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:

sha256sum --ignore-missing -c checksums.txt

Done! You artifacts are now verified!

The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on X, Discord, Slack, The Fediverse, Bluesky.

Don't miss a new crush release

NewReleases is sending notifications on new releases.