nvim-contextnvim-context is a bridge between running Neovim instances and agentic coding
tools. It extracts context from the editor via a Unix socket connection and
outputs JSON with the cursor position, current file, visual selection and
diagnostics.
It allows agentic coding tools running outside Neovim to answer questions such as:
While the Neovim community provides several plugins for integrating agentic coding assistants into the editor (see the AI section in the Awesome Neovim repository), it seems that few tools offer a way to let any agentic coding tool running outside Neovim retrieve the state of the editor in an agnostic manner.
The goal with nvim-context is to separate concerns, so Amp Code, Claude Code,
Codex, etc., can query the current state of a Neovim session by calling
this tool. See the Integration with agentic
tools section below for suggestions on how to
set this up.
gem install nvim-context
When starting Neovim ensure that you open it using the --listen flag and pass
a path to the socket as follows:
nvim --listen $(pwd)/nvim-context.sock
Alternatively, you can set the NVIM_CONTEXT_SOCKET environment variable to
specify the socket path:
export NVIM_CONTEXT_SOCKET=/tmp/nvim-context.sock
nvim --listen $NVIM_CONTEXT_SOCKET
If no environment variable is set, the tool defaults to nvim-context.sock in
the current directory.
Once Neovim is running, you can retrieve the current context by running
nvim-context.
This will output JSON containing the current file, cursor position, visual selection (if any), and diagnostics in this format:
{
"cursor": {
"line": 43,
"col": 3
},
"file": "/path/to/current/file.rb",
"selection": null,
"diagnostics": []
}
amp skill add majjoha/nvim-context/nvim-context
# Add the repository as a marketplace
/plugin marketplace add majjoha/nvim-context
# Install the plugin
/plugin install nvim-context@nvim-context
The plugin provides the nvim-context skill which gives Claude Code access to
your live Neovim editor state.
$skill-installer install https://github.com/majjoha/nvim-context/tree/main/.codex/skills/nvim-context
TBD.
~/.config/opencode/command/nvim-context.md--- description: Show current Neovim context ---!
nvim-context
Since building software with AI can still be divisive, it might be worth
pointing out here that nvim-context itself has been built using OpenCode and
Claude Code, but with human guidance and continuous review of its work.
See LICENSE.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub majjoha/nvim-context --plugin nvim-contextNeovim integration for Claude Code - prevents file modifications when files have unsaved changes in Neovim. `cargo install --git https://github.com/NishantJoshi00/sidekick` to install the CLI utility.
Nemp Memory — Cognitive memory layer for AI agents across every platform. Local-first, zero cloud, works with Claude, Codex, Cursor, and Windsurf.
Nix language server
Claude Powerline statusline setup wizard
Native Windows toast notifications for Claude Code with window activation
Reliable automation, in-depth debugging, and performance analysis in Chrome using Chrome DevTools and Puppeteer