return { "coder/claudecode.nvim", dependencies = { "folke/snacks.nvim" }, opts = {}, keys = { { "a", nil, desc = "AI/Claude Code" }, -- top‑level prefix { "ac", "ClaudeCode", desc = "Toggle Claude" }, -- open/close Claude:contentReference[oaicite:6]{index=6} { "af", "ClaudeCodeFocus", desc = "Focus Claude" }, -- focus/toggle terminal:contentReference[oaicite:7]{index=7} { "ar", "ClaudeCode --resume", desc = "Resume Claude" }, -- resume previous session:contentReference[oaicite:8]{index=8} { "aC", "ClaudeCode --continue", desc = "Continue Claude" }, -- continue conversation:contentReference[oaicite:9]{index=9} { "am", "ClaudeCodeSelectModel", desc = "Select model" }, -- choose Claude model:contentReference[oaicite:10]{index=10} { "ab", "ClaudeCodeAdd %", desc = "Add current buffer" }, -- add current file:contentReference[oaicite:11]{index=11} -- Visual-mode send: use the mapping only in visual mode (mode = "v") { "as", "ClaudeCodeSend", mode = "v", desc = "Send selection" }, -- :contentReference[oaicite:12]{index=12} -- File-tree send: applies only in file manager buffers such as nvim‑tree or neo-tree:contentReference[oaicite:13]{index=13} { "as", "ClaudeCodeTreeAdd", desc = "Add file", ft = { "NvimTree", "neo-tree", "oil", "minifiles", "netrw" }, }, -- Diff management: accept or deny changes:contentReference[oaicite:14]{index=14} { "aa", "ClaudeCodeDiffAccept", desc = "Accept diff" }, { "ad", "ClaudeCodeDiffDeny", desc = "Deny diff" }, }, }