958074e
feat: new calm-energy spinner
Christian Rocha created
958074e
feat: new calm-energy spinner
Christian Rocha created
48d3f7b
wip(spinner): apply color
Christian Rocha created
eb24e66
wip(spinner): rework and simplify
Christian Rocha created
3872a58
wip(spinner): basic anim loop
Christian Rocha created
3030910
wip(spinner): stub out new spinner
Christian Rocha created
7643d6a
ci: use goreleaser nightly on snapshot build
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
aa2cacd
feat: open commands dialog on pressing `/` (#2034)
Andrey Nering created
e57687f
fix(ui): fix wrong color on selected item info on dialogs (#2041)
Andrey Nering created
aae4c30
fix(ui): fix selection of code blocks with tabs inside markdown (#2039)
Yes, this is very specific. You need a code block, inside markdown, that uses tabs instead of spaces for indentation, like Go code. This affected both how the code is present on the TUI as well as the text copied to clipboard. We need to convert tabs into 4 spaces on the highlighter to match how it's shown in the TUI. Centralized this into a function to ensure we're doing the exact same thing everywhere.
Andrey Nering created
87fad18
fix: make the commands dialog less taller (#2035)
Andrey Nering created
3a929ff
feat: filetracker per session (#2033)
* feat: filetracker per session Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: only in the new ui Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: tests, lint Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: old tui Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * test: added test, improve schema Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * test: synctest Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * test: fix race Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: relpath Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: simplify Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * chore: trigger ci 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
a81443c
chore(legal): @liannnix has signed the CLA
Charm created
daf786f
fix(stats): resizing breaks pie charts (#2030)
resizing the browser would "break" the pie charts, cutting them off Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
de64b00
fix: decouple thinking/reasoning from provider type (#2032)
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
5011ba2
docs: improve clarity and fluency of mandarin tagline (#2022)
Tommy Guo created
008be3f
chore(legal): @oug-t has signed the CLA
Charm created
9602140
ci: format nix (#2009)
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
fea878e
feat(mcp): support server side instructions (#2015)
* feat(mcp): support server side instructions Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: empty lines 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
c6b0a8a
refactor: terminal capability handling (#2014)
Ayman Bagabas created
99aabb0
fix: schema incorrectly marks optional fields as required (#1996)
This fixes two schema validation issues: 1. tools.ls incorrectly marked as required - Changed Tools.Ls and Config.Tools from omitzero to omitempty - The invopop/jsonschema library doesn't recognize Go 1.25's omitzero tag 2. lsp.command incorrectly marked as required - Removed jsonschema:"required" tag from LSPConfig.Command - The project's own crush.json doesn't include command field for gopls After this fix, users can use minimal configurations without being forced to specify tools.ls or lsp.command fields.
huaiyuWangh created
50ae9f2
chore: auto-update files
Charm created
c81b02f
feat(lsp): auto-discover LSPs (#1834)
* feat(lsp): auto-discover LSPs - auto-discover LSPs defined in powernap - faster startup by walking dir only once to check root markers from all LSPs - errors on auto-found LSPs are ignored (e.g. it might match golangci-lint-server but if you don't have it installed it shouldn't show in the list) Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: sidebar improvement Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: if Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: startup, disabled Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: lint Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: remove unneeded func Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * perf: skip empty Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: server names Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: do not show failing non configured lsps Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: allow to disable auto lsp Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * chore: update powernap 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
df2c001
fix(lsp): scope client to working directory (#1792)
Files outside the working directory are now rejected by HandlesFile(), preventing external files from being opened on the LSP and triggering spurious diagnostics. Assisted-by: Claude Opus 4.5 via Crush
Amolith created
632666e
chore: fix typo on `crush stats` html page
Andrey Nering created
033584c
feat: implement prompt history (#2005)
Kujtim Hoxha created
c5f0e4d
Handle unknown tool calls in the TUI (#2001)
Kujtim Hoxha created
115adeb
fix(ui): use setState method to change UI state and focus (#1994)
This change introduces a setState method in the UI model to encapsulate the logic for changing the UI state and focus. This ensures that any time the state or focus is changed, the layout and size are updated accordingly.
Ayman Bagabas created
699ae40
fix: make the check for sidebar toggle inclusive (#2013)
Kujtim Hoxha created
8d3064f
fix: layout calculations when editor has attachments (#2012)
Kujtim Hoxha created
5e384b2
fix(ui): ensure the message list does not scroll beyond the last item (#1993)
* fix(ui): ensure the message list does not scroll beyond the last item Ensure that when scrolling down, the message list does not scroll beyond the last item, preventing empty space from appearing below the last message. * fix: lint --------- Co-authored-by: Kujtim Hoxha <kujtimii.h@gmail.com>
Ayman Bagabas and Kujtim Hoxha created
4a0af71
v0.36.0
Andrey Nering created
5ddf9d1
fix: token calculation (#2004)
Kujtim Hoxha created
b944952
feat: add ability to drag & drop multiple file at once + support windows (#1992)
Before, only dragging a single file was working. If you tried to drag & drop multiple, it would fail. Also, because Windows paste in a totally different format, it wasn't working at all before.
Andrey Nering created
668adcc
ci(goreleaser): fix aur_sorces build to properly set the version (#1978)
it seems that the variable provided to -ldflags, at some point changed from `main.version` to `github.com/charmbracelet/crush/internal/version.Version`.
so reflect that to the build script for the AUR package.
expected change in the PKGBUILD is:
```
diff --git a/PKGBUILD b/PKGBUILD
index e9afb74..58779bf 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -23,7 +23,7 @@ build() {
export CGO_CXXFLAGS="${CXXFLAGS}"
export CGO_LDFLAGS="${LDFLAGS}"
export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw"
- go build -ldflags="-w -s -buildid='' -linkmode=external -X main.version=v${pkgver}" .
+ go build -ldflags="-w -s -buildid='' -linkmode=external -X github.com/charmbracelet/crush/internal/version.Version=v${pkgver}" .
./crush completion bash >./completions/crush.bash
./crush completion zsh >./completions/crush.zsh
./crush completion fish >./completions/crush.fish
```
Дамјан Георгиевски created
13c28e6
chore(deps): bump the all group with 6 updates (#1985)
Bumps the all group with 6 updates: | Package | From | To | | --- | --- | --- | | [github.com/alecthomas/chroma/v2](https://github.com/alecthomas/chroma) | `2.23.0` | `2.23.1` | | [github.com/bmatcuk/doublestar/v4](https://github.com/bmatcuk/doublestar) | `4.9.2` | `4.10.0` | | [github.com/ncruces/go-sqlite3](https://github.com/ncruces/go-sqlite3) | `0.30.4` | `0.30.5` | | [github.com/posthog/posthog-go](https://github.com/posthog/posthog-go) | `1.9.0` | `1.9.1` | | [github.com/zeebo/xxh3](https://github.com/zeebo/xxh3) | `1.0.2` | `1.1.0` | | [modernc.org/sqlite](https://gitlab.com/cznic/sqlite) | `1.44.2` | `1.44.3` | Updates `github.com/alecthomas/chroma/v2` from 2.23.0 to 2.23.1 - [Release notes](https://github.com/alecthomas/chroma/releases) - [Commits](https://github.com/alecthomas/chroma/compare/v2.23.0...v2.23.1) Updates `github.com/bmatcuk/doublestar/v4` from 4.9.2 to 4.10.0 - [Release notes](https://github.com/bmatcuk/doublestar/releases) - [Commits](https://github.com/bmatcuk/doublestar/compare/v4.9.2...v4.10.0) Updates `github.com/ncruces/go-sqlite3` from 0.30.4 to 0.30.5 - [Release notes](https://github.com/ncruces/go-sqlite3/releases) - [Commits](https://github.com/ncruces/go-sqlite3/compare/v0.30.4...v0.30.5) Updates `github.com/posthog/posthog-go` from 1.9.0 to 1.9.1 - [Release notes](https://github.com/posthog/posthog-go/releases) - [Changelog](https://github.com/PostHog/posthog-go/blob/master/CHANGELOG.md) - [Commits](https://github.com/posthog/posthog-go/compare/v1.9.0...v1.9.1) Updates `github.com/zeebo/xxh3` from 1.0.2 to 1.1.0 - [Commits](https://github.com/zeebo/xxh3/compare/v1.0.2...v1.1.0) Updates `modernc.org/sqlite` from 1.44.2 to 1.44.3 - [Changelog](https://gitlab.com/cznic/sqlite/blob/master/CHANGELOG.md) - [Commits](https://gitlab.com/cznic/sqlite/compare/v1.44.2...v1.44.3) --- updated-dependencies: - dependency-name: github.com/alecthomas/chroma/v2 dependency-version: 2.23.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all - dependency-name: github.com/bmatcuk/doublestar/v4 dependency-version: 4.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all - dependency-name: github.com/ncruces/go-sqlite3 dependency-version: 0.30.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all - dependency-name: github.com/posthog/posthog-go dependency-version: 1.9.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all - dependency-name: github.com/zeebo/xxh3 dependency-version: 1.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all - dependency-name: modernc.org/sqlite dependency-version: 1.44.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot[bot] and dependabot[bot] created
53d065e
chore(deps): bump the all group with 5 updates (#1986)
Bumps the all group with 5 updates: | Package | From | To | | --- | --- | --- | | [actions/checkout](https://github.com/actions/checkout) | `6.0.1` | `6.0.2` | | [actions/setup-go](https://github.com/actions/setup-go) | `6.1.0` | `6.2.0` | | [github/codeql-action](https://github.com/github/codeql-action) | `4.31.10` | `4.31.11` | | [anchore/scan-action](https://github.com/anchore/scan-action) | `7.2.3` | `7.3.0` | | [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) | `6.3.0` | `6.4.0` | Updates `actions/checkout` from 6.0.1 to 6.0.2 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/8e8c483db84b4bee98b60c0593521ed34d9990e8...de0fac2e4500dabe0009e67214ff5f5447ce83dd) Updates `actions/setup-go` from 6.1.0 to 6.2.0 - [Release notes](https://github.com/actions/setup-go/releases) - [Commits](https://github.com/actions/setup-go/compare/v6.1.0...7a3fe6cf4cb3a834922a1244abfce67bcef6a0c5) Updates `github/codeql-action` from 4.31.10 to 4.31.11 - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/cdefb33c0f6224e58673d9004f47f7cb3e328b89...19b2f06db2b6f5108140aeb04014ef02b648f789) Updates `anchore/scan-action` from 7.2.3 to 7.3.0 - [Release notes](https://github.com/anchore/scan-action/releases) - [Changelog](https://github.com/anchore/scan-action/blob/main/RELEASE.md) - [Commits](https://github.com/anchore/scan-action/compare/62b74fb7bb810d2c45b1865f47a77655621862a5...0d444ed77d83ee2ba7f5ced0d90d640a1281d762) Updates `goreleaser/goreleaser-action` from 6.3.0 to 6.4.0 - [Release notes](https://github.com/goreleaser/goreleaser-action/releases) - [Commits](https://github.com/goreleaser/goreleaser-action/compare/9c156ee8a17a598857849441385a2041ef570552...e435ccd777264be153ace6237001ef4d979d3a7a) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 6.0.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all - dependency-name: actions/setup-go dependency-version: 6.2.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all - dependency-name: github/codeql-action dependency-version: 4.31.11 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: all - dependency-name: anchore/scan-action dependency-version: 7.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all - dependency-name: goreleaser/goreleaser-action dependency-version: 6.4.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: all ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot[bot] and dependabot[bot] created
5edc4cb
ci: use goreleaser nightly (#1987)
* ci: use goreleaser nightly reason: https://github.com/goreleaser/goreleaser/commit/20d273bf4a96d2cebd0d99dcd9b10dc17cf71d61 should fix https://github.com/charmbracelet/nur/issues/42 Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * chore: comment 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
99a896d
refactor: use `ContainsAnyOf` from `x`
Andrey Nering created
b490a3b
chore(deps): update `github.com/charmbracelet/x/exp/strings`
Andrey Nering created
f791446
fix: stats chart don't account for cached tokens
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker created
dd3834a
fix(agent): read step data for summarization check (#1787)
Amolith created
9faa8b2
fix: enable left/right scrolling of diff (#1984)
* fix: enable left/rigth scrolling of diff this also fixes an issue introduced in #1931 where the model info was not showing in the landing page. * chore: simplify model info
Kujtim Hoxha created
7154e46
feat: update session title (#1988)
* feat: update session title * chore: implement review requests
Kujtim Hoxha created
0eee061
feat: crush stats (#1920)
* wip: stats Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fixup! wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: css Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * logo Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: cast Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * cleanup Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * improvements Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * provider donut Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: improvements Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * wip Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * jetbrains mono Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fixes Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: rm border Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * chore: update footer/header Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: footer class Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * refactor: move stuff around Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * refactor: improving Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: anims Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: rename vars Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * chore: remove all card borders * chore: adjust easing * fix: fail if no sessions Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: improvements Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: generated by Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com> * fix: header hazy 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: Christian Rocha <christian@rocha.is>
Carlos Alexandro Becker and Christian Rocha created
9622c25
fix: should also copy on `y` (additionally to `c`) (#1989)
Andrey Nering created
a0e9d35
ci(labeler): add automation for `area: crush run` label
Andrey Nering created
abbee92
feat: delete sessions (#1963)
* feat: delete sessions * chore: small cleanup * chore: make delete transactional * refactor: cleanup the delete logic
Kujtim Hoxha created
77bfd1a
chore(legal): @gdamjan has signed the CLA
Charm created
8e7a331
docs(readme): add Z.ai API key info
Christian Rocha created
3193895
docs(readme): add SYNTHETIC_API_KEY (#1971)
Billy Cao created