Vibing-Nvim 是 AI Skill Hub 本期精选MCP工具之一。综合评分 7.5 分,整体质量较高。我们推荐使用将其纳入你的 AI 工具库,帮助提升工作效率。
Vibing-Nvim 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
Vibing-Nvim 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
# 方式一:通过 Claude Code CLI 一键安装
claude skill install https://github.com/shabaraba/vibing.nvim
# 方式二:手动配置 claude_desktop_config.json
{
"mcpServers": {
"vibing-nvim": {
"command": "npx",
"args": ["-y", "vibing.nvim"]
}
}
}
# 配置文件位置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%/Claude/claude_desktop_config.json
# 安装后在 Claude 对话中直接使用 # 示例: 用户: 请帮我用 Vibing-Nvim 执行以下任务... Claude: [自动调用 Vibing-Nvim MCP 工具处理请求] # 查看可用工具列表 # 在 Claude 中输入:"列出所有可用的 MCP 工具"
// claude_desktop_config.json 配置示例
{
"mcpServers": {
"vibing-nvim": {
"command": "npx",
"args": ["-y", "vibing.nvim"],
"env": {
// "API_KEY": "your-api-key-here"
}
}
}
}
// 保存后重启 Claude Desktop 生效
<img src=".github/assets/logo.png" alt="vibing.nvim logo" width="200"/>
Unlike chat plugins that send static context to an LLM, vibing.nvim gives the AI direct access to your Neovim instance through CLI backends and MCP integration.
- 🤖 Neovim as an agent tool — via MCP, the AI reads and writes buffers, executes commands, and queries LSP (diagnostics, definitions, references, symbols) in your running editor - 🔀 Multi-backend — Claude CLI (claude -p --output-format stream-json), Codex CLI (codex exec --json), GitHub Copilot CLI (copilot -p --output-format json), or Grok Build CLI (grok --single --output-format streaming-json); switch globally via adapter or per-chat via the agent frontmatter field - 💾 File-based session persistence — chats are plain Markdown files with YAML frontmatter saved under .vibing/chat/: portable, resumable (full CLI session state), auditable, and version-controllable - 🔀 Concurrent sessions — run multiple independent chats simultaneously; start a new chat while another is still processing - 🛡️ Granular permissions — allow/deny/ask lists per tool, path-based rules for sensitive files, Bash command patterns, and an interactive Permission Builder UI - 📊 Diff viewer — gd on a changed file shows a before/after diff. Each turn is snapshotted as a git tree object, so a sed -i, a mv or a formatter run through Bash is tracked exactly like an Edit — with no external tool and no setup, and without touching your index - 🎯 Smart context — add files manually, from oil.nvim, or from a visual selection - ⏳ Usage-limit scheduling — while a usage limit is in force, <CR> parks your message instead of burning a doomed request, and sends it verbatim once the limit resets; :VibingSchedule 30m schedules one by hand, with or without a limit - 🌍 Multi-language support — configure the AI response language per chat
- Neovim 0.10+ (uses vim.system()) - Node.js 18+ (for the MCP server) - At least one AI CLI backend: - Claude CLI (claude) — npm install -g @anthropic-ai/claude-code - Codex CLI (codex) — npm install -g @openai/codex (0.140+; see note below) - GitHub Copilot CLI (copilot) — npm install -g @github/copilot (needs Node.js 22+, higher than the 18+ the MCP server itself requires) - Grok Build CLI (grok) — see xAI's install docs
Codex version note. vibing.nvim runs the Codex backend's lightweight calls (chat title generation,/summarize, daily summary) with--ignore-user-config --strict-config, which keeps those calls out of your MCP servers and makes them fail loudly rather than silently unfenced if Codex renames a config key. Both flags were verified present in 0.140.0 and 0.147.0, oncodex execandcodex exec resumealike. Older releases were not tested; if they lack the flags, ordinary chat is unaffected but lightweight calls fail with an unknown-argument error. Upgrade Codex if you see that.--ignore-user-configalso dropsmodel_provider, so if yourconfig.tomlpoints Codex at a custom or local provider, those lightweight calls go to the default OpenAI endpoint instead. Ordinary chat still uses your provider. vibing.nvim warns once per Neovim session when this applies to you, asking Codex itself (codex doctor --json) which provider is configured; it says nothing if Codex cannot answer. Setagent.codex_provider_notice.enabled = falseto turn the warning and its probe off.
Node.js is required for the MCP server, which provides AI with direct access to your running Neovim instance (buffer reads/writes, LSP queries, command execution). The AI CLI binaries themselves (claude, codex, copilot) are separate installs.
:VibingChat " Open a new chat
Type your message under the ## User header and press <CR> in normal mode to send. The AI responds in the same buffer; <C-c> cancels a running request. Chats remain ordinary Markdown files that you can save, search, and edit normally. In Neovim, the small vibing Tree-sitter parser isolates chat headers and tool output, then injects the standard Markdown parser into each message body. Existing Markdown highlighting, including fenced code languages, is preserved.
Also available offline as :help vibing-commands, which carries per-command help tags.
require("vibing").setup() works out of the box. Commonly tweaked options:
require("vibing").setup({
adapter = "claude", -- "claude" | "codex" | "copilot"
chat = {
window = {
position = "current", -- "current" | "right" | "left" | "top" | "bottom" | "back" | "float"
width = 0.4, -- screen-width ratio (0-1)
},
save_location_type = "project", -- "project" | "user" | "custom"
},
agent = {
default_model = "sonnet", -- backend model id, e.g. "sonnet" or "gpt-5.6-terra"
scheduled_requests = {
enabled = true, -- during a usage limit, <CR> schedules instead of sending
},
},
permissions = {
mode = "acceptEdits", -- "default" | "acceptEdits" | "plan" | "auto" | "dontAsk" | "bypassPermissions"
allow = { "Read", "Edit", "Write", "Glob", "Grep", "Skill", "StructuredOutput" },
deny = { "Bash" },
codex_profile_file = ".vibing/codex-permissions.toml", -- false disables loading the generated profile
codex_allow_tracked_profile = false, -- true explicitly trusts a Git-tracked profile
},
language = nil, -- e.g. "ja", or { default = "ja", chat = "ja" }
})
The default permissions shown above are used as a template when creating new chat files; each chat file's frontmatter carries its own permissions, which are what's enforced at runtime.
For the Codex backend, vibing.nvim creates .vibing/codex-permissions.toml when it initializes a project. Its default profile permits workspace and Git metadata writes without using full bypass mode; edit the file to narrow or extend the OS sandbox. Existing files are never overwritten. Git-tracked profiles are rejected unless codex_allow_tracked_profile = true explicitly trusts the reviewed file; locally generated, untracked profiles continue to load automatically. See Project-local Codex permission profiles.
Full reference: every option (window details, UI/gradient/tool markers, diff backends, granular permission rules, MCP, Node.js executable, daily summary, ...) is documented in handbook/configuration.md.
vibing.nvim ships a Claude Code plugin that bundles the vibing-nvim MCP server together with Neovim-aware skills and a read-only navigation subagent.
Nothing to install. The plugin is not registered into Claude Code's global state at all — vibing.nvim hands the CLI its own claude-plugin/ directory per session with --plugin-dir, so whichever checkout is running is the one that serves you. build.sh builds the MCP server and the small Tree-sitter parser used for chat boundaries (and, once, cleans up an install from an older version of vibing.nvim). If no C compiler is available, the parser build is skipped and chat buffers fall back to the previous whole-buffer Markdown parser.
That gives you mcp__plugin_vibing-nvim_vibing-nvim__* tools (buffer/window/cursor access, Ex commands, and LSP queries against the running Neovim instance), the bundled skills (nvim-context, nvim-lsp-navigation, vibing-chat-recall, vibing-chat-search, and the vibing-worktree-{list,create,attach,run,finish} worktree workflow), and the nvim-navigator subagent (read-only code navigation via @vibing-nvim:nvim-navigator).
You still need Neovim running with mcp = { enabled = true } (the default) for the MCP tools to have anything to connect to. The one trade-off is that a plain claude session started outside Neovim no longer sees these tools; that was never a supported way to use them.
The Codex backend gets the same plugins without a --plugin-dir of its own: the MCP server is registered per run as -c mcp_servers.vibing-nvim.* (tools named mcp__vibing-nvim__*) and the skills are listed for the model in developer_instructions. Subagents do not carry over.
Your own project plugins. Anything you drop into .vibing/plugins/<name>/ (with a .claude-plugin/plugin.json) is loaded the same way, for chats in that project only. Run :VibingReloadCommands after adding one, or :VibingCreatePlugin <name> to write a working skeleton in the first place. Note that a plugin may declare mcpServers, so a plugin in a repository you cloned can start a process on your machine — set agent.plugins.project_dir = false for repositories you do not trust. See handbook/configuration.md for agent.plugins.
Upgrading from an older vibing.nvim: build.sh removes the user-scope install and its marketplace entry for you. To do it by hand:
/plugin uninstall vibing-nvim@vibing
/plugin marketplace remove vibing
Yes. vibing.nvim doesn't conflict with completion plugins (Copilot, Codeium) or other chat plugins. Use vibing.nvim for deep Claude interactions and other tools for quick completions or different providers.
vibing.nvim doesn't conflict with completion plugins (Copilot, Codeium) or other chat plugins — they compose well.
vibing.nvim provides similar capabilities to Claude Code CLI but integrated into Neovim:
claude CLI underneathThink of it as "Claude Code (or Codex, or Copilot) for Neovim users."
vibing.nvim 是一款专为 Neovim 设计的高级 AI 交互插件。它通过创新的架构,将 Neovim 进程与 Node.js 编写的 MCP Server 连接起来,使 Claude 等 AI 能够通过 RPC 协议直接感知当前的 Buffer 状态、LSP 查询结果及命令执行情况。插件通过特殊的 .vibing 文件管理会话元数据与权限设置,为开发者提供了一个深度集成、具备自主能力的 AI 编程环境。
vibing.nvim 提供沉浸式的交互体验:内置与 Claude AI 无缝衔接的 Chat 窗口,支持在当前 Buffer 中直接进行对话;具备强大的 Inline Actions 功能,可快速实现代码修复、解释、重构及测试生成;支持自然语言指令与 Slash Commands,方便用户进行上下文管理、权限控制及设置调整;通过智能上下文感知,让 AI 能够精准理解开发意图。
在使用 vibing.nvim 之前,请确保您的开发环境满足以下要求:Neovim 版本需为 0.9+;系统需安装 Node.js 18+ 以运行 MCP Server;此外,您必须安装至少一个 AI CLI 后端,例如通过 npm 安装的 Claude CLI (`claude`) 或 Codex CLI (`codex`)。请注意,Node.js 是实现 AI 直接访问 Neovim 实例(如读写 Buffer、执行 LSP 查询)的核心组件。
安装 vibing.nvim 非常简单。首先,请确保已完成上述环境依赖的安装,随后在您的 Neovim 配置中通过 `require("vibing").setup()` 进行基础初始化。插件默认采用安全的权限策略,例如在 `acceptEdits` 模式下会自动接受文件修改,而对于其他敏感操作则会请求用户授权。您可以根据需要进一步自定义权限范围。
vibing.nvim 旨在与现有的 AI 工具形成互补。您可以将其作为深度交互的��心,处理复杂的逻辑规划与代码重构;同时配合 GitHub Copilot 或 Codeium 进行快速的代码补全,或使用基于 Ollama 的插件处理本地/离线模型任务。通过灵活的配置,您可以实现从简单的对话到复杂的自主代码探索的完整工作流。
插件提供了高度灵活的配置选项。您可以通过 `setup` 函数自定义 Chat 窗口的样式(如位置、宽度、边框)、会话历史的保存路径(支持全局或项目级 `.vibing/chat/` 存储)以及 Agent 的默认模式与模型。此外,您还可以精细化配置权限控制列表(如 Read, Edit, Write, Skill 等),甚至通过 `language` 参数实现对话与 Inline 动作使用不同语言的差异化配置。
vibing.nvim 采用了独特的 CLI Adapter 架构,区别于传统的仅发送静态上下文的 AI 插件。通过集成 MCP (Model Context Protocol),它赋予了 AI 直接访问 Neovim 实例的能力。这意味着 AI 不再只是一个聊天框,而是一个能够自主探索代码库、导航文件、搜索符号并理解项目结构的智能 Agent,能够通过 CLI 后端实现真正的自动化操作。
在实际工作流中,vibing.nvim 充当了开发者与 AI 之间的桥梁。通过 MCP Server 提供的能力,AI 可以自主执行 Buffer 操作、LSP 查询及命令执行。用户可以通过自然语言下达指令,AI 则在受控的权限范围内,利用 Neovim 的上下文信息进行思考、规��并最终执行代码变更,实现从需求到实现的高效闭环。
针对常见问题,vibing.nvim 明确了其与其他 AI 插件的兼容性。它不会与 Copilot、Codeium 等补全插件或其他的 Chat ���件产生冲突。您可以将 vibing.nvim 定位为深度集成 Claude 的“智能助手”,用于处理复杂的编程任务,而将其他工具用于轻量级的补全或特定供应商的工作流。
高质量AI辅助编码工具
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
经综合评估,Vibing-Nvim 在MCP工具赛道中表现稳健,质量良好。如果你已有明确的使用需求,可以直接上手体验;如果还在评估阶段,建议对比同类工具后再做决策。
| 原始名称 | vibing-nvim |
| 原始描述 | 开源MCP工具:Neovim plugin for AI-assisted coding: Claude CLI & Codex CLI backends with MCP-p。⭐13 · Lua |
| Topics | ai-assistantluaneovim |
| GitHub | https://github.com/shabaraba/vibing.nvim |
| License | MIT |
| 语言 | Lua |
收录时间:2026-06-26 · 更新时间:2026-07-04 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端