Claude Code는 최근 AI 개발 도구로 큰 주목을 받고 있습니다. 하지만 아쉽게도, Neovim 사용자들은 이에 대한 지원이 부족했습니다. 그럴 때 등장한 것이 바로 claudecode.nvim입니다. 이 플러그인은 Anthropic의 AI 코딩 어시스턴트를 Neovim에 통합하여, 개발자들에게 강력한 도구를 제공합니다. 이제부터 이 프로젝트의 주요 기능과 설치 방법, 활용법을 자세히 알아보겠습니다.
claudecode.nvim의 특별함
claudecode.nvim은 Neovim 사용자들이 Claude Code의 기능을 활용할 수 있도록 해주는 첫 번째 플러그인입니다. 이 플러그인은 몇 가지 주요 특징을 가지고 있습니다:
- 순수 Lua 구현, Zero Dependencies: 모든 기능이 Neovim 내장 기능과
vim.loop를 이용해 구현되어 있으며, 추가적인 종속성이 없습니다. - 100% 프로토콜 호환성: 공식 VS Code 및 JetBrains 확장과 동일한 WebSocket MCP 프로토콜을 사용하여, 동일한 사용자 경험을 제공합니다.
- 완벽한 문서화된 프로토콜: 자신의 통합 기능을 개발할 수 있도록 프로토콜 문서화가 잘 되어 있습니다([PROTOCOL.md](./PROTOCOL.md) 확인).
- AI 기반의 개발: 개발 과정에서 Claude를 사용하여 프로토콜을 역설계했습니다.
- Neovim 0.8.0 이상 버전 확인:
claudecode.nvim은 Neovim 0.8.0 이상에서만 작동합니다. - Claude Code CLI 설치: 여기서 Claude Code CLI를 설치합니다.
- 플러그인 설치: 아래 코드를 사용하여 Neovim 플러그인 관리 도구에 추가합니다.
- Neovim 사용자
- AI 코딩 어시스턴트에 관심 있는 개발자
- 개인 프로젝트 또는 팀 프로젝트에서 생산성을 높이고 싶은 개발자
이 플러그인은 Neovim 사용자들에게 Claude Code의 모든 기능을 제공합니다.
설치 방법
claudecode.nvim을 설치하기 위해서는 다음의 단계를 따르면 됩니다.
{
"coder/claudecode.nvim",
dependencies = { "folke/snacks.nvim" },
config = true,
keys = {
{ "<leader>a", nil, desc = "AI/Claude Code" },
{ "<leader>ac", "<cmd>ClaudeCode<cr>", desc = "Toggle Claude" },
{ "<leader>af", "<cmd>ClaudeCodeFocus<cr>", desc = "Focus Claude" },
{ "<leader>ar", "<cmd>ClaudeCode --resume<cr>", desc = "Resume Claude" },
{ "<leader>aC", "<cmd>ClaudeCode --continue<cr>", desc = "Continue Claude" },
{ "<leader>am", "<cmd>ClaudeCodeSelectModel<cr>", desc = "Select Claude model" },
{ "<leader>ab", "<cmd>ClaudeCodeAdd %<cr>", desc = "Add current buffer" },
{ "<leader>as", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" },
{
"<leader>as",
"<cmd>ClaudeCodeTreeAdd<cr>",
desc = "Add file",
ft = { "NvimTree", "neo-tree", "oil", "minifiles", "netrw" },
},
-- Diff management
{ "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", desc = "Accept diff" },
{ "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", desc = "Deny diff" },
},
}
위의 코드 블록을 플러그인 관리 도구에 추가하면, 플러그인이 자동으로 나머지 설정을 구성합니다.
로컬 설치 구성
Claude Code의 migrate-installer 명령어를 사용하여 로컬 설치로 이동한 경우, 플러그인을 로컬 경로로 구성해야 합니다.
which claude
# 설치 건강 체크
claude doctor
로컬 설치가 확인되면, 아래와 같이 플러그인을 구성합니다.
{
"coder/claudecode.nvim",
dependencies = { "folke/snacks.nvim" },
opts = {
terminal_cmd = "~/.claude/local/claude", -- 로컬 설치 경로 지정
},
config = true,
}
사용법
플러그인의 기본 사용법은 간단합니다. 먼저 Neovim을 열고, 설정한 키맵을 이용해 Claude Code와 상호작용할 수 있습니다. 예를 들어, 코드를 작성하다가 AI의 도움을 받고 싶다면 <leader>as를 눌러 선택한 코드 블록을 Claude에게 보낼 수 있습니다. 이와 같은 방식으로 AI와의 상호작용이 이루어집니다.
실무 활용 시나리오
개발자들이 claudecode.nvim을 통해 어떤 이점을 얻을 수 있을까요? 예를 들어, 새로운 기능을 구현해야 할 때, AI에게 아이디어를 요청하거나, 코드 리뷰를 요청하는 등의 작업을 쉽게 할 수 있습니다. 이는 생산성을 크게 향상시킬 수 있습니다. 또한, 팀 프로젝트에서 코드 스타일이나 구조에 대한 피드백을 AI에게 요청함으로써 더욱 일관된 코드를 유지할 수 있습니다.
다른 도구와의 비교
claudecode.nvim과 비슷한 도구로는 GitHub Copilot, TabNine 등이 있습니다. 그러나 이들 도구는 보통 구독료를 요구하거나 사용 환경이 제한적입니다. 반면 claudecode.nvim은 오픈소스로 제공되어, 누구나 자유롭게 사용할 수 있습니다. 또한, Neovim 사용자에게 맞춤화된 경험을 제공하는 점에서 큰 장점을 가지고 있습니다.
추천 대상
이제 여러분도 claudecode.nvim을 통해 Neovim에서 AI의 도움을 받으며 더욱 효율적으로 코딩할 수 있습니다. GitHub에서 프로젝트를 확인해보세요!