# 1. 确保在 devcontainer 内
cd /workspace
# 2. 清空旧的 lock 文件
rm -rf ~/.claude/ide/*.lock
# 3. 启动 Neovim 并查看调试输出
nvim
# 4. 在 Neovim 中执行
:ClaudeCodeStart你应该看到这些调试信息:
🔵 DEBUG: Lock directory on module load: /home/node/.claude/ide
🔵 DEBUG: Lock directory exists? true
🔵 DEBUG: CLAUDE_CONFIG_DIR env: nil
🟢 DEBUG: Lock file created at: /home/node/.claude/ide/xxxxx.lock
🟢 DEBUG: Lock file exists after close? true
🟢 DEBUG: Lock file size: xxx bytes
🔴 DEBUG: lockfile.remove() called from: [stack trace]
🔴 DEBUG: Removing lock file: /home/node/.claude/ide/xxxxx.lock
🔴 DEBUG: Lock file successfully removed
在另一个终端(同样在 devcontainer 内):
# 方法 1:持续监控
watch -n 0.5 'ls -la ~/.claude/ide/*.lock 2>&1'
# 方法 2:使用 inotifywait(如果可用)
inotifywait -m ~/.claude/ide/ -e create -e delete -e modify:ClaudeCodeStart
" 观察调试输出
" 检查文件是否存在
:!ls -la ~/.claude/ide/*.lock# 在 Neovim 启动后立即执行
ls -la ~/.claude/ide/*.lock
cat ~/.claude/ide/*.lock | jq ." 在 Neovim 中
:ClaudeCodeStart
:autocmd VimLeavePre * echom "VimLeavePre triggered!"
" 等待几秒,看看是否有意外触发- 🔵 显示正确的 lock_dir 路径
- 🟢 显示文件创建成功
- 没有 🔴 删除日志
- 文件持续存在
- 🔵 显示正确路径
- 🟢 显示创建成功
- 🔴 立即显示删除日志 + 堆栈跟踪
- → 这说明代码逻辑有问题
- 🔵 显示正确路径
- 🟢 显示创建成功
- 没有 🔴 删除日志
- 但文件消失了
- → 这说明是文件系统问题
- 🔵 显示路径不是
/home/node/.claude/ide - → 这说明 vim.fn.expand() 有问题
请把以下信息发给我:
1. 调试输出(完整的 🔵🟢🔴 日志)
2. 文件监控输出
3. 异常情况类型(A/B/C)
4. lock 文件内容(如果存在):cat ~/.claude/ide/*.lock
这样我就能精确定位问题了。