Releases: charmbracelet/crush
nightly
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//checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download//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.
v0.29.1
Mini Attachments Patch
This is tiny update to improve the behavior when files are dragged and dropped into Crush, and when long blocks of text are pasted in.
Hope you're chilling out! 💘
Changelog
Fixed
- 4133554: fix: prevent filename insertion when dragging attachments (#1683) (@meowgorithm)
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.29.1/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.29.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.
v0.29.0
Paste, drag ’n drop, and other things from Xerox Parc
How's it going? We just added support for dragging and pasting attachments of all kinds into Crush, in an effort to make Crush your favorite desktop app in the terminal. We also added support to treat big pieces of pasted text as attachments.
Oh, and we also fixed a handful of bugs.
Hope you're staying warm (unless you're in the southern hemisphere, in which case, stay cool). See you soon and thanks for all the support! 🎁
Changelog
New!
Fixed
- 1c54433: fix: initial api key load (#1672) (@kujtimiihoxha)
- 4f6d0e9: fix: race condition (#1649) (@kujtimiihoxha)
- 0f76e63: fix: remove unsupported image types (@kujtimiihoxha)
- ec22609: fix: splash padding y (#1680) (@caarlos0)
- 5d419e8: fix(aws-bedrock): update fantasy with
panicfix (#1681) (@andreynering)
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.29.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.29.0/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.
v0.28.0
Onboarding Stuff
This release is mostly to improve and fix the onboarding flow:
- Fixed a bug that made impossible to type c on onboarding (model filter and API key input). Oops!
- It's now possible to properly login to Hyper and/or GitHub Copilot via the onboarding flow.
See ya! 🎁 🎄
Changelog
New!
- a326efe: feat: add ability to set envs to override config directories (#1661) (@andreynering)
- 13f315c: feat: make hyper and copilot login work on onboarding (@andreynering)
Fixed
- 68ad298: fix(copilot): change import to happen on demand, and also on onboarding (@andreynering)
- b945baa: fix(onboarding): address
ckey press not working on onboarding (#1663) (@andreynering) - 5b66c8d: fix: handle
ctrl+cin hypercrush auth (#1665) (@meowgorithm)
Other stuff
- 2ba5a82: chore(ux): remove extra uneeded line (@andreynering)
- e181714: chore: auto-update files (@charmcli)
- bcebf07: chore: auto-update files (@charmcli)
- 996539f: chore: remove cspell.json (#1664) (@aymanbagabas)
- cffe0cf: fix(tui/mcp): singularize tool/prompt count when 1 (#1623) (@Amolith)
- 3c22cb8: refactor(config): add ToProvider method to ProviderConfig (@aymanbagabas)
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.28.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.28.0/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.
v0.27.0
GitHub Copilot
It's almost the new year. Some people are celebrating things. In some places it's snowing. In other places it’s summertime.
🎁 Whatever’s going on for you, we have a little gift. The gift of Github Copilot auth in Crush.
Copilot should work automatically if you have already logged in your machine, otherwise, you'll be prompted to login once you choose a Copilot model. crush login copilot is also an option to login.
Enjoy!
Charm 💇🏻♀️
Changelog
New!
- 5fe0177: feat: add github copilot auth flow via tui (#1645) (@andreynering)
- ab057fd: feat: add github copilot support (#1645) (@andreynering, @marifcelik and @mikluko)
Other stuff
- e67c16e: chore(cmd/projects): improve help text (#1647) (@meowgorithm)
- 66a272d: chore: auto-update files (@charmcli)
- 77e0475: chore: auto-update files (@charmcli)
- cddb306: refactor(hyper): a couple of small adjustments (@andreynering)
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.27.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.27.0/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.
v0.26.0
CCC: Carlos Crushes Code
This is primarily a maintenance release to move some things and around, update packages, and prep some stuff for the future. Special thanks to @caarlos0 (and @aymanbagabas!) for pushing Charm™ future-facing tech and infrastructure.
Changelog
New!
Fixed
Other stuff
- 2b506d6: chore: bump bubbletea to fix moving the cursor to the bottom of screen (@aymanbagabas)
- b54c06b: chore: bump bubbletea to latest rc2 version (@aymanbagabas)
- 6cecb82: chore: update bubbletea to latest rc2 version (@aymanbagabas)
- 7fd14ff: refactor(tui): move ExecShell to uiutil package (@aymanbagabas)
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.26.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.26.0/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.
v0.25.0
Project tracking ’n’ bug fixes
This release introduces a new crush projects command that you can use to see all the projects where you used Crush that it knows about. Keep in mind that you need to start Crush at least once, with this new release, to get it recognized. It was primarily designed for programmatic use (see the --json flag, but maybe people will like it too). For details see crush projects --help).
We're also shipping some important bug fixes, including a patch for a possible broken session that could occur when OpenAI-compatible providers like Grok if you interrupted the model while it was thinking.
Keep crushing it! 💘
Changelog
New!
Fixed
- a2678eb: fix(uiutil): add Cursor interface (@aymanbagabas)
- 9ca6557: fix: typo in Subscriber type name (#1616) (@meowgorithm)
- 33d8aaf: fix: update fantasy with fix for empty messages bug (#1639) (@andreynering)
- c822651: fix:remove 100MB file size limit from download tool (#1631) (@Gustave-241021)
Deps
Other stuff
- b1d93eb: chore(ui): remove left padding in thinking blocks (#1629) (@meowgorithm)
- 69d3ac9: chore: search improvements (#1632) (@kujtimiihoxha)
- 0d0ac7c: chore: send
interactiveattribute (forcrush run) (#1635) (@andreynering) - df6f35a: refactor(tui): move UI message handling to internal/uiutil (@aymanbagabas)
- 7918c90: refactor(tui): move command loading to uicmd package (@aymanbagabas)
- 31e155c: refactor(tui): unify commandType definition (@aymanbagabas)
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.25.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.25.0/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.
v0.24.0
To-Dos and More!
At last to-dos! We also made some improved noninteractive Crush and hardened things all around. Read on!
To-Dos
Apparently, LLMs are just like people: they need a to-do list to get anything useful done. That why we’ve finally granted Crush a first class to-do list, Charm-style. Now Crush will create to-dos list as-needed for better execution on tasks.
Does this mean that (with the right MCP) you can use Crush for grocery shopping? Why the heck not.
U so Fancy, Crush Run
There are a lot of people using Crush in sneaky places with its non-interacive (and super yolo) mode: crush run. As true command line connoisseurs, we've upgraded crush run to support output redirection (or pipes, if you will).
cat Taskfile | crush run "add descriptions please"
crush run "Summarize this project" > summary.md
crush run "Rate my Pokémon collection" < Pokedex.md > Pokerating.md
Bugz
We and the community crushed a bunch around rendering (thanks @aymanbagabas!), user interface (thanks @dawndiy!), and tools (thanks @Gustave-241021!).
That's all for now, but we have lots more on the way. Enjoy your weekend and maybe eat a burger. 🍔
—Charm 💋
Changelog
New!
- 88831a1: feat: todo tool (@kujtimiihoxha)
Fixed
- 36d471b: fix(noninteractive): support output redirection (aka, pipes) (#1594) (@meowgorithm)
- cc08edc: fix(tui): fix list wrap behave when it has unfocusable items (#1312) (@dawndiy)
- 2d43901: fix(ui): list highlight selection scrolling (#1575) (@aymanbagabas)
- 2e466d8: fix: edit tool error on new file creation due to logical fallthrough (#1566) (@Gustave-241021)
Other stuff
- 448b78b: chore: bump bubbletea and ultraviolet to fix non en lang rendering (@aymanbagabas)
- c5d2ccb: chore: update bubbletea to latest rc2 version (@aymanbagabas)
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.24.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.24.0/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.
v0.23.0
GPT 5.2 is here! ✨
OpenAI just released GPT 5.2 and Crush already supports it. Enjoy!
We also added GPT 5.1 Codex Max, which was missing until today. And of course, star contributors @Amolith is back with some nice small additions.
More good stuff coming soon! 💘
Changelog
New!
- 47b50d4: feat(tui): show / hint when editor is empty (#1512) (@Amolith)
- 0cc2bf5: feat: update fantasy and catwalk for support to gpt 5.2 and 5.1 codex max (@andreynering)
Other stuff
- 954872e: chore(taskfile): add task to update fantasy and catwalk (@andreynering)
- ef61c05: chore: bump bt and uv to fix scroll empty line artifact bug (@aymanbagabas)
- de451cc: chore: bump bubbletea and ultraviolet to fix cursor related rendering artifacts (@aymanbagabas)
- 4143ccd: chore: bump bubbletea and ultraviolet to fix kitty keyboard exiting (@aymanbagabas)
- 23cf8af: chore: bump bubbletea to module replace (@aymanbagabas)
- d354b61: chore: bump dependencies (@aymanbagabas)
- d8f8889: chore: bump lipgloss to the latest v2 version (@aymanbagabas)
- 6219de7: feat(mcp-config): add list of disabled_tools (#1533) (@Amolith)
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.23.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.23.0/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.
v0.22.2
Long Sesh in Claude Max? No problem.
This release improves how Crush refresh tokens from Claude Code or API key templates. It'll now automatically refresh when it expires and continue transparently. This affected long session only (8+ hours), and was only partially working until now. Kudos to @taciturnaxolotl for reporting and helping with this fix!
Additionally, @taigrr made a change to sort sessions by activity instead of creation on the dialog opened by ctrl+s.
@meowgorithm also fixed the need to press ctrl+c twice to close crush run. Pressing a single time will now work.
Happy coding! 🎄
Changelog
Fixed
- ab55cb6: fix(claude): add authentication refresh on 401 errors (#1581) (@taciturnaxolotl)
- 3c7ee39: fix(noninteractive): cancel on signal (#1584) (@meowgorithm)
- be746ce: fix: typo choise -> choice (#1579) (@caarlos0)
Other stuff
- 4097732: perf: improve startup, specifically provider updates (#1577) (@caarlos0)
- 94a8750: sort sessions by most recently used instead of creation (#1467) (@taigrr)
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.22.2/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.22.2/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.