Skip to content

Releases: coder/claudecode.nvim

v0.3.0

16 Sep 12:27
2e6ea6f
Compare
Choose a tag to compare

Features

  • External terminal provider to run Claude in a separate terminal (#102)

  • Terminal provider APIs: implement ensure_visible for reliability (#103)

  • Working directory control for Claude terminal (#117)

  • Support function values for external_terminal_cmd for dynamic commands (#119)

  • Add "none" terminal provider option for external CLI management (#130)

  • Shift+Enter keybinding for newline in terminal input (#116)

  • focus_after_send option to control focus after sending to Claude (#118)

  • Snacks: snacks_win_opts to override Snacks.terminal.open() options (#65)

  • Terminal/external quality: CWD support, stricter placeholder parsing, and jobstart CWD (commit e21a837)

  • Diff UX redesign with horizontal layout and new tab options (#111)

  • Prevent diff on dirty buffers (#104)

  • keep_terminal_focus option for diff views (#95)

  • Control behavior when rejecting “new file” diffs (#114)

  • Add Claude Haiku model + updated type annotations (#110)

  • CLAUDE_CONFIG_DIR environment variable support (#58)

  • PartialClaudeCodeConfig type for safer partial configs (#115)

  • Generalize format hook; add floating window docs (commit 7e894e9)

  • Add env configuration option; fix vim.notify scheduling (#21)

  • WebSocket authentication (UUID tokens) for the server (#56)

  • MCP tools compliance aligned with VS Code specs (#57)

  • Mini.files integration and follow-up touch-ups (#89, #98)

Bug Fixes

  • Wrap ERROR/WARN logging in vim.schedule to avoid fast-event context errors (#54)
  • Native terminal: do not wipe Claude buffer on window close (#60)
  • Native terminal: respect auto_close behavior (#63)
  • Snacks integration: fix invalid window with :ClaudeCodeFocus (#64)
  • Debounce update on selection for stability (#92)

Documentation

  • Update PROTOCOL.md with complete VS Code tool specs; streamline README (#55)
  • Convert configuration examples to collapsible sections; add community extensions (#93)
  • Local and native binary installation guide (#94)
  • Auto-save plugin note and fix (#106)
  • Add AGENTS.md and improve config validation notes (commit 3e2601f)

Refactors & Development

  • Centralize type definitions in dedicated types.lua module (#108)
  • Devcontainer with Nix support; follow-up simplification (#112, #113)
  • Add Neovim test fixture configs and helper scripts (commit 35bb60f)
  • Update Nix dependencies and documentation formatting (commit a01b9dc)
  • Debounce/Claude hooks refactor (commit e08921f)

New Contributors

Full Changelog

v0.2.0

18 Jun 11:01
db91a0a
Compare
Choose a tag to compare

Summary

This release brings significant enhancements to claudecode.nvim with comprehensive diagnostics integration, expanded file explorer support, enhanced terminal management, and numerous bug fixes.

🚀 Features

  • Diagnostics Integration: Added comprehensive diagnostics tool that provides Claude with access to LSP diagnostics information (#34) by @krmcbride
  • File Explorer Integration: Added support for oil.nvim, nvim-tree, and neotree with @-mention file selection capabilities (#27) by @Peeeaje, (#22) by @ThomasK33
  • Enhanced Terminal Management:
    • Added ClaudeCodeFocus command for smart toggle behavior (#40) by @ThomasK33
    • Implemented auto terminal provider detection (#36) by @ThomasK33
    • Added configurable auto-close and enhanced terminal architecture (#31) by @ThomasK33
  • Customizable Diff Keymaps: Made diff keymaps adjustable via LazyVim spec (#47) by @ThomasK33

🐛 Bug Fixes

  • Terminal Focus: Fixed terminal focus error when buffer is hidden (#43) by @ThomasK33
  • Diff Acceptance: Improved unified diff acceptance behavior using signal-based approach instead of direct file writes (#41) by @ThomasK33
  • Syntax Highlighting: Fixed missing syntax highlighting in proposed diff view (#32) by @app/blink-so
  • Visual Selection: Fixed visual selection range handling for :'\<,'\>ClaudeCodeSend (#26) by @app/blink-so
  • Native Terminal: Implemented bufhidden=hide for native terminal toggle (#39) by @ThomasK33

🛠️ Development Improvements

  • Testing Infrastructure: Moved test runner from shell script to Makefile for better development experience (#37) by @ThomasK33
  • Release Process: Added comprehensive release documentation and version management guidelines

📦 Installation

{
  "coder/claudecode.nvim",
  config = true,
  keys = {
    { "<leader>ac", "<cmd>ClaudeCode<cr>", desc = "Toggle Claude" },
    { "<leader>af", "<cmd>ClaudeCodeFocus<cr>", desc = "Focus Claude" },
    { "<leader>as", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" },
    { "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", desc = "Accept diff" },
    { "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", desc = "Deny diff" },
  },
}

📋 Requirements


Full Changelog: v0.1.0...v0.2.0

What's Changed

  • feat: add nvim-tree and neotree integration by @ThomasK33 in #22
  • feat: configurable auto-close and enhanced terminal architecture by @ThomasK33 in #31
  • Fix visual selection range handling for :'<,'>ClaudeCodeSend by @blink-so in #26
  • Fix missing syntax highlighting in proposed diff view by @blink-so in #32
  • feat: add auto terminal provider detection by @ThomasK33 in #36
  • refactor: move test runner from shell script to Makefile by @ThomasK33 in #37
  • feat: implement bufhidden=hide for native terminal toggle by @ThomasK33 in #39
  • feat: add ClaudeCodeFocus command for smart toggle behavior by @ThomasK33 in #40
  • fix: use signal-based diff acceptance instead of direct file writes by @ThomasK33 in #41
  • feat: diagnostics tool implementation by @krmcbride in #34
  • feat: add oil.nvim support for file selection by @Peeeaje in #27
  • fix: address terminal focus error when buffer is hidden by @ThomasK33 in #43
  • feat: make diff keymaps adjustable via LazyVim spec by @ThomasK33 in #47
  • Release: prepare v0.2.0 by @ThomasK33 in #48

New Contributors

  • @blink-so made their first contribution in #26
  • @krmcbride made their first contribution in #34
  • @Peeeaje made their first contribution in #27

Full Changelog: v0.1.0...v0.2.0

v0.1.0

02 Jun 18:36
c1cdcd5
Compare
Choose a tag to compare

What's Changed

  • implemented a neovim MCP server over websocket to integrate with Claude Code

Full Changelog: https://github.com/coder/claudecode.nvim/commits/v0.1.0