Repolode
nickjvandyke

nickjvandyke/opencode.nvim

Neovim 插件,将编辑器与 OpenCode 连接,无需离开 Vim 工作流即可发送代码上下文和提示词。

Star
3,907
Fork
161
未关闭 Issue
11
最近提交
8天前

这是什么?

opencode.nvim 是一个 Neovim 插件,用于与 AI 编程代理 OpenCode 协作。它可以连接到已运行的 OpenCode 服务,也可以在终端中自动启动一个实例。发送提示时,插件会自动附带光标位置、选区、当前缓冲区、诊断信息、quickfix 列表或可见文本等编辑器上下文。

插件基于 Neovim 的标准界面实现:带补全和高亮的输入框、用于选择内置或自定义提示词的选择器、支持点号重复的操作符,以及运行 OpenCode 命令的入口。OpenCode 修改的文件会在已打开的缓冲区中自动重新加载。遇到权限请求时,修改内容以左右分栏 diff 展示,可整体或逐个 hunk 接受或拒绝。

OpenCode 服务端事件会以 Neovim autocmd 的形式转发,便于在自己的配置中根据会话状态等事件做出响应。文档提供了 lazy.nvim、vim.pack 和 nixvim 的安装示例,并可选集成 snacks.nvim、blink.cmp 和 lualine。

核心功能

  • 01可连接任意运行中的 OpenCode 服务,或启动内置实例
  • 02将光标、选区、缓冲区、诊断和 quickfix 等上下文注入提示词
  • 03提供带补全和高亮的输入框,以及内置提示词选择器
  • 04OpenCode 修改文件后自动重新加载缓冲区
  • 05以 diff 形式展示编辑请求,可逐项接受或拒绝
  • 06将 OpenCode 服务端事件转发为 Neovim autocmd

适用场景

  • 在 Neovim 中让 OpenCode 解释、修复或审查光标所在的函数
  • 无需离开编辑器,将可视选区或动作范围发送给 OpenCode
  • 在应用 AI 修改前,通过 Neovim diff 逐项审查
  • 基于 OpenCode 事件,在自己的 Neovim 配置中构建自定义工作流

快速上手

  1. 1

    使用 vim.pack(Neovim 内置插件管理器)添加插件

  2. 2

    在 Neovim 配置中设置快捷键和选项,然后重启 Neovim

  3. 3

    安装 OpenCode,以便插件找到或启动其服务

  4. 4

    在 Neovim 中检查配置是否正常

    :checkhealth opencode

使用前须知

  • 需要先安装 OpenCode,因为插件依赖其服务进行连接。
  • 插件处于早期阶段,默认分支面向 OpenCode v2;如使用 OpenCode v1 需固定版本。

收录于专题

标签

常见问题

opencode.nvim 是什么?
Neovim 插件,将编辑器与 OpenCode 连接,无需离开 Vim 工作流即可发送代码上下文和提示词。 opencode.nvim 是一个 Neovim 插件,用于与 AI 编程代理 OpenCode 协作。它可以连接到已运行的 OpenCode 服务,也可以在终端中自动启动一个实例。发送提示时,插件会自动附带光标位置、选区、当前缓冲区、诊断信息、quickfix 列表或可见文本等编辑器上下文。
opencode.nvim 可以免费使用吗?用的什么许可证?
opencode.nvim 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
opencode.nvim 还在维护吗?
活跃维护中。opencode.nvim 最近一次提交是在 2026年10月30日。
opencode.nvim 适合用来做什么?
在 Neovim 中让 OpenCode 解释、修复或审查光标所在的函数 无需离开编辑器,将可视选区或动作范围发送给 OpenCode 在应用 AI 修改前,通过 Neovim diff 逐项审查 基于 OpenCode 事件,在自己的 Neovim 配置中构建自定义工作流
opencode.nvim 怎么安装和运行?
使用 vim.pack(Neovim 内置插件管理器)添加插件 在 Neovim 配置中设置快捷键和选项,然后重启 Neovim 安装 OpenCode,以便插件找到或启动其服务 在 Neovim 中检查配置是否正常: :checkhealth opencode
在哪里获取 opencode.nvim?
源代码和安装说明在 GitHub 上:https://github.com/nickjvandyke/opencode.nvim

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目