Releases: charmbracelet/crush
v0.13.7
Perf ⚡️ and more!
Hi! We have two solid items in release. Read on!
Rendering goes brrrrrrrrr
This release was all about improving Crush’s rendering speeds. Crush will now render much faster, especially when scrolling through the conversation. This also means that Crush CPU usage should be lower, particularly in big, long sessions. Go crazy!
Azure in the Age of Reason
We also made the full OpenAI feature set available to models at Azure. In particular, you can now choosing reasoning (Low! Medium! High!).
See you in the next release. We have some fun stuff coming next week! 💘
Changelog
New!
- df4d66b: feat: keep successful edits even if some fail (#1327) (@kujtimiihoxha)
 
Fixed
- f6e82a4: fix: address panic due to possible 
nilmap (#1348) (@andreynering) 
Other stuff
- be68f48: perf: significantly improve list performance (#1325) (@kujtimiihoxha and @raphamorim)
 - 83acb62: chore(.gitignore): ignore 
/tmpdir (@andreynering) - 07eb36c: chore: gramatical edit (#1350) (@meowgorithm)
 - c467d13: chore: improve azure support (#1351) (@kujtimiihoxha)
 
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.7/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.13.7/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.7/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.
v0.13.6
A few minor fixes
Bugs happen, and on there release we addressed a few of them. 🐞 💥 🔨
- Fixed tools not working properly with 
crush run(non-interactive mode). By the way, have you tried this mode? - We'll only use built-in version (Go implementation) of the core utils on Windows from now on. They exist so Windows gets support for commands like 
cp,rm,mv,mkdirand many others. On other platforms, we'll actually use the system version to guarantee 100% compatibility. - A couple of rendering and UX fixes.
 
Stay tuned! We have more prepared for the near future. 🚀
Changelog
Fixed
- 04bc015: fix(ux): fix crush logo flicker on window resizes (#1338) (@andreynering)
 - ae70537: fix: fix broken tools on 
crush run(#1333) (@andreynering) - 569044c: fix: only enable built-in core utils by default on windows (@andreynering)
 - a885da8: fix: upgrade bubbletea to fix rendering issues (#1340) (@aymanbagabas)
 
Other stuff
- b9e41f8: refactor(shell): some small code adjustments (@andreynering)
 
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.6/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.13.6/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.6/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.
v0.13.5
Notifs, now less crazy
This release fixes an issue in iTerm2 where progress events would be triggered as notifications. Thanks to @melgu for reporting the issue!
Also, a bonus: permission dialog sizes are now responsive, courtesy @jamestrew.
We really appreciate all the contributions, feedback, support and positive vibes. Keep it coming! 💘
Changelog
Fixed
- 05577de: fix(tui): disable progress bar for unsupported terminals (#1329) (@aymanbagabas)
 - 7b4cb40: fix(tui): make permissions dialog height responsive to resize (#877) (@jamestrew)
 
Other stuff
- cf6beff: chore: add vcr cassette files to 
.gitignore(#1332) (@andreynering) 
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.5/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.13.5/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.5/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.
v0.13.4
OpenRouter key validation: fixed
This release fixes a regression with OpenRouter key validation in the UI. Cheers! 💘
Changelog
Fixed
- 2834bf7: fix: openrouter key validation (@kujtimiihoxha)
 
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.4/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.13.4/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.4/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.
v0.13.3
It's time to tidy up Grok 4, multi-tool calls, and more
This release fixes for some bugs and regressisions found since v0.13.0, including
- Restore xAI Grok 4 functionality (charmbracelet/catwalk#92 by @andreynering)
 - Restore llama.cpp + gpt-oss functionality (#1314, charmbracelet/fantasy#50 by @andreynering)
 - Fixed issue that could show when doing multiple tool calls at once (charmbracelet/fantasy#48 by @kujtimiihoxha)
 - Ensure that the 
system_prompt_prefixsetting is always used (#1311 by @kujtimiihoxha) 
Keep crushing! 🚀
Changelog
Fixed
- 68fcf9f: fix: update fantasy and catwalk with fixes (@andreynering)
 - fd5f830: fix(test): normalize file separator to make vcr cassette match (@andreynering)
 - d32831e: fix(test): normalize output of download tool to make tests pass on windows (@andreynering)
 - 019b7a2: fix(tools): fix handling of abs paths on windows (@andreynering)
 - e159237: fix: add prefix if exists in all calls (#1311) (@kujtimiihoxha)
 
Other stuff
- 311605d: chore: update fantasy (#1316) (@kujtimiihoxha)
 - 092ff22: fix(agent-test): instruct the model to not output the file timestamp (@andreynering)
 - 133f698: refactor: make test code a little bit cleaner (@andreynering)
 
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.3/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.13.3/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.3/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.
v0.13.2
Tidying Up
This tiny release corrects the package manifest (i.e. go mod tidy). See ya later! 💘
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.2/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.13.2/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.2/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.
v0.13.1
Quick Little Hotfix
This releases fixes a provider-level panic. Thanks for the heads up! 💘
Fixed
- 0374b7c: fix: fantasy nil panic (@kujtimiihoxha)
 
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.1/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.13.1/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.1/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.
v0.13.0
A smarter, stronger Crush
Hi everyone! 👋
This new release includes a significant refactor on Crush internals:
- Crush is now much more resilient on the provider level and is now powered by a new library we've developed to normalize agentic workflows across providers.
 - System prompts, tool calls and other important pieces were also tweaked to generally improve Crush’s behavior.
 
As a result, Crush should now to perform better on the provider-model and system prompt levels for better speeds, lower token usage, and better output across the board.
Config update for OpenAI-compatible providers
If you have any custom providers that use an OpenAI-compatible API, we highly recommend updating its type on the config from openai to openai-compat. With this, Crush will now behave better with these providers, with extra features that were previously unavailable.
{
  "$schema": "https://charm.land/crush.json",
  "providers": {
    "my-custom-provider": {
      "type": "openai-compat",
      // ...
    }
  }
}Note
If you have a custom provider that is just a proxy or router through the actual OpenAI API, please keep the type as just openai.
Do not hesitate to reach out on our Slack and Discord servers if you have any feedback! ✨
Changelog
New!
- bc3858f feat: refactor providers and improve system prompt (#1171) (@kujtimiihoxha and @andreynering)
 
Fixed
- 139749a: fix(tests): remove embedded providers, regenerate fixtures (@kujtimiihoxha)
 
Docs
- 85c57a4: docs(readme): add note section about 
openaivs.openai-compat(@andreynering) 
Other stuff
- 14ca920: chore: change providers url in the log (@kujtimiihoxha)
 - f1b0dbb: chore: clone headers (@kujtimiihoxha)
 - a314610: chore: do not override old headers (@kujtimiihoxha)
 - 847cbbe: chore: do not prompt for init when empty (@kujtimiihoxha)
 - ca09597: chore: do not respond with error (@kujtimiihoxha)
 - 13d75fe: chore: improve edit instructions (@kujtimiihoxha)
 - ec9f94f: chore: improve initialize (@kujtimiihoxha)
 - 2aedcb7: chore: improve summarize logic (@kujtimiihoxha)
 - 780459f: chore: make thinking mode persistent (@kujtimiihoxha)
 - 5d42049: chore: more prompt improvements (@kujtimiihoxha)
 - 042725f: chore: small fix (@kujtimiihoxha)
 - a3e699d: chore: small fixes and catwalk update (@kujtimiihoxha)
 - 342bc9e: chore: update docs (@kujtimiihoxha)
 - f172aaa: perf: init coder agent in a goroutine (#1289) (@caarlos0)
 
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.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.13.0/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.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.
nightly
Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download//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//checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download//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.
v0.13.0-beta.2
Hi! This is a follow-up to the previous prerelease for a big provider and system overhaul. Things to look for are:
- Better durability and effectiveness across all providers
 - Improved LLM responsiveness
 - Lower token use
 - Even more fun
 
Note that this release will not receive provider updates from Catwalk.
xoxo, Charm 💋
Changelog
Changelog
### Fixed * 9d5a6d0: fix(bedrock): update anthropic sdk with fix for aws sso (#1297) (@andreynering) * 231c3d9: fix(test): close sqlite db on test finish (@andreynering) * 4926d2c: fix(test): improve go-vcr request matching logic (@andreynering) * 46dcc50: fix(test): try to have the correct dir for windows (@kujtimiihoxha) * f7b78df: fix: bring back metrics on fantasy (@andreynering) * 47bde03: fix: cost calculation when using openrouter (@kujtimiihoxha) * eba309c: fix: diagnostics log double quotting (@caarlos0) * 086e4ff: fix: prompt prefix (@kujtimiihoxha) ### Other stuff * 4e2e8ca: chore: add reasoning start (@kujtimiihoxha) * 765a9cc: chore: add yolo back (@kujtimiihoxha) * a43e3e0: chore: fix bedrock (@kujtimiihoxha) * df753af: chore: fix parameter update (@kujtimiihoxha) * f76bfb1: chore: remove empty thinking (@kujtimiihoxha) * 6bb85dc: chore: support provider extra body and provider options (@kujtimiihoxha) * 232fa9a: chore: use :exacto in openrouter for supported models (@kujtimiihoxha) * 0ca5de0: refactor: simplify code with `cmp.Or` (@andreynering) * 35c05ff: revert: "test: try fix windows tests" (@kujtimiihoxha)Verifying the artifacts
First, download the checksums.txt file, for example, with wget:
wget 'https://github.com/charmbracelet/crush/releases/download/v0.13.0-beta.2/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.13.0-beta.2/checksums.txt.pem' \
  --signature 'https://github.com/charmbracelet/crush/releases/download/v0.13.0-beta.2/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.
