[BUG] File paths sent to Claude Code do not respect running Claude from a different CWD
- Ngôn ngữ chính
- Lua
- Star
- 3.1k
- Fork
- 216
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
## Bug Description
When using a `cwd_provider`, buffer paths sent to Claude Code are relative to Neovim's CWD instead of the directory that Claude is running in.
## To Reproduce
Steps to reproduce the behavior:
Use a plugin configuration similar to
```
require("claudecode").setup({
terminal = {
cwd_provider = function(ctx)
-- Prefer repo root; fallback to file's directory
local cwd = require("claudecode.cwd").git_root(ctx.file_dir or ctx.cwd) or ctx.file_dir or ctx.cwd
return cwd
end,
},
})
```
Using this repository
1. `cd plugin`
2. `nvim claudecode.lua`
3. Run `ClaudeCodeOpen`
4. Run `ClaudeCodeAdd %` or make a visual selection and run `ClaudeCodeSend`
Note that the path sent is `claudecode.lua` but since Claude Code is running from the git root, it should be `plugin/claudecode.lua` for Claude to properly resolve it.
Oddly, sometimes, the first time I send the path it works properly but then after that the bug occurs. Not sure why but it might be linked to whether the path is calculated before or after Claude is finished opening?
## Expected Behavior
The buffer path sent to Claude is relative to Claude's CWD from the `cwd_provider` instead of relative to Neovim's CWD.
## Environment
- Neovim version: 0.11.4
- Claude Code CLI version: 2.0.26
- OS: MacOS 26.0
- Plugin version: latest git
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Tái hiện vấn đề với cwd_provider được hiển thị, sau đó lần theo các entry point ClaudeCodeOpen, ClaudeCodeAdd % và ClaudeCodeSend cũng như cách xử lý đường dẫn xung quanh claudecode.cwd. So sánh các đường dẫn được gửi khi CWD của Neovim khác với CWD đã cấu hình của Claude, bao gồm cả trường hợp gửi lần đầu. Hoàn thành khi các đường dẫn của buffer và vùng chọn trực quan được phân giải nhất quán tương đối với CWD của Claude.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- lua
- Lĩnh vực
- cli, devtools
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100