dce790c
fix(diff): normalize line endings to prevent full-file diffs on CRLF files
Click to expand commit body
CRLF line endings caused diffs to show every line as changed. The root
issues: GenerateDiff never normalized inputs, edit/multiedit stored
CRLF-converted content in metadata and history while old content stayed
LF, and write tool diffed raw file bytes against LF input.
💘 Generated with Crush
Assisted-by: GLM-5 via Crush <crush@charm.land>
Christian Rocha
created
0525f01
chore(legal): @fuleinist has signed the CLA
09da90a
docs(ui): add comprehensive comments to completion ranking algorithm
Click to expand commit body
Add detailed documentation to improve code review experience:
- Explain scoring weights and their rationale
- Document the ranking strategy and workflow
- Clarify path hint detection heuristics
- Add examples to helper functions
- Document test cases with their intent
Implement custom ranking algorithm for file completions to provide
better matching results based on user input patterns.
Changes:
- Add intelligent path hint detection to distinguish between filename
and filepath queries
- Implement weighted scoring system that balances fuzzy matching with
prefix/contains bonuses
- Support both full path and basename matching with appropriate weights
- Add depth penalty adjustment based on query type
- Select match highlights based on weighted contribution
- Add comprehensive test coverage for ranking logic
- Add DialogID field to file picker command in commands.go
- Add FilePickerID case handler in openDialog function
- Remove TODO comment and complete implementation
huaiyuWangh
created
0e3d472
docs(readme): update skill docs with updates and new paths
Andrey Nering
created
1a0b638
chore: update generated `.crush/.gitignore` to not ignore skills
Andrey Nering
created
cd5c937
feat: load project skills automatically from `.crush/skills` and more
Andrey Nering
created
db043c3
fix: on windows, also load skills from `$HOME/.config/crush/skills`
Andrey Nering
created
ffc7a9d
fix(log): don't conflate body drain errors with HTTP errors
Christian Rocha
created
6920cf1
chore(lint): modernize interfaces in the db package
f9cb29f
chore(legal): @malikwirin has signed the CLA in $pullRequestNo
Charm
created
ec45e15
chore(legal): @UnderLotus has signed the CLA in $pullRequestNo
Charm
created
96f51ca
fix(tui): remove duplicate ctrl+g help binding in FullHelp (#2465)
faelis
created
dfc57d4
fix: reduce max read size from 5mb to 1mb for view and fetch tools (#2447)
Click to expand commit body
5MB is way too much. Many models simply don't have the context windows
to handle that. 1MB seems to works well.
Worth noting that:
* For the view tool, the model will be instruced to read in pieces
* For the fetch tool, the content will be truncated with a note
To reproduce (I tested with Kimi K2.5), use the following prompt:
read this: https://developers.openai.com/api/reference/resources/responses
Andrey Nering
created
0c6fb42
fix: improve long text detection to account for long text in a single line (#2442)
Andrey Nering
created
91bec12
chore: update ncruces/go-sqlite3 to v0.33.0 (#2461)
Click to expand commit body
This release migrates away from `wazero` in favor of `wasm2go`, which
should bring better performance, specially on startup time.
For more information, see:
* https://github.com/ncruces/go-sqlite3/releases/tag/v0.33.0
* https://github.com/ncruces/go-sqlite3/discussions/361
Andrey Nering
created
cbf3e5d
chore(legal): @faelis has signed the CLA in $pullRequestNo
ad5368f
fix: update fantasy with a fix for avian (#2438)
Click to expand commit body
This change updates Fantasy with a fix for SSE events in some
OpenAI-compatible providers.
* Avian will now work again
* OpenRouter will now send the Crush official `User-Agent` string
---
* Closes https://github.com/charmbracelet/crush/issues/2431
* Ref: https://github.com/charmbracelet/fantasy/pull/180
* Ref: https://github.com/openai/openai-go/pull/621