Void 编辑器 AI 功能开发入门:4 步写出你的第一个 AI 扩展 Void 编辑器 AI 功能开发入门4 步写出你的第一个 AI 扩展【免费下载链接】void开源AI代码编辑器Cursor的替代方案。项目地址: https://gitcode.com/GitHub_Trending/void2/void开源 AI 代码编辑器 Void 是 Cursor 的替代方案它的 AI 功能开发源码全部开放。本文按动手视角拆解 4 步跑通构建、找到 AI 模块、写出第一个扩展、验证效果。跑起来 Void 开发环境克隆仓库并装好依赖Void 是 VS Code 的 fork构建体系沿用 gulp npm不用学新工具链。克隆下来装依赖就能进入开发循环git clone https://gitcode.com/GitHub_Trending/void2/void cd void npm install装完后用npm run watch挂起监听编译它会持续编译主进程与内置扩展。首次构建耗时较长建议等它编译完成再动手改代码避免读到半成品产物。AI 能力长在哪锁定 contrib/void 模块AI 功能的主逻辑集中在 src/vs/workbench/contrib/void/。contrib 是工作台的功能分区方式一个模块管一个领域AI 是其中一个。这里能直接看到核心能力chatThreadService.ts管对话线程autocompleteService.ts负责行内补全editCodeService.ts执行按指令改代码的流程contextGatheringService.ts收集光标周边上下文。落到代码上更关键的是依赖清单——顶层package.json直接依赖openai、ollama、anthropic-ai/sdk与modelcontextprotocol/sdk说明它同时支持多家云端模型、Ollama 本地模型并可通过 MCP 扩展工具调用。你的新功能大概率要接的就是这套通道。写第一个扩展把 references-view 当模板新人不必直接改 contribVoid 扩展开发最稳的入口是 extensions/ 目录每个子目录就是一个自包含扩展。extensions/references-view/ 是个好模板它监听语言服务事件把用户选中符号的引用整理成树状视图。语言服务可以理解为按语言做解析、查符号的那层服务它是大多数 AI 功能的数据源。扩展的最小骨架一个扩展必须有两样东西package.json里声明贡献点与main入口以及入口文件导出的activate函数。注意扩展不跑在编辑器主进程里它被加载到独立的扩展宿主进程通过 API 与界面通信——这层隔离决定了你写扩展不会直接污染工作台。让扩展干点智能的事最短路径是注册一个命令在contributes.commands声明命令在activate里用vscode.commands.registerCommand拿到当前文件内容交给模型处理。调模型的写法可直接参考contrib/void里对各家 SDK 的封装流式输出和错误重试都已处理好照抄模式即可。给 AI 功能加配置项接入设置系统功能能跑之后用户会想换模型、调参数。扩展只需在package.json声明configuration贡献点设置面板会自动生成对应界面无需手写表单。设置系统的底座在 src/vs/platform/configuration/而 AI 侧的voidSettingsService.ts展示了按 key 读写配置的完整姿势你的扩展可以复用同样的模式。写完怎么验证用开发模式跑通并看日志验证顺序建议是启动开发构建./scripts/code.sh→ 在编辑器里执行你的命令 → 看扩展宿主终端有没有报错。别只确认界面打开了要确认数据真的到了模型、响应真的渲染出来了语言相关扩展再切到输出面板确认请求到达了语言服务。 常见卡点速查现象先查哪里编译完但编辑器起不来npm run watch是否编译完成产物目录是否生成扩展命令不出现package.json的main路径、activate是否正确导出AI 请求返回空或报错模型密钥是否配置、Ollama 本地服务是否在运行回到最初的问题Void 的 AI 能力长在contrib/void新功能从 extensions/ 目录起步最稳验证靠开发模式加读日志。把这条链路完整走一遍你就具备继续深入的基础。【免费下载链接】void开源AI代码编辑器Cursor的替代方案。项目地址: https://gitcode.com/GitHub_Trending/void2/void创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考