summaryrefslogtreecommitdiff
path: root/config/nvim/lua/plugins/claudecode.lua
blob: 85334803f6fa26503a662d35ee874b6a5bd3b7c4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
return {
	"coder/claudecode.nvim",
	dependencies = { "folke/snacks.nvim" },
	opts = {},
	keys = {
		{ "<leader>a", nil, desc = "AI/Claude Code" }, -- top‑level prefix
		{ "<leader>ac", "<cmd>ClaudeCode<cr>", desc = "Toggle Claude" }, -- open/close Claude:contentReference[oaicite:6]{index=6}
		{ "<leader>af", "<cmd>ClaudeCodeFocus<cr>", desc = "Focus Claude" }, -- focus/toggle terminal:contentReference[oaicite:7]{index=7}
		{ "<leader>ar", "<cmd>ClaudeCode --resume<cr>", desc = "Resume Claude" }, -- resume previous session:contentReference[oaicite:8]{index=8}
		{ "<leader>aC", "<cmd>ClaudeCode --continue<cr>", desc = "Continue Claude" }, -- continue conversation:contentReference[oaicite:9]{index=9}
		{ "<leader>am", "<cmd>ClaudeCodeSelectModel<cr>", desc = "Select model" }, -- choose Claude model:contentReference[oaicite:10]{index=10}
		{ "<leader>ab", "<cmd>ClaudeCodeAdd %<cr>", desc = "Add current buffer" }, -- add current file:contentReference[oaicite:11]{index=11}
		-- Visual-mode send: use the mapping only in visual mode (mode = "v")
		{ "<leader>as", "<cmd>ClaudeCodeSend<cr>", 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}
		{
			"<leader>as",
			"<cmd>ClaudeCodeTreeAdd<cr>",
			desc = "Add file",
			ft = { "NvimTree", "neo-tree", "oil", "minifiles", "netrw" },
		},
		-- Diff management: accept or deny changes:contentReference[oaicite:14]{index=14}
		{ "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", desc = "Accept diff" },
		{ "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", desc = "Deny diff" },
	},
}