copilot.lua

让 Neovim 秒变 AI 补全编辑器,Tab 即用

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 编程开发 🍴 复刻 164 🐛 待处理 19 👀 关注 10
GitHub ↗
GitHub 星标 ★ 4093
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费,需自备 GitHub Copilot 订阅

项目预览

copilot.lua 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类编程开发
开发团队zbirenbaum
定价模式🏷️完全免费
价格说明开源免费,需自备 GitHub Copilot 订阅
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Lua
技术栈/模型copilot,github-copilot,lsp-server,lua,neovim,nvim-cmp
GitHub 星标★ 4093
上线时间2022-04-02 00:00:00
代码更新2026-11-03
仓库体积899 KB
本站数据更新2026-11-04
维护状态活跃
收录时间2026-09-15
浏览次数1

项目介绍

copilot.lua 是 Neovim 中 GitHub Copilot 的完整增强替代品,用 Lua 编写,目标是让 Neovim 用户获得比 copilot.vim 更顺滑的 AI 补全体验。它直接与 GitHub Copilot 服务通信,在编辑器中以虚拟文本形式实时展示建议,按 Tab 即可采纳,并支持逐词接受、部分接受等精细操作。项目内置与 nvim-cmp 的集成方案,可把 Copilot 建议接入补全菜单,也提供 API 供其他插件调用,方便自定义触发条件、快捷键与显示方式。相比官方 copilot.vim,它的配置更灵活、可编程性更强,并支持通过 LSP 方式与 Copilot 服务交互。适合已经深度使用 Neovim、希望把 AI 补全无缝融入现有工作流,并愿意用 Lua 做个性化配置的开发者。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-15 · 当前星标 ★ 4093

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:入门 约 10 分钟 部署方式:本地安装 5 步

环境要求

  • NeoVim 0.11.0 或更高版本
  • NodeJS v22 或更高版本
  • 已安装插件管理器(如 packer.nvim)
  • (可选)copilot-lsp 用于 NES 功能

安装与启动步骤

  1. 1确认环境版本

    先检查 NeoVim 与 NodeJS 版本,低于 0.11.0 / v22 需要先升级,否则 Copilot 服务无法运行。

    nvim --version
    node -v
  2. 2安装插件

    用你习惯的插件管理器添加 zbirenbaum/copilot.lua;需要 NES 功能时再加上 copilot-lsp 依赖。

    use { "zbirenbaum/copilot.lua",
      requires = {
        "copilotlsp-nvim/copilot-lsp", -- (optional) for NES functionality
      },
    }
  3. 3配置懒加载

    Copilot 服务启动需要时间,README 建议懒加载:以 Copilot 命令和 InsertEnter 事件触发,避免拖慢启动。

    use {
      "zbirenbaum/copilot.lua",
      requires = {
        "copilotlsp-nvim/copilot-lsp", -- (optional) for NES functionality
      },
      cmd = "Copilot",
      event = "InsertEnter",
      config = function()
        require("copilot").setup({})
      end,
    }
  4. 4调用 setup 启动

    必须执行 require("copilot").setup(options) 才会启动 Copilot;不传参数即使用默认配置。

    require("copilot").setup({})
  5. 5按需自定义配置

    在 setup 的 table 中覆盖默认项,例如面板、建议键位、模型、Node 路径等,再重启 Neovim 生效。

    require('copilot').setup({
      panel = { enabled = true },
      suggestion = {
        enabled = true,
        auto_trigger = false,
        keymap = { accept = "<M-l>" },
      },
      copilot_node_command = 'node',
    })

关键配置

配置项必填说明示例
suggestion.enabled否是否启用内联虚拟文本建议(默认 true)true
suggestion.auto_trigger否是否自动触发建议,默认关闭需手动触发false
panel.enabled否是否启用建议列表面板true
nes.enabled否启用 NES 功能,需以 copilot-lsp 为依赖false
copilot_node_command否调用 Copilot 服务使用的 Node 命令,需 v22+node
auth_provider_url否非 github.com 的认证提供方地址,默认 nilnil

如何确认成功

重启 Neovim 后执行 :Copilot 命令,或进入插入模式看到灰色虚拟文本建议即为生效。

常见问题

Q:提示版本不满足怎么办?

A:本项目要求 NeoVim 0.11.0 以上、NodeJS v22 以上,请先升级对应运行时再安装插件。

Q:为什么要懒加载?

A:README 说明 Copilot 服务启动需要一定时间,推荐用 cmd = "Copilot"、event = "InsertEnter" 懒加载以避免影响启动速度。

Q:怎么启用 NES 功能?

A:需要额外安装 copilotlsp-nvim/copilot-lsp 作为依赖,并把配置中的 nes.enabled 设为 true。

Q:默认按什么键采纳建议?

A:默认配置下 accept 为 <M-l>,next/prev 为 <M-]> / <M-[>,dismiss 为 <C-]>,可在 suggestion.keymap 中改写。

注意事项

  • 必须调用 require("copilot").setup(options) 才会启动 Copilot,未调用则不生效。
  • 认证方式见 README 的 Authentication 一节;使用替代 GitHub 实例时通过 auth_provider_url 指定。
  • 不传任何参数时使用 README 中列出的默认配置。
  • copilot-lsp 为可选依赖,仅在需要 NES 功能时安装。

核心亮点

  • 纯 Lua 实现,配置项丰富,可精细控制触发、显示与接受行为
  • 支持 nvim-cmp 集成,补全建议能进入统一菜单而非独立浮层
  • 提供 API 与虚拟文本渲染,便于其他插件扩展和自定义交互

不足之处

  • 依赖 GitHub Copilot 订阅与网络,离线或未授权时无法使用
  • 与 Neovim 版本及 nvim-cmp 等插件存在兼容性要求,配置门槛偏高

适用场景

  • Neovim 用户写代码时实时获得整行或函数级补全建议
  • 把 Copilot 建议接入 nvim-cmp 菜单,与 LSP 补全统一展示
  • 插件开发者调用其 API 构建自定义 AI 补全交互

替代项目

copilot.vim、codeium.nvim

同类项目推荐

The-Creator-AI 开源

大型复杂代码库的 AI 编程助手,精准理解全局上下文

AI Coding assistant for large and complex codebases.

★ 157 2026-08-09
craft-anything 开源

拆解任意软件原理,动手复刻自己的版本

Craft Anything: understand how any software works, and craft your own.

★ 7563 2026-11-03
Lim-Code 开源

在 VS Code 里直接调用 AI,写代码不用切窗口

一个强大的 VS Code AI 编程助手

★ 144 2026-08-09
sesori_apps_monorepo 开源

手机远程遥控 AI 编程,随时接管编码会话

Sesori iOS/Android app and the Sesori Bridge CLI — drive Claude, Codex, OpenCode, C···

★ 139 2026-08-09
vet 开源

智能筛选 GitHub 议题,快速锁定值得关注的重点

Find issues worth your attention.

★ 515 2026-08-09
langcli 开源

终端里的多模型编程助手,说句话就改代码

Building agentic coding assistant in public

★ 238 2026-09-13
ml-diffucoder 开源

用扩散模型并行生成代码,替代传统逐字解码

DiffuCoder: Understanding and Improving Masked Diffusion Models for Code Generation

★ 842 2026-09-14
dotnet-skills 开源

一条命令给 AI 编程助手装上 .NET 技能包

One of the largest .NET-focused skill collections for AI coding assistants, with a c···

★ 504 2026-09-15