AstroNvim安装opencode插件

在 AstroNvim 中安装和配置 opencode AI 编程插件的完整指南

#type / howto #status / growing #resource / astro-nvim #resource / opencode #tech / dev

[!info] related notes astronvim-plugin-search opencode-nvim-by-nickjvandyke

AstroNvim 安装 opencode 插件

[!info] related notes

目标

在 AstroNvim 中集成 opencode.nvim 插件,实现在 Neovim 内直接使用 AI 辅助编程(代码补全、对话、重构等)。

前置条件

  • Neovim 0.9+(推荐 0.10+)
  • AstroNvim v4+ 已安装并可正常启动
  • opencode CLI 已安装(npm install -g opencode 或从 GitHub releases 下载)
  • 有效的 opencode API key 或自部署的后端地址

步骤

1. 确认 AstroNvim 插件目录

AstroNvim 的自定义插件配置位于:

~/.config/nvim/lua/plugins/

2. 创建 opencode 插件配置文件

创建 ~/.config/nvim/lua/plugins/opencode.lua

return {
  {
    "nickjvandyke/opencode.nvim",
    dependencies = {
      "nvim-lua/plenary.nvim",
    },
    config = function()
      require("opencode").setup({
        -- opencode CLI 路径(如果不在 PATH 中则需要指定)
        -- command = "/path/to/opencode",

        -- 模型配置
        -- model = "claude-sonnet-4-20250514",

        -- 窗口布局
        layout = {
          direction = "vertical",  -- "vertical" 或 "horizontal"
          size = 0.4,              -- 占屏幕比例
        },
      })
    end,
  },
}

3. 配置 API Key

在 shell 配置文件(如 ~/.bashrc~/.zshrc)中添加:

export OPENAI_API_KEY="your-api-key-here"
# 或 opencode 使用的环境变量
export OPENCODE_API_KEY="your-api-key-here"

或者在 Neovim 中通过 :checkhealth opencode 确认环境变量是否已设置。

4. 快捷键绑定

opencode.lua 或 AstroNvim 的 mappings 配置中添加快捷键:

-- 在 AstroNvim 的 mappings 配置中
vim.keymap.set("n", "<leader>oa", function()
  require("opencode").toggle()
end, { desc = "Toggle opencode panel" })

vim.keymap.set("v", "<leader>os", function()
  require("opencode").send_selection()
end, { desc = "Send selection to opencode" })

vim.keymap.set("n", "<leader>oc", function()
  require("opencode").chat()
end, { desc = "opencode chat" })

常用快捷键说明:

快捷键功能
<leader>oa打开/关闭 opencode 面板
<leader>os发送选中代码到 opencode
<leader>oc打开对话模式

5. 重启 Neovim

# 退出并重新打开 Neovim
nvim

AstroNvim 的 lazy.nvim 会自动安装新添加的插件。

验证

  • 打开 Neovim 后运行 :Lazy,确认 opencode.nvim 已安装且无报错
  • 运行 :checkhealth opencode 确认依赖和环境变量正确
  • <leader>oa 能打开 opencode 面板
  • 在面板中输入问题能收到 AI 回复
  • 选中代码后按 <leader>os 能将代码发送到 opencode

常见问题

Q: 插件安装后打开 Neovim 报错? A: 检查 Neovim 版本是否 >= 0.9(:version)。旧版本不支持某些 Lua API。升级 Neovim 后重试。

Q: 提示 “opencode command not found”? A: 确认 opencode CLI 已安装且在 PATH 中。运行 which opencode 检查。如果手动安装,需要在配置中指定 command 路径。

Q: AI 回复报错或超时? A: 检查 API key 是否有效、网络是否通畅。运行 opencode --health 测试 CLI 本身是否正常工作。

Q: 快捷键不生效? A: 可能与其他插件冲突。运行 :map <leader>o 查看是否有冲突的映射。检查 opencode.lua 配置是否正确加载(:Lazy → 找到 opencode.nvim → 查看状态)。

创建于 2026/2/20 更新于 2026/5/27