624e14c
      v0.9.3
    
    
    
     Christian Rocha created
624e14c
      v0.9.3
    Christian Rocha created
ef6a324
      chore: add metrics and error tracking
    Andrey Nering created
9654218
      feat(permissions): pretty-print MCP JSON
    Add pretty-printed JSON parameters to MCP tool permission dialogs so users can read more of the content. Co-Authored-By: Crush <crush@charm.land>
Amolith and Crush created
6b161d2
      feat(config): allow custom providers of type gemini (#585)
    This change extends the provider configuration to allow users to define custom providers with `type: "gemini"`. This enables connecting to any Gemini-compatible API by specifying its `base_url` and `api_key` within the `providers` section of `crush.json`. It supports complex setups, such as using a local proxy or a model-balancing service.
kslamph created
3b6a375
      feat: add alt/option+esc binding to current esc key behavior
    This mimics the behavior of Claude Code and allows folks who use Crush from within a terminal emulator that captures the escape key (like Nvim's built in terminal emulator) to use it.
Max Justus Spransy created
ab96589
      fix: disable providers (#1087)
    * fix: disable providers if we remove then from the list, they'll still show up because they won't get merged with catwalk providers later on. closes #1037 Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
4dd2b17
      fix(lsp): improve error messages
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
4926722
      fix(lsp): command
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
2fd3b43
      fix(mcp): improve timeout errors (#1108)
    * fix(mcp): improve timeout errors refs #970 Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: improve Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> --------- Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
0da5e6b
      feat(lsp): load defaults by either name or command (#1109)
    * fix(lsp): load defaults by name or command name Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix(lsp): simplify Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> --------- Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
1f46a69
      fix(grep): resolve Windows path parsing with null separation (#1095)
    Rory de Zoete created
c2d85d1
      docs: add huggingface inference
    kujtimiihoxha created
56d6486
      test: verify tools are taken from agent when disabled (#1103)
    Adam Stringer created
d0edf44
      chore: home pkg godoc
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
ee860b9
      docs: document more mcp options
    refs #970 Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
3ba15bf
      docs: aws profile/region envs (#1104)
    closes #382 Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
1f35d54
      fix: lsp/mcp command expand ~ (#1105)
    * fix(lsp): powernap load by name Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix(mcp): expand command Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix(lsp): expand command Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> --------- Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
701e550
      feat(config): search`crush.json` recursively up from the working directory (#898)
    bbrodriges created
f77371b
      ci: -trimpath, remove broken target
    - windows/arm/v7 was marked broken by the Go team - add `-trimpath` to trim the `/home/etc` from logs Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
feb184d
      chore: task fmt (#1098)
    Amolith created
3694768
      fix: remove <think></think> from title
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
36b053b
      chore(legal): @zoete has signed the CLA
    Charm created
5637bcd
      test: fix
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
3071026
      chore(deps): update dependencies
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
976425c
      docs(readme): add mini Chinese description (thanks @ohjia)
    Christian Rocha created
38bde49
      fix(tui): yes/no init selection (#1074)
    This commit ensures that the "Yes" and "No" options in the init screen get properly selected when navigating with the keyboard. Related: https://github.com/charmbracelet/crush/issues/1048
Ayman Bagabas created
d55f807
      docs: add bit about nixos module (#606)
    Kieran Klukas created
47a6d02
      fix: session summarization dialog hanging indefinitely (#528)
    The summarization dialog was getting stuck in "Generating..." state due to two issues: - Agent was formatting nil error values instead of actual response errors - Dialog only handled summarize events but not error events, leaving it in loading state 💖 Generated with Crush Co-authored-by: Crush <crush@charm.land>
Benjamin Oldenburg and Crush created
831a95a
      fix(deps): update powernap for zig
    improved zig support into https://github.com/charmbracelet/x/pull/567 Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
00072cd
      fix: Fix a typo in README.md (#1084)
    The environment variable indicated to configure the Azure AI endpoint did not match the value in [Catwalk][]. [Catwalk]: https://github.com/charmbracelet/catwalk/blob/9d9a86e3a4aec20b8874175c115a3533d5083b54/internal/providers/configs/azure.json#L6
Mike Steinert created
f982965
      chore(legal): @msteinert has signed the CLA
    Charm created
6c990b2
      refactor: remove unused prompt (#1083)
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
fa34edc
      refactor: put tool descriptions in markdown files (#1077)
    Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
91b6b31
      fix(mcp): pass down mcp name to logger (#1078)
    This will make the logs more useful. Right now it would simply print the MCP's library logs without any additional context, so you wouldn't know which MCP is causing issues. Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
96af782
      Revert "refactor(tidy): remove nested if and else block"
    This reverts commit a6e99fff52b4ab105df91f595a6e94ff3e8bd2cb.
kujtimiihoxha created
5811c4a
      refactor(tidy): remove nested if and else block
    tauraamui created
58eda7c
      fix: handle z.ai key validation differently
    kujtimiihoxha created
f794eca
      v0.9.1
    Christian Rocha created
d66dfa2
      fix(lsp): use csync for lsp clients (#1073)
    The map was being passed down everywhere, but the locking mechanism only ever lived in `app.go`, which might cause concurrent access issues. This changes it to a `*csync.Map`. Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
016b3b6
      feat(lsp): remove internal watcher (#1062)
    * feat(lsp): remove internal watcher It was only ever useful if the user edits files through their editor, but we don't really need it assuming we only care about edits done by Crush itself. Basically, we lose that functionality, but save a bunch of file descriptors and have improved perf. Damn good deal if you ask me. Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: remove rlimit Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: more cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> --------- Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
f02ce4b
      v0.9.0
    Christian Rocha created
38468a3
      docs(readme): tidy attribution section
    Christian Rocha created
348fa94
      Update README.md
    Co-authored-by: Andrey Nering <andreynering@users.noreply.github.com>
Raphael Amorim and Andrey Nering created
3445769
      chore: various attention to detail edits via @andreynering
    Christian Rocha created
13735c7
      docs: add missing anchor
    Andrey Nering created
2f73e6c
      docs(readme): mention contributing guide (#1067)
    Closes #1064
Andrey Nering created
6c380d4
      feat: add attribution settings to config and bash tool (#1025)
    * feat: add attribution settings to config and bash tool * fix(readme): move ephemeral data block back to cfg section Closes: #445
Amolith created
b00ffcc
      feat: LSP implementation using x/powernap (#1011)
    * feat: LSP implementation using x/powernap Replace custom LSP client implementation with the `charmbracelet/x/powernap` library, significantly reducing codebase complexity by removing ~12,000 lines of custom LSP protocol handling code. This migration introduces: - **Simplified client architecture**: Replace custom LSP transport, protocol, and method handling with powernap's battle-tested implementation - **Enhanced workspace support**: Add workspace markers and inactive LSP server detection capabilities from powernap - **Improved configuration**: Integrate powernap's default LSP server configurations and settings - **Reduced maintenance burden**: Remove custom protocol definitions, JSON marshaling, and transport layer code - **More features**: e.g. workspace root markers, starting LSP servers only where these files exist The refactor maintains existing functionality while leveraging powernap's robust LSP client foundation, making the codebase more maintainable and feature-rich. Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> chore: updates Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: code review Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * revert: unwanted change Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: improve code Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: schema Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: improve merge Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: unneeded changes Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: several fixes Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: more cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: use csync Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: did close Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: remove unused code Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: clean Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * test: fix Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * refactor: improve func Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: http client debug Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> --------- Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> Co-authored-by: Andrey Nering <andreynering@users.noreply.github.com>
Carlos Alexandro Becker and Andrey Nering created
898f1ee
      fix(config): look for more than just crush.md
    Crush used to show the initialization popup even when the project uses something other than `CRUSH.md`. Crush already has support for loading those other context files, like `CLAUDE.md` or `AGENTS.md`, so this just changes the popup check logic to look for the same set it loads Co-Authored-By: Crush <crush@charm.land>
Amolith and Crush created
382f1ca
      chore: fix labeler script
    Andrey Nering created