4596b02
fix(lsp): treat adjacent ranges as non-overlapping per LSP spec (#2322)
Click to expand commit body
Fix rangesOverlap() to treat LSP ranges as half-open intervals [start, end)
per the specification. Adjacent edits where one range ends where another
begins are no longer incorrectly rejected as overlapping.
huaiyuWangh
created
c843441
chore(deps): bump the all group with 4 updates (#2341)
Click to expand commit body
Bumps the all group with 4 updates: [github.com/charmbracelet/x/powernap](https://github.com/charmbracelet/x), [github.com/go-git/go-git/v5](https://github.com/go-git/go-git), [github.com/modelcontextprotocol/go-sdk](https://github.com/modelcontextprotocol/go-sdk) and [golang.org/x/net](https://github.com/golang/net).
Updates `github.com/charmbracelet/x/powernap` from 0.1.0 to 0.1.1
- [Commits](https://github.com/charmbracelet/x/compare/v0.1.0...vcr/v0.1.1)
Updates `github.com/go-git/go-git/v5` from 5.16.5 to 5.17.0
- [Release notes](https://github.com/go-git/go-git/releases)
- [Commits](https://github.com/go-git/go-git/compare/v5.16.5...v5.17.0)
Updates `github.com/modelcontextprotocol/go-sdk` from 1.3.1 to 1.4.0
- [Release notes](https://github.com/modelcontextprotocol/go-sdk/releases)
- [Commits](https://github.com/modelcontextprotocol/go-sdk/compare/v1.3.1...v1.4.0)
Updates `golang.org/x/net` from 0.50.0 to 0.51.0
- [Commits](https://github.com/golang/net/compare/v0.50.0...v0.51.0)
---
updated-dependencies:
- dependency-name: github.com/charmbracelet/x/powernap
dependency-version: 0.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: all
- dependency-name: github.com/go-git/go-git/v5
dependency-version: 5.17.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all
- dependency-name: github.com/modelcontextprotocol/go-sdk
dependency-version: 1.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all
- dependency-name: golang.org/x/net
dependency-version: 0.51.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>
42a9e75
chore(legal): @taoeffect has signed the CLA
Charm
created
57744ca
chore(deps): bump charm.land/catwalk from v0.24.0 to v0.25.0 (#2326)
Click to expand commit body
Catwalk v0.25.0 release: https://github.com/charmbracelet/catwalk/releases/tag/v0.25.0
This updates `vertexai.json` provider definition to include `gemini-3.1-*` and `claude-*-4.6`.
3c5fcff
perf(tools/view): pause briefly for LSP diagnostics when viewing a file
Christian Rocha
created
6604dd0
perf(lsp): don't watch for changes when simply reading files
Christian Rocha
created
12f0d9f
perf(tools/view): avoid scanning entire file to count lines
Christian Rocha
created
41a931e
fix(mcp): restore handling for unsupported resources/list method
Christian Rocha
created
773efbf
fix(tools/view): perform UTF-8 validity check only if read succeeds
Click to expand commit body
Prior to this change the check would happen before we would know if the
file read was successful.
Christian Rocha
created
42aee6d
refactor: use params struct for runSubAgent and add unit tests
wanghuaiyu@qiniu.com
created
6e5bbef
fix: use typed context keys in tests to satisfy staticcheck
Click to expand commit body
- Define custom key types (testStringKey, testBoolKey, testIntKey)
- Replace string literals with typed constants
- Fixes SA1029: should not use built-in type string as key for value
wanghuaiyu@qiniu.com
created
e0d5454
refactor: extract common sub-agent execution logic
Click to expand commit body
- Add runSubAgent and runSubAgentWithOptions methods to coordinator
- Simplify agent_tool.go from 106 to 60 lines (43.4% reduction)
- Simplify agentic_fetch_tool.go from 235 to 200 lines (14.9% reduction)
- Eliminate 81 lines of duplicated session management code
- Support custom session setup via callback for special cases
- Improve error handling with proper error wrapping
- Add updateParentSessionCost helper for consistent cost propagation
wanghuaiyu@qiniu.com
created
07d065d
refactor: simplify context value retrieval using generics
Click to expand commit body
- Introduce generic getContextValue helper function to eliminate code duplication
- Reduce code from 75 to 56 lines (25.3% reduction)
- Simplify Get*FromContext functions from ~13 lines to 2 lines each
- Add comprehensive test coverage (18 test cases) for context functions
- Maintain backward compatibility with existing API
24f99f0
fix(lsp): replace recursive fastwalk with filepath.Glob in root marker detection (#2316)
Click to expand commit body
hasRootMarkers used fsext.Glob which triggered a full recursive fastwalk
of the working directory with no gitignore filtering. In large JS
monorepos this walked millions of files in node_modules, causing 800%
CPU usage. Root markers are simple filenames (go.mod, package.json,
*.gpr, etc.) that only need a single-directory check.
🐘 Generated with Crush
Assisted-by: AWS Claude Opus 4.6 via Crush <crush@charm.land>
Austin Cherry
created
c6f8546
feat: add support for anthropic thinking effort (#2318)
3994293
chore(events): log when crush stats is called
Christian Rocha
created
655ce65
fix(ui): truncate status messages that would otherwise wrap (#2306)
Christian Rocha
created
62b8c0b
fix(lsp): fix multiple bugs in lsp client lifecycle and handlers (#2305)
Click to expand commit body
- Remove dead client from map when initialization fails to allow retry
- Use client's cwd field instead of os.Getwd() in openKeyConfigFiles
- Fix slog key-value pair in HandleServerMessage error logging
- Remove redundant hardcoded timeout in WaitForServerReady
The `callback` field was `nil` when the app returned early before
`SetCallback` was called, causing a segfault in `startServer`.
💘 Generated with Crush
Assisted-by: Claude Opus 4.6 via Crush <crush@charm.land>
dff955f
fix(mcp): gracefully handle Method not found for resources/list (#2239)
Click to expand commit body
Some MCP servers advertise resources capability but don't implement
resources/list, causing the entire MCP client to fail. This change
handles JSON-RPC error code -32601 gracefully by marking resources
as unavailable instead of failing.
Fixes #2227
0xarcher
created
c046219
chore: update lip gloss, bubble tea and bubbles to v2.0.0 (#2299)
Andrey Nering
created
dcc67b7
fix(app): fix goroutine leak, shutdown context, and model matching (#2298)
Click to expand commit body
- Add missing return after error send in RunNonInteractive goroutine
- Use context.WithoutCancel for shutdown to preserve tracing context
- Use strings.EqualFold for case-insensitive model matching
- Preserve LSP ConnectedAt across state transitions
huaiyuWangh
created
57a09a1
chore(deps): bump the all group with 3 updates (#2290)
Click to expand commit body
Bumps the all group with 3 updates: [charm.land/catwalk](https://github.com/charmbracelet/catwalk), [github.com/clipperhouse/displaywidth](https://github.com/clipperhouse/displaywidth) and [github.com/pressly/goose/v3](https://github.com/pressly/goose).
Updates `charm.land/catwalk` from 0.21.0 to 0.21.1
- [Release notes](https://github.com/charmbracelet/catwalk/releases)
- [Commits](https://github.com/charmbracelet/catwalk/compare/v0.21.0...v0.21.1)
Updates `github.com/clipperhouse/displaywidth` from 0.10.0 to 0.11.0
- [Release notes](https://github.com/clipperhouse/displaywidth/releases)
- [Changelog](https://github.com/clipperhouse/displaywidth/blob/main/CHANGELOG.md)
- [Commits](https://github.com/clipperhouse/displaywidth/compare/v0.10.0...v0.11.0)
Updates `github.com/pressly/goose/v3` from 3.26.0 to 3.27.0
- [Release notes](https://github.com/pressly/goose/releases)
- [Changelog](https://github.com/pressly/goose/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pressly/goose/compare/v3.26.0...v3.27.0)
---
updated-dependencies:
- dependency-name: charm.land/catwalk
dependency-version: 0.21.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: all
- dependency-name: github.com/clipperhouse/displaywidth
dependency-version: 0.11.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all
- dependency-name: github.com/pressly/goose/v3
dependency-version: 3.27.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>
One of our indirect dependencies switched to "MIT-0". This is even more
permissive than MIT, so totally valid for us.
* https://github.com/segmentio/asm/pull/86
Check failure:
* https://github.com/charmbracelet/crush/pull/2290
* https://github.com/charmbracelet/crush/actions/runs/22323633569/job/64588201366?pr=2290
About the license:
* https://github.com/aws/mit-0
* https://opensource.org/license/mit-0
262c74e
fix(agent): fix minor bugs in coordinator and view tool (#2276)
Click to expand commit body
- Fix misleading error message: report "small model provider not configured"
instead of "large" when the small model provider is missing
- Fix error handling order in view tool: check readTextFile error before
UTF-8 validation to avoid validating partial/empty content
- Fix MCP tool filtering: move "MCP not allowed" log into correct branch
and break after tool is added to prevent duplicate additions
huaiyuWangh
created
6e019e9
chore(legal): @Jaylonnet has signed the CLA