Crush better at Crush
You might have noticed that on v0.55.0 we added a built-in skill to instruct Crush on how to configure itself. Adding a custom provider, LSP or MCP; changing settings, etc. can be easily done with prompts.
In this release, we added two new tools to help Crush debug itself:
crush_info: Returns configuration, so Crush can see what is in the final configuration with all config files merged.crush_logs: Show logs from Crush itself. Helps Crush to debug itself in case something is now working right.
Of course, the model should only call these tools if asked to. If you want to disable them to ensure it's never available, add this to your config:
{
"options": {
"disabled_tools": ["crush_info", "crush_logs"]
}
}LSPs back to sidebar
LSPs are now showing again at the sidebar. There was an issue preventing them appearing there. Thanks @fuleinist for the fix!
Config JSON schema fixed
@BrunoKrugel worked on a fix for an issue related to auto-generating the JSON schema for our config. This is typically used by code editors and even models, and it's not fixed!
See ya all in the next release 👋
Charm
Changelog
New!
- df39b64: feat(tools): add crush_info tool implementation files (@meowgorithm)
- 77fcc76: feat(tools): add crush_logs tool for reading application logs (@meowgorithm)
- 2772734: feat(tools): crush_info tool for readling live config (@meowgorithm)
- 59943a8: feat: open Hyper auth dialog automatically on unauthorized error (@andreynering)
Fixed
- fccf061: fix(app): derive shutdown context from
context.Background()instead of cancelledglobalCtx(#2242) (@AnyCPU) - baae1b6: fix(lsp): clone slice to avoid mutation (@andreynering)
- fa15658: fix(schema): fix
crush.jsonschema generation (#2574) (@BrunoKrugel) - 85445d7: fix(ui): subscribe to
app.LSPEventinstead ofworkspace.LSPEvent(#2565) (@fuleinist)
Docs
Other stuff
- 1bb4627: chore(skills/crush-config): improve crush config skill (#2556) (@meowgorithm)
- 1b7a457: chore: add custom error and message for hyper unauthorized (#2577) (@andreynering)
- 85b66c3: chore: auto-update files (@charmcli)
- 6e854b4: chore: update unauthorize message (@andreynering)
- 6f7762f: feat(tools/crush_info): add skill status (@meowgorithm)
- 269bc30: feat(tools/crush_info): handle config staleness (@meowgorithm)
- 816453b: feat(tools/crush_info): staleness detection and auto-reload (@meowgorithm)
- 2e07c0d: style: standardize log capitalization (@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.56.0/checksums.txt'
wget 'https://github.com/charmbracelet/crush/releases/download/v0.56.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.