Commit log

052ec0a feat: add support for alibaba coding plan

Click to expand commit body
* https://github.com/charmbracelet/catwalk/pull/201

Andrey Nering created

8bcca78 v0.47.0

Andrey Nering created

6d89de6 chore: update catwalk

Andrey Nering created

56d79d1 fix(lsp): fallback to Kill() on timeout (#2349)

Tai Groot created

aa0997b chore: bump powernap to v0.1.2

Click to expand commit body
Related: https://github.com/charmbracelet/crush/pull/2349

Ayman Bagabas created

9ec46b8 feat(shell): add blocking wait option to job_output tool (#2189)

Sean Porter created

da2eef2 chore(deps): bump actions/setup-go from 6.2.0 to 6.3.0 in the all group (#2340)

Click to expand commit body
Bumps the all group with 1 update: [actions/setup-go](https://github.com/actions/setup-go).


Updates `actions/setup-go` from 6.2.0 to 6.3.0
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/7a3fe6cf4cb3a834922a1244abfce67bcef6a0c5...4b73464bb391d4059bd26b0524d20df3927bd417)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: 6.3.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

59031cb v0.46.2

Andrey Nering created

8762efc fix(ui): follow scroll when at bottom (#2336)

Click to expand commit body
* fix(ui): follow scroll when at bottom

This change attempt to completely fix the agent scroll issue when at
bottom. It should follow the agent when the follow flag is set.

* fix(ui): make sure we select the last item when at bottom

Ayman Bagabas created

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>

dependabot[bot] and dependabot[bot] created

2baf565 chore(legal): @vmfu has signed the CLA

Charm created

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`.

Ivan De Marino created

20e8aea chore(legal): @detro has signed the CLA

Charm created

61953d4 v0.46.1

Andrey Nering created

02ec5db bugfix: find references, double timeout

Tai Groot created

d3682ac use new wg pattern

Tai Groot created

0583221 fix(tools/view): fix view paging, test for edge cases

Christian Rocha created

d98c854 perf(lsp): use shared timeout for parallel diagnostics collection

Christian Rocha created

ded666a chore(lint): don't shadow err vars

Christian Rocha created

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

wanghuaiyu@qiniu.com created

2904a36 v0.46.0

Andrey Nering created

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)

Andrey Nering created

cd34bd6 feat: add minimax china provider (#2315)

Click to expand commit body
Co-authored-by: Andrey Nering <andreynering@users.noreply.github.com>

AN Long and Andrey Nering created

b726b20 chore(legal): @aisk has signed the CLA

Charm created

1dbde3e chore(legal): @mavaa has signed the CLA

Charm created

234a87c v0.45.1

Andrey Nering created

8d6433b ci: notify me on winget prs

Andrey Nering created

c9fec16 chore: update catwalk

Andrey Nering created

4018154 fix(event): guard against panic (#2310)

Christian Rocha created

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

huaiyuWangh created

643919d fix: initialize lsp manager callback to prevent nil pointer panic (#2307)

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

Andrey Nering created

d159984 v0.45.0

Andrey Nering created

841165e feat: add support or gemini 3+ thinking levels

Andrey Nering created

a439237 chore: update catwalk to v0.22.0

Andrey Nering created

407ab1f chore: update fantasy to v0.10.0

Andrey Nering created

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