-
Notifications
You must be signed in to change notification settings - Fork 77
Description
Did you check the docs?
- I have read all the sidekick.nvim docs
Is your feature request related to a problem? Please describe.
When using sidekick.nvim to launch AI coding CLI tools (Claude Code,
Gemini CLI, Codex, etc.), they don't detect Neovim as an IDE. The
/ide command in Claude Code shows no connected IDE, even when running
inside a Neovim terminal buffer.
This means features like automatic file context sharing, selection
tracking, and native diff viewing don't work - users only get basic
terminal interaction.
Modern AI CLI tools use protocols (MCP/ACP) to communicate with IDEs:
- MCP (Model Context Protocol) - Used by Claude Code, Gemini CLI
- ACP (Agent Client Protocol) - Supported by Claude Code, Codex CLI,
Gemini, goose
Both work by having the editor run a local WebSocket/HTTP server and
writing a discovery file that CLI tools find on startup.
Describe the solution you'd like
Native IDE integration in sidekick.nvim via MCP and/or ACP protocol
support.
When enabled, sidekick would:
- Start a WebSocket/HTTP server on a random port using vim.loop
- Write a lock file (e.g., ~/.claude/ide/[port].lock) with connection
metadata - AI CLI tools automatically discover and connect to Neovim
- Expose editor context (open files, selections, diagnostics) via
JSON-RPC 2.0
Configuration example:
opts = {
cli = {
ide_integration = {
enabled = true,
protocol = "mcp", -- or "acp" or "both"
},
},
}
This would make sidekick a complete solution for AI coding assistants -
UI, keybindings, AND IDE integration in one plugin.
Describe alternatives you've considered
- Using coder/claudecode.nvim alongside sidekick
Current workaround - install claudecode.nvim with provider = "none"
(WebSocket server only, no UI), and use sidekick for the interface:
{
"coder/claudecode.nvim",
opts = {
terminal = { provider = "none" },
auto_start = true,
},
},
{ "folke/sidekick.nvim", ... }
This works but requires two plugins for what should be integrated
functionality.
- Using only coder/claudecode.nvim
Loses sidekick's superior UI, keybindings, and multi-tool support.
- Manual /ide connection
Running claude --ide tries to connect but picks VS Code over Neovim if
both are available, since Neovim isn't officially detected without the
WebSocket server.
References:
- https://github.com/coder/claudecode.nvim - Working pure-Lua MCP
implementation - https://block.github.io/goose/blog/2025/10/24/intro-to-agent-client-protocol-acp/
- https://geminicli.com/docs/ide-integration/ide-companion-spec/
Additional context
No response