46ebd20
fix(ui): optimize assistant message rendering to improve performance (#2258)
Click to expand commit body
This commit attempts to fix an issue where the rendering of assistant
messages in the chat UI can become significantly degraded in
performance, especially for long messages. The root cause of the
performance degradation was identified as the use of lipgloss.Render for
applying styles to the message content, which involves wrapping logic
that can be expensive for long messages.
2656a18
fix(ui): cache blurred and focused renderings separately for assistant messages (#2252)
Click to expand commit body
Assistant messages can have long content, and rendering them can be
expensive. To improve performance, we cache the rendered content for
both blurred and focused states separately.
Ayman Bagabas
created
699c8d7
refactor: simplify some code by using `cmp.Or` (#2253)
Andrey Nering
created
44c7535
fix(deps): update `go-nativeclipboard` version to compile to RISC-V. (#2216)
db5e9cc
chore(deps): bump github/codeql-action in the all group (#2237)
Click to expand commit body
Bumps the all group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).
Updates `github/codeql-action` from 4.32.2 to 4.32.3
- [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/45cbd0c69e560cd9e7cd7f8c32362050c9b7ded2...9e907b5e64f6b83e7804b09294d44122997950d6)
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-version: 4.32.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
7fe592d
fix: make reasoning effort dialog smaller (#2247)
Click to expand commit body
Before, it was even wider than the commands dialog, which looked weird.
Andrey Nering
created
7ac4061
fix(lsp): properly remove clients from map on stop/kill
Click to expand commit body
- Delete clients from the map in StopAll and KillAll so they can be
recreated on restart
- Add StateDisabled to the state check to prevent re-initializing
disabled clients
- Remove duplicate callback invocation in startServer
💘 Generated with Crush
Assisted-by: Kimi K2.5 via Crush <crush@charm.land>
- used the synchronized client map
- lsps root markers don't need to be gitignore aware
- cache unexisting lsp binaries globally
closes #2223
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker
created
540deef
fix(ui): toggle pills to follow scroll (#2218)
Click to expand commit body
This change ensures that when toggling the pills (e.g., to-dos) in the
UI, if the scroll follow mode is enabled, the chat will automatically
scroll to the bottom. This prevents the user from losing their place in
the chat when they expand or collapse the pills section.
Ayman Bagabas
created
ab475a4
chore(legal): @julienrbrt has signed the CLA
Charm
created
f7a5507
Merge remote-tracking branch 'origin/main' into feat/docker-mcp-integration
Christian Rocha
created
e471e75
fix(ui): early exit AtBottom() when totalHeight exceeds viewport height
Add smart loop detection as a stop condition for agent execution. When
the same tool call signature (name + input + output) appears more than
5 times within a 10-step window, the agent stops instead of running
until context window exhaustion.
huaiyuWangh
created
ce15dfb
Merge branch 'main' into feat/docker-mcp-integration
Andrey Nering
created
ddf2fad
chore: update fantasy with fix for json schema in openai (#2221)
Click to expand commit body
https://github.com/charmbracelet/fantasy/pull/138
Andrey Nering
created
5f427cf
Merge branch 'main' into feat/docker-mcp-integration
d34c56b
Merge pull request #2204 from charmbracelet/charm-1151-toggling-open-a-block-while-streaming-causes-jitter
Click to expand commit body
fix(ui): chat: use follow indicator to determine auto-scrolling behavior
Ayman Bagabas
created
1f9f190
chore(legal): @PHPCraftdream has signed the CLA
Charm
created
3d186df
Merge branch 'main' into feat/docker-mcp-integration
Andrey Nering
created
8ccb3c7
feat(pills): add toggle todos/pills menu item (#2202)
Christian Rocha
created
eae61e1
fix(ui): completions offset for attachments row (#2208)
Click to expand commit body
refs #2129
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Carlos Alexandro Becker
created
d7e2252
perf: replace regex-based gitignore with glob-based matching (#2199)
Click to expand commit body
Replace github.com/sabhiram/go-gitignore (regex-based) with
github.com/go-git/go-git/v5/plumbing/format/gitignore (glob-based).
Key optimizations:
- Two-level caching: per-directory pattern cache + combined matcher cache
- O(1) fast-path for common directories (node_modules, .git, __pycache__, etc.)
- Pre-build combined matchers to avoid O(depth) pattern walking per file
- Proper isDir parameter for directory-specific patterns (e.g., "backup/")
Profiling showed 80% CPU in regexp.tryBacktrack from the old library when
walking large monorepos (771k files). After this change, gitignore matching
drops to ~2% of CPU time.
💘 Generated with Crush
Assisted-by: AWS Claude Opus 4.5 via Crush <crush@charm.land>
Austin Cherry
created
faec9a2
chore(legal): @wallacegibbon has signed the CLA