真正得体的Neovim人工智能代理
ThePrimeagen/99 是一个为 Neovim 编辑器设计的 AI 代理插件,旨在为熟练的开发者提供理想的人工智能辅助编程工作流。该项目基于 Lua 语言开发,深度集成于 Neovim 环境,通过引入“技能”系统来优化和限制 AI 的交互范围,从而提升代码生成与问题解决的精准度。用户可以通过在提示中输入“@”符号来调用特定技能,并利用自动补全功能快速构建请求。该插件目前主要支持 TypeScript 和 Lua 语言,强调为特定、受限的开发场景提供高效的 AI 支持,而非处理通用编程问题。项目仍处于早期开发阶段,功能可能不稳定,适合愿意参与测试和反馈的高级 Neovim 用户探索更智能的编辑器集成 AI 方案。
💡 应用场景
这是一个为Neovim设计的AI编程助手,专注于代码生成、重构和文档等具体编程任务,通过技能化提示提升AI编码效率。
智能补全函数体
问题:开发者需要编写一个函数,但不想手动写完整的实现逻辑,希望AI能根据函数签名和上下文自动生成代码。
方案:使用99的fill in function功能,AI会根据函数定义和周围代码自动生成合适的函数实现。
示例:在Lua文件中定义了函数签名后,调用99自动补全函数体,AI会生成符合上下文的实现代码。
重构选中代码
问题:开发者有一段代码需要重构或优化,但不确定如何改进,希望获得AI的专业建议。
方案:在Neovim中选中代码块,使用99的visual selection功能,AI会分析代码并提供重构建议或直接生成改进版本。
示例:选中一个复杂的条件判断逻辑,让AI重构为更清晰、可读性更高的代码结构。
添加代码注释
问题:开发者需要为现有代码添加文档注释(如JSDoc、LuaDoc),但手动编写耗时且可能不准确。
方案:使用99的代码注释功能,AI会根据代码逻辑自动生成合适的文档注释。
示例:为TypeScript函数自动生成JSDoc注释,包括参数说明、返回值和功能描述。
技能化AI提示
问题:开发者需要AI执行特定编程任务,但通用AI提示不够精准,需要更结构化的指令。
方案:使用99的@技能系统,通过特定技能指令(如@refactor、@document)让AI执行专业化的编程任务。
示例:在提示中输入@refactor,然后描述重构需求,AI会以专业重构模式处理代码。
📊 项目信息
- 语言
- Lua
- Stars
- ⭐ 2,731
- Forks
- 122
- 今日新增
- +781
- 排名
- #2
- 收录
- 总榜
- 趋势日期
- 2026年2月1日
🏷️ 标签
5分钟上手 ThePrimeagen/99 - Neovim AI 代理插件
本指南将帮助你在5分钟内安装并配置好99插件,体验AI辅助编程的基本功能
🖥️ 操作系统
⚙️ 运行环境
🔧 工具
📝 操作步骤
安装opencode(前提条件)
确保已安装并配置好opencode,这是99插件必需的AI后端服务
使用Lazy.nvim安装99插件
在Neovim配置中添加99插件(假设使用Lazy.nvim作为插件管理器)
添加插件配置
$ 在init.lua或lazy.lua中添加:
{
'ThePrimeagen/99',
config = function()
require('99').setup()
end
}基本配置和启动
完成插件安装后,重启Neovim让配置生效
同步安装插件(如果使用Lazy.nvim)
$ :Lazy sync退出Neovim
$ :qa重新启动Neovim
$ nvim测试基本功能
打开一个TypeScript或Lua文件,测试AI辅助功能
创建一个TypeScript测试文件
$ nvim test.ts触发技能自动补全
$ 在插入模式下输入:@✅ 验证安装成功
确认插件已正确安装并可以调用AI功能
- ✓输入@能触发技能自动补全
- ✓插件无报错信息
- ✓可以正常调用AI功能
⚡ 快速提示
🔍 常见问题排查
❓ 输入@没有触发自动补全
→ 确保已安装nvim-cmp或其他自动补全插件,并检查opencode是否正确配置
❓ 插件报错或无法启动
→ 检查Neovim版本是否>=0.9.0,并确保opencode已正确安装
❓ AI功能无响应
→ 运行:lua require("99").viewlogs()查看详细错误日志
🎯 下一步
探索可用技能
尝试不同的@技能,了解插件在特定场景下的能力
查看API文档
访问项目API文档了解高级配置选项
参与社区讨论
关注作者的Twitch直播,参与功能讨论和反馈