Commit log

27d6453 refactor(update): use pink highlight for spinner

Click to expand commit body
Assisted-by: Kimi K2 Thinking via Crush

Amolith created

66682b2 feat(update): harden security and detection

Click to expand commit body
- Fix version check logic so dev builds show proper message
- Add archive size pre-check before initiating download
- Clean up partial .new file on Windows Apply() failure
- Reject absolute paths in archive extraction
- Skip non-regular files (symlinks, dirs) in tar extraction
- Add slog.Debug observability for background update errors
- Use package manager commands (dpkg, rpm, pacman, brew, scoop,
winget) for accurate install method detection
- Verify checksums.txt with sigstore bundle using sigstore-go

Assisted-by: Claude Opus 4.5 via Amp

Amolith created

4eee055 fix(update): various bug fixes and improvements

Click to expand commit body
- Fix go install pseudo-version regexp to match actual format
- Add nil guard for release in async update check
- Improve temp file handling (close immediately after write)
- Add write permission check on Windows before copying
- Make lock file handling more resilient on Windows
- Add clarifying comment for AUR update instruction

Assisted-by: Claude Opus 4.5 via Crush <crush@charm.land>

Amolith created

b3a4019 refactor(update): remove legacy update check

Click to expand commit body
Assisted-by: Claude Opus 4.5 via Crush

Amolith created

fb60136 refactor(update): harden security and fix issues

Click to expand commit body
- Verify checksums.txt against GitHub API digest before trusting
  contents
- Add lockfile to prevent race condition in Windows ApplyPendingUpdate
- Clean up lingering .old files on Windows startup
- Make async update cancellable when TUI exits
- Add context-aware download with cancellation support
- Validate SHA256 checksum format (64 hex chars)
- Deduplicate checksum parsing and dev version messages

Assisted-by: Claude Opus 4.5 via Crush

Amolith created

8e2bb93 refactor(update): simplify and fix Windows support

Click to expand commit body
- Remove platform-specific binary validation (ELF/Mach-O/PE); checksum
verification is sufficient
- Fix Windows: stage update to .exe.new, apply on next startup since
running executables cannot be replaced
- Add binaryName() function to share logic across platforms
- Fix extraction cleanup on partial failure
- Improve Homebrew detection on Linux

Assisted-by: Claude Opus 4.5 via Crush

Amolith created

5a4ec72 feat(update): auto-update in background on startup

Click to expand commit body
On startup, Crush now checks for updates in the background and
automatically downloads/applies them if CanSelfUpdate() is true. Users
are notified to restart. Package manager installs show platform-specific
upgrade instructions instead.

- Add DisableAutoUpdate config option and CRUSH_DISABLE_AUTO_UPDATE env
  var
- Add platform detection for Homebrew, npm, AUR, Nix, apt, yum, winget,
  Scoop
- Fix Windows winget detection (require ProgramFiles prefix)
- Add --force flag to crush update apply
- Add tests for version comparison edge cases and platform detection

Assisted-by: Claude Opus 4.5 via Crush <crush@charm.land>

Amolith created

e23a4d5 refactor: split platform-specific update code into build-tagged files

Click to expand commit body
Moves binary validation and binaryName const into platform-specific files
(update_unix.go, update_darwin.go, update_windows.go) to avoid compiling
debug/elf, debug/macho, debug/pe on platforms that don't need them.

Assisted-by: Claude Opus 4.5 via Crush <crush@charm.land>

Amolith created

37fd512 feat: add self-update command with version check notification

Click to expand commit body
Adds `crush update` command to check for updates and `crush update apply`
to download and install the latest version. Also displays update
notifications when running `crush --version`.

Assisted-by: Claude Opus 4.5 via Crush <crush@charm.land>

Amolith created

26c4eac v0.22.1

Kujtim Hoxha created

814bb20 fix: update fantasy to fix image loading

Kujtim Hoxha created

2d46f61 v0.22.0

Kujtim Hoxha created

db22f2f feat: add web search (#1565)

Kujtim Hoxha created

8ab8324 fix: prevent nil pointer dereference when updating agent model (#1560)

Gustave-241021 created

c65ec47 fix:prevent crash when pressing ctrl+f on model selector (#1573)

Gustave-241021 created

a0e1bf1 fix: update MultiEdit permission desc to reflect actual applied edits (#1564)

Gustave-241021 created

bbd0887 feat: support image results from tools (#1549)

Kujtim Hoxha created

edf6366 fix: use visual width instead of byte length for text truncation (#1562)

Gustave-241021 created

da5c283 fix: ignore mouse clicks when `isProjectInit` is active (#1561)

Gustave-241021 created

95b9a42 fix: faster shutdown (#1570)

Click to expand commit body
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

Carlos Alexandro Becker created

f50eabd chore(deps): bump the all group with 3 updates (#1568)

Click to expand commit body
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

697545b chore(deps): bump actions/checkout from 6.0.0 to 6.0.1 in the all group (#1567)

Click to expand commit body
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

9eed969 chore(legal): @Gustave-241021 has signed the CLA

Charm created

70a4fa1 fix(list): cap rendered filterable list while keeping full search set (#1492)

James Trew created

d4bfe67 chore(legal): @mikluko has signed the CLA

Charm created

d02d9fa chore(legal): @Guxinpei has signed the CLA

Charm created

31c2211 chore: fix fantasy version

Kujtim Hoxha created

610e360 chore(legal): @mike1858 has signed the CLA

Charm created

8e78fd4 v0.21.0

Kujtim Hoxha created

e0bfd35 feat: allow tools to run in parallel (#1543)

Kujtim Hoxha created

54204da chore: improve zai tool calls (#1551)

Kujtim Hoxha created

5c96ab4 chore: improve prompt (#1502)

Kujtim Hoxha created

0c832d8 chore(legal): @marifcelik has signed the CLA

Charm created

7afc053 chore: go mod tidy

Andrey Nering created

8173d58 ci(labeler): add copilot label

Andrey Nering created

431d6fb chore: bump ultraviolet to fix rendering issues with unnecessary cursor movements and erasing line background color

Ayman Bagabas created

59a4b47 refactor: use contains any

Andrey Nering created

2c97eb8 feat: show progress bar on iterm2 and rio

Andrey Nering created

7272a90 fix: add ValidArgs and Args to login cmd (#1540)

Click to expand commit body
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

Carlos Alexandro Becker created

b4b3207 v0.20.1

Andrey Nering created

53e2277 ci: fix cosign (#1538)

Click to expand commit body
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

Carlos Alexandro Becker created

a35b509 v0.20.0

Andrey Nering created

d898662 feat: add `crush login claude` command (#1537)

Andrey Nering created

2b222e3 fix: remove `max_tokens` minimum requirement to fix json schema issue (#1532)

masroor-ahmad created

c330f0c v0.19.4

Andrey Nering created

4f37cff fix(editor): fix opening `$EDITOR` w/ and w/o args (#1520)

Amolith created

e5639f0 fix: fix `c` key not working in model filter (#1534)

Beiming Zhang created

a9aeaff chore(deps): bump github.com/charmbracelet/x/ansi from 0.11.1 to 0.11.2 in the all group (#1535)

Click to expand commit body
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

8193ba8 chore(legal): @thezbm has signed the CLA

Charm created

f508c6b chore(legal): @masroor-ahmad has signed the CLA

Charm created